이 전략은 트렌드 강도를 확인하고 변동성을 포착하는 메커니즘을 결합한 여러 이동 평균에 기반한 트렌드 추적 시스템입니다. 5, 25, 75 기간의 세 개의 이동 평균 시스템을 핵심으로 활용하고 ADX 지표를 통해 강력한 트렌드를 필터하고 신속한 수익을 창출하기 위해 빠른 변동성 모니터링 시스템을 통합합니다. 이 다층 거래 메커니즘은 시장 트렌드를 효과적으로 식별하고 적절한 시간에 거래를 실행합니다.
이 전략은 세 가지 핵심 메커니즘을 기반으로 합니다.
특정 거래 규칙:
적응 매개 변수를 입력합니다:
증강 트렌드 확인:
이윤/손실 취득을 최적화:
시장 환경 분류:
이 전략은 여러 이동 평균, 트렌드 강도 확인 및 변동성 모니터링 차원을 통해 완전한 거래 시스템을 구축합니다. 주요 장점은 다단계 확인 메커니즘과 유연한 위험 관리 시스템입니다. 제공된 최적화 제안을 통해 전략은 적응력과 안정성을 더욱 향상시킬 수 있습니다. 실제 응용에서는 거래자가 특정 시장 특성에 따라 매개 변수를 최적화하고 합리적인 돈 관리 전략과 결합하는 것이 좋습니다.
/*backtest start: 2024-10-01 00:00:00 end: 2024-10-31 23:59:59 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("5SMA-25SMA Crossover Strategy with ADX Filter and Sudden Move Profit Taking", overlay=true) // パラメータの設定 sma5 = ta.sma(close, 5) sma25 = ta.sma(close, 25) sma75 = ta.sma(close, 75) // ADXの計算 length = 14 tr = ta.tr(true) plus_dm = ta.rma(math.max(ta.change(high), 0), length) minus_dm = ta.rma(math.max(-ta.change(low), 0), length) tr_sum = ta.rma(tr, length) plus_di = 100 * plus_dm / tr_sum minus_di = 100 * minus_dm / tr_sum dx = 100 * math.abs(plus_di - minus_di) / (plus_di + minus_di) adx = ta.rma(dx, length) // ロングとショートのエントリー条件 longCondition = ta.crossover(sma5, sma25) and close > sma75 and adx > 20 shortCondition = ta.crossunder(sma5, sma25) and close < sma75 and adx > 20 // 急激な変動を検知する条件(ここでは、前のローソク足に比べて0.6%以上の値動きがあった場合) suddenMove = math.abs(ta.change(close)) > close[1] * 0.006 // ポジション管理 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // 急激な変動があった場合、ポジションを利益確定(クローズ)する if (strategy.position_size > 0 and suddenMove) strategy.close("Long") if (strategy.position_size < 0 and suddenMove) strategy.close("Short") // エグジット条件 if (strategy.position_size > 0 and shortCondition) strategy.close("Long") if (strategy.position_size < 0 and longCondition) strategy.close("Short") // SMAとADXのプロット plot(sma5, color=color.blue, title="5SMA") plot(sma25, color=color.red, title="25SMA") plot(sma75, color=color.green, title="75SMA") plot(adx, color=color.orange, title="ADX") hline(20, "ADX Threshold", color=color.gray, linestyle=hline.style_dotted)