
Bei dieser Strategie handelt es sich um ein Trendverfolgungs-Handelssystem, das auf mehreren technischen Indikatoren basiert. Es kombiniert den gleitenden Durchschnittstrend, den RSI-Überkauf- und Überverkaufsindikator sowie die ATR-Volatilitätsindikatoren, um die Erfolgsquote und Rentabilität von Transaktionen durch mehrdimensionale Marktanalyse zu verbessern. Die Kernlogik der Strategie besteht darin, die Trendrichtung durch die Überkreuzung von kurzfristigen und langfristigen EMAs zu bestätigen, den RSI-Indikator zu verwenden, um falsche Durchbrüche herauszufiltern, und schließlich ATR zu kombinieren, um die Haltezeit dynamisch anzupassen, um ein genaues Verständnis zu erreichen der Trend.
Die Strategie verwendet die gleitenden Durchschnitte des 20- und 50-Tage-EMA als Hauptgrundlage zur Trendbeurteilung. Wenn der kurzfristige EMA den langfristigen EMA überschreitet, wird ein Aufwärtstrend bestätigt, andernfalls ein Abwärtstrend. Auf der Grundlage der Trendbestätigung wird der RSI-Indikator eingeführt, um überkauft und überverkauft zu beurteilen. Wenn der RSI unter 30 liegt und in den überverkauften Bereich eintritt und sich in einem Aufwärtstrend befindet, wird ein Long-Signal ausgelöst; wenn der RSI über 70 liegt und in den überkauften Bereich eintritt und sich in einem Abwärtstrend befindet, wird ein Long-Signal ausgelöst; wenn , wird das Short-Signal ausgelöst. Gleichzeitig wird der ATR-Indikator zur Messung der Marktvolatilität verwendet. Transaktionen werden nur ausgeführt, wenn der ATR größer als der festgelegte Schwellenwert ist, um den Handel in einem Marktumfeld mit zu geringer Volatilität zu vermeiden.
Diese Strategie konstruiert ein relativ vollständiges Handelssystem durch eine umfassende Analyse von drei Dimensionen: gleitender Durchschnittstrend, RSI überkauft und überverkauft und ATR-Volatilität. Der Hauptvorteil der Strategie liegt in der Kreuzvalidierung mehrerer Indikatoren, wodurch die Auswirkungen falscher Signale wirksam reduziert werden können. Es besteht noch viel Spielraum für die Optimierung der Strategie durch Parameteroptimierung und Verbesserung des Risikokontrollmechanismus. Es wird Händlern empfohlen, die Parameter entsprechend der spezifischen Marktumgebung anzupassen und bei der Verwendung im realen Handel strikte Risikokontrollmaßnahmen umzusetzen.
/*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")