
Este artículo presenta una estrategia de comercio cuantitativa basada en el índice de momento de fuerza aleatorio (Stochastics Momentum Index, SMI). Esta estrategia utiliza la señal cruzada del índice SMI y su promedio móvil exponencial (EMA) para identificar oportunidades potenciales de compra y venta. Cuando el SMI atraviesa su EMA en la línea de señal, se dispara una señal de compra; cuando el SMI atraviesa su EMA en la línea de señal, se dispara una señal de venta.
La estrategia tiene como núcleo el indicador de fuerza aleatoria (SMI). El SMI es un indicador de oscilación dinámica que se utiliza para medir la posición del precio de cierre en relación con el rango de precios altos y bajos durante un período de tiempo. Concretamente, la estrategia primero calcula los máximos y mínimos en un período determinado, luego calcula la diferencia entre el precio de cierre y el punto medio de los precios altos y bajos, y la diferencia entre el precio máximo y el precio mínimo.
Cuando el SMI atraviesa su EMA en la línea de la señal, indica que la oscilación ascendente se fortalece, lo que desencadena una señal de compra; cuando el SMI atraviesa su EMA en la línea de la señal, indica que la oscilación descendente se fortalece, lo que desencadena una señal de venta. Además, la estrategia también marca el estado extremo del SMI con niveles de sobrecompra y sobreventa.
La estrategia se basa en un potente indicador de dinámica SMI, capaz de capturar eficazmente las tendencias del mercado y los cambios en la dinámica.
La lógica de la estrategia es clara, fácil de entender e implementar.
Utilizando las medias móviles de índices como líneas de señal, las estrategias pueden suavizar el ruido de precios y mejorar la fiabilidad de la señal.
Las marcas de sobrecompra y sobreventa proporcionan una herramienta adicional de gestión de riesgos para la estrategia.
La estrategia depende de un solo indicador SMI y puede correr el riesgo de que el indicador falle. Para mitigar este riesgo, se puede considerar la confirmación de señales de negociación en combinación con otros indicadores técnicos o factores fundamentales.
Las estrategias pueden generar señales de negociación frecuentes en mercados convulsionados, lo que conlleva costos de negociación elevados. Para resolver este problema, se puede reducir la frecuencia de negociación mediante la optimización de los parámetros o la introducción de un mecanismo de filtración.
La estrategia no tiene un mecanismo de stop loss claro y puede tener el problema de que el riesgo de una sola operación es demasiado alto. El riesgo se puede controlar mediante la configuración de un nivel de stop loss adecuado.
Optimización de parámetros: el rendimiento de la estrategia depende en gran medida de los parámetros utilizados en el cálculo del SMI, como la longitud% K, la longitud% D, etc. Al optimizar estos parámetros, se puede mejorar el rendimiento de la estrategia.
Filtración de señales: Para reducir la frecuencia de las transacciones y mejorar la calidad de la señal, se puede considerar la introducción de mecanismos de filtración adicionales, como la confirmación de tendencias, la confirmación de volúmenes de transacciones, etc.
Gestión de riesgos: La inclusión de reglas claras de gestión de pérdidas y posiciones en la estrategia puede controlar mejor el riesgo y mejorar la solidez de la estrategia.
Combinación de múltiples factores: combina las señales SMI con otros indicadores técnicos o fundamentales para formar un mecanismo de decisión comercial más completo y confiable.
Este artículo presenta una estrategia de comercio cuantitativa basada en el indicador de fuerza aleatoria (SMI). La estrategia utiliza el indicador SMI con la señal cruzada de su índice de promedio móvil para identificar oportunidades de compra y ventaja potenciales. La estrategia tiene la ventaja de basarse en un indicador de fuerza dinámica, la claridad de la lógica y la facilidad de implementación, al tiempo que mejora la fiabilidad de la señal y la gestión del riesgo mediante el uso de promedios móviles y niveles de sobreventa y sobreventa. Sin embargo, la estrategia también enfrenta riesgos de fallo de un solo indicador, comercio de alta frecuencia y control de riesgo insuficiente.
/*backtest
start: 2023-03-05 00:00:00
end: 2024-03-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Stochastics Momentum Index Strategy", shorttitle="SMI_BackTest", overlay=false)
// Input parameters
a = input.int(10, "Percent K Length")
b = input.int(3, "Percent D Length")
ob = input.int(40, "Overbought")
os = input.int(-40, "Oversold")
// Range Calculation
ll = ta.lowest(low, a)
hh = ta.highest(high, a)
diff = hh - ll
rdiff = close - (hh+ll)/2
avgrel = ta.ema(ta.ema(rdiff,b),b)
avgdiff = ta.ema(ta.ema(diff,b),b)
// SMI calculations
SMI = avgdiff != 0 ? (avgrel/(avgdiff/2)*100) : 0
SMIsignal = ta.ema(SMI,b)
emasignal = ta.ema(SMI, 10)
// Color Definition for Stochastic Line
col = SMI >= ob ? color.green : SMI <= os ? color.red : color.white
plot(SMIsignal, title="Stochastic", color=color.white)
plot(emasignal, title="EMA", color=color.yellow)
level_40 = ob
level_40smi = SMIsignal > level_40 ? SMIsignal : level_40
level_m40 = os
level_m40smi = SMIsignal < level_m40 ? SMIsignal : level_m40
plot(level_40, "Level ob", color=color.red)
plot(level_40smi, "Level ob SMI", color=color.red, style=plot.style_line)
plot(level_m40, "Level os", color=color.green)
plot(level_m40smi, "Level os SMI", color=color.green, style=plot.style_line)
//fill(level_40, level_40smi, color=color.red, transp=ob, title="OverSold")
//fill(level_m40, level_m40smi, color=color.green, transp=ob, title="OverBought")
// Strategy Tester
longCondition = ta.crossover(SMIsignal, emasignal)
if (longCondition)
strategy.entry("Buy", strategy.long)
shortCondition = ta.crossunder(SMIsignal, emasignal)
if (shortCondition)
strategy.entry("Sell", strategy.short)