Jikipedia
Jikipedia量化聚宽量化课堂(低频量化策略 43 篇)把机器学习用到股票预测(落地流程与坑)
概念笔记

把机器学习用到股票预测(落地流程与坑)

把分类器用到「预测次日涨跌」的标准流程:技术指标当特征 → 连续特征离散化成 ±1 → 以「次日收盘是否更高」为标签训练 SVM/朴素贝叶斯/随机森林 → 每个交易日把今天数据并入训练集、重训新模型。量化课堂的 ML 应用篇(43 篇)强调两件事:股市噪声大,特征必须离散化防过拟合;这套流程只演示「怎么用算法」,不担保预测准确与收益。

量化机器学习特征离散化过拟合滚动重训涨跌预测

一句话

「先用 talib 算 13 个指标、再全砍成 ±1、每天重训一个分类器去猜明天涨跌。」流程本身能跑;但能不能赚钱是另一回事——ML 批次里所有篇都只演示用法,低频量化的可交易性要靠回测方法论来审。

当前理解

  • 特征(43 篇)get_price 取前 35 个交易日 OHLCV(frequency='daily',fields=close/high/low/volume),talib 算 13 个技术指标:SMA/WMA/MOM/STCK/STCD/MACD/RSI/WILLR/CCI/MFI/OBV/ROC/CMO。
  • 标签:下一交易日收盘价 > 当日收盘价 → True;否则 False。
  • 特征离散化(防过拟合核心):talib 输出连续值;股市噪声多 → 连续值直接进模型易过拟合(回测好、实盘差)。把每个特征离散成 ±1:如 SMA<当日收盘 → 1,否则 −1(按各指标含义选比较基准)。把「幅度噪声」砍成「相对高低方向」,留更稳的定性关系。
  • 滚动重训:每个交易日把今天样本加进训练集、重训新模型——市场分布非平稳,跟上新分布才不过时;代价是每天训练。
  • 应用svm.SVC() → fit(x_train,y_train) → predict(x_test);朴素贝叶斯、随机森林同套路。原理篇:朴素贝叶斯 = 37 篇(postId 1727,已收录);SVM(1510)、随机森林(1571)未收录本库。
  • 同类把戏的谱系:37/42 篇用 SMA/WMA/MOM 三指标演示朴素贝叶斯/神经网络——43 篇是这套演示的「13 特征 + 多算法 + 每天重训」工程化升级,机器学习八篇的收官。
  • 诚实的基调(贯穿 36–43):41 篇说 toy 数据的 97% 在真实涨跌达不到;42 篇说「人脑也未必准」;43 篇只到「预测对错」为止。ML 在低频量号的作用是「给策略配学习器」,不是印钞机。

来源

常见混淆

  • 「防过拟合的离散化」≠「随便丢信息」:砍的是噪声幅度,留的是「相对价格高低」的方向——不是任意二值化,比较基准要按各指标含义定。
  • 「每天重训」≠「策略自动赚钱」:原文没有回测/胜率/收益数字;预测对错到真金白银之间还差股票池、仓位、调仓、成本、容量整套东西。
  • 技术指标当特征 ≠ 截面因子选股:43 篇是「单只股票、时序、次日方向分类」;因子选股(排名 / 打分 / 阈值筛选) 是「全市场横截面排序」。两者都叫「特征/因子」,机制完全不同,别混。
  • 单日测试样本(37/42 篇的 2016-6-3)只是跑通代码,不是验证;正确率要在长样本、样本外测。
  • 算法能算 ≠ 低频有效:本库 ML 批次全是「算法原理 + 用法演示」;能不能稳定赚钱,要交给回测方法论(W9 QuantStart)去审——这正是本库把「策略库」和「验证方法论」分开收的原因。

开放问题

  • 13 个指标离散化的比较基准逐指标怎么设(43 篇只示范了 SMA)[需要验证]。
  • 特征高度相关(技术指标同源)时的去冗余没处理;信息增益(36 篇)也没有多特征联合框架。
  • 滚动重训的频率/窗口长度对性能的影响、与「简单规则基线」的对照,都没讨论。
  • 预测正确率即便 >50%,扣完交易成本是否仍有超额——低频语境里这是开放问题;43 篇的代码也只到预测层。

更新 2026-09-06

检索知识库

按标题、类型或正文检索