
Se trata de una estrategia de negociación de devolución de la mediana basada en el promedio ponderado por volumen de transacción (VWAP) y el canal de diferencia estándar. Esta estrategia busca oportunidades de negociación mediante la identificación de la cantidad de desviación de los precios del VWAP, el comercio inverso cuando los precios rompen los límites del canal de diferencia estándar, y la liquidación cuando los precios regresan al VWAP. Este método aprovecha al máximo las características de devolución de la mediana del mercado, combinando principios de análisis técnico y estadística.
El núcleo de la estrategia es establecer un intervalo de negociación mediante el cálculo del VWAP y la diferencia estándar de las fluctuaciones de precios. Las implementaciones concretas incluyen:
Se trata de una estrategia neutral basada en principios estadísticos, que captura la desviación y la regresión de los precios a través del VWAP y el canal de diferencia estándar. La estrategia tiene características objetivas y sistemáticas, pero requiere atención en el control de riesgos y optimización de parámetros en la aplicación real. La estabilidad y la fiabilidad de la estrategia se pueden mejorar aún más mediante la adición de filtros de tendencia y la mejora de los mecanismos de control de ventos.
/*backtest
start: 2024-12-03 00:00:00
end: 2024-12-10 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © jklonoskitrader
//@version=5
strategy("ETHUSD VWAP Fade Strategy", overlay=true)
// Input for standard deviation multiplier
std_multiplier = input.float(2.0, title="Standard Deviation Multiplier")
// Calculate cumulative VWAP
cumulative_pv = ta.cum(close * volume) // Cumulative price * volume
cumulative_vol = ta.cum(volume) // Cumulative volume
vwap = cumulative_pv / cumulative_vol // VWAP calculation
// Calculate standard deviation of the closing price
length = input.int(20, title="Standard Deviation Length")
std_dev = ta.stdev(close, length)
upper_band = vwap + std_multiplier * std_dev
lower_band = vwap - std_multiplier * std_dev
// Plot VWAP and its bands
plot(vwap, color=color.blue, linewidth=2, title="VWAP")
plot(upper_band, color=color.red, linewidth=1, title="Upper Band")
plot(lower_band, color=color.green, linewidth=1, title="Lower Band")
// Strategy conditions
go_long = ta.crossunder(close, lower_band)
go_short = ta.crossover(close, upper_band)
// Execute trades
if (go_long)
strategy.entry("Long", strategy.long)
if (go_short)
strategy.entry("Short", strategy.short)
// Exit strategy
if (strategy.position_size > 0 and close > vwap)
strategy.close("Long")
if (strategy.position_size < 0 and close < vwap)
strategy.close("Short")