
A estratégia de negociação de quantificação de média móvel cruzada de superação dinâmica é um sistema de negociação que combina o indicador de superação (Supertrend) e a média móvel (MA), principalmente para negociação no mercado de câmbio em um período de tempo de 1 a 4 horas. A estratégia usa a interseção do preço com a média móvel como sinal inicial, e depois faz a confirmação da tendência com o indicador de superação, construindo um sistema completo de entrada, parada e parada.
O núcleo da estratégia é baseado em um sistema de rastreamento de tendências de confirmação múltipla, que inclui principalmente os seguintes componentes-chave:
Média móvel de sinal cruzadoA estratégia usa uma média móvel simples (SMA) de 20 períodos (que pode ser ajustada de 10 a 50) como linha de referência. A passagem desta média móvel é considerada um sinal de mudança de tendência em potencial. O sistema suporta dois tipos de cruzamento: cruzamento de fechamento (mais conservador) ou cruzamento de alta e baixa (mais radical).
Indicadores de superpotência confirmados: Utilize um indicador de super-força com um fator de 2.8 (ajustável entre 2.0-3.5) e 10 ciclos (ajustável entre 5-20) como ferramenta de confirmação da direção da tendência. O indicador de super-força mostra uma tendência ascendente quando é verde e uma tendência descendente quando é vermelho.
Lógica de entrada:
Sistema de gestão de riscos:
Mecanismo de confirmação múltiplaO sistema de dupla confirmação, combinado com a média móvel e o indicador de superpotência, reduz efetivamente os sinais falsos e aumenta a precisão da negociação. Em mercados com uma tendência clara, essa dupla confirmação pode filtrar efetivamente os sinais enganosos em situações de turbulência.
Forte adaptaçãoOs parâmetros da estratégia possuem uma alta capacidade de ajuste, incluindo o ciclo da média móvel, a multiplicação do indicador de superação e o ciclo do ATR, etc. Isso permite que a estratégia possa se ajustar de forma otimizada a diferentes condições de mercado e volatilidade. Em particular, o intervalo de ajuste de 2,5 a 3,2 do multiplicador do indicador de superação, capaz de se adaptar a diferentes condições de mercado de taxa de flutuação.
Uma boa gestão de riscos: Sistema de bloqueio de perda dinâmico baseado em ATR embutido, assegurando que o risco de cada transação seja controlado dentro do limite predeterminado. A configuração de taxa de retorno de risco fixo de 3: 1 ajuda a estabelecer a lucratividade a longo prazo.
Adaptação volátil: A estratégia ajusta automaticamente os objetivos de stop loss e profit via indicadores ATR, permitindo-lhe adaptar-se às mudanças na volatilidade do mercado. Configure um stop loss mais amplo em mercados de alta volatilidade e correspondente restrição em mercados de baixa volatilidade.
Frequência de transação moderadaA estratégia não opera com frequência, reduzindo os custos de transação e o risco de sobre-transação, devido à utilização de mecanismos de confirmação múltipla.
Reversão de tendência de identificação de atrasoComo estratégia de acompanhamento de tendências, pode haver problemas de identificação de atraso no início da reversão de tendências, o que faz com que o ponto de entrada não seja o ideal. A solução é considerar a adição de indicadores de sinais precoces mais sensíveis como auxiliares.
Mercado de turbulência não funciona bem: Em mercados de correção horizontal sem uma tendência óbvia, a estratégia pode produzir perdas contínuas. Recomenda-se suspender a estratégia ou mudar para outro conjunto de parâmetros projetados especificamente para mercados de choque quando um mercado de choque é identificado.
Sensibilidade do parâmetroUma pequena variação na multiplicação do indicador de superpotência pode ter um impacto significativo no desempenho da estratégia. É necessário determinar, por meio de feedback, a configuração de parâmetros mais adequada para uma variedade de negociação específica e para um período de tempo específico.
Risco de Falso BreakoutA reação imediata após a passagem de uma média móvel pode desencadear um sinal de erro. Considere adicionar um período de confirmação ou uma confirmação de movimento de preço para reduzir os prejuízos causados por uma falsa ruptura.
Dependência do ambiente de mercadoA estratégia funciona melhor durante o horário de negociação de Londres e Nova York e pode não ser eficaz durante o horário de negociação mais baixo da Ásia. Recomenda-se ajustar os parâmetros de acordo com o horário de negociação ou ativar a estratégia seletivamente em determinados momentos.
Introdução do filtro de tempo: O código pode ser otimizado para incluir filtros de horário de negociação, executando transações apenas quando as horas de negociação de Londres e Nova York estiverem ativas. Isso pode ser feito adicionando lógica de condição de tempo, evitando ambientes de mercado com pouca liquidez.
Ajuste do fator de hiperpotência dinâmicaA estratégia atual usa um multiplicador de superpotência fixo, que pode ser melhorado para parâmetros dinâmicos que se ajustam automaticamente com base na volatilidade do mercado. Por exemplo, use um valor de multiplicador mais alto durante a alta volatilidade (<3.0-3.2) e um valor mais baixo durante a baixa volatilidade (<2.5-2.7).
Mecanismos de verificação cruzadaConsidere um mecanismo de confirmação de que o preço será mantido acima/abaixo da média móvel por um determinado tempo ou distância, para reduzir as falsas rupturas. Pode-se exigir que o preço permaneça na mesma direção por N ciclos após a cruz.
Análise de estrutura de mercado integradaIntrodução de resistência de suporte ou análise de estrutura de preços para melhorar a qualidade de entrada. Pode-se considerar um sinal de cruzamento que ocorra apenas perto da resistência de suporte principal.
Gestão de risco adaptativa: A taxa de risco-retorno atual é fixa e pode ser otimizada de forma a ajustar-se à dinâmica das condições do mercado. Por exemplo, aumentar a taxa de risco-retorno em mercados de forte tendência e diminuir em mercados de tendência mais fraca.
Análise de Multi-Framas de Tempo: Introdução de confirmação de tendências em prazos mais altos, como, por exemplo, executar sinais em prazos mais baixos somente quando a direção da tendência da linha do sol coincide. Isso requer a adição de uma função de análise de vários prazos.
A estratégia de negociação quantitativa de média móvel cruzada de movimentos dinâmicos ultrapassados cria um sistema de acompanhamento de tendências relativamente robusto por meio da combinação de sinais de média móvel cruzada e confirmação de indicadores ultrapassados. A estratégia é especialmente adequada para ser aplicada em gráficos de 1 a 4 horas de pares de moedas principais, como EUR / USD e GBP / USD, e tem melhor desempenho em horários de negociação em Londres e Nova York.
A principal vantagem da estratégia reside em seu mecanismo de confirmação múltipla e seu sistema de gerenciamento de risco perfeito, que fornece uma estrutura sistematizada para a negociação por meio de uma taxa de retorno de risco predefinida e de uma configuração de parada de perda baseada na volatilidade. No entanto, como um sistema de acompanhamento de tendências, pode não funcionar bem em mercados turbulentos e existe um risco inerente de identificação tardia de reversões de tendências.
A estabilidade e adaptabilidade da estratégia pode ser ainda melhorada através da direção de otimização da implementação das recomendações, especialmente a introdução de filtros de tempo, ajustes de parâmetros dinâmicos e análise de múltiplos prazos. Finalmente, a estratégia fornece um quadro básico confiável para os comerciantes de quantificação, que pode ser personalizado e ampliado de acordo com as preferências de risco individuais e as condições de mercado.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-26 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Islamabad Forex Academy Strategy-1",
overlay=true,
margin_long=100,
margin_short=100,
initial_capital=10000,
default_qty_type=strategy.percent_of_equity,
default_qty_value=15,
commission_type=strategy.commission.percent,
commission_value=0.03,
pyramiding=0)
// ===== CORE PARAMETERS =====
maLength = input.int(20, "Moving Average Length", minval=10, maxval=50)
atrPeriod = input.int(10, "ATR Period", minval=5, maxval=20)
supertrendFactor = input.float(2.8, "Supertrend Multiplier", step=0.1, minval=2.0, maxval=3.5)
rrRatio = input.float(3.0, "Risk:Reward Ratio", minval=2.0, maxval=5.0)
useCloseFilter = input.bool(true, "Require Close Cross MA")
// ===== CALCULATIONS =====
// Single Moving Average
ma = ta.sma(close, maLength)
// Supertrend with tighter settings
[supertrendLine, supertrendDir] = ta.supertrend(supertrendFactor, atrPeriod)
// Trend Conditions
uptrend = supertrendDir < 0 // Supertrend green
downtrend = supertrendDir > 0 // Supertrend red
// Entry Logic - Price must cross MA and stay beyond it
maCrossUp = useCloseFilter ? ta.crossover(close, ma) : ta.crossover(high, ma)
maCrossDown = useCloseFilter ? ta.crossunder(close, ma) : ta.crossunder(low, ma)
// Confirm with Supertrend
longCondition = maCrossUp and uptrend
shortCondition = maCrossDown and downtrend
// ===== RISK MANAGEMENT =====
atrValue = ta.atr(atrPeriod)
stopDistance = atrValue * 1.8
profitDistance = stopDistance * rrRatio
// ===== EXECUTION =====
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long",
stop=close - stopDistance,
limit=close + profitDistance,
when=strategy.position_size > 0)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short",
stop=close + stopDistance,
limit=close - profitDistance,
when=strategy.position_size < 0)
// ===== VISUALS =====
// MA Plot
plot(ma, "20 MA", color=color.new(#FF6D00, 0), linewidth=2)
// Supertrend Plot
uPlot = plot(uptrend ? supertrendLine : na, "Up Trend", color=color.new(#00C805, 0), linewidth=2)
dPlot = plot(downtrend ? supertrendLine : na, "Down Trend", color=color.new(#FF1100, 0), linewidth=2)
fill(uPlot, dPlot, color=color.new(supertrendDir < 0 ? #00C805 : #FF1100, 90))
// Entry Signals
plotshape(longCondition, "Buy", shape.triangleup, location.belowbar, color=color.new(#00C805, 0), size=size.small)
plotshape(shortCondition, "Sell", shape.triangledown, location.abovebar, color=color.new(#FF1100, 0), size=size.small)