Estrategia de negociación a corto plazo basada en el índice estocástico

El autor:¿ Qué pasa?, Fecha: 2024-01-18 16:14:34
Las etiquetas:

img

Resumen general

Esta estrategia diseña una estrategia de negociación a corto plazo basada en el indicador del índice estocástico (SMI), principalmente para el comercio a corto plazo de acciones y monedas digitales.

Principio de la estrategia

La estrategia utiliza principalmente el indicador del índice estocástico para juzgar las zonas de sobrecompra y sobreventa del mercado.

SMI = (MA ((Cerrar - LL) / ((HH - LL)) * 100

Cuando LL es el precio más bajo en N días, HH es el precio más alto en N días. El concepto de diseño de este indicador es que cuando el precio de cierre está cerca del precio más alto en N días, el mercado está en un estado de sobrecompra; cuando el precio de cierre está cerca del precio más bajo en N días, el mercado está en un estado de sobreventa.

En esta estrategia, el parámetro SMA N toma 5 y 3, lo que indica que se utiliza el índice estocástico de 5 días y 3 días. Por lo general, el uso de solo un parámetro puede generar fácilmente señales erróneas. Por lo tanto, esta estrategia adopta doble confirmación de doble SMA, lo que puede filtrar algo de ruido.

Además, el indicador EMA se superpone en la estrategia y los parámetros se establecen de manera que sean coherentes con el indicador SMI para confirmar aún más las señales del indicador SMI y evitar errores de apreciación.

Ventajas de la estrategia

  1. Juzgar las zonas sobrecompradas y sobrevendidas basándose en el indicador del índice estocástico para captar las oportunidades de reversión
  2. La doble configuración del parámetro SMA puede filtrar eficazmente las señales incorrectas
  3. Combinación con el indicador EMA para la confirmación para evitar errores de evaluación

Riesgos de la estrategia

  1. El indicador SMI es propenso a generar señales erróneas.
  2. En un mercado de tendencia, esta estrategia puede generar demasiadas operaciones inversas, lo que afecta al beneficio general.

Prevención de riesgos:

  1. Utilizar el stop loss para controlar la pérdida única
  2. Solo utilizar esta estrategia en mercados de negociación lateral o de rango para evitar su uso en mercados de tendencia

Direcciones de optimización

  1. Prueba de indicadores SMI bajo diferentes ajustes de parámetros para encontrar la combinación óptima de parámetros
  2. Trate de combinar con otros indicadores para la confirmación, tales como bandas de Bollinger, KDJ, etc., para mejorar la precisión de la señal
  3. Optimizar las estrategias de stop loss y establecer un stop loss variable basado en la volatilidad del mercado
  4. Combinar con indicadores de evaluación de tendencias para evitar el uso durante los mercados de tendencias

Resumen de las actividades

En general, esta es una estrategia adecuada para el comercio a corto plazo. Combina las características de sobrecompra y sobreventa del indicador del índice estocástico con la confirmación de promedios móviles y el filtrado para identificar algunas oportunidades comerciales a corto plazo. Sin embargo, esta estrategia es propensa a generar señales erróneas en los mercados de tendencia, por lo que se debe prestar especial atención al usarla. Es mejor usarla con indicadores de tendencia de juicio para evitar tales situaciones. En general, esta estrategia puede capturar algunas oportunidades comerciales a corto plazo durante los mercados de rango, pero se debe prestar atención al control de riesgos y salidas de stop-loss durante el uso.


/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="SMIndex Strategy", shorttitle="SMIndex Strategy", overlay=false, pyramiding=0, initial_capital=1000, currency=currency.USD)
//
sm1 = input(5, 'sm1')
sm2 = input(3, 'sm2')
//
Lower = lowest (low, sm1)
Hight = highest (high, sm1)
Downsideup = Hight - Lower
Upsidedown = close - (Hight+Lower)/2
//
ema1 = ema(ema(Upsidedown,sm2),sm2)
ema2 = ema(ema(Downsideup,sm2),sm2)
smi = ema2 != 0 ? (ema1/(ema2/2)*100) : 0
//
obLevel1 = input(55, "Over Bought Level 1")
obLevel2 = input(35, "Over Bought Level 2")
osLevel1 = input(-55, "Over Sold Level 1")
osLevel2 = input(-35, "Over Sold Level 2")
//
// h1=plot(obLevel1, color=red, title='Sell 1s 55 do', style=dashed, linewidth=2)
// h2=plot(obLevel2, color=maroon, title='Sell 2s 35 do', style=circles, linewidth=2)
// h3=plot(osLevel1, color=red, title='Buy 1s -55 up', style=dashed, linewidth=2)
// h4=plot(osLevel2, color=maroon, title='Buy 2s -35 up', style=circles, linewidth=2)
plot(smi, color=gray, style=line, linewidth=0, transp=5)
plot(ema1, color=orange, style=line, linewidth=0, transp=5)
plot(0, color=gray, style=circles, linewidth=1, title='Base Line')
//
// fill(h1, h2, color=red, transp=55)
// fill(h3, h4, color=green, transp=55)
//Strategy Long Short Entry
longEntry = (smi) < -75 or (smi) < -65 or (smi) < -55 or (smi) < -45 
shortEntry = (smi) > 75 or (smi) > 65 or (smi) > 55 or (smi) > 45 

longCondition = longEntry
if(longCondition)
    strategy.entry("long", strategy.long)
    
shortCondition = shortEntry
if(shortCondition)
    strategy.entry("short", strategy.short)


Más.