{ "info": { "author": "Rob Scott", "author_email": "rob@rjdscott.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "=====\nderpy\n=====\n\n.. image:: https://img.shields.io/pypi/v/derpy.svg\n :target: https://pypi.python.org/pypi/derpy\n\n.. image:: https://img.shields.io/travis/rjdscott/derpy.svg\n :target: https://travis-ci.org/rjdscott/derpy\n\n.. image:: https://readthedocs.org/projects/derpy/badge/?version=latest\n :target: https://derpy.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n\n\n\nFinancial derivatives and portfolio analysis tools for python\n\n* Free software: MIT license\n* Documentation: https://derpy.readthedocs.io.\n\n\nHow to get up and running\n*****************************\nto include the module in your project, you can simply use `pip install derpy` then in your python project\n\n.. code-block:: python\n\n import derpy\n print(derpy.__version__) # returns '0.0.1'\n\nExample uses\n***************\n\nBonds\n==========\n\n.. code-block:: python\n\n from derpy import bond as bd\n\n px = 95.0428\n face_val = 100.0\n mat = 1.5\n cpn_frq = 2\n cpn_rate = 5.25\n ytm = 5.5\n\n print(' Price: {}'.format(bd.bond_price(face_val, mat, ytm, cpn_rate, cpn_frq)))\n print(' Yield: {}'.format(bd.bond_ytm(px, face_val, mat, cpn_rate, cpn_frq)))\n print(' ModDur: {}'.format(bd.bond_duration(px, face_val, mat, cpn_rate, cpn_frq)[0]))\n print(' MacDur: {}'.format(bd.bond_duration(px, face_val, mat, cpn_rate, cpn_frq)[1]))\n print('Convexity: {}'.format(bd.bond_convexity(px, face_val, mat, cpn_rate, cpn_frq)))\n\nOptions\n============\n\n.. code-block:: python\n\n from derpy.options import black_scholes_merton as bsm\n\n # usage method 1: use function wrapper\n input = ['call', 20, 21, 0.20, 0.1, 0.0002, 0]\n call_price = bsm.option_pricing(bsm.euro_option, input)\n call_gamma = bsm.option_pricing(bsm.gamma, input)\n\n # usage method 2: call individual functions\n put_price = bsm.euro_option('put', 20, 21, 0.2, 0.1, 0.0002) # div_yield is optional\n put_gamma = bsm.gamma('put', 20, 21, 0.2, 0.1, 0.0002, 0.0001)\n\n print(call_price) # return 0.16384395..\n print(call_gamma) # return 0.23993880..\n print(put_price) # return 1.16342..\n print(put_gamma) # return 0.2399107..\n\nPortfolio analysis\n=====================\n\n.. code-block:: python\n\n from derpy import portfolio as pt\n\n securities = ['AAA', 'BBB']\n positions = [[11, 10], [12, 10], [13, 10], [13, 11], [13, 12]]\n prices = [[10, 10], [11, 10], [12, 10], [12, 10], [12, 10]]\n dates = ['2018-07-01', '2018-08-01', '2018-09-01', '2018-10-01', '2018-11-01']\n\n df_positions = pd.DataFrame(data=positions, columns=securities, index=dates)\n df_prices = pd.DataFrame(data=prices, columns=securities, index=dates)\n\n p = pt.Portfolio(names=securities, positions=df_positions, prices=df_prices)\n\n print(p.sec_values())\n print(p.sec_weights())\n print(p.portfolio_value())\n print(p.portfolio_returns())\n\n\n=========\nHistory\n=========\n\n\n0.1.0 (2018-09-19)\n*******************************\n\n\n* Released option pricing\n* Released portfolio analysis\n* Added testing for Options and Portfolios\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rjdscott/derpy", "keywords": "derpy asset stock exchange securities market finance investment money currency cost framework", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "derpy", "package_url": "https://pypi.org/project/derpy/", "platform": "", "project_url": "https://pypi.org/project/derpy/", "project_urls": { "Homepage": "https://github.com/rjdscott/derpy" }, "release_url": "https://pypi.org/project/derpy/0.1.1/", "requires_dist": [ "Click (>=6.0)", "pandas", "numpy", "scipy" ], "requires_python": "", "summary": "Financial derivatives and portfolio analysis tools for python", "version": "0.1.1" }, "last_serial": 4295096, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "54fdaa83c1390d4b4780108ad2cd98dd", "sha256": "3f5defb4dd9782f6795b4195377aa7433923509fefbee05070a1262e27d5edb2" }, "downloads": -1, "filename": "derpy-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "54fdaa83c1390d4b4780108ad2cd98dd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13409, "upload_time": "2018-09-21T06:13:52", "url": "https://files.pythonhosted.org/packages/f8/e3/c191f7302b7a8d3659da20ecf40306f863aedabe84c51f8b5b06af80964d/derpy-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "423de4cddd33a43a3a0417e6dd86503a", "sha256": "6139da08d33db891e1fb010e904afd47ec99caa05facbcc5f1bd1433ef08f2eb" }, "downloads": -1, "filename": "derpy-0.1.0.tar.gz", "has_sig": false, "md5_digest": "423de4cddd33a43a3a0417e6dd86503a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15835, "upload_time": "2018-09-21T06:13:53", "url": "https://files.pythonhosted.org/packages/7b/cd/eb897af797f02759dab738fa6cd1845113d3d16aebbbbca91c9e9056f6bf/derpy-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bd866dcb8547c362f8791b9a77732cc6", "sha256": "a8bd325c49b2332247a9e0d345714eb44596bca4e7f3b8b847ae2f87be360658" }, "downloads": -1, "filename": "derpy-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bd866dcb8547c362f8791b9a77732cc6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13417, "upload_time": "2018-09-21T06:34:39", "url": "https://files.pythonhosted.org/packages/2d/0f/cc6bf47c238e8428729273de05f01e4bdc24fbe746660132f67ecf93e3a9/derpy-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6245cc0b20dfe04ca1d19d5c16979cc", "sha256": "baacb62838cf7e1de41b1e289424373af8107b3f87ad101608b07dbedd47faf0" }, "downloads": -1, "filename": "derpy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d6245cc0b20dfe04ca1d19d5c16979cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15793, "upload_time": "2018-09-21T06:34:40", "url": "https://files.pythonhosted.org/packages/88/0f/ba740f8495182413e5ec3ed81ed0c7ee8b7af38babfdfd6a19986d2022c6/derpy-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bd866dcb8547c362f8791b9a77732cc6", "sha256": "a8bd325c49b2332247a9e0d345714eb44596bca4e7f3b8b847ae2f87be360658" }, "downloads": -1, "filename": "derpy-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bd866dcb8547c362f8791b9a77732cc6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13417, "upload_time": "2018-09-21T06:34:39", "url": "https://files.pythonhosted.org/packages/2d/0f/cc6bf47c238e8428729273de05f01e4bdc24fbe746660132f67ecf93e3a9/derpy-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6245cc0b20dfe04ca1d19d5c16979cc", "sha256": "baacb62838cf7e1de41b1e289424373af8107b3f87ad101608b07dbedd47faf0" }, "downloads": -1, "filename": "derpy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d6245cc0b20dfe04ca1d19d5c16979cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15793, "upload_time": "2018-09-21T06:34:40", "url": "https://files.pythonhosted.org/packages/88/0f/ba740f8495182413e5ec3ed81ed0c7ee8b7af38babfdfd6a19986d2022c6/derpy-0.1.1.tar.gz" } ] }