开始使用免费开始使用

把"漂移"加上

在上一个练习中,您模拟了遵循随机游走的股价。本题将在两个方面进行扩展。

  • 您将观察带有漂移的随机游走。许多时间序列(如股价)是随机游走,但通常会随时间上行漂移。
  • 在上一个练习中,随机游走中的噪声是加性的:把服从正态分布的随机价格变动加到上一期价格上。然而,加性噪声理论上可能得到负价格。现在您将把噪声改为乘性的:先在服从正态分布的随机变动上加 1 得到总回报,再将其乘以上一期价格。

本练习是课程的一部分

Python 中的时间序列分析

查看课程

练习说明

  • 使用 np.random.normal() 生成 500 个随机正态分布的乘法「步长」,均值为 0.1%,标准差为 1%,这些值表示回报率;再加 1 得到总回报。
  • 模拟股价 P
    • 使用 numpy 的 .cumprod() 方法对步长做累乘。
    • 将总回报的累乘结果乘以 100,使起始值为 100。
  • 绘制带漂移的随机游走模拟结果。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Generate 500 random steps
steps = np.random.normal(loc=___, scale=___, size=___) + ___

# Set first element to 1
steps[0]=1

# Simulate the stock price, P, by taking the cumulative product
P = ___ * np.cumprod(___)

# Plot the simulated stock prices
plt.plot(___)
plt.title("Simulated Random Walk with Drift")
plt.show()
编辑并运行代码