Metadata-Version: 2.4
Name: opes
Version: 0.1.0
Summary: Open-source Python module for portfolio management with a plethora of portfolio schemes, stochastic backtesting and metrics
Author-email: Nitin Tony Paul <nitintonypaul@gmail.com>
License: MIT
Project-URL: repository, https://github.com/opes-core/opes
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Office/Business :: Financial :: Investment
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy<3.0,>=2.2.6
Requires-Dist: pandas<3.0,>=2.3.3
Requires-Dist: scipy<2.0,>=1.15.2
Dynamic: license-file

# OPES

An open-source Python library for advanced portfolio optimization and backtesting.

## Overview

OPES provides a plethora of quantitative portfolio optimizers with a comprehensive backtesting engine. Test strategies against historical data with configurable slippage costs (stochastic or constant).

## Key Features

- **15+ optimizers (and more to come)**: Mean-Variance, Max Sharpe, Kelly Criterion, Risk Parity, CVaR, Online Learning models and more
- **Advanced backtesting**: Historical performance analysis with wealth plots and comprehensive metrics
- **Stochastic slippage models**: Gamma, Lognormal, Poisson Jump, Inverse Gaussian, or constant costs
- **Flexible regularization**: Entropy, L2, and MaxWeight regularizers
- **Rich metrics**: Sharpe, Sortino, Calmar, Max Drawdown, CVaR, VaR, CAGR, Skewness, Kurtosis and more

## Portfolio Methods

### Utility Theory
- Quadratic Utility
- CRRA
- CARA
- HARA

### Markowitz Paradigm
- Maximum Mean
- Minimum Variance
- Mean Variance
- Maximum Sharpe

### Principled Heuristics
- Risk Parity
- Inverse Volatility
- Softmax Mean
- Maximum Diversification
- 1/N

### Risk Measures
- CVaR
- Mean-CVaR
- EVaR
- Mean-EvaR

### Online Learning
- BCRP with regularization (FTL/FTRL)
- Exponential Gradient
