效用论(规范性金融理论之预期效用理论)
来源:峰值财经 发布时间:2023-04-25 浏览量:次
预期效用理论(EUT)是金融理论的基石。自20世纪40年代提出以来,EUT一直是不确定性决策建模的核心范式之一。基本上每一本关于金融理论和投资理论的入门教科书中都有对EUT的描述。原因之一是,金融领域的其他核心结果都可以从EUT范式中衍生出来。
经济主体的偏好
假定一个经济主体的偏好是在模型经济中面临两种可交易资产的投资选择问题。例如,该经济主体可能选择投资组合,从而导致未来带来的回报是; 该经济主体也可能选择投资组合,从而导致未来带来的回报是。假定这个经济主体的偏好是对未来回报而不是投资组合的选择偏好。如果这个经济主体强偏好A回报而不是B回报,就可以写为,反之可以写为。如果该经济主体对两种偏好都无差异,就可以写为。在这一描述下,EUT的可能的一个公理集包括以下几个方面。
完备性
一个经济主体能够对所有的回报进行排序。排序必须是以下三种情况之一:、或 。
传递性
如果有第三个组合未来的回报是,那么若且,则 。
连续性
如果,那么存在一个数,使得。
独立性
若,则。同样,若,则
主导性
如果存在和,则由和,可以得到。
效用函数
效用函数是一种用数学和数值的方式来表示一个经济主体偏好的方法,因为这样的函数可以将一个数值赋值给特定的回报。在这种情况下,绝对数值是无关的,值得注意的是这些值所代表的次序。假设表示经济主体表达偏好的所有可能的回报,那么效用函数U定义如下:
如果U代表偏好,那么下面的关系是正确的。
(强烈偏好)
(弱偏好)
(强烈不偏好)
(弱不偏好)
(无差异)
效用函数只能通过正线性变换来确定。因此,如果代表偏好,那么在的条件下,也能代表偏好。关于效用函数,von Neumann 和 Morgenstern(1944)的第25页总结如下: “我们看到:如果效用的这个数值存在,那么它就是由一个线性变换决定的。也就是说,效用是一个线性变换的数。”
预期效用函数
von Neumann 和 Morgenstern(1944)表明,如果经济主体的偏好满足前面提到的5个公理,那么存在以下预期效用函数形式。
这里,是一个单调递增、状态独立的函数,通常称为伯努利效用, 比如、和 。
换句话说,预期效用函数首先是给定状态回报的函数,并以给定状态发生概率 作为每一状态下效用的权重。在线性伯努利效用的特殊情况下,预期效用就是状态相关回报的简单预期值,即 。
风险规避
在金融学中,风险规避的概念很重要。最常用于测量风险厌恶程度的是绝对风险厌恶 (ARA)的 Arrow-Pratt 度量,这可以追溯到 Pratt(1964)。假设一个经济主体的独立于状 态的伯努利效用函数是 ,那么 ARA 的 Arrow-Pratt 度量定义如下
根据这一测量标准,可以区分以下 3 种情况
在金融理论和模型中,风险规避和风险中性的假设通常认为是合适的。 考虑前面提到的 3 种伯努利函数、 和 ,很容易证实它们分别对应着的风险规避者、风险中性者和风险偏好者的建模。比如,考虑
数值例子
用Python很容易说明EUT的应用。假设这个例子会模型化前面的经济模式。假设一个经济主体根据EUT来决定他在未来不同回报中的偏好 。这个经济主体的伯努利效用函数是。在这个例子中,来自组合的回报偏好优于组合的回报。下面的代码演示了这个应用。
# 初始价格S0 = 10B0 = 10M0 = np.array((S0, B0))# 风险规避型伯努利效用函数def u(x): return np.sqrt(x)# 两个投资组合拥有不同的权重phi_A = np.array((0.75, 0.25))phi_D = np.array((0.25, 0.75))# 每一个投资组合的建立成本是相同的np.dot(M0, phi_A) == np.dot(M0, phi_D)# Out:# True# A投资组合的不确定的回报A1 = np.dot(M1, phi_A)# D投资组合的不确定的回报D1 = np.dot(M1, phi_D)# 概率测度P = np.array((0.5, 0.5))# 期望效用函数def EUT(x): return np.dot(P, u(x))# A投资组合回报的效用值a = EUT(A1)print(f'EUT of A: {a}')# D投资组合回报的效用值d = EUT(D1)print(f'EUT of D: {d}')# Out:# EUT of A: 3.381292321692286# EUT of D: 3.3611309730623735
这种情况下的一个典型问题是,在经济主体预算固定(w > 0)条件下,求得一个最优投资组合(能最大化预期效用的组合)。以下Python代码对这个问题进行了建模并准确地解决了它。在可用预算中,经济主体将大约 60%投资于风险资产、大约40%投资于无风险资 产。结果主要由伯努利效用函数的特殊形式决定。
from scipy.optimize import minimize# 经济主体的固定预算w = 10# 使用最小化的预算约束cons = {'type': 'eq', 'fun': lambda phi: np.dot(M0, phi) - w}def EUT_(phi): # 在投资组合上的预期效用函数 x = np.dot(M1, phi) return EUT(x)opt = minimize(lambda phi: -EUT_(phi), # 最小化 -EUT_(phi),即最大化 EUT_(phi) x0=phi_A, # 初始值 constraints=cons) # 预算约束# opt['x']: array([0.61122474, 0.38877526])# 给定预算 w = 10 时的最优(最高)预期效用。EUT_(opt['x'])# Out:# 3.385015999493397