通达信怎么引用其他股票数据?市场前缀、美元符号与缺失排查

发布日期:2026年10月12日。引用另一只股票的数据,不能只把六位数字写进公式。市场前缀、双引号、字段名称及对应周期数据都会影响能否读到正确对象;当前品种有行情,也不代表被引用品种的数据完整。
适用环境:支持官方$特定数据引用或CALCSTOCKINDEX的通达信公式环境。以下代码沿用官方语法的品种标识仅作教学,不是个股买卖建议;没有使用或推荐任何实际交易策略,也未做客户端实测。
一、先识别双引号里的完整结构
OTHER_C:"SZ000001$CLOSE";
这一行由输出名OTHER_C和一段带双引号的引用组成。SZ是市场前缀,000001是代码,$后是字段CLOSE。官方列出的前缀包含SZ、SH、BJ以及市场编号形式;不能假设没有前缀时软件总会按自己想要的市场解释。
| 部分 | 示例 | 检查问题 |
|---|---|---|
| 市场 | SZ | 目标到底属于哪个市场 |
| 代码 | 000001 | 是否为当前目标完整代码 |
| 分隔符 | $ | 是否误用其他符号或全角字符 |
| 字段 | CLOSE | 是否为官方支持的数据类型 |
| 外层 | 英文双引号 | 是否误用中文引号或省略引号 |
本文不依赖这个代码当前的股价、基本面或交易状态。核对对象时应在实际客户端打开目标品种,比较市场与名称,不把“有数值返回”当成已经引用正确的证明。
二、对应周期数据必须另行检查
官方$条目要求被引用品种的对应周期数据先下载到本地。日线数据完整,不能推出分钟数据也完整;只有当前品种完整,不能推出另一品种也完整。
- 记录当前公式运行周期,再单独打开目标品种的同周期图表。
- 记录最后一根日期、可用历史范围和数据更新时间。
- 按当前客户端数据入口补齐相应品种与周期,先备份自有数据,不用第三方覆盖包盲目替换。
- 回到只输出OTHER_C的测试副本,选择同一根、同一口径比较。
- 数值缺失时保留原值和错误信息,不直接用0填充后继续筛选。
已有盘后日线下载与范围检查只能帮助核对日线场景,不代表全部分钟周期或跨市场数据都已具备。
三、引用指标输出时,还要核对名字或序号
官方$也支持指标输出线,例如“市场代码$指标名.输出名”的结构。另一种函数CALCSTOCKINDEX使用品种代码、指标名称和指标输出序号三个参数,不是把输出线名作为第三个数值参数。
OTHER_J:CALCSTOCKINDEX('SH600000','KDJ',3);
这沿用官方的语法示例:其说明将KDJ的第3输出对应为J。不能由此推导任何自定义指标的第3输出都叫J。先打开实际指标确认输出顺序;与按名称引用相比,重排子公式输出可能影响按序号调用的含义。
CALCSTOCKINDEX条目明确禁止公式自己嵌套自己。遇到循环依赖,应拆开调用关系检查,不能只换一个品种代码就认定循环消失。本文不假定它提供自定义参数传递或跨周期能力,未验证的组合不补写为可用公式。
四、数据不同先做同口径对照
两个品种可能存在不同交易时段、停牌、数据缺口或可用样本长度。不要仅凭屏幕上第100根就认定它们对应同一时点;跨品种时间对齐和缺失值处理应在实际环境记录复核。复权及品种切换后的加载范围也应记录。
如果引用返回了数值,但与直接打开目标图表不同,先排市场与代码,再排字段、周期、复权、历史范围和更新时点。不要立即修改价格表达式来“凑成一样”。
五、最小排错记录表
- 当前品种与目标品种的完整市场代码。
- 引用原文、字段或指标输出名,以及按序号调用时的输出序号。
- 运行周期、复权口径、最后一根日期及本地历史范围。
- 目标图表直接读取值与引用值的同根对照。
- 缺失、报错或异常值的原样记录,不用修饰后的零值代替。
学习入口见基础教程中心,语法见名称与标点报错排查,运行环境见条件选股周期和数据设置。
来源与限制
原始依据:通达信用户红宝书$引用特定数据、双引号和CALCSTOCKINDEX条目。没有运行上述客户端示例、下载证券数据或测试历史对齐,不作跨市场兼容、权限、性能或收益承诺。




