Diese Strategie ist ein quantitatives Handelssystem, das auf gleitenden Durchschnitts-Crossovers und RSI-Indikatoren basiert und hauptsächlich für den Handel mit Optionen entwickelt wurde.
Die Strategie setzt auf zwei wichtige technische Indikatoren: gleitende Durchschnitte (MA) und Relative Strength Index (RSI).
Die Strategie baut ein relativ vollständiges Handelssystem auf, indem sie MA-Crossovers und RSI-Indikatoren kombiniert. Ihre Stärken liegen in der Bestätigung mehrerer Signale und einem umfassenden Risikomanagement, während der Einfluss der Marktbedingungen auf die Strategieleistung beachtet werden muss. Durch kontinuierliche Optimierung und Verbesserung verspricht die Strategie eine stabile Performance auf den Optionsmärkten.
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-04 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("MA Crossover with RSI Debugging", overlay=true) // Inputs fastLength = input.int(7, title="Fast MA Length", minval=1) slowLength = input.int(13, title="Slow MA Length", minval=1) rsiLength = input.int(17, title="RSI Length", minval=1) rsiOverbought = input.int(64, title="RSI Overbought Level", minval=50, maxval=100) rsiOversold = input.int(43, title="RSI Oversold Level", minval=0, maxval=50) takeProfitPerc = input.float(4, title="Take Profit (%)", minval=0.1) stopLossPerc = input.float(0.5, title="Stop Loss (%)", minval=0.1) // Moving Averages fastMA = ta.sma(close, fastLength) slowMA = ta.sma(close, slowLength) // RSI rsi = ta.rsi(close, rsiLength) // Entry Conditions longCondition = ta.crossover(fastMA, slowMA) and rsi < rsiOversold shortCondition = ta.crossunder(fastMA, slowMA) and rsi > rsiOverbought // Plot Debugging Shapes plotshape(ta.crossover(fastMA, slowMA), color=color.green, style=shape.circle, location=location.belowbar, title="Fast MA Crossover") plotshape(ta.crossunder(fastMA, slowMA), color=color.red, style=shape.circle, location=location.abovebar, title="Fast MA Crossunder") plotshape(rsi < rsiOversold, color=color.blue, style=shape.triangleup, location=location.belowbar, title="RSI Oversold") plotshape(rsi > rsiOverbought, color=color.orange, style=shape.triangledown, location=location.abovebar, title="RSI Overbought") // Entry and Exit Execution if (longCondition) strategy.entry("Buy", strategy.long) if (shortCondition) strategy.entry("Sell", strategy.short) takeProfitPrice = strategy.position_avg_price * (1 + takeProfitPerc / 100) stopLossPrice = strategy.position_avg_price * (1 - stopLossPerc / 100) if (strategy.position_size > 0) strategy.exit("Exit Buy", from_entry="Buy", limit=takeProfitPrice, stop=stopLossPrice) if (strategy.position_size < 0) strategy.exit("Exit Sell", from_entry="Sell", limit=takeProfitPrice, stop=stopLossPrice) // Plot Moving Averages plot(fastMA, color=color.blue, title="Fast MA") plot(slowMA, color=color.red, title="Slow MA") // RSI Levels hline(rsiOverbought, "RSI Overbought", color=color.red) hline(rsiOversold, "RSI Oversold", color=color.green)