이 전략은 세 가지 기술 지표 - 지원, 저항 및 트렌드 라인 - 을 활용하여 엔트리를 자동화하고 손실을 중지합니다. 먼저 주요 지원 및 저항 수준을 식별하고 진입 시기를 결정하기 위해 트렌드 방향을 결합합니다.
해결책:
이 전략은 여러 가지 기술 도구의 힘을 결합합니다. 적절한 매개 변수 조정으로, 좋은 위험 조정 수익을 얻을 수 있습니다. 열쇠는 매개 변수와 입력 순서를 최적화하는 것입니다. 전반적으로 전략 프레임워크는 건전하며 개선 잠재력이 있습니다.
/*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)