Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/deltaray-io/kelly-criterion
Kelly Criterion calculation
https://github.com/deltaray-io/kelly-criterion
quantitative-finance quantitative-trading trading-algorithms
Last synced: 3 months ago
JSON representation
Kelly Criterion calculation
- Host: GitHub
- URL: https://github.com/deltaray-io/kelly-criterion
- Owner: deltaray-io
- License: bsd-3-clause
- Created: 2015-05-14T09:25:00.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T01:36:55.000Z (about 2 years ago)
- Last Synced: 2024-08-04T04:05:31.221Z (6 months ago)
- Topics: quantitative-finance, quantitative-trading, trading-algorithms
- Language: Python
- Homepage:
- Size: 18.6 KB
- Stars: 88
- Watchers: 8
- Forks: 27
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-quant - Kelly-Criterion - Kelly Criterion implemented in Python to size portfolios based on J. L. Kelly Jr's formula. (Python / Financial Instruments and Pricing)
README
Kelly Criterion
===============
Money management strategy based on Kelly J. L.'s formula described in "A New Interpretation of Information Rate" [1].
The formula was adopted to gambling and stock market by Ed Thorp, et al., see:
"The Kelly Criterion in Blackjack Sports Betting, and the Stock Market" [2].This program calculates the optimal capital allocation for the provided portfolio of securities with the formula:
`f_i = m_i / s_i^2`
where
* `f_i` is the calculated leverage of the i-th security from the portfolio
* `m_i` is the mean of the return of the i-th security from the portfolio
* `s_i` is the standard deviation of the return of the i-th security from the portfolioassuming that the strategies for the securuties are all statistically independent.
The stock quotes are downloaded from Yahoo Finance using Pandas.
Reference (Matlab) implementation was taken from Ernie Chan's Quantitative Trading book [3].
Installation
------------
`pip install kelly_criterion`Usage
-----
`kelly_criterion [--risk-free-rate=] ...`Example
-------
```
$ kelly_criterion --risk-free-rate 0.04 2001-02-26 2014-12-28 IBB VDE SPY
Kelly Criterion calculation
Arguments: risk-free-rate=0.04 start-date=2001-02-26 end-date=2014-12-28 securities=['IBB', 'VDE', 'SPY']Leverages per security:
IBB: 3.61
SPY: -2.73
VDE: 1.04
Sum leverage: 1.92
```Dependencies
------------
* Python 2.7
* [Numpy](http://www.numpy.org/)
* [Pandas](http://pandas.pydata.org/)
* [Docopt](http://docopt.org/)References
----------
* [1]: [A New Interpretation of Information Rate](http://ieeexplore.ieee.org/stamp/stamp.jsp?reload=true&tp=&arnumber=6771227)
* [2]: [The Kelly Criterion in Blackjack Sports Betting, and the Stock Market](http://www.edwardothorp.com/sitebuildercontent/sitebuilderfiles/beatthemarket.pdf)
* [3]: [Ernest P. Chan: Quantitative Trading (ISBN 978-0470284889)](http://www.amazon.com/Quantitative-Trading-Build-Algorithmic-Business/dp/0470284889)