Estratégia de acompanhamento de tendência SAR parabólica


Data de criação: 2024-01-18 12:21:17 última modificação: 2024-01-18 12:21:17
cópia: 0 Cliques: 581
1
focar em
1617
Seguidores

Estratégia de acompanhamento de tendência SAR parabólica

Visão geral

A estratégia utiliza o SAR paralelo (stop loss reversal) em combinação com a linha média EMA para filtrar e melhorar a precisão do sinal de negociação. A estratégia é adequada para os comerciantes que seguem a tendência.

Princípio da estratégia

Quando o SAR está abaixo do preço e o preço está acima do desvio da média da EMA lenta, um sinal de multiplicação é produzido; quando o SAR está acima do preço e o preço está abaixo do desvio da média da EMA lenta, um sinal de ruptura é produzido. Ao mesmo tempo, um filtro adicional é feito através do cruzamento da média da EMA rápida e da média da EMA lenta. Isso evita o falso sinal que pode ocorrer quando o indicador SAR é usado sozinho.

Especificamente, a condição de ação de um sinal múltiplo é: 1) o SAR está abaixo do preço de fechamento de ontem e está acima do preço de fechamento atual; 2) o preço de fechamento atual está acima do EMA médio lento com desvio ou passa o EMA médio lento abaixo do EMA médio rápido; 3) o preço de fechamento atual está acima do SAR e do EMA médio lento com desvio.

Os sinais de fechamento são acionados quando: 1) o SAR está acima do preço de fechamento de ontem e está abaixo do preço de fechamento atual; 2) o preço de fechamento atual está abaixo do desvio de desvio do EMA médio lento ou atravessa o EMA médio lento sobre o EMA médio rápido; 3) o preço de fechamento atual está abaixo do SAR e do desvio de desvio do EMA médio lento.

Análise de vantagens

A estratégia, combinada com o SAR e a filtragem uniforme do EMA, permite melhor identificar a direção da tendência e reduzir os falsos sinais.

As vantagens são as seguintes:

  1. O SAR pode responder rapidamente às mudanças de preço e identificar os pontos de reversão da tendência.
  2. O filtro de linha uniforme da EMA pode confirmar ainda mais a direção da tendência, evitando o falso sinal que pode ocorrer quando o indicador SAR é usado sozinho.
  3. Combinado com o cruzamento médio-rápido do EMA como condição auxiliar de julgamento, pode-se melhorar a precisão do sinal.
  4. O ajuste de parâmetros pode melhorar a rentabilidade da estratégia.

Análise de Riscos

A estratégia também apresenta alguns riscos, como os seguintes:

  1. Em situações de equilíbrio, o indicador SAR e a linha média EMA podem emitir sinais errados, afetando os ganhos estratégicos. Este risco pode ser reduzido com a otimização de parâmetros.
  2. A EMA média tem atraso e pode perder o melhor ponto de entrada para a reversão da tendência. O ciclo EMA pode ser apropriadamente encurtado para reduzir o atraso.
  3. Os pontos de suspensão de perdas de grandes movimentos de turbulência são facilmente perfurados, trazendo grandes perdas para a estratégia. A faixa de suspensão de perdas pode ser adequadamente amenizada.

Direção de otimização

A estratégia pode ser melhorada em vários aspectos:

  1. Otimizar os parâmetros de comprimento de passo e valor máximo do indicador SAR para torná-lo mais sensível às mudanças de preço.
  2. Otimizar os parâmetros de ciclo de EMA lenta e EMA rápida para encontrar a melhor combinação de parâmetros.
  3. Otimização dos parâmetros de desvio do EMA para reduzir a taxa de falha.
  4. Adição de outros indicadores para filtragem, como MACD, KDJ, etc., para melhorar a precisão do sinal.
  5. Optimizar a estratégia de stop loss para reduzir as perdas individuais.

Resumir

A estratégia utiliza os benefícios dos indicadores SAR e da linha de equilíbrio EMA para projetar uma estratégia de acompanhamento de tendências mais flexível. Em geral, a estratégia tem uma maior capacidade de identificar a direção da tendência com sucesso e pode obter melhores resultados no acompanhamento da tendência. A estabilidade e a lucratividade da estratégia podem ser aumentadas ainda mais através da otimização de parâmetros e do gerenciamento de risco.

Código-fonte da estratégia
/*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=3
strategy("SAR Trend Trader Strategy By: jhanson107", shorttitle="SAR Trend Trader Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)


SlowEMALength = input(100, "Slow EMA Length")
FastEMALength = input(10, "Fast EMA Length")
emaoffset = input(1.00, "EMA Offset %")
start = input(0.01)
increment = input(0.005)
maximum = input(0.08)

////////////////////////////////////////////////////////////////////////////////
// BACKTESTING RANGE
 
// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2019, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2020, title = "To Year", minval = 1970)
 
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
 
////////////////////////////////////////////////////////////////////////////////

psar = sar(start, increment, maximum)
ema = ema(close, SlowEMALength)
fastema = ema(close, FastEMALength)
offset = (emaoffset / 100) * ema

// Signals
long = high[1] < psar[2] and high >= psar[1] and close > ema + offset or crossunder(ema, fastema) and close > psar and close > ema + offset
short = low[1] > psar[2] and low <= psar[1] and close < ema - offset or crossover(ema, fastema) and close < psar and close < ema - offset

// Plot PSAR
plot(psar, title="PSAR", color = low < psar and not long ? green : red, trackprice=true)

//Barcolor
barcolor(close > psar and close > ema + offset and fastema > ema ? green : na)
barcolor(close > psar and close < ema + offset or close > psar and fastema < ema ? white : na)
barcolor(close < psar and close < ema - offset and fastema < ema and close? red : na)
barcolor(close < psar and close > ema - offset or close < psar and fastema > ema ? white : na)

//Plot EMA
plot(ema, color=blue, linewidth=1, transp=0, title="Slow EMA")
plot(fastema, color=purple, linewidth=1, transp=0, title="Fast EMA")


if(high > psar)
    strategy.close("Short")
    
if(low < psar)
    strategy.close("Long")
    
if(long and time_cond)
    strategy.entry("Long", strategy.long, comment="Long")
   
if(short and time_cond)
    strategy.entry("Short", strategy.short, comment="Short")

if (not time_cond)
    strategy.close_all()