Estratégia de negociação algorítmica de inversão de pivô simples

Autora:ChaoZhang, Data: 2024-01-17 15:37:33
Tags:

img

Resumo

Esta estratégia executa negociação de reversão com base em breakouts de ponto de pivô. Ele calcula a alta e baixa do pivô em um período especificado para determinar os níveis do pivô. Ele fica curto quando o preço ultrapassa a alta do pivô e fica longo quando o preço ultrapassa a baixa do pivô. Esta é uma estratégia típica de reversão média de curto prazo.

Estratégia lógica

A lógica central desta estratégia é calcular os pontos altos e baixos do pivô.

Pivot High = soma do máximo máximo durante as últimas barras N1 / N1

Pivot Low = Somatório da menor baixa dos últimos N2 bares / N2

Onde N1 e N2 são parâmetros que definem o número de barras utilizadas para calcular os pontos de pivô.

Após a obtenção dos níveis pivô alto/baixo, as regras de negociação são:

  1. Curto quando o preço ultrapassa o ponto mais alto
  2. Long quando o preço ultrapassa o ponto baixo do pivô
  3. Estabelecer o stop loss após a entrada

Por isso, realiza uma estratégia de reversão de curto prazo baseada em rupturas de pontos pivot.

Análise das vantagens

As vantagens desta estratégia simples são:

  1. Lógica simples, fácil de compreender e implementar
  2. Adequado para negociações de curto prazo de alta frequência
  3. Captura a reversão após rupturas de pivô
  4. Otimizável através de ajuste de parâmetros

Análise de riscos

Há alguns riscos:

  1. Risco de reversão fracassada - A reversão após a ruptura do pivô pode falhar e a tendência continuar
  2. Risco de stop loss - O stop loss pré-definido pode ser atingido, resultando em grandes perdas
  3. Risco de parâmetros - Parâmetros inadequados têm um impacto significativo nos resultados

Estes riscos podem ser geridos através do ajuste dos parâmetros, da aplicação de regras de saída, etc.

Orientações de otimização

Há muito espaço para otimização:

  1. Combinar com outros indicadores técnicos para melhorar o calendário de entrada
  2. Adicionar regras de saída como stop-loss de rastreamento, tomada de lucro, etc
  3. Ajuste dinâmico dos parâmetros para melhorar a adaptabilidade
  4. Optimização de parâmetros para encontrar as melhores combinações de parâmetros

Resumo

Em resumo, esta é uma estratégia de reversão de pivô de curto prazo muito simples. Suas vantagens são a simplicidade e a capacidade de capturar reversões. Mas há alguns riscos que precisam ser abordados através da otimização.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Pivot Reversal Strategy - FIGS & DATES 2.0", overlay=true, pyramiding=0, initial_capital=10000, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100.0, commission_value=0.075)

leftBars = input(4)
rightBars = input(2)

// backtesting date range
from_day = input(defval=1, title="From Day", minval=1, maxval=31)
from_month = input(defval=1, title="From Month", minval=1, maxval=12)
from_year = input(defval=2018, title="From Year", minval=1900)

to_day = input(defval=1, title="To Day", minval=1, maxval=31)
to_month = input(defval=1, title="To Month", minval=1, maxval=12)
to_year = input(defval=9999, title="To Year", minval=1900)

time_cond = true

swh = pivothigh(leftBars, rightBars)
swl = pivotlow(leftBars, rightBars)

middle = (swh+swl)/2

swh_cond = not na(swh)



hprice = 0.0
hprice := swh_cond ? swh : hprice[1]

le = false
le := swh_cond ? true : le[1] and high > hprice ? false : le[1]

if le and time_cond
    strategy.entry("LONG", strategy.long, comment="LONG", stop=hprice + syminfo.mintick)

swl_cond = not na(swl)

lprice = 0.0
lprice := swl_cond ? swl : lprice[1]


se = false
se := swl_cond ? true : se[1] and low < lprice ? false : se[1]

if se and time_cond
    strategy.entry("SHORT", strategy.short, comment="SHORT", stop=lprice - syminfo.mintick)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)


Mais.