Estratégia de controle de risco e rastreamento de tendência de média móvel dupla

EMA
Data de criação: 2024-12-20 14:30:29 última modificação: 2024-12-20 14:30:29
cópia: 1 Cliques: 371
1
focar em
1617
Seguidores

Estratégia de controle de risco e rastreamento de tendência de média móvel dupla

Visão geral

Esta estratégia é um sistema de negociação de acompanhamento de tendências baseado em 110 dias e 200 dias de média móvel do índice (EMA) cruzado. A estratégia julga a tendência do mercado observando o cruzamento do EMA de curto prazo com o EMA de longo prazo, e combina o mecanismo de parada de perda para controlar o risco.

Princípio da estratégia

A lógica central da estratégia é baseada na continuidade das tendências de preços, capturando sinais de conversão de tendência através da interseção de EMA110 e EMA200. Quando a curta-metragem (EMA110) atravessa a média de longo prazo (EMA200), indica a formação de uma tendência ascendente, o sistema emite vários sinais; quando a curta-metragem (EMA110) atravessa a média de longo prazo, indica a formação de uma tendência descendente, o sistema emite um sinal de vazio. Para controlar o risco, a estratégia configura um stop loss de 1% e um stop loss de 0,5% em cada posição aberta, para proteger os lucros e limitar as possíveis perdas.

Vantagens estratégicas

  1. Capacidade de captação de tendências: Captação de tendências de médio e longo prazo através de cruzamentos de duas equações, filtrando efetivamente o ruído do mercado de curto prazo
  2. Controle de risco perfeito: mecanismo de bloqueio de perda integrado para controlar efetivamente o risco de uma única transação
  3. Execução rigorosa da lógica: eliminação automática do posicionamento inverso antes de abrir uma nova posição, evitando a reposição da posição
  4. Sinais de sinais são claros: os sinais de sinais são visualizados através da tabela de sinais no canto superior direito da interface
  5. Parâmetros de configuração razoáveis: escolha de 110 e 200 dias como um ciclo de linha média, para melhor equilibrar a sensibilidade e a estabilidade

Risco estratégico

  1. Risco de mercado de turbulência: a frequência de negociação em mercados de turbulência horizontal pode levar a perdas
  2. Risco de deslizamento: pode haver grandes deslizamentos de transação em momentos de forte volatilidade do mercado
  3. Risco de reversão de tendência: a reversão de tendência pode não ser oportuna
  4. Risco de otimização de parâmetros: a otimização excessiva de parâmetros pode levar ao ajuste excessivo da estratégia
  5. Risco sistêmico: risco sistêmico que pode ocorrer em situações de forte volatilidade do mercado

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

  1. Introdução de indicadores de volume de negócios: combinação de análise de volume de negócios para confirmar a eficácia das tendências
  2. Optimizar o mecanismo de stop loss: o uso de stop loss móvel ou stop loss dinâmico ATR pode ser considerado
  3. Adicionar filtro de tendência: adicionar indicadores de força de tendência para filtrar sinais de tendência fraca
  4. Melhorar a gestão de posições: ajustar o tamanho das posições de forma dinâmica de acordo com a intensidade da tendência
  5. Adição de controle de retirada: configure o limite máximo de retirada e suspenda a negociação quando atingir o limite

Resumir

A estratégia gerencia o risco por meio da captura de tendências em linha reta e, em combinação com o mecanismo de parada de perda, é projetada de forma racional e logicamente rigorosa. Embora possa ter um fraco desempenho em mercados turbulentos, a estabilidade e a lucratividade da estratégia podem ser melhoradas com a orientação de otimização sugerida.

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

//@version=5
strategy("EMA110/200 Cross with Stop-Loss and Take-Profit", overlay=true)

// 定义EMA110和EMA200
ema110 = ta.ema(close, 110)
ema200 = ta.ema(close, 250)

// 画出EMA
plot(ema110, color=color.blue, title="EMA110")
plot(ema200, color=color.red, title="EMA200")

// 计算交叉信号
longCondition = ta.crossover(ema110, ema200)  // EMA110上穿EMA200,做多
shortCondition = ta.crossunder(ema110, ema200)  // EMA110下穿EMA200,做空

// 设置止损和止盈
stopLoss = 0.01  // 止损1%
takeProfit = 0.005  // 止盈0.5%

// 判断是否已有仓位
isLong = strategy.position_size > 0  // 当前是否为多头仓位
isShort = strategy.position_size < 0  // 当前是否为空头仓位

// 执行策略:做多时平空,做空时平多
if (longCondition and not isLong)  // 如果满足做多条件并且当前没有多头仓位
    if (isShort)  // 如果当前是空头仓位,先平空
        strategy.close("Short")
    strategy.entry("Long", strategy.long)  // 执行做多
    strategy.exit("Take Profit/Stop Loss", "Long", stop=close * (1 - stopLoss), limit=close * (1 + takeProfit))

if (shortCondition and not isShort)  // 如果满足做空条件并且当前没有空头仓位
    if (isLong)  // 如果当前是多头仓位,先平多
        strategy.close("Long")
    strategy.entry("Short", strategy.short)  // 执行做空
    strategy.exit("Take Profit/Stop Loss", "Short", stop=close * (1 + stopLoss), limit=close * (1 - takeProfit))

// 在表格中显示信号
var table myTable = table.new(position.top_right, 1, 1)
if (longCondition and not isLong)
    table.cell(myTable, 0, 0, "Buy Signal", text_color=color.green)
if (shortCondition and not isShort)
    table.cell(myTable, 0, 0, "Sell Signal", text_color=color.red)