🔓 Get All Tools for FREE!

  • ✅ Click here to open a trading account using our referral link and start trading.
  • 📅 After 7 days of active trading under our referral link, you can get access to all tools in your account.
  • ⚠️ Keep trading to keep access free — if you're inactive for 7 days, your access will be removed.
  • 👉 Already have an account? You can change the IB (introducing broker) to our referral link ( https://one.exnesstrack.org/a/w7syl3vnjb ) and still qualify!

MACD + 200 EMA + London/NY Session + ADX Filter [algo_aakash] | Advanced Trend Following Strategy

Most traders lose money because they trade against the trend, during low-volume market hours, or in weak momentum conditions. This advanced TradingView Pine Script indicator solves that problem by combining MACD confirmation, 200 EMA trend filtering, London & New York session filtering, and ADX strength confirmation into one powerful BUY/SELL signal system.

Instead of generating random crossover signals, this strategy focuses only on high-probability setups where trend, momentum, volatility, and market session all align together.

Strategy Overview

This indicator combines four powerful trading concepts:

🔓 Get All Tools for FREE!

  • ✅ Click here to open a trading account using our referral link and start trading.
  • 📅 After 7 days of active trading under our referral link, you can get access to all tools in your account.
  • ⚠️ Keep trading to keep access free — if you're inactive for 7 days, your access will be removed.
  • 👉 Already have an account? You can change the IB (introducing broker) to our referral link ( https://one.exnesstrack.org/a/w7syl3vnjb ) and still qualify!
  • MACD Momentum Confirmation
  • 200 EMA Trend Direction
  • London & New York Session Filter
  • ADX Trend Strength Filter

By combining these filters together, the strategy attempts to avoid weak trades and focus only on strong trending opportunities.

How The Strategy Works

BUY Signal Conditions

A BUY signal appears when:

  • MACD crosses ABOVE Signal Line
  • MACD crossover happens BELOW the zero line
  • Price is ABOVE the 200 EMA
  • Market is inside London or New York session
  • ADX is ABOVE the threshold level

This confirms:

  • Bullish momentum
  • Strong market trend
  • Active market session
  • Sufficient volatility

SELL Signal Conditions

A SELL signal appears when:

  • MACD crosses BELOW Signal Line
  • MACD crossover happens ABOVE the zero line
  • Price is BELOW the 200 EMA
  • Market is inside London or New York session
  • ADX confirms strong trend strength

This helps filter low-quality trades and improves trend-following accuracy.

Indicator Features

✅ MACD Crossover Signals
✅ 200 EMA Trend Filter
✅ London Session Filter
✅ New York Session Filter
✅ ADX Strength Confirmation
✅ BUY & SELL Labels
✅ TradingView Alert Support
✅ Trend Following Setup
✅ Works on Forex, Crypto & Indices

Why This Strategy Is Powerful

Most MACD strategies fail because they:

  • Ignore trend direction
  • Trade during dead market hours
  • Take signals during weak momentum

This setup solves those issues using:

  • 200 EMA → Trend Direction
  • Session Filter → High Liquidity
  • ADX → Trend Strength
  • MACD → Entry Timing

This creates a cleaner and more professional trading system.

Best Timeframes

Recommended timeframes:

  • 5 Min → Scalping
  • 15 Min → Intraday Trading
  • 1 Hour → Swing Trading
  • 4 Hour → Trend Trading

Works especially well on:

  • Forex Pairs
  • Gold (XAUUSD)
  • Crypto Markets
  • Indices

Risk Management Tips

For better consistency:

  • Place stop loss below recent swing lows/highs
  • Avoid trading before major news events
  • Use proper risk-to-reward ratio
  • Follow higher timeframe trend direction

Conclusion

This MACD + 200 EMA + Session + ADX strategy combines trend, momentum, and market timing into one advanced TradingView indicator. By filtering trades based on trend direction, session activity, and trend strength, traders can avoid many weak setups and focus on higher-probability opportunities.

Whether you are a beginner learning trend-following strategies or an advanced trader looking for cleaner entries, this Pine Script indicator offers a professional multi-filter trading approach for TradingView users.

#PineScript #TradingView #MACDStrategy #EMA200 #ADXStrategy #ForexTrading #AlgoTrading #TrendFollowing #CryptoTrading #algo_aakash

//@version=5
indicator("MACD + 200 EMA + London/NY Session + ADX Filter", overlay=true)

//━━━━━━━━━━━━━━━━━━━
// INPUTS
//━━━━━━━━━━━━━━━━━━━
fastLength   = input.int(12, "MACD Fast Length")
slowLength   = input.int(26, "MACD Slow Length")
signalLength = input.int(9, "MACD Signal Length")

emaLength = input.int(200, "EMA Length")

// Session Filter
useSessionFilter = input.bool(true, "Use Session Filter")

londonSession = input.session("0800-1700", "London Session (UTC)")
newYorkSession = input.session("1300-2200", "New York Session (UTC)")

// ADX Filter
useADX = input.bool(true, "Use ADX Filter")
adxLength = input.int(14, "ADX Length")
adxThreshold = input.float(20.0, "ADX Threshold", step=0.1)

//━━━━━━━━━━━━━━━━━━━
// EMA
//━━━━━━━━━━━━━━━━━━━
ema200 = ta.ema(close, emaLength)

plot(
     ema200,
     title="200 EMA",
     color=color.orange,
     linewidth=2)

//━━━━━━━━━━━━━━━━━━━
// MACD
//━━━━━━━━━━━━━━━━━━━
[macdLine, signalLine, histLine] =
     ta.macd(close, fastLength, slowLength, signalLength)

//━━━━━━━━━━━━━━━━━━━
// ADX FILTER
//━━━━━━━━━━━━━━━━━━━
[plusDI, minusDI, adxValue] =
     ta.dmi(adxLength, adxLength)

adxFilter =
     not useADX or adxValue > adxThreshold

//━━━━━━━━━━━━━━━━━━━
// SESSION FILTER
//━━━━━━━━━━━━━━━━━━━
inLondon =
     not na(time(timeframe.period, londonSession, "UTC"))

inNewYork =
     not na(time(timeframe.period, newYorkSession, "UTC"))

sessionFilter =
     not useSessionFilter or (inLondon or inNewYork)

//━━━━━━━━━━━━━━━━━━━
// BUY / SELL CONDITIONS
//━━━━━━━━━━━━━━━━━━━
buySignal =
     ta.crossover(macdLine, signalLine) and
     macdLine < 0 and
     close > ema200 and
     sessionFilter and
     adxFilter

sellSignal =
     ta.crossunder(macdLine, signalLine) and
     macdLine > 0 and
     close < ema200 and
     sessionFilter and
     adxFilter

//━━━━━━━━━━━━━━━━━━━
// SIGNAL PLOTS
//━━━━━━━━━━━━━━━━━━━
plotshape(
     buySignal,
     title="BUY",
     location=location.belowbar,
     style=shape.labelup,
     color=color.green,
     text="BUY",
     textcolor=color.white,
     size=size.small)

plotshape(
     sellSignal,
     title="SELL",
     location=location.abovebar,
     style=shape.labeldown,
     color=color.red,
     text="SELL",
     textcolor=color.white,
     size=size.small)

//━━━━━━━━━━━━━━━━━━━
// ALERTS
//━━━━━━━━━━━━━━━━━━━
alertcondition(
     buySignal,
     title="BUY Alert",
     message="BUY: MACD crossed above Signal below zero, price above 200 EMA, session and ADX filters passed.")

alertcondition(
     sellSignal,
     title="SELL Alert",
     message="SELL: MACD crossed below Signal above zero, price below 200 EMA, session and ADX filters passed.")

//━━━━━━━━━━━━━━━━━━━
// OPTIONAL SESSION HIGHLIGHT
//━━━━━━━━━━━━━━━━━━━
bgcolor(
     useSessionFilter and sessionFilter
     ? color.new(color.blue, 95)
     : na)

//━━━━━━━━━━━━━━━━━━━
// OPTIONAL ADX DISPLAY
//━━━━━━━━━━━━━━━━━━━
plotchar(
     useADX ? adxValue : na,
     title="ADX Value",
     char="•",
     location=location.bottom,
     color=color.gray)

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *