2. 搜索指数基础

在构建投资者关注因子之前,必须先回答一个更基础的问题:“关注”到底用什么来度量?搜索指数正是目前最常用的代理变量。它的核心原理并不复杂——当一个人对某家公司、某个行业或某个宏观事件产生兴趣时,最直接的行为之一就是去搜索引擎查询相关信息。搜索引擎把海量查询请求按关键词聚合、去噪、标准化后,就形成了可比较的时间序列,这就是搜索指数。

理解这一点非常关键:搜索指数不是“人数”,而是相对热度。百度指数、谷歌趋势通常以某一基准期或均值为100进行归一化,微信指数则以当日绝对指数值呈现。因此它们适合做趋势对比、拐点识别和横截面排序,而不适合直接解读为“有多少人搜索了”。

核心结论:搜索指数是“行为痕迹型”数据,反映的是主动信息获取意愿,比新闻情绪、股吧发帖更接近投资者的真实关注动作,但也更容易受到事件驱动、媒体放大和平台算法调整的影响。

一、三大主流数据源对比

目前在国内投资者关注研究中,最常用的三类数据源是百度指数、谷歌趋势和微信指数。它们覆盖的人群、平台属性和获取难度差异明显,选择哪一个取决于研究标的和投资域。

数据源 覆盖范围 指数形式 典型获取方式 适用场景
百度指数 中国大陆为主 PC+移动趋势,常以均值100归一 官网查询、开放平台接口、第三方数据商 A股个股、行业、政策关键词
谷歌趋势 全球,中国境内覆盖有限 0–100相对热度 官网CSV导出、pytrends库 港股、中概股、全球宏观主题
微信指数 微信生态内 日度绝对指数 微信指数小程序、第三方采集 消费、社交传播敏感型标的

从表中可以看出,百度指数和谷歌趋势都做了归一化处理,跨关键词比较时需要格外小心;微信指数虽然数值更“原始”,但缺乏公开稳定的批量接口,工程化难度最高。

二、获取方式与工程化流程

实际研究中,获取搜索指数通常有三条路径:手工导出、官方接口和第三方数据服务。手工导出适合小样本验证,官方接口适合稳定批量拉取,第三方服务则适合需要长历史、多关键词、已清洗数据的场景。

  1. 明确关键词体系:个股用“公司简称+股票代码”,行业用“行业名+政策词”,宏观用“事件词+时间窗”。
  2. 确定时间粒度:日度适合事件研究,周度适合因子构建,月度适合长期趋势。
  3. 选择获取通道:百度指数开放平台、pytrends、微信指数小程序或合规数据商。
  4. 数据清洗与对齐:统一日期、处理缺失值、对齐交易日、做标准化。
  5. 入库与版本管理:保留原始快照,记录抓取时间和参数,便于复现。

以谷歌趋势为例,使用 pytrends 可以快速拉取多关键词的相对热度:

from pytrends.request import TrendReq

pytrends = TrendReq(hl='zh-CN', tz=480)
kw_list = ["贵州茅台", "白酒", "消费复苏"]
pytrends.build_payload(kw_list, timeframe='2023-01-01 2024-12-31', geo='CN')
df = pytrends.interest_over_time()
df.to_csv("google_trends_demo.csv", encoding="utf-8-sig")

百度指数若走开放平台,通常需要申请权限并携带密钥;微信指数则更多依赖小程序查询或合规第三方接口。无论哪种方式,都建议把原始返回值、请求参数、抓取时间三者一起落库,否则后续很难排查数据异常。

三、一个典型场景:个股关注因子的数据准备

假设我们要为某只消费股构建“投资者关注因子”。第一步不是建模,而是把搜索指数整理成可对齐的时间序列。常见做法是:以股票简称为主关键词,以行业词为辅助关键词,分别拉取日度数据,再计算主关键词的标准化值和行业相对强度。

日期,百度指数_个股,百度指数_行业,相对关注强度
2024-01-02,1320,860,1.53
2024-01-03,1450,880,1.65
2024-01-04,1280,870,1.47
2024-01-05,1600,910,1.76

其中“相对关注强度”=个股指数 / 行业指数,用来剥离行业整体热度,突出个股特有的关注变化。这个简单比值,往往比原始指数更干净,也更适合进入多因子模型。

搜索指数数据源与获取路径 百度指数 中国大陆 · 归一化 官网 / 开放平台 A股个股与行业 谷歌趋势 全球 · 0–100 pytrends / CSV 港股与全球主题 微信指数 微信生态 · 绝对指数 小程序 / 第三方 消费与社交传播 统一清洗:日期对齐 · 缺失处理 · 标准化 原始快照 + 参数 + 抓取时间 一并入库 投资者关注因子候选序列

四、常见误区与复盘要点

误区一:把指数值当人数。百度指数和谷歌趋势都是相对值,不同关键词之间不能直接比大小,只能比趋势和拐点。
误区二:忽略平台算法调整。指数口径、去噪规则、移动端占比变化都会造成序列断点,长周期研究必须做断点检测。
复盘建议:每次拉取数据后,先画三条线——原始指数、20日均线、行业相对强度。若原始指数剧烈跳动但相对强度平稳,说明是行业整体热度,不是个股特异关注。

此外,关键词选择本身就是最大的主观环节。同一个公司可能有简称、全称、产品名、创始人名等多个搜索入口,只取一个关键词会严重低估关注度。更稳妥的做法是构建“关键词篮子”,按搜索量加权合成,并在报告中披露关键词清单和权重。

最后要强调合规与稳定:公开接口有频率限制,第三方数据有授权边界,微信指数尤其需要注意采集方式。工程上建议做缓存、重试、限速和版本快照,把“能拉到数据”变成“能稳定复现地拉到数据”,这才是搜索指数进入因子体系的前提。