
Se trata de una estrategia de negociación intradiaria que combina el precio promedio ponderado por volumen de transacción (VWAP), el indicador de amplitud real (ATR) y el análisis del comportamiento de los precios. La estrategia determina la tendencia del mercado observando el cruce de los precios con el VWAP, mientras que utiliza la dinámica ATR para establecer objetivos de stop loss y profit. La idea central de la estrategia es buscar oportunidades de negociación cuando los precios regresan al VWAP y controlar el riesgo a través del ATR.
La estrategia se basa principalmente en los siguientes principios centrales:
Se trata de una estrategia de trading cuantitativa que combina análisis técnico y gestión de riesgos dinámicos. El uso de VWAP y ATR en combinación garantiza la objetividad de las señales de trading y permite un control eficaz del riesgo. El concepto de diseño de la estrategia cumple con los requisitos de la negociación cuantitativa moderna, con una buena utilidad y escalabilidad.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Price Action + VWAP + ATR Intraday Strategy", overlay=true)
// VWAP Calculation
vwapValue = ta.vwap(close)
// ATR Calculation (14-period)
atr = ta.atr(14)
// Price Action Setup for Bullish and Bearish Trades
bullishCondition = close > vwapValue and close[1] < vwapValue // Price above VWAP (Bullish bias) and Price action pullback to VWAP
bearishCondition = close < vwapValue and close[1] > vwapValue // Price below VWAP (Bearish bias) and Price action rally to VWAP
// Set stop loss and take profit based on ATR
atrMultiplier = 1.5
longStopLoss = low - atr
shortStopLoss = high + atr
longTakeProfit = close + (atr * atrMultiplier)
shortTakeProfit = close - (atr * atrMultiplier)
// Entry and Exit Rules
// Bullish Trade: Price pullback to VWAP and a bounce with ATR confirmation
if (bullishCondition and ta.crossover(close, vwapValue))
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", limit=longTakeProfit, stop=longStopLoss)
// Bearish Trade: Price rally to VWAP and a rejection with ATR confirmation
if (bearishCondition and ta.crossunder(close, vwapValue))
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", limit=shortTakeProfit, stop=shortStopLoss)
// Plot VWAP on the chart
plot(vwapValue, color=color.blue, linewidth=2, title="VWAP")
// Plot ATR on the chart for reference (Optional)
plot(atr, title="ATR", color=color.orange, linewidth=1)