A estratégia baseia-se em um indicador de onda dispersa agregada de média móvel logarítmica (Logarithmic MACD) para gerar um sinal de negociação. Ele determina tendências e oportunidades de mercado, calculando a diferença entre as médias móveis logarítmicas rápidas e lentas.
A principal lógica da estratégia é:
Calcule as médias móveis rápidas (default 12 dias) e lentas (default 26 dias)
MACD é a diferença entre os dois e expressa a dinâmica do mercado
A linha de sinal é a média móvel lisa do MACD (default 9 dias)
Quando a linha MACD de baixo quebra a linha de sinalização fazer mais
Quando a linha MACD cai da linha de sinal de cima para baixo
Diferença entre MACD e linha de sinal expressa em gráficos colunais
Em comparação com o MACD de média móvel simples, o MACD logarítmico pode destacar a tendência de mudança no mercado de crescimento exponencial. Após a conversão logarítmica, os valores com maior flutuação podem permanecer relativamente comparáveis no gráfico.
Utilizando a conversão logarítmica, pode-se detectar mudanças de preços a nível do índice
MACD paralelo para destacar informações sobre oscilações de preços
A linha de sinalização suaviza o MACD, formando um sinal de transação
A MACD em forma de coluna expressa intuitivamente a direção da tendência
A conversão numérica pode aumentar a oscilação dos preços
Sinais frequentes, fácil de exagerar
Não foi levada em conta a gestão de perdas e o controlo de riscos é incompleto.
Medidas de resposta:
Ajustar parâmetros para reduzir a frequência do sinal
Aumentar as condições de filtragem para evitar a geração de sinais durante a vibração
Estabelecer uma estratégia de stop loss para controlar as perdas individuais
Parâmetros de otimização e estabilidade
Tente outras conversões de índices, como a média móvel de índices.
Indicadores de tendência combinados com filtros de sinais
Aumentar a estratégia de stop loss
Aprendizagem de máquina para determinar a confiabilidade do sinal
A estratégia usa a conversão de logarítmos para melhorar a sensibilidade do indicador MACD e detectar mudanças de tendência mais cedo. Mas é necessário ter cuidado para controlar a frequência de negociação. Com a otimização de parâmetros, controle de vento e outras melhorias, a estratégia pode se tornar um sistema de negociação quantificado estável e personalizado.
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="Logarithmic Moving Average Convergence Divergence Strategy", shorttitle="LMACD Strategy")
// Getting inputs
fast_length = input(title="Fast Length", defval=12)
slow_length = input(title="Slow Length", defval=26)
src = input(title="Source", defval=close)
signal_length = input(title="Signal Smoothing", minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)", defval=false)
sma_signal = input(title="Simple MA(Signal Line)", defval=false)
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
lmacd = log(fast_ma) - log(slow_ma)
signal = sma_signal ? sma(lmacd, signal_length) : ema(lmacd, signal_length)
hist = lmacd - signal
plot(hist, title="Histogram", style=columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(lmacd, title="LMACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
if (crossover(hist, 0))
strategy.entry("Long", strategy.long, comment="LMACD long")
if (crossunder(hist, 0))
strategy.entry("Short", strategy.short, comment="LMACD short")