Tendencia tras la estrategia SMA

El autor:¿ Qué pasa?, fecha: 2023-11-02 16:58:23
Las etiquetas:

img

Resumen general

La estrategia de seguimiento de tendencia utiliza una combinación de promedio móvil simple (SMA) y SMA rápido para determinar la dirección de la tendencia del mercado y generar señales de negociación. Se hace largo cuando el precio cruza por encima de SMA y FSMA y sale largo cuando el precio cruza por debajo. Se hace corto cuando el precio cruza por debajo de SMA y FSMA y sale corto cuando el precio cruza por encima.

Estrategia lógica

La estrategia utiliza la función sma para calcular la SMA de 50 períodos y la SMA rápida fsma. fsma se calcula sobre la base de la SMA más 6 veces la desviación estándar del precio durante n períodos.

Dos variables booleanas largo y corto se utilizan para registrar posiciones largas y cortas. largo se establece en 1 cuando el precio cruza por encima de sma y fsma para la entrada larga, y -1 cuando el precio cruza por debajo para la salida. corto sigue la lógica similar para la posición corta.

La variable de tendencia se utiliza para la determinación de la tendencia. Se establece en 1 cuando el precio está por encima de fsma y sma para tendencia alcista, y -1 cuando el precio está por debajo de fsma y sma para tendencia bajista.

Las señales comerciales de largo y corto se generan en función de la dirección de la tendencia en tiempo real. Cuando la tendencia cambia de abajo a arriba, si el precio está por encima de fsma, vaya largo. Cuando la tendencia cambia de arriba a abajo, si el precio está por debajo de sma, vaya corto.

La estrategia combina tanto los métodos de seguimiento de tendencias como los de ruptura para capturar oportunidades cuando la tendencia cambia.

Ventajas

  1. Usar la doble confirmación de dos MAs filtra las fugas falsas.

  2. La combinación de la tendencia de seguimiento y la ruptura atrapa puntos de inflexión.

  3. No hay ajuste de curvas u optimización para señales comerciales dinámicas.

  4. Lógica simple y clara, fácil de entender y modificar.

  5. Parámetros personalizables para la longitud, multiplicador para diferentes mercados.

Los riesgos

  1. Los cruces de doble MA pueden causar excesos en las operaciones y las reversiones.

  2. El retraso de MA puede perder la inversión temprana de la tendencia.

  3. No hay un mecanismo de stop loss para controlar las pérdidas de una sola operación.

  4. El ajuste inadecuado de los parámetros conduce a un exceso o retraso.

  5. En el caso de los riesgos 1 y 2, prolongar los períodos de MA, añadir el stop loss de extracción.

  6. En el caso del riesgo 3, añadir el porcentaje o la orden de stop loss.

  7. Para el riesgo 4, ajustar los parámetros dinámicamente para diferentes mercados.

Mejoramiento

  1. Añadir filtro de tendencia utilizando MACD, DMI para confirmar la tendencia.

  2. Se utilizará KD, RSI para operar con una inversión media sobrecomprada/sobrevendida.

  3. Se añade la pérdida de parada general, como la parada de seguimiento, la parada porcentual.

  4. Añadir el módulo de dimensionamiento de posición para el ajuste dinámico.

  5. Optimice los parámetros para adaptarse a los plazos.

  6. Introduzca el aprendizaje automático para ajustar parámetros automáticos.

  7. Construye una estrategia compuesta con filtros adicionales.

  8. Utilice el aprendizaje profundo para detectar patrones de tendencia complejos.

Conclusión

La estrategia de seguimiento de tendencia SMA es un sistema de trading de tendencia simple. Utiliza MAs rápidos y lentos para ayudar a la dirección de la tendencia y capturar la reversión de la tendencia. Sin embargo, existen riesgos como la sierra y el retraso. Las mejoras futuras incluyen la adición de filtros, paradas, parámetros dinámicos, etc. En general, sirve como un buen comienzo de la estrategia de seguimiento de tendencia, pero se necesitan optimizaciones para aplicaciones del mundo real para maximizar su rendimiento.


/*backtest
start: 2022-10-26 00:00:00
end: 2023-11-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("SMA STRATEGY", shorttitle="SMA TREND", overlay=true, calc_on_order_fills=true)
length = input(title="Length", type=input.integer, defval=50)
src_=input(close, title="Source", type=input.source)
mult=input(6.0, title="Mult")
barc=input(true, title="Use barcolor?")
plots=input(false, title="Show plots?")
tri=input(false, title="Use triangles?")


r(src, n)=>
    s = 0.0
    for i = 0 to n-1
        s := s + ((n-(i*2+1))/2)*src[i]
    x=s/(n*(n+1))
    x

l=sma(low, length)
h=sma(high, length)
lr= l+mult*r(low, length)
hr= h+mult*r(high, length)

trend=0
trend:=src_ > lr and src_ > hr ? 1 : src_ < lr and src_ < hr ? -1 : trend[1]

strategy.close("Long", when=trend==-1)
strategy.close("Short", when=trend==1)
strategy.entry("Long", strategy.long, when=trend==1 and src_>h)
strategy.entry("Short", strategy.short, when=trend==-1 and src_<l)

long=0
short=0
long:= trend==1 and src_>h ? 1 : trend==-1 ? -1 : long[1]
short:= trend==-1 and src_<l ? 1 : trend==1 ? -1 : short[1]

barcolor(barc? (long>0? color.green : short>0? color.red : trend>0? color.orange: trend<0 ? color.white : color.blue) : na)
plotshape(tri? close : na, style= shape.diamond, color= long>0? color.green : short>0? color.red : trend>0? color.orange: trend<0 ? color.white : color.blue, location=location.top)

//shortenter=
a1=plot(plots? l : na, color=color.blue, linewidth=1)
//longenter=
a2=plot(plots? h : na, color=color.blue, linewidth=1)
fill(a1, a2, color=color.blue)
//stopshort=
b1=plot(plots? hr : na, color=color.navy, linewidth=1)
//stoplong=
b2=plot(plots? lr : na, color=color.navy, linewidth=1)
fill(b1, b2, color=color.navy)

Más.