Fitting a Clayton–Frank–Gumbel Mixed Copula for Pairs Trading
Summary
This code implements a bivariate mixture of Clayton, Frank, and Gumbel copulas, framed as a dependency model for a mixed-copula pairs trading strategy. It transforms each input series to empirical marginal quantiles, then fits the mixture weights and component parameters with an expectation-maximization procedure. The expectation step updates weights, while the maximization step optimizes copula parameters against a penalized likelihood. A SCAD penalty encourages small mixture weights toward zero, and weights below a configurable threshold are removed after fitting.
The implementation returns the fitted log likelihood and records the parameters and weights for the three components. Its documentation warns that results are sensitive to penalty settings, that default choices were assessed on limited stock-price and return datasets, and that users should tune settings or consider cross-validation and visual checks. The code itself provides no trading rules, backtest results, or evidence of profitability; fitting a dependence model alone does not establish a viable pairs strategy.
Key ideas
- The model combines Clayton, Frank, and Gumbel copulas to represent bivariate dependence.
- Input series are mapped to empirical quantiles before fitting.
- An expectation-maximization routine estimates mixture weights and copula parameters using penalized likelihood.
- A SCAD penalty can suppress components with small fitted weights.
- Penalty settings are sensitive, and the documentation describes testing on limited datasets.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.