Quant with Vahab
Quant Systems Lab · Control Systems for Quantitative Finance

Particle and Kalman Filtering in Finance

Filters infer hidden states (value, volatility, regimes) from noisy price or order-flow observations.

Explanation

Kalman filters solve linear-Gaussian state-space models exactly with recursive updates.

Particle filters generalise to non-linear or non-Gaussian cases by propagating weighted particles.

In finance, filters track latent volatility, trend, liquidity, or order-flow imbalance in real time.


filteringstate-spaceparticle filterkalman
Interactive visualisation

A latent state (grey) generates noisy observations (red points). The Kalman filter (blue) and a particle filter (green) both try to recover that state in real time. Change noise levels and particle count to see how smoothing and tracking trade off.

Latent state x_t vs noisy observations y_t and filter estimatest=0t=4t=8t=12t=16state x_tKalmanParticley_t
|estimate − state| over time: blue = Kalman, green = particle
Numbers
σ_state ≈ 20.0%, σ_obs ≈ 15.0%
Particles ≈ 40
Mean |error| Kalman ≈ 0.102
Mean |error| particle ≈ 0.140
Interpretation

With low observation noise, both filters can track the grey state closely. As σ_obs rises, the red dots jump more: the Kalman filter smooths these jumps using its model, while the particle filter uses a cloud of scenarios. Increasing the particle count reduces the green error line: the ensemble is a better approximation of the full Bayesian update.

In finance, the latent state might be trend, volatility, or “efficient price”, and observations are microstructure-noisy quotes. Linear–Gaussian structure favours the Kalman side; non-linear or heavy-tailed effects motivate particle approaches, at the cost of computation.