Skip to main content

Financial applications for portfolio management

Project description

PyFinanceLab

PyFinanceLab is a library which brings together various financial applications into one package for research and portfolio management. Navigate to the jupyter folder of the pyfinlab repository to see usage examples.

PyFinanceLab is in pre-alpha development. Please open an issue if you find any bugs.

Features

  • Data API Wrapper The data API wrapper makes it easy to switch between yfinance (free to use) and tia (Bloomberg Professional Service subscription required) libraries for pulling financial data.

  • Portfolio Optimizer Compute an efficient frontier of portfolios based on any one of 16 risk models and 6 return models from Hudson & Thame's PortfolioLab or PyPortfolioOpt libraries.

  • Optimizer Backtest Backtest optimized portfolios and compute performance charts, efficient frontier plots, and performance statistics.

  • Excel Report Generation Show your optimizer results and backtest in a nicely formatted Excel file for further analysis.

Installation

PyFinanceLab comes with many dependencies. It is recommended you use Anaconda for this installation process. Anaconda Individual Edition is appropriate for most users. Make sure you have installed Microsoft C++ Build Tools installed on your computer. If you encounter any errors with, "Microsoft Visual C++ 14.0 is required", try following these instructions to download and install Microsoft Visual C++ 14.0. Open an issue if you need help.

Windows Instructions

Open Anaconda Prompt and create a new environment called pyfinlab.

conda create -n pyfinlab python=3.8 git

Activate the new pyfinlab environment.

conda activate pyfinlab

Install the following pip packages.

pip install portfoliolab yfinance tqdm pyfinlab openpyxl ffn patsy

Install the following github repository.

pip install git+https://github.com/PaulMest/tia.git#egg=tia

Install the following conda packages.

conda install -c conda-forge blpapi jupyterlab statsmodels xlsxwriter openpyxl tqdm

Check to see if you can import pyfinlab modules. Your python interpreter should look like the following if the modules were successfully installed. If you get an error, please open an issue.

python
>>> import portfoliolab, tia, blpapi, yfinance, pyfinlab, statsmodels, xlsxwriter, openpyxl, tqdm, ffn
>>> 

Roadmap

Future development will include:

  • Multifactor Scoring Model

    Analyze and rank every stock and ETF according to factors assumed to have excess returns and violate the efficient market hypothesis.

  • Documentation

    Documentation will be published as this Python library is further developed.

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

pyfinlab-0.0.17.tar.gz (48.4 kB view hashes)

Uploaded Source

Built Distribution

pyfinlab-0.0.17-py3-none-any.whl (25.9 kB view hashes)

Uploaded Python 3

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