每日复盘|2026-09-26

今天是9月26日,星期六。

由于前面两天写的复盘太少了,有不认真的嫌疑,所以,今天我打算写多一点。

先说说最近思想和认知方面的变化吧。

最近,我对金融、量化有一种莫名其妙的狂热。我尝试总结了一下原因,我认为,是前一段时间的虚无主义造成的。那时,我感觉做什么都没有意义,无论是做开发,还是做科研,迟早会被AI淘汰。所以,我打算最大程度发挥人本身的价值。因此,我开始弹钢琴、玩音乐、写小说,不过,这又让我陷入一个经典问题,我究竟需要什么?

为了回答这个问题,我打算从头开始复盘我的人生。我发现,除了学习、做题之外,我甚至没有培养出来什么像样的兴趣爱好。因此,我只能从最俗的地方开始——那就是挣钱。

我开始搜,有什么方式可以挣很多钱。然后,我看到了一系列回答,说炒股可以挣钱,针对优质指数ETF长期持有,尝到复利的力量。于是,我立马去开了户,放了500块钱去买纳指ETF。两个月过去了,股市动荡比较大,我没有挣到什么钱,轻微割肉10元离场。

然后,我接着想,我有一些计算机背景,然后又有股票交易的想法,将这两者一结合,就成了量化。其实我暑假就在想关于学习量化的事情,但是由于那时实在是很虚无,我想,现在AI量化已经不比普通人差了,所以做这些还有意义吗?

确实没什么意义,不过我又想起了存在主义的观点,意义是我自己赋予的。我必须要证明,我有AI不能替代的地方,可能是时常涌现出来一些莫名其妙的想法,可能是每天写一些复盘的文字,可能是突然被一个念头改变以后的生活。

因此,当我上周五看到有关量化的事情,心里的那一团火又被点燃了。事已至此,我需要用最快的时间学习量化,然后让其使我快乐。我依然不清楚它是不是我想要的,但经过了之前的试错,它未必是我不想要的。

我开始疯狂在互联网上找博客、教程,从量化基础知识,搜到量化比赛,然后再搜到量化公司的招聘要求,希望对标它们的要求来进行自主学习。这一切,都是在没有外界力量干预的情况下,自行发生的。我不清楚之后能走多远,但是我还年轻,有充足的时间进行规划和优化,当我面对一个新领域时,不再抱怨原来的知识没用了,而是迅速摆脱掉曾经来自外界的规训,拥抱不确定性,在探索中发掘未来的可能,而非守着一个过时的技术,说,我是非物质文化遗产传承人。

说了那么多虚的,接下来说一些实的,我做了什么。

首先,我采用一种新方法学习量化。我将它成为AI时代的费曼学习法。核心思想是,AI作为辅助工具,可以针对不同人的不同需求,制定针对性的学习计划和具体教学内容。在制定总计划时,我会优先考虑以实现一个具体项目为最终成果,而不是简单的做题,这是我参考了国外大学的课程作业的结果。

目前,我已经完成了第一周的全部内容,以及第二周的day1部分。我设计的学习方式,目前来看还是有点问题,比如说,在完成练习时,我会不由自主询问AI,但是这样的话,得到答案就变得非常容易,知识也没有完全被我吸收和消化。我还在想这个问题的解法。

第一周完成后,我根据我搭建的量化交易系统,写了一篇报告:

📄 MA20/MA60 双均线策略:平安银行日线回测

研究区间: 2025-09-18 至 2026-09-18
样本: 243 个交易日
标的: 平安银行(000001.SZ)
策略: 收盘价 MA20 上穿 MA60 后持有,否则空仓
基准: 同一区间买入并持有

1. 研究问题

本次实验只回答三个问题:

  1. 在这段日线上,MA20/MA60 的总收益和 Sharpe 是否高于买入持有?
  2. 单边成本按 0.1% 扣除后,结论是否改变?
  3. 把均线换成 MA5/20、MA10/30、MA50/200 后,结果是否稳定?
    本次实验不回答:策略在其他股票、其他年份、或其他市场是否有效;也不给出交易建议。

2. 数据

