Tendência de Momentum Seguindo Estratégia de Negociação de Dupla Confirmação MACD-RSI

MACD RSI TS MA DUAL
Data de criação: 2024-12-12 16:16:54 última modificação: 2024-12-12 16:16:54
cópia: 0 Cliques: 353
1
focar em
1617
Seguidores

Tendência de Momentum Seguindo Estratégia de Negociação de Dupla Confirmação MACD-RSI

Visão geral

A estratégia é um sistema de negociação de seguimento de tendências que combina MACD e RSI, dois indicadores técnicos. Capta as mudanças na tendência dos preços através do MACD e, ao mesmo tempo, usa o indicador RSI para confirmar o excesso de compra e venda, permitindo a verificação de sinais duplos. A estratégia usa o gerenciamento de fundos fixos para controlar a posição e possui um mecanismo de parada móvel para proteger os lucros.

Princípio da estratégia

A lógica central da estratégia é baseada nos seguintes elementos-chave:

  1. O sistema de sinais MACD usa um período mais curto de configuração ((6,13,5), aumentando a sensibilidade à reação do mercado. Quando o MACD atravessa a linha de sinal, indica que pode haver uma tendência ascendente.
  2. O indicador RSI serve como uma ferramenta de confirmação auxiliar, definindo 30 como um limiar de oversold. O indicador RSI apenas dispara um sinal de compra quando o RSI é maior ou igual a 30, evitando a negociação frequente em áreas de oversold.
  3. A estratégia de gerenciamento de fundos usa um montante fixo, com 110 moedas de cotação investidas em cada transação, com base no número de posições calculadas com base na dinâmica de preços atual.
  4. O mecanismo móvel de stop loss, configurado para uma distância de rastreamento de 2%, permite o bloqueio efetivo dos ganhos e o controle do risco de retirada.

Vantagens estratégicas

  1. O mecanismo de confirmação de indicadores de dupla tecnologia aumenta a confiabilidade dos sinais de negociação e reduz a interferência de sinais falsos.
  2. A utilização de um MACD com um ciclo mais curto aumenta a sensibilidade e a rapidez de resposta da estratégia às mudanças no mercado.
  3. O método de negociação de valor fixo simplifica a gestão de fundos, facilitando o controle de riscos e a estatística de receitas.
  4. O mecanismo de parada móvel é capaz de ajustar automaticamente a posição de parada, dando ao preço espaço suficiente para oscilação, enquanto protege o lucro.
  5. A lógica da estratégia é clara e simples, fácil de entender e manter, e tem boa escalabilidade.

Risco estratégico

  1. A configuração de ciclo curto do MACD pode causar excesso de sinais de negociação em mercados turbulentos, aumentando os custos de negociação.
  2. O RSI ultrapassou o limiar de venda em 30 e pode ter perdido algumas oportunidades importantes de iniciar a tendência.
  3. O método de negociação de valor fixo pode não permitir o uso total dos fundos da conta e afetar a taxa de retorno geral.
  4. A distância de stop loss móvel de 2% pode ser muito próxima em mercados de alta volatilidade e pode ser facilmente abalada.
  5. A estratégia só apoia o multi-trading e não pode ser lucrativa em uma tendência de queda.

Direção de otimização da estratégia

  1. Recomenda-se que os parâmetros do MACD sejam ajustados de acordo com a dinâmica do ciclo do mercado para melhorar a adaptabilidade da estratégia.
  2. Pode-se introduzir um indicador de taxa de flutuação (como o ATR) para ajustar dinamicamente a distância de parada móvel, aumentando a eficácia da parada.
  3. Considerar a adição de um mecanismo de arbitragem para que a estratégia possa ser lucrativa em um cenário bilateral.
  4. Pode ser combinado com indicadores de volume de transação do mercado para aumentar a confiabilidade da confirmação do sinal.
  5. Recomenda-se a adição de um mecanismo de gestão de posições dinâmicas que ajuste automaticamente o tamanho das transações de acordo com o valor líquido da conta e o risco de mercado.

Resumir

Trata-se de uma estratégia de acompanhamento de tendências baseada em indicadores técnicos clássicos, que permite um mecanismo de geração de sinais de negociação mais confiável através da combinação de MACD e RSI. A estratégia é projetada de forma simples e prática, com um bom valor de combate.

Código-fonte da estratégia
/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-11 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © cryptohitman09

//@version=6
strategy("MACD + RSI 交易系统 - 110 美金买入", overlay=true)

// MACD 設定
fastLength = input.int(6, title="MACD Fast Length")
slowLength = input.int(13, title="MACD Slow Length")
signalSmoothing = input.int(5, title="MACD Signal Smoothing")
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)

// RSI 設定
rsiLength = input.int(14, title="RSI Length")  // RSI 計算週期
rsiValue = ta.rsi(close, rsiLength)  // 計算 RSI 值
rsiThresholdHigh = input.int(70, title="RSI 超買閾值")  // RSI 超買閾值
rsiThresholdLow = input.int(30, title="RSI 超賣閾值")  // RSI 超賣閾值

// 做多信号条件:MACD 線突破信号線,且 RSI 不低於 30
buySignal = (macdLine > signalLine) and (rsiValue >= rsiThresholdLow) // 只有 RSI 大於或等於 30 時才觸發買入

// 计算每次交易的仓位(每次交易目标为 110 美金的买入金额)
tradeAmount = 20010  // 每次买入110 美金
orderSize = tradeAmount / close  // 根据当前价格计算仓位大小

// 移动止损(Trailing Stop)
enableTrailingStop = input.bool(true, title="启用移动止损")
trailingStopDistance = input.float(2, title="移动止损距离 (%)") / 89500  // 增加移动止损的距离
longTrailingStop = strategy.position_avg_price * (1 - trailingStopDistance)

// 交易逻辑:仅做多
if buySignal
    strategy.entry("买入", strategy.long, qty=orderSize)
    if enableTrailingStop
        strategy.exit("卖出", from_entry="买入", trail_price=longTrailingStop, trail_offset=trailingStopDistance * close)                                                                               

// 绘制 MACD 指标
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.red, title="Signal Line")

// 绘制 RSI 值
plot(rsiValue, color=color.orange, title="RSI Value")
hline(rsiThresholdHigh, "RSI 超买", color=color.red)
hline(rsiThresholdLow, "RSI 超卖", color=color.green)

// 绘制买入信号
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="买入信号", text="BUY")

// 如果触发买入信号,则发送警报
if buySignal
    alert('{"secret": "eyJhbGciOiJIUzI1NiJ9.eyJzaWduYWxzX3NvdXJjZV9pZCI6MTAwMDAyfQ.G1wLNjNyUPlTqYWsIqXSWnn_M4pRCKerBm7eTpyCiH8", "max_lag": "300", "timestamp": "{{timenow}}", "trigger_price": "{{close}}", "tv_exchange": "{{exchange}}", "tv_instrument": "{{ticker}}", "action": "{{strategy.order.action}}", "bot_uuid": "493b76f0-8a3c-4633-8b2b-90c02659dd4d", "strategy_info": {"market_position": "{{strategy.market_position}}", "market_position_size": "{{strategy.market_position_size}}", "prev_market_position": "{{strategy.prev_market_position}}", "prev_market_position_size": "{{strategy.prev_market_position_size}}"}, "order": {"amount": "{{strategy.order.contracts}}", "currency_type": "base"}}', alert.freq_once_per_bar_close)