Estratégias de negociação baseadas nos indicadores RSI e MACD


Data de criação: 2024-01-31 16:07:31 última modificação: 2024-01-31 16:07:31
cópia: 0 Cliques: 919
1
focar em
1617
Seguidores

Estratégias de negociação baseadas nos indicadores RSI e MACD

Visão geral

Esta estratégia combina o índice de força relativa (RSI) e o indicador de concentração de média móvel (MACD) para identificar oportunidades de negociação de BTC. Fazer mais quando o RSI é inferior a 30 e a linha MACD é inferior à linha de sinal e o Histograma MACD é menor que 100; Fazer zero quando o RSI é superior a 80 e a linha MACD é superior à linha de sinal e o Histograma MACD é maior que 250.

Princípio da estratégia

  1. O RSI é usado para determinar se o mercado está sobrevendendo ou sobrecomprando. O RSI abaixo de 30 é considerado um sinal de sobrevenda, e acima de 80 é considerado um sinal de sobrecompra.

  2. O indicador MACD de linha MACD e a linha de sinal do forquilho de ouro para determinar o momento de compra e venda. Quando a linha MACD atravessa a linha de sinal, é um sinal de compra; Quando a linha MACD atravessa a linha de sinal abaixo, é um sinal de venda.

  3. A combinação dos sinais do RSI e do MACD forma a condição de entrada para a estratégia.

  4. O uso de tracking stop-loss para bloquear os lucros, tracking stop-loss de acordo com a posse ou perda de actualização em tempo real, pode controlar eficazmente o risco.

Análise de vantagens

  1. A estratégia combina dois indicadores, o RSI e o MACD, para filtrar eficazmente os falsos sinais.

  2. O indicador RSI pode avaliar com eficácia o fenômeno de sobrecompra e sobrevenda no mercado. O indicador MACD pode capturar mudanças na tendência.

  3. O uso do tracking stop pode ser usado para travar perdas de acordo com o comportamento do mercado em tempo real, maximizar o bloqueio de lucros e controlar o risco.

  4. A estratégia tem menos parâmetros e é mais fácil de implementar.

Análise de Riscos

  1. A estratégia de uma única variedade, o risco sistemático da própria variedade.

  2. O indicador RSI pode produzir um falso sinal quando o mercado intermédio e a base se recuperam. O indicador MACD também pode produzir um falso sinal em situações de choque.

  3. O tracking stop loss pode ser ultrapassado em situações de alta volatilidade, sem controle sobre o risco.

  4. A configuração incorreta dos parâmetros pode levar a transações frequentes ou a fugas de formulários.

Direção de otimização

  1. Pode-se considerar a combinação de outros indicadores como linhas de Brin, KD e outros para emitir sinais de negociação.

  2. O estudo da correlação entre as diferentes variedades permite a criação de estratégias de arbitragem multivariada.

  3. Otimizar as estratégias de parada de perdas, como a parada no tempo, a parada média, etc.

  4. Os parâmetros de otimização inteligente podem ser combinados com métodos como o aprendizado de máquina.

Resumir

Esta estratégia é um conjunto de estratégias de acompanhamento de tendências baseadas em indicadores RSI e MACD para determinar o excesso de compra e venda. Combina eficazmente os benefícios dos indicadores técnicos para capturar as mudanças de tendência do mercado.

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

//@version=5
strategy("BTC/USDT RSI and MACD Strategy", overlay = true)

// Define the RSI period
rsiPeriod = input(14, "RSI Period")

// Calculate the RSI
rsi = ta.rsi(close, rsiPeriod)

// Define the MACD parameters
macdShort = input(12, "MACD Short Period")
macdLong = input(26, "MACD Long Period")
macdSignal = input(9, "MACD Signal Period")

// Calculate the MACD
[macdLine, signalLine, _] = ta.macd(close, macdShort, macdLong, macdSignal)

// Define the trailing stop level
trailing_stop_loss_factor = input.float(2.50, "Trailing Stop Loss Factor", step = 0.01)

// Define the entry and exit conditions
enterLong = ta.crossover(rsi, 30) and macdLine < signalLine and macdLine < -100
enterShort = ta.crossunder(rsi, 83) and macdLine > signalLine and macdLine > 250

// Submit the orders
if (enterLong)
    strategy.entry("Long", strategy.long)
if (enterShort)
    strategy.entry("Short", strategy.short)

// Trailing Stop Loss
longTrailingStopLoss = strategy.position_avg_price * (1 - trailing_stop_loss_factor / 100)
shortTrailingStopLoss = strategy.position_avg_price * (1 + trailing_stop_loss_factor / 100)
if strategy.position_size > 0 
    strategy.exit("Exit Long", "Long", stop  = longTrailingStopLoss)
if strategy.position_size < 0 
    strategy.exit("Exit Short", "Short", stop = shortTrailingStopLoss)

// Plot the indicators
plot(rsi, "RSI", color=color.blue)
hline(20, "RSI Lower Level", color=color.green)
hline(80, "RSI Upper Level", color=color.red)
plot(macdLine - signalLine, "MACD Histogram", color=color.red, style=plot.style_histogram)
hline(0, "Zero", color=color.gray)