Estratégia de negociação quantitativa OBV baseada no indicador MACD

Autora:ChaoZhang, Data: 2024-01-17 18:01:36
Tags:

img

Resumo

Esta estratégia gera sinais de negociação calculando o indicador MACD do indicador OBV para determinar a tendência e os pontos de inflexão do momento do OBV. A ideia central é gerar sinais de compra quando o histograma OBV MACD atravessa o eixo 0 da região negativa para a região positiva e gerar sinais de venda quando atravessa o eixo 0 da região positiva para a região negativa.

Princípio da estratégia

O indicador MACD pode refletir a tendência de momentum de um estoque, analisando estatisticamente a relação entre as direções de mudança dos preços de fechamento e os volumes de negociação ao longo de um período de tempo para determinar se o impulso ascendente está fortalecendo ou enfraquecendo. O indicador MACD mostra a diferença entre diferentes médias móveis para refletir o impulso das mudanças de preço.

Especificamente, esta estratégia primeiro calcula o indicador OBV, que calcula a linha de momento OBV analisando estatisticamente a relação entre as direções de mudança dos preços de fechamento e os volumes de negociação ao longo de um período de tempo. Em seguida, com base na linha de momento OBV, seu indicador MACD é calculado, incluindo a linha MACD, linha de sinal e histograma. Finalmente, quando o histograma macd atravessa o eixo 0 da região negativa para a região positiva, um sinal de compra é gerado; quando o histograma atravessa o eixo 0 da região positiva para a região negativa, um sinal de venda é gerado.

Com este meio, o MACD exibe intuitivamente as características de impulso do volume OBV e julga a tendência das mudanças de volume.

Análise das vantagens

Esta estratégia combina análise de volume OBV e indicadores de momento MACD para julgamentos relativamente precisos sobre as alterações de volume e tendência de preços, que podem filtrar efetivamente sinais FALSOS.

  1. O indicador OBV pode determinar o contraste de força entre compradores e vendedores e a tendência das mudanças de volume
  2. O histograma MACD pode identificar claramente os pontos de inflexão do momento OBV
  3. Os sinais de negociação são claros e menos propensos a errar no julgamento
  4. Há mais parâmetros de negociação configuráveis e as regras de negociação são claras

Análise de riscos

A estratégia apresenta também alguns riscos, principalmente nos seguintes aspectos:

  1. Tanto o OBV como o MACD são sensíveis ao volume de negociação.
  2. Configurações incorretas de parâmetros também podem afetar o desempenho da estratégia
  3. Ao alternar entre longo e curto, as alterações de volume do OBV podem atrasar, resultando em sinais de negociação atrasados

Para fazer face a estes riscos, podem ser tomadas as seguintes medidas:

  1. Filtrar dados anormais através da triagem dos volumes de negociação
  2. Estabelecer os parâmetros com prudência e ter em conta as condições do mercado
  3. Ajustar adequadamente as definições dos parâmetros, como os ciclos MACD, para gerar sinais de negociação oportunos

Orientações de otimização

Ainda há espaço para uma maior otimização desta estratégia, principalmente nos seguintes domínios:

  1. Combinar com outros indicadores de negociação de carteiras para melhorar o desempenho da estratégia
  2. Adicionar mecanismos de stop-loss ao controlo dos riscos
  3. Otimizar as definições dos parâmetros para satisfazer as necessidades dos diferentes ambientes de mercado

Através de testes e otimização contínuos, esta estratégia pode tornar-se uma estratégia comercial quantitativa estável e eficiente.

Resumo

Esta estratégia é uma estratégia quantitativa típica que combina análise de volume e indicadores de impulso para determinar tendências de preços e gerar sinais de negociação. Ela pode identificar claramente os pontos de inflexão das flutuações de preços e os sinais de negociação são relativamente confiáveis. Com configurações razoáveis de parâmetros, bons resultados de estratégia podem ser obtidos. Mas também tem alguns riscos que precisam ser reduzidos por otimização contínua para melhorar o desempenho. Em geral, esta estratégia fornece uma idéia típica para estratégias de negociação quantitativas que vale a pena pesquisar e aplicar.


/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy(title = "MACD of OBV", overlay = false)

//////////////////////// OBV ///////////////////////////

src = close
obv = cum(change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume)


//////////////////////// OBV   //////////////////////////

//////////////// MACD OF OBV ////////////////////////////

sourcemacd = obv 

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)


fastMA = ema(sourcemacd, fastLength)
slowMA = ema(sourcemacd, slowLength)

macd = fastMA - slowMA
signal = ema(macd, signalLength)
delta=macd-signal

swap1 = delta>0?green:red

plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20)
p1 = plot(macd,color=blue,title='MACD Line')
p2 = plot(signal,color=red,title='Signal')
fill(p1, p2, color=blue)
hline(0)




/////////////////////////MACD OF OBV //////////////////////////


// Conditions



longCond = na
sellCond = na
longCond :=  crossover(delta,0)
sellCond :=  crossunder(delta,0)




monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  longCond ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( sellCond  ) 

    strategy.close("BUY")







Mais.