Skip to main content

A Python library for financial yield curves.

Project description

Python library yieldcurves

GitHubWorkflow Read the Docs GitHub GitHub release PyPI Version PyPI - Python Version PyPI Downloads

A Python library for financial yield curves. Typical banking business methods are provided like interpolation, compounding, discounting and fx.

Example Usage

>>> from curves.interpolation import linear
>>> from yieldcurves import YieldCurve
>>> time_grid = [0, 2]
>>> rate_grid = [.03, .05]
>>> curve = linear(time_grid, rate_grid)
>>> yc = YieldCurve(curve)
>>> yc.zero(0, 1)
0.040000000000000036
>>> yc.df(0, 1)
0.9607894391523232

Or use datetime

>>> from yieldcurves import DateCurve
>>> from datetime import date
>>> start = date(2013, 1, 1)
>>> mid = date(2014, 1, 1)
>>> end = date(2015, 1, 1)
>>> dc = DateCurve.from_interpolation([start, end], [.03, .05], origin=start)
>>> dc.zero(start, mid)
0.03999999999999998
>>> dc.df(start, mid)
0.9608157444936446

The framework works fine with native datetime but we recommend businessdate package for more convenient functionality to roll out date schedules.

>>> from businessdate import BusinessDate, BusinessSchedule

So, build a date schedule.

>>> today = BusinessDate(20201031)
>>> schedule = BusinessSchedule(today, today + "8q", step="1q")
>>> schedule
[BusinessDate(20201031), BusinessDate(20210131), BusinessDate(20210430), BusinessDate(20210731), BusinessDate(20211031), BusinessDate(20220131), BusinessDate(20220430), BusinessDate(20220731), BusinessDate(20221031)]

Documentation

More documentation available at https://yieldcurves.readthedocs.io

Install

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

$ pip install yieldcurves

Development Version

The latest development version can be installed directly from GitHub:

$ pip install --upgrade git+https://github.com/sonntagsgesicht/yieldcurves.git

Contributions

Issues and Pull Requests are always welcome.

License

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

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

yieldcurves-0.2.9.zip (45.3 kB view details)

Uploaded Source

File details

Details for the file yieldcurves-0.2.9.zip.

File metadata

  • Download URL: yieldcurves-0.2.9.zip
  • Upload date:
  • Size: 45.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for yieldcurves-0.2.9.zip
Algorithm Hash digest
SHA256 aac6d42e5f3ef4c3181fb41bc60b8c919555297adad33f1ee61f2b1b16cf2470
MD5 58d02d665e252ca89c59fcdecf6c3c84
BLAKE2b-256 908a40c3c59fb3ca2a65a67b1bb7160141305d2f6033c7acc5b7a8af59fa7e07

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