Combinando vários indicadores técnicos


Data de criação: 2023-12-20 11:04:15 última modificação: 2023-12-20 11:04:15
cópia: 0 Cliques: 662
1
focar em
1621
Seguidores

Combinando vários indicadores técnicos

Visão geral

Esta estratégia usa uma combinação de vários indicadores técnicos para implementar uma estratégia de negociação de linha curta de todo o poder. A estratégia possui várias maneiras de negociação, como acompanhamento de tendências, negociação de ruptura e negociação de reversão, que pode ser adaptada à maioria dos cenários de mercado.

Princípio da estratégia

  1. A estratégia usa o indicador de canal de corpo de vela para determinar a direção e a força da tendência atual em combinação com os canais de preço máximo e mínimo.
  2. Em segundo lugar, o uso de um indicador comum da linha média da EMA para determinar a direção da tendência da linha média e longa. A combinação de dois indicadores da EMA para filtrar falsos sinais.
  3. Em seguida, a estratégia usa o indicador Hull MA para determinar se o preço atual está superando o supermercado. O indicador Hull MA tem a capacidade de determinar com mais precisão o ponto de inflexão.
  4. Finalmente, a estratégia usa a função de segurança para abrir ciclos mais altos para determinar a direção da tendência do ciclo maior e gerar sinais de negociação.

A combinação de várias estratégias acima permite que a estratégia capte as tendências do ciclo intermediário e determine a direção geral do movimento com base no ciclo longo, permitindo uma estratégia de negociação universal.

Análise de vantagens

A maior vantagem da estratégia é que a combinação de vários indicadores técnicos para a negociação de portfólio, pode ser realizada simultaneamente em várias maneiras de negociação, como acompanhamento de tendências, negociação de reversão e negociação de ruptura, é muito universal e adaptado à maioria dos cenários de mercado.

Os principais benefícios desta estratégia são:

  1. O indicador de canal de corpo de vela para determinar a ruptura da entidade pode ser usado para identificar efetivamente o sinal de ruptura.
  2. O uso de uma combinação dupla de EMA para filtrar falsos sinais aumenta a precisão do sinal.
  3. O Hull MA é usado para determinar áreas de sobrevenda e sobrecompra, com a capacidade de determinar pontos de inflexão com mais precisão.
  4. O uso de linhas de K de maior ciclo para gerar sinais de cruzamento de preços de abertura pode evitar ser desviado pelo ruído.
  5. A combinação de várias maneiras de negociar torna a estratégia mais versátil e universal.

Análise de Riscos

Embora a estratégia combine vários indicadores, a estratégia de negociação geral é possível. No entanto, há riscos associados à negociação, como os seguintes:

  1. A transação de ruptura pode ser manipulada por uma falsa ruptura, gerando um sinal errado.
  2. A inversão pode causar perdas em situações de turbulência.
  3. A capacidade de filtragem de combinação dupla EMA ainda é limitada e pode excluir o sinal normal.
    1. A precisão do indicador Hull MA para a adaptação da curva ainda é insuficiente.

Para os riscos acima mencionados, podemos otimizar em alguns aspectos:

  1. O uso de indicadores mais estáveis para auxiliar o julgamento, evitando falsas brechas.
  2. Aumentar as estratégias de stop loss e controlar as perdas individuais.
  3. Ajustar os parâmetros do EMA duplo para encontrar a melhor combinação.
  4. Tente integrar mais indicadores de sobrecompra e sobrevenda.

Direção de otimização

De acordo com a análise acima, a estratégia pode ser otimizada principalmente nas seguintes direções:

  1. O julgamento é auxiliado por uma combinação de indicadores mais convencionais e estáveis, como a linha de Karmann, a faixa de Bryn e outros.
  2. Aumentar as estratégias de stop loss e controlar rigorosamente as perdas individuais.
  3. Optimização de parâmetros para encontrar a melhor combinação de parâmetros.
  4. Aumentar o julgamento de modelos de aprendizagem de máquina, usando a IA para julgar as áreas de supercompra e supervenda.
  5. Aumentar a lógica de julgamento adaptável, adaptando a estratégia de acordo com a dinâmica de diferentes ambientes de mercado.

Resumir

Esta estratégia é uma estratégia de negociação de linha curta muito versátil e universal. A maior vantagem da estratégia é a ampla adaptabilidade, que pode ser usada na maioria dos ambientes de mercado, pertence a uma estratégia de pensamento mais comum.

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

