Estratégia de Crossover de Média Móvel Dupla EMA

EMA MA
Data de criação: 2024-06-07 15:58:15 última modificação: 2024-06-07 15:58:15
cópia: 0 Cliques: 695
1
focar em
1617
Seguidores

Estratégia de Crossover de Média Móvel Dupla EMA

Visão geral

A estratégia usa duas médias móveis indexadas (EMA) para capturar mudanças na tendência de preços. Quando a EMA curta atravessa a EMA longa da direção inferior, gera um sinal de compra; Quando a EMA curta atravessa a EMA longa da direção superior, gera um sinal de venda. A estratégia simultaneamente define limites diários de parada e parada para controlar perdas e ganhos no mesmo dia.

Princípio da estratégia

  1. Calcule o EMA de curto prazo (default period 9) e o EMA de longo prazo (default period 21) .
  2. Quando a EMA curta atravessa a EMA longa para cima, a posição é fechada; quando a EMA curta atravessa a EMA longa para baixo, a posição é fechada.
  3. Registre os juros da conta no início de cada dia de negociação e calcule o diferencial entre os juros da conta atual e os ganhos e perdas do dia.
  4. Se a perda do dia exceder o máximo de perda permitido (,25% do capital inicial da conta), todas as posições serão liquidadas.
  5. Se o lucro do dia exceder o lucro máximo permitido (% do capital inicial da conta), todas as posições serão liquidadas.

Vantagens estratégicas

  1. Simples e fácil de entender: a lógica da estratégia é clara, gerando sinais de negociação usando apenas duas médias móveis, é fácil de entender e implementar.
  2. Seguimento de tendências: através do cruzamento de linhas rápidas e lentas da EMA, é possível capturar melhor as mudanças na tendência dos preços, sendo adequado para uso em mercados de tendências.
  3. Controle de risco: O limite de stop loss e stop loss diário é configurado para controlar efetivamente os perdas e ganhos diários e evitar que a conta tenha uma grande flutuação.

Risco estratégico

  1. Optimização de parâmetros: O desempenho da estratégia depende muito da escolha do ciclo EMA, e diferentes configurações de parâmetros podem levar a resultados muito diferentes. Portanto, é necessário realizar otimização e retomada de parâmetros em diferentes cenários de mercado.
  2. Mercado de turbulência: Em mercados de turbulência, os preços flutuam frequentemente acima e abaixo da EMA, podendo gerar mais falsos sinais, resultando em transações frequentes e perda de fundos.
  3. Reversão de tendência: Quando a tendência do mercado se reverte, a estratégia pode atrasar a entrada ou a saída, perdendo o melhor momento de negociação.

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

  1. A introdução de outros indicadores técnicos, como RSI, MACD, etc., para auxiliar na determinação da força e direção da tendência, aumenta a precisão do sinal.
  2. Optimizar as regras de stop loss e de stop-loss, como o uso de stop loss móvel ou stop-loss dinâmico, para melhor proteger os lucros e controlar o risco.
  3. Ajustar o ciclo de EMA de acordo com a dinâmica de volatilidade do mercado para se adaptar a diferentes condições de mercado.
  4. A análise fundamental, como dados econômicos, eventos importantes, etc., são usados para filtrar e confirmar os sinais de negociação.

Resumir

A estratégia de cruzamento de dupla linha de equilíbrio da EMA é uma estratégia de negociação simples e fácil de entender, adequada para o mercado de tendências. Através do cruzamento de linhas de equilíbrio rápidas e lentas, é possível capturar melhor as mudanças na tendência de preços.

Código-fonte da estratégia
/*backtest
start: 2023-06-01 00:00:00
end: 2024-06-06 00:00:00
period: 1d
basePeriod: 1h
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/
// © DD173838

//@version=5
strategy("Moving Average Strategy with Daily Limits", overlay=true)

// Moving Average settings
shortMaLength = input.int(9, title="Short MA Length")
longMaLength = input.int(21, title="Long MA Length")

// Calculate MAs
shortMa = ta.ema(close, shortMaLength)
longMa = ta.ema(close, longMaLength)

// Plot MAs
plot(shortMa, title="9 EMA", color=color.blue)
plot(longMa, title="21 EMA", color=color.red)

// Strategy conditions
crossUp = ta.crossover(shortMa, longMa)
crossDown = ta.crossunder(shortMa, longMa)

// Debug plots to check cross conditions
plotshape(series=crossUp, title="Cross Up", location=location.belowbar, color=color.green, style=shape.labelup, text="UP")
plotshape(series=crossDown, title="Cross Down", location=location.abovebar, color=color.red, style=shape.labeldown, text="DOWN")

// Entry at cross signals
if (crossUp)
    strategy.entry("Long", strategy.long)

if (crossDown)
    strategy.entry("Short", strategy.short)

// Daily drawdown and profit limits
var float startOfDayEquity = na
if (na(startOfDayEquity) or ta.change(time('D')) != 0)
    startOfDayEquity := strategy.equity

maxDailyLoss = 50000 * 0.0025
maxDailyProfit = 50000 * 0.02
currentDailyPL = strategy.equity - startOfDayEquity

if (currentDailyPL <= -maxDailyLoss)
    strategy.close_all(comment="Max Daily Loss Reached")

if (currentDailyPL >= maxDailyProfit)
    strategy.close_all(comment="Max Daily Profit Reached")