
Стратегия основана на торговых стратегиях, в которых SAR-индикатор совершает чередующие операции в разные временные периоды. Стратегия рассчитывает SAR-индикатор в 15-минутных, солнечных, орбитальных и лунных временных рамках и совершает торговые операции в орбитальных временных рамках.
Индекс SAR представляет собой параболический SAR, который определяет направление тенденции рынка, рассчитывая отношение текущей цены к исторической цене, и показывает, что тенденция переворачивается, когда цена пробивает точку SAR.
Эта стратегия рассчитывает SAR-значения в 15-минутных, солнечных, круговых и лунных временных рамках.
SAR = SAR前值 + 加速因子(最高价 - SAR前值) # 多头趋势
SAR = SAR前值 + 加速因子(最低价 - SAR前值) # 空头趋势
Первоначальное значение коэффициента ускорения установлено на уровне 0.02, которое будет постепенно увеличиваться до максимума 0.2 с продолжением тренда.
Стратегия посылает торговый сигнал в пределах часовой рамки круговой линии. Когда круговой линии SAR проходит наивысшую цену, настройка стоп-лосса на SAR. Когда SAR проходит наименьшую цену, настройка стоп-лосса на SAR.
Эта стратегия более эффективна в получении прибыли, поскольку она определяет тенденции на более высоком уровне временных рамок и устанавливает более точные позиции стоп-лосса.
Эта стратегия имеет четкую общую концепцию, благодаря которой можно эффективно следить за большим направлением, оценивая тенденции в высоких временных рамках. В то же время показатель 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")