Skip to main content

VWAP Execution

What It Does

VWAP (Volume-Weighted Average Price) aims to execute an order at or near the market's average price over a time window. It does this by timing slices to coincide with favorable price movements.

How Our VWAP Works

Our VWAP uses the same engine as TWAP but with favorable-entry detection enabled. The key difference:

  • TWAP: Executes slices on a fixed schedule regardless of price
  • VWAP: Waits for price to dip below the rolling average before buying (or above average before selling)

This approximates true VWAP behavior — you end up buying more when prices are low and less when prices are high, which naturally achieves a volume-weighted average fill.

Favorable Entry Logic

For buy orders:

  1. Engine tracks a 2-minute rolling price average
  2. Only executes a slice when current price is 0.1%+ below the average (buying the dip)
  3. If price stays above average for 10 minutes, executes anyway (hard fallback)

For sell orders:

  1. Same 2-minute rolling average
  2. Only executes when price is 0.1%+ above average (selling the rip)
  3. Same 10-minute hard fallback

Compared to Pure TWAP

FeatureTWAPVWAP
TimingFixed intervalsWaits for favorable price
Average fillTime-weightedApproximates volume-weighted
Completion timePredictableVariable (could take longer)
Best inStable marketsVolatile/choppy markets

Parameters

Same as TWAP — see TWAP Execution for full parameter list. The favorable entry detection activates automatically when current price is passed to the slice calculator.

When to Use

  • Choppy markets where price oscillates — VWAP will buy the dips automatically
  • When you care more about average fill quality than execution speed
  • Large entries ($5K+) where getting a better average saves meaningful money

When Not to Use

  • Trending markets where waiting for dips means fighting the trend
  • When you need guaranteed completion time (TWAP is more predictable)
  • Fast markets where the 10-minute max wait is too long