Skip to content

Beta-Neutral Portfolio with TiPortfolio: Chasing Zero Market Exposure

Beta-neutral strategies are popular in hedge funds. The idea is to remove market exposure entirely — your returns should come from stock selection or asset relationships, not from the market going up. In theory, this gives you returns that are uncorrelated to equity markets.

I tested this using TiPortfolio's Weigh.BasedOnBeta. The results are instructive, though not in the way I expected.

The Strategy

Weigh.BasedOnBeta scales the initial weights so the portfolio's beta to a reference asset approaches a target (zero in this case). It uses rolling OLS regression over a 1-month lookback to estimate each asset's beta to AAPL.

beta_neutral = ti.Portfolio(
    "beta_neutral",
    [
        ti.Signal.Monthly(),
        ti.Select.All(),
        ti.Weigh.BasedOnBeta(
            initial_ratio={"QQQ": 0.7, "BIL": 0.2, "GLD": 0.1},
            target_beta=0,
            lookback=pd.DateOffset(months=1),
            base_data=aapl_data["AAPL"],
        ),
        ti.Action.Rebalance(),
    ],
    TICKERS,
)

AAPL is used as the reference — it is a large, liquid proxy for broad tech/equity exposure. The portfolio holds QQQ, BIL, and GLD, but the weights shift dynamically to keep the total portfolio beta near zero.

Results (2019–2024)

sharpe         -0.387
calmar          0.020
sortino        -0.566
max_drawdown   -0.162
cagr            0.003
total_return    0.023
final_value   10226.187
total_fee      27.664
rebalance_count 83

Starting from $10,000, the portfolio was worth $10,226 after 6 years. That is a 0.3% CAGR. Essentially flat.

Compared to baselines:

                 beta_neutral   equal_weight   qqq_only
sharpe                 -0.387          0.655      0.684
max_drawdown           -0.162         -0.162     -0.351
cagr                    0.003          0.104      0.192
final_value         10226.187      19951.667  34106.625
total_fee              27.664          1.010      0.233

The equal-weight portfolio (33/33/33 across QQQ/BIL/GLD) had the same max drawdown but grew to nearly $20,000. Beta-neutral just sat there.

The Fee Problem

The most striking number is the total fee: $27.66 on a $10,000 portfolio. That is more than 27x the fee of QQQ buy-and-hold ($0.23) and almost 30x the equal-weight portfolio ($1.01).

Why? Because maintaining zero beta requires constant, large weight adjustments. The beta of each asset changes every month as market conditions shift, and GLD's beta to AAPL can swing dramatically. The strategy was effectively churning the portfolio to stay market-neutral, and those transaction costs destroyed the returns.

This is a common issue with dynamic factor-targeting strategies. The signal may be real, but if the turnover cost exceeds the signal value, the strategy loses money in practice even if the backtest looks fine on a gross basis. Always check fee totals, not just returns.

What the Weight Charts Show

Looking at the weight evolution (available in the notebook), the strategy sometimes shorts BIL and GLD when it needs to offset QQQ's positive beta. This creates leveraged positions, which amplifies the fee cost further. In some months the weights summed to well below 1, meaning a large cash buffer, which dragged returns.

The avg drawdown days of 146 is also telling — this portfolio spent a lot of time underwater, just slowly recovering.

My Take

Beta-neutral sounds sophisticated but in this configuration it is essentially a cash-like portfolio with a lot of unnecessary trading. The transaction costs consumed any potential alpha from the beta management.

This strategy could work with:

  • Much lower transaction costs (institutional-grade)
  • Less frequent rebalancing (quarterly or semi-annual)
  • A better choice of reference asset — AAPL is a single stock and its beta relationship with BIL is noisy

Of all the strategies in this series, this is the one I would least likely use for a personal portfolio. The complexity is not justified by the returns.

The final notebook is more optimistic — a simple dollar-cost averaging (DCA) auto-investment plan that anyone can run.


This Series

🤞Subscribe if you want to see more!

We don’t spam! Read more in our privacy policy

Leave a Reply

Your email address will not be published. Required fields are marked *