이 전략은 이동 평균 (MA) 및 볼링거 밴드 지표를 결합한 트렌드를 따르는 거래 시스템이다. 이 전략은 위험 통제를 위해 고정 비율의 스톱 로스 메커니즘을 통합하면서 200 기간 이동 평균과 볼링거 밴드 위치와의 가격 관계를 분석하여 시장 트렌드를 식별합니다. 이 전략은 신중한 펀드 관리 원칙을 입증하는 35x 레버리지와 호환되는 2.86% 포지션 관리를 사용합니다.
전략의 핵심 논리는 다음의 핵심 요소에 기초합니다.
이 전략은 고전적인 기술 지표를 결합하여 완벽한 거래 시스템을 구축하고, 좋은 트렌드 캡처 능력과 리스크 제어 효과를 보여줍니다. 핵심 장점은 고정 스톱-러스 메커니즘을 통해 효과적인 리스크 통제를 달성하는 동시에 높은 체계화와 매개 변수 조정 가능성에 있습니다. 범위 시장에서 성능이 양호하지 않을 수 있지만 제안된 최적화를 구현하면 전략 안정성과 수익성을 더욱 향상시킬 수 있습니다. 거래자는 라이브 거래를 구현할 때 시장 조건을 고려하고 위험 용도에 따라 매개 변수를 조정하는 것이 좋습니다.
/*backtest start: 2024-11-26 00:00:00 end: 2024-12-25 08:00:00 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("MA 200 and Bollinger Bands Strategy", overlay=true) // 2.86% for 35x leverage // inputs ma_length = input(200, title="MA Length") bb_length = input(20, title="Bollinger Bands Length") bb_mult = input(2.0, title="Bollinger Bands Multiplier") // calculations ma_200 = ta.sma(close, ma_length) bb_basis = ta.sma(close, bb_length) bb_upper = bb_basis + (ta.stdev(close, bb_length) * bb_mult) bb_lower = bb_basis - (ta.stdev(close, bb_length) * bb_mult) // plot indicators plot(ma_200, color=color.blue, title="200 MA") plot(bb_upper, color=color.red, title="Bollinger Upper Band") plot(bb_basis, color=color.gray, title="Bollinger Basis") plot(bb_lower, color=color.green, title="Bollinger Lower Band") // strategy logic long_condition = close > ma_200 and bb_basis > ma_200 and ta.crossover(close, bb_lower) short_condition = close < ma_200 and bb_basis < ma_200 and ta.crossunder(close, bb_upper) // fixed stop loss percentage fixed_stop_loss_percent = 3.0 / 100.0 if (long_condition) strategy.entry("Long", strategy.long) strategy.exit("Stop Long", "Long", stop=strategy.position_avg_price * (1 - fixed_stop_loss_percent)) if (short_condition) strategy.entry("Short", strategy.short) strategy.exit("Stop Short", "Short", stop=strategy.position_avg_price * (1 + fixed_stop_loss_percent)) // take profit conditions close_long_condition = close >= bb_upper close_short_condition = close <= bb_lower if (close_long_condition) strategy.close("Long") if (close_short_condition) strategy.close("Short")