Optimal stock portfolio
I investigate the out-of-sample performance of three portfolio construction strategies: the naive equally-weighted (1/N) portfolio, the Minimum Variance Portfolio (MVP), and the Maximum Sharpe Ratio Portfolio (MSRP). Using monthly returns data from 12 Indonesian stocks spanning January 2004 to May 2025, I employ a rolling-window backtesting methodology to evaluate their performance across various rebalancing frequencies. I find that the MSRP consistently yields superior risk-adjusted returns and significantly lower maximum drawdowns compared to both the MVP and the 1/N portfolio. The 1/N portfolio often demonstrates competitive absolute returns, even outperforming optimization-based strategies in many scenarios. However, it does so at the cost of substantially higher volatility and deeper drawdowns. The MVP, despite achieving the lowest volatility, severely underperforms in terms of absolute and risk-adjusted returns.
Introduction
The question of whether optimal stock portfolios exist has been at the heart of modern finance since Markowitz (1952) introduced mean-variance optimization. This seminal work provided a rigorous framework for constructing portfolios that maximize expected return for a given level of risk or, equivalently, minimize risk for a given level of expected return, leading to the concept of the efficient frontier. Despite their theoretical elegance, the practical application of any optimization-based portfolio strategies is fraught with difficulties, primarily stemming from the estimation of its two key inputs: the vector of expected asset returns (\(E[\mathbf{R}]\)) and the variance-covariance matrix of these returns (\(\mathbf{\Sigma}\)).
However, it is well-documented that historical means are poor predictors of future returns (Best and Grauer, 1991; Michaud, 1989), and sample covariance matrices can be unstable and noisy (Ledoit and Wolf, 2004). This estimation error can lead to optimized portfolios that are highly unstable, concentrating heavily in a few assets with favorable historical characteristics that may not persist. This can result in poor out-of-sample performance. DeMiguel et al. (2009) compared 14 optimization models against the naive 1/N strategy and found that none consistently outperformed the equal-weight benchmark out-of-sample. The 1/N rule’s strength lies in its avoidance of any parameter estimation, thereby being immune to the estimation error that plagues optimized models.
This paper contributes to the ongoing debate by empirically evaluating the out-of-sample performance of these strategies in the context of the Indonesian stock market, an emerging market characterized by higher volatility and potentially more pronounced estimation challenges. I utilize a rolling-window backtesting approach to simulate realistic investment scenarios and assess the robustness of optimized portfolios against the simplicity of the 1/N rule.
Data
The analysis uses monthly total return data for 12 stocks listed on the Indonesia Stock Exchange (IDX), obtained from S&P Capital IQ Pro, provided by the Faculty of Economics at the University of Indonesia. The selected stocks represent three distinct industries to ensure diversification potential and broad market representation:
- Banks: BBCA (Bank Central Asia), BBRI (Bank Rakyat Indonesia), BBNI (Bank Negara Indonesia), and BMRI (Bank Mandiri)
- Food & Beverages: MYOR (Mayora Indah), CPIN (Charoen Pokphand Indonesia), INDF (Indofood Sukses Makmur), and JPFA (Japfa Comfeed Indonesia)
- Natural Resources: ANTM (Aneka Tambang), PTRO (Petrosea), MEDC (Medco Energi Internasional), and PGAS (Perusahaan Gas Negara)
These stocks were carefully chosen based on several criteria: data availability (ensuring a sufficiently long time series for robust simulation), adequate liquidity, consistent dividend payments, representation of major sectors in the Indonesian market, and the potential for low correlation between industries to facilitate a curved efficient frontier.
The dataset spans from January 30, 2004, to May 28, 2025. The monthly total return (\(R_{i,t}\)) for each stock \(i\) at time \(t\) is calculated as:
\[ \begin{align*} R_{i,t} &= \frac{P_{i,t} + D_{i,t} - P_{i,t-1}}{P_{i,t-1}} \\ &= \frac{P_{i,t} - P_{i,t-1}}{P_{i,t-1}} + \frac{D_{i,t}}{P_{i,t-1}} \\ \text{Return} &= \text{Capital Gain} + \text{Dividend Yield} \end{align*} \]where \(P_{i,t}\) is the price of stock \(i\) at the last trading day of month \(t\), \(D_{i,t}\) is the dividend per share paid during month \(t\), and \(P_{i,t-1}\) is the price at the end of the previous month.
| Ticker | Mean | Std Dev | Min | Max | Skewness | Kurtosis |
|---|---|---|---|---|---|---|
| ANTM | 2.08% | 14.91% | -33.14% | 69.0% | 0.93 | 2.56 |
| BBCA | 2.0% | 6.72% | -14.55% | 31.91% | 0.44 | 1.66 |
| BBNI | 1.72% | 12.2% | -47.42% | 81.3% | 1.47 | 11.95 |
| BBRI | 2.16% | 9.51% | -36.11% | 38.1% | 0.0 | 1.82 |
| BMRI | 1.96% | 9.42% | -41.13% | 35.91% | -0.09 | 3.1 |
| CPIN | 3.03% | 14.09% | -52.53% | 63.08% | 0.98 | 3.14 |
| INDF | 1.55% | 9.23% | -44.39% | 39.06% | 0.2 | 3.77 |
| JPFA | 7.43% | 79.91% | -32.14% | 1,257% | 15.06 | 236.05 |
| MEDC | 1.77% | 15.33% | -51.75% | 79.86% | 0.81 | 3.76 |
| MYOR | 4.24% | 15.18% | -22.82% | 108.78% | 2.65 | 11.98 |
| PGAS | 1.73% | 12.28% | -39.45% | 49.14% | 0.34 | 1.73 |
| PTRO | 3.73% | 17.54% | -43.62% | 134.88% | 2.16 | 12.3 |
Table 1: Descriptive Statistics of Monthly Stock Returns
Note: The table reports excess kurtosis (Fisher’s kurtosis), where a value greater than zero indicates fatter tails than a normal distribution.
Table 1 presents the summary statistics for the monthly returns of the 12 stocks over the entire sample period. Notably, JPFA exhibits an exceptionally high average monthly return of 7.43% coupled with an enormous standard deviation of 79.91%. Its extremely high skewness (15.06) and excess kurtosis (236.05) are primarily driven by a rare, massive positive return event in 2009, associated with an extraordinarily generous cash dividend yield exceeding 1200%. Such extreme outliers can heavily influence optimizers that rely on historical sample moments, potentially leading to highly concentrated and unstable portfolio weights. We will see in the Results and Discussions section how optimization-based models perform given these outliers compared to a simple 1/N portfolio that is inherently robust to such idiosyncratic events.
Methodology
Given a universe of \(N\) assets, a portfolio is defined by a vector of weights \(\mathbf{w} = (w_1, w_2, \dots, w_N)'\), where \(w_i\) is the proportion of capital allocated to asset \(i\). The fundamental properties of a portfolio are its expected return and its variance.
The expected return of the portfolio, \(E[R_p]\), is the weighted average of the individual expected asset returns:
\[ E[R_p] = \mathbf{w}' E[\mathbf{R}] \]where \(E[\mathbf{R}]\) is the \(N \times 1\) vector of expected asset returns, \(E[\mathbf{R}] = (E[R_1], E[R_2], \dots, E[R_N])'\). In this particular analysis, the vector of expected returns at time \(t\), \(\hat{E}[\mathbf{R}_t]\), is estimated periodically using the historical sample mean over a lookback window of \(T = 60\) months (5 years):
\[ \hat{E}[\mathbf{R}_t] = \frac{1}{T} \sum_{k=1}^T \mathbf{R}_{t-k} \]where \(\mathbf{R}_{t-k}\) is the vector of observed asset returns at month \(t-k\).
The portfolio’s variance \(\sigma^2_p\), which serves as a proxy for the portfolio’s risk or volatility, is a function of the individual asset variances and their covariances, captured in the covariance matrix \(\mathbf{\Sigma}\):
\[ \sigma^2_p = \mathbf{w}' \mathbf{\Sigma} \mathbf{w} \]The covariance matrix \(\mathbf{\Sigma}\) is an \(N \times N\) symmetric matrix representing the pairwise relationships between asset returns. The diagonal elements, \(\text{Var}(R_i) = \text{Cov}(R_i, R_i)\), represent the variance of individual stock returns, measuring their volatility. The off-diagonal elements, \(\text{Cov}(R_i, R_j)\) for \(i \ne j\), represent the covariance between pairs of stock returns, indicating how they move together. A positive covariance implies that two assets tend to move in the same direction, while a negative covariance suggests they move in the opposite direction.
\[ \mathbf{\Sigma} = \begin{pmatrix} \text{Var}(R_1) & \text{Cov}(R_1, R_2) & \dots & \text{Cov}(R_1, R_N) \\ \text{Cov}(R_2, R_1) & \text{Var}(R_2) & \dots & \text{Cov}(R_2, R_N) \\ \vdots & \vdots & \ddots & \vdots \\ \text{Cov}(R_N, R_1) & \text{Cov}(R_N, R_2) & \dots & \text{Var}(R_N) \\ \end{pmatrix} \]The sample covariance between two stock returns, \(R_i\) and \(R_j\), over a historical window of \(T\) observations, is estimated as:
\[ \text{Cov}(R_i, R_j) = \frac{1}{T-1} \sum_{k=1}^T (R_{i,t-k} - \bar{R}_i)(R_{j,t-k} - \bar{R}_j) \]where \(\bar{R}_i = \frac{1}{T} \sum_{k=1}^T R_{i,t-k}\) and \(\bar{R}_j = \frac{1}{T} \sum_{k=1}^T R_{j,t-k}\) are the sample means of returns for asset \(i\) and \(j\), respectively. The variance is simply the covariance of a single stock return with itself: \(\text{Var}(R_i) = \text{Cov}(R_i, R_i)\).
Portfolio Construction Strategies
I evaluate three distinct portfolio construction strategies, ranging from a simple heuristic to sophisticated optimization-based approaches.
The 1/N Portfolio (Benchmark)
This strategy serves as a benchmark. It is a simple heuristic that allocates capital equally across the \(N\) available assets. For a universe of \(N=12\) stocks, the weight for each asset \(w_i\) is:
\[ w_i = \frac{1}{N} = \frac{1}{12} \approx 8.33\% \quad \text{for all } i \in \{1, \dots, N\} \]The primary advantage of this strategy is its complete avoidance of parameter estimation (i.e., expected returns and covariance matrix), making it inherently immune to the estimation errors that can plague optimization-based models. It implicitly assumes that there is no useful information in historical data to consistently guide superior portfolio allocation relative to a diversified, equal-weight approach. Its robustness and simplicity have made it a difficult benchmark to beat in out-of-sample settings, particularly in the presence of high estimation error.
The Minimum Variance Portfolio (MVP)
The MVP is a risk-based portfolio optimization strategy that seeks to find the portfolio with the lowest possible risk (variance), irrespective of expected returns. It represents the leftmost tip of the efficient frontier. Following Palomar (2025, pp. 167-168), the optimization problem is formally stated as:
\[ \min_{\mathbf{w}} \mathbf{w}' \mathbf{\Sigma} \mathbf{w} \]subject to the following constraints:
-
Full Investment Constraint: The sum of all portfolio weights must equal one, ensuring all capital is invested.
\[ \sum_{i=1}^N w_i = 1 \] -
No Short-Selling Constraint: All portfolio weights must be non-negative, as short-selling is currently prohibited by the Indonesia Stock Exchange (IDX).
\[ w_i \ge 0 \quad \text{for all } i \in \{1, \dots, N\} \] -
Maximum Asset Weight Constraint: To prevent extreme concentration and promote diversification, a cap of 40% is imposed on any single stock’s weight. This helps mitigate the impact of estimation errors leading to highly concentrated portfolios in a few perceived “low-risk” assets.
\[ w_i \le 0.4 \quad \text{for all } i \in \{1, \dots, N\} \]
Here, \(\mathbf{w}\) is the \(N \times 1\) vector of portfolio weights, and \(\mathbf{\Sigma}\) is the \(N \times N\) covariance matrix of asset returns. The objective function, \(\mathbf{w}' \mathbf{\Sigma} \mathbf{w}\), is the mathematical representation of the portfolio’s variance, \(\sigma^2_p\). A key advantage of the MVP is that it only requires an estimate of the covariance matrix \(\mathbf{\Sigma}\), making it less sensitive to the notoriously difficult-to-predict mean returns compared to strategies that rely on both first and second moments. However, its performance still depends critically on the accuracy and stability of the estimated covariance matrix.
The Maximum Sharpe Ratio Portfolio (MSRP)
The MSRP, based on Modern Portfolio Theory, aims to maximize the portfolio’s risk-adjusted return, as measured by the Sharpe Ratio (Sharpe, 1966). The Sharpe Ratio is defined as the portfolio’s excess return (above the risk-free rate) per unit of total risk (standard deviation):
\[ \text{Sharpe ratio} = \frac{E[R_p] - R_f}{\sigma_p} \]where \(E[R_p]\) is the expected portfolio return, \(R_f\) is the risk-free rate, and \(\sigma_p = \sqrt{\mathbf{w}' \mathbf{\Sigma} \mathbf{w}}\) is the portfolio’s standard deviation. Following Palomar (2025, pp. 183-184), the optimization problem finds the vector of weights (\(\mathbf{w}\)) that maximizes the Sharpe Ratio:
\[ \max_{\mathbf{w}} \frac{E[R_p] - R_f}{\sqrt{\mathbf{w}' \mathbf{\Sigma} \mathbf{w}}} = \max_{\mathbf{w}} \frac{\mathbf{w}' E[\mathbf{R}] - R_f}{\sqrt{\mathbf{w}' \mathbf{\Sigma} \mathbf{w}}} \]subject to the same constraints as the MVP:
\[ \sum_{i=1}^N w_i = 1 \quad \text{and} \quad 0 \le w_i \le 0.4 \quad \text{for all } i \in \{1, \dots, N\} \]In this formulation, \(E[\mathbf{R}]\) is the \(N \times 1\) vector of expected asset returns and \(R_f\) is the risk-free rate. This portfolio represents the tangency point between the capital allocation line (originating from the risk-free rate) and the efficient frontier. Unlike the MVP, the MSRP requires accurate estimates for both the expected returns vector (\(E[\mathbf{R}]\)) and the covariance matrix (\(\mathbf{\Sigma}\)), making it theoretically more powerful but also more susceptible to estimation error, particularly from the \(E[\mathbf{R}]\) term, which is known to be highly unstable and difficult to predict (Best and Grauer, 1991; Michaud, 1989).
Backtesting
To rigorously assess the out-of-sample performance of these portfolio strategies, I employ a rolling-window backtesting methodology, which simulates a realistic investment process over time. The steps are as follows:
-
The key inputs for the MVP and MSRP strategies—the expected return vector \(\hat{E}[\mathbf{R}_t]\) and the covariance matrix \(\mathbf{\Sigma}_t\)—are estimated using a rolling historical lookback window of \(T=60\) months (5 years). At any rebalancing date \(t\), I utilize the data from month \(t-T\) to \(t-1\) to compute the sample means and sample covariances. To ensure numerical stability during optimization, the condition number of the sample covariance matrix is checked. If it is found to be ill-conditioned, a small constant is added to the diagonal elements to regularize the matrix and ensure a stable solution. This approach allows model parameters to adapt to changing market dynamics, although it introduces a “recency bias” by heavily weighting recent historical data.
-
The simulation commences after the initial 60-month lookback period, starting from January 2009. Portfolios are rebalanced at pre-defined frequencies: every 1, 2, 3, 6, and 12 months. At each rebalancing date, new optimal weights are calculated based on the most recent 60 months of data. The portfolio is then adjusted to match these newly calculated target weights. For the MVP and MSRP strategies, the constrained optimization problems are solved numerically using the Sequential Least Squares Programming (SLSQP) algorithm, which is an iterative optimization method provided by the SciPy package in Python. This algorithm is well-suited for non-linear objective functions with both equality and inequality constraints.
-
To provide a more realistic simulation of real-world trading, a proportional transaction cost of 0.25% is applied to the value of all trades required to rebalance the portfolio. This cost is applied to all trades, including the initial portfolio construction from an all-cash position. At each rebalancing date \(t\), turnover is calculated against the portfolio’s actual weights just prior to the trade, which have drifted from their previous target due to market returns. The total turnover (TVN) is the sum of the absolute changes between these drifted weights (\(w^{\text{drift}}_{i,t}\)) and the new target weights (\(w^{\text{target}}_{i,t}\)):
\[ \text{TVN}_t = \sum^N_{i=1} |\mathbf{w}^{\text{target}}_{i,t} - w^{\text{drift}}_{i,t}| \]The cost of rebalancing is then
\[ \text{Cost}_t = 0.0025 \times \text{TVN}_t \times \text{Portfolio Value}_t \] -
A constant annual risk-free rate of 2.5% is used for calculating the Sharpe Ratio throughout the backtest. This translates to a monthly risk-free rate of approximately \(R^{\text{monthly}}_f = (1+0.025)^{1/12} - 1 \approx 0.206\%\).
The backtest was conducted from January 2009 to May 2025, covering a total out-of-sample period of 197 months. The performance metrics used to evaluate the strategies are:
-
Annualized Return: The geometric average annual return, calculated as: \(\prod^T_{t=1} (1 + R_{p,t})^{12/T} - 1\) where \(R_{p,t}\) is the monthly portfolio return and \(T\) is the total number of months in the backtest.
-
Annualized Volatility: Following Joshi (2013), the annualized volatility of portfolio returns is calculated as the standard deviation of monthly portfolio log returns (\(\ln(1 + R_{p,t})\)) multiplied by \(\sqrt{12}\).
-
Sharpe Ratio: The annualized excess return (annualized return minus the annual risk-free rate) divided by the annualized volatility. This measures the risk-adjusted return.
-
Maximum Drawdown: The largest peak-to-trough decline in portfolio value, expressed as a percentage, representing the worst-case loss experienced by the portfolio over the entire backtesting period.
Results and Discussions
The out-of-sample performance metrics for the three portfolio strategies across various rebalancing frequencies are presented in Table 2.
| Final Value (IDR) | Ann. Return (%) | Ann. Volatility (%) | Sharpe Ratio | Max. Drawdown (%) | |
|---|---|---|---|---|---|
| Monthly rebalancing | |||||
| 1/N | 938.28M | 31.95 | 30.31 | 0.97 | 41.77 |
| MVP | 211.72M | 20.32 | 21.43 | 0.83 | 43.03 |
| MSRP | 887.02M | 31.62 | 22.93 | 1.27 | 23.75 |
| Bi-monthly rebalancing | |||||
| 1/N | 914.93M | 31.75 | 30.3 | 0.97 | 41.75 |
| MVP | 236.47M | 21.14 | 21.67 | 0.86 | 40.53 |
| MSRP | 869.14M | 31.46 | 23.06 | 1.26 | 25.08 |
| Quarterly rebalancing | |||||
| 1/N | 989.28M | 32.38 | 30.52 | 0.98 | 41.82 |
| MVP | 230.93M | 20.96 | 21.71 | 0.85 | 41.27 |
| MSRP | 926.25M | 31.97 | 22.91 | 1.29 | 24.86 |
| Bi-annual rebalancing | |||||
| 1/N | 1,049.75M | 32.86 | 30.85 | 0.98 | 41.22 |
| MVP | 222.05M | 20.67 | 21.88 | 0.83 | 39.92 |
| MSRP | 1,233.77M | 34.31 | 23.25 | 1.37 | 24.86 |
| Annual rebalancing | |||||
| 1/N | 1,194.04M | 33.91 | 30.55 | 1.03 | 40.49 |
| MVP | 156.36M | 18.11 | 19.73 | 0.79 | 37.49 |
| MSRP | 1,153.81M | 33.76 | 23.31 | 1.34 | 24.86 |
Table 2: Portfolio Performance Metrics (Jan 2009 - May 2025)
Note: Initial investment is 10 Million IDR. Ann. = Annualized. Sharpe Ratio calculated using a 2.5% risk-free rate.
The Maximum Sharpe Ratio Portfolio (MSRP) consistently emerges as the clear winner in terms of risk-adjusted returns and downside protection. Across all rebalancing frequencies, MSRP achieved the highest Sharpe Ratios, ranging from 1.26 (bi-monthly) to a peak of 1.37 (bi-annual). This indicates its superior ability to generate excess returns per unit of risk taken. Furthermore, MSRP consistently delivered the lowest maximum drawdowns, ranging from 23.75% to 25.08%. This level of downside protection is almost twice as good as what we observed for the 1/N and MVP strategies, which both saw drawdowns exceeding 40%. In terms of absolute wealth accumulation, the MSRP rebalanced bi-annually stands out, growing an initial investment of IDR 10 million to over IDR 1.23 billion. Its volatility, while higher than MVP, remained well-contained and significantly lower than that of the 1/N portfolio.
The Minimum Variance Portfolio (MVP) successfully lives up to its name by consistently exhibiting the lowest annualized volatility among the three strategies. Its annualized volatility ranged from 19.73% (annual rebalancing) to 21.88% (bi-annual rebalancing). However, this focus on absolute risk minimization came at a steep price. The MVP generated significantly lower final wealth across all rebalancing frequencies, with its annualized returns ranging from a meager 18.11% to 21.14%. Consequently, its Sharpe Ratios were the lowest, peaking at 0.86. Despite its low volatility, the MVP’s maximum drawdowns were surprisingly high, often exceeding 40% (except for bi-annual and annual rebalancing), indicating that while it minimizes overall variance, it may still be susceptible to large, albeit less frequent, capital losses during significant market downturns. Its conservative approach seemingly forgoes the higher-growth opportunities captured by the other strategies.
The naive 1/N portfolio presents an intriguing case. Consistent with the findings of DeMiguel et al. (2009), the 1/N strategy demonstrates surprising competitiveness in terms of absolute returns and final wealth. It achieved the highest final value for monthly, bi-monthly, quarterly, and annual rebalancing frequencies, only being surpassed by the bi-annual MSRP. For instance, with annual rebalancing, the 1/N portfolio generated a final value of IDR 1.19 billion, exceeding the MSRP’s IDR 1.15 billion for the same frequency. Its annualized returns were comparable to, and often slightly higher than, the MSRP (e.g., 31.95% vs 31.62% for monthly rebalancing). However, this superior absolute return often came at the cost of significantly higher risk. The 1/N portfolio consistently exhibited the highest annualized volatility (above 30% across all frequencies) and the deepest maximum drawdowns (consistently above 40%). This confirms its robustness against estimation error in generating competitive returns, but highlights its vulnerability to market downturns and overall higher risk exposure when compared on a raw volatility or drawdown basis.
The rebalancing frequency also played a role in performance. For the MSRP, a bi-annual rebalancing frequency yielded the highest annualized return and Sharpe Ratio, suggesting that less frequent rebalancing, allowing optimized weights to persist longer, might be beneficial in this market. Conversely, the MVP’s performance generally deteriorated with less frequent rebalancing in terms of absolute returns. The 1/N portfolio showed slight improvements in final value with less frequent rebalancing, likely due to reduced transaction costs offsetting any slight decrease in returns.
The outperformance of MSRP in risk-adjusted terms, despite relying on estimated moments, suggests that its optimization process effectively balances the trade-off between return potential and risk mitigation, particularly in managing tail risks as evidenced by its significantly lower maximum drawdowns. The extreme outlier from JPFA, as highlighted in the Data section, likely posed a significant challenge to both MVP and MSRP in estimating the covariance matrix and expected returns. While MVP’s low volatility indicates it successfully avoided highly volatile assets, its inability to translate this into superior risk-adjusted returns or consistently lower drawdowns compared to its peers is noteworthy. The 1/N’s robust absolute performance, despite the noise in input parameters for optimized strategies, underscores its simplicity and immunity to estimation error.
Conclusion
I investigate the existence of optimal stock portfolios by comparing the out-of-sample performance of the naive 1/N portfolio against the Minimum Variance Portfolio (MVP) and the Maximum Sharpe Ratio Portfolio (MSRP) using monthly data from 12 Indonesian stocks. For investors prioritizing risk-adjusted returns and robust downside protection in the Indonesian stock market, the MSRP appears to be a highly effective strategy, successfully navigating the challenges of estimation error and extreme outliers to deliver superior performance. While the 1/N portfolio offers competitive absolute returns due to its simplicity, investors must be prepared for substantially higher volatility and greater potential losses. The MVP, despite its theoretical appeal of minimizing variance, proved to be an inferior choice in this empirical setting due to its poor return generation.
Future research could explore whether more advanced techniques, such as factor-based models of expected returns (Fama and French, 2004), robust covariance estimators (Ledoit and Wolf, 2003), or investor’s subjective views (Black and Litterman, 1991) help improve the performance of optimization-based strategies against the 1/N rule.
References
- Best, M. J., & Grauer, R. R. (1991). On the Sensitivity of Mean-Variance-Efficient Portfolios to Changes in Asset Means: Some Analytical and Computational Results. The Review of Financial Studies, 4(2), 315-342. http:/www.jstor.org/stable/2962107
- Black, F., & Litterman, R. B. (1991). Asset Allocation: Combining Investor Views with Market Equilibrium. The Journal of Fixed Income, 1(2), 7-18. https://doi.org/10.3905/jfi.1991.408013
- DeMiguel, V., Garlappi, L., & Uppal, R. (2007). Optimal Versus Naive Diversification: How Inefficient is the 1/N Portfolio Strategy?. The Review of Financial Studies, 22(5), 1915-1953. https://doi.org/10.1093/rfs/hhm075
- Fama, E. F., & French, K. R. (2004). The Capital Asset Pricing Model: Theory and Evidence. The Journal of Economic Perspectives, 18(3), 25-46. http://www.jstor.org/stable/3216805
- Joshi, N. (2013). What’s Wrong with Multiplying by the Square Root of Twelve. CFA Digest, 43(4), dig.v43.n4.9. https://doi. org/10.2469/dig.v43.n4.9
- Ledoit, O., & Wolf, M. (2003). Improved estimation of the covariance matrix of stock returns with an application to portfolio selection. Journal of Empirical Finance, 10(5), 603-621.
- https://doi.org/10.1016/S0927-5398(03)00007-0
- Ledoit, O., & Wolf, M. (2004). Honey, I Shrunk the Sample Covariance Matrix. The Journal of Portfolio Management, 30(4), 110-119. https://doi.org/10.3905/jpm.2004.110
- Markowitz, H. (1952). Portfolio Selection. The Journal of Finance, 7(1), 77-91. http://www.jstor.org/stable/2975974
- Michaud, R. O. (1989). The Markowitz Optimization Enigma: Is ‘Optimized’ Optimal?. Financial Analysts Journal, 45(1), 31-42. http://www.jstor.org/stable/4479185
- Palomar, D. P. (2025). Portfolio Optimization: Theory and Application. Cambridge University Press. https://portfoliooptimizationbook.com/
- Sharpe, W. F. (1966). Mutual Fund Performance. The Journal of Business, 39(1), 119-138. http://www.jstor.org/stable/2351741
Appendix
- Source code and cleaned data: https://github.com/rahmanfadhil/optimal-stock-portfolio
Tags: Finance