Estratégia de histograma MACD


Data de criação: 2023-12-25 11:45:10 última modificação: 2023-12-25 11:45:10
cópia: 0 Cliques: 832
1
focar em
1623
Seguidores

Estratégia de histograma MACD

Visão geral

A estratégia baseia-se na geração de sinais de negociação do MACD com o indicador RSI. Combina as características do indicador RSI para determinar o excesso de compra e venda do mercado, bem como a vantagem do MACD para determinar a tendência do mercado e a mudança de dinâmica, projetando uma estratégia para fornecer sinais de negociação com o uso integrado de vários indicadores.

Princípio da estratégia

A estratégia primeiro calcula o RSI e, em seguida, calcula o MACD com base no RSI. O RSI é capaz de julgar a sobrevenda do mercado e o MACD é capaz de capturar as mudanças de tendência e dinâmica do mercado.

Especificamente, a estratégia primeiro calcula o indicador RSI de 14 períodos. Em seguida, com base no indicador RSI, calcula o indicador MACD, incluindo a linha média do EMA de 12 e 26 períodos, e a linha de sinal de 9 períodos.

Quando o MACD atravessa o eixo 0 no gráfico de colunas, gera um sinal de compra; Quando o MACD atravessa o eixo 0 no gráfico de colunas, gera um sinal de venda. Assim, a utilização do RSI para determinar o mercado de sobrecompra e sobrevenda, ao mesmo tempo, a utilização do MACD para determinar a tendência do mercado e a mudança de dinâmica, para a geração de sinais de negociação.

Vantagens estratégicas

Esta estratégia combina os benefícios dos dois indicadores RSI e MACD, permitindo um julgamento mais abrangente do estado do mercado e um sinal mais confiável.

  1. O uso do RSI para avaliar o estado de sobrecompra e sobrevenda ajuda a escolher ações e a evitar falsas rupturas.

  2. Os indicadores MACD são mais claros para avaliar tendências e mudanças de dinâmica.

  3. O RSI, combinado com o MACD, pode filtrar falsos sinais.

Risco estratégico

  1. As configurações dos parâmetros do RSI e do MACD afetam o desempenho da estratégia e requerem ajustes de otimização.

  2. A combinação de vários indicadores aumenta a complexidade da estratégia e a probabilidade de erros.

  3. Os sinais de negociação do MACD podem estar atrasados e precisam ser avaliados em conjunto com outros indicadores.

Otimização de Estratégia

  1. Optimizar os parâmetros do RSI e do MACD para encontrar a melhor combinação de parâmetros.

  2. Adicionar outros indicadores de julgamento, como KDJ, Brinband, etc., para formar um grupo de indicadores e melhorar a precisão do sinal.

  3. Acompanhe a estratégia de stop loss para controlar a perda individual.

  4. Otimizar a lógica de abertura e paz de estoque para evitar sinais de conflito.

Resumir

A estratégia utiliza o RSI e o MACD para formar um sinal de negociação. A estratégia leva em consideração a tendência e os fatores dinâmicos para determinar a tendência de sobrevenda e a tendência de sobrevenda. A estratégia pode ser efetivamente filtrada.

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

//@version=3

strategy(title = "MACD of RSI", overlay = false)
//////////////////////// RSI ///////////////////////////

src = close, len = input(14, minval=1, title="Length")

up = sma(max(change(src), 0), len)

down = sma(-min(change(src), 0), len)

rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

//////////////////////// RSI   //////////////////////////

//////////////// MACD  ////////////////////////////

sourcemacd = rsi

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  //////////////////////////

// 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")