Cette stratégie est une tendance de zone dynamique suivant un système basé sur des EMA doubles (rapide et lent). Elle classe différentes zones de négociation en fonction des positions relatives du prix et des EMA, combinée à un système d'indication de couleur dynamique pour fournir des signaux d'achat / vente clairs.
Le noyau de la stratégie consiste à diviser les conditions du marché en six zones distinctes en utilisant la relation croisée entre l'EMA rapide (périodes par défaut 12) et l'EMA lente (périodes par défaut 26), combinée à la position des prix. Lorsque la ligne rapide est au-dessus de la ligne lente, le marché est considéré comme haussier; inversement, il est considéré comme baissier. La position des prix par rapport à ces deux moyennes mobiles se subdivise en zones de négociation spécifiques: zone verte (acheter), zone bleue (acheter potentiel), zone rouge (vendre potentiel) et zone jaune (vendre potentiel).
Il s'agit d'une stratégie de suivi de tendance qui combine les systèmes traditionnels de double EMA avec des concepts de classification de zone modernes. Grâce à une rétroaction visuelle intuitive et à des règles de trading claires, il fournit aux traders un cadre de trading fiable.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("NUTJP CDC ActionZone 2024", overlay=true, precision=6, commission_value=0.1, slippage=3) //****************************************************************************// // CDC Action Zone is based on a simple EMA crossover // between [default] EMA12 and EMA26 //****************************************************************************// // Define User Input Variables xsrc = input.source(title='Source Data', defval=close) xprd1 = input.int(title='Fast EMA period', defval=12) xprd2 = input.int(title='Slow EMA period', defval=26) xsmooth = input.int(title='Smoothing period (1 = no smoothing)', defval=1) fillSW = input.bool(title='Paint Bar Colors', defval=true) fastSW = input.bool(title='Show fast moving average line', defval=true) slowSW = input.bool(title='Show slow moving average line', defval=true) xfixtf = input.bool(title='** Use Fixed time frame Mode (advanced) **', defval=false) xtf = input.timeframe(title='** Fix chart to which time frame? **', defval='D') startDate = input(timestamp("2018-01-01 00:00"), title="Start Date") endDate = input(timestamp("2069-12-31 23:59"), title="End Date") //****************************************************************************// // Calculate Indicators f_secureSecurity(_symbol, _res, _src) => request.security(_symbol, _res, _src[1], lookahead=barmerge.lookahead_on) xPrice = ta.ema(xsrc, xsmooth) FastMA = xfixtf ? ta.ema(f_secureSecurity(syminfo.tickerid, xtf, ta.ema(xsrc, xprd1)), xsmooth) : ta.ema(xPrice, xprd1) SlowMA = xfixtf ? ta.ema(f_secureSecurity(syminfo.tickerid, xtf, ta.ema(xsrc, xprd2)), xsmooth) : ta.ema(xPrice, xprd2) Bull = FastMA > SlowMA Bear = FastMA < SlowMA // Define Color Zones Green = Bull and xPrice > FastMA Red = Bear and xPrice < FastMA // Buy and Sell Conditions buycond = Green and not Green[1] sellcond = Red and not Red[1] inDateRange = true if inDateRange if buycond strategy.entry("Long", strategy.long, qty=1) if sellcond strategy.close("Long") //****************************************************************************// // Display color on chart bColor = Green ? color.green : Red ? color.red : color.black barcolor(color=fillSW ? bColor : na) // Display MA lines FastL = plot(fastSW ? FastMA : na, "Fast EMA", color=color.new(color.red, 0), style=xfixtf ? plot.style_stepline : plot.style_line) SlowL = plot(slowSW ? SlowMA : na, "Slow EMA", color=color.new(color.blue, 0), style=xfixtf ? plot.style_stepline : plot.style_line) fill(FastL, SlowL, Bull ? color.new(color.green, 90) : (Bear ? color.new(color.red, 90) : na))