Estrategia de media móvil estocástica de marcos temporales múltiples


Fecha de creación: 2024-02-29 12:11:23 Última modificación: 2024-02-29 12:11:23
Copiar: 0 Número de Visitas: 1116
1
Seguir
1617
Seguidores

Estrategia de media móvil estocástica de marcos temporales múltiples

Descripción general

La estrategia MTF Stochastic es una estrategia de comercio cuantitativa basada en indicadores aleatorios. Utiliza tanto las medias aleatorias del marco de tiempo actual como de los marcos de tiempo superiores para lograr un conjunto de operaciones de seguimiento de tendencias y reversión de tendencias.

Principio de estrategia

Los indicadores centrales de la estrategia son los índices aleatorios K-line y D-line. La K-line refleja el movimiento de precios reciente, y la D-line es una media móvil de la K-line. Su posición y dirección relativa puede determinar la tendencia de los precios y la posible reversión.

Concretamente, cuando la línea K corto plazo de abajo hacia arriba se rompe la línea D medio, indica que el precio en el corto plazo existe el impulso de la ruptura hacia arriba; cuando la línea K corto plazo de arriba hacia abajo rompe la línea D medio, indica que el precio en el corto plazo existe la presión hacia abajo.

Esta estrategia utiliza dos marcos de tiempo aleatorios para la confirmación de señales de negociación y la filtración. Los marcos de tiempo aleatorios en marcos de tiempo más altos se utilizan para confirmar la dirección de la tendencia, y los marcos de tiempo aleatorios en el marco de tiempo actual se utilizan para descubrir puntos de ruptura en el corto plazo para la realización de operaciones.

Haga más cuando el indicador aleatorio del marco de tiempo más alto confirma que el precio está en una tendencia ascendente y el indicador aleatorio del marco de tiempo actual muestra que el precio está en una ruptura hacia arriba; y si el indicador aleatorio del marco de tiempo más alto confirma una tendencia descendente y el indicador aleatorio del marco de tiempo actual muestra que el precio está en una ruptura hacia abajo, haga un vacío.

Análisis de las ventajas

La estrategia, combinada con indicadores de múltiples marcos temporales y brechas actuales, es capaz de filtrar eficazmente el ruido del mercado y bloquear operaciones rentables con una mayor probabilidad. Las ventajas concretas son las siguientes:

  1. Un marco de tiempo más alto asegura que se negocie sólo en la dirección de la tendencia, lo que reduce la frecuencia innecesaria de los cambios y la cantidad de pérdidas.
  2. El marco de tiempo actual garantiza un cambio a corto plazo en la tendencia de captura de menor riesgo, permitiendo una entrada y salida de operaciones más precisa y oportuna.
  3. La combinación de dos indicadores aleatorios aumenta la precisión de la señal y reduce la probabilidad de que aparezca una señal falsa.

Análisis de riesgos

La estrategia también tiene sus riesgos, que se manifiestan en los siguientes aspectos:

  1. En caso de reversión brusca, los indicadores de los marcos de tiempo más altos pueden retrasar la identificación de nuevas tendencias, lo que hace que la estrategia retrase el cambio de dirección y aumente las pérdidas. Es necesario optimizar los parámetros de los marcos de tiempo para garantizar la información del mercado a tiempo.
  2. Los indicadores del marco de tiempo actual son demasiado sensibles y pueden aumentar la frecuencia de las operaciones estratégicas y el costo de las operaciones. Se requiere un ajuste adecuado de los parámetros para garantizar que se filtre el ruido del mercado que no es importante.
  3. La combinación de dos indicadores aleatorios aumenta la precisión de la señal, pero también retrasa la velocidad de reacción. Si la situación fluctúa drásticamente, es posible que se pierda el punto de corte óptimo.

Dirección de optimización

Las principales direcciones de optimización de la estrategia incluyen:

  1. Optimizar el factor de ajuste de los indicadores de los marcos temporales más altos para que reflejen las nuevas tendencias en el tiempo;
  2. Ajuste los parámetros del indicador del marco de tiempo actual y establezca un umbral de ruptura razonable para filtrar la señal de ruido.
  3. Prueba la eficacia de una combinación de diferentes marcos de tiempo para encontrar el mejor punto de equilibrio.
  4. Añadir estrategias de stop loss para controlar el riesgo de pérdidas individuales

Resumir

La estrategia de línea media de índices aleatorios de marcos temporales múltiples es una estrategia típica de seguimiento de tendencias. Utiliza al mismo tiempo indicadores de índices aleatorios en dos escalas de tiempo para obtener una comprensión precisa de la situación del mercado. A través de la optimización de los parámetros, se puede mejorar aún más la estabilidad y la rentabilidad de la estrategia.

Código Fuente de la Estrategia
/*backtest
start: 2023-02-22 00:00:00
end: 2024-02-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("MTF stochastic strategy", overlay=false,pyramiding=3,default_qty_type=strategy.percent_of_equity,default_qty_value=100,currency=currency.USD)
//
//this strategy is inspired to bobby thread in forexfactory forum
//
len = input(11, minval=1, title="Length for Main Stochastic") 
smoothK = input(3, minval=1, title="SmoothK for Main Stochastic")
smoothD = input(3, minval=1, title="SmoothD for Main Stochastic")
upLine = input(80, minval=50, maxval=90, title="Upper Line Value?")
lowLine = input(20, minval=10, maxval=50, title="Lower Line Value?")
trailStep=input(50,minval=10,title="Trialing step value")

// current stochastic calculation
k = sma(stoch(close, high, low, len), smoothK)
d = sma(k, smoothD)

//mtf stochastic calculation smoothed with period

mtfK= sma(stoch(close, high, low, len), smoothK*3)
mtfD= sma(k, smoothD*3)

plot(k,"current TF k",black,style=linebr)
plot(d,"current TF d",gray,style=linebr)
plot(mtfK,"MTF TF k",red,style=line)
plot(mtfD,"Multi TF d",green,style=line)
hline(upLine)
hline(50)
hline(lowLine)

longCondition = crossover(mtfK, 50) and k>50 and change(k,1)>0 and k>d and mtfK>mtfD
if (longCondition)
    strategy.entry("Lungo", strategy.long)

shortCondition = crossunder(mtfD, 50) and k<50 and change(k,1)<0 and k<d and mtfK<mtfD
if (shortCondition)
    strategy.entry("Corto", strategy.short)
    
exitlong=crossunder(mtfD, upLine)
exitshort=crossover(mtfK, lowLine)

if (exitlong)
    strategy.exit("Esci lungo","Lungo",trail_points=trailStep)
if (exitshort)
    strategy.exit("Esci corto","Corto",trail_points=trailStep)