Algorithmic Trading: Strategies and Execution
Module: Fintech AI | Difficulty: Advanced
Alpha Decay
Transaction Cost Model
Almgren-Chriss Model
where = trade size, = average daily volume.
Execution Algorithms
| Algorithm | Purpose | Cost | |-----------|---------|------| | TWAP | Time-weighted | Low | | VWAP | Volume-weighted | Low | | Implementation Shortfall | Minimize regret | Medium | | Iceberg | Hide size | Low |
import numpy as np
class TWAP:
def __init__(self, total_shares, n_slices):
self.shares_per_slice = total_shares // n_slices
self.n_slices = n_slices
def execute(self, market_data):
executions = []
for i in range(self.n_slices):
executions.append({
'time': i,
'shares': self.shares_per_slice,
'price': market_data[i]
})
return executions
class AlmgrenChriss:
def __init__(self, gamma=0.1, sigma=0.02, V_adv=1e6):
self.gamma = gamma; self.sigma = sigma; self.V_adv = V_adv
def market_impact(self, trade_size, horizon):
return self.gamma * self.sigma * np.sqrt(trade_size / self.V_adv)
def optimal_trajectory(self, total_shares, n_steps):
return np.linspace(0, total_shares, n_steps + 1)[::-1]
Research Insight: The key challenge in algorithmic trading is that alpha decays quickly β by the time a signal is detected and executed, it may have already been arbitraged away. The optimal execution strategy balances market impact against timing risk.