이 전략은 스토카스틱 지표에 기반한 이중 타임프레임 모멘텀 거래 시스템이다. 이 전략은 다른 시간 프레임에 걸쳐 스토카스틱 크로스오버 신호를 분석하여 잠재적인 거래 기회를 식별하고, 더 정확한 시장 트렌드 판단과 거래 타이밍을 위해 모멘텀 원칙과 트렌드 추적 방법을 결합합니다. 이 전략은 또한 더 나은 돈 관리를 위해 수익을 취하고 손실을 멈추는 설정을 포함한 위험 관리 메커니즘을 통합합니다.
핵심 논리는 다음과 같은 핵심 요소에 기반합니다.
이것은 명확한 논리로 잘 구성된 거래 전략으로, 이중 시간 프레임 스토카스틱 지표 분석을 통해 시장 기회를 포착합니다. 전략의 강점은 여러 확인 메커니즘과 포괄적 인 위험 통제에 있습니다. 그러나 잘못된 브레이크오웃 및 매개 변수 민감성과 같은 위험에주의를 기울여야합니다. 지속적인 최적화 및 개선으로 전략은 더 나은 거래 결과를 얻을 수 있습니다.
/*backtest start: 2024-12-04 00:00:00 end: 2024-12-11 00:00:00 period: 5m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Enhanced Stochastic Strategy", overlay=true) // Input untuk Stochastic length = input.int(14, title="Length", minval=1) OverBought = input(80, title="Overbought Level") OverSold = input(20, title="Oversold Level") smoothK = input.int(3, title="Smooth %K") smoothD = input.int(3, title="Smooth %D") // Input untuk Manajemen Risiko tpPerc = input.float(2.0, title="Take Profit (%)", step=0.1) slPerc = input.float(1.0, title="Stop Loss (%)", step=0.1) // Hitung Stochastic k = ta.sma(ta.stoch(close, high, low, length), smoothK) d = ta.sma(k, smoothD) // Logika Sinyal co = ta.crossover(k, d) // %K memotong %D ke atas cu = ta.crossunder(k, d) // %K memotong %D ke bawah longCondition = co and k < OverSold shortCondition = cu and k > OverBought // Harga untuk TP dan SL var float longTP = na var float longSL = na var float shortTP = na var float shortSL = na if (longCondition) longTP := close * (1 + tpPerc / 100) longSL := close * (1 - slPerc / 100) strategy.entry("Buy", strategy.long, comment="StochLE") strategy.exit("Sell Exit", "Buy", limit=longTP, stop=longSL) if (shortCondition) shortTP := close * (1 - tpPerc / 100) shortSL := close * (1 + slPerc / 100) strategy.entry("Sell", strategy.short, comment="StochSE") strategy.exit("Buy Exit", "Sell", limit=shortTP, stop=shortSL) // Plot Stochastic dan Level hline(OverBought, "Overbought", color=color.red, linestyle=hline.style_dotted) hline(OverSold, "Oversold", color=color.green, linestyle=hline.style_dotted) hline(50, "Midline", color=color.gray, linestyle=hline.style_dotted) plot(k, color=color.blue, title="%K") plot(d, color=color.orange, title="%D") // Tambahkan sinyal visual plotshape(longCondition, title="Buy Signal", location=location.belowbar, style=shape.labelup, color=color.new(color.green, 0), text="BUY") plotshape(shortCondition, title="Sell Signal", location=location.abovebar, style=shape.labeldown, color=color.new(color.red, 0), text="SELL")