
Cette stratégie est un système de trading de suivi des tendances basé sur plusieurs indicateurs techniques. Il combine la tendance moyenne mobile, le RSI de surachat et de survente et les indicateurs de volatilité ATR pour améliorer le taux de réussite et la rentabilité des transactions grâce à une analyse de marché multidimensionnelle. La logique principale de la stratégie consiste à confirmer la direction de la tendance par le croisement des EMA à court et à long terme, à utiliser l’indicateur RSI pour filtrer les fausses percées et enfin à combiner l’ATR pour ajuster dynamiquement le temps de maintien afin d’obtenir une compréhension précise de la tendance.
La stratégie utilise les moyennes mobiles EMA sur 20 et 50 jours comme base principale pour le jugement des tendances. Lorsque l’EMA à court terme dépasse l’EMA à long terme, une tendance à la hausse est confirmée ; sinon, une tendance à la baisse est confirmée. Sur la base de la confirmation de tendance, l’indicateur RSI est introduit pour juger du surachat et de la survente. Lorsque le RSI est inférieur à 30 et entre dans la zone de survente et est dans une tendance à la hausse, un signal long est déclenché ; lorsque le RSI est supérieur à 70 et entre dans la zone de surachat et est dans une tendance à la baisse, un signal long est déclenché ; Lorsque , le signal court est déclenché. Parallèlement, l’indicateur ATR est utilisé pour mesurer la volatilité du marché. Les transactions ne sont exécutées que lorsque l’ATR est supérieur au seuil fixé pour éviter de négocier dans un environnement de marché avec une volatilité trop faible.
Cette stratégie construit un système de trading relativement complet grâce à une analyse complète de trois dimensions : la tendance de la moyenne mobile, le RSI suracheté et survendu et la volatilité de l’ATR. Le principal avantage de la stratégie réside dans la validation croisée de plusieurs indicateurs, ce qui peut réduire efficacement l’impact des faux signaux. Il existe encore une grande marge d’optimisation de la stratégie grâce à l’optimisation des paramètres et à l’amélioration du mécanisme de contrôle des risques. Il est recommandé aux traders d’ajuster les paramètres en fonction de l’environnement de marché spécifique et de mettre en œuvre strictement des mesures de contrôle des risques lors de son utilisation dans le trading réel.
/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("High Win Rate BTC Strategy", overlay=true)
// 参数设置
emaShortLength = input(20, title="Short EMA Length")
emaLongLength = input(50, title="Long EMA Length")
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")
atrLength = input(14, title="ATR Length")
atrThreshold = input(1.0, title="ATR Threshold")
holdBars = input(5, title="Hold Bars")
// 计算指标
emaShort = ta.ema(close, emaShortLength)
emaLong = ta.ema(close, emaLongLength)
rsi = ta.rsi(close, rsiLength)
atr = ta.atr(atrLength)
// 趋势确认
uptrend = emaShort > emaLong
downtrend = emaShort < emaLong
// 入场条件
longCondition = uptrend and close > emaShort and rsi < rsiOverbought and atr > atrThreshold
shortCondition = downtrend and close < emaShort and rsi > rsiOversold and atr > atrThreshold
// 出场条件
var int holdCount = 0
if (strategy.position_size > 0 or strategy.position_size < 0)
holdCount := holdCount + 1
else
holdCount := 0
exitCondition = holdCount >= holdBars
// 执行交易
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (exitCondition)
strategy.close_all()
// 绘制指标
plot(emaShort, color=color.blue, title="Short EMA")
plot(emaLong, color=color.red, title="Long EMA")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, color=color.purple, title="RSI")