Estrategia de negociación cuantitativa basada en medias móviles de puntos altos y bajos

El autor:¿ Qué pasa?, Fecha: 2023-09-19 15:53:55
Las etiquetas:

Resumen general

Esta estrategia utiliza promedios móviles simples de puntos altos y puntos bajos en comparación con el precio de cierre actual para determinar entradas y salidas.

Estrategia lógica

  1. Calcule la media móvil simple de los precios altos de 4 períodos.

  2. Calcular la media móvil simple de precios bajos de 4 períodos.

  3. Ir largo cuando el precio de cierre se rompe por encima del punto SMA más alto.

  4. Ir corto cuando el precio de cierre se rompe por debajo del punto bajo SMA.

  5. Utilice stop loss fijo y tome ganancias para la gestión de riesgos.

Análisis de ventajas

  1. Utiliza indicadores sencillos, fáciles de entender e implementar.

  2. El tiempo captura las señales de ruptura de precios de los cruces de SMA.

  3. Puede filtrar rápidamente el ruido e identificar tendencias.

  4. Los cálculos ligeros reducen los gastos generales de la estrategia.

  5. Adecuado como estrategia de base para las extensiones.

Análisis de riesgos

  1. Se requieren parámetros razonables para evitar la hipersensibilidad.

  2. Incapaz de manejar los riesgos de las grandes fugas.

  3. Posibilidades de pérdidas de la sierra en los rangos.

  4. No puede ajustar automáticamente las paradas y límites.

  5. Es difícil juzgar el contexto de tendencia a largo plazo.

Direcciones de optimización

  1. Prueba de diferentes parámetros para determinar el impacto en la calidad de la señal.

  2. Añadir filtros para validar la eficacia de las fugas.

  3. Incorpore análisis de tendencias para evitar trampas.

  4. Desarrollar paradas y límites dinámicos.

  5. Optimice las paradas para mejorar la tasa de ganancias.

  6. Prueba de robustez en diferentes plazos.

Resumen de las actividades

Esta estrategia utiliza indicadores simples para medir el impulso de los precios y proporciona un marco básico de trading de tendencias. Con mejoras adicionales como la optimización de parámetros y los controles de riesgos, la lógica de trading es altamente extensible en un sistema cuantitativo robusto.


/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-13 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("HiLo", overlay=true)

// Testing a specific period
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false


//HiLo Strategy
length = input(4, minval=0)
displace = input(0, minval=0)
highsma = sma(high, length)
lowsma = sma(low, length)

longCondition = close > highsma[displace]
if (longCondition)
    strategy.entry("long", true)

shortCondition = close < lowsma[displace]
if (shortCondition)
    strategy.entry("short", false)

// Exit seems with a problem. it keeps saying the order's limit (2000) was reached even if I back test it just for a day. 
// If the two lines bellow are commented, then it it works. Anyone? Any idea what's wrong?

// strategy.exit("exit", "long", profit=10, loss=5)
// strategy.exit("exit", "short", profit=10, loss=5)






    

Más.