Esta estrategia calcula los precios más altos y más bajos de cada día, combinados con los niveles de retroceso de Fibonacci, para encontrar oportunidades comerciales de avance dentro del día de negociación actual.
La lógica central de esta estrategia es la siguiente:
Registre el día de precio más alto y el día de precio más bajo del día en el mercado abierto cada día.
Calcule dos niveles de retroceso de Fibonacci de 0,236 y 0,786:
fib236Alto = díaBajo + 0,236 * (díaAlto - díaBajo)
fib786Alto = díaBajo + 0,786 * (díaAlto - díaBajo)
Si el precio de cierre rompe el díaAlto hacia arriba, se genera una señal de compra; si el precio de cierre rompe el díaBajo hacia abajo, se genera una señal de venta.
Tome las estrategias alcistas o bajistas correspondientes de acuerdo con las señales de compra y venta.
Esta estrategia combina ingeniosamente el precio más alto, el precio más bajo y los niveles de Fibonacci para encontrar oportunidades comerciales cuando ocurren avances durante el día.
Las principales ventajas de esta estrategia son las siguientes:
Alta frecuencia de negociación intradiaria para capturar los avances de precios durante las sesiones de negociación del mediodía.
Con cierto apoyo de indicadores técnicos del retroceso de Fibonacci, no es simplemente perseguir nuevos máximos o nuevos mínimos.
El uso de los precios más altos y más bajos como niveles de referencia tiene cierta fuerza de apoyo.
La lógica de negociación es simple y clara, fácil de entender e implementar, adecuada para el comercio cuantitativo.
La visualización del precio más alto, el precio más bajo y los niveles de Fibonacci es configurable para el análisis visual.
Esta estrategia también presenta algunos riesgos:
Las operaciones intradiarias frecuentes pueden aumentar los costes de transacción y los riesgos de deslizamiento.
Las rupturas intradiarias pueden ser rupturas falsas, con el riesgo de recibir señales alcistas o bajistas equivocadas.
No hay una lógica de stop loss, con el riesgo de expandir las pérdidas.
Se basa en un enfoque puramente técnico sin combinar el análisis fundamental.
Contramedidas:
Ajustar adecuadamente el tamaño de la posición para reducir el impacto en los costes.
Combine más indicadores técnicos para filtrar las falsas señales de fuga.
Aumentar las estrategias de stop loss móviles para controlar pérdidas individuales.
Combinar el análisis de datos fundamentales para evitar los efectos de las inversiones del mercado.
Las principales direcciones de optimización de esta estrategia:
Aumentar la combinación de múltiples indicadores técnicos para mejorar la fiabilidad de la señal.
Añadir estrategias automáticas de stop loss para controlar las pérdidas.
Optimizar los parámetros de la estrategia de compra y venta, ajustar la gestión de posiciones.
Basado en factores de alta frecuencia, combinar volatilidad, relación de volumen y otras señales de filtrado.
Utilice métodos de aprendizaje automático para encontrar mejores combinaciones de parámetros.
Establecer un mecanismo de salida dinámico, en lugar de un simple cruce de los precios más altos o más bajos.
Esta estrategia de Fibonacci es relativamente simple, se beneficia capturando avances a corto plazo de los niveles de precios.
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Day High/Low Fibonacci Levels Strategy", shorttitle="DHL Fibonacci", overlay=true) // Calculate the day's high and low var float dayHigh = na var float dayLow = na if change(time("D")) dayHigh := high dayLow := low // Define input for plotting lines showLines = input(true, title="Show Day High/Low Lines") showFibLevels = input(true, title="Show Fibonacci Levels") // Plot the day's high and low as lines plot(showLines ? dayHigh : na, color=color.green, style=plot.style_line, linewidth=1, title="Day High") plot(showLines ? dayLow : na, color=color.red, style=plot.style_line, linewidth=1, title="Day Low") // Calculate buy and sell conditions buyCondition = crossover(close, dayHigh) sellCondition = crossunder(close, dayLow) // Plot buy and sell signals plotshape(buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal") // Calculate Fibonacci levels for the day's high and low fib236High = dayLow + (0.236 * (dayHigh - dayLow)) fib786High = dayLow + (0.786 * (dayHigh - dayLow)) // Plot Fibonacci levels plot(showFibLevels ? fib236High : na, color=color.blue, style=plot.style_line, linewidth=1, title="Fib 0.236 Day High") plot(showFibLevels ? fib786High : na, color=color.purple, style=plot.style_line, linewidth=1, title="Fib 0.786 Day High") // Strategy strategy.entry("Buy", strategy.long, when=buyCondition) strategy.close("Buy", when=sellCondition)