股票市场是历史上研究最多的领域之一。几十年来,人们一直在努力预测未来的价格。大多数人(如果不是全部)都在为这项任务而苦苦挣扎,因为股票市场是一个随机过程。由于其随机性,随机过程本质上很难或不可能准确预测。这就是蒙特卡罗模拟的用武之地。这些模拟非常适合确定具有随机变量的过程或事件的结果。例如,股票市场有未知的随机事件,如新闻、世界事件、投资者情绪等。所有这些都创建了一个随机系统,使得创建模型来预测未来价格几乎不可能。
在本文中,我们将尝试使用历史数据和统计数据预测一年后 SPY 的股价。请注意,这不是投资建议。这仅用于教育目的,并演示如何将蒙特卡罗方法应用于股票市场。该模型可以应用于您最喜欢的股票、ETF 或加密货币,如果需要,它可以扩展到任何随机过程以确定随机事件的最可能结果。让我们进入代码。
导入包
对于这段代码,我们需要以下包:
yfinance用于拉取历史财务数据
numpy用于计算股价变化的统计参数
random用于创建随机结果(蒙特卡罗模拟的关键)
pyplot用于可视化我们的结果
norm与random包结合使用以随机化每日股票收益(在本文后面解释)
# Importing Packages
import yfinance as yf
import numpy as np
from random import rando