跳转至


课程  因子投资  机器学习  Python  Poetry  ppw  tools  programming  Numpy  Pandas  pandas  算法  hdbscan  聚类  选股  Algo  minimum  numpy  回测  数据标准化  algo  FFT  模式识别  配对交易  GBDT  LightGBM  XGBoost  statistics  CDF  KS-Test  monte-carlo  VaR  过拟合  algorithms  machine learning  strategy  python  sklearn  pdf  概率  数学  面试题  量化交易  策略分类  风险管理  Info  interview  career  quant  self-learning  probability  portfolio  risk-management  强化学习  监督学习  AI量化  复权  数据  tushare  akshare  xgboost  PCA  wavelet  时序事件归因  SHAP  alog  paper  multimodal  speech  volatility  深度学习  归一化  BN  LN  WN  machine-learning  quant-trading  dropout  kaggle  boosting  决策树  泰勒展开  finance  model  github  analysis  deep-learning  tcn  time-series  causal-convolution  交易实战  避坑指南  Figures  Behavioral Economics  graduate  arma  garch  人物  职场  Quantopian  figure  Banz  金融行业  买方  卖方  story  量化传奇  rsi  zigzag  穹顶压力  因子  ESG  因子策略  投资  策略  pe  ORB  Xgboost  Alligator  Indicator  factor  alpha101  alpha  技术指标  wave  algorithm  pearson  spearman  套利  LOF  白银  因子分析  Alphalens  涨停板  herd-behaviour  momentum  因子评估  review  因子,事件研究,内幕交易,Form4  董监高增减持,tushare  SMC  聪明钱  trade  history  indicators  zscore  波动率  lightgbm  顶背离  另类数据  notebook  大模型  Tushare  中证1000  周频  预测  ATR  RSI  KNN  相似周  freshman  resources  LLT  backtest  backtrader  研报  papers  UBL  金融阅读  免费资源  华尔街日报  WSJ  量化学习  quantlib  jupyter-notebook  scikit-learn  pypinyin  qmt  xtquant  blog  static-site  duckdb  工具  colors  free resources  barra  world quant  Alpha  openclaw  Agent  vibe coding  AI  coding  openbb  llm  prompt  CANSLIM  Augment  arsenal  copilot  vscode  code  量化数据存储  hdf5  h5py  OpenClaw  Hermes Agent  cursor  augment  trae  Jupyter  jupysql  pyarrow  parquet  数据源  quantstats  几何收益  RDAgent  qlib  agent  实盘  clickhouse  polars  滑动窗口  sqlite  sqlite-utils  fastlite  大数据  PyArrow  UV  Pydantic  Engineering  redis  remote-agent  AI-tools  Moonshot  回测,研报,tushare  dividend  others  DeepSeek  network  quantinsti  finbert  量子计算  金融交易  IBM  weekly  进化论  logic-factor  Agent Skills  Skills Marketplace  VS Code  XtQuant  BaoStock  A股  量化  neutralization  basics 

Vibe Coding 能做大项目吗?量化人替你试过了

Vibe Coding 能做大项目吗?通过几个数万行代码的项目,发现了 vibe coding 的难以克服的问题。编程领域的 Lean 框架,正呼之欲出。


Vibe Coding 确实圆了很多人做软件的梦,包括我们这种古法编程好多年的人,之前也有好多想法,因为人力不足、或者知识储备不足,不敢轻易尝试,现在也不免跃跃欲试了。

我们团队之前开发有zillionaire 2.0 -- 它的定位是私募团队,使用容器 + 微服务架构,行情数据存储使用了 influxdb + redis 缓存;使用东财的交易接口。但一直缺少一个适用于个人的量化交易框架(本地数据存储、更便宜的交易接口、主要以单机方式运行)。

今年是AI coding 突破性的一年,所以,从4月底起,开始尝试用AI coding的方式,开发一个个人版本的量化交易框架 -- Millionaire。

一入 Vibe 深似海,从此周末是路人。

/01 现阶段 AI 可以做什么?

更好的算法实现 任何量化交易框架,都少不了对策略的评估。一些框架会使用固定期限的远期收益来作为评估的输入指标,比如,用买入( T0 )时间后的1日,3日,5日的收益来评价策略的有效性。这样要采用固定交易周期,有时候会错过最佳交易机会。即使我们认为择时不可信,我们也会遇到这样的情况,使得固定交易周期方法显得笨拙,即叠加风控策略时,卖出时间不可能是固定的。

