Стратегия отмены разрыва вниз

Автор:Чао Чжан, Дата: 2023-09-19 16:19:51
Тэги:

Обзор

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

Принцип стратегии

  1. Проверьте, не возникает ли разрыв вниз, то есть текущее открытие ниже предыдущего закрытия.

  2. Если гаппированный вниз, наблюдайте, если текущий закрытие находится выше открытого, что указывает на обратное движение вверх.

  3. Если условия реверсии разрыва вниз соблюдены, вы должны пойти на длинный курс на следующий день открытия или закрытия.

  4. Установите стоп-лосс в процентном соотношении, например, 5% после входа.

  5. Когда цена падает, чтобы достичь стоп-лосса, позиция закрывается.

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

Основные преимущества этой стратегии:

  1. Захватывает возможности для обратной торговли из паттернов снижения разрыва.

  2. Высокая вероятность обратной модели совпадает с чередованием страха и жадности.

  3. Продолжающаяся остановка блокирует прибыль без необходимости ручного мониторинга.

  4. Гибкие настройки для входа и остановки потерь в соответствии с отдельными запасами.

  5. Автоматизированное выполнение и легкое обратное тестирование/оптимизация.

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

Основные риски этой стратегии:

  1. Неудачные обратные движения могут произойти, требуется проверка шаблона.

  2. Слишком большие стоп-лосс, склонные к снятию, что приводит к увеличению потерь.

  3. Плохой отбор запасов может привести к серьезным изменениям.

  4. Недостаточные данные от обратных тестов приводят к рискам перегрузки.

  5. Исполнение отличается между бэкстестом и живым.

Решения:

  1. Оптимизировать уровень стоп-лосса и процент максимальных потерь на одну сделку.

  2. Оцените общую тенденцию рынка, чтобы избежать перенасыщения запасов.

  3. Проверьте изменения в моделях и громкости.

  4. Расширить размер выборки для обратного теста, симулировать прямую торговлю.

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

Некоторые способы улучшения стратегии:

  1. Добавить фильтр тренда, чтобы избежать вхождения контратенда.

  2. Динамически регулируйте процент стоп-лосса для защиты прибыли.

  3. Подумайте о добавлении фильтра времени для торговли в определенные даты.

  4. Оценить прочность рисунка для размещения положения.

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

Резюме

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


/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-12 04:00:00
period: 1m
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/
// © RolandoSantos

//@version=2

strategy(title="Gap Down reversal strat", overlay=true, pyramiding=1, default_qty_type =  strategy.cash, default_qty_value = 10000, initial_capital = 10000 )

/// Start date

startDate = input(title="Start Date", defval=1, minval=1, maxval=31)
startMonth = input(title="Start Month", defval=1, minval=1, maxval=12)
startYear = input(title="Start Year", defval=2009, minval=1800, maxval=2100)


// See if this bar's time happened on/after start date
afterStartDate = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0))

// STEP 1:
// Configure trail stop level with input options (optional)
longTrailPerc = input(title="Trail Long Loss (%)",
     type=float, minval=0.0, step=0.1, defval=5.0) * 0.01


// Calculate trading conditions
gap_d_r = open < close[1] and close > open


// Plot Shapes
plotshape(gap_d_r, style=shape.triangleup, location=location.belowbar)
///plotshape(gap_u_r, style=shape.triangledown, location=location.abovebar)

///// Use Low, or close/////

//hlco = input(title="Stop Modifier", defval="close", options=["open", "high", "low"])


// STEP 2:
// Determine trail stop loss prices
longStopPrice = 0.0   ///, shortStopPrice = 0.0

longStopPrice := if (strategy.position_size > 0)
    stopValue = close * (1 - longTrailPerc)
    max(stopValue, longStopPrice[1])
else
    0


// Plot stop loss values for confirmation
plot(series=(strategy.position_size > 0) ? longStopPrice : na,
     color=red, style=circles,
     linewidth=1, title="Long Trail Stop")


// Submit entry orders
if (afterStartDate and gap_d_r)
    strategy.entry(id="EL", long=true)


// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
    strategy.exit(id="Stop out", stop=longStopPrice)















Больше