项目说明文件learning/week1/day1_data.csv来源Yahoo Finance Chart API频率日线字段Date、Open、High、Low、Close、Volume价格信号、收益都使用 Close区间2025-09-18 至 2026-09-18,243 行缺失与重复Date 无重复,Close 无缺失

收益定义为简单收益:

R_t = \frac{Close_t}{Close_{t-1}} - 1

第一行没有前一日价格,收益为缺失,计算净值时按 0 处理,使净值从 1 起步。

数据里没有单独处理分红和复权。若 Close 未复权,除息日的收益会被低估。这个限制保留在第 8 节。

3. 策略规则

设 MA20_t、MA60_t 为截至 t 日收盘的 20 日、60 日简单移动平均。

收盘后信号:

$$signal_t =
\begin{cases}
1, & MA20_t > MA60_t \
0, & \text{其他情况,含均线尚为缺失}
\end{cases}$$

下一交易日的持仓:

$$position_t = signal_{t-1}$$

策略日收益:

$$R^{strategy}_t = position_t \times R_t$$

position 只有 0 和 1。0 表示全部现金,1 表示满仓这一只股票。没有做空,没有杠杆,现金收益按 0。

信号用当天收盘价算出,所以当天不能再用它去乘当天已经发生的收益。shift(1) 把信号推迟到下一交易日,避免前视偏差。

MA60 在前 59 个交易日没有值,这些天信号保持 0,策略为空仓。买入持有从第一天就承担涨跌。这是规则本身造成的差异,比较时要算进去。

4. 回测设定

项目设定初始净值1调仓价格按收盘价计算收益,没有单独模拟开盘成交基准买入持有:全程 position = 1基准成本基准不扣建仓成本策略成本见第 6 节;第 5 节的主结果不含成本年化交易日252波动率日收益标准差 × \sqrt{252},标准差为样本标准差Sharpe日收益均值 / 日收益标准差 × \sqrt{252},无风险利率按 0最大回撤净值相对此前历史高点的最小跌幅

总收益是期末净值减 1,不是日收益的算术和。

交易按持仓变化识别:position 从 0 变为 1 记一笔买入,从 1 变为 0 记一笔卖出。

5. 主结果

主结果使用 MA20/MA60,不含交易成本。

指标MA20/MA60买入持有总收益-1.87%2.54%年化波动率8.09%15.38%Sharpe Ratio-0.200.25最大回撤-9.36%-15.19%

这段样本上:

  • 买入持有的总收益更高,Sharpe 也更高。
  • 策略的波动率和最大回撤更小。
    更小的波动不能单独当成优势。策略有 243 天里只有 70 天持仓,持仓比例 28.8%,其余时间收益为 0。波动下降里,有相当一部分来自空仓,而不是持仓阶段的价格路径更平稳。

策略最大回撤出现在 2026-08-18。当日净值 0.9268,此前高点净值 1.0225,回撤 -9.36%。高点日期是 2026-04-29,与低点不是同一天。

五笔持仓变化如下。日期是持仓生效日,不是信号产生日。

日期动作2025-12-19买入2025-12-25卖出2026-04-15买入2026-06-02卖出2026-08-03买入,持有至样本结束

样本结束时策略仍在持仓,最后一笔没有平仓。

6. 交易成本

成本模型:持仓发生变化的当天,从策略收益中扣除 0.1% × |Δposition|。因为仓位只有 0 和 1,每一笔单边交易扣除净值的 0.1%。手续费、税费和滑点没有拆开,滑点也没有按成交量建模。

MA20/MA60 共 5 笔单边交易,累计名义成本率 0.50%。

指标不含成本含 0.1% 成本总收益-1.87%-2.36%年化波动率8.09%8.09%Sharpe Ratio-0.20-0.27最大回撤-9.36%-9.54%

成本后总收益和 Sharpe 进一步变差,最大回撤略深。交易只有 5 笔,成本没有改变“跑输买入持有”这个方向。若改成更短的均线,交易次数上升到 9 笔或 21 笔,同样的费率会扣掉更多收益。这一点在下一节可以看见。

7. 参数敏感性

下面四组参数在写实验之前就已确定,都使用同一段数据和 0.1% 的单边成本。

