Estimating Correlations for Multi-Asset Heston Simulations
Summary
The document explains how to specify correlated Brownian drivers for a two-asset Heston model. Since each asset has a price process and a variance process, the simulation uses four stochastic drivers and therefore requires a joint four-by-four correlation matrix for Cholesky-based sampling. The matrix includes each asset’s price–variance correlation as well as cross-asset relationships among the drivers.
Variance is latent, so its Brownian shocks cannot be recovered directly from historical market observations in the usual way. The answer suggests calibrating within-asset parameters from time series or options, then estimating cross-asset correlations through historical methods such as Gibbs sampling, or using practical proxies: return correlation for price shocks and implied-volatility correlation for variance shocks, with price-to-other-asset-variance correlations set to zero. These are modeling suggestions rather than validated universal estimates. The response cautions indirectly that unavailable basket options and model error limit calibration, and a follow-up raises the possibility that a constructed matrix may not be positive definite without resolving it.
Key ideas
- Two assets with price and variance drivers require a joint four-by-four correlation matrix.
- Latent variance shocks cannot be directly inferred from observed market data in the usual way.
- Historical returns and implied-volatility series can serve as proxies for selected cross-asset correlations.
- Setting some cross-correlations to zero is a simplifying assumption, and matrix validity still needs attention.
Tags
Full text
# Correlated Wiener processes of different factors
# Correlated Wiener processes of different factors
I'm relatively new in this field, so I have a couple of points that I need to clarify.
I would like to know how I can estimate the correlation matrix necessary to implement a Cholesky decomposition for a model that has two different sources of risk.
Let's take for example an Heston model where we have two Brownian motions, $W_{s}$ and $W_{v}$.
In the case of a portfolio composed by two stocks, in order to be able to simulate correlated paths:
- How do I estimate the correlation matrix of the variance process for the two stocks? Moving average std or other methods?
- Because in Heston model $W_{s}$ and $W_{v}$ are correlated, so that we have $\rho_{1}=corr(W_{1s},W_{1v})$ for the first asset and $\rho_{2}=corr(W_{2s},W_{2v})$ for the second asset, do I have to get two different matrixes of dimension $2\times2$ (one for each stock) or one matrix of dimension $4\times4$?
Thank you in advance!
## Answer by Brian B (score 2)
https://quant.stackexchange.com/a/9184
You need to obtain a $4 \times 4$ correlation matrix. As you effectively observe, you have four random processes driving the system, with $i \in 1,2$
$$ \frac{dS_i}{S_i} = \mu_i dt + \sqrt{v_i} dW_{Si} \\ dv_i = \kappa(\bar{v}_{i}-v_i) dt + \xi \sqrt{v_i} dW_{vi} $$
Each of the $W_{ji},j\in\{S,v\},i\in 1,2$ is a brownian motion correlated with the others, with coefficient $\rho_{i_1,j_1}^{i_2,j_2}$.
Because $v$ is not observed, you cannot work backwards from historical market data to values of $W_{ji}$, so you cannot obtain correlations in the "usual" manner.
You can estimate the parameters of each individual model (including the $\rho_{i,j_1}^{i,j_2}$ values) either by calibrating to historical time series data or to the options markets (depending on your application). This leaves you with a set of cross correlations $\rho_{i_1,j_1}^{i_2,j_2},i_1\neq i_2$ to estimate, and you probably lack basket options to calibrate them from.
You can calibrate these historically, perhaps using Gibbs Sampling due to the complexity of the joint terminal distribution. Alternatively, you could just go with estimates based on simple relationships. That is, set
$$ \rho_{1,S}^{2,S} = \text{Corr}\left( \text{Ret}(\{S_1\}), \text{Ret}(\{S_2\}) \right)\\ \rho_{1,v}^{2,v} = \text{Corr}\left( \left\{\sigma_1^{\text{implied}}\right\}, \left\{\sigma_2^{\text{implied}}\right\} \right) \\ \rho_{1,S}^{2,v} = \rho_{1,v}^{2,S} = 0 $$
You are unlikely (in my opinion) to be making estimation errors larger than your model errors.
## Answer by jso (score 0)
https://quant.stackexchange.com/a/9187
thanks for your answer. Actually I though to use a similar method but using the historical returns and calculating the rolling volatility, obtaining a backward measure of the correlation.
One more question: With $corr(\{\sigma_{1}^{implied}\},\{\sigma_{2}^{implied}])$ do you mean a correlation calculated from a chain of options (i.e. ATM for every maturity available for example) or other type of implied volatilities?
Then, adding all these terms together, and leaving 0 on the cross correlations, it is possible that the final correlation matrix is not positive definite. What do you think about?Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.