
Die Strategie ist ein Trend-Tracking-Trading-System, das auf einem relativ starken Indikator ((RSI) in Kombination mit einem Moving Average ((MA) basiert. Der Kern der Strategie besteht darin, Preisbewegungen über den RSI zu erfassen, während der 90-Tage-Moving Average als Trendfilter verwendet wird, um die Markttrends effektiv zu verfolgen. Die Strategie verwendet den einstellbaren RSI, um die Überkauf-Überverkauf-Durchschnittswerte zu überschreiten, und setzt eine Rückmessfrist von 2500 Tagen, um die Praxis und Stabilität der Strategie zu gewährleisten.
Die Strategie basiert auf folgenden Kernkomponenten:
Die Kaufbedingungen werden mit einem RSI-Wert von 70 ausgelöst, während das Verkaufssignal mit einem RSI-Wert von 62 ausgelöst wird. Das System berechnet automatisch und führt den vollständigen Positionseröffnungsprozess durch, wenn die Positionseröffnungskonditionen erfüllt sind und sich innerhalb der effektiven Rückprüfungszeit befinden.
Vorschläge zur Risikokontrolle:
Optimierung des Signalsystems:
Positionsmanagement optimiert:
Optimierung der Risikokontrolle:
Optimierung der Rückmeldung:
Durch die Kombination des RSI-Dynamik-Indikators und des Gleichgewichts-Trendfilters wird ein relativ gutes Handelssystem aufgebaut. Die Strategie hat den Vorteil, dass sie sehr anpassungsfähig ist, die Risikokontrolle perfekt ist, aber die Auswirkungen von Parameter-Sensitivität und Veränderungen der Marktumgebung berücksichtigt werden müssen. Durch die empfohlene Optimierungsrichtung kann die Strategie noch verbessert werden, um ihre Stabilität und Profitabilität weiter zu verbessern.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Simple RSI Strategy - Adjustable Levels with Lookback Limit and 30-Day MA", overlay=true)
// Parameters
rsi_length = input.int(12, title="RSI Length", minval=1) // RSI period
rsi_overbought = input.int(70, title="RSI Overbought Level", minval=1, maxval=100) // Overbought level
rsi_oversold = input.int(62, title="RSI Oversold Level", minval=1, maxval=100) // Oversold level
ma_length = input.int(90, title="Moving Average Length", minval=1) // Moving Average period
// Calculate lookback period (2000 days)
lookback_period = 2500
start_date = timestamp(year(timenow), month(timenow), dayofmonth(timenow) - lookback_period)
// RSI Calculation
rsi_value = ta.rsi(close, rsi_length)
// 30-Day Moving Average Calculation
ma_value = ta.sma(close, ma_length)
// Buy Condition: Buy when RSI is above the overbought level
long_condition = rsi_value > rsi_overbought
// Sell Condition: Sell when RSI drops below the oversold level
sell_condition = rsi_value < rsi_oversold
// Check if current time is within the lookback period
in_lookback_period = (time >= start_date)
// Execute Buy with 100% equity if within lookback period
if (long_condition and strategy.position_size == 0 and in_lookback_period)
strategy.entry("Buy", strategy.long, qty=strategy.equity / close)
if (sell_condition and strategy.position_size > 0)
strategy.close("Buy")
// Plot RSI on a separate chart for visualization
hline(rsi_overbought, "Overbought", color=color.red)
hline(rsi_oversold, "Oversold", color=color.green)
plot(rsi_value, title="RSI", color=color.blue)
// Plot the 30-Day Moving Average on the chart
plot(ma_value, title="30-Day MA", color=color.orange, linewidth=2)