TommasoBelluzzo
HistoricalVolatility
MATLAB

A framework for historical volatility estimation and analysis.

Last updated Apr 9, 2026
36
Stars
16
Forks
0
Issues
0
Stars/day
Attention Score
32
Language breakdown
No language data available.
Files click to expand
README

Historical Volatility

This script calculates and analyses the following historical volatility estimators:

  • the traditional Close-to-Close estimator (and a variant of it that uses demeaned returns);
  • the Parkinson estimator (1980);
  • the Garman-Klass estimator (1980) and a variant proposed by Yang & Zhang (2000);
  • the Rogers-Satchell estimator (1991);
  • the Hodges-Tompkins estimator (2002);
  • the Yang-Zhang estimator (2000);
  • the Meilijson estimator (2009).

Requirements

The minimum Matlab version required is R2014a. In addition, the following products and toolboxes must be installed in order to properly execute the script:

  • Statistics and Machine Learning Toolbox
  • System Identification Toolbox

Usage

  • Edit the run.m script following your needs.
  • Execute the run.m script.

Dataset

Datasets can be fetched from Yahoo! Finance using the function fetchdata, or parsed from Excel sheets using the function parsedataset. The example script provides a good overview of both approaches.

Every dataset passed as input argument to analyzevolatility, compareestimators and estimate_volatility functions must be structured as a table of historical time series having the following columns: - Date (numeric observation dates) - Open (opening prices) - High (highest prices) - Low (lowest prices) - Close (closing prices) - Return (log returns)

Screenshots

Volatility Cones

Estimators Comparison

Estimators Correlation

🔗 More in this category

© 2026 GitRepoTrend · TommasoBelluzzo/HistoricalVolatility · Updated daily from GitHub