Стратегия солнечного супертренда


Дата создания: 2023-12-13 14:40:24 Последнее изменение: 2023-12-13 14:40:24
Копировать: 3 Количество просмотров: 624
1
Подписаться
1621
Подписчики

Стратегия солнечного супертренда

Обзор

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

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

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

В частности, стратегия генерирует торговые сигналы в соответствии со следующей логикой:

  1. Использование индикатора SuperTrend для определения направления основных тенденций
  2. Когда индикатор SuperTrend меняет направление, возникает потенциальный обратный сигнал
  3. Фильтруйте обратный сигнал, если в это время направление объекта K-линии совпадает с предыдущим
  4. В случае изменения направления объекта K-линии, подтверждение обратного сигнала, создание сигнала сделки

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

  1. На основе показателя SuperTrend можно определить точную точку переворота
  2. Повышение качества сигнала в сочетании с эффективной фильтрацией по направлению к линии K
  3. Подходящий для использования в качестве временного индикатора, направляющего инвесторов на выбор разумного времени входа и выхода
  4. Широко применяется в любом периоде времени и в разных разновидностях, обладает высокой адаптивностью

Риски и решения

  1. Индекс SuperTrend может создавать избыточные сигналы, требующие дополнительной фильтрации
    Решение: эта стратегия использует направление K-линии для вспомогательного суждения, эффективно фильтруя неэффективные сигналы
  2. Параметры SuperTrend легко оптимизируются или переоптимизируются
    Решение: используйте параметры по умолчанию, чтобы избежать перенастройки
  3. Невозможность справиться с быстрым поворотом событий
    Решение: соответствующая корректировка ATR-циклических параметров для более быстрого реагирования

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

  1. Попробуйте различные комбинации параметров цикла ATR
  2. Увеличение объема или показателей частоты колебаний для вспомогательной фильтрации сигналов
  3. Комбинация с другими системами показателей для повышения эффективности стратегии
  4. Разработка механизмов по борьбе с убытками

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

Стратегия солнечных супертенденций - эффективная стратегия, основанная на показателях SuperTrend для определения обратной тенденции. Она в сочетании с направлением K-линейных объектов используется для дополнительного определения, эффективно фильтрует неэффективные сигналы и улучшает качество сигналов.

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

//@version=5
strategy("Sunny Supertrend Strategy", overlay=true, default_qty_type=strategy.percent_of_equity)

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

shor= close > open and close[1] > open[1] and close[2] > open[2] 
lon = open > close and open[1] > close[1] and  open[2] > close[2]
tt= ta.change(direction) < 0
ss= ta.change(direction) > 0
long= tt
longexit = lon or ss
short= ss
shortexit = shor or tt

longPosMem = false
longexitPosMem = false
shortPosMem = false
shortexitPosMem = false

longPosMem := long ? true : short ? false : longPosMem[1]
longexitPosMem := longexit ? true : shortexit ? false : longexitPosMem[1]
shortPosMem := short ? true : long ? false : shortPosMem[1]
shortexitPosMem := shortexit ? true : longexit ? false : shortexitPosMem[1]

longy = long and not(longPosMem[1])
longexity = longexit and not(longexitPosMem[1])
shorty = short and not(shortPosMem[1])
shortexity = shortexit and not(shortexitPosMem[1])

//Use this to customize the look of the arrows to suit your needs.
plotshape(longy, location=location.abovebar, color=color.green, style=shape.arrowup, text="Buy")
plotshape(longexity, location=location.top, color=color.green, style=shape.xcross, text="Buy exit")
plotshape(shorty, location=location.belowbar, color=color.red, style=shape.arrowdown, text="Sell")
plotshape(shortexity, location=location.bottom, color=color.red, style=shape.xcross, text="Sell exit")


//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
// STEP 1:
// Make input options that configure backtest date range
startDate = input.int(title="Start Date", defval=1, minval=1, maxval=31)
startMonth = input.int(title="Start Month", 
     defval=1, minval=1, maxval=12)
startYear = input.int(title="Start Year",
     defval=2021, minval=1800, maxval=2100)

endDate = input.int(title="End Date",
     defval=1, minval=1, maxval=31)
endMonth = input.int(title="End Month",
     defval=2, minval=1, maxval=12)
endYear = input.int(title="End Year",
     defval=2021, minval=1800, maxval=2100)

// STEP 2:
// Look if the close time of the current bar
// falls inside the date range
inDateRange =  true



// STEP 3:
// Submit entry orders, but only when bar is inside date range
if (inDateRange and longy)
    strategy.entry("enter long",strategy.long,when= longy)
    strategy.close("long",when=longexity)


if (inDateRange and shorty)
    strategy.entry("enter short",strategy.short,when = shorty)
    strategy.close("short", when=shortexity)