L'idée de base de la stratégie de rupture de renversement de chandelier consécutif est de saisir les opportunités de trading lorsque le prix de l'action montre un signal de renversement et franchit des niveaux de résistance importants après une période de baisses consécutives.
La clé de la stratégie réside dans l'identification correcte des signaux d'inversion et la définition des paramètres appropriés. Le nombre de bougies descendantes consécutives et le nombre de bougies ascendantes consécutives sont deux paramètres importants qui doivent être optimisés en fonction des résultats des backtests. En outre, la définition des conditions de stop-loss est également cruciale. Il doit contrôler le risque tout en ne fermant pas les positions trop tôt et en ne manquant pas les opportunités.
La stratégie de rupture de renversement des bougies consécutives prend des décisions commerciales en capturant les signaux de renversement après des baisses consécutives des cours des actions. La stratégie est simple et facile à comprendre, adaptée à l'utilisation sur les marchés oscillants et les premiers stades des tendances. En définissant des paramètres tels que le nombre de bougies consécutives et les conditions de stop-loss, elle peut s'adapter de manière flexible à différentes conditions du marché. Cependant, la stratégie présente également certaines limitations, telles que l'adaptabilité moyenne aux marchés en tendance à long terme et le manque de gestion de position et de gestion de capital.
Dans les applications pratiques, la stratégie doit être optimisée et améliorée en fonction des caractéristiques du marché et de ses propres préférences en matière de risque. Par exemple, l'optimisation du nombre de bougies consécutives et des conditions de stop-loss, l'ajout de transactions bidirectionnelles pour les positions longues et courtes, l'introduction de la gestion des positions et de la gestion des capitaux, et la combinaison avec d'autres indicateurs techniques et signaux de trading. Cela peut améliorer la rentabilité de la stratégie tout en contrôlant les risques et en réalisant des rendements d'investissement stables.
En général, la stratégie de rupture d'inversion de chandelier consécutif est une stratégie de trading simple et pratique qui mérite une exploration et une optimisation supplémentaires dans la pratique. Cependant, aucune stratégie n'est omnipotente. Les investisseurs doivent également combiner leur propre expérience et leur jugement, prendre des décisions prudentes et exécuter strictement afin de rester invincibles sur le marché à long terme.
/*backtest start: 2024-02-01 00:00:00 end: 2024-02-29 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bottom Out Strategy", overlay=true) consecutiveBarsUp = input(2) consecutiveBarsDown = input(3) price = close ups = 0.0 ups := price > price[1] ? nz(ups[1]) + 1 : 0 dns = 0.0 dns := price < price[1] ? nz(dns[1]) + 1 : 0 var entry_bar_index = 1000000 var active = false var stop_loss = 0.0 // === INPUT BACKTEST RANGE === i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From") i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru") // === FUNCTION EXAMPLE === date() => true entry_condition() => date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active exit_condition() => date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7)) if (entry_condition()) strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry") entry_bar_index := bar_index active := true stop_loss := math.min(close, close[1], close[2]) // log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss) if (exit_condition()) strategy.close("ConsDnLong", comment = "CDLClose") // log.info("Close at bar {0}", bar_index) entry_bar_index := 1000000 active := false // if (dns >= consecutiveBarsDown) // strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) plot(high - 2* ta.atr(7))