POV (Percentage of Volume)
What It Does
POV maintains a constant percentage of market volume. Unlike TWAP which is time-based, POV adapts to actual market conditions — trading more when volume is high, less when volume is low.
How It Works
- You specify a target participation rate (e.g., 5% of market volume)
- The engine monitors market volume in a rolling 60-second window
- Each cycle, it calculates:
order_size = recent_volume x target_rate x mode_multiplier - Orders are placed as limit orders, bounded by min/max size limits
- Continues until the total target size is filled
Execution Modes
| Mode | Multiplier | Behavior |
|---|---|---|
| Passive | 0.7x | Under-participate to minimize footprint |
| Normal | 1.0x | Match target rate exactly |
| Aggressive | 1.3x | Over-participate to complete faster |
Example
With 5% participation on a market doing $100K/minute:
- Normal: Places ~$5K/minute in orders
- Passive: ~$3.5K/minute
- Aggressive: ~$6.5K/minute
If market volume drops to $10K/minute, order sizes automatically shrink to $500/minute (normal mode).
Parameters
| Parameter | Default | Range | Description |
|---|---|---|---|
| Target rate | 5% | 1-25% | Percentage of market volume to match |
| Volume window | 60s | 30-300s | Rolling window for volume calculation |
| Min order size | $10 | - | Won't place orders smaller than this |
| Max order size | $1,000 | - | Caps individual slice size |
| Execution mode | Normal | Passive/Normal/Aggressive | How aggressively to participate |
When to Use
- Large institutional-style entries where you want to match market rhythm
- Exiting positions without dumping — your selling looks like normal flow
- Markets with variable liquidity where fixed-interval TWAP would over-trade in quiet periods
When Not to Use
- Very low volume markets where even 5% would be detectable
- When you need guaranteed fill timing (TWAP is more predictable)