A Monte Carlo-Based Framework for Two-Stage Stochastic Programming: Application to Bond Portfolio Optimization
Abstract
1. Introduction
- : first-stage decision vector,
- : second-stage decision vector,
- : a random vector to be observed,
- F: set of all for which problem (1) has feasible solutions for every possible value of the random vector ,
- : cost vector corresponding to the first-stage decision vector x,
- : cost vector corresponding to the second-stage decision vector y,
- : coefficient matrix, and : right-hand side vector of the equality constraints.
2. Literature Review
3. Basic Mathematical Models for Bond Portfolio Optimization
3.1. Bond Portfolio Optimization Problem for Stochastic Programming with Recourse
- B: number of bonds
- T: number of time periods
- : amount of bond j purchased for all
- : cost of bond j for all
- : last time period when all parameters are known with certainty
- : cash surplus accumulated at the end of the period t for all
- : cash flows obtained from bond j at time t for and
- K: number of scenarios of the uncertain future
- : re-investment rate under scenario k for period t, where is the interest rate for all and
- : cash liability to be met in period t under scenario k for all and
- : probability that scenario k will occur for all
- : additional cash required in period t under scenario k for all and
- : discount factor for cash flows in period t under scenario k for all and
3.2. Two-Stage Mixed-Integer Stochastic Programming Models for Bond Portfolio Optimization
4. A Monte Carlo Simulation Approach to Solve Problem (9)
| Algorithm 1 Sample Average Approximation Framework (Homem-de-Mello and Bayraksan 2014 [52]) |
|
| Algorithm 2 Modified Sample Average Approximation Framework to Solve Two Stage Problems |
|
5. Case Study: Monte Carlo Simulation for Two-Stage Bond Portfolio Optimization in the Saudi Sukuk Market
- −
- Issue size ranges from Saudi Riyal (SAR) 725 million for Saudi Hollandi Bank 2 to SAR 8000 million for SABIC 2, with a total of SAR 41,274 million.
- −
- Par value varies between SAR 10 thousand for SABIC 2, SABIC 3, SE 3 and SAR 500,000 for Saudi Electricity 1.
- −
- Maturity date varies, earliest with 6 July 2016 for SIPCHEM and latest 10 May 2030 for Saudi Electricity 3.
- −
- Coupon rates spread between SIBOR for Saudi Hollandi Bank 2 and SIBOR + 1.75% for SIPCHEM.
- −
- There is a total of 49 transactions, ranging from 2 for SABIC 1 and SABIC 3 to 14 for Saudi Electricity 2, while SATORP reported no transactions.
- −
- Value traded ranges from SAR 1097.4 thousand for SABIC 3 to about SAR 1.5 billion for Saudi Electricity 3, with a total of over SAR 1.8 billion.
- −
- Nominal value traded ranges from SAR 1.1 million for SABIC 3 to SAR 1.45 milion for Saudi Electricity 3, with a total of over SAR 1.8 billion.
- −
- Stage 1 interest rates at time periods t are 0.0148, 0.0317, 0.0112, 0.0112 for , respectively.
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Ardakani, O. Portfolio optimization with transfer entropy constraints. Int. Rev. Financ. Anal. 2024, 96, 103644. [Google Scholar] [CrossRef]
- Yan, X.; Yang, H.; Yu, Z.; Zhang, S.; Zheng, X. Portfolio optimization: A return-on-equity network analysis. IEEE Trans. Comput. Soc. Syst. 2023, 11, 1644–1653. [Google Scholar] [CrossRef]
- Novais, R.; Wanke, P.; Antunes, J.; Tan, Y. Portfolio optimization with a mean-entropy-mutual information model. Entropy 2022, 24, 369. [Google Scholar] [CrossRef] [PubMed]
- Markowitz, H. Portfolio Selection. J. Financ. 1952, 7, 77–91. [Google Scholar]
- Shapiro, J.F. Stochastic programming models for dedicated portfolio selection. In Mathematical Models for Decision Support; Springer: Berlin/Heidelberg, Germany, 1988; pp. 587–611. [Google Scholar]
- Bradley, S.P.; Crane, D.B. A dynamic model for bond portfolio management. Manag. Sci. 1972, 19, 139–151. [Google Scholar] [CrossRef]
- Hu, Y.; Chen, X.; He, N. Sample Complexity of Sample Average Approximation for Conditional Stochastic Optimization. SIAM J. Optim. 2020, 30, 2103–2133. [Google Scholar] [CrossRef]
- Jiang, J.; Li, S. On complexity of multistage stochastic programs under heavy tailed distributions. Oper. Res. Lett. 2021, 49, 265–269. [Google Scholar] [CrossRef]
- Bertsimas, D.; Gupta, V.; Kallus, N. Robust Sample Average Approximation. Math. Program. 2018, 171, 217–282. [Google Scholar] [CrossRef]
- Mercurio, P.J.; Wu, Y.; Xie, H. An Entropy-Based Approach to Portfolio Optimization. Entropy 2020, 22, 332. [Google Scholar] [CrossRef]
- Prékopa, A. Stochastic Programming; Kluwer Academic Publishers: Boston, MA, USA, 1995. [Google Scholar]
- Shapiro, A. Monte Carlo simulation approach to stochastic programming. In Proceedings of the 2001 Winter Simulation Conference (Cat. No. 01CH37304), Arlington, VA, USA, 9–12 December 2001; Volume 1, pp. 428–431. [Google Scholar]
- Brandimarte, P. Handbook in Monte Carlo Simulation: Applications in Financial Engineering, Risk Management, and Economics; Wiley Handbooks in Financial Engineering and Econometrics; Wiley: Hoboken, NJ, USA, 2014; pp. 448–452. [Google Scholar]
- Alreshidi, N.A.; Mrad, M.; Subasi, E.; Subasi, M.M. Two-stage bond portfolio optimization and its application to Saudi Sukuk Market. Ann. Oper. Res. 2020, 288, 1–43. [Google Scholar] [CrossRef]
- Alkailany, M.A.; Abdalrazzaq, M.S. A new bond portfolio optimization model as two-stage stochastic programming problems in US market. Int. J. Nonlinear Anal. Appl. 2022, 13, 1545–1563. [Google Scholar]
- Hodges, S.D.; Schaefer, S.M. A model for bond portfolio improvement. J. Financ. Quant. Anal. 1977, 12, 243–260. [Google Scholar] [CrossRef]
- Ronn, E.I. A new linear programming approach to bond portfolio management. J. Financ. Quant. Anal. 1987, 22, 439–466. [Google Scholar] [CrossRef]
- Korn, O.; Koziol, C. Bond portfolio optimization: A risk-return approach. J. Fixed Income 2006, 15, 48–60. [Google Scholar] [CrossRef]
- Stoyan, S.J.; Kwon, R.H. A stochastic-goal mixed-integer programming approach for integrated stock and bond portfolio optimization. Comput. Ind. Eng. 2011, 61, 1285–1295. [Google Scholar] [CrossRef]
- He, F.; Qu, R. A two-stage stochastic mixed-integer program modelling and hybrid solution approach to portfolio selection problems. Inf. Sci. 2014, 289, 190–205. [Google Scholar] [CrossRef]
- Maggioni, F.; Allevi, E.; Tomasgard, A. Bounds in multi-horizon stochastic programs. Ann. Oper. Res. 2020, 292, 605–625. [Google Scholar] [CrossRef]
- Salo, A.; Stoyan, S.; Wallace, S.; Zenios, S. Fifty Years of Portfolio Optimization: A Retrospective and Prospects. Eur. J. Oper. Res. 2024, 317, 329–351. [Google Scholar] [CrossRef]
- Zhang, W.; Wang, K.; Jacquillat, A.; Wang, S. Optimized scenario reduction: Solving large-scale stochastic programs with quality guarantees. INFORMS J. Comput. 2023, 35, 886–908. [Google Scholar] [CrossRef]
- Henrion, R.; Römisch, W. Problem-based optimal scenario generation and reduction in stochastic programming. Math. Program. 2022, 191, 183–205. [Google Scholar] [CrossRef]
- Chan, T.; Lin, B.; Saxe, S. Machine Learning–Augmented Optimization of Large Bilevel and Two-Stage Stochastic Programs: Application to Cycling Network Design. Manuf. Serv. Oper. Manag. 2025. forthcoming. [Google Scholar] [CrossRef]
- Dantzig, G.; Infanger, G. Multi-stage stochastic linear programs for portfolio optimization. Ann. Oper. Res. 1993, 45, 59–76. [Google Scholar] [CrossRef]
- Mulvey, J.; Vladimirou, H. Stochastic network programming for financial planning problems. Manag. Sci. 1992, 38, 1642–1664. [Google Scholar] [CrossRef]
- Zenios, S. Asset/liability management under uncertainty for fixed-income securities. Ann. Oper. Res. 1995, 59, 77–97. [Google Scholar] [CrossRef]
- Cariño, D.R.; Kent, T.; Myers, D.H.; Stacy, C.; Sylvanus, M.; Turner, A.L.; Watanabe, K.; Ziemba, W.T. The Russell-Yasuda Kasai model: An asset/liability model for a Japanese insurance company using multistage stochastic programming. Interfaces 1994, 24, 29–49. [Google Scholar] [CrossRef]
- Dentcheva, D.; Ruszczynski, A. Portfolio optimization with stochastic dominance constraints. J. Bank. Financ. 2006, 30, 433–451. [Google Scholar] [CrossRef]
- Gülpınar, N.; Rustem, B.; Settergren, R. Robust portfolio optimization under downside risk measures. Comput. Manag. Sci. 2016, 13, 49–74. [Google Scholar]
- Shapiro, A.; Ugurlu, K. Decomposability and time consistency of risk averse multistage programs. Oper. Res. Lett. 2016, 44, 663–765. [Google Scholar] [CrossRef]
- Jobst, N.; Mitra, G.; Zenios, S. Integrating market and credit risk: A simulation and optimisation perspective. J. Bank. Financ. 2009, 30, 717–742. [Google Scholar] [CrossRef]
- Fábián, C.; Mitra, G.; Roman, D. Processing second-order stochastic dominance models using cutting-plane representations. Math. Program. 2011, 130, 33–57. [Google Scholar] [CrossRef]
- Bertsimas, D.; Kallus, N. From predictive to prescriptive analytics. Manag. Sci. 2020, 66, 1025–1044. [Google Scholar] [CrossRef]
- Consigli, G.; Dentcheva, D.; Maggioni, F.; Micheli, A. Asset Liability Management under Sequential Stochastic Dominance Constraints. arXiv 2025, arXiv:2505.16486. Available online: https://arxiv.org/abs/2505.16486 (accessed on 23 October 2025). [CrossRef]
- Yang, R.; Yu, H.; Li, Z.; Zhao, X. A Multistage Stochastic Programming Model with Multiple Objectives for Optimal Issuance of Corporate Bonds. Discret. Dyn. Nat. Soc. 2022. [Google Scholar] [CrossRef]
- Basciftci, B.; Ahmed, S.; Duenyas, I.; Shen, Z. Adaptive Two-Stage Stochastic Programming with Applications to Capacity Expansion Planning. Manuf. Serv. Oper. Manag. 2024, 26, 45–63. [Google Scholar] [CrossRef]
- Rubinstein, R.Y.; Shapiro, A. Discrete Event Systems: Sensitivity Analysis and Stochastic Optimization by the Score Function Method; Wiley: Chichester, UK, 1993; Volume 13. [Google Scholar]
- Geyer, C.J.; Thompson, E.A. Constrained Monte Carlo maximum likelihood for dependent data. J. R. Stat. Soc. Ser. B (Methodol.) 1992, 54, 657–683. [Google Scholar] [CrossRef]
- Infanger, G. Planning Under Uncertainty Solving Large-Scale Stochastic Linear Programs; Technical Report; Systems Optimization Laboratory, Stanford University: Stanford, CA, USA, 1992. [Google Scholar]
- Plambeck, E.L.; Fu, B.R.; Robinson, S.M.; Suri, R. Sample-path optimization of convex stochastic performance functions. Math. Program. 1996, 75, 137–176. [Google Scholar] [CrossRef]
- Gurkan, G.; Ozge, A.Y.; Robinson, T. Sample-path optimization in simulation. In Proceedings of the Winter Simulation Conference, Lake Buena Vista, FL, USA, 11–14 December 1994; pp. 247–254. [Google Scholar] [CrossRef]
- Shapiro, A.; Wardi, Y. Convergence analysis of gradient descent stochastic algorithms. J. Optim. Theory Appl. 1996, 91, 439–454. [Google Scholar] [CrossRef]
- Shapiro, A.; Homem-de Mello, T. A simulation-based approach to two-stage stochastic programming with recourse. Math. Program. 1998, 81, 301–325. [Google Scholar] [CrossRef]
- Verweij, B.; Ahmed, S.; Kleywegt, A.J.; Nemhauser, G.; Shapiro, A. The sample average approximation method applied to stochastic routing problems: A computational study. Comput. Optim. Appl. 2003, 24, 289–333. [Google Scholar] [CrossRef]
- Royset, J.; Polak, E. Reliability-based optimal design using sample average approximations. Probabilistic Eng. Mech. 2004, 19, 331–343. [Google Scholar] [CrossRef]
- Santoso, T.; Ahmed, S.; Goetschalckx, M.; Shapiro, A. A stochastic programming approach for supply chain network design under uncertainty. Eur. J. Oper. Res. 2005, 167, 96–115. [Google Scholar] [CrossRef]
- Jirutitijaroen, P.; Singh, C. Reliability constrained multi-area adequacy planning using stochastic programming with sample-average approximations. IEEE Trans. Power Syst. 2008, 23, 504–513. [Google Scholar] [CrossRef]
- Keller, B.; Bayraksan, G. Scheduling jobs sharing multiple resources under uncertainty: A stochastic programming approach. IIE Trans. 2009, 42, 16–30. [Google Scholar] [CrossRef]
- Hilli, P.; Koivu, M.; Pennanen, T.; Ranne, A. A stochastic programming model for asset liability management of a Finnish pension company. Ann. Oper. Res. 2007, 152, 115–139. [Google Scholar] [CrossRef]
- Homem-de Mello, T.; Bayraksan, G. Monte Carlo sampling-based methods for stochastic optimization. Surv. Oper. Res. Manag. Sci. 2014, 19, 56–85. [Google Scholar] [CrossRef]
- Pasupathy, R.; Song, Y. Adaptive Sequential Sample Average Approximation for Two-Stage Stochastic Linear Programs. SIAM J. Optim. 2021, 31, 1017–1048. [Google Scholar] [CrossRef]
- Kannan, R.; Bayraksan, G.; Luedtke, J. Data-Driven Sample Average Approximation with Covariate Information. Oper. Res. 2025, forthcoming. [Google Scholar] [CrossRef]
- Lew, T.; Sahin, A.; Chen, X.; Harchaoui, Z. Sample Average Approximation for Stochastic Programs with Equality Constraints: Complexity and Algorithms. arXiv 2022, arXiv:2206.09963. [Google Scholar]
- Alnaggar, A.; Gzara, F.; Bookbinder, J.H. Distribution planning with random demand and recourse in a transshipment network. EURO J. Transp. Logist. 2020, 9, 100007. [Google Scholar] [CrossRef]
- Afshar, T.A. Compare and contrast Sukuk (Islamic Bonds) with conventional bonds, are they compatible? J. Glob. Bus. Manag. 2013, 9, 44. [Google Scholar]
- Alswaidan, M.W. Saudi Arabian Sukuk Market: Recent Trends and Development. Bus. Rev. Camb. 2013, 21, 108–117. [Google Scholar]


