Estrategia de avance de oscilación basada en la media móvil

El autor:¿ Qué pasa?, Fecha: 2024-01-23 15:13:31
Las etiquetas:

img

Resumen general

La estrategia se llama Oscillation Breakthrough Strategy Based on Moving Average. Calcula las líneas de promedio móvil de diferentes ciclos de precios para determinar si los precios rompen los promedios móviles clave para el comercio largo y corto. Cuando el promedio móvil a corto plazo rompe el promedio móvil a largo plazo, vaya largo. Cuando el promedio móvil a corto plazo cae a través del promedio móvil a largo plazo, vaya corto.

Principio de la estrategia

El promedio móvil es una herramienta analítica comúnmente utilizada en el análisis técnico. Limpia los datos de precios filtrando las fluctuaciones de precios a corto plazo (ruido) y refleja la dirección de tendencia principal de los precios. El promedio móvil rápido refleja las tendencias de precios a corto plazo, mientras que el promedio móvil lento refleja las tendencias de precios a largo plazo.

Esta estrategia utiliza este principio estableciendo dos promedios EMA con parámetros diferentes, uno a corto plazo como la línea rápida y uno a largo plazo como la línea lenta. La estrategia establece EMA con longitudes de 9 y 26 para calcular la línea de conversión y la línea de base. Cuando la EMA a corto plazo cruza por encima de la EMA a largo plazo, ir largo, lo que indica que el precio a corto plazo es más alto que el precio a largo plazo, una señal alcista. Cuando la EMA a corto plazo cruza por debajo de la EMA a largo plazo, ir corto, lo que indica que el precio a corto plazo es más bajo que el precio a largo plazo, una señal bajista.

Por lo tanto, esta estrategia evalúa los posibles puntos de reversión de los precios a través de avances de EMAs rápidos y lentos con el fin de captar oportunidades de tendencia a corto plazo de los precios.

Análisis de las ventajas

  • Utilizar indicadores fiables basados en la teoría de la media móvil para determinar los puntos de inversión de precios
  • Sencillo de entender e implementar basado en indicadores básicos
  • Parámetros flexibles para el ajuste y la optimización de diferentes productos
  • Opción para abrir sólo posiciones durante horas de negociación específicas para evitar riesgos durante la noche
  • Busca puntos de avance más claros para aumentar la tasa de ganancia

Análisis de riesgos y soluciones

  • Tendencia a múltiples pequeñas pérdidas por operaciones de ida y vuelta
    Puede aflojar adecuadamente el rango de stop loss, esperar una clara señal de reversión antes de ingresar posiciones

  • Para las existencias de baja liquidez, pueden producirse brechas de precios o precios inconsistentes Los parámetros se pueden optimizar, ajustar los parámetros del ciclo de media móvil, el comercio con parámetros optimizados

  • Es fácil obtener señales falsas en mercados agitados. Puede combinarse con otros indicadores para la confirmación antes de entrar en posiciones

  • Capacidad limitada para manejar situaciones de mercado complejas con indicadores simples de medias móviles Puede introducir otros indicadores técnicos para mejorar la toma de decisiones en puntos clave

Direcciones de optimización

Esta estrategia también puede optimizarse en los siguientes aspectos:

  1. Añadir un mecanismo de dimensionamiento de la posición para controlar el riesgo de posición con la adición/reducción

  2. Añadir un mecanismo de stop loss para controlar eficazmente las pérdidas por operación

  3. Incorporar el volumen de negociación, los indicadores de volumen para evitar falsas rupturas de precios

  4. Añadir predicción del modelo, utilizar el aprendizaje automático, etc. para predecir la probabilidad de reversión de precios, mejorar las decisiones

  5. Utilice el aprendizaje profundo para simular la lógica de toma de decisiones del comerciante profesional y seleccione señales en puntos de alta probabilidad de reversión

Resumen de las actividades

Esta es una estrategia de reversión de promedio a corto plazo basada en indicadores de promedio móvil. Los parámetros personalizables proporcionan una buena flexibilidad. Aunque se utilizan indicadores simples, se puede adaptar bien a los entornos del mercado a través del ajuste de parámetros. La estrategia tiene como objetivo capturar oportunidades de arbitraje de reversiones de precios a corto plazo. Al introducir mecanismos como el tamaño de la posición, stop loss, etc., los riesgos se pueden gestionar de manera efectiva para mejorar la estabilidad.


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Juiced Ichimoku Strat", overlay=true)

USE_TRADESESSION = input(title='Use Trading Session?', type=bool, defval=true)
trade_session = input(title='Trade Session:', defval='0800-1600', confirm=false)
istradingsession = not USE_TRADESESSION ? false : not na(time('1', trade_session))
bgcolor(istradingsession?gray:na)

varLo = input(title="Fast (Conversion) Line",  defval=9, minval=1, maxval=99999)
varHi = input(title="Slow (Base) Line",  defval=26, minval=1, maxval=99999)
emafreq = input(title="Ema on price frequency",  defval=2, minval=1, maxval=99999)

a = lowest(varLo)
b = highest(varLo)
c = (a + b ) / 2

d = lowest(varHi)
e = highest(varHi)
f = (d + e) / 2

//g = ((c + f) / 2)[varHi]
//h = ((highest(varHi * 2) + lowest(varHi * 2)) / 2)[varHi]

z = ema(close, emafreq)

bgcolor(z > c and z > f ? green : z < c and z < f ? red : yellow, transp=70)
plot(z, title="ema on Price", color=black)
plot(c, title="Fast (Conversion) Line", color=green)
plot(f, title="Slow (Base) Line", color=red)

long = z > c and z > f and (USE_TRADESESSION ? istradingsession : true)
short = z < c and z < f and (USE_TRADESESSION ? istradingsession : true)
//exit = z < c and z > f or z > c and z < f

closelong = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closelong)
    strategy.close("Long")
closeshort = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closeshort)
    strategy.close("Short")
strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)




Más.