Applying a One-Dimensional CNN to Factor-Based Stock Selection
Summary
This article introduces convolutional neural networks and explains how one-dimensional convolutions can extract local patterns from financial time series. It describes convolution as applying learned weights across sequence windows, while pooling summarizes local values and reduces sequence length. The article also outlines backpropagation, feature extraction, and the role of pooling in reducing model size.
Its stock-selection example uses seven factors for A-share stocks, forms labels from second-day returns divided into 20 classes, preprocesses missing and extreme values, standardizes features, and builds rolling windows of five periods. The model uses two Conv1D layers with 20 filters each, pooling, and a linear output layer. It trains on 2010–2014 data and evaluates selections during 2015–2017, buying the 20 highest-ranked stocks each day with specified holding and capital-allocation rules. The article claims the backtest outperformed a benchmark, but provides no numerical results or detailed validation analysis. The reported performance therefore cannot establish robustness, and the model design and parameters remain open to experimentation.
Key ideas
- A one-dimensional CNN can process time series by convolving over temporal windows while treating factors as features.
- Pooling summarizes local outputs and reduces sequence length and model dimensionality.
- The example builds rolling five-period inputs from seven stock factors and labels based on next-day returns.
- The demonstration trains on earlier years and ranks stocks for a later backtest period.
- The article reports favorable benchmark-relative results but omits detailed performance statistics and robustness checks.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.