Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Volatility-Weighted Multi-Strategy Portfolio (Python)

A systematic multi-strategy research project that combines three market-neutral long/short strategies and allocates capital using inverse-volatility and risk-parity-style weighting, including transaction cost modeling.

Strategies

  1. Cross-Sectional Momentum (Long/Short)

    • Ranks assets by risk-adjusted trailing return (return / volatility)
    • Long top quantile, short bottom quantile (market-neutral)
  2. Cross-Sectional Mean Reversion (Long/Short)

    • Short-horizon reversal: long recent losers, short recent winners
    • Quantile-based market-neutral construction
  3. Breakout Channel (Long/Short)

    • Uses a rolling price channel to score strength/weakness
    • Quantile-based market-neutral construction

Portfolio Construction

The strategy return streams are combined using one of:

  • inverse_vol: weights ∝ 1 / rolling volatility
  • risk_parity: rolling covariance-based risk parity (iterative equal risk contribution)
  • *_sharpe_filter: optionally down-weights strategies with negative rolling Sharpe

Strategy weights are applied with a 1-day lag to avoid look-ahead bias.

Costs

Transaction costs are modeled as:

  • commission + slippage (bps)
  • applied proportional to turnover at rebalances (strategy level and portfolio level)

Repo Structure

multi-strategy-portfolio/
├── requirements.txt
├── config.py
├── data.py
├── costs.py
├── metrics.py
├── portfolio.py
├── backtest.py
├── run.py
└── strategies
├── init.py
├── momentum.py
├── mean_reversion.py
└── breakout.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages