A estratégia de preço médio ponderado por volume (VWAP) é uma estratégia que rastreia o preço médio de uma ação durante um tempo especificado. A estratégia usa o VWAP como referência e toma posições longas ou curtas quando o preço cruza acima ou abaixo do VWAP. Também define condições de stop loss e take profit para gerenciar negócios.
A estratégia primeiro calcula o preço típico (média dos preços altos, baixos e próximos) multiplicado pelo volume e a soma do volume. Em seguida, o VWAP é calculado dividindo a soma do produto preço-volume típico pela soma do volume. Quando o preço cruza o VWAP, vá longo. Quando o preço cruza abaixo, vá curto.
A condição de obtenção de lucro para as posições longas é fechar quando o preço sobe 3% acima do preço de entrada. A condição de stop loss é quando o preço cai 1% abaixo do preço de entrada. Condições semelhantes se aplicam às posições curtas.
As principais vantagens da estratégia VWAP são:
Utiliza a estatística VWAP bem reconhecida como referência para os sinais comerciais, tornando a estratégia mais eficaz.
Utiliza tanto sinais de vwap quanto stop loss/profit taking, capaz de lucrar com tendências e limitar perdas.
Lógica simples e clara, fácil de entender e implementar.
Há também alguns riscos com esta estratégia:
O VWAP não pode prever preços futuros, por isso os sinais podem atrasar.
A posição de stop loss pode ser demasiado ampla, aumentando a perda potencial.
Testes de retorno mais longos significam mais sinais, o desempenho real pode diferir.
Estes riscos podem ser reduzidos através do ajuste dos parâmetros, da otimização dos algoritmos de stop loss, etc.
Algumas maneiras de otimizar a estratégia incluem:
Otimizar os parâmetros VWAP para encontrar o melhor período de cálculo.
Teste outros algoritmos de parada de rastreamento, por exemplo, parada de média móvel, SAR parabólica.
Combinar outros indicadores para filtrar sinais VWAP, por exemplo volume, bandas de Bollinger.
Em resumo, a estratégia VWAP utiliza o poder preditivo desta importante estatística, com stop loss/profit taking para alcançar expectativas positivas a longo prazo.
/*backtest start: 2023-11-28 00:00:00 end: 2023-12-28 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("VWAP Strategy by Royce Mars", overlay=true) cumulativePeriod = input(14, "Period") var float cumulativeTypicalPriceVolume = 0.0 var float cumulativeVolume = 0.0 typicalPrice = (high + low + close) / 3 typicalPriceVolume = typicalPrice * volume cumulativeTypicalPriceVolume := cumulativeTypicalPriceVolume + typicalPriceVolume cumulativeVolume := cumulativeVolume + volume vwapValue = cumulativeTypicalPriceVolume / cumulativeVolume // Buy condition: Price crosses over VWAP buyCondition = crossover(close, vwapValue) // Short condition: Price crosses below VWAP shortCondition = crossunder(close, vwapValue) // Profit-taking condition for long positions: Sell long position when profit reaches 3% profitTakingLongCondition = close / strategy.position_avg_price >= 1.03 // Profit-taking condition for short positions: Cover short position when profit reaches 3% profitTakingShortCondition = close / strategy.position_avg_price <= 0.97 // Stop loss condition for long positions: Sell long position when loss reaches 1% stopLossLongCondition = close / strategy.position_avg_price <= 0.99 // Stop loss condition for short positions: Cover short position when loss reaches 1% stopLossShortCondition = close / strategy.position_avg_price >= 1.01 // Strategy Execution strategy.entry("Buy", strategy.long, when=buyCondition) strategy.close("Buy", when=shortCondition or profitTakingLongCondition or stopLossLongCondition) strategy.entry("Short", strategy.short, when=shortCondition) strategy.close("Short", when=buyCondition or profitTakingShortCondition or stopLossShortCondition) // Plot VWAP on the chart plot(vwapValue, color=color.blue, title="VWAP")