Basado en la estrategia de cruce de medias móviles dobles


Fecha de creación: 2024-02-05 10:34:57 Última modificación: 2024-02-05 10:34:57
Copiar: 0 Número de Visitas: 602
1
Seguir
1617
Seguidores

Basado en la estrategia de cruce de medias móviles dobles

Descripción general

La estrategia de cruce de dos líneas de equilibrio es una estrategia de negociación cuantitativa más simple. Se realiza calculando el precio de cierre promedio de las 7 líneas de K más recientes y el precio de cierre promedio de las 20 líneas de K más recientes cuando la media corta cruza la media larga desde abajo y cuando la media corta cruza la media larga desde arriba hacia abajo, tomando este tipo de operaciones se puede capturar el punto de inflexión de la tendencia a mediano plazo del mercado.

Principio de estrategia

La lógica central de esta estrategia es calcular el precio de cierre promedio de los últimos 7 K lineas (sin incluir la línea K actual) como el promedio a corto plazo, y calcular el precio de cierre promedio de los últimos 20 K lineas (sin incluir las últimas 7 K lineas) como el promedio a largo plazo. Cuando el promedio a corto plazo atraviesa el promedio a largo plazo desde abajo, el mercado gana más; cuando el promedio a corto plazo atraviesa el promedio a largo plazo desde arriba, el mercado pierde más.

Después de hacer más señales de activación, abra más posiciones según la cantidad de fondos de toda la cuenta; después de que se active la señal de baja, apague las posiciones según la cantidad de posiciones y abra posiciones libres según esa cantidad. Cada posición después de la apertura tendrá una línea K de 20-25 líneas, durante la cual si se produce una pérdida, se detendrá la mitad de la posición, y si se produce suficiente ganancia, se detendrá la mitad de la posición.

Análisis de las ventajas estratégicas

Se trata de una estrategia muy sencilla de cruce bidireccional, cuyas ventajas son:

  1. La idea es simple, fácil de entender y de llevar a cabo.
  2. El punto de inflexión de la tendencia a mediano plazo del mercado se determina mediante el cálculo de la intersección de diferentes medias periódicas, un indicador técnico ampliamente utilizado en muchas estrategias de cuantificación.
  3. El objetivo de la plataforma es filtrar el ruido aleatorio en el mercado y captar tendencias a medio plazo.
  4. Esta estrategia es especialmente adecuada para el comercio de líneas medianas y largas, con posiciones de 20-25 líneas K por posición, para obtener mejores ganancias y pérdidas;
  5. Las estrategias incorporan mecanismos de stop-loss y de suspensión para controlar el riesgo y bloquear los beneficios.

Análisis de riesgos

Es una estrategia de seguimiento de tendencias más sencilla, pero con algunos riesgos potenciales:

  1. Cuando los mercados entran en zonas de oscilación, las líneas medias a corto plazo y medias a largo plazo pueden cruzarse varias veces, lo que puede conducir a falsas señales y exceso de operaciones.
  2. La posibilidad de que se desencadene un alto de pérdidas debido a una gran oscilación de la línea corta de precios durante la tenencia de la posición;
  3. No se puede determinar con precisión el punto de inflexión de la tendencia real del mercado, y las señales de negociación pueden retrasarse.

Los riesgos mencionados pueden ser optimizados de la siguiente manera:

  1. Aumentar las condiciones de filtración para determinar si el precio ha roto el soporte o la resistencia clave al cruzar la línea media para filtrar las señales falsas.
  2. Ajustar el ciclo de tenencia de posiciones y reducir el tiempo promedio de tenencia de posiciones por posición para controlar las pérdidas;
  3. Añadir otros indicadores técnicos, como indicadores de energía, indicadores de volatilidad, etc. para determinar el punto de inflexión real del mercado.

Dirección de optimización de la estrategia

Se trata de una estrategia de cruce bidireccional más sencilla, que se puede optimizar en profundidad en los siguientes aspectos:

  1. Optimización de los parámetros de la línea media, prueba de diferentes combinaciones de líneas medias a corto y largo plazo para encontrar el parámetro óptimo;

  2. La adición de otros indicadores de filtración, como los indicadores de energía, los indicadores de volatilidad, etc., para evitar la generación de señales erróneas en mercados convulsos;

  3. Optimización de las estrategias de stop loss, prueba de diferentes proporciones de stop loss y determinación de los parámetros óptimos.

  4. Probar diferentes ciclos de mercado para optimizar la duración de las posiciones y determinar cuáles son los ciclos en los que la estrategia funciona mejor.

  5. Aumentar los algoritmos de aprendizaje automático para optimizar continuamente los parámetros de la estrategia a través de pruebas en reversa, lo que la hace más estable.

Resumir

Esta estrategia es una estrategia de cruce de líneas biuniformes más simple, que determina los puntos de inflexión de tendencias a medio plazo calculando los cruces de líneas medianas de diferentes períodos. La estrategia es muy práctica, y la idea es fácil de manejar. Pero la estrategia también tiene ciertas limitaciones, y el principal problema es que no puede determinar eficazmente los puntos de inflexión reales del mercado.

Código Fuente de la Estrategia
/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nrathi2211

//@version=5
strategy("Closing Prices", overlay=true)

//variables
closingB7 = ta.highest(close, 7)[7]
closingB14 = ta.highest(close, 7)[20]
highB14 = ta.highest(low, 50)[7]
capital = 50000

//functions
qty_find(float price) => capital / int(price)

profit_take() =>
    profit = strategy.opentrades.profit(strategy.opentrades - 1)
    profit*.95 

if(closingB7 < closingB14)
    if(ta.crossover(close, closingB7))
        strategy.entry("long_buy", strategy.long, qty_find(close))

    current_profit = strategy.opentrades.profit(strategy.opentrades - 1)
    if(current_profit < 0)
        strategy.close("Exit long_buy SL", "long_buy", qty_percent = 50)
    
    else if(current_profit < profit_take())
        strategy.close("Exit long_buy TP", "long_buy", qty_percent = 50)
    
    if(ta.crossunder(close, closingB7))
        strategy.exit("long_sell", from_entry = "long_buy", stop = closingB7)

plot(closingB7, "cl", color.green, 2)
//plot(closingB14, "cl", color.red, 2)
plot(highB14, "cl", color.purple, 2)