量化分析预测股市?试试这个 Python 库
Python中文社区
共 5678字,需浏览 12分钟
· 2021-10-26
!pip install quandl
!pip install fbprophet
!pip install plotly
from stocker importStocker
现在在 Python 代码中有 Stocker 类,我们可以使用它来创建该类的实例。在 Python 中,类的实例称为对象,创建对象的行为有时称为实例化或构造。为了创建 Stocker 对象,我们需要传入有效股票代码的名称。
# MSFT Stocker Initialized. Data covers 1986-03-13 to 2018-01-16.
microsoft = Stocker('MSFT')
MSFT StockerInitialized. Data covers 1986-03-1300:00:00 to 2018-03-2700:00:00.
microsoft
对象。Stocker 建立在 quandl WIKI
数据库上,该数据库使我们可以访问 3000 多只美国股票以及多年的每日价格数据(完整列表)。对于此示例,我们将坚持使用 Microsoft 数据。因为微软正在拥抱开源社区(包括 Python)。# Stock is an attribute of the microsoft object
stock_history = microsoft.stock
stock_history.head()
# A method (function) requires parentheses
microsoft.plot_stock()
MaximumAdj. Close= 96.77 on 2018-03-1200:00:00.
MinimumAdj. Close= 0.06 on 1986-03-2400:00:00.
CurrentAdj. Close= 89.47 on 2018-03-2700:00:00.
plot_stock
函数有许多可选参数。默认情况下,此方法绘制整个日期范围的调整后收盘价,但我们可以选择范围、要绘制的统计数据以及绘图类型。例如,如果我们想将价格的每日变化与调整后的交易量(股票数量)进行比较,我们可以在函数调用中指定这些。microsoft.plot_stock(start_date = '2000-01-03', end_date = '2018-01-16', stats = ['Daily Change', 'Adj. Volume'], plot_type='pct')
MaximumDailyChange= 2.08 on 2008-10-1300:00:00.
MinimumDailyChange= -3.34 on 2017-12-0400:00:00.
CurrentDailyChange= -5.47 on 2018-03-2700:00:00.
MaximumAdj. Volume= 591052200.00 on 2006-04-2800:00:00.
MinimumAdj. Volume= 7425503.00 on 2017-11-2400:00:00.
CurrentAdj. Volume= 53704562.00 on 2018-03-2700:00:00.
plot_stock
,我们可以调查任何日期范围内数据中的任何数量,并寻找与现实世界事件的相关性。现在,我们将继续讨论 Stocker 中更有趣的部分之一:赚假钱!microsoft.buy_and_hold(start_date='1986-03-13', end_date='2018-01-16', nshares=100)
MSFT Total buy and hold profit from1986-03-13 to 2018-01-16for100 shares = $8829.11
model, model_data = microsoft.create_prophet_model()
model.plot_components(model_data)
plt.show()
weekly_seasonality
属性将其添加到先知模型中:print(microsoft.weekly_seasonality)
microsoft.weekly_seasonality = True
print(microsoft.weekly_seasonality)
False
True
weekly_seasonality
的默认值为 False
,但我们更改了该值以在我们的模型中包含每周模式。然后我们再次调用 create_prophet_model
并绘制结果组件。microsoft.changepoint_date_analysis()
Changepoints sorted by slope rate of change (2nd derivative):
DateAdj. Close delta
4102016-09-0855.811396-1.378093
3382016-05-2650.1134531.116720
2172015-12-0252.572008-0.882359
4582016-11-1557.5898190.603127
482015-04-0237.6125900.442776
microsoft.changepoint_date_analysis(search = 'Microsoft profit')
TopRelatedQueries:
query value
0 microsoft non profit 100
1 microsoft office 60
2 apple profit 40
3 microsoft 36540
4 apple 35
RisingRelatedQueries:
query value
0 apple stock 170
1 microsoft 365130
2 apple profit 50
“Microsoft profit”
与微软股价之间似乎没有相关性。microsoft.changepoint_date_analysis(search = 'Microsoft Office')
TopRelatedQueries:
query value
0 microsoft office download 100
1 microsoft office 201090
2 office 201085
3 microsoft office 201375
4 office 201370
RisingRelatedQueries:
query value
0 microsoft office 2016 key 80300
1 office 201673200
2 download microsoft office 201672150
3 microsoft office 2016 mac 69350
4 microsoft office 201667650
Microsoft Office
的搜索量下降会导致股价上涨。也许有人应该让微软知道。model, future = microsoft.create_prophet_model(days=180)
PredictedPrice on 2018-07-21= $102.40
E N D
评论
英伟达Blackwell平台网络配置分析
本文来自“英伟达Blachwell平台网络配置详解”。GTC大会英伟达展示了全新的 Blackwell 平台系列产品,包括 HGX B100 服务器、NVLINK Switch、GB200Superchip Computer Node、Quantum X800 交换机和 CX8 网卡(InfiniB
架构师技术联盟
0
金融研究 | 使用Python测量关键审计事项的「信息含量」
Tips: 公众号推送后内容只能更改一次,且只能改20字符。如果内容出问题,或者想更新内容, 只能重复推送。为了更好的阅读体验,建议阅读本文博客版, 链接地址https://textdata.cn/blog/2023-01-13-information-content-of-critical-aud
大邓和他的Python
0
金融研究(更新) | 使用Python构建关键审计事项的「信息含量」
Tips: 公众号推送后内容只能更改一次,且只能改20字符。如果内容出问题,或者想更新内容, 只能重复推送。为了更好的阅读体验,建议阅读本文博客版, 链接地址https://textdata.cn/blog/2023-01-13-information-content-of-critical-aud
大邓和他的Python
0
谷歌员工爆料 Python 基础团队原地解散
转自 | 机器之心编辑 | 蛋酱什么?谷歌解雇了整个 Python 基础团队?「当与你直接共事的每个人,包括你的主管,都被裁员 —— 哦,是职位被削减,而你被要求安排他们的替代者入职,这些人被告知在不同的国家担任同样的职位,但他们并不为此感到高兴,这是很艰难的一天。」发布这一动态的 Tho
机器学习算法与Python实战
0
管理世界2024 | 使用管理层讨论与分析测量「企业人工智能指标」
Tips: 公众号推送后内容只能更改一次,且只能改20字符。如果内容出问题,或者想更新内容, 只能重复推送。为了更好的阅读体验,建议阅读本文博客版, 链接地址 https://textdata.cn/blog/2024-04-19-ai-improve-firm-productivity/
大邓和他的Python
0
谷歌员工爆料Python基础团队原地解散
机器之心报道编辑:蛋酱什么?谷歌解雇了整个 Python 基础团队?「当与你直接共事的每个人,包括你的主管,都被裁员 —— 哦,是职位被削减,而你被要求安排他们的替代者入职,这些人被告知在不同的国家担任同样的职位,但他们并不为此感到高兴,这是很艰难的一天。」发布这一动态的 Thomas Wouter
机器学习初学者
0
15种时间序列预测方法总结(包含多种方法代码实现)
向AI转型的程序员都关注了这个号👇👇👇在这篇文章中,我们将深入探讨时间序列预测的基本概念和方法。我们将首先介绍单元预测和多元预测的概念,然后详细介绍各种深度学习和传统机器学习方法如何应用于时间序列预测,包括循环神经网络(RNN)、一维卷积神经网络(1D-CNN)、Transformer、自回归模型(
机器学习AI算法工程
0
Python加速运行技巧
Python 是一种脚本语言,相比 C/C++ 这样的编译语言,在效率和性能方面存在一些不足。但是,有很多时候,Python 的效率并没有想象中的那么夸张。本文对一些 Python 代码加速运行的技巧进行整理。 0. 代码优化原则 本文会介绍不少的 Python 代码加速运行的技巧。在深入代码优化细
机器学习算法与Python实战
0