gs_quant.timeseries.statistics.cov¶
- cov(x, y, w=<gs_quant.timeseries.helper.Window object>)[source]¶
Rolling co-variance of series over given window
- Parameters:
x (
Series
) – series: timeseriesy (
Series
) – series: timeseriesw (
Union
[Window
,int
,str
]) – Window or int: size of window and ramp up to use. e.g. Window(22, 10) where 22 is the window size and 10 the ramp up value. If w is a string, it should be a relative date like ‘1m’, ‘1d’, etc. Window size defaults to length of series.
- Return type:
Series
- Returns:
timeseries of covariance
Usage
Provides unbiased estimator of sample co-variance over a rolling window:
\(R_t = \frac{1}{N-1} \sum_{i=t-w+1}^t (X_i - \overline{X_t}) (Y_i - \overline{Y_t})\)
where \(N\) is the number of observations in each rolling window, \(w\), and \(\overline{X_t}\) and \(\overline{Y_t}\) represent the sample mean of series \(X_t\) and \(Y_t\) over the same window:
\(\overline{X_t} = \frac{\sum_{i=t-w+1}^{t} X_i}{N}\) and \(\overline{Y_t} = \frac{\sum_{i=t-w+1}^{t} Y_i}{N}\)
If window is not provided, computes variance over the full series
Examples
Generate price series and compute variance of returns over \(22\) observations
>>> prices_x = generate_series(100) >>> prices_y = generate_series(100) >>> cov(returns(prices_x) returns(prices_y), 22)
See also