参数总收益年化波动率Sharpe最大回撤单边交易次数MA5/20-12.64%10.77%-1.25-17.87%21MA10/30-4.93%10.49%-0.45-14.27%9MA20/60-2.36%8.09%-0.27-9.54%5MA50/200-0.78%2.56%-0.31-2.03%1

读这张表时有三条边界:

  1. 四组都是亏损。没有一组的 Sharpe 高于买入持有的 0.25。
  2. 均线越短,交易越多,成本后亏损越大。这和“交易越频繁,固定比例成本越伤收益”一致,但只有四组、一段样本,不能外推成普遍规律。
  3. MA50/200 的总收益最接近 0,波动和回撤也最小。它需要约 200 个交易日才有完整长期均线,而全样本只有 243 天,实际只交易 1 笔,大部分时间空仓。低波动主要反映空仓时间,不能与另外三组并列成“最佳参数”。
    因此,不在这张表里挑选一组作为最优参数。若事后挑选收益最高的一组,再用同一段数据宣布它有效,就是在样本内做数据窥探。

8. 局限

以下事项会改变数字,本次都没有处理:

  • 只有一只股票、约一年交易日。换一个区间或另一只股票,排序可能相反。
  • 没有样本外区间。参数比较和主结果使用的是同一段数据。
  • 没有做空、融资和现金利息。空仓收益按 0,若计入货基收益,策略净值会略有不同。
  • 成本是固定比例,没有按买卖价差、成交量和冲击成本分开。
  • 收益使用 Close,没有核对复权。分红会使未复权收盘价出现缺口。
  • 策略在均线形成前空仓,买入持有则全程在场。两者的风险暴露时间不同。
  • Sharpe 的无风险利率按 0,且没有做显著性检验。-0.20 和 0.25 的差别在 243 天里很容易来自少数交易日。

9. 结论

在 2025-09-18 至 2026-09-18 的平安银行日线上,MA20/MA60 不含成本的总收益为 -1.87%,Sharpe 为 -0.20;买入持有为 2.54% 和 0.25。策略波动率 8.09%、最大回撤 -9.36%,低于买入持有的 15.38% 和 -15.19%,同时持仓只占交易日的 28.8%。

加入 0.1% 单边成本后,策略总收益变为 -2.36%,Sharpe 变为 -0.27,没有改变跑输基准的方向。预先指定的另外三组均线在同一成本假设下也都跑输基准。MA50/200 因长期均线形成太晚,不能与其他参数直接比较。

本次结果只说明:这一段、这一只股票上,该规则没有提供高于买入持有的收益或 Sharpe。它不说明双均线策略整体无效,也不说明下一段行情会重复这一结果。

附录:指标定义

设策略日收益序列为 r_t,净值 E_t = \prod (1+r_t),起始 E_0 = 1。

指标计算总收益E_T - 1年化波动率\mathrm{std}(r) \times \sqrt{252}Sharpe\mathrm{mean}(r) / \mathrm{std}(r) \times \sqrt{252},无风险利率为 0回撤E_t / \max_{s \le t} E_s - 1最大回撤回撤序列的最小值单边交易\lvert position_t - position_{t-1} \rvert = 1 的天数成本后收益r_t - \lvert \Delta position_t \rvert \times 0.001

针对这个学习方式,后面,我会设置奖励系统和Anki系统,对应完成阶段性任务的奖励,以及间隔重复记忆加深印象。

这是我从Github上开源项目搭的一套看盘系统:

🔖 https://openstock.jzzzhang35.top/

除此之外,我还阅读了《高效能人士的七个习惯》的第三个习惯——要事第一。

其核心思想,是将我们每天做的事分成四个象限,按照紧急/不紧急、重要/不重要进行划分。作者认为,我们总是会忽视掉其中最重要的一点:不紧急但重要的事情,因为这种事情是对自我提升帮助最大的,但因为短期作用不明显而往往容易被忽略掉。

在此基础上,作者提出第四代个人管理理论,其特点是在于承认人比事重要。而芸芸众生中,首要顾及的便是自己。它强调以原则为中心,以良知为导师,针对个人独有的使命,帮助个人平衡发展生活中的不同角色,并且全盘规划日常生活。

因此,我们要以第二象限事务为生活中心,需要以下四个关键步骤:

