Cette stratégie est une stratégie d'achat/vente de rupture et de retracement basée sur la séquence TD. Elle identifie les points de renversement de tendance potentiels en reconnaissant les 8e et 9e bougies de la séquence TD. En outre, la stratégie considère le retracement après la rupture de la séquence TD pour améliorer la précision des points d'entrée. En outre, elle utilise des moyennes mobiles comme outil auxiliaire pour la détermination de la tendance.
En combinant les séquences TD et les moyennes mobiles, cette stratégie peut identifier efficacement les points de renversement de tendance potentiels et améliorer la précision des points d'entrée en tenant compte des situations de retracement.
/*backtest start: 2023-03-26 00:00:00 end: 2024-03-31 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Dipak Shankarrao Chavhan", shorttitle="Dipak Chavhan", overlay=true, pyramiding=0, default_qty_value=10) Numbers = input(true) SR = input(true) var int TD = 0 var int TS = 0 var int TDUp = 0 var int TDDn = 0 TD := close > close[4] ? TD[1] + 1 : 0 TS := close < close[4] ? TS[1] + 1 : 0 TDUp := TD - valuewhen(TD < TD[1], TD, 1) TDDn := TS - valuewhen(TS < TS[1], TS, 1) plotshape(Numbers ? (TDUp == 8 ? true : na) : na, style=shape.triangleup, text="8", color=color.new(color.green, 0), location=location.belowbar) plotshape(Numbers ? (TDUp == 9 ? true : na) : na, style=shape.triangleup, text="9", color=color.new(color.green, 0), location=location.belowbar) plotshape(Numbers ? (TDDn == 8 ? true : na) : na, style=shape.triangledown, text="8", color=color.new(color.red, 0), location=location.abovebar) plotshape(Numbers ? (TDDn == 9 ? true : na) : na, style=shape.triangledown, text="9", color=color.new(color.red, 0), location=location.abovebar) priceflip = barssince(close < close[4]) sellsetup = close > close[4] and priceflip sell = sellsetup and barssince(priceflip != 9) sellovershoot = sellsetup and barssince(priceflip != 13) sellovershoot1 = sellsetup and barssince(priceflip != 14) sellovershoot2 = sellsetup and barssince(priceflip != 15) sellovershoot3 = sellsetup and barssince(priceflip != 16) priceflip1 = barssince(close > close[4]) buysetup = close < close[4] and priceflip1 buy = buysetup and barssince(priceflip1 != 9) buyovershoot = buysetup and barssince(priceflip1 != 13) buyovershoot1 = buysetup and barssince(priceflip1 != 14) buyovershoot2 = buysetup and barssince(priceflip1 != 15) buyovershoot3 = buysetup and barssince(priceflip1 != 16) TDbuyh = valuewhen(buy, high, 0) TDbuyl = valuewhen(buy, low, 0) TDsellh = valuewhen(sell, high, 0) TDselll = valuewhen(sell, low, 0) plot(SR ? (TDbuyh ? TDbuyl : na) : na, style=plot.style_circles, linewidth=2, color=color.red) plot(SR ? (TDselll ? TDsellh : na) : na, style=plot.style_circles, linewidth=2, color=color.lime) sma1 = sma(close, 10) sma2 = sma(close, 20) if TDbuyh strategy.entry("Enter Long", strategy.long) else if TDselll strategy.entry("Enter Short", strategy.short)