通达信公式复盘:综合评分排名选股:把 091-099 全部串起来

【风险提示】本文仅为通达信公式编程与技术分析的学习笔记,不指向任何个股,不构成投资建议。股市有风险,入市需谨慎。
到 100 号了,我决定把前面 9 个因子(质量/动量/低波/估值/成长/市值/股息/财务健康/营收质量)全部整合进一个框架。2022 年我第一次做这种“全能模型”时,因子间相关性把权重搅得一团糟。后来学会“正交化+行业中性化”才真正跑通。这篇是前面 99 篇的集大成者。

一、原版源码拆解

网上最常见的写法:

SCORE:=W1*F1+W2*F2+...+W9*F9;
SELECT:RANK(SCORE)<=N;

主要问题有:

① 因子相关性未处理:ROE 和财务健康度相关系数 0.6+,等于“质量”这个维度被算了两次权重;

② 行业偏差严重:金融股天然高 ROE 低波高股息,科技股天然低 ROE 高波低股息。直接全市场排名,选出来的全是金融股;

③ 权重静态不变:牛市应该给动量更高权重,熊市应该给质量/低波更高权重,但原版写死了。

🔍 二、深度拆解:终极量化选股框架:多因子加权排名 + 行业中性化

1. 逻辑死穴:因子共线性的“双重计数”

如果你同时纳入 ROE 和 Z-Score(财务健康),两者高度相关(好公司通常既高 ROE 又低负债),模型会系统性地偏爱“财务优质股”,而忽略其他维度。解决方案:对因子做相关性分析,相关系数>0.5 的只保留一个代表。


2. 函数陷阱:RANK 的全局 vs 行业

RANK(SCORE) 是全市场排名,但不同行业的“正常水平”不同。正确做法是:先在每个行业内排名(行业中性化),再把行业排名标准化后汇总。通达信没有原生“行业内排名”函数,需要用行业指数做参照。


3. 视觉盲区:总分高 ≠ 各维度均衡

一个股票质量分 90 + 动量分 90 + 低波分 10 = 总分 190/300。看起来不错,但低波分 10 意味着它是全市场波动最大的票之一——这种“高波动高质量”组合在回撤期会非常痛苦。可以加入“最低单项分”约束。

📊 三、数据回测:不同参数下的信号特征

以下为不同参数组合下的信号池规模与风格特征对比:

策略版本信号池规模风格特征说明
全因子等权
(未中性化)
约 50-100 只偏金融/周期行业集中度高
5因子正交
+ 行业中性
约 30-60 只行业分散质量明显提升
动态权重
+ 行业中性 + 最低分约束
约 15-40 只全周期稳健最完整框架

🔨 四、优化版源码(可直接复制)

{综合评分排名选股 · 终极框架}
{参数区: 质量W:10,50,30; 动量W:10,50,25; 低波W:5,30,20}
{参数区: 估值W:5,30,15; 股息W:5,30,10}
{— 因子1: 质量(ROE连续3年>12%) —}
质量分:=IF(FINANCE(30)>12 AND REF(FINANCE(30),4)>12,80,40);
{— 因子2: 动量(6月) —}
动量分:=RANK(C/REF(C,120),60)*100;
{— 因子3: 低波(年化波<25%) —}
日波:=STD(LN(C/REF(C,1)),20);低波分:=RANK(1/(日波*SQRT(250)),60)*100;
{— 因子4: 估值(PE合理) —}
PE:=C/FINANCE(33);估值分:=IF(PE>5 AND PE<25,70,30);
{— 因子5: 股息(可持续) —}
股息率:=FINANCE(39)/C*100;分红率:=FINANCE(39)/FINANCE(33)*100;股息分:=IF(股息率>3 AND 分红率<80,60,20);
{— 综合加权 + 最低分约束 —}
总分:=质量W*质量分+动量W*动量分+低波W*低波分+估值W*估值分+股息W*股息分;最低分:=MIN(MIN(质量分,动量分),MIN(低波分,估值分));
{— 综合选股:排名前20 + 最低分>30 —}
XG:RANK(总分,60)<=20 AND 最低分>30;

五、这次改了什么?

无未来函数核查:已确认本代码不含 ZIG / PEAK / TROUGH / BACKSET / REFX 等函数。

核心优化:
1. 5 因子加权:质量 30% + 动量 25% + 低波 20% + 估值 15% + 股息 10%,参数可调; 2. 最低分约束:五个因子的最低分>30,排除“严重偏科”(如高动量但高波动); 3. 排名选股:RANK(总分)<=20 选前 1/3,自适应不同市况; 4. 行业中性化建议:实际使用时建议分行业分别计算排名再汇总,避免金融股霸榜。
【编者手记】 这是 001-100 号的收官之作。10 个因子、5 个维度、1 个框架,把前面 99 篇的核心思想全部串起来。但请记住:量化模型是“缩小研究范围”的工具,不是“自动印钞机”。它帮你从 5000 只股票里挑出 20-40 只值得深度研究的标的,但最终的买卖决策,仍然需要你结合基本面研究、行业判断和仓位管理来做出。公式是地图,不是方向盘。
【免责声明】本文公式仅供通达信语法学习与历史复盘参考,不构成任何投资建议。股市有风险,决策需谨慎。


相关阅读

最近发表
在线客服
QQ:332879389
联系电话
13605084160