Skip to content

Commit

Permalink
build based on 27e6d8c
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Nov 28, 2023
1 parent 805ac99 commit 5a4bcf0
Show file tree
Hide file tree
Showing 7 changed files with 110 additions and 110 deletions.
4 changes: 2 additions & 2 deletions dev/api/index.html

Large diffs are not rendered by default.

70 changes: 35 additions & 35 deletions dev/examples/distributionally_robust_optimization/index.html

Large diffs are not rendered by default.

74 changes: 37 additions & 37 deletions dev/examples/robust_optimization/index.html

Large diffs are not rendered by default.

66 changes: 33 additions & 33 deletions dev/examples/stochastic_optimization/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dev/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dev/robust_po/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@
& w ' \Sigma w \leq V_0 * W_0 \\
& \lambda \geq 0 , \; \pi^- \geq 0 , \; \pi^+ \geq 0 , \; \theta \geq 0 \\
& w \in \mathcal{X} \\
\end{aligned}\]</p><h4 id="Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)"><a class="docs-heading-anchor" href="#Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)">Uncertainty Set Vizualization and Special Case (Soyster&#39;s Uncertainty Set)</a><a id="Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)-1"></a><a class="docs-heading-anchor-permalink" href="#Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)" title="Permalink"></a></h4><p>In order to visualize Bertsimas&#39;s uncertainty set, it&#39;s useful to plot the case with only two assets. For instance, when the budget parameter is equal to one (<span>$\Gamma = 1$</span>) the resulting feasible region of the uncertaity set only allows one asset to be in its extreme value:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/set_bertsimas.png?raw=true" alt/></p><p>On the other hand, when the budget parameter is equal to the number of assets (<span>$\Gamma = 2$</span>), the uncertainty set becomes similar to the one proposed by Soyster in [1], i.e. box uncertainty:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/set_soyster.png?raw=true" alt/></p><h4 id="Building-Intuition-with-Efficient-Frontiers"><a class="docs-heading-anchor" href="#Building-Intuition-with-Efficient-Frontiers">Building Intuition with Efficient Frontiers</a><a id="Building-Intuition-with-Efficient-Frontiers-1"></a><a class="docs-heading-anchor-permalink" href="#Building-Intuition-with-Efficient-Frontiers" title="Permalink"></a></h4><p>Understanding the impacts on the final optimal portfolio given the uncertainty set is not trivial, but some easy analysis can help. One useful analysis is to plot the Efficient Frontier (EF) (a.k.a Pareto Frontier) for our optimization problems, which shows what are the optimal porfolios given our objective and constraints.</p><p>If we plot the EF for the classic mean-variance problem (Markoviz) as well as the closest robust portfolios (e.g. Bertsimas and Soyster), we can see that by expanding our uncertainty set (and consequently restricting further our problem), we get sub-optimal solutions for the non-robust problem:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/pareto_markowitz.png?raw=true" alt/></p><p>Its also useful to see the EF for the respective robust problems since they have their own efficient frontier:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/pareto_robust.png?raw=true" alt/></p><p>Notwithstanding the importance of looking at EF for specific objectives, its more useful to see the possible returns the portfolio from a certain strategy might have if we allow the asset returns to vary inside the uncertainty sets. For instance, lets allow returns to vary inside Bertsimas&#39; uncertainty set and see the consequences for Markowitz optimal portfolios and Bertsimas&#39; optimal portfolios:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/uncertain_pareto_bertsimas.png?raw=true" alt/></p><p>Now we can cleary see the trade-off the robust portfolio is providing: a lower avarage return for a smaller range of possible portfolio return that is contained in the range of the non-robust counterpart.</p><p>Moreover, if we allow returns to vary inside Soyster&#39;s uncertainty set, we get the following frontiers:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/uncertain_pareto_soyster.png?raw=true" alt/></p><p>Once again we get a lower avarage return for a smaller range of possible portfolio return that is contained in the range of the less-robust counterpart.</p><p>PS.: Code in <code>examples/test_effi_robust.jl</code>.</p><h3 id="Comming-Soon"><a class="docs-heading-anchor" href="#Comming-Soon">Comming Soon</a><a id="Comming-Soon-1"></a><a class="docs-heading-anchor-permalink" href="#Comming-Soon" title="Permalink"></a></h3><p>TODO: Ben-Tal&#39;s uncertainty set (<a href="../api/#PortfolioOpt.EllipticalSet"><code>EllipticalSet</code></a>)</p><h2 id="References"><a class="docs-heading-anchor" href="#References">References</a><a id="References-1"></a><a class="docs-heading-anchor-permalink" href="#References" title="Permalink"></a></h2><p>[1] Soyster, A.L. Convex programming with set-inclusive constraints and applications to inexact linear programming. Oper. Res. 1973, 21, 1154–1157.</p><p>[2] Ben-Tal, A. e Nemirovski, A. (1999). Robust solutions of uncertain linear programs. Operations research letters, 25(1):1–13. </p><p>[3] Ben-Tal, A. e Nemirovski, A. (2000). Robust solutions of linear programming problems contaminated with uncertain data. Mathematical programming, 88(3):411–424. </p><p>[4] Bertsimas, D. e Brown, D. B. (2009). Constructing uncertainty sets for robust linear optimization. Operations research, 57(6):1483–1495. </p><p>[5] Bertsimas, D. e Pachamanova, D. (2008). Robust multiperiod portfolio management in the presence of transaction costs. Computers &amp; Operations Research, 35(1):3–17. </p><p>[6] Bertsimas, D. e Sim, M. (2004). The price of robustness. Operations research, 52(1):35–53. </p><p>[7] Bertsimas, D. e Sim, M. (2006). Tractable approximations to robust conic optimization problems. Mathematical programming, 107(1-2):5–36. </p><p>[8] Fabozzi, F. J., Huang, D., e Zhou, G. (2010). Robust portfolios: contributions from operations research and finance. Annals of Operations Research, 176(1):191–220. </p><p>[9] Fabozzi, F. J., Kolm, P. N., Pachamanova, D. A., e Focardi, S. M. (2007). Robust portfolio optimization. Journal of Portfolio Management, 33(3):40. </p><p>[10] Kim, J. H., Kim, W. C., e Fabozzi, F. J. (2014). Recent developments in robust portfolios with a worst-case approach. Journal of Optimization Theory and Applications, 161(1):103–121.</p><p>[11] Natarajan, K., Pachamanova, D., e Sim, M. (2009). Constructing risk measures from uncertainty sets. Operations research, 57(5):1129–1141.</p><p>[12] Fernandes, B., Street, A., ValladA˜ £o, D., e Fernandes, C. (2016). An adaptive robust portfolio optimization model with loss constraints based on data-driven polyhedral uncertainty sets. European Journal of Operational Research, 255(3):961 – 970. ISSN 0377-2217. <a href="www.sciencedirect.com/science/article/pii/S0377221716303757">URL</a>.</p><p>[13] Futures Contracts Portfolio Selection via Robust Data Driven Optimization publication date Aug 9, 2018 publication descriptionL SBPO, 2018, Rio de Janeiro. Anais do L SBPO, 2018. v. 1. <a href="https://proceedings.science/sbpo/papers/selecao-de-carteira-de-contratos-futuros-via-otimizacao-robusta-direcionado-por-dados">URL</a>.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../examples/distributionally_robust_optimization/">Distributionally Robust Portfolio Optimization »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.25 on <span class="colophon-date" title="Monday 27 November 2023 02:35">Monday 27 November 2023</span>. Using Julia version 1.9.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
\end{aligned}\]</p><h4 id="Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)"><a class="docs-heading-anchor" href="#Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)">Uncertainty Set Vizualization and Special Case (Soyster&#39;s Uncertainty Set)</a><a id="Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)-1"></a><a class="docs-heading-anchor-permalink" href="#Uncertainty-Set-Vizualization-and-Special-Case-(Soyster&#39;s-Uncertainty-Set)" title="Permalink"></a></h4><p>In order to visualize Bertsimas&#39;s uncertainty set, it&#39;s useful to plot the case with only two assets. For instance, when the budget parameter is equal to one (<span>$\Gamma = 1$</span>) the resulting feasible region of the uncertaity set only allows one asset to be in its extreme value:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/set_bertsimas.png?raw=true" alt/></p><p>On the other hand, when the budget parameter is equal to the number of assets (<span>$\Gamma = 2$</span>), the uncertainty set becomes similar to the one proposed by Soyster in [1], i.e. box uncertainty:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/set_soyster.png?raw=true" alt/></p><h4 id="Building-Intuition-with-Efficient-Frontiers"><a class="docs-heading-anchor" href="#Building-Intuition-with-Efficient-Frontiers">Building Intuition with Efficient Frontiers</a><a id="Building-Intuition-with-Efficient-Frontiers-1"></a><a class="docs-heading-anchor-permalink" href="#Building-Intuition-with-Efficient-Frontiers" title="Permalink"></a></h4><p>Understanding the impacts on the final optimal portfolio given the uncertainty set is not trivial, but some easy analysis can help. One useful analysis is to plot the Efficient Frontier (EF) (a.k.a Pareto Frontier) for our optimization problems, which shows what are the optimal porfolios given our objective and constraints.</p><p>If we plot the EF for the classic mean-variance problem (Markoviz) as well as the closest robust portfolios (e.g. Bertsimas and Soyster), we can see that by expanding our uncertainty set (and consequently restricting further our problem), we get sub-optimal solutions for the non-robust problem:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/pareto_markowitz.png?raw=true" alt/></p><p>Its also useful to see the EF for the respective robust problems since they have their own efficient frontier:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/pareto_robust.png?raw=true" alt/></p><p>Notwithstanding the importance of looking at EF for specific objectives, its more useful to see the possible returns the portfolio from a certain strategy might have if we allow the asset returns to vary inside the uncertainty sets. For instance, lets allow returns to vary inside Bertsimas&#39; uncertainty set and see the consequences for Markowitz optimal portfolios and Bertsimas&#39; optimal portfolios:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/uncertain_pareto_bertsimas.png?raw=true" alt/></p><p>Now we can cleary see the trade-off the robust portfolio is providing: a lower avarage return for a smaller range of possible portfolio return that is contained in the range of the non-robust counterpart.</p><p>Moreover, if we allow returns to vary inside Soyster&#39;s uncertainty set, we get the following frontiers:</p><p><img src="https://github.com/andrewrosemberg/PortfolioOpt/blob/master/docs/src/assets/uncertain_pareto_soyster.png?raw=true" alt/></p><p>Once again we get a lower avarage return for a smaller range of possible portfolio return that is contained in the range of the less-robust counterpart.</p><p>PS.: Code in <code>examples/test_effi_robust.jl</code>.</p><h3 id="Comming-Soon"><a class="docs-heading-anchor" href="#Comming-Soon">Comming Soon</a><a id="Comming-Soon-1"></a><a class="docs-heading-anchor-permalink" href="#Comming-Soon" title="Permalink"></a></h3><p>TODO: Ben-Tal&#39;s uncertainty set (<a href="../api/#PortfolioOpt.EllipticalSet"><code>EllipticalSet</code></a>)</p><h2 id="References"><a class="docs-heading-anchor" href="#References">References</a><a id="References-1"></a><a class="docs-heading-anchor-permalink" href="#References" title="Permalink"></a></h2><p>[1] Soyster, A.L. Convex programming with set-inclusive constraints and applications to inexact linear programming. Oper. Res. 1973, 21, 1154–1157.</p><p>[2] Ben-Tal, A. e Nemirovski, A. (1999). Robust solutions of uncertain linear programs. Operations research letters, 25(1):1–13. </p><p>[3] Ben-Tal, A. e Nemirovski, A. (2000). Robust solutions of linear programming problems contaminated with uncertain data. Mathematical programming, 88(3):411–424. </p><p>[4] Bertsimas, D. e Brown, D. B. (2009). Constructing uncertainty sets for robust linear optimization. Operations research, 57(6):1483–1495. </p><p>[5] Bertsimas, D. e Pachamanova, D. (2008). Robust multiperiod portfolio management in the presence of transaction costs. Computers &amp; Operations Research, 35(1):3–17. </p><p>[6] Bertsimas, D. e Sim, M. (2004). The price of robustness. Operations research, 52(1):35–53. </p><p>[7] Bertsimas, D. e Sim, M. (2006). Tractable approximations to robust conic optimization problems. Mathematical programming, 107(1-2):5–36. </p><p>[8] Fabozzi, F. J., Huang, D., e Zhou, G. (2010). Robust portfolios: contributions from operations research and finance. Annals of Operations Research, 176(1):191–220. </p><p>[9] Fabozzi, F. J., Kolm, P. N., Pachamanova, D. A., e Focardi, S. M. (2007). Robust portfolio optimization. Journal of Portfolio Management, 33(3):40. </p><p>[10] Kim, J. H., Kim, W. C., e Fabozzi, F. J. (2014). Recent developments in robust portfolios with a worst-case approach. Journal of Optimization Theory and Applications, 161(1):103–121.</p><p>[11] Natarajan, K., Pachamanova, D., e Sim, M. (2009). Constructing risk measures from uncertainty sets. Operations research, 57(5):1129–1141.</p><p>[12] Fernandes, B., Street, A., ValladA˜ £o, D., e Fernandes, C. (2016). An adaptive robust portfolio optimization model with loss constraints based on data-driven polyhedral uncertainty sets. European Journal of Operational Research, 255(3):961 – 970. ISSN 0377-2217. <a href="www.sciencedirect.com/science/article/pii/S0377221716303757">URL</a>.</p><p>[13] Futures Contracts Portfolio Selection via Robust Data Driven Optimization publication date Aug 9, 2018 publication descriptionL SBPO, 2018, Rio de Janeiro. Anais do L SBPO, 2018. v. 1. <a href="https://proceedings.science/sbpo/papers/selecao-de-carteira-de-contratos-futuros-via-otimizacao-robusta-direcionado-por-dados">URL</a>.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../examples/distributionally_robust_optimization/">Distributionally Robust Portfolio Optimization »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.25 on <span class="colophon-date" title="Tuesday 28 November 2023 02:36">Tuesday 28 November 2023</span>. Using Julia version 1.9.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit 5a4bcf0

Please sign in to comment.