Estratégia de fuga da banda ARGO


Data de criação: 2023-10-07 16:04:16 última modificação: 2023-10-07 16:04:16
cópia: 2 Cliques: 712
1
focar em
1617
Seguidores

Visão geral

A estratégia de ruptura de bandas ARGO é uma estratégia de negociação de bandas de 4 horas baseada em rupturas de canal. A estratégia combina o canal de Brin e o princípio da ruptura, formando sinais de negociação em um período de 4 horas para capturar grandes flutuações de preços.

Princípio da estratégia

A estratégia começa com o cálculo da amplitude de formação de canais dos preços mais altos e mais baixos de um determinado período. Em seguida, calcula-se a linha central do canal e a linha de Brolin para cima e para baixo do canal. Quando a direção do canal muda, formam-se sinais de compra e venda.

Especificamente, a estratégia primeiro calcula o preço máximo upBound e o preço mínimo downBound em N ciclos (default 47 ciclos), formando a fronteira superior e inferior do canal. Em seguida, define um ponto de desvio (default 1) e tolerância (default 1000) e calcula o limite superior do canal BoundUp e limite inferior do canal BoundDown.

Além disso, a estratégia também estabelece um limite de perda. Comprar um limite de perda perto do trilho inferior e vender um limite de perda perto do trilho superior. O limite de perda é definido como o percentual de lucro e prejuízo do alvo de entrada.

Análise de vantagens

  • Utilizando o princípio do canal de Brin, o alcance do canal pode ser ajustado de acordo com a volatilidade do mercado, evitando a influência de negociações ruidosas
  • Operação em ciclo de 4 horas, para capturar as maiores flutuações de preços, com grande margem de lucro
  • Combinação de estratégias de ruptura para formar sinais de negociação em pontos de mudança de tendência e capturar salto de preço em tempo hábil
  • Estabelecer um stop loss para controlar o risco/benefício de cada transação

Riscos e soluções

  • A transação no Corredor de Brin é vulnerável a falsas brechas e riscos de prisão
  • Operações de grande ciclo, com risco de expansão de perdas
  • A configuração de stop-tracking não é razoável e pode gerar perdas maiores do que as suportáveis.
  • Solução:
    • Parâmetros de passagem razoavelmente definidos para evitar falsas brechas
    • Determine cuidadosamente as posições e os pontos de parada
    • Optimizar a estratégia de stop loss e controlar rigorosamente o risco de cada transação

Direção de otimização

  • Optimizar os parâmetros do canal de Brin para que o canal esteja mais próximo das flutuações do mercado
  • Otimização da estratégia de stop loss e ajuste dinâmico da relação risco/benefício
  • Aumentar as condições de filtragem de transações para evitar que os investidores se encaixem e alcancem altos
  • Aumentar o julgamento por múltiplos fatores para evitar falhas de sinalização de invasões falsas
  • Melhorar a precisão da tomada de decisão, combinada com indicadores de tendências e de volatilidade
  • Optimizar estratégias de gestão de fundos e ajustar posições de acordo com as diferentes condições de mercado

Resumir

A estratégia de ruptura do segmento ARGO é uma estratégia de negociação de linha média longa de 4 horas que utiliza o canal de Brin e o princípio da ruptura. Em comparação com a negociação de linha curta, a estratégia prioriza mais a captura de pontos de inflexão da tendência de linha média longa de preços.

Código-fonte da estratégia
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-06 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2

// strategy("ARGO_BAND-STRATEGY", overlay=true,default_qty_value=10000,scale=true,initial_capital=100,currency=currency.USD)

// A 4hours Breakout Strategy work in progres..it's  a starting point, thanks to all tradingview community
//How to use: test it only on gbpjpy 240 min, wait the end of the candle to place next order, red and blue dots are short and long stop orders, Targets are Upper and lowerBands. Test it and enjoy but use at your own risk..
//2016 © F.Peluso


risk=input(title="Risk", defval=1)
length = input(title="Length",  minval=1, maxval=1000, defval=47)
stopBound=input(title="Previous",defval=10)
upBound = highest(high, length)
downBound = lowest(low, length)
point=1
tol=1000
stopT=input(title="Stop", defval=5,minval=1, maxval=5)
dev =input(title="Tolerance",defval=2,minval=1, maxval=5)
limitBoundUp=( highest(high, length))*(point-(dev/tol))
limitBoundDown=downBound/(point-(dev/tol))
plot(limitBoundUp[1],linewidth = 3,style = circles, color = navy,trackprice=true),transp=0
plot(limitBoundDown[1],linewidth = 3,style = circles, color = red,trackprice=true,transp=0)
mezzalinea=((upBound+downBound)/2)

// Color Bands

colo = ((close>limitBoundUp[1]) ? blue : (close<upBound[1]) ? white : na)
UpB = plot(upBound[1], title="Upper Bound", style=linebr, linewidth=1, color=colo)
DownB = plot(limitBoundUp[1] ,title="Lower Bound", style=linebr, linewidth=2, color=colo)
fill(UpB, DownB, color=colo, transp=90)

plot(limitBoundUp[2]/(point+(stopT/tol)),color=colo)

coloS = ((close<limitBoundDown[1]) ? red : (close>downBound[1]) ? white : na)
DB = plot(downBound[1], title="Upper Bound", style=linebr, linewidth=1, color=coloS)
DoB = plot(limitBoundDown[1] ,title="Lower Bound", style=linebr, linewidth=2, color=coloS)
fill(DB, DoB, color=coloS, transp=90)

plot(limitBoundDown[2]*(point+(stopT/tol)),color=coloS)

// Strategy

past=input(title="Past", defval=5)
buy=(crossover(close,limitBoundUp))
closebuy=cross(high[past],upBound[0])
stopbuy = limitBoundUp[2]/(point+(stopT/tol))

sell=crossunder(close,limitBoundDown)
closesell=cross(low[past],downBound[0])


if (not na(close[length]))
    if (buy)
        strategy.entry("ChBrkLE", strategy.long,stop=limitBoundUp - syminfo.mintick,comment="Long I")   

strategy.close("ChBrkLE",when=closebuy)

if (not na(close[length]))
    if (sell)
        strategy.entry("ChBrkSE", strategy.short,stop=limitBoundDown + syminfo.mintick,comment="Short I")   

strategy.close("ChBrkSE",when=closesell)

Target =input(0) * 10 
Stop = input(90) * 10 
Trailing = input(40) * 10
CQ = 100
TPP = (Target > 0) ? Target : na
SLP = (Stop > 0) ? Stop : na
TSP = (Trailing > 0) ? Trailing : na
strategy.exit("Out Short", "ChBrkSE", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Out Long", "ChBrkLE", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)