Estratégia de cruzamento de média móvel dupla

Autora:ChaoZhang, Data: 2023-09-13 14:56:37
Tags:

Esta estratégia é chamada de Dual Moving Average Crossover Strategy. Seu princípio central é usar duas linhas de regressão linear com parâmetros diferentes e gerar sinais de negociação com base em suas situações de cruzamento.

A estratégia primeiro calcula uma linha de regressão linear de curto e longo prazo. A regressão linear de curto prazo tem um período de 100 dias, e a de longo prazo tem um período de 150 dias. Quando a linha de regressão de curto prazo cruza acima da linha de longo prazo, um sinal de compra é gerado. Quando a linha de curto prazo cruza abaixo da linha de longo prazo, um sinal de venda é gerado.

As linhas de regressão lineares podem refletir a direção da tendência de longo prazo dos preços. A linha de curto prazo com um período menor é mais sensível às mudanças de preço e pode capturar tempos de reversão de curto prazo. A linha de longo prazo com um período maior representa a tendência de equilíbrio de longo prazo dos preços. Quando as duas linhas se cruzam, ela indica que as tendências de curto e longo prazo estão se revertendo, portanto, sinais de negociação podem ser gerados.

A vantagem desta estratégia é utilizar a abordagem clássica de análise técnica de cruzamento de média móvel, com a adição de análise de regressão linear, que pode identificar reversões de preços em ambas as dimensões de tempo de longo prazo e de curto prazo. No entanto, as linhas de regressão linear são suscetíveis a dados atípicos e apresentam algum atraso.

Para filtrar alguns sinais falsos, esta estratégia incorpora limites de condição de tempo, executando transações apenas durante intervalos de datas especificados. Isso pode reduzir as transações ineficazes até certo ponto.

Em conclusão, a estratégia de cruzamento de média móvel dupla combina múltiplas técnicas analíticas e pode capturar oportunidades de negociação complexas.


/*backtest
start: 2022-09-12 00:00:00
end: 2023-09-12 00:00:00
period: 2d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Linear Regression Curve CrossOver Strategy", shorttitle="LRC Crossover", overlay=true)
src = close
len1 = input(defval=100, minval=1, title="Length")
offset = 0
outfast = linreg(src, len1, offset)
plot(outfast,color=blue)

len2 = input(defval=150, minval=1, title="Length")

outslow = linreg(src, len2, offset)
plot(outslow,color=red)



yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  crossover(outfast,outslow)) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( crossover(outslow,outfast)  ) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", comment="SELL")
else
    strategy.cancel(id="SELL")
    

Mais.