Estrategia de trading cuantitativo basada en el cruce de medias móviles


Fecha de creación: 2024-01-23 11:05:50 Última modificación: 2024-01-23 11:05:50
Copiar: 0 Número de Visitas: 505
1
Seguir
1617
Seguidores

Estrategia de trading cuantitativo basada en el cruce de medias móviles

Descripción general

Esta estrategia se construye utilizando el principio de la horca dorada de la media móvil simple (SMA). La estrategia utiliza la horca dorada de la línea 3 y la línea 5 como señal de entrada, para detener o detener la salida.

Principio de estrategia

La estrategia se basa principalmente en dos SMA, la línea 3 y la línea 5. La línea 3 representa la tendencia a corto plazo y la línea 5 representa la tendencia a largo plazo. Cuando la línea 3 sube rápidamente en el corto plazo, cruzando la línea 5 en el corto plazo, representa el momento en que está en alza, y se hace una entrada más; por el contrario, cuando la línea 3 baja rápidamente en el corto plazo, cruzando la línea 5 en el corto plazo, representa el momento en que está en baja, y se hace una entrada en blanco.

Análisis de las ventajas

La estrategia tiene las siguientes ventajas:

  1. La lógica de la estrategia es simple y clara, fácil de entender e implementar.
  2. La estrategia de cruce de línea media es más precisa en el juicio de las grandes tendencias del mercado y tiene una alta probabilidad de entrada.
  3. Si se elige el promedio de dos períodos diferentes, se puede entender mejor el cambio en el mercado.
  4. La aplicación de un mecanismo de detención de pérdidas para controlar las pérdidas.

Análisis de riesgos

La estrategia también tiene ciertos riesgos:

  1. Debido a que se utiliza un ciclo de medias más corto, es susceptible a las fluctuaciones a corto plazo en el mercado, lo que puede aumentar la probabilidad de pérdidas.
  2. Las estrategias son más mecánicas y no pueden adaptarse a situaciones especiales del mercado.
  3. Sin tomar en cuenta las tendencias de los grandes ciclos, la estrategia puede sufrir grandes pérdidas en un mercado bajista a largo plazo.

Para reducir el riesgo, se puede considerar optimizar la selección de la línea media de entrada, o agregar el juicio auxiliar de la línea media de largo período. Al mismo tiempo, también se puede ajustar el punto de parada de la parada para que se adapte más a la situación real del mercado.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Aumentar el promedio de más ciclos diferentes, formar filtraciones de varios niveles y mejorar la estabilidad de las estrategias.
  2. Acompañar a otros indicadores técnicos, como el MACD, el indicador de debilidad, etc., para ayudar a la admisión.
  3. La inclusión en el juicio de las grandes tendencias del ciclo evita que los inversores sigan invirtiendo en el largo período de descenso.
  4. Optimizar el punto de parada para que se adapte mejor a las fluctuaciones reales del mercado.
  5. Prueba de un ciclo de respuesta más largo para evaluar la estabilidad de los parámetros.

Resumir

Esta estrategia se basa en el principio de cruce de línea uniforme, adopta la lógica de la estrategia de entrada de la horca de oro, parada de parada y salida de pérdida, es simple y fácil de implementar, y el rendimiento de la retroalimentación es más estable. Mediante la adición de más indicadores técnicos auxiliares, parámetros de optimización y medidas como la ampliación del alcance de la retroalimentación, se puede mejorar aún más la estabilidad de la estrategia y el nivel de rentabilidad. En general, la estrategia de línea uniforme tiene una buena adaptabilidad al mercado y merece más investigación y aplicación.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 5h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Revolut v1.0", overlay=true)

// === GENERAL INPUTS ===
ATR = atr(3)
ema3 = ema(close, 3)
ema5 = ema(close, 5)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true// create function "within window of time"


// === PLOTTING ===
plot(ema3, title="Ema 3", color = white, linewidth = 2, transp=0)
plot(ema5, title="Ema 5", color = aqua, linewidth = 2, transp=0)



// === ENTRY POSITION LOGIC ===
entryCondition = crossover(ema(close, 3), ema(close, 5))
if (entryCondition)
    strategy.entry("ENTRY", strategy.long, when=window())
    

// === EXIT POSTION LOGIC ===
//strategy.exit("Take Profit", "ENTRY", profit=6, loss=5, when=window())
strategy.exit("Take Profi Or STOP", "ENTRY", profit = 6, loss = 5, when=window())
  

// #####################################
// We can start to incorperate this into the script later
// We can program a emergency exit price
//strategy.close_all()

// You can use this if you want another exit
//strategy.exit("2nd Exit", "ENTRY", profit=1500, stop=500, when=window())