
La estrategia de extracción de tendencias de ondas de fluctuación es una estrategia de seguimiento de tendencias de acciones basada en un filtro de fluctuación. La estrategia utiliza un índice de medias móviles ponderadas y ondas de fluctuación para procesar la secuencia de precios, extraer los componentes de la tendencia en los precios y usar ciertos parámetros como una señal para establecer una posición de paz.
La estrategia primero construye un promedio móvil ponderado de doble índice, controlando la duración y el deslizamiento del promedio móvil mediante la regulación de los parámetros Length y Delta. Luego, utiliza un conjunto de transformaciones matemáticas para extraer el componente de tendencia de la secuencia de precios y almacenarlo en la variable xBandpassFilter. Finalmente, calcula el promedio móvil simple de xBandpassFilter, xMean, como indicador de la construcción de la posición y la posición.
Cuando se pasa el nivel establecido por el parámetro Trigger en xMean, se hace más cabeza, y cuando se pasa el siguiente, se hace cabeza vacía. Se puede controlar la sensibilidad de la construcción de la bodega y la bodega ajustando el nivel de Trigger.
Se puede mejorar el retraso mediante la reducción adecuada de los parámetros de longitud y ajustar la sensibilidad de las estrategias de control de nivel de disparador.
La estrategia es más estable en general y funciona mejor en mercados de fuerte tendencia. Se puede optimizar aún más de varias maneras para mantener una ganancia estable en más entornos de mercado. La estrategia merece más investigación y aplicación.
/*backtest
start: 2022-12-27 00:00:00
end: 2024-01-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version = 2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 14/12/2016
// The related article is copyrighted material from Stocks & Commodities Mar 2010
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// 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(title="Extracting The Trend Strategy Backtest")
Length = input(20, minval=1)
Delta = input(0.5)
Trigger = input(0)
reverse = input(false, title="Trade reverse")
hline(Trigger, color=blue, linestyle=line)
xPrice = hl2
beta = cos(3.1415 * (360 / Length) / 180)
gamma = 1 / cos(3.1415 * (720 * Delta / Length) / 180)
alpha = gamma - sqrt(gamma * gamma - 1)
xBandpassFilter = 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(xBandpassFilter[1]) - alpha * nz(xBandpassFilter[2])
xMean = sma(xBandpassFilter, 2 * Length)
pos = iff(xMean > Trigger, 1,
iff(xMean < Trigger, -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(xMean, color=red, title="ExTrend")