
La stratégie d’équilibrage dynamique multichannel intraday combinée à la moyenne et à la super tendance est une stratégie de négociation quantitative basée sur Pine ScriptTM 5. Elle utilise l’indicateur MACD et l’indicateur de la super tendance pour capturer les opportunités de tendance du marché, tout en contrôlant les risques par des commutations multichannel dynamiques et des arrêts de perte.
Le cœur de la stratégie est de combiner l’indicateur MACD et l’indicateur de super-tendance pour juger de la direction de la tendance du marché.
La stratégie est capable de s’adapter aux changements du marché et de saisir les opportunités de tendance grâce à des commutations multifonctions dynamiques. En outre, la conception d’un placement à temps fixe aide également à contrôler les risques.
La stratégie d’équilibre dynamique multi-espaces au cours de la journée combinée à la moyenne et à la super tendance est une stratégie de négociation basée sur le suivi de la tendance et le jugement de la dynamique. En combinant l’indicateur de super tendance et l’indicateur MACD, la stratégie permet d’ajuster dynamiquement la direction de la position pour s’adapter aux changements du marché et de capturer les opportunités tendancielles.
Cependant, la stratégie présente également des risques et des lacunes, tels que le risque de défaillance de l’indicateur, le risque d’optimisation des paramètres, le risque de rupture, etc. Pour améliorer encore la stratégie, il est possible d’envisager d’ajouter une logique de rupture, d’optimiser les paramètres, d’ajouter plus de conditions de filtrage du signal et de tester sur plusieurs marchés.
Dans l’ensemble, la stratégie d’équilibre dynamique polyvalente combinée à une tendance équilibrée et à une tendance supérieure fournit un moyen de suivre la tendance et de contrôler le risque. Dans la pratique, les traders doivent combiner leurs propres préférences en matière de risque et les caractéristiques du marché, afin d’ajuster et d’optimiser la stratégie de manière appropriée.
/*backtest
start: 2023-03-05 00:00:00
end: 2024-03-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © smj31071995
//@version=5
strategy("EQ - INTRA - Samsuga supertrend prod", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_every_tick = false)
atrPeriod = input.int(7, "ATR Length", minval = 1)
factor = input.float(1.0, "Factor", minval = 0.01, step = 0.01)
st_tf = "3"
macd_tf="30"
[supertrend, direction] =request.security(symbol = syminfo.tickerid, timeframe = st_tf,expression = ta.supertrend(factor, atrPeriod),lookahead=barmerge.lookahead_on)
supertrend := barstate.isfirst ? na : supertrend
upTrend = plot(direction <= 0 ? supertrend : na, "Up Trend", color = color.green, style = plot.style_linebr)
downTrend = plot(direction <= 0 ? na : supertrend, "Down Trend", color = color.red, style = plot.style_linebr)
bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, "Body Middle",display = display.none)
longcondition = direction[1] > direction
shortCondition = direction[1] < direction
macdp1 = 2
macdp2=8
macdp3=4
[macdLine, signalLine, histLine] =request.security(symbol = syminfo.tickerid, timeframe = macd_tf,expression = ta.macd(close,macdp1,macdp2,macdp3),lookahead=barmerge.lookahead_on)
// log.info(str.tostring(syminfo.tickerid)+str.tostring(histLine[0]))
timezone_input = input("Asia/Kolkata", title="Timezone")
// log.info(timezone_input)
if(hour==15 and minute==15)
strategy.close_all(comment = "DAY EXIT",alert_message = "X-D")
else if(hour==9 and minute==30)
if(longcondition or histLine[1]>0)
strategy.entry(id= "Long", direction=strategy.long, comment = "DL",alert_message = "L")
else if(shortCondition or histLine[1]<0)
strategy.entry(id= "Short", direction=strategy.short, comment = "DS",alert_message = "S")
else
if(longcondition)
strategy.close("Short",comment = "X-S", alert_message = "X-S")
if(histLine[1]>0)
strategy.entry(id= "Long", direction=strategy.long, comment = "L",alert_message = "L")
else if(shortCondition)
strategy.close("Long",comment = "X-L",alert_message = "X-L")
if(histLine[1]<0)
strategy.entry(id= "Short", direction=strategy.short, comment = "S",alert_message = "S")
// plot(macdLine, title = "MACD", color = #2962FF)
// plot(signalLine, title = "Signal", color = #FF6D00)
// 8, 21, 5
// 8,13,9
// 12,26,9
// 1--> 3, 17, 5
// 3, 10, 16
// log.info(str.tostring(syminfo.tickerid)+str.tostring(histLine[0]))
// /////////----------------METHOD 1-----------------////////////////
// if(longcondition)
// if(strategy.opentrades>0)
// strategy.close("Long","Prev Exit", immediately = true)
// if( histLine[0] > 0.1)
// strategy.entry(id= "Long", direction=strategy.long, comment = "update long")
// else if(shortCondition and strategy.openprofit<=0.1)
// strategy.close("Long",comment = "Close",immediately = true)
// /////////----------------METHOD 2-----------------////////////////
// if(longcondition)
// if(histLine[0] > 0)
// strategy.entry(id= "Long", direction=strategy.long, comment = "update long" )
// strategy.exit("Long", loss = close*0.2)
// else if(shortCondition )
// strategy.close("Long",comment = "Close",immediately = true)
// /////////----------------METHOD 3-----------------////////////////