Трехдневная стратегия реверсии торгового курса

Автор:Чао Чжан, Дата: 2023-10-13 15:37:18
Тэги:

Обзор

Стратегия 3-дневной реверсии торговой черепахи - это модификация стратегии 3-дневной средней реверсии из книги High Probability ETF Trading Ларри Коннорса и Сезара Альвареса.

  • Если вчерашнее закрытие ниже 5-дневной простой скользящей средней, покупайте сегодня.
  • Если сегодняшнее закрытие выше 5-дневной простой скользящей средней, продавайте сегодня.

Благодаря практике и обратному тестированию, я обнаружил, что стратегия последовательно работает лучше, когда используется EMA вместо SMA для линии тренда.

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

Стратегия работает следующим образом:

  • Пройти длинный период, когда соответствуют следующим условиям покупки:
    • Закрытие находится выше 200-дневной EMA
    • Закрытие находится ниже 5-дневной ЕМА
    • Сегодняшний максимум ниже, чем вчерашний
    • Сегодняшний минимум ниже, чем вчерашний.
    • Вчерашний максимум ниже, чем предыдущий
    • Вчерашний минимум ниже, чем минувший.
    • Высокий показатель предыдущего дня ниже, чем 2 дня назад
    • Предыдущий день ниже, чем 2 дня назад
  • Выход, когда закрытие пересекает выше выхода EMA

По умолчанию выходная EMA устанавливается на 5-дневную EMA, ее длина регулируется.

Основная идея стратегии заключается в том, чтобы воспользоваться преимуществами краткосрочной средней реверсии. Когда цены непрерывно падают, они, вероятно, восстанут в краткосрочной перспективе. Стратегия определяет средние возможности реверсии, проверяя, сузились ли цены в течение 3 дней подряд ниже краткосрочной EMA. Как только происходит обратное движение, оно быстро выходит, когда цена превышает выходную EMA.

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

По сравнению с традиционными стратегиями перекрестного использования скользящей средней, эта стратегия имеет следующие преимущества:

  1. Использование 3-дневного последовательного сужения для выявления отклонений улучшает качество сигнала.

  2. Фильтрация с длинными и короткими EMA избегает торговли на трендовых рынках.

  3. Использование EMA вместо SMA для линии тренда является более чувствительным при обнаружении реверсий.

  4. Регулируемая длина выхода EMA позволяет настроить стратегию стоп-лосса на основе рыночных условий.

  5. Низкая частота торговли с периодом хранения 1-2 дня позволяет избежать рисков, связанных с длинными направленными ставками.

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

Стратегия также имеет следующие риски:

  1. Риск неудачного переворота: цена может не восстановиться и продолжить снижение после сигнала переворота.

  2. Частый риск стоп-лосса.

  3. Риск оптимизации параметров. Выход EMA и другие параметры нуждаются в постоянном тестировании и настройке на основе развивающихся рынков.

  4. Оптимизация должна предотвращать переподборку. Параметры должны быть надежными.

Риски могут быть уменьшены:

  1. Строго соблюдать правила стоп-лосса, чтобы контролировать однократные убытки.

  2. Устойчивая настройка параметров во время оптимизации, чтобы сбалансировать риск и доходность.

  3. Корректировка размеров позиций с целью снижения риска по сделке.

Возможности оптимизации

Стратегия может быть улучшена в следующих аспектах:

  1. Проверьте различные длины EMA для входа и выхода, чтобы найти оптимальные параметры.

  2. Добавьте другие фильтры, такие как громкость, чтобы гарантировать, что сигналы обратного движения более надежные.

  3. Для большей гибкости используйте стоп-лосс с помощью таких методов, как ATR или trailing stops.

  4. Включить фильтр тренда, чтобы избежать сигналов обворота в существующих тенденциях.

  5. Комбинировать с другими стратегиями оптимизации и диверсификации портфеля.

  6. Используйте машинное обучение для адаптивной настройки параметров.

Резюме

Стратегия Turtle Trading 3-дневной реверсии определяет краткосрочные возможности реверсии путем обнаружения 3-дневных паттернов сужения ниже короткой EMA. По сравнению с традиционными движущимися средними стратегиями, она имеет более надежные сигналы входа и регулируемую выходной EMA для оптимизации стоп-лосса. Стратегия хорошо работает для хрупких рынков с диапазоном и ловли коротких отскоков.


/*backtest
start: 2023-10-05 00:00:00
end: 2023-10-12 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// @version = 5
// Author = TradeAutomation


strategy(title="ETF 3-Day Reversion Strategy", shorttitle="ETF 3-Day Reversion Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_order, commission_value=1, initial_capital = 10000000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)


// Backtest Date Range Inputs // 
StartTime = input(defval=timestamp('01 Jan 2012 05:00 +0000'), title='Start Time')
EndTime = input(defval=timestamp('01 Jan 2099 00:00 +0000'), title='End Time')
InDateRange = true

// Strategy Rules //
DayEMA5 = ta.ema(close, 5)
Rule1 = close>ta.ema(close, 200)
Rule2 = close<DayEMA5
Rule3 = high<high[1] and low<low[1] and high[1]<high[2] and low[1]<low[2] and high[2]<high[3] and low[2]<low[3]
ExitEMA = ta.ema(close, input.int(5, "EMA Length For Exit Strategy", tooltip = "The strategy will sell when the price crosses over this EMA"))
plot(DayEMA5)
plot(ExitEMA, color=color.green)

// Entry & Exit Functions //
if (InDateRange)
    strategy.entry("Long", strategy.long, when = Rule1 and Rule2 and Rule3)
//    strategy.close("Long", when = ta.crossunder(close, ATRTrailingStop))
    strategy.close("Long", when = ta.crossover(close, ExitEMA))
if (not InDateRange)
    strategy.close_all()

Больше