Estrategia de cruce de velas con desviación estándar de períodos múltiples


Fecha de creación: 2023-10-24 14:44:00 Última modificación: 2023-10-24 14:44:00
Copiar: 0 Número de Visitas: 658
1
Seguir
1617
Seguidores

Estrategia de cruce de velas con desviación estándar de períodos múltiples

Descripción general

La estrategia de cruce de líneas K de desviación estándar de varios períodos de tiempo es una estrategia típica de seguimiento de tendencias. La estrategia construye varios grupos de líneas K y líneas D mediante el cálculo de los valores de desviación estándar de diferentes períodos de tiempo (como el sol, el solsticio, el lunar, etc.), y luego toma el promedio de estas líneas para construir una línea media.

Principio de estrategia

La lógica central de esta estrategia es calcular la desviación estándar en varios períodos de tiempo y luego construir una señal de transacción con una media.

Primero, la estrategia fue aprobada.stoch()La función calcula los valores de K de la desviación estándar bajo diferentes parámetros, donde se calculan un total de 5 grupos de valores de K, los correspondientes períodos de tiempo son el nivel de la línea solar, la línea de circunferencia y la línea lunar.

smoothK = input(55)  
SMAsmoothK = input(13)
k = sma(stoch(price, high, low, smoothK), SMAsmoothK) 

smoothK1 = input(89)
SMAsmoothK1 = input(8)  
k1 = sma(stoch(price, high, low, smoothK1), SMAsmoothK1)

...

smoothK4 = input(377) 
SMAsmoothK4 = input(2)
k4 = sma(stoch(price, high, low, smoothK4), SMAsmoothK4)

Luego se calculan las líneas D con diferentes parámetros:

smoothD = input(34)
d = sma(k, smoothD)

...

smoothD4 = input(233)  
d4 = sma(k4, smoothD4)

Luego, se calcula el promedio de los grupos de líneas K y D para construir la línea rápida Kavg y la línea lenta Davg:

Kavg = avg(k,k1,k2,k3,k4)
Davg = avg(d,d1,d2,d3,d4) 

Por último, cuando la línea es rápida, hay que hacer más, y cuando la línea es lenta, hay que hacer menos:

long = crossover(Kavg, Davg)
short = crossunder(Kavg, Davg)

Mediante la combinación de las medias de la desviación estándar de varios períodos de tiempo, se puede eliminar el ruido del mercado en períodos de tiempo más grandes y bloquear la dirección de las principales tendencias.

Ventajas estratégicas

  • Utiliza la capacidad de predicción de la desviación estándar de múltiples períodos de tiempo para filtrar eficazmente el ruido y bloquear las tendencias
  • El tiempo de mantenimiento de la estrategia se puede ajustar libremente ajustando los parámetros de ciclo
  • La desviación estándar tiene una gran capacidad de seguimiento de tendencias.
  • La adopción de formas de cruce homogéneo evita ser engañado por una sola breakout falsa
  • Permite optimizar el ciclo de la línea media de la línea rápida para mejorar la estabilidad

Riesgos estratégicos y soluciones

  • El cruce de líneas medias con múltiples períodos de tiempo es más propenso a generar más señales falsas, y se puede ajustar adecuadamente el ciclo mediano para optimizarlo.
  • La desviación estándar es susceptible a la acción de las condiciones extremas, generando señales erróneas, se puede considerar la adición de condiciones de filtración
  • Los parámetros de ciclo fijo no pueden adaptarse a los cambios en el mercado, se puede usar una configuración de ciclo de adaptación
  • Las posiciones a largo plazo son fáciles de seguir, se puede establecer un stop loss móvil para bloquear las ganancias.
  • Tenga en cuenta que los indicadores de KDJ son vulnerables y se pueden introducir otros indicadores para optimizar la combinación

Solución:

  1. Aumentar las condiciones de filtración para evitar falsos avances a corto plazo

  2. Utiliza la configuración de ciclo adaptativo para ajustar los parámetros de ciclo en función de la volatilidad del mercado

  3. Configure el stop móvil para detener el daño a tiempo y evitar que el precio suba y baje.

  4. Optimización de los parámetros de ciclo de la mediana para encontrar el punto de equilibrio óptimo

  5. Combinar más señales de indicadores para mejorar la estabilidad de la estrategia

