Estrategia de cruce de medias móviles exponenciales


Fecha de creación: 2023-10-17 16:55:10 Última modificación: 2023-10-17 16:55:10
Copiar: 0 Número de Visitas: 719
1
Seguir
1617
Seguidores

Estrategia de cruce de medias móviles exponenciales

Descripción general

Se trata de una estrategia de trading automática basada en el cruce de medias móviles de índices de dos períodos de tiempo diferentes. Utiliza indicadores técnicos simples y es muy adecuada para el aprendizaje y la práctica de los principiantes.

El principio

La estrategia utiliza dos promedios móviles exponenciales, uno es el promedio del período de tiempo mayor y otro es el promedio del período actual. Cuando el promedio del período actual atraviesa el promedio del período mayor, se hace más; cuando el promedio del período actual atraviesa el promedio del período mayor, se hace menos.

En concreto, la estrategia comienza por definir dos parámetros de línea media:

  1. tf - ciclo de tiempo grande, línea de sol por defecto
  2. len - longitud del ciclo de la línea media, 3 por defecto

Luego se calculan los dos EMA:

  1. ma1 - EMA de 3 días en la línea de sol de gran ciclo
  2. ma2 - EMA del día 3 del ciclo actual

Por último, la lógica de las transacciones:

  • Cuando ma2 > ma1, hacer más.
  • Cuando ma2 < ma1, hacer espacio

De esta manera, se puede determinar la dirección de la tendencia a través de la intersección de las líneas medias de diferentes períodos de tiempo para realizar operaciones automáticas.

Las ventajas

La estrategia tiene las siguientes ventajas:

  1. El principio es simple, fácil de entender y de implementar, muy adecuado para el aprendizaje de los principiantes.
  2. El comercio en curso, siguiendo la tendencia, puede obtener mejores ganancias.
  3. El uso de medias móviles de índices es más sensible a los cambios en los precios y permite capturar los giros de tendencia a tiempo.
  4. La combinación de diferentes líneas medias periódicas puede aprovechar sus ventajas para mejorar la estabilidad del sistema.
  5. No requiere demasiados parámetros, es fácil de probar y optimizar, y es fácil de operar en disco duro.

El riesgo

La estrategia también tiene sus riesgos:

  1. La tendencia de seguimiento es débil, y puede ser que se encuentre en la cárcel debido a la oscilación de los mercados.
  2. El retraso en el cruce de dos líneas equiláteras puede haber dejado pasar algunas oportunidades.
  3. No se puede filtrar eficazmente el desorden de la línea recíproca de dos rectas.
  4. El mercado de la información es un mercado de la información que se basa en un simple promedio y no se adapta a un mercado complejo.

Se puede reducir el riesgo mediante la configuración de stop loss, la optimización de la combinación de parámetros o la adición de otros indicadores.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Prueba los diferentes parámetros de la línea media periódica grande para encontrar la combinación óptima.
  2. Se han incrementado los filtros de los indicadores de tráfico para evitar falsas señales.
  3. Combinado con indicadores de tendencia, mejora la fuerza de la posición y la eficiencia de la operación.
  4. Establezca un punto de parada de adaptación para controlar las pérdidas individuales.
  5. Optimización de la gestión de posiciones, ajustando el tamaño de las posiciones según el mercado.
  6. El objetivo de este proyecto es mejorar la inteligencia de las estrategias mediante la incorporación de modelos de aprendizaje automático.

Resumir

La estrategia de la media móvil cruzada utiliza un indicador simple para capturar tendencias y es adecuada para la práctica de aprendizaje de principiantes. El espacio de optimización es grande y se puede introducir más indicadores y modelos técnicos para mejorar y desarrollar estrategias de comercio cuantitativo con mayor eficacia.

Código Fuente de la Estrategia
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Noro's Singapore Strategy", shorttitle = "Singapore str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot")
tf = input("D", title = "Big Timeframe")
len = input(3, minval = 1, title = "MA length")
src = input(close, title = "MA Source")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//MAs
ma1 = request.security(syminfo.tickerid, tf, sma(src, len))
ma2 = sma(src, len)
plot(ma1, linewidth = 2, color = blue, title = "Big TF MA")
plot(ma2, linewidth = 2, color = red, title = "MA")

//Trading
size = strategy.position_size
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]

if ma2 > ma1
    strategy.entry("L", strategy.long, needlong ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if ma2 < ma1
    strategy.entry("S", strategy.short, needshort ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59)
    strategy.close_all()