比如,我们在回测时,使用 T+3 来计算策略的收益,但在实盘中,可能第二天我们就止损了。如何把风控策略也与基准策略叠加在一起进行回测? 经过与 AI 一段时间的探讨,我明白了这个风控策略实际上是一种Marcos López de Prado 提出的三重障碍法(Triple-Barrier Method);由于这是 AI 告诉我的,所以,它已经可以很好地实现了!

另一个例子是 Form 4的研究中,placebo(对照组、安慰剂组)的使用。Form 4是 SEC 用来防止公司董监高利用内幕交易牟利,从而要求他们必须在完成交易日之后的两个工作日以内,必须填写并提交的一种表格。该表格是电子表格,一旦提交,即经 EDGARD 系统公开发布,对所有投资者都公开可见。

作为配套制度,法规还要求董监高在买入之后的6个月内,卖出产生的利润必须上缴归公司所有。两项制度结合起来,就基本堵死了内幕交易的套利空间。

在做完 Form 4的因子回测后,我突然想起该策略具有不重现性 -- 如何证明事件发生之后,资产的波动收益确实是来自于该事件,而不是其它因素呢?这里似乎没有市场因子可以扣除。经过一些探索,最后找到了 placebo 统计方法 -- 显然AI 已经很熟悉这个方法了,实现起来毫无困难。

所以,AI 在现阶段,已经可以帮我们写出来之前我们完全不知道的高效算法 -- 特别是当你把『术语』找到之后。

这些算法有明确、坚实的定义,武无第二,这部分 AI 非常擅长。

/02 AI 还擅长做什么

最初 millionaire 通过 vibe coding进展得很顺利。渐渐地我就发现问题变多了。一些明明记忆中已经提出、甚至已经实现了的功能,测试起来才发现并没有实现;有的是实现了80%,或者20%。

慢慢地我也失去了记忆。我不知道系统该有哪些功能,系统已经有了哪些功能。系统现在呈现出来的功能,哪些其实是我已经否决了,但死代码还在。而这些死代码,还会时时引诱 AI继续往这个错误的方向上走。

让你看到希望,再到失望,直到绝望。这也是现在 AI 擅长的点。在 oh-my-opencode 框架中,有一个主控的 Agent,名字叫西西弗斯。一个人每天滚石上山,每到快要接近时,石头又滚回山底,第二天还得重新往上推。他们给主控 Agent 起这个名字,还是很恰如其份的。

这就是 Vibe Coding 的现状。

即使你使用了 speckit, ralph, 或者 super power。做到最后,项目只要超过几万行代码,在完全没有人工介入的情况下,你得到的就是另一个做到90%的Millionaire: 很多功能已经实现了,AI甚至还多送了一些,比如你要一只手,它多给你送了一个手指;另一些地方,看上去是一只完美的手,但它不能握紧拳头。

但如果你想改动它,你将得到一只脚。

/03 最后的证明

这两天数学家Astra和Fable 先后取得了重大突破。Astra 将孪生素数猜想推进到了186,该记录已尘封十余年。如果Astra 早诞生12年,张益唐将不得不终生洗盘子;Fable 则形式化验证了费马大定理。

这些突破最核心的技术底座,是 Lean的形式化验证。它是 AI 能自主探索数字、并使得结论可以得到验证的关键。

现在,在 AI Coding 方面,我们也差这样一个框架,使得一个用户 Story,在用户协助下,可以分解为 spec,再定出验收标准;接下来就是 AI 去实现它,并通过测试来验证所有的 spec 已被满足。

编程是一个工程问题,它不可能完全、也没必要满足 Lean 这样的形式化验证(尽管个别算法可以)。机器能不能生出来鸭子并不重要,只要的产生,叫起来像鸭子,走路像鸭子,那它就是鸭子。

这就是我正在做的 Agent on Tracks 项目的目标。它目前正在以自举的方式进行迭代开发,差不多要走完 CI 和发布这最后几步。从此以后,你将应该能够写下一个有数十万行代码的软件产品,只需要提供一个个用户故事。

Millionaire将会是它发布的第二个产品。