
Эта стратегия основана на двух различных параметрах параметров: индикатор сверхтенденции и индикатор CCI, целью которых является захват краткосрочных колебаний цены для осуществления высокочастотных торгов. Индикатор сверхтенденции, динамически рассчитывая ATR, определяет направление тенденции цены, а индикатор CCI используется для определения того, перекупает ли рынок.
Используя ATR с 14 циклами, рассчитывается быстрый переходный тренд с коэффициентом 3, а ATR с 14 циклов рассчитывается медленный переходный тренд с коэффициентом 6. Быстрый переходный тренд более чувствителен и может улавливать кратковременные изменения.
Когда быстрый сверхтренд проходит через цену, а медленный сверхтренд все еще находится выше цены, рассматривайте это как возможный обратный сигнал, делайте больше; когда быстрый сверхтренд проходит через цену, а медленный сверхтренд все еще находится ниже цены, рассматривайте это как возможный обратный сигнал, делайте пустоту.
В то же время, используя CCI для определения состояния перекупа и перепродажи на рынке. CCI выше 100 означает перекуп, а ниже 100 означает перепродажу.
В случае перекупки и перепродажи, индикатор сверхтенденции имеет больше шансов дать обратный сигнал, что является основной логикой стратегии.
В сочетании с определением перехода и перехода и определением CCI о перепродаже, можно эффективно отфильтровать ложные прорывы и улучшить качество сигнала.
Постепенно сверхтрендовые скрещивания формируют торговые сигналы, обеспечивающие высокую частоту выхода и входа.
Параметры CCI и супертенденции могут быть гибко адаптированы к различным рыночным условиям.
Стратегическая мысль ясна и понятна, а настройка параметров довольно проста.
Супертенденция сама по себе имеет временную задержку и может упустить первую возможность поворота. Можно попробовать сократить цикл ATR.
Существует риск обратной корректировки CCI, избыточная волатильность может привести к повторным сделкам. Можно экспериментировать с увеличением параметров CCI или корректировкой границ.
Высокая частота торговли может увеличить частоту торговли и нагрузку на комиссионные. Рекомендуется скорректировать время удержания позиций и снизить частоту открытия позиций.
Можно оптимизировать комбинацию параметров на основе показателей, таких как максимальный отвод или рентабельность, чтобы найти оптимальные параметры.
Можно комбинировать методы машинного обучения, такие как выбор параметров в случайных лесах, для автоматической оптимизации параметров.
Для управления риском можно исследовать ограничение максимального количества открытых позиций в течение определенного периода.
Эта стратегия использует сверхтрендовые показатели для определения краткосрочных обратных точек, а также фильтрует сигналы с помощью показателей CCI. При разумной настройке параметров можно достичь высокоэффективных коротких линий торговли. Однако также необходимо быть бдительным к различным рискам, связанным с слишком частыми сделками, и постоянно улучшать параметры и оптимизировать алгоритм, чтобы получить лучшую стратегическую производительность.
/*backtest
start: 2023-02-25 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="Stochastic RSI Strategy", shorttitle="StochRSI", overlay=true)
rsiLength = input.int(14, title="RSI Length")
stochLength = input.int(14, title="Stochastic Length")
kSmooth = input.int(3, title="K Smooth")
dSmooth = input.int(3, title="D Smooth")
oversoldLevel = input(10, title="Oversold Level")
overboughtLevel = input(90, title="Overbought Level")
rsi = ta.rsi(close, rsiLength)
stochRsi = ta.stoch(rsi, rsi, rsi, stochLength)
longCondition = stochRsi < oversoldLevel
shortCondition = stochRsi > overboughtLevel
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (shortCondition)
strategy.close("Long")
if (longCondition)
strategy.close("Short")
plotshape(longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)