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

ATH SMA MA
Дата создания: 2024-12-13 10:25:18 Последнее изменение: 2024-12-13 10:25:18
Копировать: 0 Количество просмотров: 336
1
Подписаться
1617
Подписчики

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

Обзор

Эта стратегия является стратегией отслеживания тренда, основанной на исторических новых высоких прорывах и фильтрации средней линии луны. Она ищет сигналы для покупки, наблюдая за тем, не превзошли ли цены предыдущие исторические высокие точки, а также использует лунную линию 8 циклов простой подвижной средней ((8 SMA) в качестве условия фильтрации продажи, чтобы снизить риск ложного прорыва.

Стратегический принцип

Основная логика стратегии состоит из двух ключевых частей:

  1. Сигнал покупки: система генерирует сигнал покупки, когда последняя цена закрытия преодолевает историческую максимуму предыдущего периода (без учета наивысшей цены на текущей K-линии). Это условие гарантирует вход только в четкой восходящей тенденции.
  2. Сигнал продажи: система запускает сигнал продажи, когда цены на закрытие месячной линии падают ниже 8-циклической простой движущейся средней. Это условие помогает своевременно остановить убытки и предотвратить обратный тренд, который может привести к еще большим потерям. Стратегия также разработала механизм отслеживания состояния сигнала, чтобы избежать повторного появления сигнала в одном и том же состоянии, что повышает стабильность стратегии.

Стратегические преимущества

  1. Умение ловить тенденции: с помощью исторических рекордов, можно эффективно улавливать сильные тенденции к росту.
  2. Контроль риска совершенен: в сочетании с лунной линией и средней линией в качестве фильтрующих условий, можно эффективно фильтровать ложные прорывы.
  3. Сигнальная стабильность: отслеживание состояния сигнала с помощью переменной lastSignal, чтобы избежать повторного появления сигнала.
  4. Хорошая визуализация: стратегия предоставляет четкий графический интерфейс, включающий исторические высокие и средние точки, а также знаки сигналов покупки и продажи.
  5. Адаптируемость: стратегии могут применяться в разные периоды времени и разновидности.

Стратегический риск

  1. Риск отставания: по своей сути новый рекордный сигнал имеет определенную отсталость и может пропустить лучший момент входа в игру.
  2. Риск ложного прорыва: Хотя есть фильтрация по лунной линии, в условиях волатильности рынка возможны ложные прорывы.
  3. Риск отступления: при переходе в тренд стратегия может подвергнуться значительному отступлению.
  4. Риски управления капиталом: стратегия не включает механизм управления позициями, требует дополнительных правил управления капиталом.

Направление оптимизации стратегии

  1. Вводное количество подтверждается: можно добавить показатель объема передачи в качестве условия подтверждения прорыва, повышая надежность сигнала.
  2. Совершенствование механизма остановки убытков: можно разработать более гибкие правила остановки убытков, такие как остановка отслеживания или остановка колебаний.
  3. Управление добавленными позициями: изменение размеров позиций в зависимости от динамики рыночных колебаний и интенсивности трендов.
  4. Оптимизация фильтрации сигналов: можно добавить индикаторы силы тренда, такие как ADX, для дальнейшей фильтрации сигналов слабости.
  5. Добавление фильтра времени: можно добавить фильтр временных циклов, чтобы избежать торговли в неподходящий период времени.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-11 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Buy Signal on Close Greater Than Previous All-Time High Strategy", overlay=true)

// Initialize the previous all-time high
var float prevAllTimeHigh = na

// Update the all-time high, excluding the current bar's high (use previous bar's high)
if (na(prevAllTimeHigh) or high[1] > prevAllTimeHigh)
    prevAllTimeHigh := high[1]

// Monthly closing price and 8 SMA on monthly time frame
monthlyClose = request.security(syminfo.tickerid, "M", close)
monthlySMA = ta.sma(monthlyClose, 8)

// Variables to track the last signal type
var int lastSignal = 0 // 0 = None, 1 = Buy, 2 = Sell

// Debugging output to check the all-time high and conditions
plot(prevAllTimeHigh, color=color.blue, linewidth=1, title="Previous All-Time High")
plot(monthlySMA, color=color.green, linewidth=1, title="8 SMA (Monthly)")

// Buy signal: when the latest close is greater than the previous all-time high
buySignal = close > prevAllTimeHigh and lastSignal != 1

// Sell signal: when the monthly close is below the 8 SMA
sellSignal = monthlyClose < monthlySMA and lastSignal != 2

// Update the last signal type after triggering a signal
if (buySignal)
    lastSignal := 1
if (sellSignal)
    lastSignal := 2

// Execute the strategy orders
if (buySignal)
    strategy.entry("Buy", strategy.long)

if (sellSignal)
    strategy.close("Buy")

// Optional: Plot buy and sell signals on the chart for visual reference
plotshape(series=buySignal, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", size=size.small)
plotshape(series=sellSignal, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", size=size.small)