Next Article in Journal
Enforcing Security Mechanisms in the IP-Based Internet of Things: An Algorithmic Overview
Previous Article in Journal
Stable Multicommodity Flows
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Open-Source Implementation of the Critical-Line Algorithm for Portfolio Optimization

by
David H. Bailey
1,2 and
Marcos López de Prado
1,3,*
1
Lawrence Berkeley National Laboratory, 1 Cyclotron Road, Berkeley, CA 94720, USA
2
Department of Computer Science, University of California, Davis, CA 95616, USA
3
Hess Energy Trading Company, 1185 Avenue of the Americas, New York, NY 10036, USA
*
Author to whom correspondence should be addressed.
Algorithms 2013, 6(1), 169-196; https://doi.org/10.3390/a6010169
Submission received: 29 January 2013 / Revised: 8 March 2013 / Accepted: 18 March 2013 / Published: 22 March 2013
(This article belongs to the Special Issue Algorithms and Financial Optimization)

Abstract

Portfolio optimization is one of the problems most frequently encountered by financial practitioners. The main goal of this paper is to fill a gap in the literature by providing a well-documented, step-by-step open-source implementation of Critical Line Algorithm (CLA) in scientific language. The code is implemented as a Python class object, which allows it to be imported like any other Python module, and integrated seamlessly with pre-existing code. We discuss the logic behind CLA following the algorithm’s decision flow. In addition, we developed several utilities that support finding answers to recurrent practical problems. We believe this publication will offer a better alternative to financial practitioners, many of whom are currently relying on generic-purpose optimizers which often deliver suboptimal solutions. The source code discussed in this paper can be downloaded at the authors’ websites (see Appendix).
Keywords: portfolio selection; quadratic programming; portfolio optimization; constrained efficient frontier; turning point; Kuhn-Tucker conditions; risk aversion portfolio selection; quadratic programming; portfolio optimization; constrained efficient frontier; turning point; Kuhn-Tucker conditions; risk aversion

Share and Cite

MDPI and ACS Style

Bailey, D.H.; López de Prado, M. An Open-Source Implementation of the Critical-Line Algorithm for Portfolio Optimization. Algorithms 2013, 6, 169-196. https://doi.org/10.3390/a6010169

AMA Style

Bailey DH, López de Prado M. An Open-Source Implementation of the Critical-Line Algorithm for Portfolio Optimization. Algorithms. 2013; 6(1):169-196. https://doi.org/10.3390/a6010169

Chicago/Turabian Style

Bailey, David H., and Marcos López de Prado. 2013. "An Open-Source Implementation of the Critical-Line Algorithm for Portfolio Optimization" Algorithms 6, no. 1: 169-196. https://doi.org/10.3390/a6010169

APA Style

Bailey, D. H., & López de Prado, M. (2013). An Open-Source Implementation of the Critical-Line Algorithm for Portfolio Optimization. Algorithms, 6(1), 169-196. https://doi.org/10.3390/a6010169

Article Metrics

Back to TopTop