이 전략은 CCI 지표에 기반한 단장 거래 전략을 설계합니다. CCI가 100보다 높을 때 구매 신호를 생성하고 CCI가 -100 이하로 떨어지면 긴 포지션을 닫습니다. 이 전략은 단장 포지션 폐쇄를 허용함으로써 단장을 효과적으로 방지합니다.
CCI 지표는 추세 오시레이터로, 한 기간 동안 현재 가격과 전형적인 가격의 오차를 측정합니다. CCI 100 이상은 과잉 구매 조건을 나타냅니다. CCI -100 이하는 과잉 판매 조건을 나타냅니다.
거래의 논리는 CCI가 100을 넘어서면 긴 포지션을 매각하고 CCI가 -100을 넘어서면 긴 포지션을 매각하는 것입니다. 또한 이 전략은 단위 포지션을 막기 위해 포지션을 매각하는 것을 허용하고, 효과적으로 위험을 통제합니다.
이 전략은 CCI를 사용하여 장기적으로 거래할 수 있는 과잉 구매/ 과잉 판매 영역을 식별합니다. 이 개념은 성숙하고 구현하기 쉽지만 매개 변수 최적화, 신호 필터, 스톱 등을 둘러싼 위험이 있습니다. 지속적인 개선으로, 이것은 강력한 장기적인 거래 전략 선택이 될 수 있습니다.
/*backtest start: 2022-12-11 00:00:00 end: 2023-12-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("CCI Long Only Strategy", overlay=true) // Input for CCI period cciPeriod = input(14, title="CCI Period") // Calculate CCI cciValue = ta.cci(close, cciPeriod) // Initialize variables to track last signals var bool lastBuySignal = na var bool lastSellSignal = na // Buy condition buyCondition = cciValue > 100 and na(lastBuySignal) // Sell condition sellCondition = cciValue < -100 and na(lastSellSignal) // Update last signals lastBuySignal := buyCondition ? true : na lastSellSignal := sellCondition ? true : na // Execute Buy and Sell orders strategy.entry("Buy", strategy.long, when = buyCondition) strategy.close("Buy", when = sellCondition) // Plot CCI for reference plot(cciValue, title="CCI", color=color.blue)