이 전략은 볼링거 밴드와 이동 평균을 결합하여 볼링거 밴드
이 전략은 주로 두 가지 지표: 볼링거 밴드 (Bollinger Bands) 와 이동 평균 (Moving Average) 를 기반으로 합니다.
볼링거 밴드는 상단, 하단 및 중부 레일을 포함합니다. 중부 레일은 n 일간 간단한 이동 평균이며 상단 및 하단 밴드는 중부 레일에서 상단 및 하단으로 표준 편차의 k 배입니다. 가격이 상단 또는 하단에 접근하면 과잉 구매 또는 과잉 판매를 나타냅니다. 이는 반전으로 이어질 수 있습니다.
이동 평균은 가격의 평균 트렌드 방향을 반영합니다. 단기 이동 평균이 장기 이동 평균을 넘을 때, 그것은 가격 추세가 상승하고 있음을 나타냅니다. 따라서 장기 이동 평균을 넘을 때, 그것은 가격 추세가 하락하고 있음을 나타냅니다. 따라서 짧은 기간을 고려 할 수 있습니다.
이 전략은 볼링거 밴드에서 반전 신호와 이동 평균에서 트렌드 판단을 모두 고려합니다. 가격이 볼링거 밴드의 하단 밴드를 통과 할 때 구매 신호를 생성하고 또한 상승 주요 트렌드를 보장하기 위해 이동 평균이 상승하도록 요구합니다. 가격이 볼링거 밴드의 상단 밴드를 통과 할 때 판매 신호를 생성하고 또한 이동 평균이 하향 주요 트렌드를 보장하기 위해 하향으로 이동하도록 요구합니다. 따라서 반전을 포착하는 동안 주요 트렌드 방향을 고려하는 것을 실현합니다.
구체적인 운영 규칙은 다음과 같습니다.
이 전략의 주요 장점은 다음과 같습니다.
이 전략의 주요 위험은 다음과 같습니다.
이 전략이 최적화 할 수있는 주요 측면은:
이 전략은 볼링거 밴드 (Bollinger Bands) 의 반전 신호와 이동 평균 (Moving Average) 의 트렌드 판단을 모두 고려하여, 역전 효과를 보장하면서 전체 트렌드 판단에 대한 지역 충격의 영향을 제어합니다. 신호와 원칙은 간단하고 명확하고 이해하기 쉽고 구현하기 쉽고 더 나은 성능을 위해 최적화하는 여러 가지 방법이 있으며, 양적 거래에 적합한 효율적인 전략입니다.
/*backtest start: 2023-11-05 00:00:00 end: 2023-12-05 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands Rejection with MA Trend Filter", overlay=true) // Bollinger Bands Settings length = input(20, title="Bollinger Bands Length") src = input(close, title="Source") mult = input(2.0, title="Standard Deviation") basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) // Calculate Bollinger Bands upper_band = basis + dev lower_band = basis - dev // MA Settings ma_length = input(50, title="MA Length") ma_src = input(close, title="MA Source") ma = ta.sma(ma_src, ma_length) // Buy Condition buy_condition = ta.crossover(close, lower_band) and ta.crossover(close, ma) // Sell Condition sell_condition = ta.crossunder(close, upper_band) and ta.crossunder(close, ma) if buy_condition strategy.entry("Buy", strategy.long) if sell_condition strategy.close("Buy") plot(upper_band, color=color.red, title="Upper Bollinger Band") plot(lower_band, color=color.green, title="Lower Bollinger Band") plot(ma, color=color.blue, title="50-period MA")