11. 现值#
11.1. 概述#
本讲座描述了现值模型,这是许多资产定价理论的起点。
资产定价理论是许多经济决策理论的组成部分,包括
消费
劳动力供给
教育选择
货币需求
在资产定价理论以及更广泛的经济动态研究中,一个基本主题是不同时间序列之间的关系。
时间序列是按时间索引的序列。
在本讲座中,我们将把序列表示为向量。
因此,我们的分析通常归结为研究向量之间的关系。
本讲座中的主要工具将是
矩阵乘法,和
矩阵求逆。
我们将在后续的许多讲座中使用这些工具,包括消费平滑,均衡差异模型,和货币主义价格水平理论。
让我们开始吧。
11.2. 分析#
设
是一系列股息或“支付” 是从时间 开始的延续性的资产支付价格序列,即 是一个周期的“折现因子” 是 时资产的终端价格
我们假设股息序列
这意味着它们是在模型之外确定的。
假设资产定价方程序列
我们称其为方程序列,因为有
方程(11.1)告诉我们在时间
通过将明天的价格乘以
我们想要解
像(11.1)这样的方程系统是线性差分方程的一个例子。
有许多强大的数学方法可以用来解决这样的系统,这些方法本身就很值得研究,因为它们是分析许多经济模型的基础。
例如,参见Samuelson乘数-加速器
在本讲座中,我们将使用矩阵乘法和矩阵求逆来解决系统(11.1),这是线性代数中的基本工具,在线性方程和矩阵代数中有介绍。
我们将导入以下的库
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import font_manager
fontP = font_manager.FontProperties()
fontP.set_family('SimHei')
fontP.set_size(14)
11.3. 将序列表示为向量#
系统(11.1)中的方程可以如下排列:
将
用向量-矩阵表示法,我们可以将系统(11.3)写成
这里
价格向量的解是
例如,假设股息流是
让我们编写Python代码来计算和绘制股息流。
import matplotlib as mpl
FONTPATH = "fonts/SourceHanSerifSC-SemiBold.otf"
mpl.font_manager.fontManager.addfont(FONTPATH)
plt.rcParams['font.family'] = ['Source Han Serif SC']
T = 6
current_d = 1.0
d = []
for t in range(T+1):
d.append(current_d)
current_d = current_d * 1.05
fig, ax = plt.subplots()
ax.plot(d, 'o', label='股息')
ax.legend()
ax.set_xlabel('时间')
plt.show()
现在让我们来计算和绘制资产价格。
我们将
δ = 0.99
p_star = 10.0
现在我们建立矩阵
A = np.zeros((T+1, T+1))
for i in range(T+1):
for j in range(T+1):
if i == j:
A[i, j] = 1
if j < T:
A[i, j+1] = -δ
让我们将矩阵
A
array([[ 1. , -0.99, 0. , 0. , 0. , 0. , 0. ],
[ 0. , 1. , -0.99, 0. , 0. , 0. , 0. ],
[ 0. , 0. , 1. , -0.99, 0. , 0. , 0. ],
[ 0. , 0. , 0. , 1. , -0.99, 0. , 0. ],
[ 0. , 0. , 0. , 0. , 1. , -0.99, 0. ],
[ 0. , 0. , 0. , 0. , 0. , 1. , -0.99],
[ 0. , 0. , 0. , 0. , 0. , 0. , 1. ]])
现在用 (11.5)来求解价格。
b = np.zeros(T+1)
b[-1] = δ * p_star
p = np.linalg.solve(A, d + b)
fig, ax = plt.subplots()
ax.plot(p, 'o', label='资产价格')
ax.legend()
ax.set_xlabel('时间')
plt.show()
现在让我们考虑一个周期性增长的股息序列:
T = 100
current_d = 1.0
d = []
for t in range(T+1):
d.append(current_d)
current_d = current_d * 1.01 + 0.1 * np.sin(t)
fig, ax = plt.subplots()
ax.plot(d, 'o-', ms=4, alpha=0.8, label='股息')
ax.legend()
ax.set_xlabel('时间')
plt.show()
Exercise 11.2
当
Solution to Exercise 11.2
我们改变之前的参数和矩阵
δ = 0.98
p_star = 0.0
A = np.zeros((T+1, T+1))
for i in range(T+1):
for j in range(T+1):
if i == j:
A[i, j] = 1
if j < T:
A[i, j+1] = -δ
b = np.zeros(T+1)
b[-1] = δ * p_star
p = np.linalg.solve(A, d + b)
fig, ax = plt.subplots()
ax.plot(p, 'o-', ms=4, alpha=0.8, label='资产价格')
ax.legend()
ax.set_xlabel('时间')
plt.show()
与现值计算相关的加权平均在很大程度上消除了周期。
11.4. 解析表达式#
根据逆矩阵定理,当
可以验证,(11.3)中的矩阵
Exercise 11.3
通过证明
如果我们在 (11.5) 中使用表达式 (11.6) 并执行所指示的矩阵乘法,我们将发现
定价公式 (11.7) 表明资产价格
基本面部分
,它等于预期股息的贴现现值泡沫组成部分
基本组成部分由贴现因子
泡沫组成部分是其中不由基本面决定的价格部分。
有时将泡沫组成部分重写为
更为方便,其中
11.5. 关于泡沫的更多内容#
让我们暂时考虑一个从不支付股息的资产这个特殊情况,在这种情况下
在这种情况下,我们的
显然,如果
但让我们通过设置以下条件来激活泡沫成分:
其中
在这种情况下,当我们用方程 (11.6) 中的矩阵
11.6. 总回报率#
定义从
将方程 (11.10) 代入方程 (11.11) 可以确认,一个价值完全来源于泡沫的资产的总回报率为:
11.7. 练习#
Exercise 11.4
给出以下
(戈登增长公式的修改版) (普通的戈登增长公式) (一个无价值股票的价格) (一个纯泡沫股票的价格)
Solution to Exercise 11.4
将上述每对