Стратегия SuperTrend на базе ATR

Автор:Чао Чжан, Дата: 2024-01-18 12:26:33
Тэги:

img

Обзор

Эта стратегия создает канал SuperTrend на основе индикатора среднего истинного диапазона (ATR), чтобы генерировать сигналы купли и продажи, когда цена проходит через канал.

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

Верхние и нижние полосы канала SuperTrend рассчитываются как:

Верхняя полоса = (Самая высокая цена + Самая низкая цена) / 2 + ATR(n) * Фактор Нижняя полоса = (Самая высокая цена + Самая низкая цена) / 2 - ATR(n) * Фактор

где ATR ((n) - средний истинный диапазон n-период и фактор - регулируемый параметр, по умолчанию 3.

Бычий сигнал генерируется, когда цена закрытия пересекает верхний диапазон. Белый сигнал генерируется, когда цена закрытия пересекает нижний диапазон. Стратегия определяет входы и выходы на основе этих сигналов.

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

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

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

  • Неправильное установление параметров факторов может привести к недостаточному получению прибыли или чрезмерному стоп-лосс
  • Во время консолидации рынка могут возникать частые торговые сигналы, которые могут привести к переоценке
  • Необходимо оптимизировать соответствие между периодом ATR и параметром фактора

Методы решения рисков:

  • Корректировка параметра коэффициента на основе различных рынков для уменьшения чрезмерного стоп-лосса
  • Добавление фильтрации условий для предотвращения частой торговли во время консолидации
  • Всесторонне учитывать волатильность, период хранения и т.д., чтобы соответствовать периоду ATR.

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

  • Включить другие индикаторы для фильтрации сигналов и оптимизации записей
  • Добавьте отслеживание движения стоп-лосса, чтобы получить больше прибыли
  • Оптимизация параметров для различных продуктов и временных рамок
  • Оптимизировать соответствие между периодом ATR и параметрами фактора

Резюме

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


/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Supertrend Backtest", shorttitle="STBT", overlay=true)

// Input for ATR Length
atrLength = input.int(10, title="ATR Length", minval=1)
atrFactor = input.float(3.0, title="Factor", minval=0.01, step=0.01)

// Calculate SuperTrend
[supertrend, direction] = ta.supertrend(atrFactor, atrLength)
supertrend := barstate.isfirst ? na : supertrend

// Define entry and exit conditions
longCondition = ta.crossover(close, supertrend)
shortCondition = ta.crossunder(close, supertrend)

// Plot the SuperTrend
plot(supertrend, color=color.new(color.blue, 0), title="SuperTrend")

// Plot Buy and Sell signals
plotshape(series=longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")

// Strategy Entry and Exit
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)



Больше