A estratégia de stop loss parabólica de SAR é uma estratégia de negociação baseada no indicador de SAR parabólico. A estratégia é projetada para identificar o ponto de reversão da tendência e sair da posição em tempo hábil quando a tendência se inverte.
O indicador SAR parabólico é capaz de identificar a tendência dos preços e dar um potencial sinal de reversão. Quando o SAR atravessa a linha K, representa a passagem de uma cabeça para a cabeça vazia; Quando o SAR atravessa a linha K abaixo, representa a passagem de uma cabeça vazia para a cabeça vazia.
A estratégia baseia-se nesta característica do indicador Parabolic SAR, que identifica uma reversão de tendência quando o SAR atravessa a linha K e executa uma operação de plus ou de minus de acordo. Concretamente, a lógica da estratégia é a seguinte:
Calcule o valor do SAR parabólico.
Determine se há um sinal de reversão de tendência. Se o ponto SAR atravessar de cima para baixo da linha K, representando um sinal de cabeceira vazia, faça o vazio; Se o ponto SAR atravessar de baixo para cima da linha K, representando um sinal de cabeceira múltipla, faça mais.
Abrir uma posição quando a travessia ocorre e parar a posição quando ela atravessa a linha K novamente com o SAR invertido.
Utilize o indicador Parabolic SAR para identificar pontos de reversão de tendências e evitar operações de reversão de tendências.
A partir daí, os investidores podem começar a investir rapidamente em ações e capturar as mudanças de tendência.
Definir o ponto de parada do SAR para atravessar novamente a linha K, para que o SAR possa parar rapidamente e controlar os prejuízos em tempo hábil.
A estratégia é simples, clara e fácil de implementar.
O indicador de SAR parabólico pode gerar uma grande quantidade de falsos sinais, causando transações desnecessárias. Os parâmetros do SAR podem ser adequadamente ajustados, reduzindo a taxa de falsos sinais.
Em mercados de rápida reversão, é fácil ser enganado. Pode-se considerar o aumento de condições de filtragem para evitar períodos de forte volatilidade.
O ponto de parada muito próximo pode ser muito freqüente. A largura de parada pode ser adequadamente relaxada, dando ao preço um certo espaço de retorno.
Considerando que apenas um indicador é suscetível a restrições de um determinado mercado, pode-se considerar a adição de outros indicadores ou condições de filtragem para aumentar a adequação.
A estratégia de parada de parada parabólica do SAR utiliza a capacidade de identificação de tendências do indicador Parabolic SAR para mudar de direção rapidamente quando a tendência se inverte. A estratégia é simples, clara e fácil de entender.
/*backtest
start: 2023-08-16 00:00:00
end: 2023-09-15 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Parabolic SAR Strategy (on close) [QuantNomad]", shorttitle="SAR Strategy [QN]", overlay=true)
start = input(0.02)
increment = input(0.02)
maximum = input(0.2)
psar = 0.0 // PSAR
af = 0.0 // Acceleration Factor
trend_dir = 0 // Current direction of PSAR
ep = 0.0 // Extreme point
sar_long_to_short = trend_dir[1] == 1 and close <= psar[1] // PSAR switches from long to short
sar_short_to_long = trend_dir[1] == -1 and close >= psar[1] // PSAR switches from short to long
trend_change = barstate.isfirst[1] or sar_long_to_short or sar_short_to_long
// Calculate trend direction
trend_dir := barstate.isfirst[1] and close[1] > open[1] ? 1 :
barstate.isfirst[1] and close[1] <= open[1] ? -1 :
sar_long_to_short ? -1 :
sar_short_to_long ? 1 : nz(trend_dir[1])
// Calculate Acceleration Factor
af := trend_change ? start :
(trend_dir == 1 and high > ep[1]) or
(trend_dir == -1 and low < ep[1]) ?
min(maximum, af[1] + increment) :
af[1]
// Calculate extreme point
ep := trend_change and trend_dir == 1 ? high :
trend_change and trend_dir == -1 ? low :
trend_dir == 1 ? max(ep[1], high) :
min(ep[1], low)
// Calculate PSAR
psar := barstate.isfirst[1] and close[1] > open[1] ? low[1] :
barstate.isfirst[1] and close[1] <= open[1] ? high[1] :
trend_change ? ep[1] :
trend_dir == 1 ? psar[1] + af * (ep - psar[1]) : psar[1] - af * (psar[1] - ep)
plot(psar, style=plot.style_cross, color=trend_dir == 1 ? color.green : color.red, linewidth = 2)
// Strategy
strategy.entry("Long", true, when = sar_short_to_long)
strategy.entry("Short", false, when = sar_long_to_short)