1、确认角色。列出你在不同生活场景中的不同角色,例如,我是研究院的学生、父母的儿子、书籍的读者、健身房的客户,等等。

2、选择目标。思考下一个周计划中每一任务栏下你最想做的一两件要事,我认为,这两件事需要有实际效应,即要对现实世界产生影响。例如,我想要根据我的学习和阅读的知识总结,写一个专栏博客,或者是做一个Lab上传到Github上。根据上面我们设立的角色,每个角色确立一或两个目标。

3、安排进度。为每一项目标安排具体实施时间,我认为,最重要的一点在于时间的灵活调整,因为总是会有一些紧急的事情突然发生,占据第二象限的时间。所以,针对大块的时间,我打算放在周末统一处理。

4、每日调整。根据突发事件、人际关系的意外发展和崭新机会,对每天的要务安排进行适当调整。

我最近还在想一件事情,就是,这种成功学书籍到底有没有用。这一个月,我看了《富爸爸穷爸爸》、《纳瓦尔宝典》、《高效能人士的七个习惯》这样的书,我认为,看这种书,一方面是印证我之前的想法,另一方面是加深我对一些理论的理解和思考。

从这个角度来说,读完这些书之后,我就可以减少阅读类似的书籍,因为很多书其实用几句话就可以总结出来,比如《富爸爸穷爸爸》。

不过,这种书有一个无法替代的好处,就是它们大部分都是实操性质的,按照书中的方法,我是可以从中获得正反馈的。我现在开始注意自己的睡眠,不再像曾经不珍惜睡眠;我也开始注意饮食和身材,制定详细的健身计划;我开始每日写复盘,而这一步,我迈了整整三个月,到现在,一天也没有停止。

以后要控制好游戏的时间,休息日才能玩游戏,工作日就应该优先处理工作和学习。

后面的路还有很长,我一定会找到我的方向。


💬 今日对话摘要(AI 提炼)

🎯 今日主题:调整健身计划为「练3休1」,修复B站视频转写故障,细化国庆重庆家庭游行程

✅ 完成的事:

  • 健身方案由「练5休1」改为「练3休1」循环,同步更新方案文件与定时任务(9/26起背→胸→腿腹→休息)
  • 排查B站96分钟视频转写失败原因:容器重建导致 faster-whisper 库丢失(模型仍在共享目录),给出宿主机重装命令
  • 完成国庆重庆行程细化版:加入9岁妹妹后的门票、强度、景点适配评估

💡 新想法:

  • 「练3休1」训练密度从83%降到75%,恢复更充分更可持续
  • 金刀峡台阶多,不适合爸妈和9岁孩子,改用有观光电梯的新北温泉公园
  • 照母山从5km徒步改为主环线1-1.5小时
  • 门票几乎全免(照母山、金海湾、中央公园、偏岩古镇),主要支出仅温泉票
  • 考虑给AstrBot插件加 requirements.txt 自动装依赖,避免每次重建容器都要重装库

📌 待办/计划:

  • 宿主机执行 pip install faster-whisper + 确认 ffmpeg,重启容器后重新提交96分钟视频转写
  • 确认三个待定项:Day2下午温泉or金刀峡、妹妹身高是否≥1.2m、爸妈膝盖心脏情况
  • 定后出「带时间点的地铁/打车版本」行程
  • 每日中午12:00 HF Daily Papers 推送、16:00 健身提醒持续运行

🤖 AI 总结

  • 心情指数:7
  • 关键标签:健康、生活、技术、人际
  • 核心收获:
    • 健身改为练3休1,密度更科学
    • 转写故障根因是容器重建丢库
    • 行程按老幼体能分级适配
    • 重庆多数景点免费,成本极低
  • 待解决问题:
    • faster-whisper 尚未重装,转写仍不可用
    • 行程三个关键参数未确认
  • 明日建议:
    • 执行三条命令重装库并重启,重提转写任务
    • 答复行程三问,让我出精确时间版路线
    • 今天是胸日,按16:00提醒完成训练

每日复盘|2026-09-26
https://www.jzzzhang35.top/2026/09/26/daily-2026-09-26/
作者
zjz
发布于
2026年9月26日
许可协议