Este artículo analiza principalmente una estrategia de negociación cuantitativa llamada
La lógica central de esta estrategia es la siguiente:
Específicamente, la estrategia primero define el parámetro p como el parámetro del ciclo para calcular el indicador RSI, y r como el intervalo de tiempo para predecir cambios futuros de precios. Luego, dentro del ciclo p, cuente el número de veces que el precio de cierre aumenta para calcular la distribución de probabilidad A. Al mismo tiempo, dentro del ciclo p, cuente el número de veces que el RSI continúa aumentando dentro del ciclo r después de que este ciclo termine, y calcule la distribución de probabilidad B.
Luego, aplicar la fórmula bayesiana para calcular la probabilidad de que las dos condiciones de
De esta manera, la estrategia considera de manera integral la información de precios e indicadores técnicos, aplica estadísticas de probabilidad y reglas bayesianas para juzgar las tendencias futuras y generar señales comerciales.
Las principales ventajas de esta estrategia son las siguientes:
Combinar información múltiple: La estrategia considera no sólo la información de precios, sino también la información de indicadores técnicos como el RSI para evaluar de manera exhaustiva las tendencias futuras y mejorar la precisión del juicio.
Pronóstico de probabilidad: hacer predicciones de probabilidad sobre la dirección de los cambios de precios y RSI a través de la distribución de probabilidad estadística, en lugar de una simple comparación numérica, haciendo el juicio más científico.
Optimización bayesiana: Utilice reglas bayesianas para calcular probabilidades relevantes y optimizar las probabilidades estadísticas originales para hacer juicios más precisos.
Parámetros flexibles: Proporcionar múltiples parámetros de ajuste y optimización para adaptarse a diferentes mercados y activos y mejorar la adaptabilidad de la estrategia.
Sencillo y eficaz: La idea de la estrategia es clara y se utilizan operaciones estadísticas y de probabilidad simples para generar juicios de señales comerciales, que son fáciles de entender y optimizar, y el efecto es significativo.
Los principales riesgos de esta estrategia también incluyen:
Dependencia del parámetro: El rendimiento depende en gran medida de la configuración de parámetros. Los diferentes mercados necesitan ajustar muchos parámetros para lograr resultados óptimos, aumentando la complejidad de la operación de la estrategia.
Error de probabilidad: Debido a la limitación del tiempo estadístico y de las muestras, la probabilidad calculada puede no coincidir con la tendencia real, lo que conduce a una desviación de juicio.
Eventos especiales: Las emergencias mayores pueden afectar a la correlación entre los precios de mercado y los indicadores del RSI, causando el fracaso de la estrategia.
Fallo del indicador técnico: En algunas situaciones de mercado, los indicadores técnicos como el RSI pueden producir señales inválidas, lo que conduce a un fallo en el juicio estratégico.
Las soluciones incluyen: optimizar el proceso de fijación de parámetros, ajustar el tiempo estadístico y el tamaño de la muestra, combinar más información auxiliar, intervención manual en situaciones anormales, etc.
Las principales direcciones de optimización de esta estrategia incluyen:
Muchos plazos: Ejecutar estrategias a lo largo de múltiples plazos (diarios, semanales, etc.) para un juicio integrado para mejorar la estabilidad.
Más indicadores: Añadir más señales de indicadores técnicos como patrones de velas, promedios móviles, etc. para enriquecer la base para el juicio.
Optimización del modelo: Usando el aprendizaje automático, etc. para optimizar el modelo bayesiano para cálculos más precisos.
Parámetros dinámicos: Añadir módulos de optimización dinámica para ajustar los parámetros en tiempo real con los cambios del mercado.
Mecanismo de control de riesgos: Establecer métricas de riesgo como la reducción máxima y las frecuencias de comercio para evitar grandes pérdidas en mercados extremos.
Reúne las mejoras: Junto con otros tipos o modelos de estrategias para formar mecanismos de votación y mejorar la estabilidad.
Esta estrategia primero calcula estadísticamente las distribuciones de probabilidad del precio y el RSI, luego utiliza reglas bayesianas para calcular probabilidades combinadas, generando señales comerciales cuando las probabilidades exceden los umbrales establecidos, obteniendo así ganancias. Esta estrategia combina información de múltiples fuentes, aprovecha la predicción de probabilidades y la optimización bayesiana para un rendimiento de juicio decente. Las principales direcciones de optimización incluyen la expansión del marco de tiempo, más indicadores, parámetros dinámicos, etc. En conclusión, esta estrategia tiene una idea única y un efecto notable que vale la pena explorar y aplicar.
/*backtest start: 2022-12-11 00:00:00 end: 2023-03-15 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // Stealthy7 trading scripts are radikal. You have entered the mystical realm of demonic profit. // If you like this script, check out my bots at cryptotrader.org/?r=51 // Let me know if you find any improvements to this script. It is beta. // Please subscribe. strategy("Stealthy7 Bayes Conditional RSI Trader Strategy", overlay=true) p = input(title="Period", defval=30, minval=5, maxval=500) t = input(title="Movement Thresh", type=float, defval=1.003, minval=1.001, maxval=1.5, step=0.001) r = input(title="Look Range", defval=7, minval=1,maxval=500, step=1) RSIT = input(title="Jump", defval=8, minval=1,maxval=99, step=1) BAYEST = input(title="SM", defval=3, minval=1,maxval=99, step=1) RSIP = input(title="RSIP", defval=14, minval=2,maxval=100, step=1) countup = 1 countdn = 1 countupS = 1 countdnS = 1 for i = p to 1 if close[i]/close[i + r] > t countup := countup + 1 else countdn := countdn + 1 if close[i]/close[i + r] < 2 - t countupS := countupS + 1 else countdnS := countdnS + 1 rsi = rsi(open,RSIP) countup2 = 1 countup3 = 1 countup2S = 1 countup3S = 1 for i = p to 1 if close[i]/close[i + r] > t and rsi[i + r + 1] > rsi[i + r + 2] + RSIT countup2 := countup2 + 1 else countup3 := countup3 + 1 if close[i]/close[i + r] < 2 - t and rsi[i + r + 1] < rsi[i + r + 2] - RSIT countup2S := countup2S + 1 else countup3S := countup3S + 1 countup2b = countup2 / p countup3b = countup3 / p countupb = countup / p countdnb = countdn / p countup2bS = countup2S / p countup3bS = countup3S / p countupbS = countupS / p countdnbS = countdnS / p bayes = 0 bayes := ((countupb * countup2b) / ((countupb * countup2b) + (countdnb * countup3b))) * 100 bayesS = 0 bayesS := ((countupbS * countup2bS) / ((countupbS * countup2bS) + (countdnbS * countup3bS))) * 100 SN1 = sma(bayes,BAYEST) SN2 = sma(bayesS,BAYEST) shortCondition = crossunder(bayesS, SN2) //and rsi < 49 longCondition = crossover(bayes, SN1) //and rsi > 59 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short)