# DATA SCIENCE USING PYTHON

## ONLINE TRAINING COURSE

# Generalized Autoregressive Conditional Heteroskedasticity (GARCH) Model

GARCH is a statistical model that can be used to analyse a number of different types of financial data, for instance, macroeconomic data. Financial institutions typically use this model to estimate the volatility of returns for stocks, bonds and market indices.

GARCH models describe financial markets in which volatility can change, becoming more volatile during periods of financial crises or world events and less volatile during periods of relative calm and steady economic growth.

GARCH model is the extension of ARCH model as follow:

*
Var(û _{t}) = σ^{2}_{t} = β_{0} + β_{1} û^{2}_{t - 1} + β_{2} σ^{2}_{t - 1} + …… + β_{p} û^{2}_{t – p} + β_{q} σ^{2}_{t – q}
*

Here, σ^{2}_{t} is a function of lagged squared error term û^{2} as well as lagged σ^{2}_{t}

It is denoted by GARCH(p,q) where p is lagged error term and q is lagged variance. Lagged terms are added based on AIC, BIC, test of significance and so on.

GARCH(1,1) model is similar to ARCH(2) model and GARCH(p,q) model is similar to ARCH(p+q) model.

I implemented the GARCH Model to model the US/UK Foreign Exchange Rate data and GARCH(1,1) is not significant. GARCH(1,0) is significant which is equivalent to ARCH(1) model.

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

import seaborn as sns

import math

# Load the input files

us_uk_fx_rates = pd.read_excel("./Data/US_UK_Foreign_ Exchange_Rate.xls", sheet_name = "Data"

us_uk_fx_rates.head()

Date | us_uk_fx_rates | |
---|---|---|

0 | 1973-01-01 | 2.36 |

1 | 1973-02-01 | 2.43 |

2 | 1973-03-01 | 2.47 |

3 | 1973-04-01 | 2.48 |

4 | 1973-05-01 | 2.53 |

__Implementation of GARCH Models using Python__