Эта стратегия использует три технических индикатора - поддержку, сопротивление и линии тренда - для автоматизации входа и остановки потерь.
Решения:
Эта стратегия сочетает в себе мощь нескольких технических инструментов. При правильном настройке параметров она может достичь хорошей доходности, скорректированной на риск. Ключевым является оптимизация параметров и последовательности входа. В целом структура стратегии хороша и имеет большой потенциал для улучшения.
/*backtest start: 2024-01-27 00:00:00 end: 2024-02-26 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Support Resistance Trend Strategy", overlay=true) // Input parameters supportLevel = input(100, title="Support Level") resistanceLevel = input(200, title="Resistance Level") riskRewardRatio = input(2, title="Risk-Reward Ratio") trailStopLoss = input(true, title="Use Trailing Stop Loss") // Calculate trend direction based on trend lines trendUp = close > request.security(syminfo.tickerid, "D", close[1]) trendDown = close < request.security(syminfo.tickerid, "D", close[1]) // Buy signal condition buySignal = close < supportLevel and trendUp // Sell signal condition sellSignal = close > resistanceLevel and trendDown // Entry point and exit conditions strategy.entry("Buy", strategy.long, when=buySignal) strategy.entry("Sell", strategy.short, when=sellSignal) // Calculate targets and stop-loss levels targetPrice = close + (close - supportLevel) * riskRewardRatio stopLossLevel = supportLevel // Plot support and resistance levels plot(supportLevel, color=color.green, linewidth=2, title="Support Level") plot(resistanceLevel, color=color.red, linewidth=2, title="Resistance Level") // Plot targets and stop-loss levels plot(targetPrice, color=color.blue, linewidth=2, title="Target Price") plot(stopLossLevel, color=color.orange, linewidth=2, title="Stop Loss Level") // Trailing stop-loss strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLossLevel, profit=targetPrice) strategy.exit("Take Profit/Stop Loss", from_entry="Sell", loss=targetPrice, profit=stopLossLevel) // Plot trail stop loss if (trailStopLoss) strategy.exit("Trailing Stop Loss", from_entry="Buy", loss=stopLossLevel) strategy.exit("Trailing Stop Loss", from_entry="Sell", loss=stopLossLevel)