Skip to content

UnbreakablePACHES/SPO3

Repository files navigation

SPO3

SPO3 is a research codebase for portfolio optimization with learning-based return prediction and decision-focused losses (including SPO+).

Quick Start

  1. Install dependencies in your Python environment.
  2. Prepare data using scripts in scripts/.
  3. Run training and evaluation:
python run.py --config <path_to_config.yaml>

Project Structure

  • models/: portfolio optimization models (e.g., Markowitz, CVaR).
  • losses/: decision-focused loss implementations.
  • predictors/: return prediction modules.
  • utils/: training, tuning, backtesting, and data utilities.
  • configs/: experiment configuration files.
  • scripts/: data download and preprocessing helpers.

Notes

  • Use batch_run.py or batch_run_baseline.py for batch experiments.
  • Example data download instructions are in scripts/download_example.md.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages