Торговая стратегия RSI аллигатора

Автор:Чао Чжан, Дата: 2023-12-07 15:46:57
Тэги:

img

Обзор

Торговая стратегия Alligator RSI - это количественная торговая стратегия, которая использует комбинацию нескольких скользящих средних относительной силы (RSI) для определения рыночных тенденций и генерации торговых сигналов.

Логика стратегии

Торговая стратегия Alligator RSI использует три линии RSI - 5-периодическую, 13-периодическую и 34-периодическую. 5-периодическая линия RSI называется линией Teeth, 13-периодическая линия Lips и 34-периодическая линия Jaw. Когда линия Teeth или Lips пересекает линию Jaw, генерируется длинный сигнал. Когда линия Teeth или Lips пересекает линию Jaw, запускается короткий сигнал.

Ключ заключается в обнаружении перекрестков между краткосрочными и долгосрочными линиями RSI, чтобы оценить взаимосвязь между краткосрочными и долгосрочными тенденциями и определить возможности для обратного движения.

Анализ преимуществ

Торговая стратегия Alligator RSI имеет следующие преимущества:

  1. Захватывает изменения рынка, прибыль от изменений тренда
  2. Многочисленные РСИ MAs подтверждают сигналы, избегают ложных сигналов
  3. Простая и понятная логика, легкая для понимания и реализации
  4. Регулируемые параметры, регулируемые параметры
  5. Применяется на разных рынках и в разные сроки, работы на разных рынках и в разные сроки

Анализ рисков

Торговая стратегия Alligator RSI также имеет следующие риски:

  1. Склонность к ложным сигналам, склонность к ложным сигналам
  2. Борьба на рынках с ограниченным диапазоном, борьба на рынках с ограниченным диапазоном
  3. Потенциально большие вычеты, потенциально большие вычеты
  4. Временная настройка параметров, временная настройка параметров
  5. Потенциальное переоценка, потенциальное переоценка

Эти риски могут быть смягчены путем объединения дополнительных показателей, оптимизации параметров и соответствующей корректировки размеров позиций.

Руководство по оптимизации

Торговая стратегия Alligator RSI может быть оптимизирована следующими способами:

  1. Комбинируйте другие технические индикаторы, такие как полосы Боллинджера, шаблоны свечей для фильтрации ложных сигналов
  2. Оптимизировать параметры RSI для поиска наилучшей комбинации параметров MA
  3. Корректировка размеров позиций и стоп-лосс на основе рыночных условий
  4. Эффективность параметров испытаний для различных продуктов и временных рамок
  5. Включить машинное обучение для динамической оптимизации параметров

Заключение

Торговая стратегия Alligator RSI использует перекрестки RSI MA для захвата возможностей переворота рынка. Она проста, применима для торговли алгоритмами, но имеет некоторые недостатки. Оптимизация параметров и комбинации индикаторов могут улучшить эту стратегию, чтобы сделать ее стабильно прибыльной алгоритмической торговой стратегией.


/*backtest
start: 2022-11-30 00:00:00
end: 2023-12-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("RSI Alligator", overlay=false)

jaws = rsi(close, 34)
teeth = rsi(close, 5)
lips = rsi(close, 13)
plot(jaws, color=blue, title="Jaw")
plot(teeth, color=green, title="Teeth")
plot(lips, color=red, title="Lips")



longCondition = crossover(rsi(close, 13), rsi(close, 34)) and (rsi(close, 5) > rsi(close, 34))
longCondition1 = crossover(rsi(close, 5), rsi(close, 34)) and (rsi(close, 13) > rsi(close, 34))
if (longCondition)
    strategy.entry("Long", strategy.long)
if (longCondition1)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(rsi(close, 13), rsi(close, 34)) and (rsi(close, 5) < rsi(close, 34))
shortCondition1 = crossunder(rsi(close, 5), rsi(close, 34)) and (rsi(close, 13) < rsi(close, 34))
if (shortCondition)
    strategy.entry("Short", strategy.short)
if (shortCondition1)
    strategy.entry("Short", strategy.short)
    
    // === BACKTESTING: EXIT strategy ===
sl_inp = input(10, title='Stop Loss %', type=float)/100
tp_inp = input(90, title='Take Profit %', type=float)/100

stop_level = strategy.position_avg_price * (1 - sl_inp)
take_level = strategy.position_avg_price * (1 + tp_inp)

strategy.exit("Stop Loss/Profit", "Long", stop=stop_level, limit=take_level)

Больше