1. 情绪量化概述:什么是市场情绪?为什么情绪能赚钱?课程目标与学习路径

1.1 市场情绪到底是什么?

说实话,我入行头三年,一直觉得「市场情绪」是个玄学。

分析师们天天说「市场情绪悲观」、「情绪回暖」,但你要问他怎么量化?他给你来一句「凭感觉」。这哪行?

我后来自己动手做了一套系统,才真正搞明白——市场情绪,本质上就是市场参与者的集体心理状态在价格和交易行为上的投影

说白了,情绪就是一群人面对同一堆信息时,做出的非理性反应的总和。

  • 贪婪:追涨、加杠杆、FOMO(害怕错过)
  • 恐惧:割肉、踩踏、流动性枯竭
  • 犹豫:缩量、横盘、观望
  • 绝望:破位、放量下跌、清仓

你想想看,这些情绪有没有规律?有。能不能量化?能。能不能赚钱?当然能。

核心观点:情绪不是噪音,而是未被定价的信息。当情绪极端到一定程度,市场就会自我纠正——这就是我们的盈利空间。

1.2 为什么情绪能赚钱?

我刚开始做量化的时候,踩过一个坑。

当时我迷信纯因子模型,觉得只要把PE、PB、动量这些因子堆上去,就能稳定盈利。结果呢?回测漂亮,实盘拉胯。为什么?因为模型里没有「人」。

市场不是物理实验室,它是由活生生的人组成的。人会恐慌,会贪婪,会从众。这些行为偏差,就是超额收益的来源。

举个例子:

  • 过度反应:坏消息出来,股价跌过头。等情绪平复,价格会反弹。
  • 反应不足:好消息出来,大家还在犹豫。等情绪发酵,趋势才真正启动。
  • 羊群效应:大家都买,我也买。等所有人都买完了,就该跌了。

情绪量化,就是把这些行为偏差变成可计算的信号。你比别人早一步识别出极端情绪,就能早一步布局。

我的经验:情绪策略最赚钱的时候,往往是市场最恐慌的时候。2020年3月、2022年10月,这些时间点我都在加仓。不是因为我勇敢,而是因为我的情绪指标告诉我:「现在,别人都怕了。」

1.3 课程目标

这门课不是给你讲一堆理论就完事了。我的目标是:

  1. 让你能独立构建一套情绪量化系统——从数据采集到信号生成,全流程跑通。
  2. 让你理解情绪指标背后的逻辑——为什么这个指标有效?什么时候会失效?
  3. 让你能实盘应用——回测和实盘是两回事,我会把避坑指南都告诉你。

嗯,这里要注意:情绪量化不是万能药。它更适合做择时风险控制,而不是选股。你想想看,情绪指标告诉你「市场很恐慌」,但你买什么?买指数ETF,还是买个股?这个我会在后面章节详细讲。

1.4 学习路径

整个课程我分成了四个阶段,每个阶段都有明确的目标和产出:

阶段 章节 核心内容 产出
基础篇 1-5 情绪量化概念、数据源、Python环境搭建 能获取并清洗情绪相关数据
指标篇 6-15 构建各类情绪指标(舆情、波动率、资金流等) 能生成10+个情绪因子
建模篇 16-25 因子合成、模型训练、回测框架 能跑通一套完整的情绪策略
实战篇 26-30 实盘部署、风险控制、策略迭代 能上线并监控情绪策略

我个人建议你按顺序来,别跳。尤其是数据清洗那部分,我曾经因为偷懒没处理好缺失值,导致整个回测结果都是错的——嗯,这个坑我替你踩过了。

1.5 知识体系总览

下面这张图,是我自己梳理的情绪量化知识体系。你可以把它当成整个课程的地图:

市场情绪量化知识体系 数据源层 指标构建层 模型层 • 新闻/舆情数据 • 交易数据(量价) • 期权/期货数据 • 社交媒体数据 • 恐慌指数(VIX) • 资金流向指标 • 情绪得分(NLP) • 波动率指标 • 因子合成 • 机器学习模型 • 回测框架 • 信号生成 输出:情绪信号 + 交易策略 + 风险预警 择时策略 风险控制

1.6 你需要准备什么?

技术栈方面,我默认你:

  • 会基本的Python(pandas、numpy)
  • 懂一点统计学(均值、方差、回归)
  • 有交易经验(至少知道K线是什么)

如果哪块不熟,别担心。我会在每章开头给出前置知识链接,你自己花半小时补一下就行。

避坑指南:我曾经带过一个学员,他跳过数据清洗直接建模,结果模型在回测里年化收益200%,实盘一周亏了15%。为什么?因为数据里有未来函数。嗯,这个坑我会在第五章专门讲。

1.7 一个小例子:情绪指标长什么样?

光说不练假把式。我给你看一个最简单的情绪指标——涨跌家数比

import pandas as pd
import numpy as np

# 模拟数据:1000只股票,每天涨跌家数
np.random.seed(42)
data = {
    'date': pd.date_range('2024-01-01', periods=100),
    'up': np.random.randint(200, 800, 100),
    'down': np.random.randint(200, 800, 100)
}
df = pd.DataFrame(data)

# 计算情绪指标:涨跌比
df['ratio'] = df['up'] / (df['up'] + df['down'])

# 极端情绪判断
df['signal'] = np.where(df['ratio'] < 0.3, '恐慌',
                np.where(df['ratio'] > 0.7, '贪婪', '中性'))

print(df.head(10))

你看,就这么简单。当涨跌比低于0.3时,说明市场极度恐慌——这时候往往是买入机会。当高于0.7时,说明市场极度贪婪——这时候要小心了。

当然,这只是最基础的版本。后面我们会用NLP分析新闻情绪、用期权数据构建恐慌指数、用资金流数据判断主力动向。每一个都比这个复杂,但核心逻辑是一样的:找到情绪的极端点,然后反向操作

我的习惯:我一般会把情绪指标分成三个等级:信号(原始数据)、因子(加工后的指标)、策略(结合多个因子的交易规则)。这样分层的好处是,出了问题能快速定位——是数据错了,还是模型错了,还是策略逻辑有问题。

好了,第一章就到这里。记住一句话:情绪是市场的影子,而我们要做的,是在影子最长的时候点亮灯

专注资料整理