Dies ist eine Trendfolgestrategie, die zwei-Perioden- gleitende Durchschnitte (21-Tage und 55-Tage), RSI-Impulsindikator und Volumenanalyse kombiniert. Die Strategie analysiert Marktinformationen aus drei Dimensionen - Preis, Impuls und Volumen - und bestätigt gleichzeitig die Trendrichtung und filtert Handelssignale durch RSI und Volumenindikatoren, um die Genauigkeit des Handels zu verbessern. Die Strategie erfordert einen Preisdurchbruch des kurzfristigen gleitenden Durchschnitts, RSI-Kreuzung über seinem Durchschnitt und erhöhtes Volumen, um die Gültigkeit des Trends zu bestätigen.
Die Strategie setzt einen dreifachen Filtermechanismus ein:
Die Kaufbedingungen erfordern Folgendes:
Die Verkaufsbedingungen erfordern eines der folgenden:
Es handelt sich um eine Trend-Folgende Strategie, die die drei wesentlichen Elemente der technischen Analyse (Preis, Volumen, Momentum) umfassend nutzt. Durch mehrere Filtermechanismen gewährleistet die Strategie Signalzuverlässigkeit bei gleichzeitiger Aufrechterhaltung der Risikokontrolle. Obwohl sie einige inhärente Einschränkungen hat, hat die Strategie durch kontinuierliche Optimierung und Verbesserung das Potenzial, im tatsächlichen Handel stabile Renditen zu erzielen. Die Strategie kann besonders gut in Märkten mit klaren Trends und ausreichender Liquidität abschneiden.
/*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("21/55 MA with RSI Crossover", overlay=true) // Inputs for moving averages ma21_length = input.int(21, title="21-day Moving Average Length", minval=1) ma55_length = input.int(55, title="55-day Moving Average Length", minval=1) // RSI settings rsi_length = input.int(13, title="RSI Length", minval=1) rsi_avg_length = input.int(13, title="RSI Average Length", minval=1) // Moving averages ma21 = ta.sma(close, ma21_length) ma55 = ta.sma(close, ma55_length) // Volume settings vol_ma_length = input.int(21, title="Volume MA Length", minval=1) // Volume moving average vol_ma = ta.sma(volume, vol_ma_length) // RSI calculation rsi = ta.rsi(close, rsi_length) rsi_avg = ta.sma(rsi, rsi_avg_length) // Buy condition // buy_condition = close > ma21 and ta.crossover(rsi, rsi_avg) and volume > vol_ma buy_condition = close > ma21 and rsi > rsi_avg and volume > vol_ma // Sell condition // sell_condition = close < ma55 or ta.crossunder(rsi, rsi_avg) sell_condition = ta.crossunder(close, ma55) or ta.crossunder(rsi, rsi_avg) // Execute trades if (buy_condition) strategy.entry("Buy", strategy.long, comment="Buy Signal") if (sell_condition) strategy.close("Buy", comment="Sell Signal") // Plot moving averages for reference plot(ma21, color=color.blue, title="21-day MA") plot(ma55, color=color.red, title="55-day MA") // Plot RSI and RSI average for reference rsi_plot = input.bool(true, title="Show RSI?", inline="rsi") plot(rsi_plot ? rsi : na, color=color.green, title="RSI") plot(rsi_plot ? rsi_avg : na, color=color.orange, title="RSI Average")