
A estratégia é um sistema de negociação de acompanhamento de tendências que combina uma média móvel de 200 períodos (MA200) e análise de padrões de tendência dinâmica. Busca oportunidades de negociação principalmente identificando a posição do preço em relação à tendência de longo prazo e as mudanças de dinâmica no gráfico. A estratégia se aplica a períodos de tempo de 4 horas ou mais e possui um mecanismo de prevenção de reentrada, garantindo que as posições não sejam reabertas se já houver uma posição não equilibrada, controlando efetivamente o risco de posição.
O princípio central da estratégia baseia-se em dois fatores-chave: a determinação da posição do preço em relação à tendência de longo prazo e a análise dinâmica do volume de barril.
Em primeiro lugar, a estratégia usa a média móvel simples de 200 dias (SMA) como um indicador de referência para a tendência de longo prazo. Quando o preço está acima da MA200, é considerado uma tendência ascendente; quando o preço está abaixo da MA200, é considerado uma tendência descendente.
Em segundo lugar, a estratégia introduziu o conceito de pilar de força, ou seja, a força do mercado é julgada comparando o pilar atual com o tamanho da entidade do pilar anterior. A entidade do pilar atual é considerada mais forte quando é maior que a do pilar anterior.
A lógica específica de geração de sinal de entrada é a seguinte:
A estratégia também contém um importante mecanismo de controle de risco: um novo sinal de entrada é executado somente se não houver uma posição em aberto, evitando efetivamente a exposição ao risco excessivo causado pela reabertura de posições.
As configurações de stop loss e stop-loss podem ser personalizadas com parâmetros de 50 e 100 pontos por defeito, respectivamente, para ajudar os comerciantes a limitar as perdas quando o mercado se move para trás e bloquear os lucros quando o preço se move na direção esperada.
Ao analisar em profundidade a implementação de código da estratégia, podemos resumir os seguintes pontos de vantagem:
Confirmação de tendências combinada com impulso:A estratégia combina um indicador de tendência de longo prazo ((MA200) e um indicador de momentum de curto prazo ((comparação de volumes de alumínio)) para filtrar efetivamente os sinais de baixa qualidade, que só entram em jogo quando a direção da tendência é clara e há bastante momentum.
Mecanismos de prevenção de dupla entrada:Ao verificar se há posições pendentes no momento, a estratégia evita continuar a adicionar códigos a posições já existentes, controlando efetivamente o risco de capital.
Gestão de risco flexível:Os usuários podem definir o ponto de parada e de parada de acordo com suas preferências de risco, ou podem desligar completamente a função de parada de parada para se adaptar a diferentes estilos de negociação.
Sinais visuais sugerem:A estratégia fornece sinais de compra e venda visíveis, permitindo que os comerciantes identifiquem intuitivamente os pontos de entrada, aumentando a disponibilidade da estratégia.
Parâmetros ajustáveis:Os parâmetros-chave, como o ciclo de MA e o ponto de parada de perda, podem ser personalizados pelo usuário, aumentando a adaptabilidade da estratégia.
O que é que eu tenho a dizer?A estratégia se concentra em capturar movimentos de mercado com aceleração, aumentando a qualidade do sinal, exigindo que a entidade de criptomoeda atual seja maior do que a entidade de criptomoeda anterior.
Apesar do bom desenho da estratégia, existem os seguintes riscos potenciais:
A média móvel está atrasada:A média móvel de 200 períodos como um indicador de tendência de longo prazo tem um atraso evidente, o que pode levar a um sinal de erro que ainda está de acordo com a tendência antiga no início da reversão de tendência. A solução é considerar a introdução de médias móveis de curto prazo como um indicador de confirmação auxiliar.
Risco de perda fixa:A estratégia usa um número fixo de pontos como configuração de parada, sem levar em conta as mudanças na volatilidade do mercado, que podem levar a uma parada prematura em períodos de alta volatilidade. A direção de melhoria é considerar o uso de indicadores dinâmicos como o ATR (Média Real de Amplitude) para ajustar o nível de parada.
Requisitos de entrada única:Embora a estratégia combine tendência e dinâmica, as condições de entrada são relativamente simples e podem gerar falsos sinais excessivos em certos cenários de mercado. Recomenda-se a adição de condições de filtragem adicionais, como a confirmação de volume de transação ou sinais auxiliares de outros indicadores técnicos.
Falta de identificação do cenário de mercado:A estratégia não faz distinção entre diferentes ambientes de mercado (por exemplo, um mercado de turbulência e um mercado de tendência) e pode ter um mau desempenho no mercado de liquidação. Pode-se considerar a adição de lógica de julgamento do ambiente de mercado, ajustar os parâmetros da estratégia em diferentes ambientes ou suspender a negociação.
A gestão de fundos imperfeita:Embora a estratégia estabeleça uma proporção de posição fixa (<10% do equity), o tamanho da posição não é ajustado de acordo com a probabilidade de vitória ou o risco de diferentes transações. Recomenda-se a implementação de algoritmos de gestão de fundos mais complexos, como a fórmula de Kelly ou o modelo de risco fixo.
Com base na análise acima, a estratégia pode ser otimizada em várias direções:
Introdução à análise de múltiplos ciclos:A estratégia atual funciona apenas em um único período de tempo, e pode ser considerado adicionar um mecanismo de confirmação multi-período, como abrir uma posição somente quando a linha do dia e a tendência do ciclo de 4 horas coincidem, para melhorar a qualidade do sinal.
Mecanismo de parada dinâmico:A mudança de um ponto fixo de parada para uma parada dinâmica baseada no ATR, melhor adaptada às mudanças na volatilidade do mercado. Por exemplo, pode-se definir um stop-loss de 2 vezes o ATR, reduzindo a faixa de parada em períodos de baixa volatilidade e ampliando a faixa de parada em períodos de alta volatilidade.
Adição de filtro de sinal:A introdução de indicadores técnicos adicionais como confirmação, como RSI overbought overbought, MACD direção do gráfico de coluna, confirmação de volume de transação, etc., reduz a probabilidade de ocorrência de falsos sinais.
Adição de Stop Loss móvel:Implementar o Trailing Stop, que ajusta automaticamente a posição de parada quando o preço se move na direção favorável, bloqueando parte dos lucros e dando ao preço espaço de respiração suficiente.
Optimizar a gestão de fundos:Implementar a gestão de fundos com base no risco por transação, como o modelo de risco fixo ((o risco por transação é fixado em 1% do capital da conta), ou ajustar o tamanho da posição de acordo com a intensidade do sinal.
Para entrar no julgamento da situação do mercado:Desenvolver um módulo de identificação de cenários de mercado que possa suspender a negociação ou ajustar a configuração de parâmetros mais conservadores em mercados de turbulência.
Aumentar a lógica de julgamento da dinâmica:O julgamento atual da dinâmica baseia-se apenas em uma simples comparação do tamanho das entidades de potássio. Pode-se considerar a introdução de modelos de dinâmica mais complexos, como a consideração da tendência de mudança de entidades de N raízes de potássio consecutivas.
O Moving Average and Moving Quantity Trend Tracker é uma estratégia de negociação que combina o julgamento de tendências de longo prazo e a análise de momentum de curto prazo. Determina a direção da tendência geral do mercado através de médias móveis de 200 períodos, enquanto utiliza as mudanças no volume do barril para capturar movimentos de mercado dinâmicos. A estratégia possui um mecanismo de prevenção de entrada repetida e um parâmetro de parada de perda opcional, demonstrando uma boa consciência de gerenciamento de risco.
A principal vantagem da estratégia reside na sua lógica de geração de sinais simples e eficazes, bem como na necessidade de dupla confirmação de tendências e dinâmicas, que ajudam a filtrar os sinais de baixa qualidade. No entanto, a estratégia também tem algumas limitações, como o atraso das médias móveis e o risco potencial de paradas fixas.
A estratégia pode ser ainda mais otimizada, aumentando a estabilidade de desempenho e a lucratividade em diferentes ambientes de mercado, através da introdução de melhorias como a análise de múltiplos ciclos, stop loss dinâmico, filtragem de sinais reforçada e gestão de fundos otimizada. É um quadro estratégico básico que vale a pena considerar para investidores que buscam negociações de acompanhamento de tendências, que podem ser personalizadas e ampliadas de acordo com as necessidades individuais.
/*backtest
start: 2024-04-16 00:00:00
end: 2025-04-15 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"TRX_USD"}]
*/
//@version=5
strategy("MA200 + Momentum Candle Strategy (No Duplicate Entry)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === Input
maLength = input.int(200, title="MA Period")
showSignals = input.bool(true, title="Tampilkan Sinyal")
useSLTP = input.bool(true, title="Gunakan SL/TP?")
slPips = input.int(50, title="Stop Loss (pips)")
tpPips = input.int(100, title="Take Profit (pips)")
// === Perhitungan MA dan candle body
ma200 = ta.sma(close, maLength)
prevBody = math.abs(close[1] - open[1])
currBody = math.abs(close - open)
// === Momentum candle logic
isBullishMomentum = close > open and currBody > prevBody
isBearishMomentum = close < open and currBody > prevBody
// === Syarat entry
isBuySignal = close > ma200 and isBullishMomentum
isSellSignal = close < ma200 and isBearishMomentum
// === SL/TP
pipSize = syminfo.mintick * 10
sl = slPips * pipSize
tp = tpPips * pipSize
// === Cek apakah ada posisi terbuka
noOpenTrade = strategy.opentrades == 0
// === Eksekusi entry jika belum ada posisi terbuka
if isBuySignal and noOpenTrade
strategy.entry("Buy", strategy.long)
if useSLTP
strategy.exit("Exit Buy", from_entry="Buy", stop=close - sl, limit=close + tp)
if isSellSignal and noOpenTrade
strategy.entry("Sell", strategy.short)
if useSLTP
strategy.exit("Exit Sell", from_entry="Sell", stop=close + sl, limit=close - tp)
// === Plot MA dan sinyal visual
plot(ma200, color=color.orange, title="MA 200")
plotshape(showSignals and isBuySignal and noOpenTrade, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(showSignals and isSellSignal and noOpenTrade, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")