Modules for Quantitative Financial Analysis
Project description
ModFin
The ModFin project aims to provide users with the necessary tools for modeling and analyzing individual assets and portfolios. This package contains various modules that provide a variety of useful functions and algorithms. Here is a table of the implemented modules:
Note: Modules to be fully implemented on live libraries.
- Analysis of Time Series
- Bet Sizing
- Data Structures
- Online Portfolio
- Option Pricing
Installation
Requirements
ModFin requires Python 3.8 or later and C++ build tools.
If needed, you can install the C++ build tools on Visual Studio.
Methods
The project is available on PyPI, and can be installed with pip package manager with the following command:
$ pip install modfin
Alternatively, install the package from the source using the following command:
git clone https://github.com/GabrielAbra/modfin
python setup.py install
Asset Screening
The AssetScreening
module offers functions for screening assets based on a predetermined set of metrics. One fundamental approach is to screen assets based on smart betas (Style factors), when a given a combination of traits, are likely to be of interest to a specific investor. The ready to use functions groups are:
Metrics
This submodule provides bundles of functions that can be used to screen assets. Some of the metrics are:
-
Risk Metrics
- Beta, Downside Beta, Beta Quotient
- RSquaredScore
- LPM
- ...
-
Return Metrics
- Annualized Return
- Exponencial Returns
- Log Returns
- ...
-
Ratio Metrics
- Omega Ratio
- Sortino Ratio
- Tail Ratio
- ...
Screening
This submodule provides functions that can be used to screen assets. Some of the screening functions are:
-
Z-Score Screening
-
Sequential Screening
-
Quantile Screening
Risk Matrix
The RiskMatrix
module provides multiple functions for analyzing time series data and generating risk matrices. There are three different types of algorithms that can be distinguished as:
-
Sample
- Covariance
- Semicovariance
-
Estimator
- Empirical Covariance
- Minimum Covariance Determinant
-
Shrinkage
- Shrinkage (Basic Shrinkage)
- LedoitWolf (Ledoit-Wolf Shrinkage Method)
- Oracle (Oracle Approximating Shrinkage)
Portfolio Optimization
The PortfolioOpt
module provides algorithms for optimization of an a asset portfolios. The algorithms live implemented algorithms are:
-
Risk Parity
The
RiskParity
algorithm is a simple algorithm that optimizes a portfolio based on the risk parity weighting. -
Hierarchical Risk Parity
The
HierarchicalRiskParity
(HRP) algorithm, implements the allocation based on the book:De Prado, Marcos Lopez. Advances in financial machine learning. John Wiley & Sons, 2018.
The algorithm is a risk based optimisation, which has been shown to generate diversified portfolios with robust out-of-sample properties.
-
Inverse Variance
The
InverseVariance
algorithm is a simple algorithm that optimizes a portfolio based on the provided risk matrix (usually the covariance matrix). -
Efficient Frontier
The
EfficientFrontier
algorithm provide a portfolio allocation based on the modern portfolio theory (MPT). The algoritms was first proposed by Harry Markowitz in the paper:Markowitz, H.M.. Portfolio Selection. The Journal of Finance, 1952.
License
ModFin is released under the MIT license, so the code is open source and can be used in any project, provided that the original author is credited.
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
Built Distribution
File details
Details for the file modfin-0.1.5.tar.gz
.
File metadata
- Download URL: modfin-0.1.5.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7218cff22f1f3b05569db2fe267d7b8aeef4eeb5c20dc6f20bc39500e9406264 |
|
MD5 | 2257ed19a04ccb9e237e768c75f63310 |
|
BLAKE2b-256 | 6ff1ace536331eb02e619aa67cd2b042b56127dce23fc2d42f082d5e4186a60d |
File details
Details for the file modfin-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: modfin-0.1.5-py3-none-any.whl
- Upload date:
- Size: 27.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cdfb0ed0d89a54325d292965b10f72f6067684a653ae79fb37dacf1fd953679 |
|
MD5 | b112c8417f664625cfdd481e95a0f67a |
|
BLAKE2b-256 | 1f6ce701f66b4c0864aec68e27109127435c8417c83013cb989d69390f333948 |