이것은 CCI 지표에 기반한 반전 거래 전략입니다. CCI 지표가 과소매 또는 과소매 수준을 표시 할 때 반전 거래를 열 것입니다. 전반적으로이 전략은 CCI 지표의 과소매 및 과소매 기능을 사용하여 가격 반전 기회를 포착합니다.
첫째, 이 전략은 CCI 지표에 기초하고 있습니다. CCI 지표의 공식은 다음과 같습니다.
CCI = (기반 가격 - 단순한 이동 평균) / (0.015 * 표준편차)
어디서요?
전형적인 가격 = (최고 + 최저 + 종료) / 3
단순 이동 평균 = 지난 N 일 동안의 전형 가격 이동 평균
표준편차 = 지난 N일 동안의 전형 가격의 변동의 제곱근
이 전략은 11주기 CCI 지표를 사용 합니다. -150은 과반 판매 수준, 150은 과반 구매 수준으로 설정됩니다.
매 바 닫을 때, 11 주기 CCI 지표가 확인됩니다. CCI가 -150 이하로 넘으면 긴 신호가 생성됩니다. CCI가 150 이상으로 넘으면 짧은 신호가 생성됩니다.
신호를 받은 후 시장 주문을 사용하여 포지션을 개설합니다. 1%의 수익 목표와 0.5%의 스톱 로스를 설정합니다.
4시간 CCI 역전 전략은 역전 거래를 위한 CCI 지표를 이용한 간단한 전략이다. 명확한 논리와 쉬운 구현의 장점이 있다. 그러나 신뢰할 수 없는 CCI 신호와 유연하지 않은 이익 목표/손실 중지 등의 약점도 있다. CCI 매개 변수를 최적화하고 필터 지표를 추가하고, 동적 출구를 개발함으로써 추가적인 개선이 가능하다. 전반적으로 이 전략은 양적 거래에 대한 CCI 기반의 아이디어를 제공하지만 실제 적용 전에 추가 최적화가 필요하다.
/*backtest start: 2023-09-12 00:00:00 end: 2023-10-12 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("4H CCI Strategy", overlay=true) length = input( 11 ) overSold = input( -150 ) overBought = input( +150 ) price1 = high price2 = low ucci = cci(price1, length) dcci = cci(price2, length) vcci = cci(ohlc4, 11) resCustom = input(title="Timeframe", defval="15") Length = input(16, minval=1) xPrice = request.security(syminfo.tickerid, resCustom, hlc3) xvnoise = abs(xPrice - xPrice[1]) nfastend = 0.666 nslowend = 0.0645 nsignal = abs(xPrice - xPrice[Length]) nnoise = sum(xvnoise, Length) nefratio = iff(nnoise != 0, nsignal / nnoise, 0) nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2) nAMA = nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1])) basis1 = nAMA slope = change(basis1,1) if (not na(vcci)) if (crossover(dcci, overSold)) strategy.entry("CCILE", strategy.long, comment="CCILE") strategy.exit("exit", "CCILE", profit = 0.01, loss = 0.005) if (crossunder(ucci, overBought)) strategy.entry("CCISE", strategy.short, comment="CCISE") strategy.exit("exit", "CCISE", profit = 0.01, loss = 0.005) //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)