Estrategia de cruce de la media móvil

El autor:¿ Qué pasa?, fecha: 2023-11-07 15:48:41
Las etiquetas:

img

Resumen general

La estrategia de cruce de promedios móviles es una estrategia de análisis técnico muy clásica. Calcula promedios móviles de diferentes períodos y observa su cruce para determinar la tendencia del mercado, con el fin de lograr el objetivo de comprar bajo y vender alto. Esta estrategia es adecuada para el comercio a medio y largo plazo, y puede filtrar eficazmente el ruido del mercado e identificar tendencias.

Principio

Esta estrategia calcula principalmente el promedio móvil simple de 10 días (SMA) y el promedio móvil triangular de 10 días (TRIMA). Cuando el SMA cruza por encima del TRIMA, se genera una señal de compra, lo que indica que la tendencia del mercado ha cambiado de baja a alta, y podemos comprar. Cuando el SMA cruza por debajo del TRIMA, se genera una señal de venta, lo que indica que la tendencia del mercado ha cambiado de alta a baja, y podemos vender.

Específicamente, la estrategia introduce primero el precio de cierre y define las longitudes de ciclo para calcular SMA y TRIMA.

Las emisiones de gases de efecto invernadero se calcularán en función de las emisiones de gases de efecto invernadero.

Donde Pn es el precio de cierre de los últimos n días.

La fórmula de cálculo de TRIMA es la siguiente:

El valor de las emisiones de CO2 de las emisiones de gases de efecto invernadero es el valor de las emisiones de gases de efecto invernadero de las emisiones de gases de efecto invernadero.

En el caso de las entidades de crédito, el valor de los valores de las operaciones de liquidación se calcula en función de los valores de las operaciones de liquidación.

Así que TRIMA es en realidad una SMA calculada encima de la SMA, que tiene un mejor efecto suavizador. Cuando la SMA a corto plazo cruza por encima de la TRIMA a largo plazo, indica un avance de la media móvil a corto plazo, y podemos comprar. Por el contrario, cuando la SMA cruza por debajo de la TRIMA, indica un desglose por debajo de la media móvil a corto plazo, y podemos vender.

Ventajas

La mayor ventaja de esta estrategia es que utiliza la capacidad de juicio de tendencias de las medias móviles para identificar efectivamente las tendencias del mercado y filtrar el ruido del mercado a corto plazo, con el fin de comprar bajo y vender alto. En comparación con un solo promedio móvil, la combinación de SMA y TRIMA puede mejorar la confiabilidad de los avances y reducir la probabilidad de falsos avances. Además, el promedio móvil en sí tiene una buena suavidad, que también puede desempeñar el papel de stop loss para reducir la probabilidad de una sola posición de stop loss. En general, esta estrategia es muy adecuada para el comercio a medio y largo plazo.

Los riesgos

El principal riesgo de esta estrategia es que el promedio móvil se queda atrás de los cambios de precio, lo que puede perder la etapa inicial de la tendencia, lo que resulta en una entrada tardía. Además, cuando el mercado no tiene una tendencia obvia, esta estrategia producirá más avances falsos. Por último, las estrategias de promedio móvil dependen más de la optimización de parámetros. Si los parámetros no se establecen correctamente, también afectará enormemente a la estrategia.

Direcciones de optimización

Esta estrategia puede optimizarse en los siguientes aspectos:

  1. Optimizar los parámetros del ciclo de la media móvil para encontrar la mejor combinación científica.

  2. Añadir indicadores de filtrado como el volumen de operaciones para evitar señales erróneas cuando el volumen de operaciones es bajo.

  3. Combinar indicadores de tendencia como el MACD para juzgar las tendencias locales y evitar operaciones frecuentes en mercados de consolidación.

  4. Adoptar promedios móviles adaptativos para ajustar dinámicamente los parámetros del ciclo cuando el mercado entre en etapas específicas.

  5. Verifique con marcos de tiempo múltiples, como considerar la entrada solo cuando las líneas diarias y de 4 horas se rompan.

Resumen de las actividades

La estrategia de cruce de promedios móviles es una estrategia de análisis técnico simple y práctica que es muy adecuada para la negociación de posiciones a mediano y largo plazo. Puede identificar efectivamente la dirección de la tendencia. Pero también tiene cierto retraso, y necesita ser filtrada y optimizada con indicadores de juicio de tendencia para reducir la probabilidad de señales falsas. Si los parámetros se optimizan correctamente, puede proteger el capital y aprovechar oportunidades de tendencia más grandes. Definitivamente vale la pena investigar y aplicar como una idea de estrategia.


/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//TMA strategy I came across, uses sma to display entry/exit points for both margin and non margin trading. The buy/sell signals as well as syntax are hidden behind comments if you scroll down.
//Change the commented fields for margin or spot trading!
//@version=3
strategy("MP Rollercoaster Strat", overlay=true)

bgcolor ( color=black, transp=0, title='Blackground', editable=true)

x = input(close, "Red")
n = input(10, "periods")
trima = sma(sma(x,n), n)

kisa=input(5, "Green")
sma = sma(close, kisa)

bull = (sma>trima)
fill(plot(sma, color = green), plot(trima, color=red), bull ? green : red)

//Conditions
buy_signal = crossover(sma,trima)
sell_signal = crossunder(sma,trima)

plotshape(sell_signal, style=shape.triangleup, color = red, text="Short")
plotshape(buy_signal, style=shape.triangledown, color = green, text="Long")
//plotshape(sell_signal, style=shape.triangleup, color = red, text="Sell")
//plotshape(buy_signal, style=shape.triangledown, color = green, text="Buy")

alertcondition(sell_signal, title = 'Short', message = 'e= s= c=position b=long t=market l= | delay=30 | e= s= b=short l= t=market q=0.01')
alertcondition(buy_signal, title = 'Long', message =  'e= s= c=position b=short t=market l= | delay=30 | e= s= b=long l= t=market q=0.01')

//alertcondition(sell_signal, title = 'Sell', message = 'e= s= c=order b=buy | delay=3 | e= b=sell q=99% p=0.70% u=currency')
//alertcondition(buy_signal, title = 'Buy', message =  'e= s= c=order b=sell | delay=30 | e= b=buy q=80 p=0.1% u=currency')

testStartYear = input(2018, "From Year") 
testStartMonth = input(4, "From Month")
testStartDay = input(1, "From Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2019, "To Year")
testStopMonth = input(1, "To Month")
testStopDay = input(1, "To Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

testPeriod() => true

if testPeriod()
    if buy_signal
        strategy.entry("Long", true)
    

    if sell_signal
        strategy.close("Long")

Más.