Strategi ini adalah sistem perdagangan trend-mengikuti berdasarkan pelbagai penunjuk teknikal, menggabungkan trend EMA, keadaan overbought / oversold RSI, dan penunjuk turun naik ATR untuk meningkatkan kadar kemenangan perdagangan dan pulangan melalui analisis pasaran berbilang dimensi. Logik teras menggunakan persilangan EMA jangka pendek dan jangka panjang untuk mengesahkan arah trend, sementara menggunakan penunjuk RSI untuk menapis pecah palsu dan ATR untuk menyesuaikan tempoh pegangan secara dinamik untuk menangkap trend yang tepat.
Strategi ini menggunakan EMA 20 hari dan 50 hari sebagai asas utama untuk penentuan trend. Trend menaik disahkan apabila EMA jangka pendek melintasi di atas EMA jangka panjang, dan sebaliknya. Membina pada pengesahan trend, penunjuk RSI diperkenalkan untuk pertimbangan overbought / oversold, mencetuskan isyarat panjang apabila RSI jatuh di bawah 30 di wilayah oversold semasa trend menaik, dan isyarat pendek apabila RSI meningkat di atas 70 di wilayah overbought semasa downtrends. Indikator ATR mengukur turun naik pasaran, menjalankan dagangan hanya apabila ATR melebihi ambang yang ditetapkan untuk mengelakkan perdagangan di persekitaran turun naik yang rendah.
Strategi ini membina sistem dagangan yang agak lengkap melalui analisis komprehensif terhadap trend EMA, keadaan overbought / oversold RSI, dan turun naik ATR. Kelebihan utamanya terletak pada pengesahan silang beberapa penunjuk, dengan berkesan mengurangkan kesan isyarat palsu. Melalui pengoptimuman parameter dan penambahbaikan mekanisme kawalan risiko, strategi ini masih mempunyai potensi pengoptimuman yang signifikan. Pedagang dinasihatkan untuk menyesuaikan parameter mengikut persekitaran pasaran tertentu dan melaksanakan langkah-langkah kawalan risiko yang ketat apabila digunakan dalam perdagangan langsung.
/*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")