Skip to main content

Implements high-frequency financial econometrics tools.

Project description

Table of Contents

  1. HFFE: High-Frequency Financial Econometrics
    1. Introduction
    2. Stocks
    3. Options
    4. Under development
    5. Redo introduction
    6. Add examples on how to use stock.py
    7. Add examples on how to use options.py
    8. Change file stock.py to stocks.py
    9. Add citations
    10. Sample data
    11. [stock.py] Change internals to pandas dataframe
    12. [stock.py]
    13. [stock.py] Truncated variance estimator
    14. [stock.py] Local volatility estimator
    15. [stock.py] Confidence intervals

HFFE: High-Frequency Financial Econometrics

Introduction

This package implements some tools of the high-frequency financial econometrics literature. The HFFE package provides a class Stock. This class can be used in two ways:

  1. Instantiate the class and provide stock data. The instance __init__ method will automatically compute geometric returns, realized and bipower variances, and separate diffusive from jump returns using the stock data supplied.
  2. Use the class methods by themselves as needed. All of the methods in Stock are static methods and can be used without instantiating the class.

The class can be instantiated via the default constructor by supplying an iterable containing prices (floats) and an iterable containing date stamps (in the format YYYYMMDD for year, month and day). The default constructor also takes an optional iterable containing time stamps (in the format HHMM for hour and minute or HHMMSS for hour, minute and second). The data is assumed to be rectangular, meaning that each day contains the same number of price observations.

Prices are assumed to be observed (N) times per day, at the same discrete intervals. For example, if prices are sampled every 5 minutes starting from 9:30 AM and finishing at 4:00 PM, then we will have (N=79) price observations per day. Prices are assumed to be observed for (T) total days. In each of these (T) days we have (N) price observations. Geometric returns (log-returns) are computed for each of the days and for each of the discrete sampling intervals. However, overnight returns are not considered, and the packaged only focuses on the analysis of intraday returns. If there are (N=79) price observations each day, then we will have (n=78) returns each day.

Example:

from hffe import Stock
from random import normalvariate as randn
# generate some fake data
prices = np.array([10.0 + randn(0, 1) for _ in range(10)])
dates = ['20181112']*len(prices)
times = [f'093{i}' for i in range(10)]
# instantiate class
stock = Stock(prices, dates, times)
# at this point we can access the returns, variance measures and
# obtain the diffusive returns separated from the jump returns
print(f'Number of prices per day: {stock.total["prices"]}\n'
  f'Number of days: {stock.total["days"]}')
print(stock.returns)
# print measures of variance
print(f'Realized Variance: {stock.RV}\n'
  f'Annualized Realized Variance: {(252*stock.RV)**0.5}\n'
  f'Bipower Variance: {stock.BV}\n'
  f'Annualized Bipower Variance: {(252*stock.BV)**0.5}')

Stocks

Options

Under development

TODO Redo introduction

TODO Add examples on how to use stock.py

TODO Add examples on how to use options.py

TODO Change file stock.py to stocks.py

TODO Add citations

  1. TODO To volatility estimators

  2. TODO To jump threshold and separtion

  3. TODO To time-of-day factor

TODO Sample data

  1. TODO Sample stock data

  2. TODO Sample SPX options data

TODO [stock.py] Change internals to pandas dataframe

TODO [stock.py]

TODO [stock.py] Truncated variance estimator

TODO [stock.py] Local volatility estimator

TODO [stock.py] Confidence intervals

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

hffe-0.0.13.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hffe-0.0.13-py3-none-any.whl (28.7 kB view details)

Uploaded Python 3

File details

Details for the file hffe-0.0.13.tar.gz.

File metadata

  • Download URL: hffe-0.0.13.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for hffe-0.0.13.tar.gz
Algorithm Hash digest
SHA256 794191124fae440282255b18ba8dda2fae7e8a1655c903d4a47c0fc702d43b48
MD5 943f9c5636b1473b16e4926b53a3ff63
BLAKE2b-256 b857f66c3d407934568c96617e08acbae6e930c73c1e7a474c49a2adbc77ccd4

See more details on using hashes here.

File details

Details for the file hffe-0.0.13-py3-none-any.whl.

File metadata

  • Download URL: hffe-0.0.13-py3-none-any.whl
  • Upload date:
  • Size: 28.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for hffe-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 57e81f922088ed52d08b391947aa47fa468377e6027a7bcb5ffff74e68461129
MD5 e919aab6a08f915cb966190088b237da
BLAKE2b-256 87430f4a81d11da5ceda9707f15165ce79d17d19b516d31eef7cacd286ca50e1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page