Эта стратегия разрабатывает краткосрочную торговую систему, основанную на индикаторе волатильности Чейкина для улавливания краткосрочных колебаний рынка.
Индикатор волатильности Чейкина количественно измеряет волатильность путем измерения спрэда между самой высокой и самой низкой ценами ценной бумаги.
Конкретная логика этой стратегии заключается в следующем:
Преимущества этой стратегии включают:
Существуют также некоторые риски:
Решения:
Стратегия может быть улучшена путем:
Стратегия имеет простую и ясную логику, подходящую для краткосрочной торговли. Гибкие параметры могут быть скорректированы по мере необходимости. Существуют риски перенапряжения и высокой частоты торговли. Дальнейшие оптимизации могут сделать стратегию более надежной для более устойчивой производительности.
/*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")