Estrategia de media móvil larga y corta


Fecha de creación: 2023-10-09 16:00:02 Última modificación: 2023-10-09 16:00:02
Copiar: 0 Número de Visitas: 617
1
Seguir
1617
Seguidores

Descripción general

Esta estrategia se basa en una estrategia multivariable de medias móviles. Utiliza 3 medias móviles de diferentes parámetros para generar señales de negociación.

Principio de estrategia

La estrategia utiliza la función sma para calcular el promedio móvil de la longitud de len, ma. Luego, se calcula el promedio móvil de una proporción determinada de 3 desplazamientos en función de ma: longline1, longline2, longline3. Donde longline1 desplaza -4%, longline2 desplaza -5%, y longline3 desplaza -6%.

En la generación de señales de compra, si no hay posición en ese momento, abra más posiciones cuando el precio atraviese la línea larga 1; si ya tiene una posición de una mano, abra otra mano cuando el precio atraviese la línea larga 2; si ya tiene una posición de dos manos, abra otra mano cuando el precio atraviese la línea larga 3, mantenga hasta tres posiciones adicionales.

En la generación de señales de venta, si se tiene una posición en exceso en ese momento, y una posición baja cuando el precio está por debajo de ma.

La estrategia puede hacer más para lograr un efecto de seguimiento de tendencias mediante la clasificación por lotes.

Ventajas estratégicas

  • El uso de promedios móviles para determinar la dirección de la tendencia puede filtrar el ruido del mercado y estabilizar los beneficios
  • Hacer más deuda libre en lotes puede ser más rentable en una tendencia
  • El promedio móvil plano como punto de entrada para una mejor comprensión de las tendencias
  • Las retiradas son relativamente pequeñas, y las retiradas máximas se controlan en alrededor del 20%

Riesgo estratégico

  • La estrategia es puramente tendencial, y es fácil de encierrar en el momento de la liquidación.
  • Las medias móviles generan un retraso en la señal y pueden perder el punto de cambio de tendencia
  • Los grupos son más fáciles de perseguir y matan con mayor riesgo.
  • No hay una estrategia para detener el daño, lo que puede causar grandes pérdidas en caso de emergencia

La solución al riesgo:

  • Se pueden agregar otros indicadores para determinar puntos de cambio de tendencia
  • Configurar los parámetros de las medias móviles de manera razonable, no demasiado larga, o la señal se retrasará demasiado
  • Reducir adecuadamente el número de lotes excedentes para evitar la persecución
  • Aumentar el stop móvil para controlar las pérdidas

Dirección de optimización de la estrategia

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Añadir otros indicadores para determinar la dirección de la tendencia, por ejemplo, agregar el MACD para determinar la fuerza de la tendencia

  2. Optimización de los parámetros de la media móvil para encontrar la combinación óptima de parámetros

  3. El número y proporción de matanza excesiva en lotes para evitar la persecución

  4. Se añade un mecanismo móvil de stop loss que permite establecer el stop loss en función del ATR

  5. Se puede ajustar el número de posiciones en función de la fluctuación dinámica de la tasa de mercado y reducir las posiciones en caso de gran fluctuación

  6. Probar el efecto de los diferentes parámetros de variedad para encontrar la variedad más adecuada para la estrategia

  7. Desarrollo de un módulo de Exit para considerar la salida de la barra de frenado en determinadas formas

Resumir

En general, la estrategia utiliza la media móvil para determinar la dirección de la tendencia y, a través de la clasificación por lotes, se puede seguir la tendencia para obtener ganancias. Sin embargo, existe un cierto retraso y riesgo de seguimiento. Se puede optimizar la estrategia mediante la adición de indicadores de juicio auxiliares, parámetros de optimización, ajuste de la gestión de la posición, aumento de mecanismos de detención de pérdidas, etc., para que pueda adaptarse a diferentes condiciones del mercado y lograr un efecto de ganancias estables y controlables.

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

//Noro
//2019

//@version=4
strategy(title = "Noro's ShiftMA-multi Strategy v1.0", shorttitle = "ShiftMA-multi", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 3)

//Settings
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot")
len = input(3, minval = 1, title = "MA Lenghs")
src = input(ohlc4, title = "MA Source")
longlevel1 = input(-4.0, title = "Long line 1")
longlevel2 = input(-5.0, title = "Long line 2")
longlevel3 = input(-6.0, title = "Long line 3")
needoffset = input(true, title = "Offset")

//Variables
size = strategy.position_size
mult = 1 / syminfo.mintick

//MA
ma = sma(src, len)
longline1 = round(ma * ((100 + longlevel1) / 100) * mult) / mult
longline2 = round(ma * ((100 + longlevel2) / 100) * mult) / mult
longline3 = round(ma * ((100 + longlevel3) / 100) * mult) / mult

//Lines
offset = needoffset ? 1 : 0
plot(ma, color = color.blue)
plot(longline1, offset = offset, color = color.lime)
plot(longline2, offset = offset, color = color.lime)
plot(longline3, offset = offset, color = color.lime)

//Trading
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
lots = 0.0
if ma > 0
    lots := round(size / lot)
    strategy.entry("L1", strategy.long, lot, limit = longline1, when = (lots == 0))
    lots := round(size / lot)
    strategy.entry("L2", strategy.long, lot, limit = longline2, when = (lots <= 1))
    lots := round(size / lot)
    strategy.entry("L3", strategy.long, lot, limit = longline3, when = (lots <= 2))
if size > 0
    strategy.entry("TP", strategy.short, 0, limit = ma)