diff --git a/ta_lib/momentum/src/lib.rs b/ta_lib/momentum/src/lib.rs
index 09eb9054..8524b55a 100644
--- a/ta_lib/momentum/src/lib.rs
+++ b/ta_lib/momentum/src/lib.rs
@@ -1 +1,2 @@
+pub mod macd;
pub mod rsi;
diff --git a/ta_lib/momentum/src/macd.rs b/ta_lib/momentum/src/macd.rs
new file mode 100644
index 00000000..3c38fe3f
--- /dev/null
+++ b/ta_lib/momentum/src/macd.rs
@@ -0,0 +1,128 @@
+use overlap::ema::ema;
+
+pub fn macd(
+ data: &[f64],
+ fast_period: usize,
+ slow_period: usize,
+ signal_period: usize,
+) -> (Vec