Skip to main content

risk factor model library python style.

Project description

Python library shortrate

CodeShip Travis ci Read the Docs CodeFactor Grade Code Climate maintainability Codecov lgtm grade total lgtm alerts GitHub GitHub release PyPI Version PyPI - Python Version PyPI Downloads

Risk factor model library python style.

Example Usage

from businessdate import BusinessDate, BusinessRange
from dcf import ZeroRateCurve, FxCurve
from timewave import Consumer, Engine

from shortrate import RiskFactorProducer, GBMFxCurve, HullWhiteCurve, HullWhiteFxCurve, HullWhiteMultiCurrencyCurve

s = BusinessDate()
t = s + '10y'
g = BusinessRange(s, t, '6M')
d = ZeroRateCurve([s], [0.05])
f = ZeroRateCurve([s], [0.04])
x = FxCurve([s], [.8], domestic_curve=d, foreign_curve=f)
r = GBMFxCurve.build(x, volatility=0.2)

print r.evolve(1., s, s + '1y', 0.01)
print r.get_fx_rate(s + '3y'), r._factor_date
print r.evolve(1., s + '1y', s + '5y', 0.1)
print r.get_fx_rate(s + '7y'), r._factor_date

hwd = HullWhiteCurve.build(d, mean_reversion=0.01, volatility=0.03, terminal_date=t)
hwf = HullWhiteCurve.build(f, mean_reversion=0.01, volatility=0.03, terminal_date=t)
hwx = HullWhiteFxCurve.build(r, hwd, hwf)
hwxf = HullWhiteMultiCurrencyCurve.build(hwf, hwd, hwx)

print hwd.evolve(1., s, s + '1y', 0.01)
print hwf.evolve(1., s, s + '1y', 0.02)
print hwx.evolve(1., s, s + '1y', (0.01, 0.02, 0.01))
print hwxf.evolve(1., s, s + '1y', 0.02)

func = (lambda x: hwd.get_cash_rate(t - '1y'))
c = Consumer(lambda x: func(x.date))
res = Engine(RiskFactorProducer(hwd), c).run(g, 100)

print res

Install

The latest stable version can always be installed or updated via pip:

$ pip install shortrate

If the above fails, please try easy_install instead:

$ easy_install shortrate

Development Version

The latest development version can be installed directly from GitHub:

$ pip install --upgrade git+https://github.com/pbrisk/shortrate.git

Contributions

Issues and Pull Requests are always welcome.

License

Code and documentation are available according to the Apache Software License (see LICENSE).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shortrate-0.3.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

shortrate-0.3-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file shortrate-0.3.tar.gz.

File metadata

  • Download URL: shortrate-0.3.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for shortrate-0.3.tar.gz
Algorithm Hash digest
SHA256 6faaae989d393ea031872da9193888f54bab847efc2c1147c0091e5b9b0fd384
MD5 7b193942a811fcbf535a56e1097a52dd
BLAKE2b-256 08822377833a937f3d456c9ab4a1cb9806b9378f95cad3ef849b538b24360213

See more details on using hashes here.

File details

Details for the file shortrate-0.3-py3-none-any.whl.

File metadata

  • Download URL: shortrate-0.3-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for shortrate-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7fadf48bbd3874456af2fb4bac273cc837a4c4b0801fc22aa3582446c5d3de71
MD5 745de9a32610fc99f945c2f761d84528
BLAKE2b-256 93a61a257826b37986d82a9295559bbb5f528df73cb38a3265ceb5e57034be35

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