이 전략은 체이킨 변동성 지표에 기반한 단기 거래 시스템을 설계하여 단기 시장 변동을 포착합니다. 주요 아이디어는 체이킨 변동성 지표가 지정된 임계 이상 또는 이하를 넘을 때 긴 또는 짧은 포지션을 입력하는 것입니다.
차킨 변동성 지표는 증권의 최고와 최저 가격 사이의 스프레드를 측정함으로써 변동성을 정량화합니다. 높은 가격과 낮은 가격 사이의 범위가 넓어지면 변동성이 증가합니다.
이 전략의 구체적인 논리는 다음과 같습니다.
이 전략의 장점은 다음과 같습니다.
또한 몇 가지 위험이 있습니다.
해결책:
이 전략은 다음과 같이 개선될 수 있습니다.
이 전략은 단기 거래에 적합한 간단하고 명확한 논리를 가지고 있습니다. 유연한 매개 변수는 필요에 따라 조정 될 수 있습니다. 과잉 조정 및 높은 거래 빈도 위험이 있습니다. 추가 최적화는 더 안정적인 성능을 위해 전략을 더 견고하게 할 수 있습니다.
/*backtest start: 2023-11-20 00:00:00 end: 2023-12-04 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version = 2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 01/12/2016 // Chaikin's Volatility indicator compares the spread between a security's // high and low prices. It quantifies volatility as a widening of the range // between the high and the low price. // You can use in the xPrice1 and xPrice2 any series: Open, High, Low, Close, HL2, // HLC3, OHLC4 and ect... // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. /////////////////////////////////////////////////////////// strategy(title="Chaikin Volatility Strategy Backtest") Length = input(10, minval=1) ROCLength = input(12, minval=1) Trigger = input(0, minval=1) reverse = input(false, title="Trade reverse") hline(0, color=purple, linestyle=line) hline(Trigger, color=red, linestyle=line) xPrice1 = high xPrice2 = low xPrice = xPrice1 - xPrice2 xROC_EMA = roc(ema(xPrice, Length), ROCLength) pos = iff(xROC_EMA < Trigger, 1, iff(xROC_EMA > Trigger, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(pos == -1 ? red: pos == 1 ? green : blue ) plot(xROC_EMA, color=blue, title="Chaikin Volatility Strategy")