| N | Set of bonds purchased in Stage 1 |
| M | Set of bonds that can be purchased in Stage 2 |
| T | Number of time periods |
| Last time period when all parameters are known with certainty | |
| Set of bonds purchased in Stage 1, whose maturity is ≤, and | |
| K | Number of scenarios in Stage 2 |
| Buying price of bond j where | |
| Cash flow obtained from bond j in Stage 1 at time t, where | |
| and | |
| Cash flow obtained from bond j in Stage 2 under scenario k at time t, | |
| where , , and | |
| Liability to be met in period t, where | |
| Liability to be met in period t under scenario k, where | |
| and | |
| Interest rate in period t in Stage 1, where | |
| Interest rate in period t in Stage 2 under scenario k, where | |
| and | |
| Re-investment rate in period t in Stage 1, where and | |
| = 1 + for | |
| Re-investment rate under scenario k in period t in Stage 2 defined by | |
| = 1 + , where is the interest rate for and | |
| Buying price of bond j purchased under scenario k for and | |
| Selling price of bond j under scenario k in period t, where | |
| , , and | |
| Probability that scenario k will occur for |
| Number of units purchased from bond j for | |
| Initial cash investment | |
| Cash surplus accumulated at the end of the period t for | |
| Cash surplus accumulated at the end | |
| of the period t under scenario k, , | |
| Amount of bond j purchased in Stage 2 under scenario k for | |
| and | |
| Amount of bond j sold in Stage 2 under scenario k which has not reached the | |
| maturity where , and |
| Sample Size | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|
| 50 | 22,265,504 | 22,196,684 | 22,069,286 | 22,262,364 | 22,068,184 | 22,247,162 | 22,140,010 | 22,226,344 | 22,262,274 | 22,054,840 |
| 80 | 22,720,722 | 22,668,642 | 22,654,792 | 22,626,936 | 22,674,966 | 22,609,232 | 22,670,382 | 22,641,696 | 22,568,942 | 22,669,854 |
| 110 | 23,138,850 | 23,180,676 | 23,118,006 | 23,139,992 | 23,144,204 | 23,117,254 | 23,157,620 | 23,198,066 | 23,043,918 | 23,059,832 |
| 140 | 23,008,830 | 23,005,314 | 23,028,244 | 23,001,990 | 23,098,344 | 23,021,378 | 22,947,118 | 23,035,022 | 23,108,210 | 23,047,234 |
| 170 | 22,937,088 | 22,882,234 | 22,829,972 | 22,866,132 | 22,785,988 | 22,802,760 | 22,899,402 | 22,805,734 | 22,760,046 | 22,834,454 |
| 200 | 22,979,682 | 22,865,768 | 22,963,866 | 22,882,192 | 22,969,268 | 22,989,086 | 22,986,118 | 22,895,440 | 22,914,030 | 23,043,084 |
| 230 | 22,922,574 | 22,989,214 | 22,991,872 | 22,910,998 | 22,957,744 | 22,914,236 | 22,972,384 | 22,888,552 | 22,866,894 | 22,879,940 |
| 260 | 22,908,240 | 23,007,658 | 22,973,378 | 22,953,190 | 23,001,674 | 23,053,246 | 22,998,946 | 23,059,180 | 22,918,848 | 22,982,410 |
| 290 | 22,634,194 | 22,593,962 | 22,619,662 | 22,590,708 | 22,613,906 | 22,627,852 | 22,558,360 | 22,582,824 | 22,617,492 | 22,634,068 |
| 320 | 22,660,904 | 22,664,612 | 22,718,868 | 22,787,006 | 22,673,512 | 22,673,818 | 22,695,040 | 22,742,574 | 22,722,564 | 22,696,608 |
| 350 | 22,601,522 | 22,584,608 | 22,609,338 | 22,614,594 | 22,589,642 | 22,632,240 | 22,605,740 | 22,665,256 | 22,641,672 | 22,649,372 |
| 380 | 22,657,658 | 22,624,844 | 22,629,336 | 22,594,900 | 22,646,900 | 22,650,932 | 22,658,058 | 22,653,232 | 22,654,858 | 22,657,256 |
| 410 | 22,740,196 | 22,742,622 | 22,730,776 | 22,778,622 | 22,726,898 | 22,759,446 | 22,752,096 | 22,720,734 | 22,760,496 | 22,713,450 |
| 440 | 22,569,322 | 22,621,648 | 22,603,778 | 22,535,884 | 22,644,062 | 22,590,278 | 22,621,280 | 22,587,942 | 22,612,952 | 22,618,754 |
| 470 | 22,591,812 | 22,626,538 | 22,566,262 | 22,552,222 | 22,626,832 | 22,560,730 | 22,583,496 | 22,611,746 | 22,570,586 | 22,547,362 |
| 500 | 22,676,318 | 22,709,658 | 22,686,070 | 22,644,946 | 22,667,304 | 22,678,936 | 22,689,300 | 22,635,984 | 22,696,702 | 22,651,734 |
| 530 | 22,528,930 | 22,503,006 | 22,524,058 | 22,515,074 | 22,524,546 | 22,521,206 | 22,485,202 | 22,517,848 | 22,511,472 | 22,544,572 |
| 560 | 22,700,222 | 22,658,356 | 22,718,134 | 22,723,510 | 22,703,158 | 22,663,254 | 22,657,612 | 22,692,910 | 22,700,344 | 22,650,430 |
| 590 | 22,649,722 | 22,676,452 | 22,681,334 | 22,642,650 | 22,663,334 | 22,650,864 | 22,611,072 | 22,680,096 | 22,646,852 | 22,644,194 |
| 620 | 22,478,812 | 22,565,170 | 22,558,228 | 22,561,604 | 22,550,718 | 22,577,476 | 22,552,456 | 22,595,662 | 22,589,688 | 22,566,446 |
| 650 | 22,547,566 | 22,535,956 | 22,549,032 | 22,550,790 | 22,560,924 | 22,509,826 | 22,540,026 | 22,508,774 | 22,517,570 | 22,506,856 |
| 680 | 22,611,406 | 22,581,738 | 22,553,906 | 22,561,968 | 22,583,046 | 22,572,246 | 22,555,564 | 22,595,864 | 22,592,712 | 22,585,836 |
| 710 | 22,742,404 | 22,685,252 | 22,719,710 | 22,738,206 | 22,746,072 | 22,757,838 | 22,729,038 | 22,682,084 | 22,725,248 | 22,765,626 |
| 740 | 22,694,538 | 22,712,736 | 22,724,896 | 22,684,264 | 22,703,856 | 22,738,444 | 22,715,300 | 22,733,398 | 22,685,980 | 22,736,340 |
| 770 | 22,684,796 | 22,692,146 | 22,682,390 | 22,701,930 | 22,673,552 | 22,651,052 | 22,668,386 | 22,666,438 | 22,661,612 | 22,691,850 |
| 800 | 22,592,514 | 22,554,728 | 22,577,354 | 22,569,026 | 22,633,540 | 22,559,830 | 22,591,684 | 22,586,560 | 22,559,032 | 22,563,022 |
| 830 | 22,695,624 | 22,635,490 | 22,675,192 | 22,647,936 | 22,652,752 | 22,674,380 | 22,659,166 | 22,623,962 | 22,673,838 | 22,635,330 |
| 860 | 22,660,692 | 22,672,074 | 22,664,990 | 22,644,728 | 22,642,864 | 22,630,138 | 22,636,832 | 22,642,280 | 22,651,046 | 22,623,690 |
| Sample Size | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
|---|---|---|---|---|---|---|---|---|---|---|
| 50 | 22,249,392 | 22,192,802 | 21,970,916 | 22,047,142 | 22,212,648 | 22,184,694 | 22,106,002 | 22,099,104 | 22,304,932 | 22,052,730 |
| 80 | 22,575,492 | 22,647,942 | 22,549,028 | 22,533,152 | 22,581,404 | 22,595,868 | 22,466,710 | 22,660,108 | 22,701,058 | 22,702,358 |
| 110 | 23,125,668 | 23,153,764 | 23,102,100 | 23,041,618 | 23,126,458 | 23,153,412 | 23,124,164 | 23,118,946 | 23,091,818 | 23,140,872 |
| 140 | 23,067,442 | 22,967,508 | 23,022,206 | 23,044,090 | 23,052,884 | 23,100,226 | 23,114,012 | 23,074,332 | 22,923,810 | 23,128,412 |
| 170 | 22,733,392 | 22,819,432 | 22,817,980 | 22,862,874 | 22,871,170 | 22,848,170 | 22,732,296 | 22,834,966 | 22,856,576 | 22,906,492 |
| 200 | 22,992,666 | 22,915,620 | 23,019,108 | 22,922,658 | 22,913,238 | 22,977,670 | 22,962,866 | 22,933,226 | 22,992,542 | 22,964,562 |
| 230 | 22,954,086 | 22,904,750 | 22,942,966 | 22,934,224 | 22,867,416 | 22,883,290 | 22,934,408 | 22,895,392 | 22,973,656 | 22,924,338 |
| 260 | 22,999,396 | 22,935,130 | 22,990,118 | 23,061,400 | 22,996,090 | 22,914,978 | 23,010,328 | 22,958,194 | 22,983,276 | 22,993,130 |
| 290 | 22,587,052 | 22,511,014 | 22,570,306 | 22,627,148 | 22,603,150 | 22,613,320 | 22,619,410 | 22,615,694 | 22,617,304 | 22,634,472 |
| 320 | 22,664,048 | 22,695,692 | 22,639,600 | 22,707,522 | 22,716,420 | 22,753,308 | 22,713,382 | 22,669,380 | 22,723,230 | 22,734,278 |
| 350 | 22,633,188 | 22,611,582 | 22,608,832 | 22,654,540 | 22,598,510 | 22,602,920 | 22,597,876 | 22,602,526 | 22,597,946 | 22,635,430 |
| 380 | 22,620,336 | 22,675,614 | 22,650,702 | 22,621,408 | 22,645,424 | 22,625,120 | 22,692,752 | 22,659,200 | 22,643,590 | 22,675,280 |
| 410 | 22,762,290 | 22,774,240 | 22,737,504 | 22,713,468 | 22,758,334 | 22,739,174 | 22,781,474 | 22,753,202 | 22,727,940 | 22,754,310 |
| 440 | 22,621,666 | 22,619,300 | 22,641,762 | 22,590,016 | 22,636,126 | 22,617,230 | 22,634,554 | 22,597,860 | 22,659,590 | 22,601,596 |
| 470 | 22,615,676 | 22,596,638 | 22,571,348 | 22,580,078 | 22,531,980 | 22,573,886 | 22,581,134 | 22,570,440 | 22,586,898 | 22,584,838 |
| 500 | 22,640,810 | 22,617,506 | 22,631,338 | 22,694,764 | 22,672,802 | 22,711,946 | 22,699,262 | 22,664,782 | 22,656,392 | 22,707,886 |
| 530 | 22,532,612 | 22,523,770 | 22,496,352 | 22,527,724 | 22,504,102 | 22,550,588 | 22,530,438 | 22,521,800 | 22,473,192 | 22,530,806 |
| 560 | 22,653,770 | 22,689,972 | 22,697,422 | 22,716,862 | 22,671,716 | 22,705,676 | 22,637,370 | 22,682,956 | 22,689,030 | 22,692,382 |
| 590 | 22,624,788 | 22,647,334 | 22,615,382 | 22,666,100 | 22,628,862 | 22,627,646 | 22,654,536 | 22,665,720 | 22,662,434 | 22,654,534 |
| 620 | 22,539,118 | 22,561,548 | 22,562,272 | 22,569,628 | 22,592,958 | 22,560,592 | 22,573,762 | 22,552,834 | 22,553,254 | 22,562,266 |
| 650 | 22,508,556 | 22,537,404 | 22,520,592 | 22,539,984 | 22,545,440 | 22,561,712 | 22,514,016 | 22,505,132 | 22,548,260 | 22,560,968 |
| 680 | 22,559,640 | 22,578,104 | 22,580,518 | 22,604,592 | 22,623,030 | 22,551,958 | 22,536,640 | 22,552,938 | 22,577,580 | 22,591,406 |
| 710 | 22,745,774 | 22,719,346 | 22,698,272 | 22,729,826 | 22,744,698 | 22,758,930 | 22,750,384 | 22,700,350 | 22,748,522 | 22,722,210 |
| 740 | 22,701,916 | 22,737,038 | 22,713,906 | 22,724,550 | 22,684,052 | 22,712,630 | 22,711,882 | 22,699,240 | 22,709,156 | 22,725,202 |
| 770 | 22,695,032 | 22,722,628 | 22,698,262 | 22,641,372 | 22,718,944 | 22,671,872 | 22,693,706 | 22,646,232 | 22,712,832 | 22,662,506 |
| 800 | 22,543,436 | 22,580,192 | 22,582,996 | 22,543,788 | 22,604,186 | 2,257,077 | 22,575,264 | 22,577,728 | 22,603,708 | 22,558,152 |
| 830 | 22,633,486 | 22,634,216 | 22,660,650 | 22,650,060 | 22,656,632 | 22,667,046 | 22,654,776 | 22,634,866 | 22,653,400 | 22,676,644 |
| 860 | 22,648,034 | 22,662,028 | 22,664,396 | 22,678,954 | 22,667,786 | 22,624,580 | 22,637,904 | 22,686,834 | 22,638,014 | 22,668,170 |
| Sample Size | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
|---|---|---|---|---|---|---|---|---|---|---|
| 50 | 22,237,866 | 22,064,712 | 22,288,522 | 22,096,832 | 22,233,890 | 22,129,082 | 22,048,730 | 22,052,806 | 22,085,466 | 22,246,550 |
| 80 | 22,650,972 | 22,661,502 | 22,658,058 | 22,568,156 | 22,704,108 | 22,599,496 | 22,696,514 | 22,646,992 | 22,628,374 | 22,569,252 |
| 110 | 23,134,602 | 23,092,242 | 23,054,206 | 23,106,758 | 23,144,746 | 23,095,804 | 23,167,000 | 23,103,778 | 23,135,168 | 23,107,404 |
| 140 | 23,024,374 | 23,030,506 | 23,127,334 | 23,101,280 | 23,050,950 | 23,090,398 | 22,956,588 | 23,135,850 | 23,061,208 | 23,009,344 |
| 170 | 22,830,968 | 22,818,024 | 22,787,504 | 22,866,296 | 22,788,274 | 22,780,852 | 22,787,238 | 22,890,184 | 22,859,100 | 22,808,144 |
| 200 | 22,928,626 | 22,980,684 | 22,860,022 | 22,941,820 | 22,894,202 | 23,008,310 | 22,962,150 | 23,004,740 | 22,954,904 | 22,967,182 |
| 230 | 22,942,948 | 22,906,622 | 22,954,188 | 22,955,908 | 22,942,782 | 22,886,334 | 22,922,434 | 22,899,362 | 22,904,340 | 22,905,404 |
| 260 | 23,058,666 | 23,060,606 | 23,033,862 | 23,064,302 | 23,007,438 | 22,927,486 | 22,979,692 | 23,001,154 | 23,039,638 | 22,913,916 |
| 290 | 22,577,360 | 22,561,212 | 22,583,880 | 22,625,728 | 22,606,304 | 22,535,880 | 22,623,660 | 22,624,678 | 22,587,096 | 22,592,158 |
| 320 | 22,619,502 | 22,765,186 | 22,743,140 | 22,681,730 | 22,702,648 | 22,719,896 | 22,720,048 | 22,725,620 | 22,733,810 | 22,744,246 |
| 350 | 22,619,568 | 22,636,468 | 22,575,310 | 22,632,842 | 22,602,062 | 22,675,444 | 22,568,672 | 22,587,778 | 22,638,008 | 22,622,098 |
| 380 | 22,643,366 | 22,680,562 | 22,640,694 | 22,688,024 | 22,667,932 | 22,672,518 | 22,655,800 | 22,725,732 | 22,652,448 | 22,698,922 |
| 410 | 22,748,352 | 22,780,612 | 22,729,978 | 22,778,038 | 22,744,232 | 22,806,572 | 22,757,660 | 22,750,522 | 22,735,188 | 22,677,712 |
| 440 | 22,615,162 | 22,578,912 | 22,567,592 | 22,597,358 | 22,584,560 | 22,627,420 | 22,631,510 | 22,588,666 | 22,594,068 | 22,590,898 |
| 470 | 22,527,668 | 22,572,508 | 22,587,706 | 22,575,770 | 22,596,904 | 22,609,268 | 22,597,640 | 22,590,878 | 22,577,684 | 22,538,274 |
| 500 | 22,670,038 | 22,703,904 | 22,647,926 | 22,701,692 | 22,619,188 | 22,663,306 | 22,713,766 | 22,726,326 | 22,708,788 | 22,678,846 |
| 530 | 22,519,292 | 22,533,618 | 22,523,792 | 22,545,326 | 22,529,342 | 22,517,132 | 22,533,528 | 22,532,024 | 22,565,590 | 22,518,608 |
| 560 | 22,670,202 | 22,714,546 | 22,681,598 | 22,702,494 | 22,678,016 | 22,696,834 | 22,700,454 | 22,702,174 | 22,692,446 | 22,666,224 |
| 590 | 22,631,486 | 22,604,534 | 22,648,134 | 22,659,322 | 22,696,018 | 22,655,770 | 22,664,946 | 22,655,822 | 22,660,228 | 22,675,754 |
| 620 | 22,552,158 | 22,549,850 | 22,538,270 | 22,533,202 | 22,574,864 | 22,561,412 | 22,560,600 | 22,570,524 | 22,561,300 | 22,554,800 |
| 650 | 22,561,524 | 22,523,800 | 22,533,300 | 22,560,212 | 22,546,936 | 22,477,888 | 22,534,814 | 22,525,250 | 22,535,680 | 22,528,842 |
| 680 | 22,600,772 | 22,551,168 | 22,580,086 | 22,584,996 | 22,610,590 | 22,566,730 | 22,536,922 | 22,581,654 | 22,564,910 | 22,583,512 |
| 710 | 22,705,436 | 22,766,484 | 22,678,778 | 22,759,908 | 22,757,572 | 22,690,552 | 22,755,686 | 22,728,356 | 22,712,014 | 22,726,842 |
| 740 | 22,710,482 | 22,697,678 | 22,727,422 | 22,713,178 | 22,695,716 | 22,740,506 | 22,700,376 | 22,705,502 | 22,690,272 | 22,733,846 |
| 770 | 22,672,164 | 22,662,026 | 22,662,612 | 22,649,378 | 22,613,338 | 22,682,678 | 22,677,704 | 22,702,016 | 22,668,980 | 22,708,340 |
| 800 | 22,579,134 | 22,602,006 | 22,596,470 | 22,563,876 | 22,570,878 | 22,606,128 | 22,581,400 | 22,572,412 | 22,604,128 | 22,579,028 |
| 830 | 22,661,114 | 22,669,410 | 22,663,714 | 22,665,346 | 22,686,492 | 22,666,672 | 22,671,736 | 22,649,264 | 22,654,324 | 22,660,886 |
| 860 | 22,669,478 | 22,674,124 | 22,687,452 | 22,666,022 | 22,660,216 | 22,648,846 | 22,687,594 | 22,668,558 | 22,660,682 | 22,670,380 |
| Sample Size | Average Optimal Cost | Variance | Standard Deviation |
|---|---|---|---|
| 50 | 22,156,582 | 8,697,925,055 | 93,263 |
| 80 | 22,630,090 | 3,495,438,256 | 59,122 |
| 110 | 23,120,632 | 1,432,050,713 | 37,842 |
| 140 | 23,046,148 | 3,094,836,083 | 55,631 |
| 170 | 22,830,125 | 2,466,269,611 | 49,662 |
| 200 | 22,952,844 | 2,114,211,870 | 45,981 |
| 230 | 22,924,309 | 1,198,517,444 | 34,620 |
| 260 | 22,992,852 | 2,334,093,827 | 48,312 |
| 290 | 22,599,662 | 918,263,472 | 30,303 |
| 320 | 22,706,940 | 1,429,359,480 | 37,807 |
| 350 | 22,616,519 | 679,135,766 | 26,060 |
| 380 | 22,655,447 | 707,605,554 | 26,601 |
| 410 | 22,747,871 | 652,405,535 | 25,542 |
| 440 | 22,606,725 | 701,139,016 | 26,479 |
| 470 | 22,580,160 | 631,900,450 | 25,138 |
| 500 | 22,675,607 | 901,529,494 | 30,025 |
| 530 | 22,522,852 | 338,798,841 | 18,406 |
| 560 | 22,687,002 | 486,384,318 | 22,054 |
| 590 | 22,651,531 | 464,648,784 | 21,556 |
| 620 | 22,559,382 | 444,399,275 | 21,081 |
| 650 | 22,533,254 | 433,661,822 | 20,825 |
| 680 | 22,577,068 | 474,443,172 | 21,782 |
| 710 | 22,729,714 | 683,940,335 | 26,152 |
| 740 | 22,712,143 | 290,062,713 | 17,031 |
| 770 | 22,677,892 | 615,670,883 | 24,813 |
| 800 | 22,579,432 | 410,792,100 | 20,268 |
| 830 | 22,658,147 | 281,864,861 | 16,789 |
| 860 | 22,657,980 | 326,299,652 | 18,064 |
| # Scenarios | Average | Standard Deviation | T-Statistic | F-Statistic |
|---|---|---|---|---|
| 50 | 22,156,582 | 93,263 | ||
| 80 | 22,630,090 | 59,122 | 23.414 | 0.382 |
| 110 | 23,120,632 | 37,842 | 39.218 | 0.383 |
| 140 | 23,046,148 | 55,631 | −6.222 | 2.559 |
| 170 | 22,830,125 | 49,662 | −15.467 | 0.785 |
| 200 | 22,952,844 | 45,981 | 9.841 | 0.857 |
| 230 | 22,924,309 | 34,620 | −2.766 | 0.574 |
| 260 | 22,992,852 | 48,312 | 6.071 | 1.813 |
| 290 | 22,599,662 | 30,303 | −37.490 | 0.411 |
| 320 | 22,706,940 | 37,807 | 11.886 | 1.604 |
| 350 | 22,616,519 | 26,060 | −10.700 | 0.439 |
| 380 | 22,655,447 | 26,601 | 6.092 | 1.062 |
| 410 | 22,747,871 | 25,542 | 13.691 | 0.916 |
| 440 | 22,606,725 | 26,479 | −20.793 | 1.133 |
| 470 | 22,580,160 | 25,138 | −3.948 | 0.914 |
| 500 | 22,675,607 | 30,025 | 12.863 | 1.406 |
| 530 | 22,522,852 | 18,406 | −23.007 | 0.380 |
| 560 | 22,687,002 | 22,054 | 30.692 | 1.345 |
| 590 | 22,651,531 | 21,556 | −6.124 | 1.005 |
| 620 | 22,559,382 | 21,081 | −16.248 | 0.964 |
| 650 | 22,533,254 | 20,825 | −4.658 | 0.980 |
| 680 | 22,577,068 | 21,782 | 7.690 | 1.036 |
| 710 | 22,729,714 | 26,152 | 24.163 | 1.529 |
| 740 | 22,712,143 | 17,031 | −3.060 | 0.416 |
| 770 | 22,677,892 | 24,813 | −5.901 | 1.996 |
| 800 | 22,579,432 | 20,268 | −17.057 | 0.643 |
| 830 | 22,658,147 | 16,789 | 16.202 | 0.765 |
| 860 | 22,657,980 | 18,064 | −0.255 | 1.111 |
| Realization | Upper Bound | Lower Bound | Gap % |
|---|---|---|---|
| 1 | 22,954,892 | 22,652,406 | 1.318 |
| 2 | 22,924,610 | 22,652,406 | 1.187 |
| 3 | 22,956,590 | 22,652,406 | 1.325 |
| 4 | 22,975,284 | 22,652,406 | 1.405 |
| 5 | 22,969,024 | 22,652,406 | 1.378 |
| 6 | 22,947,760 | 22,652,406 | 1.287 |
| 7 | 22,963,016 | 22,652,406 | 1.353 |
| 8 | 22,932,946 | 22,652,406 | 1.223 |
| 9 | 22,968,390 | 22,652,406 | 1.376 |
| 10 | 22,952,404 | 22,652,406 | 1.307 |
| 11 | 22,928,422 | 22,652,406 | 1.204 |
| 12 | 22,989,526 | 22,652,406 | 1.466 |
| 13 | 22,960,652 | 22,652,406 | 1.342 |
| 14 | 22,973,002 | 22,652,406 | 1.396 |
| 15 | 22,974,328 | 22,652,406 | 1.401 |
| 16 | 22,992,136 | 22,652,406 | 1.478 |
| 17 | 22,914,500 | 22,652,406 | 1.144 |
| 18 | 22,938,440 | 22,652,406 | 1.247 |
| 19 | 22,926,550 | 22,652,406 | 1.196 |
| 20 | 22,929,458 | 22,652,406 | 1.208 |
| 21 | 22,948,440 | 22,652,406 | 1.290 |
| 22 | 22,982,712 | 22,652,406 | 1.437 |
| 23 | 22,951,656 | 22,652,406 | 1.304 |
| 24 | 22,962,418 | 22,652,406 | 1.350 |
| 25 | 22,959,582 | 22,652,406 | 1.338 |
| 26 | 22,947,288 | 22,652,406 | 1.285 |
| 27 | 22,959,474 | 22,652,406 | 1.337 |
| 28 | 22,950,028 | 22,652,406 | 1.297 |
| 29 | 22,957,338 | 22,652,406 | 1.328 |
| 30 | 22,983,926 | 22,652,406 | 1.442 |
| Realization | SABIC 1 | SABIC 2 | SABIC 3 | SIPCHEM | Z |
|---|---|---|---|---|---|
| 1 | 0 | 0 | 705 | 3959 | 0 |
| 2 | 0 | 0 | 630 | 3962 | 0 |
| 3 | 0 | 0 | 311 | 3993 | 0 |
| 4 | 0 | 0 | 212 | 4000 | 0 |
| 5 | 0 | 0 | 390 | 3985 | 0 |
| 6 | 0 | 0 | 70 | 4014 | 0 |
| 7 | 0 | 0 | 186 | 4002 | 0 |
| 8 | 0 | 0 | 586 | 3971 | 0 |
| 9 | 0 | 0 | 935 | 3931 | 0 |
| 10 | 0 | 0 | 463 | 3977 | 0 |
| 11 | 0 | 0 | 727 | 3951 | 0 |
| 12 | 0 | 0 | 769 | 3954 | 0 |
| 13 | 0 | 0 | 528 | 3976 | 0 |
| 14 | 0 | 0 | 599 | 3969 | 0 |
| 15 | 0 | 0 | 980 | 3938 | 0 |
| 16 | 0 | 0 | 395 | 3985 | 0 |
| 17 | 0 | 0 | 478 | 3979 | 0 |
| 18 | 0 | 0 | 977 | 3939 | 0 |
| 19 | 0 | 0 | 474 | 3976 | 0 |
| 20 | 0 | 0 | 728 | 3959 | 0 |
| 21 | 0 | 0 | 935 | 3931 | 0 |
| 22 | 0 | 0 | 575 | 3972 | 0 |
| 23 | 0 | 0 | 977 | 3939 | 0 |
| 24 | 0 | 0 | 490 | 3977 | 0 |
| 25 | 0 | 0 | 599 | 3969 | 0 |
| 26 | 0 | 0 | 515 | 3975 | 0 |
| 27 | 0 | 0 | 910 | 3946 | 0 |
| 28 | 0 | 0 | 635 | 3964 | 0 |
| 29 | 0 | 0 | 493 | 3977 | 0 |
| 30 | 0 | 0 | 601 | 3967 | 0 |
| Period | Interest Rate | Liabilities (in SR) | Cash Accumulated at the Beginning of Period t (in SR) | Cash Flow (in SR) | Total Interest (in SR) | Total Income (in SR) | Cash Accumulated at the End of Period t (in SR) |
|---|---|---|---|---|---|---|---|
| 1 | 0.0148 | 1,009,895 | 0 | 5,006,907 | 0 | 5,006,907 | 3,997,012 |
| 2 | 0.0317 | 2,275,167 | 3,997,012 | 5,006,907 | 4,123,717 | 9,130,624 | 6,855,457 |
| 3 | 0.0112 | 3,064,511 | 6,855,457 | 5,006,907 | 6,932,238 | 1,1939,145 | 8,874,634 |
| 4 | 0.0112 | 4,086,015 | 8,874,634 | 5,006,907 | 8,974,030 | 1,3980,937 | 9,894,922 |
| Number of Scenarios | 20 | 40 | 60 | 80 | 90 | 100 | 500 | 1000 | 2000 | 5000 |
|---|---|---|---|---|---|---|---|---|---|---|
| Computational Cost (in seconds) | 0.02 | 0.024 | 0.067 | 0.207 | 0.157 | 0.036 | 0.1 | 1.207 | 64.94 | 3.94 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Albaqami, H.; Mrad, M.; Gharbi, A.; Subasi, M.M. A Monte Carlo-Based Framework for Two-Stage Stochastic Programming: Application to Bond Portfolio Optimization. Entropy 2025, 27, 1118. https://doi.org/10.3390/e27111118
Albaqami H, Mrad M, Gharbi A, Subasi MM. A Monte Carlo-Based Framework for Two-Stage Stochastic Programming: Application to Bond Portfolio Optimization. Entropy. 2025; 27(11):1118. https://doi.org/10.3390/e27111118
Chicago/Turabian StyleAlbaqami, Hissah, Mehdi Mrad, Anis Gharbi, and Munevver Mine Subasi. 2025. "A Monte Carlo-Based Framework for Two-Stage Stochastic Programming: Application to Bond Portfolio Optimization" Entropy 27, no. 11: 1118. https://doi.org/10.3390/e27111118
APA StyleAlbaqami, H., Mrad, M., Gharbi, A., & Subasi, M. M. (2025). A Monte Carlo-Based Framework for Two-Stage Stochastic Programming: Application to Bond Portfolio Optimization. Entropy, 27(11), 1118. https://doi.org/10.3390/e27111118

