Skip to main content

Python Financial Engineering

Project description

PyFENG: [Py]thon [F]inancial [ENG]ineering

PyPI version Documentation Status Downloads

PyFENG provides an implementation of the standard financial engineering models for derivative pricing.

Implemented Models

  • Black-Scholes-Merton (BSM) and displaced BSM models:
    • Analytic option price, Greeks, and implied volatility.
  • Bachelier (Normal) model
    • Analytic option price, Greeks, and implied volatility.
  • Constant-elasticity-of-variance (CEV) model
    • Analytic option price, Greeks, and implied volatility.
  • Stochastic-alpha-beta-rho (SABR) model
    • Hagan's BSM vol approximation.
    • Choi & Wu's CEV vol approximation.
    • Analytic integral for the normal SABR.
    • Closed-form MC simulation for the normal SABR.
  • Hyperbolic normal stochastic volatility (NSVh) model
    • Analytic option pricing.
  • Heston model
    • FFT option pricing.
    • Almost exact MC simulation by Glasserman & Kim and Choi & Kwok.
  • Schobel-Zhu (OUSV) model
    • FFT option pricing.
    • Almost exact MC simulation by Choi
  • Rough volatility models
    • Rough Heston MC by Ma & Wu

About the Package

  • Uses numpy arrays as basic datatype so computations are naturally vectorized.
  • Purely Python without C/C++ extensisons.
  • Implemented with Python class.
  • Intended for academic use. By providing reference models, it saves researchers' time. See PyFENG for Papers in Related Projects below.

Installation

pip install pyfeng

For upgrade,

pip install pyfeng --upgrade

Code Snippets

In [1]:

import numpy as np
import pyfeng as pf
m = pf.Bsm(sigma=0.2, intr=0.05, divr=0.1)
m.price(strike=np.arange(80, 121, 10), spot=100, texp=1.2)

Out [1]:

array([15.71361973,  9.69250803,  5.52948546,  2.94558338,  1.48139131])

In [2]:

sigma = np.array([[0.2], [0.5]])
m = pf.Bsm(sigma, intr=0.05, divr=0.1) # sigma in axis=0
m.price(strike=[90, 95, 100], spot=100, texp=1.2, cp=[-1,1,1])

Out [2]:

array([[ 5.75927238,  7.38869609,  5.52948546],
       [16.812035  , 18.83878533, 17.10541288]])

Author

Related Projects

  • Commercial versions (implemented and optimized in C/C++) for some models are available. Email the author at pyfe@eml.cc.
  • PyFENG for Papers is a collection of Jupyter notebooks that reproduce the results of financial engineering research papers using PyFENG.
  • FER: Financial Engineering in R developed by the same author. Not all models in PyFENG are implemented in FER. FER is a subset of PyFENG.

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

pyfeng-0.3.0.tar.gz (206.7 kB view details)

Uploaded Source

Built Distribution

pyfeng-0.3.0-py3-none-any.whl (220.1 kB view details)

Uploaded Python 3

File details

Details for the file pyfeng-0.3.0.tar.gz.

File metadata

  • Download URL: pyfeng-0.3.0.tar.gz
  • Upload date:
  • Size: 206.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for pyfeng-0.3.0.tar.gz
Algorithm Hash digest
SHA256 053c7663b5c52a0b43bf85a21ce7b05cf841812544de3fc4d409083661c309bb
MD5 ca3e837b3bde52c09cb6ab9f4ce1aad1
BLAKE2b-256 76e39a9008b0e41272669c3afc0a566d30646323d72f288c6ce10fa051a69574

See more details on using hashes here.

File details

Details for the file pyfeng-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pyfeng-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 220.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for pyfeng-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 046df2da1dae413948191af44b7af5ea0209b67ae244591db3245849b20b3649
MD5 a994af534008f6024922a6cb87246c26
BLAKE2b-256 6e652cec950ec9833c3939113a0bd1beb87f3bb11fb2a5fa8b7577fa1a30669e

See more details on using hashes here.

Supported by

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