//@version=2
//╭╮╱╱╭╮╭╮╱╱╭╮
//┃╰╮╭╯┃┃┃╱╱┃┃
//╰╮┃┃╭┻╯┣╮╭┫╰━┳╮╭┳━━╮
//╱┃╰╯┃╭╮┃┃┃┃╭╮┃┃┃┃━━┫
//╱╰╮╭┫╰╯┃╰╯┃╰╯┃╰╯┣━━┃
//╱╱╰╯╰━━┻━━┻━━┻━━┻━━╯
//╭━━━┳╮╱╱╱╱╱╱╱╭╮
//┃╭━╮┃┃╱╱╱╱╱╱╱┃┃
//┃┃╱╰┫╰━┳━━┳━╮╭━╮╭━━┫┃
//┃┃╱╭┫╭╮┃╭╮┃╭╮┫╭╮┫┃━┫┃
//┃╰━╯┃┃┃┃╭╮┃┃┃┃┃┃┃┃━┫╰╮
//╰━━━┻╯╰┻╯╰┻╯╰┻╯╰┻━━┻━╯
//━╯
// http://www.vdubus.co.uk/
strategy(title='Vdub FX SniperVX3 / Strategy  v3', shorttitle='Vdub_FX_SniperVX3_Strategy', overlay=true, pyramiding=0, initial_capital=1000, currency=currency.USD)

//Candle body resistance Channel-----------------------------//
len = 34
src = input(close, title="Candle body resistance Channel")
out = sma(src, len)
last8h = highest(close, 13)
lastl8 = lowest(close, 13)
bearish = cross(close,out) == 1 and falling(close, 1)
bullish = cross(close,out) == 1 and rising(close, 1)
channel2=input(false, title="Bar Channel On/Off")
ul2=plot(channel2?last8h:last8h==nz(last8h[1])?last8h:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level top", offset=0)
ll2=plot(channel2?lastl8:lastl8==nz(lastl8[1])?lastl8:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level bottom", offset=0)
//fill(ul2, ll2, color=black, transp=95, title="Candle body resistance Channel")

//-----------------Support and Resistance 
RST = input(title='Support / Resistance length:',  defval=10) 
RSTT = valuewhen(high >= highest(high, RST), high, 0)
RSTB = valuewhen(low <= lowest(low, RST), low, 0)
RT2 = plot(RSTT, color=RSTT != RSTT[1] ? na : red, linewidth=1, offset=+0)
RB2 = plot(RSTB, color=RSTB != RSTB[1] ? na : green, linewidth=1, offset=0)

//--------------------Trend colour ema------------------------------------------------// 
src0 = close, len0 = input(13, minval=1, title="EMA 1")
ema0 = ema(src0, len0)
direction = rising(ema0, 2) ? +1 : falling(ema0, 2) ? -1 : 0
plot_color = direction > 0  ? lime: direction < 0 ? red : na
plot(ema0, title="EMA", style=line, linewidth=1, color = plot_color)

//-------------------- ema 2------------------------------------------------//
src02 = close, len02 = input(21, minval=1, title="EMA 2")
ema02 = ema(src02, len02)
direction2 = rising(ema02, 2) ? +1 : falling(ema02, 2) ? -1 : 0
plot_color2 = direction2 > 0  ? lime: direction2 < 0 ? red : na
plot(ema02, title="EMA Signal 2", style=line, linewidth=1, color = plot_color2)

//=============Hull MA//
show_hma = input(false, title="Display Hull MA Set:")
hma_src = input(close, title="Hull MA's Source:")
hma_base_length = input(8, minval=1, title="Hull MA's Base Length:")
hma_length_scalar = input(5, minval=0, title="Hull MA's Length Scalar:")
hullma(src, length)=>wma(2*wma(src, length/2)-wma(src, length), round(sqrt(length)))
plot(not show_hma ? na : hullma(hma_src, hma_base_length+hma_length_scalar*6), color=black, linewidth=2, title="Hull MA")

//============ signal Generator ==================================//
Piriod=input('720')
ch1 = request.security(syminfo.tickerid, Piriod, open)
ch2 = request.security(syminfo.tickerid, Piriod, close)
longCondition = crossover(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (longCondition)
    strategy.entry("BUY", strategy.long)
shortCondition = crossunder(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (shortCondition)
    strategy.entry("SELL", strategy.short)

///////////////////////////////////////////////////////////////////////////////////////////