Cette stratégie utilise principalement le prix le plus élevé, le prix le plus bas et la moyenne mobile exponentielle (EMA) pour confirmer les renversements de tendance et générer des signaux de trading. La stratégie calcule d'abord les prix les plus élevés et les plus bas au cours d'une période de rétrospective spécifiée, puis détermine si le prix de clôture actuel est inférieur au prix le plus bas correspondant au prix le plus élevé (confirmation de renversement baissier) ou supérieur au prix le plus élevé correspondant au prix le plus bas (confirmation de renversement haussier). Une fois qu'un signal de confirmation de renversement apparaît, la stratégie génère un signal d'entrée correspondant. Le principal avantage de cette stratégie est sa capacité à saisir les opportunités d'inversion de tendance, tandis que le principal risque est qu'après l'apparition d'un signal de confirmation de renversement, les prix puissent subir des fluctuations répétées plutôt qu'une tendance unidirectionnelle.
La stratégie de trading de confirmation de renversement multi-temps identifie les opportunités potentielles de renversement de tendance en utilisant le prix le plus élevé, le prix le plus bas et l'EMA, générant les signaux d'entrée correspondants. L'avantage de la stratégie est sa capacité à capturer les renversements de tendance, mais elle fait également face à des problèmes de trading fréquents et de contrôle des risques insuffisants. En introduisant des mécanismes de stop-loss et take-profit, en combinant d'autres indicateurs, l'optimisation des paramètres et la dimensionnement des positions, la performance et la stabilité de la stratégie peuvent être encore améliorées. Dans les applications pratiques, les paramètres de la stratégie et les mesures de contrôle des risques doivent être ajustés en fonction d'instruments de trading et d'environnements de marché spécifiques.
/*backtest start: 2023-05-05 00:00:00 end: 2024-05-10 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Reversal Confimation Strategy", overlay=true) // Indicator inputs lookback = input.int(50, 'Lookback Period', minval=1, step=1) downColor = input(color.red, 'Shape Color Down') upColor = input(color.green, 'Shape Color Up') // Indicator calculations find_highest = ta.highest(high, lookback) find_lowest = ta.lowest(low, lookback) ema = ta.ema(close, lookback) var dnRv = 0.0 var dnRv_trigger = false var upRv = 0.0 var upRv_trigger = false if high == find_highest dnRv_trigger := false if low == find_lowest upRv_trigger := false for i = 0 to lookback - 1 if high[i] == find_highest dnRv := low[i] for i = 0 to lookback - 1 if low[i] == find_lowest upRv := high[i] dnRv_signal = close < dnRv and dnRv_trigger == false upRv_signal = close > upRv and upRv_trigger == false if dnRv_signal dnRv_trigger := true if upRv_signal upRv_trigger := true // Entry and exit conditions if dnRv_signal strategy.entry("Sell", strategy.short) if upRv_signal strategy.entry("Buy", strategy.long) // Plotting plotshape(dnRv_signal ? 1 : 0, style=shape.triangledown, location=location.abovebar, color=downColor, size=size.small) plotshape(upRv_signal ? 1 : 0, style=shape.triangleup, location=location.belowbar, color=upColor, size=size.small)