Library for flexible mean and volatility modelling
Project description
armagarch package
The package provides a flexible framework for modelling time-series data. The main focus of the package is implementation of the ARMA-GARCH type models.
Full documentation and installation instruction coming soon.
Example: Modelling conditional volatility of the US excess market returns
The code requires: NumPy, Pandas, SciPy, Shutil, Matplotlib, Pandas_datareader and Statsmodels
import armagarch as ag
import pandas_datareader as web
import matplotlib.pyplot as plt
import numpy as np
# load data from KennethFrench library
ff = web.DataReader('F-F_Research_Data_Factors_daily', 'famafrench')
ff = ff[0]
# define mean, vol and distribution
meanMdl = ag.ARMA(order = {'AR':1,'MA':0})
volMdl = ag.garch(order = {'p':1,'o':1,'q':1})
distMdl = ag.normalDist()
# create a model
model = ag.empModel(ff['Mkt-RF'].to_frame(), meanMdl, volMdl, distMdl)
# fit model
model.fit()
# get the conditional mean
Ey = model.Ey
# get conditional variance
ht = model.ht
cvol = np.sqrt(ht)
# get standardized residuals
stres = model.stres
Authors
- Ian Khrashchevskyi - iankhr
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Acknowledgments
- Special thanks to Kevin Sheppard for his Python for Econometrics, which was an inspiration to write current code
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
armagarch-1.0.tar.gz
(22.3 kB
view hashes)
Built Distribution
armagarch-1.0-py3-none-any.whl
(37.6 kB
view hashes)