Estrategia de seguimiento de tendencias basada en el patrón de nubes de tres indicadores

El autor:¿ Qué pasa?, Fecha: 2023-09-13 17:38:55
Las etiquetas:

Esta estrategia se llama Estrategia de seguimiento de tendencias basada en el patrón de nubes de triple indicador.

Los tres indicadores utilizados son:

Kaufman Adaptive Moving Average, sensible para capturar la volatilidad del mercado.

La media móvil del casco, con sus giros suaves, filtra señales falsas.

Mecanismo de SuperTendencia, formando canales de precios para evitar perseguir máximos y vender mínimos.

Juntos forman el patrón de nubes, con la banda superior siendo los valores más altos de los tres, y la banda inferior los valores más bajos.

La lógica de negociación es:

Cuando el candelero se rompe por encima de la cima de la nube, indica que se rompe el canal de tendencia alcista para una señal de compra.

Cuando el cierre o el bajo se rompe por debajo del fondo de las nubes, marca el comienzo de una tendencia bajista para cerrar operaciones largas.

La ventaja de esta estrategia es que el combo de indicadores juzga el estado de la tendencia con más precisión, reduciendo las señales falsas.

En resumen, el uso de múltiples indicadores para determinar las tendencias es un enfoque común y eficaz.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SnarkyPuppy

//@version=5
strategy("HKST Cloud", overlay=true, default_qty_type= strategy.percent_of_equity, default_qty_value=100)



////////////////nAMA
Lengthkaufman = input(20) 
xPrice = ohlc4
xvnoise = math.abs(xPrice - xPrice[1])
nfastend = 0.666
nslowend = 0.0645
nsignal = math.abs(xPrice - xPrice[Lengthkaufman])
nnoise = math.sum(xvnoise, Lengthkaufman)
nefratio = nnoise != 0? nsignal / nnoise : 0
nsmooth = math.pow(nefratio * (nfastend - nslowend) + nslowend, 2) 
nAMA =  float(0)
nAMA := nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))

//plot(nAMA,color=color.red)
///short=input(true)



///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////

////////hull moving average
hull_len=input(20)
hull= ta.hma(nAMA,hull_len)

///////atr trail
atr_factor=input(2)
atr_period=input(5)
[supertrend, direction] = ta.supertrend(atr_factor,atr_period)

/////////cloud
band1= math.max(supertrend,hull,nAMA)
band2= math.min(supertrend,hull,nAMA)

b1=plot(band1, "band1", color = color.rgb(76, 175, 79, 85), style=plot.style_linebr)
b2=plot(band2, "band2", color = color.rgb(255, 82, 82, 78), style=plot.style_linebr)
fill(b1,b2,color.rgb(12, 50, 186, 75))
longCondition = ta.crossover(high,band1) //or ta.crossover(low,band2)
if (longCondition)
    strategy.entry("Up", strategy.long)

shortCondition =  ta.crossunder(low,band2) or close<band2
if (shortCondition) 
    strategy.close("Up", shortCondition)



Más.