Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Cross-Sectional Alpha & Multi-Strategy Portfolio (Python)

A lightweight, end-to-end quant research project that builds and backtests multiple systematic strategies from scratch using daily market data.
Focus: cross-sectional signals, realistic backtesting, transaction costs, and portfolio construction.

Strategies Implemented

1) Cross-Sectional Momentum (Long/Short)

Ranks assets by volatility-normalized rolling returns and forms a market-neutral portfolio:

  • Long top quantile of momentum scores
  • Short bottom quantile
  • Monthly rebalancing
  • Includes transaction costs (commission + slippage)

2) Cross-Sectional Residual Reversal (Long/Short)

Runs a daily cross-sectional regression (market factor model) to estimate “expected” returns and trades residual mean reversion:

  • Compute residuals = actual − predicted
  • Long most negative residuals (undershoot)
  • Short most positive residuals (overshoot)
  • Monthly rebalancing + transaction costs

3) Breakout Channel (Cross-Sectional Long/Short)

Builds a breakout-style signal using a rolling price channel and converts it into a cross-sectional score:

  • Score is derived from position inside the rolling high/low channel
  • Long top quantile, short bottom quantile (market-neutral)
  • Monthly rebalancing + transaction costs

4) Multi-Strategy Portfolio (Inverse-Vol Allocation)

Combines strategy return streams using dynamic inverse-volatility weights:

  • Compute rolling vol per strategy
  • Allocate weights ∝ 1/vol
  • Portfolio rebalanced daily (weights applied with a 1-day lag)
  • Optional strategy-level turnover costs

Project Structure

A lightweight, end-to-end quant research project that builds and backtests multiple systematic strategies from scratch using daily market data.
Focus: cross-sectional signals, realistic backtesting, transaction costs, and portfolio construction.

Strategies Implemented

1) Cross-Sectional Momentum (Long/Short)

Ranks assets by volatility-normalized rolling returns and forms a market-neutral portfolio:

  • Long top quantile of momentum scores
  • Short bottom quantile
  • Monthly rebalancing
  • Includes transaction costs (commission + slippage)

2) Cross-Sectional Residual Reversal (Long/Short)

Runs a daily cross-sectional regression (market factor model) to estimate “expected” returns and trades residual mean reversion:

  • Compute residuals = actual − predicted
  • Long most negative residuals (undershoot)
  • Short most positive residuals (overshoot)
  • Monthly rebalancing + transaction costs

3) Breakout Channel (Cross-Sectional Long/Short)

Builds a breakout-style signal using a rolling price channel and converts it into a cross-sectional score:

  • Score is derived from position inside the rolling high/low channel
  • Long top quantile, short bottom quantile (market-neutral)
  • Monthly rebalancing + transaction costs

4) Multi-Strategy Portfolio (Inverse-Vol Allocation)

Combines strategy return streams using dynamic inverse-volatility weights:

  • Compute rolling vol per strategy
  • Allocate weights ∝ 1/vol
  • Portfolio rebalanced daily (weights applied with a 1-day lag)
  • Optional strategy-level turnover costs

Project Structure

Quant Strategies From Scratch (Python)

A lightweight, end-to-end quant research project that builds and backtests multiple systematic strategies from scratch using daily market data.
Focus: cross-sectional signals, realistic backtesting, transaction costs, and portfolio construction.

Strategies Implemented

1) Cross-Sectional Momentum (Long/Short)

Ranks assets by volatility-normalized rolling returns and forms a market-neutral portfolio:

  • Long top quantile of momentum scores
  • Short bottom quantile
  • Monthly rebalancing
  • Includes transaction costs (commission + slippage)

2) Cross-Sectional Residual Reversal (Long/Short)

Runs a daily cross-sectional regression (market factor model) to estimate “expected” returns and trades residual mean reversion:

  • Compute residuals = actual − predicted
  • Long most negative residuals (undershoot)
  • Short most positive residuals (overshoot)
  • Monthly rebalancing + transaction costs

3) Breakout Channel (Cross-Sectional Long/Short)

Builds a breakout-style signal using a rolling price channel and converts it into a cross-sectional score:

  • Score is derived from position inside the rolling high/low channel
  • Long top quantile, short bottom quantile (market-neutral)
  • Monthly rebalancing + transaction costs

4) Multi-Strategy Portfolio (Inverse-Vol Allocation)

Combines strategy return streams using dynamic inverse-volatility weights:

  • Compute rolling vol per strategy
  • Allocate weights ∝ 1/vol
  • Portfolio rebalanced daily (weights applied with a 1-day lag)
  • Optional strategy-level turnover costs

Project Structure

Quant Strategies From Scratch (Python)

A lightweight, end-to-end quant research project that builds and backtests multiple systematic strategies from scratch using daily market data.
Focus: cross-sectional signals, realistic backtesting, transaction costs, and portfolio construction.

Strategies Implemented

1) Cross-Sectional Momentum (Long/Short)

Ranks assets by volatility-normalized rolling returns and forms a market-neutral portfolio:

  • Long top quantile of momentum scores
  • Short bottom quantile
  • Monthly rebalancing
  • Includes transaction costs (commission + slippage)

2) Cross-Sectional Residual Reversal (Long/Short)

Runs a daily cross-sectional regression (market factor model) to estimate “expected” returns and trades residual mean reversion:

  • Compute residuals = actual − predicted
  • Long most negative residuals (undershoot)
  • Short most positive residuals (overshoot)
  • Monthly rebalancing + transaction costs

3) Breakout Channel (Cross-Sectional Long/Short)

Builds a breakout-style signal using a rolling price channel and converts it into a cross-sectional score:

  • Score is derived from position inside the rolling high/low channel
  • Long top quantile, short bottom quantile (market-neutral)
  • Monthly rebalancing + transaction costs

4) Multi-Strategy Portfolio (Inverse-Vol Allocation)

Combines strategy return streams using dynamic inverse-volatility weights:

  • Compute rolling vol per strategy
  • Allocate weights ∝ 1/vol
  • Portfolio rebalanced daily (weights applied with a 1-day lag)
  • Optional strategy-level turnover costs

About

Systematic cross-sectional long/short strategies with realistic backtesting, transaction costs, and multi-strategy portfolio construction in Python.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages