Торговая стратегия SAR Alternating Time Frame


Дата создания: 2024-01-16 14:18:20 Последнее изменение: 2024-01-16 14:18:20
Копировать: 0 Количество просмотров: 656
1
Подписаться
1617
Подписчики

Торговая стратегия SAR Alternating Time Frame

Обзор

Стратегия основана на торговых стратегиях, в которых SAR-индикатор совершает чередующие операции в разные временные периоды. Стратегия рассчитывает SAR-индикатор в 15-минутных, солнечных, орбитальных и лунных временных рамках и совершает торговые операции в орбитальных временных рамках.

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

Расчет показателя SAR

Индекс SAR представляет собой параболический SAR, который определяет направление тенденции рынка, рассчитывая отношение текущей цены к исторической цене, и показывает, что тенденция переворачивается, когда цена пробивает точку SAR.

Эта стратегия рассчитывает SAR-значения в 15-минутных, солнечных, круговых и лунных временных рамках.

SAR = SAR前值 + 加速因子(最高价 - SAR前值) # 多头趋势
SAR = SAR前值 + 加速因子(最低价 - SAR前值) # 空头趋势

Первоначальное значение коэффициента ускорения установлено на уровне 0.02, которое будет постепенно увеличиваться до максимума 0.2 с продолжением тренда.

Торговые стратегии

Стратегия посылает торговый сигнал в пределах часовой рамки круговой линии. Когда круговой линии SAR проходит наивысшую цену, настройка стоп-лосса на SAR. Когда SAR проходит наименьшую цену, настройка стоп-лосса на SAR.

Эта стратегия более эффективна в получении прибыли, поскольку она определяет тенденции на более высоком уровне временных рамок и устанавливает более точные позиции стоп-лосса.

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

  • Используйте SAR, чтобы определить переломный момент и точную точку входа
  • Работает в высоких временных рамках, работает с основными тенденциями
  • Стойкость к SAR, эффективное управление рисками

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

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

Оптимизация

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

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

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

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

//@version=2
strategy ("SAR alternating timeframe", overlay=true)

//resolution
res1=input("15", title="Resolution")
res2=input("D", title="Resolution")
res3=input("W", title="Resolution")
res4=input("M", title="Resolution")

//output functions
out = sar(0.02,0.02,0.2)

// request.security
SAR1 = request.security(syminfo.tickerid, res1, out)
SAR2 = request.security(syminfo.tickerid, res2, out)
SAR3 = request.security(syminfo.tickerid, res3, out)
SAR4 = request.security(syminfo.tickerid, res4, out)

//Plots
//plot(SAR1 , title="SAR 15", color = red, linewidth = 2)
//plot(SAR2 , title="SAR D", color = green, linewidth = 3)
plot(SAR3 , title="SAR W", color =blue, linewidth = 4)
//plot(SAR4 , title="SAR W", color =purple, linewidth = 5))


/////////////////////////////////////////////////////////////////////
//trade
if (SAR3 >= high)
    strategy.entry("ParLE", strategy.long, stop=SAR3, comment="ParLE")
else
    strategy.cancel("ParLE")

if (SAR3 <= low)
    strategy.entry("ParSE", strategy.short, stop=SAR3, comment="ParSE")
else
    strategy.cancel("ParSE")