赞
踩
量化交易是使用计算机技术(本文主要指使用Python)帮助投资者分析大量的数据从而制定投资策略,这是属于金融和计算机的交叉领域。
本文是用于指导利用Python进行量化交易的初学者入门使用,限于本人水平有限,大家轻点喷~
为了提取股票数据,我们需要用到Quandl 的 API,这个平台拥有大量的经济和金融数据。
首先我们需要安装Python 3和 virtualenv,并通过
virtualenv --python=/usr/bin/python3 <name of env>
创建虚拟环境。
然后使用
source <env_name>/bin/activate
激活虚拟环境。
再使用pip安装jupyter-notebook:
pip install jupyter-notebook
然后再安装pandas
,quandl
和numpy
包。
最后运行jupyter-notebook。
我们先导入需要的包。
import pandas as pd
import quandl as q
这里pandas可以帮助我们进行数据操作和绘图。
之后我们就调用Quandl API。
q.ApiConfig.api_key = "<API key>”
msft_data = q.get("EOD/MSFT", start_date="2010-01-01", end_date="2019-01-01")
msft_data.head()
在这段代码,我们首先设置了需要的api_key。这个需要去官网获取。
然后调用get方法来获取微软从2010年1月1日到2019年1月1日的股票价格。
然后是查看获取的数据集的前5行。
我们先了解数据集的数据构成,这个可以通过info方法查看。
如上图所示,我们可以了解到这些数据包含股票的价格信息。
如股票的开盘价和收盘价、调整后的开盘价以及收盘价,这个调整是将股息分配、股票拆分等行为考虑在内,还包括交易量和当日最高和最低价格。
我们还可以通过describe方法分析数据集的最大值、最小值、平均值等数据。
我们还可以对这些数据继续进行加工。
比如再进行一次采样。将时间间隔调整为每月、每季度或每年。
我们接下来进行财务回报的计算。
我们要使用pct_change()方法。
import numpy as np
daily_close = msft_data[['Adj_Close']]
daily_return = daily_close.pct_change()
daily_return.fillna(0, inplace=True)
print(daily_return)
我们使用调整的收盘价来计算从开始时间到各个时间的回报。将这个值乘100就得到回报百分比了。
我们也可以来计算时间间隔为月的回报率:
mdata = msft_data.resample('M').apply(lambda x: x[-1])
monthly_return = mdata.pct_change()
monthly_return.fillna(0, inplace=True)
print(monthly_return)
部分代码参考至:www.codementor.io/blog/quanti…
当下这个大数据时代不掌握一门编程语言怎么跟的上脚本呢?当下最火的编程语言Python前景一片光明!如果你也想跟上时代提升自己那么请看一下.
感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。