El nombre de esta estrategia es
Esta estrategia se basa principalmente en las señales indicadoras del Hull Moving Average y en las reglas de negociación periódica.
En primer lugar, durante la sesión de negociación todos los lunes, se abrirán posiciones largas si el precio de cierre está por debajo del promedio móvil de Hull de 115 períodos. En comparación con los promedios móviles comunes, el promedio móvil de Hull responde más rápido a los cambios de precios e identifica las tendencias de manera más sensible. Por lo tanto, las señales del indicador pueden mejorar la precisión de la entrada al mercado.
En segundo lugar, las posiciones se cerrarán incondicionalmente durante las sesiones de negociación todos los miércoles. Este enfoque de operación periódica puede evitar ser afectado por eventos contingentes y reducir la probabilidad de retirada. Mientras tanto, se establecen ratios fijos de stop-loss y objetivo de ganancia para controlar el riesgo y la recompensa de cada operación.
Por último, dado que cada período de mantenimiento de operaciones es relativamente corto y con mayor frecuencia de operaciones, puede ajustar las posiciones hasta cierto punto y disminuir el riesgo de operaciones individuales.
Esta estrategia tiene las siguientes ventajas:
El uso de Hull Moving Average como indicador de señal de entrada mejora la precisión de la entrada en el mercado y captura las oportunidades de tendencia.
El método de salida periódica puede evitar los riesgos de comportamientos irracionales y reducir la probabilidad de retirada.
El objetivo de ganancia fijo y los puntos de stop-loss pueden controlar la relación riesgo-recompensación de cada operación de manera efectiva.
Una alta frecuencia de negociación es beneficiosa para ajustar las posiciones y disminuir el riesgo de negociación única.
Las reglas de negociación son simples y fáciles de entender e implementar, lo que es adecuado para el comercio cuantitativo algorítmico.
Esta estrategia también tiene algunos riesgos:
La consolidación prolongada en el mercado puede dar lugar a una mayor probabilidad de quedar atrapados después de la entrada.
El objetivo de ganancia fijo y los puntos de stop-loss carecen de flexibilidad y pueden salir de la posición demasiado temprano o demasiado tarde.
La salida periódica puede conducir a pérdidas enormes si ocurren eventos contingentes.
El comercio frecuente aumenta el costo y la influencia del deslizamiento.
La configuración incorrecta de parámetros (como los números de período) puede afectar el rendimiento de la estrategia.
Algunas medidas de optimización pueden considerarse para reducir los riesgos anteriores:
Evaluar la situación del mercado antes de la entrada para evitar entrar en fases de consolidación.
Establecer coeficientes fijos dinámicos o múltiples para la obtención de beneficios y el stop-loss.
Suspenda las operaciones en torno a eventos significativos para evitar una volatilidad extrema.
Reducir la frecuencia de negociación adecuadamente para reducir los costes y el deslizamiento.
Optimizar la configuración de parámetros y hacer pruebas de robustez para hacer la estrategia más estable.
Esta estrategia puede optimizarse aún más en los siguientes aspectos:
Utilice modelos de aprendizaje automático para optimizar los parámetros de la media móvil dinámicamente para señales más precisas.
Intenta combinar varios indicadores para diseñar reglas de entrada y salida más complejas.
Diseñar mecanismos adaptativos de obtención de ganancias y de detención de pérdidas de acuerdo con diferentes períodos y entornos de mercado.
Incorporar modelos de gestión de riesgos para una mejor gestión del capital.
Diseñar el módulo de ajuste de derechos para manejar eventos como la división de acciones sin problemas.
Añadir un módulo de verificación de operaciones reales para probar el rendimiento de la estrategia en mercados en vivo.
Al combinar orgánicamente el aprendizaje automático, la cartera de indicadores, la toma de ganancias / stop-loss adaptativa, la gestión de riesgos y otros métodos, esta estrategia puede lograr una mayor estabilidad y rentabilidad. Mientras tanto, agregar mecanismos reales de verificación comercial también es importante para perfeccionar aún más la estrategia. Estas son las principales direcciones de optimización para esta estrategia.
Esta estrategia está diseñada sobre la base de las ideas de entrada de señal del indicador Hull Dynamic Moving Average y salida de ciclo fijo. Tiene ventajas como señales precisas y baja probabilidad de retirada, mientras controla la toma de ganancias y la parada de pérdidas de una sola operación. Pero también existen problemas como quedar atrapados y ajustes inadecuados de toma de ganancias / parada de pérdidas. Las direcciones de optimización futuras incluyen la introducción de aprendizaje automático y combinaciones de múltiples indicadores más complejas para la entrada, el diseño de mecanismos de toma de ganancias / parada de pérdidas adaptables, la adición de ajustes de derechos y módulos de verificación de operaciones reales, etc. Al adoptar de manera integral estas medidas, se mejorará la estabilidad y la rentabilidad de esta estrategia.
/*backtest start: 2024-01-18 00:00:00 end: 2024-02-17 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © gnatskiller //@version=5 strategy("Strategia HMA + LUN/MER", overlay=true) // Inputs: stoploss %, takeProfit % stopLossPercentage = input.float(defval=0.8, title='StopLoss %', minval=0.1, step=0.2) / 100 takeProfit = input.float(defval=1.5, title='Take Profit %', minval=0.3, step=0.2) / 100 // Calculate HMA 115 hma115 = ta.hma(close, 115) // Exit and Entry Conditions - Check current day, session time, and price below HMA 115 isLong = dayofweek == dayofweek.monday and not na(time(timeframe.period, "1000-1101")) and close < hma115 isExit = dayofweek == dayofweek.wednesday and not na(time(timeframe.period, "1000-1101")) // Calculate Stoploss and Take Profit values SL = strategy.position_avg_price * (1 - stopLossPercentage) TP = strategy.position_avg_price * (1 + takeProfit) // Strategy Enter, and exit when conditions are met if isLong strategy.entry("Enter Long", strategy.long) if strategy.position_size > 0 if isExit strategy.close("Enter Long", comment="Exit") strategy.exit("Exit", "Exit", stop=SL, limit=TP) // Plot Stoploss and TakeProfit lines plot(strategy.position_size > 0 ? SL : na, style=plot.style_linebr, color=color.red, linewidth=2, title="StopLoss") plot(strategy.position_size > 0 ? TP : na, style=plot.style_linebr, color=color.green, linewidth=2, title="TakeProfit") // Plot HMA 115 plot(hma115, color=color.blue, title="HMA 115")