RSS Amplifier

Out-of-Sample · Jun 28, 2026

Uncertainty as a Trading Principle

0
Sign in to vote or save

Daniele Bianchi · Out-of-Sample

Anyone who has run a machine learning model in a realistic investment pipeline knows that a strategy that looks strong in backtests often loses much of its edge to trading costs, with turnover as the main reason. Models that map firm characteristics directly to portfolio weights are especially exposed, because they rebalance toward a new target every period. The usual response is to penalize turnover: trade less, and give up a little gross return in exchange for lower costs. This helps, but only up to a point, because standard penalties are often blunt. To see why, it helps to ask what the model leaves out when reporting its output.

What it leaves out is any false sense of confidence. A point estimate gives one number for each stock, the weight to hold, with often no indication of how reliable that number is. For forecasting, this could be acceptable. For trading, it is not, because the decision that drives transaction costs is not which positions to hold but whether the positions already held are close enough to their new targets to leave alone. Two stocks can have the same target weight even though the model has estimated one precisely and the other poorly, and a point estimate treats them identically. The information that would distinguish them, how confident the model is in each position, is exactly what it discards.

Return to the turnover penalty. Adding a cost term to the objective does make the model trade less, and it rests on a clean result: penalizing turnover is formally equivalent to placing a prior on the portfolio weights. The problem is that it cannot discriminate. A turnover penalty, like any no-trade band built on a point estimate, treats two positions with the same target weight the same way, regardless of how precisely each is estimated. The point estimate carries no measure of confidence to condition on, so no amount of tuning lets the penalty distinguish a high-confidence position from a marginal one. It lowers the trading bill by treating every position as equally reliable.

A second approach attaches uncertainty to the return forecast, using conformal prediction and related methods that report how confident the model is in its prediction for each stock. This is useful, but it answers a different question. Forecast uncertainty screens which signals to trust before the portfolio is formed; it applies to the inputs of the allocation, not to the allocation itself. It does not address when a position already held is close enough to its target to leave in place. That decision, whether to rebalance or hold, is made at the level of the portfolio weights, and forecast uncertainty does not operate there.

The fix is to attach the uncertainty to the quantity on which the decision depends. Instead of estimating the mapping from characteristics to weights as a single best guess, estimate a distribution over it, so that each weight comes with a credible interval rather than a single value. A Bayesian neural network does this, even for complex portfolio problems. It places a prior over the network’s parameters, the policy that converts characteristics into weights, and the posterior produces, for every stock, a target weight and an interval around it. The width of that interval measures how precisely the model has estimated the position.

Two trading rules can follow directly from this interval. The first is a no-trade boundary: if the position already held falls inside the credible interval of the new target, leave it, since the difference is within the model’s margin of error. The second is a sparsity rule: drop any position whose interval contains zero, since the model cannot determine the sign of the position. Both come directly from the estimation output. The no-trade boundary is a Bayesian version of the “aim in front of the target” rule from the trading-cost literature, with one important difference: the width of the interval is not an assumption about how quickly signals decay, but a measure of the model’s uncertainty about the position itself.

How the two rules use the model’s uncertainty. Each shaded band is the interval the model places around a position. Left: if the interval excludes zero, keep the position at its center; if it contains zero, drop it. Right: if the position already held sits inside the interval around the new target, hold it; otherwise, trade to the new target.

This is the subject of a new paper with my student Xiaoyu Zheng (Queen Mary University of London). What the prior does here is shape the geometry of the uncertainty: how wide the credible interval is on each position, and how that width varies across the portfolio. That geometry determines how much the trading rules save. A sparsity-inducing prior, the horseshoe, produces intervals that are narrow on small positions and wide on large ones. This is a useful pattern because the widest no-trade zones fall on the largest positions, which are the most expensive to trade. A tight, uniform prior produces intervals of roughly equal width across all positions, which leaves the no-trade rule little to act on.

The model's uncertainty about its positions, viewed two ways. Left: the spread of credible-interval widths under each prior, with the neural-network models above the dashed line and their linear counterparts below; among the neural networks, it is narrowest for the tight Gaussian and widest for the loose one. Right: how that uncertainty grows with position size. The sparsity-inducing priors stay confident on small positions and become more uncertain on large ones, so the widest no-trade zones fall on the big, costly-to-trade positions.

In the data, for U.S. equities with an average of about 4,000 stocks per month, the no-trade boundary reduces turnover by 24 to 45 percent. The margin is large: bid-ask spreads would have to widen fivefold to eightfold before the strategy loses its advantage over the benchmark. The prior also has a practical payoff. The parameter that sets the balance between the model's two objectives has to be chosen, and a horseshoe prior is forgiving about it: set away from its best value, the strategy barely changes. The tight uniform prior is not. Push the balance toward the prior and the portfolio reverts to the benchmark; push it toward the objective, and it trades too much. For an investor who cannot be sure of the right setting, that forgiveness is a real advantage.

One caveat is worth stating directly, as the paper does. The high Sharpe ratios documented come from the breadth of the cross-section, not from any single position being exceptional; restricting the universe to large, liquid NYSE stocks brings them down to more ordinary levels. The advantage of the nonlinear model over a linear one also narrows in that universe, although it persists in statistical and economic terms.

The broader point is that a model’s uncertainty about its own positions has economic value rather than being noise to discard. How confident the model is in a position determines whether that position is worth trading, and the positions not worth trading are where the cost savings come from. On this view, the prior is not only a statistical choice but an economic primitive: placed on the policy parameters rather than the return-generating process, it encodes beliefs about portfolio structure. Even in complex, non-linear, machine learning models.

Based on “Machine Learning Portfolio Choice under Parameter Uncertainty,” joint work with Xiaoyu Zheng (Queen Mary University of London).

Paper available on SSRN: [link]

No posts

Read the original on danielebianchi.substack.com

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.