All Projects → Marigold → Universal Portfolios

Marigold / Universal Portfolios

Licence: other
Collection of algorithms for online portfolio selection

Projects that are alternatives of or similar to Universal Portfolios

Thstrader
量化交易。同花顺免费模拟炒股软件客户端的python API。(Python3)
Stars: ✭ 311 (-0.64%)
Mutual labels:  jupyter-notebook
Ielixir
Jupyter's kernel for Elixir programming language
Stars: ✭ 312 (-0.32%)
Mutual labels:  jupyter-notebook
Transportationnetworks
Transportation Networks for Research
Stars: ✭ 312 (-0.32%)
Mutual labels:  jupyter-notebook
Tensorflow Image Classification
CNN for multi-class image recognition in tensorflow
Stars: ✭ 312 (-0.32%)
Mutual labels:  jupyter-notebook
Chinesenlpcorpus
搜集、整理、发布 中文 自然语言处理 语料/数据集,与 有志之士 共同 促进 中文 自然语言处理 的 发展。
Stars: ✭ 3,746 (+1096.81%)
Mutual labels:  jupyter-notebook
A 2017
Public Repository for cs109a, 2017 edition
Stars: ✭ 315 (+0.64%)
Mutual labels:  jupyter-notebook
Test Stock Prediction Algorithms
Use deep learning, genetic programming and other methods to predict stock and market movements
Stars: ✭ 312 (-0.32%)
Mutual labels:  jupyter-notebook
Cs231
Complete Assignments for CS231n: Convolutional Neural Networks for Visual Recognition
Stars: ✭ 317 (+1.28%)
Mutual labels:  jupyter-notebook
Pytorch Vdsr
VDSR (CVPR2016) pytorch implementation
Stars: ✭ 313 (+0%)
Mutual labels:  jupyter-notebook
Clrs
Some exercises and problems in Introduction to Algorithms 3rd edition.
Stars: ✭ 313 (+0%)
Mutual labels:  jupyter-notebook
Shapematchinggan
[ICCV 2019, Oral] Controllable Artistic Text Style Transfer via Shape-Matching GAN
Stars: ✭ 315 (+0.64%)
Mutual labels:  jupyter-notebook
Reinforcement Learning
Learn Deep Reinforcement Learning in 60 days! Lectures & Code in Python. Reinforcement Learning + Deep Learning
Stars: ✭ 3,329 (+963.58%)
Mutual labels:  jupyter-notebook
Notebooks
Directory of Jupyter notebooks exploring various topics
Stars: ✭ 315 (+0.64%)
Mutual labels:  jupyter-notebook
Tianchi Medical Lungtumordetect
天池医疗AI大赛[第一季]:肺部结节智能诊断 UNet/VGG/Inception/ResNet/DenseNet
Stars: ✭ 314 (+0.32%)
Mutual labels:  jupyter-notebook
Evidently
Interactive reports to analyze machine learning models during validation or production monitoring.
Stars: ✭ 304 (-2.88%)
Mutual labels:  jupyter-notebook
Adaptis
[ICCV19] AdaptIS: Adaptive Instance Selection Network, https://arxiv.org/abs/1909.07829
Stars: ✭ 314 (+0.32%)
Mutual labels:  jupyter-notebook
Scratch mlp
Explaining the Math of how neural networks learn
Stars: ✭ 315 (+0.64%)
Mutual labels:  jupyter-notebook
Python Machine Learning Blueprints
Code repository for Python Machine Learning Blueprints, published by Packt
Stars: ✭ 316 (+0.96%)
Mutual labels:  jupyter-notebook
Advanced Deep Trading
Mostly experiments based on "Advances in financial machine learning" book
Stars: ✭ 316 (+0.96%)
Mutual labels:  jupyter-notebook
Machine Learning Python
機器學習: Python
Stars: ✭ 316 (+0.96%)
Mutual labels:  jupyter-notebook

universal-portfolios

The purpose of this package is to put together different online portfolio selection algorithms and provide unified tools for their analysis. If you do not know what online portfolio is, look at Ernest Chan blog, CASTrader or a recent survey by Bin Li and Steven C. H. Hoi.

In short, the purpose of online portfolio is to choose portfolio weights in every period to maximize its final wealth. Examples of such portfolios could be Markowitz portfolio or Universal portfolio. Currently there is an active research in the are of online portfolios and even though its results are mostly theoretic, algorithms for practical use starts to appear.

Several algorithms from the literature are currently implemented, based on the available literature and my understanding. Contributions or corrections are more than welcomed.

Resources

There is an IPython notebook explaining the basic use of the library. Paul Perry followed up on this and made a comparison of all algorithms on more recent ETF datasets. Also see the most recent notebook about modern portfolio theory. There's also an interesting discussion about this on Quantopian.

The original authors of some of the algorithms recently published their own implementation on github - On-Line Portfolio Selection Toolbox in MATLAB.

If you are more into R or just looking for a good resource about Universal Portfolios, check out blog and package logopt by Marc Delvaux.

If you don't want to install the package locally, you can run both notebooks with Binder - modern-portfolio-theory.ipynb Binder or On-line portfolios.ipynb Binder

Installation

pip install universal-portfolios

Development

It uses poetry to manage dependencies. Run poetry install to install virtual environment and then poetry shell to launch it.

Exporting dependencies to requirements.txt file is done via

poetry export --without-hashes -f requirements.txt > requirements.txt
poetry export --dev --without-hashes -f requirements.txt > test-requirements.txt

this is needed for mybinder.org.

Publishing to PyPi

poetry publish --build

Tests

poetry run python -m pytest --capture=no --ff -x tests/
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].