mathmatical finance in python. Supported methods are belows:
- replication method
- QuantoCMS
- Analytic formula
- Black Scholes
- Black
- SABR
- Quasi Monte Carlo
- sobol sequence (cython) up to 21202 dimension
pip install mafipy
Run examples
git clone https://github.com/i05nagai/mafipy.git
cd mafipy
python examples/plot_smile_curve_sabr.py
You will see the following drawing.
Set up development environment.
git clone https://github.com/i05nagai/mafipy.git
cd mafipy
git submodule init
git submodule update
pip install -r requirements.txt
To generate c files,
python setup.py build_ext
To run tests, you additionally need to install pytest.
pip install -r requirements-dev.txt
python setup.py test
asv is required to execute benchmarks. You can install asv by pip.
pip install asv
Then
# execute benchmarks
python setup.py benchmark
# generate html file from the results
python setup.py benchmark_publish
# preview the generated html through local server
python setup.py benchmark_preview
Suppose that we create the version v.X.Y.Z. We follow PEP0440 compatible versioning rule.
In Circle CI, every built creates release files in master brnach. Make sure that the release files are properly created before releasing.
- Create git tag locally
git tag -a vX.Y.Z master
# for testing purpose, in this case, the package will be uploaded to test.pypi.org
git tag -a vX.Y.Zdev master
- Push git tag to remote
git push origin vX.Y.Z
- Circle CI build and run tests. After all tests passed, Circle CI make a release to GitHub and upload wheels to PyPI.
- GitHub - lballabio/QuantLib: The QuantLib C++ library
- One of the best library for mathmatical finance. The library is written in C++. There are many wrapper projects of the QuantLib.
- GitHub - finmath/finmath-lib: Mathematical Finance Library: Algorithms and methodologies related to mathematical finance.
- Mathematical Finance Library: Algorithms and methodologies related to mathematical finance. The library is written in Java.