Market Prediction: Efficiency and Anomalies
Module: Fintech AI | Difficulty: Advanced
Efficient Market Hypothesis
- Weak: Prices reflect all past information
- Semi-strong: Prices reflect all public information
- Strong: Prices reflect all information
Anomaly Detection
Predictability
| Horizon | IC | Source | |---------|-----|--------| | Intraday | 0.1-0.2 | Microstructure | | Daily | 0.02-0.05 | Momentum | | Weekly | 0.01-0.03 | Mean reversion |
import numpy as np
class MarketAnomalyDetector:
def __init__(self, lookback=252):
self.lookback = lookback
def detect(self, returns):
mu = np.mean(returns[-self.lookback:])
sigma = np.std(returns[-self.lookback:])
z_score = (returns[-1] - mu) / sigma
return {
'z_score': z_score,
'anomaly': abs(z_score) > 3,
'direction': 'up' if z_score > 0 else 'down'
}
def regime_detection(self, returns, n_regimes=2):
from hmmlearn import hmm
model = hmm.GaussianHMM(n_components=n_regimes)
model.fit(returns.reshape(-1, 1))
return model.predict(returns.reshape(-1, 1))
Research Insight: Markets are predictably inefficient. Momentum and mean reversion are persistent anomalies. Machine learning can exploit these anomalies, but transaction costs and market impact limit practical profitability. The key is finding signals that decay slowly and are robust to regime changes.