-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
effa90b
commit b073fe6
Showing
4 changed files
with
79 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# Changes to the InvestOps Python package | ||
|
||
## Version 0.1.0 (2021-10-23) | ||
|
||
First beta version with the following features: | ||
|
||
- Portfolio diversification (`diversify.py`) | ||
- Portfolio weight normalization (`normalize.py`) | ||
- Random generation of portfolio weights and correlation matrix (`random.py`) | ||
- Check and fix correlation matrix (`check.py`) | ||
- Linear mapping (`maps.py`) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,66 @@ | ||
# InvestOps | ||
|
||
Stay tuned, coming soon to a [cinema](https://www.youtube.com/watch?v=MFqxdvggAxM) near you! | ||
[Original repository on GitHub](https://github.com/Hvass-Labs/InvestOps) | ||
|
||
Original author is [Magnus Erik Hvass Pedersen](http://www.hvass-labs.org) | ||
|
||
|
||
## Introduction | ||
|
||
This is a Python package with simple and effective tools for investing, | ||
including the following: | ||
|
||
- Portfolio diversification using the so-called "Hvass Diversification" | ||
algorithm, which is extremely fast to compute and very robust to estimation | ||
errors in the correlation matrix. | ||
([Tutorial](https://github.com/Hvass-Labs/InvestOps-Tutorials/blob/master/01_Portfolio_Diversification.ipynb)) | ||
([Paper](https://ssrn.com/abstract=3942552)) | ||
|
||
The InvestOps Python package is a distilled version of some of the research | ||
from the [FinanceOps](https://github.com/Hvass-Labs/FinanceOps) project, | ||
whose papers can be found on [SSRN](http://papers.ssrn.com/sol3/cf_dev/AbsByAuth.cfm?per_id=1993051) | ||
and [GitHub](https://github.com/Hvass-Labs/Finance-Papers). | ||
|
||
|
||
## Tutorials | ||
|
||
[Tutorials](https://github.com/Hvass-Labs/InvestOps-Tutorials) are made as | ||
Python Notebooks which can be modified and run entirely on the internet | ||
or on your own computer. | ||
|
||
|
||
## Installation | ||
|
||
It is best to use a virtual environment when installing Python packages, | ||
so you can easily delete the environment again if something goes wrong. | ||
You write the following in a Linux terminal: | ||
|
||
virtualenv investops-env | ||
|
||
Or you can use [Anaconda](https://www.anaconda.com/download) instead of a virtualenv: | ||
|
||
conda create --name investops-env python=3 | ||
|
||
Then you switch to the virtual environment: | ||
|
||
source activate investops-env | ||
|
||
And then you can install the InvestOps package inside that virtual environment: | ||
|
||
pip install investops | ||
|
||
You can now import the InvestOps package in your Python program as follows: | ||
|
||
import investops as iv | ||
|
||
# Print the InvestOps version. | ||
print(iv.__version__) | ||
|
||
|
||
## License (MIT) | ||
|
||
This is published under the [MIT License](https://github.com/Hvass-Labs/InvestOps/blob/main/LICENSE) | ||
which allows very broad use for both academic and commercial purposes. | ||
|
||
You are very welcome to modify and use this source-code in your own project. | ||
Please keep a link to the [original repository](https://github.com/Hvass-Labs/InvestOps). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,2 @@ | ||
# The version is also defined in setup.py and must be updated in both places. | ||
__version__ = "0.0.1" | ||
|
||
# Expose the following as top-level imports. | ||
|
||
__version__ = "0.1.0" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,7 +2,7 @@ | |
from setuptools import setup | ||
|
||
# Also defined in investops/__init__.py and must be updated in both places. | ||
MY_VERSION = '0.0.1' | ||
MY_VERSION = '0.1.0' | ||
|
||
setup( | ||
name='investops', | ||
|
@@ -17,10 +17,11 @@ | |
author_email='[email protected]', | ||
url='https://github.com/Hvass-Labs/InvestOps', | ||
license='MIT', | ||
keywords=['investing', 'portfolio optimization'], | ||
keywords=['investing', 'portfolio optimization', 'hvass diversification'], | ||
install_requires=[ | ||
'numpy', | ||
'pandas', | ||
'numba', | ||
], | ||
) | ||
|