2、行为建模理论基础:博弈论基础、行为经济学(前景理论、锚定效应)、有限理性假设

好,我们直接进入正题。

虚拟交易对手的行为建模,说白了就是回答一个问题:对方下一步会怎么动?

你可能会想,这不就是预测吗?对,但难点在于——交易对手不是冷冰冰的机器。他们有情绪、有偏见、会犯傻。我早年做风控模型时,就吃过这个亏。当时我用纯理性人假设去建模,结果模型在极端行情下全崩了。后来我才明白,人不是理性的,只是有限理性的

这一章,我们就来拆解这三个核心理论。它们是你建模的底层逻辑。

2.1 博弈论基础:对手不是一个人在战斗

博弈论,听起来很高大上。其实核心就一句话:你的最优决策,取决于对手的决策

在虚拟交易对手建模里,我们经常遇到的是非合作博弈。双方都在追求自身利益最大化,但信息往往不对称。

2.1.1 纳什均衡:谁先动谁输?

纳什均衡是个很微妙的状态。简单说,就是给定对手的策略,我没有动机去改变自己的策略

举个例子。两个交易对手,一个做多,一个做空。如果双方都死扛,市场流动性枯竭,大家都亏。但如果一方先平仓,另一方就能获利。这时候,双方都会等对方先动。这就是一个典型的纳什均衡——僵持

我在建模时,会把这种均衡状态作为一个基准点。模型预测的偏离,往往就是套利机会。

2.1.2 囚徒困境:为什么合作这么难?

囚徒困境大家应该都听过。两个共犯被抓,如果都沉默,各判一年;如果一人揭发一人沉默,揭发的释放,沉默的判十年;如果互相揭发,各判五年。

理性选择是什么?互相揭发。因为不管对方怎么做,揭发都是对自己最有利的。但结果呢?双输。

在交易市场里,这种场景太常见了。比如两个做市商,如果都维持合理价差,大家都有得赚。但如果一方突然收窄价差抢客户,另一方只能跟进。最后两败俱伤。

建模时,囚徒困境告诉我们:不要假设对手会跟你合作。除非有重复博弈的约束,比如声誉机制。

2.1.3 混合策略:让对手猜不透

有些博弈没有纯策略纳什均衡。比如石头剪刀布。如果你一直出石头,对手就会出布。所以最优策略是随机化,让对手无法预测。

在量化交易里,大资金经常用混合策略。比如,他们不会每次都砸盘,而是随机地挂单、撤单,制造假象。我见过一个模型,专门识别这种随机化行为,然后反向操作。效果还不错。

2.2 行为经济学:人不是理性的,是有偏的

传统经济学假设人是理性的。但现实中,人做决策时,情绪和认知偏差往往占主导。行为经济学就是研究这些偏差的。

2.2.1 前景理论:亏100块的痛苦 > 赚100块的快乐

这是卡尼曼和特沃斯基的经典理论。核心观点是:人们对损失的敏感度,远高于对收益的敏感度。大约是2.25倍。

什么意思?你赚100块的快乐,只相当于亏100块痛苦的44%。

在交易里,这会导致一个现象:亏损时死扛,盈利时早早落袋。因为亏损的痛苦太大,不愿意止损;盈利的快乐不够,怕回吐利润。

我建议你在建模时,给损失设置一个更高的权重。比如,在效用函数里,损失项的系数设为2.5。这样模型会更贴近真实行为。

2.2.2 锚定效应:第一印象决定一切

锚定效应是说,人们在做判断时,会过度依赖第一个获得的信息(锚点)。

比如,某股票昨天收盘价100元。今天跌到95元,你会觉得便宜。但如果昨天收盘价是90元,今天涨到95元,你会觉得贵。同样的95元,因为锚点不同,你的感受完全不同。

在交易对手建模里,锚定效应非常关键。比如,对手的报价策略,往往锚定在历史均价或某个关键价位上。我做过一个实验:把历史最高价作为锚点,模型预测对手的卖出意愿,准确率提升了15%。

2.2.3 有限理性:人只能处理有限信息

赫伯特·西蒙提出了有限理性。他说,人的认知能力是有限的,不可能完全理性地处理所有信息。所以,人们会满意即可,而不是追求最优。

在交易里,这表现为:启发式决策。比如,看到大单买入就跟风,看到连续下跌就恐慌卖出。这些都不是理性分析,而是基于简单规则。

我曾经犯过一个错误:用全量市场数据训练模型,结果模型过拟合,预测效果极差。后来我意识到,交易对手根本不会看那么多数据。他们只看最近几笔成交和价格变化。所以,模型输入要模拟人的有限信息,而不是机器的无限信息。

2.3 知识体系结构图

下面这张图,帮你理清这三个理论的关系。它们不是孤立的,而是层层递进的。

虚拟交易对手行为建模理论基础 博弈论基础 行为经济学 有限理性假设 纳什均衡 囚徒困境 混合策略 前景理论 锚定效应 损失厌恶 认知局限 启发式决策 满意即可 核心:对手不是理性的,而是有限理性的、有偏的、策略互动的

2.4 如何把这些理论用到建模中?

理论讲完了,关键是怎么落地。我分享几个实战经验。

2.4.1 构建效用函数

传统模型用期望收益最大化。但根据前景理论,你应该用价值函数替代。价值函数在损失区域更陡峭。

# 前景理论价值函数示例
def prospect_value(x, alpha=0.88, beta=0.88, lambda_=2.25):
    if x >= 0:
        return x ** alpha
    else:
        return -lambda_ * (-x) ** beta

# 对比传统线性效用
def linear_utility(x):
    return x

2.4.2 设置锚点特征

在特征工程里,加入锚点变量。比如:

  • 当前价格 vs 历史最高价
  • 当前价格 vs 昨日收盘价
  • 当前价格 vs 成本价

这些锚点特征,往往比绝对价格更有预测力。

2.4.3 模拟有限理性

不要用全量数据。给模型一个滑动窗口,比如只看最近100笔交易。这样模型学到的,才是对手真正能感知到的信息。

我常用的窗口大小是50-200笔。太小了噪声大,太大了对手根本记不住。你可以用交叉验证来调这个参数。

2.5 避坑指南

最后,说几个我踩过的坑。

  • 不要假设对手是理性的。我早期模型全用博弈论,结果在恐慌行情下完全失效。后来加了行为经济学,效果才稳定。
  • 锚点不是固定的。不同对手的锚点不同。机构投资者可能锚定基本面,散户可能锚定近期价格。建模时要区分。
  • 有限理性不等于随机。对手的行为是有规律的,只是不是最优的。你要找到那个规律,而不是当成噪声。

嗯,这一章的内容就到这里。理论是骨架,实践是血肉。下一章我们会讲如何用这些理论,构建一个完整的交易对手行为模型。


公众号:蓝海资料掘金营,微信deep3321