Esta estratégia é baseada no indicador SAR Parabólico e incorpora uma janela de tempo para backtesting para alcançar um efeito stop loss de rastreamento de impulso.
A estratégia usa o indicador Parabolic SAR (Parabolic Stop and Reverse) como o principal indicador técnico. Parabolic SAR pode fornecer sinais de reversão muito precisos. Quando o preço está em uma tendência de alta, o Parabolic SAR continuará se movendo para cima para rastrear a tendência de alta. Quando o preço começa a cair, o Parabolic SAR cairá rapidamente para fornecer sinais de stop loss.
A estratégia primeiro define três parâmetros do SAR Parabólico, incluindo o valor inicial, o valor de incremento e o valor máximo. Em seguida, calcula o valor do SAR Parabólico. A estratégia usa o SAR Parabólico como o ponto de stop loss dinâmico. Quando o preço sobe, ele fica muito acima do SAR Parabólico; quando o preço cai abaixo do SAR Parabólico, ele fecha a posição longa. Da mesma forma, quando o preço cai, ele fica curto abaixo do SAR Parabólico; quando o preço cai acima do SAR Parabólico, ele fecha a posição curta.
Desta forma, a estratégia pode rastrear a tendência quando o preço está em tendência e rapidamente parar a perda quando o preço se inverte, completando um ciclo de negociação.
A estratégia utiliza plenamente a função de stop loss eficiente do indicador Parabolic SAR para alcançar o efeito stop loss de rastreamento de momento. Em comparação com pontos de stop loss fixos, ele pode ajustar dinamicamente e automaticamente as tendências de rastreamento de stop loss, evitando posições interrompidas prematuramente. Enquanto isso, os riscos da estratégia não podem ser negligenciados e precisam de otimizações e aprimoramentos multidimensionais para um desempenho estável em diferentes mercados.
/*backtest start: 2023-09-26 00:00:00 end: 2023-10-26 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // === by @Aldovitch === // PSAR Strategy // Based on Parabolic SAR Strategy provided by TradingView // added a Time Window for Backtests // strategy("Parabolic SAR Strategy w/ Time Window", shorttitle="PSAR Strategy w/ TW", overlay=true) // === INPUT INDEXES PARAMETERS === start = input(0.02) increment = input(0.02) maximum = input(0.2) // === INPUT BACKTEST RANGE === 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 = 2018, title = "From Year", minval = 2016) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) ToYear = input(defval = 9999, title = "To Year", minval = 2017) // === CONTROL & APPEARENCE === timeStart = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window timeFinish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window // === FUNCTIONS === window() => true // create function "within window of time" // === COMPUTING INDEXES === psar = sar(start, increment, maximum) if (psar > high) strategy.entry("ParLE", strategy.long, stop=psar, comment="ParLE", when=window()) else strategy.cancel("ParLE") if (psar < low) strategy.entry("ParSE", strategy.short, stop=psar, comment="ParSE", when=window()) else strategy.cancel("ParSE") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)