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

被引:10
作者
Bailey, David H. [1 ,2 ]
de Prado, Marcos Lopez [1 ,3 ]
机构
[1] Lawrence Berkeley Natl Lab, 1 Cyclotron Rd, Berkeley, CA 94720 USA
[2] Univ Calif Davis, Dept Comp Sci, Davis, CA 95616 USA
[3] Hess Energy Trading Co, New York, NY 10036 USA
关键词
portfolio selection; quadratic programming; portfolio optimization; constrained efficient frontier; turning point; Kuhn-Tucker conditions; risk aversion;
D O I
10.3390/a6010169
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
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.
引用
收藏
页码:169 / 196
页数:28
相关论文
共 18 条
[1]  
Avriel M., 1966, FIBONACCI QUART, V4, P265
[2]  
Bailey DH, 2012, J RISK, V15, P3
[3]  
Beardsley B., 2012, CAPTURING GROWTH ADV
[4]  
Black F., 1992, FINANC ANAL J, V48, P28, DOI DOI 10.2469/FAJ.V48.N5.28
[5]  
Dalton S., 2007, FINANCIAL APPL USING, P13
[6]  
David H., BAILEYS RES WEBSITE
[7]  
Hirschberger M., 2004, WORKING PAPER
[8]   SEQUENTIAL MINIMAX SEARCH FOR A MAXIMUM [J].
KIEFER, J .
PROCEEDINGS OF THE AMERICAN MATHEMATICAL SOCIETY, 1953, 4 (03) :502-506
[9]  
Kopman L., 2009, 200922 MSCI
[10]  
Kwak J., 2013, IMPORTANCE EXCEL BAS