Estrategia de prueba de retroceso AC del indicador Williams

El autor:¿ Qué pasa?, Fecha: 2023-12-18 12:03:38
Las etiquetas:

img

Resumen general

Esta estrategia se basa en el Awesome Oscillator (AO) en el Indicador Williams diseñado por el famoso comerciante Bill Williams. Al calcular la diferencia entre las medianas de precios SMA de diferentes períodos, forma un indicador oscilante para diagnosticar tendencias e impulso del mercado y diseña las señales comerciales correspondientes para guiar el largo y el corto.

Principio

El indicador central de esta estrategia es el Awesome Oscillator (AO), que se calcula como: AO = SMA ((Precio medio, 5 días) - SMA ((Precio medio, 34 días) Donde el precio mediano se define como (Precio más alto + precio más bajo) / 2. Esta fórmula extrae información de impulso de precios de dos SMA del precio mediano en diferentes períodos. Las señales de compra se generan cuando la SMA rápida (5 días) es mayor que la SMA lenta (34 días), y las señales de venta se generan cuando la SMA rápida es menor que la SMA lenta.

Para filtrar señales erróneas, esta estrategia también aplica una operación de SMA de 5 días en AO. Se proporciona un modo inverso en el que la inversión de las señales largo / corto realiza diferentes direcciones comerciales. Cuando AO es mayor que el valor anterior, se considera una oportunidad de compra y se marca como una barra azul. Cuando AO no es mayor que el valor anterior, se considera una oportunidad de venta y se marca como una barra roja.

Ventajas

  1. El uso del precio mediano en lugar del precio de cierre reduce el impacto de las falsas rupturas en la SMA y mejora la estabilidad
  2. La combinación de SMA rápida y lenta capta con sensibilidad los cambios del mercado
  3. El doble filtrado SMA elimina el ruido de alta frecuencia y mejora la calidad de la señal
  4. Ajuste flexible de los parámetros para adaptarse a los diferentes entornos del mercado
  5. Display de barra intuitivo de los puntos de negociación para una fácil evaluación de las operaciones

Riesgos y soluciones

  1. Evaluar la frecuencia de volatilidad del mercado con precaución para evitar el exceso de ajuste mediante el ajuste de parámetros
  2. Puede ocurrir múltiples operaciones erróneas en los mercados oscilantes.
  3. Los datos de backtest no son confiables, el rendimiento real puede diferir de la simulación.

Direcciones de optimización

  1. Aumentar los filtros como el volumen de negociación para mejorar la calidad de la señal
  2. Incorporar estrategias de stop loss para controlar las pérdidas de operación individuales
  3. Optimizar la gestión de posiciones, añadir o reducir posiciones según la volatilidad del mercado
  4. Combinar otros indicadores para determinar la dirección de la tendencia para evitar inversiones de oscilación

Conclusión

Esta estrategia utiliza el Awesome Oscillator diseñado con una estructura de SMA de precio mediano rápida y lenta para diagnosticar los cambios de impulso del mercado, con señales comerciales intuitivas y claras. Pero está sujeto a los impactos de la oscilación y la reversión, lo que requiere un ajuste adecuado de los parámetros y estrategias de stop loss para mejorar la estabilidad. Con un control eficaz del riesgo, esta estrategia es simple, práctica y vale la pena una mayor optimización y aplicación.


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

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/12/2016
//    This indicator plots the oscillator as a histogram where blue denotes 
//    periods suited for buying and red . for selling. If the current value 
//    of AO (Awesome Oscillator) is above previous, the period is considered 
//    suited for buying and the period is marked blue. If the AO value is not 
//    above previous, the period is considered suited for selling and the 
//    indicator marks it as red.
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy("Bill Williams. Awesome Oscillator (AC)")
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
reverse = input(false, title="Trade reverse")
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
xSMA_hl2 = sma(xSMA1_SMA2, nLengthFast)
nRes =  xSMA1_SMA2 - xSMA_hl2
cClr = nRes > nRes[1] ? blue : red
pos = iff(nRes > nRes[1], 1,
	   iff(nRes < nRes[1], -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, style=histogram, linewidth=1, color=cClr)

Más.