Estrategia de ruptura de impulso

El autor:¿ Qué pasa?, Fecha: 2023-10-11 15:01:12
Las etiquetas:

Resumen general

Esta estrategia se basa en principios de ruptura de impulso y combina indicadores RSI y estocásticos para seguir la tendencia. Utiliza el indicador DEMA para determinar la dirección del impulso del precio, RSI para juzgar los niveles de sobrecompra y sobreventa, y líneas KDJ estocásticas para confirmar la tendencia. Realiza operaciones de largo y corto plazo de acuerdo con estas señales de indicadores. La estrategia es adecuada para el comercio de tendencias a medio y largo plazo.

Estrategia lógica

La estrategia utiliza el indicador DEMA para determinar la dirección del impulso del precio. DEMA es una media móvil exponencial doble que es más sensible que la EMA regular, lo que permite la detección más temprana de los cambios de tendencia. La estrategia calcula la diferencia porcentual entre el precio y DEMA para juzgar la dirección y la fuerza del impulso del precio.

Cuando el aumento del precio es mayor que el parámetro establecido, se considera que el precio está en tendencia alcista. Cuando la caída del precio es mayor que el parámetro establecido, se considera que el precio está en tendencia bajista. Combinado con el indicador RSI para determinar si está en zonas de sobrecompra o sobreventa, si el RSI es menor que la línea de sobreventa, indica un estado de sobreventa y se pueden abrir posiciones largas. Si el RSI es mayor que la línea de sobrecompra, indica un estado de sobreventa y se pueden abrir posiciones cortas.

Además, la estrategia también utiliza las líneas estocásticas K y D del indicador KDJ para confirmar la tendencia.

Por último, la estrategia también incluye condiciones de filtro de tiempo que solo son efectivas dentro de años, meses y días específicos, evitando así operaciones innecesarias.

Análisis de ventajas

Esta estrategia tiene las siguientes ventajas:

  1. Usar DEMA para juzgar el impulso del precio es más sensible y puede detectar cambios de tendencia antes.

  2. La combinación del RSI para determinar la sobrecompra y sobreventa previene la entrada errónea en los puntos de inflexión del mercado.

  3. Usar KDJ estocástico para confirmar señales puede filtrar algunas señales equivocadas.

  4. La adición de filtros de tiempo solo permite la negociación dentro de períodos especificados, evitando la ocupación innecesaria de capital.

  5. Flujo lógico claro y fácil de entender para el análisis.

  6. Los parámetros del indicador ajustables pueden optimizarse para diferentes productos y plazos.

Análisis de riesgos

También hay algunos riesgos a tener en cuenta para esta estrategia:

  1. DEMA, RSI y otros indicadores pueden dar señales falsas, lo que conduce a pérdidas innecesarias.

  2. Las combinaciones de indicadores dobles no pueden evitar completamente las reversiones en movimientos enormes del mercado.

  3. Los intervalos de tiempo fijos pueden perder algunas oportunidades comerciales, se recomiendan controles de tiempo de comercio más flexibles.

  4. Los métodos de negociación de tendencias requieren tolerar psicológicamente las reducciones y las pérdidas consecutivas.

  5. Es necesario un seguimiento continuo de la optimización de los parámetros para adaptarse a las condiciones cambiantes del mercado.

Direcciones de mejora

La estrategia se puede optimizar en los siguientes aspectos:

  1. Prueba combinaciones de más indicadores para encontrar una lógica de negociación más estable y fluida, como MACD, KD, MOVING AVERAGE, etc.

  2. Prueba y optimiza los parámetros del indicador para encontrar rangos de valores óptimos.

  3. Añadir estrategias de stop loss como movimiento de stop loss, trailing stop loss, etc. para reducir las reducciones.

  4. Añadir funciones de gestión de dinero como el tamaño fijo de la operación, el ajuste dinámico de la posición para controlar el riesgo.

  5. Optimizar la lógica de entrada y salida para garantizar una entrada de alta probabilidad y una parada de pérdida temprana.

  6. Añadir más filtros para asegurar la entrada sólo después de una tendencia clara, como indicadores de volumen, indicadores de canal, etc.

  7. Optimice los controles de tiempo para adaptarse a los ritmos del mercado.

Conclusión

Esta estrategia se centra en el comercio de tendencias, utilizando DEMA para la dirección de la tendencia, RSI para los niveles de sobrecompra / sobreventa y KDJ para la confirmación para controlar el riesgo. Tiene una lógica simple, una alta personalización y es adecuada para la tenencia a mediano y largo plazo. Con mejoras continuas en la optimización de parámetros, estrategias de stop loss y control de riesgos, esta estrategia tiene el potencial de convertirse en un sistema estable para seguir la tendencia principal del mercado. Por supuesto, ninguna estrategia puede evitar completamente los riesgos del mercado. Los operadores necesitan paciencia y disciplina, siempre recordando el principio de preservación del capital.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version= 2
strategy("DPD+STOCH+RSI ", overlay=false)

buyper =input(-1,step=0.1)
sellper=input(1,step=0.1)

demalen = input(50,title="Dema Length")

e1= ema(close,demalen)
e2=ema(e1,demalen)
demaprice  =   2 * e1 - e2

price=close

demadifper =  ((price-demaprice)/price)*100



plot(demadifper, color=red)
OverDemaPer = input(1, title="Band for OverBought")
UnderDemaPer= input(-1,title="Band for OverSold")




band1 = hline(OverDemaPer)
band0 = hline(UnderDemaPer)
zeroline=0
fill(band1, band0, color=green, transp=90)


lengthrsi = input(10)
overSold = input( 30 )
overBought = input( 55 )
vrsi = rsi(price, lengthrsi)


smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")

rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
srsilow=input(20)
srsiup=input(80)







yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if ( ( (demadifper<buyper) or crossover(demadifper,buyper)) and (vrsi<overSold) ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( vrsi>overBought  and ( crossunder(k,d) ) and ( demadifper>sellper  or crossunder(demadifper,sellper)  )  ) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND",  comment="SELL")
else
    strategy.cancel(id="SELL")
    
    
    

Más.