
Esta estratégia é um sistema de negociação de reversão de tendência baseado em indicadores técnicos múltiplos, combinando indicadores ZigZag, fractals e SAR parabólico. A estratégia funciona principalmente através da combinação de três indicadores para capturar oportunidades de negociação quando a tendência do mercado muda e controlar o risco através de condições rigorosas de entrada e saída.
O princípio central do funcionamento da estratégia é a confirmação de sinais de negociação através de um mecanismo de verificação tripla:
As condições de transação para a verificação múltipla são as seguintes:
A estratégia utiliza vários indicadores técnicos para construir um sistema de negociação de reversão de tendência relativamente completo. A principal vantagem da estratégia é a alta confiabilidade do sinal e o controle perfeito do risco, mas também é necessário prestar atenção ao risco de falso sinal em mercados turbulentos. A direção de otimização proposta, especialmente o ajuste de parâmetros dinâmicos e a filtragem do ambiente de mercado, pode melhorar ainda mais a estabilidade e a rentabilidade da estratégia.
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("ZigZag + Fractals + SAR Crossover Stratégiia", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Parametre ZigZag
zigzag_depth = input.int(5, title="ZigZag Hĺbka")
zigzag_deviation = input.float(5.0, title="ZigZag Odchýlka (%)") / 100
// Výpočet ZigZag
var float last_pivot = na
var bool is_uptrend = false // Inicializované na false
zigzag_high = ta.pivothigh(high, zigzag_depth, zigzag_depth)
zigzag_low = ta.pivotlow(low, zigzag_depth, zigzag_depth)
if not na(zigzag_high)
last_pivot := zigzag_high
is_uptrend := false
if not na(zigzag_low)
last_pivot := zigzag_low
is_uptrend := true
// Fraktály
fractal_up = ta.pivothigh(high, 2, 2)
fractal_down = ta.pivotlow(low, 2, 2)
// Parabolic SAR
sar = ta.sar(0.02, 0.2, 0.02)
// Prechody Parabolic SAR a Cena
sar_cross_up = ta.crossover(sar, close) // SAR prechádza nad cenu
sar_cross_down = ta.crossunder(sar, close) // SAR prechádza pod cenu
// Obchodné podmienky založené na prechodoch
long_condition = sar_cross_down and is_uptrend and not na(fractal_down)
short_condition = sar_cross_up and not is_uptrend and not na(fractal_up)
// Vstupy do pozícií
if (long_condition)
strategy.entry("Long", strategy.long)
if (short_condition)
strategy.entry("Short", strategy.short)
// Výstupy z pozícií založené na prechodoch
if (sar_cross_up)
strategy.close("Long")
if (sar_cross_down)
strategy.close("Short")
// Vizualizácia indikátorov
plotshape(series=fractal_up, location=location.abovebar, color=color.red, style=shape.triangledown, title="Fraktál Hore")
plotshape(series=fractal_down, location=location.belowbar, color=color.green, style=shape.triangleup, title="Fraktál Dole")
plot(sar, style=plot.style_cross, color=color.blue, title="Parabolic SAR")
// Vizualizácia ZigZag
plot(is_uptrend ? last_pivot : na, title="ZigZag Low", color=color.green, linewidth=2, style=plot.style_linebr)
plot(not is_uptrend ? last_pivot : na, title="ZigZag High", color=color.red, linewidth=2, style=plot.style_linebr)