OPEN-SOURCE SCRIPT

EMA OB (TRADEMASTER INSTITUTE)

//version=5
indicator("SMC/ICT Strategy with EMA, Order Blocks, Liquidity", overlay=true)

// 200 EMA
ema200 = ta.ema(close, 200)

// Support/Resistance from 200 EMA
supportCondition = close > ema200 and ta.lowest(close, 5) == close
resistanceCondition = close < ema200 and ta.highest(close, 5) == close

// Fair Value Gap detection (simplified)
isFairValueGap = high[1] < low[3] or low[1] > high[3]

// Plot the EMA
plot(ema200, color=color.blue, linewidth=2)

// Buy/Sell signals based on 200 EMA and Fair Value Gap
buySignal = supportCondition and isFairValueGap
sellSignal = resistanceCondition and isFairValueGap

// W and M Pattern Detection for Strong Buy/Sell (simplified)
wPattern = low[2] < low[3] and low[1] > low[2] and close > ema200
mPattern = high[2] > high[3] and high[1] < high[2] and close < ema200

// Alternative to label.new: Using plotshape to mark buy/sell signals
plotshape(series=buySignal and wPattern, title="Strong Buy", location=location.belowbar, color=color.green, style=shape.labelup, text="Strong Buy")
plotshape(series=sellSignal and mPattern, title="Strong Sell", location=location.abovebar, color=color.red, style=shape.labeldown, text="Strong Sell")
Bands and ChannelsCandlestick analysisChart patternsEMASpriceactionSMC

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?

Disclaimer