Building an efficient investment portfolio requires more than just selecting a mix of assets- it involves determining how to allocate weights across those assets to manage risk and maximise return. In our previous blog, we laid the foundation for this process by introducing a structured, data-driven approach to portfolio risk analysis. We examined core techniques such as calculating returns and volatility, assessing risk through covariance analysis, applying Monte Carlo simulations for weight optimisation, and leveraging Principal Component Analysis (PCA) to identify hidden risk drivers.
In this follow-up, we take a closer look at portfolio weight optimisation by exploring alternative methodologies beyond Monte Carlo simulations. Specifically, we evaluate Mean-Variance Optimisation, the Black-Litterman model, and neural network-based approaches. Each method offers distinct advantages and limitations, and we compare them to help investors understand when and how each technique might be most effectively applied.
Functionality:
Simulates thousands of random portfolio weight combinations, calculating expected return and risk for each, and visualising the efficient frontier to identify optimal portfolios.
Characteristics:
Pros:
Cons:
Functionality:
Uses historical return and their covariance to mathematically derive asset weights that maximise return for a given level of risk.
Characteristics:
Pros:
Cons:
Functionality:
Enhances Mean-Variance Optimisation by incorporating investor views into the equilibrium market returns derived from market cap weights, using a Bayesian framework.
Characteristics:
Pros:
Cons:
Functionality:
Uses machine learning models (typically feedforward or recurrent neural networks) trained on historical financial data to learn complex, nonlinear relationships and generate optimal asset weightings.
Characteristics:
Pros:
Cons:
Now that we have explored the key characteristics, assumptions, and trade-offs of various portfolio optimisation techniques, it's time to put them into action. In the next step, we will construct a set of sample portfolios using each of the methods discussed - Monte Carlo Simulation, Mean-Variance Optimisation, the Black-Litterman model, and Neural Networks. By applying these techniques to the same investment universe and data set, we can then evaluate their effectiveness through backtesting. This comparative analysis will help us understand how each approach performs under real market conditions, shedding light on their practical strengths and limitations.
For this analysis we construct a portfolio using ETFs that are highly liquid, listed on major exchanges, and represent the core asset classes of a diversified investment strategy. This portfolio offers broad diversification across asset types, global regions, and varying risk levels, making it well-suited for a balanced, long-term investment approach.
Ticker | Title (Fund Name) | Category |
---|---|---|
SPY | SPDR S&P 500 ETF Trust | U.S. Large-Cap Equity (S&P 500) |
IEFA | iShares Core MSCI EAFE ETF | Developed Markets ex-US Equity (Europe, Australasia, Far East) |
EEM | iShares MSCI Emerging Markets ETF | Emerging Markets Equity |
TLT | iShares 20+ Year Treasury Bond ETF | Long-Term U.S. Treasury Bonds |
LQD | iShares iBoxx $ Investment Grade Corporate Bond ETF | Investment-Grade U.S. Corporate Bonds |
GLD | SPDR Gold Shares | Physical Gold (Commodity ETF) |
VNQ | Vanguard Real Estate ETF | U.S. Real Estate Investment Trusts (REITs) |
SHV | iShares Short Treasury Bond ETF | Ultra Short-Term U.S. Treasury Bonds (Money Market proxy) |
In the initial version of the blog, we train the portfolio using three years of historical data to determine the optimal asset weights. These weights are then applied at the start of a subsequent time period (also in the past) to evaluate their performance through backtesting, with the weights held constant throughout that period.
In future iterations of this blog article, we plan to introduce monthly rebalancing to maintain the target weights. Additionally, we aim to implement a rolling window approach, where asset weights are continuously recalculated based on recent historical data and dynamically applied to the portfolio.
The cumulative returns of the portfolio during 2021 and 2022 reveal notable differences between the strategies. The Mean-Variance Optimization (MVO) approach appears to outperform the others, which cluster more closely in terms of performance. A closer examination of the asset allocations shows that each strategy assigns significantly different weights to the portfolio components - differences that help explain the performance gap. In fact, the extent of variation in the weightings suggests that even greater divergence in returns might have been expected, warranting a deeper analysis.
MVO Fixed (Mean-Variance Optimisation)
This strategy is designed to maximise the Sharpe ratio, which measures risk-adjusted return by dividing the mean return by its standard deviation. It does so by solving a mathematical optimisation problem under specific constraints: asset weights must lie between 5% and 30%, and the portfolio must target an expected annual return of 5%.
In practice, the model tends to favor assets like SHV, which exhibit a high Sharpe ratio due to their low volatility - a characteristic of short-term Treasury bonds. In our analysis, the model allocated 25% to SHV, capitalising on its artificially elevated Sharpe ratio driven by minimal price fluctuations. To mitigate risk, the strategy also limits exposure to highly correlated international markets such as IEFA and EEM, reducing vulnerability to regional or systemic shocks.
During our test period, this approach outperformed other strategies, largely because assets like SHV delivered superior returns relative to their volatility, especially when compared to more volatile asset classes. T
MC Fixed (Monte Carlo Selection)
Unlike gradient-based methods like MVO, Monte Carlo is probability-driven. It doesn't search for optimal marginal allocations but instead samples a wide range of random portfolios and selects the one with the highest Sharpe ratio. In our implementation, asset weights are constrained between 5% and 30%. Increasing the number of simulations improves the chances of finding a better-performing portfolio by more thoroughly exploring the space of possible allocations.
However, this approach is only as good as the assumptions behind the simulations. If return distributions, volatilities, or correlations are misestimated - especially under the common assumption that these remain constant - then the model may overfit to patterns that don’t hold in real-world conditions.
NN Fixed (Neural Network-Based Allocation)
The neural network uses a feedforward architecture with one hidden layer and regularisation techniques (L1, L2, and dropout) to prevent overfitting. The output layer uses a softmax function to ensure the weights sum to 1. The model is trained using a custom loss function that maximises the Sharpe ratio while enforcing practical constraints (e.g., 5%–30% weight bounds) and encouraging diversification through an entropy term. Comparing with the other strategies runtime but also effort
Unlike Monte Carlo, the neural network learns from historical return patterns and adjusts its internal parameters to generalise across time capturing non-linear relationships. This makes it more adaptive and potentially more robust to changing market conditions.
BL Fixed (Black-Litterman Model)
After several unsuccessful attempts using both absolute views (e.g., expecting SPY to deliver a 5% return) and relative views (e.g., expecting SPY to outperform SHV by 2%), we shifted to incorporating views based on the assets’ historical performance. This adjustment led to more stable and interpretable results. Previously, the model frequently pushed portfolio weights to the extreme ends of the allowed range and displayed a persistent bias toward low-volatility assets. In several instances, adding return constraints rendered the optimisation problem unsolvable. Incorporating historically informed views, rather than relying on arbitrary return expectations, proved to be a more robust and effective approach - stabilising the model and reducing its sensitivity to infeasible constraints and extreme allocations.
Footnote on initial weights:
In the Black-Litterman (BL) model, the process begins with the market portfolio, typically represented by capitalisation-weighted asset allocations. This serves as a neutral starting point. Adjustments are then made based on the investor’s views and their confidence in those views. The lower the confidence, the closer the final weights remain to the original market baseline.
In contrast, Mean-Variance Optimization (MVO) does not require any predefined starting weights. It directly solves for the optimal allocation using convex optimisation techniques, such as those implemented in libraries like cvxpy
.
The Monte Carlo (MC) approach explicitly generates a large number of random portfolios. It does not optimise in the traditional sense but instead selects the portfolio with the highest Sharpe ratio from the simulated set.
Finally, Neural Networks (NN) do not begin with explicit portfolio weights. Instead, they start with randomly initialized parameters, and through training on historical return data, the model learns to shape the portfolio weights implicitly by optimising a custom loss function - often designed to maximize risk-adjusted returns while respecting constraints.
Throughout this article, we explored the performance and trade-offs of four portfolio optimisation techniques: Monte Carlo simulations, Mean-Variance Optimisation (MVO), the Black-Litterman model, and neural network-based approaches. Each strategy embodies a fundamentally different view on how asset weights should be derived—ranging from probabilistic sampling and mathematical optimisation to machine learning and Bayesian blending of subjective views.
What emerges clearly from our comparative analysis is that all weightings are not created equal. Even when working with the same investment universe, the portfolios diverged meaningfully in both composition and outcomes. MVO, for example, produced the strongest backtested results in our static scenario, in large part due to its tendency to favour low-volatility assets like short-term Treasury bonds. This highlights how sensitive traditional optimisation is to input parameters like expected return and variance.
Monte Carlo, while flexible and intuitive, relies heavily on distributional assumptions and random sampling, making it less deterministic and harder to calibrate for robustness. The Black-Litterman model added an extra layer of nuance by integrating subjective views, yet proved finicky when views were too aggressive or inconsistent with historical data. Only after grounding views in empirical patterns did it yield meaningful allocations.
Meanwhile, neural networks represent a leap toward adaptive, data-driven portfolio construction. They offer a promising way to capture non-linear relationships and changing dynamics - but this power comes at a cost. The modelling effort is significant, interpretability is limited, and practical implementation requires rigorous tuning, and careful regularisation. In contrast to MVO or Monte Carlo, neural networks do not “just work out of the box”; they demand substantial design and validation effort.
While this blog focused on fixed-weight portfolios applied to a static future time window, the real test of any optimisation approach lies in its responsiveness to changing market conditions. Future extensions of this work will explore monthly rebalancing and rolling window strategies to evaluate which models are best at adapting to shifting regimes, volatility spikes, or macroeconomic inflections.
By benchmarking these strategies across stable and volatile market environments, we hope to reveal not only which performs best in hindsight, but which proves most resilient - and most trustworthy - when uncertainty is high.
Ultimately, portfolio optimisation is not about identifying the perfect allocation, but about selecting an approach whose underlying assumptions remain valid in changing market conditions - while maintaining a manageable level of complexity. The method should produce outcomes that are not random, but consistent and explainable.