El propósito de esta estrategia es predecir el precio de cierre del próximo candelero de 15 minutos mediante el análisis de los precios de apertura y cierre de los últimos dos candeleros de 30 minutos.
La lógica central de esta estrategia radica en la función predictNextCandleClose. Esta función toma los precios de apertura y cierre de las dos velas de 30 minutos anteriores como parámetros de entrada.
Si el precio de cierre de la última vela de 30 minutos es mayor que el precio de apertura, se juzga como una tendencia alcista. Si el precio de cierre es menor que el precio de apertura, se juzga como una tendencia bajista. Si la segunda vela de los últimos 30 minutos también muestra la misma tendencia alcista o bajista, se considera que la tendencia es más fuerte y la próxima vela de 15 minutos probablemente continuará la tendencia.
Específicamente, si ambos de los dos candeleros de 30 minutos más recientes son alcistas (el precio de cierre es mayor que el precio de apertura), el precio de cierre previsto del siguiente candelero de 15 minutos será mayor que el precio de cierre del candelero actual por la diferencia entre el precio de cierre y el precio de apertura del último candelero de 30 minutos.
Si ambos de los dos candelistas de 30 minutos más recientes son bajistas (el precio de cierre es inferior al precio de apertura), el precio de cierre previsto del próximo candelero de 15 minutos será inferior al precio de cierre del candelero actual por la diferencia entre el precio de apertura y el precio de cierre del último candelero de 30 minutos.
Si una de las dos velas de 30 minutos más recientes es alcista y la otra bajista, indica que no hay una tendencia clara, y en este caso el precio de cierre previsto de la próxima velas de 15 minutos será el mismo que el precio de cierre de la última velas de 30 minutos.
De esta manera, predice el movimiento de los precios a corto plazo en el futuro basado en la información de las velas pasadas, sirviendo de referencia para las decisiones comerciales.
Esta estrategia de predicción de doble candelero tiene las siguientes ventajas:
Es simple, intuitivo y fácil de entender e implementar, adecuado para principiantes en el comercio de cantidades.
Al juzgar la tendencia usando dos candelabros, puede filtrar algo de ruido y mejorar la precisión.
La predicción del nivel de 15 minutos tiene un corto lapso de tiempo, lo que ayuda a ajustar las posiciones de manera oportuna.
Combinado con el precio actual y el precio previsto para determinar las señales comerciales, puede responder rápidamente a eventos inesperados.
Requiere menos datos históricos, lo que reduce las necesidades de datos y lo hace adecuado para datos incompletos o escenarios de negociación en vivo.
Sin embargo, esta estrategia también presenta algunos riesgos:
Solo considera los precios de apertura y cierre, careciendo de más detalles de candeleros como juicio auxiliar, por lo que puede perder señales importantes.
El intervalo entre los dos candeleros es largo, incapaz de responder oportunamente a las fluctuaciones de precios a corto plazo, lo que plantea riesgos de retraso en el tiempo.
La predicción se basa únicamente en datos históricos, incapaces de juzgar el impacto de eventos significativos e inesperados, con mayores riesgos.
Las reglas alcista/bajista son bastante simples, propensas a generar señales falsas y la calidad de la señal necesita mejora.
Los datos reales de negociación a menudo presentan lagunas, lo que también podría interferir con la exactitud de la lógica de juicio.
A la luz de los riesgos anteriores, la estrategia puede optimizarse en los siguientes aspectos:
Añadir más indicadores auxiliares como MACD, KD, etc. para mejorar la precisión de la predicción.
Combine más detalles de candelabros como sombras, cuerpo real, etc. para determinar los niveles críticos de precios y refinar las reglas alcista / bajista.
Aumentar el tamaño de la muestra, ampliar el rango de tiempo de los candelabros de juicio para evitar interferencias de ruidos a corto plazo.
Agregue mecanismos de stop loss como stop loss móvil, stop loss cronometrado, etc. para controlar la pérdida de una sola operación.
Optimizar las reglas de entrada para que solo se abran posiciones cuando la tendencia sea clara, evitando las fluctuaciones inciertas del mercado.
Backtest con datos comerciales reales, modificar la lógica que no coincide con los movimientos reales de precios para hacer que los parámetros de la estrategia más cerca del mercado real.
Esta estrategia predice tendencias a corto plazo mediante el análisis de los precios de apertura y cierre de las velas duales, y genera señales comerciales basadas en ella. Pertenece a las estrategias predictivas basadas en datos históricos. La estrategia es simple y fácil de usar, adecuada para principiantes en el comercio de cantidades, pero también tiene riesgos como reglas de juicio relativamente simples y calidad de señal limitada. Podemos optimizarla en aspectos como indicadores auxiliares, detalles de las velas, mecanismos de stop loss, etc. para mejorar el rendimiento práctico. En resumen, la estrategia de predicción de velas duales nos proporciona un esquema básico que vale la pena optimizar e iterar.
/*backtest start: 2023-01-19 00:00:00 end: 2024-01-25 00:00:00 period: 1d basePeriod: 1h 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/ // © Sosawolf //@version=5 strategy("Predict Next Candle Close Strategy", overlay=true) // Function to predict next candle close based on previous two candles predictNextCandleClose(open1, close1, open2, close2) => if close1 > open1 and close2 > open2 // Bullish trend, predict next candle close to be bullish close1 + (close1 - open1) else if close1 < open1 and close2 < open2 // Bearish trend, predict next candle close to be bearish close1 - (open1 - close1) else // Indecisive or ranging market, predict next candle close to be neutral close1 // Get previous two 30-minute candles' open and close prices open1 = request.security(syminfo.tickerid, "30", open[1]) close1 = request.security(syminfo.tickerid, "30", close[1]) open2 = request.security(syminfo.tickerid, "30", open[2]) close2 = request.security(syminfo.tickerid, "30", close[2]) // Predict next 15-minute candle close predictedClose = predictNextCandleClose(open1, close1, open2, close2) // Plot the predicted close as a line plot(predictedClose, color=color.blue, linewidth=2, title="Predicted Close") // Buy condition: Predicted close is higher than the current close buyCondition = predictedClose > close strategy.entry("Buy", strategy.long, when=buyCondition) // Sell condition: Predicted close is lower than the current close sellCondition = predictedClose < close strategy.entry("Sell", strategy.short, when=sellCondition)