Esta estrategia se basa en el concepto de ruptura de 9 días de Larry Williams, mediante el monitoreo de la dirección de la media móvil de 9 días para determinar la tendencia, y tomar posiciones en los puntos de ruptura para seguir la tendencia.
Específicamente:
Lo anterior constituye la lógica completa de la compra y venta.
Se trata de una tendencia relativamente sencilla que sigue una estrategia con los siguientes puntos fuertes:
La estrategia también presenta algunos riesgos y deficiencias, que pueden optimizarse aún más a partir de los siguientes aspectos:
En resumen, la estrategia puede mejorarse mediante la optimización dinámica de parámetros, el juicio multifactorial, la gestión de costos de transacción, el control de riesgo-recompensación, etc., para hacer que la estrategia sea más robusta en diferentes condiciones de mercado.
La estrategia de ruptura de 9 días de Williams es una estrategia relativamente clásica de seguimiento de tendencias a corto plazo. La idea central es simple y clara, utilizando la EMA para determinar la dirección de la tendencia, tomar posiciones en los puntos de ruptura, seguir la tendencia y gestionar los riesgos. La estrategia es fácil de entender e implementar, con una alta eficiencia de uso de capital, pero también tiene algunas deficiencias. Podemos optimizarla desde múltiples perspectivas para hacer que los parámetros sean más dinámicos, las reglas de juicio más rigurosas, el control de riesgos más completo, adaptándose así a una gama más amplia de condiciones de mercado y mejorando la estabilidad y la rentabilidad.
/*backtest start: 2023-09-16 00:00:00 end: 2023-10-16 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("larry willians teste2", overlay=true) //Window of time start = timestamp(2019, 00, 00, 00, 00) // backtest start window finish = timestamp(2019, 12, 31, 23, 59) // backtest finish window window() => true // create function "within window of time" ema9=ema(close,9) // Ema de 9 periodos //Condições de compra c1= (open< ema9 and close > ema9) //abrir abaixo da ema9 e fechar acima da ema9 if(window()) if(c1) strategy.entry("Compra", true, stop = high) // Coloca ordem stopgain no topo anterior else strategy.cancel("Compra") // Cancela a ordem se o proximo candle não "pegar" //codições de venda v1= (open> ema9 and close < ema9) // abrir acima da ema9 e fechar abaixo ema9 if(window()) if (v1) strategy.exit("Venda", from_entry = "Compra", stop = low) // Saida da entrada com stop no fundo anterior else strategy.cancel("Venda") //Cancela a ordem se o proximo candle não "pegar"