OLPS: A Toolbox for On-Line Portfolio Selection

Authors: Bin Li, Doyen Sahoo, Steven C.H. Hoi

JMLR 2016 | Venue PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental This article presents the first open-source toolbox for On-Line Portfolio Selection (OLPS), which implements a collection of classical and state-of-the-art strategies powered by machine learning algorithms. We hope that OLPS can facilitate the development of new learning methods and enable the performance benchmarking and comparisons of different strategies. OLPS implements a framework for backtesting various algorithms for on-line portfolio selection... After the algorithmic trading simulation, the last step is to post-process the portfolio’s return series for performance analysis by summarizing the following performance metrics: Cumulative Return, Volatility and Sharpe Ratio, Drawdown and Calmar Ratio, T-test statistics.
Researcher Affiliation Academia Bin Li EMAIL Economics and Management School, Wuhan University, Wuhan, P.R. China 430072 Doyen Sahoo EMAIL Steven C. H. Hoi EMAIL School of Information Systems, Singapore Management University, Singapore 178902
Pseudocode No The paper describes the general structure for implementing new strategies, stating that it 'generally requires four files, i.e., an entry file, a run file, a kernel file and an expert file.' It then describes the function of each file. While it describes steps for implementation, it does not present a formal pseudocode block or algorithm section with structured, code-like steps for any specific algorithm.
Open Source Code Yes OLPS is an open-source project released under Apache License (version 2.0), which is available at https://github.com/OLPS/ or http://OLPS.stevenhoi.org/.
Open Datasets Yes Table 1 summarizes several representative public datasets included in the toolbox. More datasets and their details, including the components, can be found at the project website. Some repositories contain public datasets, such as http://www.cs.technion.ac.il/~rani/portfolios and http://www.szit.bme.hu/~oti/portfolio, but no public code was released.
Dataset Splits No The paper mentions datasets like NYSE (O), NYSE (N), TSE, SP500, MSCI, and DJIA, and notes that a typical dataset contains an 'n × m matrix of price relatives, where n denotes the number of trading periods, and m refers to the number of assets.' While it discusses 'trading periods' for simulation, it does not specify explicit training, validation, or test dataset splits (e.g., percentages, sample counts, or predefined partitions) for reproducing experiments.
Hardware Specification No The paper mentions that OLPS runs 'under Windows, Linux, and Mac OS' and states that 'the GUI is only available in Matlab'. It does not provide any specific details about the hardware components (e.g., GPU models, CPU types, or memory specifications) used for running the experiments.
Software Dependencies No The paper states that the toolbox implements a framework 'in both Matlab and Octave'. It also mentions 'Apache License (version 2.0)' for OLPS itself. However, it does not provide specific version numbers for Matlab or Octave, nor does it list any other software dependencies with their versions.
Experiment Setup Yes Suppose we are going to simulate the PAMR algorithm on the NYSE (O) dataset. The commands can be listed as follows: 1: >> opts.quiet_mode=1; opts.display_interval=500; opts.progress=0; 2: >> opts.analyze_mode=1; opts.log_mode=1; opts.mat_mode=1; 3: >> manager( pamr , nyse-o , {0.5, 0}, opts); Line 1 and 2 set some variables that are used to control the display and file storage. Line 3 calls the manager function to execute the pamr strategy on the nyse-o dataset with the parameters equaling {0.5, 0}.