Dirección de optimización de la estrategia

La estrategia puede ser optimizada en los siguientes aspectos:

  1. La introducción de otras señales de indicadores en combinación, como la introducción de MACD, Bollinger Bands, etc., puede mejorar la calidad de la señal

  2. Añadir filtros de tendencia, como la introducción de la dirección de la línea media SMA, indicadores como el ADX para juzgar la tendencia y evitar el comercio de contravalores

  3. Parámetros de ciclo de ajuste dinámico según la volatilidad del mercado con una configuración de ciclo de adaptación

  4. Aumentar la estrategia de stop loss móvil, establecer el punto de stop loss en función de los parámetros de la estrategia y detener el stop loss a tiempo

  5. Optimización de los parámetros de ciclo promedio de las líneas rápidas y lentas para encontrar la combinación óptima de parámetros

  6. Añadir condiciones de filtración de almacenamiento abierto para evitar señales engañosas de ruido a corto plazo

  7. Prueba una estrategia de entrada por breakout y abre una posición después de romper la línea media.

  8. Prueba de diferentes estrategias de salida, como la salida de Chandelier, para optimizar el stop loss

Resumir

La estrategia de cruce de líneas K de desviación estándar de varios períodos de tiempo integra la capacidad de seguimiento de tendencias de los indicadores de desviación estándar y la estabilidad de la estrategia de línea uniforme. Mediante el cálculo de la media de las líneas K y D de desviación estándar de varios períodos, la construcción de señales de negociación permite aprovechar eficazmente el poder de predicción de los indicadores de desviación estándar en diferentes escalas de tiempo, filtrar el ruido del mercado y capturar la dirección de la tendencia principal.

Código Fuente de la Estrategia
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="Slow Stochastic Multi K&D Average Crossover Strategy", overlay=false, pyramiding=0, calc_on_order_fills=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, currency="USD", default_qty_value=100)


price = input(close)

///////////////////////////////
smoothK = input(55) 

SMAsmoothK = input(13)
k = sma(stoch(price, high, low, smoothK), SMAsmoothK)



smoothD = input(34)
d = sma(k, smoothD)


///////////////////////////

smoothK1 = input(89) 

SMAsmoothK1 = input(8)
k1 = sma(stoch(price, high, low, smoothK1), SMAsmoothK1)

smoothD1 = input(55)
d1 = sma(k1, smoothD1)

//////////////////////////////////////

smoothK2 = input(144) 

SMAsmoothK2 = input(5)
k2 = sma(stoch(price, high, low, smoothK2), SMAsmoothK2)

smoothD2 = input(89)
d2 = sma(k2, smoothD2)

/////////////////////////////////////

smoothK3 = input(233) 

SMAsmoothK3 = input(3)
k3 = sma(stoch(price, high, low, smoothK3), SMAsmoothK3)

smoothD3 = input(144)
d3 = sma(k3, smoothD3)

////////////////////////////////////////////////

smoothK4 = input(377) 

SMAsmoothK4 = input(2)
k4 = sma(stoch(price, high, low, smoothK4), SMAsmoothK4)

smoothD4 = input(233)
d4 = sma(k4, smoothD4)

/////////////////////////////////////////////////

Kavg = avg(k,k1,k2,k3,k4, k4)
plot(Kavg, color=green)

Davg = avg(d,d1,d2,d3,d4, d4)
plot(Davg, color=red)


///////////////////////////////////////
hline(50, color=gray)


long = crossover(Kavg, Davg)// and d < 50
short = crossunder(Kavg, Davg)// and d > 50


last_long = long ? time : nz(last_long[1])
last_short = short ? time : nz(last_short[1])
long_signal = crossover(last_long, last_short) 
short_signal = crossover(last_short, last_long)



strategy.entry("Long", strategy.long, when=long_signal)
strategy.entry("Short", strategy.short, when=short_signal) 

//len1 = input(3)

//closelong = d[1] < k[len1]
//closeshort = d[1] > k[len1]

//strategy.close("Long", when=closelong)
//strategy.close("Short", when=closeshort)