Estratégia de negociação combinada de reversão de média móvel dupla e flash de fundo triplo


Data de criação: 2023-10-26 16:26:24 última modificação: 2023-10-26 16:26:24
cópia: 3 Cliques: 724
1
focar em
1702
Seguidores

Estratégia de negociação combinada de reversão de média móvel dupla e flash de fundo triplo

Visão geral

Esta estratégia de negociação aproveita as vantagens da inversão da linha de equilíbrio e dos dois indicadores técnicos de flashes mínimos de três dias, fazendo uso de combinações, capturando oportunidades de reversão em tempo hábil enquanto segue a tendência e filtrando alguns falsos sinais de ruptura, o que pode aumentar efetivamente a taxa de vitória do sistema de negociação.

Princípio da estratégia

A estratégia consiste em duas partes:

  1. A combinação da linha média de 2 dias e da linha média de 20 dias. Quando a linha média de 2 dias e a linha média de 20 dias se desviam, um sinal de compra e venda é emitido.

  2. O mínimo de três dias é um sinal de reversão de curto prazo. A condição para a formação é: o mínimo do dia intermediário é menor do que o do dia anterior e do dia seguinte, e o preço de fechamento do dia seguinte é maior do que o máximo do dia anterior.

Quando a linha média de 2 dias e a linha média de 20 dias exibem simultaneamente um sinal de inversão e coincidem com a direção do sinal da forma de flash mínima de três dias, é adotada uma operação de compra ou venda.

No código, primeiro calculamos a linha média de 2 dias e a linha média de 20 dias. Quando a linha média de 2 dias atravessa ou atravessa a linha média de 20 dias, gera um sinal de compra/venda.

Em seguida, quando detecta a forma de flash mínima de três dias, configure o sinal de direção da forma em 1 ou -1. Leia o sinal de forma do dia anterior, combine-o com o sinal de linha média atual e produza o sinal de entrada final.

Assim, através da filtragem de combinações de linhas e formas, é possível filtrar alguns sinais falsos, tornando a estratégia de negociação mais confiável.

Vantagens estratégicas

  1. A combinação de vários indicadores técnicos pode desempenhar um papel complementar e de verificação, aumentando a confiabilidade do sinal.

  2. A inversão da linha média pode capturar o ponto de reversão da tendência em tempo hábil, aproveitando a oportunidade de reversão. O flash mínimo de três dias pode confirmar ainda mais a formação da reversão.

  3. A linha média de 20 dias segue tendências de médio e longo prazo, e a linha média de 2 dias é usada para capturar o momento de entrada após o ajuste de curto prazo. A combinação de vários intervalos de tempo permite uma compreensão completa da tendência.

  4. A estratégia não é sensível a parâmetros e é fácil de implementar e otimizar.

Risco estratégico

  1. A forma invertida é propensa a erros de julgamento, e a experiência acumulada é necessária para avaliar sua confiabilidade.

  2. O sinal de retorno pode ser atrasado, e é necessário observar as características da forma e ajustar adequadamente a posição.

  3. A variedade de negociação precisa ser testada e otimizada, e algumas configurações de parâmetros de variedades podem precisar de ajustes.

  4. O controle de retirada requer a introdução de um mecanismo de parada de prejuízos para evitar a perda de pontos de inflexão importantes.

Otimização de Estratégia

  1. Teste diferentes combinações de equilíbrio e escolha o melhor parâmetro de equilíbrio para a variedade.

  2. Introduzir outros indicadores auxiliares, como volume de transação, faixa de Brin, etc., para verificação de vários indicadores.

  3. Adição de módulos de stop loss para controlar a retirada e o risco.

  4. Otimizar o tempo de entrada para evitar problemas de entrada prematura ou tardia.

  5. Optimização de parâmetros para uma variedade específica, aumentando a adaptabilidade.

Resumir

A estratégia aproveita as vantagens da inversão de equilíbrio e da forma curta para realizar uma combinação eficaz das duas, o que pode melhorar a estabilidade e a taxa de vitória do sistema de negociação. Mas é necessário prestar atenção ao controle de risco e testar e otimizar os parâmetros para se adaptar às características das diferentes variedades.

Código-fonte da estratégia
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/12/2021
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This indicator plots 2/20 exponential moving average. For the Mov 
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// Second strategy
// This startegy based on 3-day pattern reversal described in "Are Three-Bar 
// Patterns Reliable For Stocks" article by Thomas Bulkowski, presented in 
// January,2000 issue of Stocks&Commodities magazine.
// That pattern conforms to the following rules:
// - It uses daily prices, not intraday or weekly prices;
// - The middle day of the three-day pattern has the lowest low of the three days, with no ties allowed;
// - The last day must have a close above the prior day's high, with no ties allowed;
// - Each day must have a nonzero trading range. 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
EMA20(Length ) =>
    pos = 0.0
    xPrice = close
    xXA = ema(xPrice, Length)
    nHH = max(high, high[1])
    nLL = min(low, low[1])
    nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
    pos := iff(nXS > close[1] , -1, iff(nXS < close[1] , 1, nz(pos[1], 0))) 
	pos

BarR()=>
    pos = 0.0
    pos :=	iff(open[2] > close[2] and high[1] < high[2] and low[1] < low[2] and low[0] > low[1] and high[0] > high[1], 1,
    	     iff(open[2] < close[2] and high[1] > high[2] and low[1] > low[2] and high[0] < high[1] and low[0] < low[1], -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo 2/20 EMA & 3 Day Pattern", shorttitle="Combo", overlay = true)
var I1  = "●═════ 2/20 EMA ═════●"
Length = input(14, minval=1, group = I1)
//var I2  = "●═════ 3-Bar-Reversal-Pattern ═════●"
var misc  = "●═════ MISC ═════●"
reverse = input(false, title="Trade reverse", group = misc)
var timePeriodHeader  = "●═════ Time Start ═════●"
d = input(1, title="From Day", minval=1, maxval=31, group=timePeriodHeader)
m = input(1, title="From Month", minval=1, maxval=12, group=timePeriodHeader)
y = input(2005, title="From Year", minval=0, group=timePeriodHeader)

StartTrade = true
prePos3Bar = BarR()

posEMA20 = EMA20(Length)
pos3BarR = security(syminfo.tickerid, "D", prePos3Bar[1], barmerge.gaps_off, barmerge.lookahead_on)
pos = iff(posEMA20 == 1 and pos3BarR == 1 and StartTrade , 1,
	   iff(posEMA20 == -1 and pos3BarR == -1 and StartTrade, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1 ) 
    strategy.entry("Long", strategy.long)
if (possig == -1 )
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )