Estrategia de negociación de tendencia basada en el precio extremo

El autor:¿ Qué pasa?, Fecha: 2023-12-12 14:36:14
Las etiquetas:

img

Resumen general

Esta estrategia calcula los puntos de precio máximos y mínimos durante un cierto período para formar bandas superiores e inferiores. Cuando el precio actual rompe la banda superior o inferior, se toman posiciones largas o cortas. La estrategia juzga principalmente la tendencia de los precios y las operaciones cuando la tendencia se fortalece.

Estrategia lógica

El indicador central de esta estrategia consiste en calcular los puntos de precio máximo y mínimo durante un período.

Banda superior: Escanea la línea K en el período de izquierda a derecha para encontrar un punto máximo, y luego determina si la primera línea K a su izquierda hacia la izquierda y la primera línea K a su derecha hacia la derecha son ambas inferiores a este punto máximo.

Banda inferior: Escanea la línea K en el período de izquierda a derecha para encontrar un punto mínimo bajo, y luego determina si la primera línea K a su izquierda hacia la extrema izquierda y la primera línea K a su derecha hacia la extrema derecha son ambas más altas que este punto mínimo bajo.

Al repetir este cálculo, se pueden obtener las bandas superiores e inferiores de los precios durante un período. Tomar posiciones largas cuando los precios rompen la banda superior y tomar posiciones cortas cuando los precios rompen la banda inferior. Esto forma una estrategia de negociación de tendencia basada en la determinación de la tendencia por los puntos extremos de precios.

Análisis de ventajas

La forma en que esta estrategia juzga la tendencia es bastante sencilla al determinar la parte de fortalecimiento de la tendencia a través de los puntos extremos de precios, que pueden filtrar efectivamente los escenarios de consolidación y evitar el comercio en consolidaciones.

Análisis de riesgos

La estrategia toma señales muy estrictamente, lo que puede perder más oportunidades comerciales. Además, los puntos extremos necesitan algún tiempo para acumularse y formarse, lo que será relativamente rezagado. Los parámetros necesitan una optimización adecuada. Cuando los parámetros son incorrectos, también es muy probable que ocurran señales erróneas.

El rigor de la evaluación de los puntos extremos puede reducirse moderadamente para permitir algunas fluctuaciones para reducir el riesgo de error de evaluación.

Direcciones de optimización

El ciclo para determinar las bandas superior e inferior puede optimizarse adecuadamente para capturar mejor la tendencia.

Para reducir la posibilidad de perder oportunidades comerciales, las condiciones para determinar los puntos extremos pueden aflojarse moderadamente para permitir cierta fluctuación.

Se puede intentar confirmar con otros indicadores, como los indicadores de volumen, las medias móviles, etc., para evitar el riesgo de señales erróneas derivadas de un juicio sobre un solo indicador.

Conclusión

La forma en que esta estrategia juzga las características de la tendencia por los puntos extremos del precio es bastante sencilla y efectiva. Puede filtrar efectivamente la consolidación y determinar el tiempo de fortalecimiento de las tendencias para el comercio de tendencias. La ventaja de la estrategia radica en una buena posición de generación de señales para perseguir las tendencias. La desventaja es que las señales pueden tener cierto retraso y es difícil capturar giros. A través de la optimización de parámetros y condiciones, esta estrategia puede convertirse en una herramienta de juicio de tendencias relativamente confiable.


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

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/02/2018
//  Stock market moves in a highly chaotic way, but at a larger scale, the movements 
// follow a certain pattern that can be applied to shorter or longer periods of time 
// and we can use Fractal Chaos Bands Indicator to identify those patterns. Basically, 
// the Fractal Chaos Bands Indicator helps us to identify whether the stock market is 
// trending or not. When a market is trending, the bands will have a slope and if market 
// is not trending the bands will flatten out. As the slope of the bands decreases, it 
// signifies that the market is choppy, insecure and variable. As the graph becomes more 
// and more abrupt, be it going up or down, the significance is that the market becomes 
// trendy, or stable. Fractal Chaos Bands Indicator is used similarly to other bands-indicator 
// (Bollinger bands for instance), offering trading opportunities when price moves above or 
// under the fractal lines.
//
// The FCB indicator looks back in time depending on the number of time periods trader selected 
// to plot the indicator. The upper fractal line is made by plotting stock price highs and the 
// lower fractal line is made by plotting stock price lows. Essentially, the Fractal Chaos Bands 
// show an overall panorama of the price movement, as they filter out the insignificant fluctuations 
// of the stock price.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
fractalUp(pattern) =>
    p = high[pattern+1]
    okl = 1
    okr = 1
	for i = pattern to 1
		okl := iff(high[i] < high[i+1] and okl == 1 , 1, 0)
	for i = pattern+2 to pattern*2+1
		okr := iff(high[i] < high[i-1] and okr == 1, 1, 0)
	res = iff(okl == 1 and okr == 1, p, res[1])
    res

fractalDn(pattern) =>
    p = low[pattern+1]
    okl = 1
    okr = 1
	for i = pattern to 1
		okl := iff(low[i] > low[i+1] and okl == 1 , 1, 0)
	for i = pattern+2 to pattern*2+1
		okr := iff(low[i] > low[i-1] and okr == 1, 1, 0)
	res = iff(okl == 1 and okr == 1, p, res[1])
    res

strategy(title="Fractal Chaos Bands", overlay = true)
Pattern = input(1, minval=1)
reverse = input(false, title="Trade reverse")
xUpper = fractalUp(Pattern)
xLower = fractalDn(Pattern)
pos = iff(close > xUpper, 1,
       iff(close < xLower, -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(xUpper, color=red, title="FCBUp")
plot(xLower, color=green, title="FCBDn")

Más.