1. 课程导入与目标设定

在投资研究的日常工作中,板块轮动分析几乎是绕不开的一环。市场风格在成长与价值之间切换,资金在科技、消费、周期、红利之间迁移,研究员需要持续回答三个问题:过去一段时间哪些板块在走强、哪些在走弱;这种强弱变化背后有没有可解释的资金与景气线索;下一阶段应该重点关注哪些方向。周报和月报正是承载这些判断的常规载体。但真正做过的人都知道,一份看起来只有几页的轮动报告,背后往往是大量重复劳动:导出行情数据、计算区间涨跌幅、排序、画相对强弱曲线、更新估值分位、整理资金流向、再逐段改写文字结论。数据一多、频率一高,人工流程就容易出现口径不一致、更新滞后、结论与图表对不上的问题。

本课程要解决的,正是把这条“数据到报告”的链路工程化、自动化。需要先明确一点:自动化报告不是让机器替代研究员做投资决策,而是把可重复、可规则化、可校验的部分交给程序,把研究员的精力释放到判断和解释上。因此,本课程的目标不是做一个“会写字的机器人”,而是搭建一条稳定、可追溯、可复用的板块轮动报告生产线。

自动化报告在投资研究中的定位

可以把投资研究中的报告工作分成三层。最底层是数据层:行情、估值、成交额、资金流、行业景气指标等原始输入。中间层是计算与规则层:区间收益、相对强弱、排名变化、动量与拥挤度指标、触发条件判断。最上层是表达层:图表、表格、文字结论、风险提示。人工模式下,三层都由人串起来,效率低且易错;自动化模式下,数据层和计算层由脚本承担,表达层由模板与规则生成初稿,研究员负责审核、补充定性判断和最终定稿。

这个定位决定了后续所有技术选择的取向。我们追求的不是“文字多么像人写的”,而是口径统一、更新及时、结论可复现。同一套规则,本周跑和下周跑,只要输入数据相同,输出就应当一致;任何一个数字都能追溯到它的计算来源;任何一条“某板块走强”的结论,都能在图表和指标表里找到对应证据。

板块轮动周报/月报自动生成:三层架构与交付链路 ① 数据层 · 原始输入 板块日行情 收盘价 / 成交额 估值与分位 PE / PB / 历史分位 资金流向 主力净流入 景气/事件 行业指标 / 公告 交易日历 区间对齐 ② 计算与规则层 · 指标与判断 区间收益与排名 近5/20/60日涨跌幅 相对强弱 RS 板块 / 基准指数 动量与排名变化 本期 vs 上期 规则触发判断 走强/走弱/拥挤 ③ 表达层 · 报告交付物 指标总表 收益/RS/分位/资金 轮动图表 强弱曲线/热力图 文字结论初稿 模板+规则生成 研究员审核定稿 补充定性判断 核心原则:口径统一 · 更新及时 · 结论可复现 · 数字可追溯

周报与月报的差异决定了自动化策略

周报和月报不是同一份报告换个周期。周报关注短期动量与边际变化,典型口径是近5日、近20日涨跌幅,本周相对上周的排名升降,资金流的短期方向,以及是否出现“连续两周走强”这类触发信号。月报则更关注中期趋势与结构位置,常用近20日、近60日区间,估值历史分位,月度级别的相对强弱拐点,以及景气与估值的匹配度。这意味着自动化系统需要支持可配置的区间参数,而不是把周期写死。

举个具体例子。假设我们跟踪28个申万一级行业,周报的区间收益用近5个交易日,月报用近20个交易日。同一套计算函数,只要传入不同的窗口长度和基准,就能复用。这种“参数化”的设计,是后续章节实现指标计算模块的基础,也是本课程反复强调的工程习惯。

学习路径与最终交付物

整门课程围绕一条主线展开:数据准备 → 指标计算 → 规则判断 → 图表生成 → 文字模板 → 报告输出 → 校验与调度。第1章建立整体认知;后续章节会依次落地数据获取与清洗、区间收益与相对强弱计算、排名变化与触发规则、图表自动化、文字结论模板化、周报月报双周期输出,以及最后的定时运行与质量校验。

最终交付物是一套可运行的报告生成流程,产出包括:一份结构固定的指标总表、一组轮动图表、一段由规则生成的文字结论初稿,以及一份可人工审核的报告文件。为了让目标更具体,下面给出本课程建议的交付物清单,读者可以据此对照自己的进度。

交付物 内容要点 验收标准(示例)
指标总表 板块名称、区间收益、相对强弱、排名、排名变化、估值分位、资金净流入 28个板块齐全,数值可追溯到原始数据,无空值
轮动图表 相对强弱曲线、区间收益排序条形图、排名变化热力图 图表与总表数字一致,坐标与图例清晰
文字结论初稿 走强板块、走弱板块、边际变化、风险提示 每条结论均能对应到具体指标,无凭空表述
双周期输出 周报(近5日)与月报(近20日)各一份 同一流程切换参数即可生成,口径不混用
运行与校验 定时任务、日志、异常提示 数据缺失或计算异常时能明确报错,不静默出错
建议在第1章就建立一个“口径约定表”:明确区间收益用哪个价格(收盘价还是复权价)、基准指数用哪个、排名是升序还是降序、排名变化的正负号代表什么。这些约定一旦定下,全文和所有图表都保持一致,后续章节不再反复解释。

先想清楚“判断规则”,再动手写代码

很多自动化报告失败,不是因为代码写得不好,而是因为规则没想清楚。什么叫“走强”?是近5日收益排名进入前25%,还是相对强弱曲线创20日新高,还是排名较上期上升超过5位?不同定义会导出完全不同的结论。本课程建议用可量化的触发条件来描述判断,例如:

  • 短期走强:近5日收益排名位于前25%,且排名较上期上升不少于3位。
  • 中期走强:近20日相对强弱大于1,且连续两期上升。
  • 走弱警示:近5日收益排名位于后25%,且资金净流出。
  • 拥挤提示:估值历史分位高于80%,同时近20日涨幅排名前10%。

这些条件都是示例,实际使用时需要结合跟踪板块数量和基准来调整阈值。关键在于:规则要写成程序能判断的形式,而不是“感觉这个板块比较强”。只有规则明确,自动生成的文字结论才有依据,研究员审核时也才能快速定位分歧点。

本课程的定位与边界

需要坦诚说明自动化报告的边界。它能保证数据及时、口径统一、初稿完整,但它不擅长处理突发事件、政策解读、产业链调研这类需要定性判断的内容。因此本课程的设计原则是“机器做初稿,人做定稿”:程序负责把可计算的部分做扎实,把结论写成有据可查的初稿;研究员负责审核数字、补充逻辑、调整表述。理解这一点,就不会对自动化抱有不切实际的期待,也不会因为“机器写的不够好”而否定整条链路的价值。

带着这个定位进入后续学习,你会发现每一个技术选择都有明确目的:为什么要参数化区间、为什么要保留中间计算表、为什么文字模板要绑定指标字段、为什么要做异常校验。这些问题的答案,都指向同一个目标——让板块轮动周报和月报成为一份稳定、可信、可持续更新的研究产品。