A estratégia de negociação de inversão de direção de média móvel é uma estratégia de negociação em que a tendência é reversível quando várias colunas consecutivas de média móvel aparecem em ascensão ou queda. A estratégia determina a direção da média móvel para determinar a oportunidade de negociação de um aumento ou diminuição contínua.
A lógica central da estratégia de inversão de direção da média móvel é:
Para calcular a média móvel escolhida, você pode escolher a média móvel simples, a média móvel indexada, a média móvel ponderada ou a média linear regressiva.
Para julgar a relação entre o tamanho da média móvel do período atual e a média móvel do período anterior, se a média móvel atual for maior do que a média móvel do período anterior, o valor é 1, e vice-versa, o valor é 0.
Registre o número de ciclos consecutivos para cima e para baixo. Se a média móvel do ciclo atual for maior que a do ciclo anterior, o número de ciclos consecutivos para cima é +1, e o número de ciclos consecutivos para baixo é zero; se a média móvel do ciclo atual for menor que o ciclo anterior, o número de ciclos consecutivos para baixo é +1, e o número de ciclos consecutivos para cima é zero.
Quando o número de ciclos de ascensão ou descensão contínua excede o limite definido pelo usuário, execute a operação de adição ou de subtração correspondente.
Ao mesmo tempo, as cores da coluna K e as cores de fundo são coloridas para mostrar a direção da tendência.
A variação da curva de média móvel pode ser seletivamente traçada, marcando os pontos de inflexão.
A estratégia de determinar a tendência através da medição de uma média móvel de quantas linhas K estão em uma sequência, e o timeout pode filtrar o impacto de uma onda de choque sobre a negociação através da duração de um período de alta ou baixa contínua, em vez de olhar apenas para uma linha K.
A estratégia de inverter a direção da média móvel tem as seguintes vantagens:
Usando a média móvel para determinar a direção da tendência, você pode filtrar o ruído do mercado de forma eficaz.
Estadística de mudanças contínuas na direção da média móvel em um determinado período, para determinar o tempo de reversão da tendência e reduzir o risco de negociação.
Os parâmetros de média móvel e os parâmetros de período estatístico podem ser personalizados para adaptar-se a diferentes variedades e contextos.
A coloração da linha K mostra a mudança de direção da tendência, formando um auxiliar visual.
Pode-se escolher entre diferentes tipos de médias móveis, com flexibilidade.
Descreva a curva de variação da média móvel para observar claramente se ocorreu uma inversão.
As regras são simples, claras, fáceis de entender e apropriadas para quem está começando.
A estratégia de inverter a direção da média móvel também tem riscos:
O atraso da própria média móvel pode afetar o aproveitamento oportuno dos pontos de viragem.
O atraso de um determinado ciclo estatístico leva a tomar decisões de curto prazo, podendo perder a oportunidade de uma reversão rápida.
A definição de um ciclo contínuo muito longo pode perder a tendência, e a definição de um ciclo curto pode ser facilmente manipulada.
Os sinais de negociação em branco podem ser muito numerosos em situações de turbulência.
Não é possível determinar a verdadeira inversão de tendência apenas com base na direção da média móvel, existindo um certo risco de falso sinal.
Quando as coisas mudam drasticamente, o próprio indicador de média móvel também muda rapidamente, gerando uma maior probabilidade de sinais errados.
A racionalidade dos parâmetros de seleção das médias móveis deve ser observada, caso contrário, haverá falhas.
Resolução:
Reduzir adequadamente os ciclos das médias móveis e aumentar a sensibilidade.
Em combinação com outros indicadores, os sinais de filtragem confirmam a reversão da tendência.
Otimizar os parâmetros do ciclo estatístico para encontrar um equilíbrio entre velocidade de reação e estabilidade.
Aumentar o limite de arbitragem e controlar os prejuízos.
A utilização de várias combinações de médias móveis aumenta a precisão.
A estratégia de inverter a direção da média móvel pode ser otimizada em vários aspectos:
Otimize os parâmetros de média móvel, teste as médias móveis de diferentes períodos de comprimento e encontre o melhor parâmetro. Você pode tentar uma combinação de SMA, EMA e WMA.
Em combinação com outros indicadores auxiliares, como RSI, KD, etc., aumenta a confiabilidade do sinal.
Otimizar os parâmetros de periodicidade estatística contínua para garantir que reflitam a reversão de tendência e, ao mesmo tempo, filtrar o máximo possível os sinais falsos.
Adição de um mecanismo de stop loss para controlar a perda de uma única transação
Testar o efeito de otimização dos parâmetros de diferentes variedades, ajustando os parâmetros de acordo com as diferentes variedades de transação.
Considerar a mudança do ciclo de estatística fixa para o ciclo de estatística adaptativa, para que a estratégia seja mais flexível.
Tente abrir uma posição de breakout, entrando quando a média móvel for realmente quebrada.
Aumentar o julgamento da direção da tendência geral, evitando a negociação de contrapartida.
Melhorar a forma de traçar a curva de média móvel, como aumentar a suavidade da curva.
A estratégia de negociação de reversão de direção de média móvel usa o número de ciclos de alta ou baixa contínua da média móvel estatística para determinar o tempo de acompanhamento contínuo da tendência. Ela pode filtrar efetivamente o ruído do mercado e aproveitar as oportunidades em tempo hábil quando a tendência se transforma. A estratégia pode ser adaptada de forma flexível a diferentes variedades de negociação e ambiente de mercado por meio de parâmetros de média móvel e períodos estatísticos personalizáveis.
/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Moving Average Consecutive Up/Down Strategy (by ChartArt)", overlay=true)
// ChartArt's Moving Average Consecutive Up/Down Strategy
//
// Version 1.0
// Idea by ChartArt on December 30, 2015.
//
// This strategy goes long (or short) if there are several
// consecutive increasing (or decreasing) moving average
// values in a row in the same direction.
//
// The bars can be colored using the raw moving average trend.
// And the background can be colored using the consecutive
// moving average trend setting. In addition a experimental
// line of the moving average change can be drawn.
//
// The strategy is based upon the "Consecutive Up/Down Strategy"
// created by Tradingview.
// Input
Switch1 = input(true, title="Enable Bar Color?")
Switch2 = input(true, title="Enable Background Color?")
Switch3 = input(false, title="Enable Moving Average Trend Line?")
ConsecutiveBars = input(4,title="Consecutive Trend in Bars",minval=1)
// MA Calculation
MAlen = input(1,title="Moving Average Length: (1 = off)",minval=1)
SelectMA = input(2, minval=1, maxval=4, title='Moving Average: (1 = SMA), (2 = EMA), (3 = WMA), (4 = Linear)')
Price = input(close, title="Price Source")
Current =
SelectMA == 1 ? sma(Price, MAlen) :
SelectMA == 2 ? ema(Price, MAlen) :
SelectMA == 3 ? wma(Price, MAlen) :
SelectMA == 4 ? linreg(Price, MAlen,0) :
na
Last =
SelectMA == 1 ? sma(Price[1], MAlen) :
SelectMA == 2 ? ema(Price[1], MAlen) :
SelectMA == 3 ? wma(Price[1], MAlen) :
SelectMA == 4 ? linreg(Price[1], MAlen,0) :
na
// Calculation
MovingAverageTrend = if Current > Last
1
else
0
ConsecutiveBarsUp = MovingAverageTrend > 0.5 ? nz(ConsecutiveBarsUp[1]) + 1 : 0
ConsecutiveBarsDown = MovingAverageTrend < 0.5 ? nz(ConsecutiveBarsDown[1]) + 1 : 0
BarColor = MovingAverageTrend > 0.5 ? green : MovingAverageTrend < 0.5 ? red : blue
BackgroundColor = ConsecutiveBarsUp >= ConsecutiveBars ? green : ConsecutiveBarsDown >= ConsecutiveBars ? red : gray
MovingAverageLine = change(MovingAverageTrend) != 0 ? close : na
// Strategy
if (ConsecutiveBarsUp >= ConsecutiveBars)
strategy.entry("ConsUpLE", strategy.long, comment="Bullish")
if (ConsecutiveBarsDown >= ConsecutiveBars)
strategy.entry("ConsDnSE", strategy.short, comment="Bearish")
// output
barcolor(Switch1?BarColor:na)
bgcolor(Switch2?BackgroundColor:na)
plot(Switch3?MovingAverageLine:na, color=change(MovingAverageTrend)<0?green:red, linewidth=4)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)