【python量化】python通过新浪财经获取金融衍生品历史数据
写在前面
量化回测必不可少的就是历史数据了,一般要求数据精度比较高的方式就是从数据服务商处购买数据服务,它们一般会将历史数据进行整理,免去了我们需要数据清洗的过程,提供数据服务的机构有很多,如RQdata、Wind等。如果对数据的精度要求不高,周期也没有什么要求的话,可以通过一些免费的Api接口来获取,如tushare、yahoo以及新浪财经。由于之前用过新浪财经进行爬取历史数据,所以本文先整理和总结一下新浪财经获取历史数据的方式。
获取股票历史数据
股票支持的周期有5m、15m、30m、60m以及日线,新浪股票数据API接口如下:
5分钟:
https://quotes.sina.cn/cn/api/json_v2.php/CN_MarketDataService.getKLineData?symbol=sh000001&scale=5&datalen=1023
15分钟:
https://quotes.sina.cn/cn/api/json_v2.php/CN_MarketDataService.getKLineData?symbol=sh000001&scale=15&datalen=1023
30分钟:
https://quotes.sina.cn/cn/api/json_v2.php/CN_MarketDataService.getKLineData?symbol=sh000001&scale=30&datalen=1023
60分钟:
https://quotes.sina.cn/cn/api/json_v2.php/CN_MarketDataService.getKLineData?symbol=sh000001&scale=60&datalen=1023
其中symbol参数就是我们需要的品种的代码,scale是周期,datalen是获取数据的长度,最大就是1023。
获取期货历史数据
商品期货
商品期货支持的周期有5m、15m、30m、60m以及日线,先贴一下新浪期货的商品期货API接口:
5分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine5m?symbol=rb191015分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine15m?symbol=rb191030分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine30m?symbol=rb191060分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine60m?symbol=rb1910日K线:
http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesDailyKLine?symbol=rb1910
在使用时,只需要把其中的rb1910换成需要的合约即可。得到的数据是以当前时刻为基准,往前推移一段时间的历史数据。
股指期货
股指期货支持的周期有5m、15m、30m、60m以及日线,先贴一下新浪财经的股指期货API接口:
5分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/CffexFuturesService.getCffexFuturesMiniKLine5m?symbol=IF190815分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/CffexFuturesService.getCffexFuturesMiniKLine15m?symbol=IF190830分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/CffexFuturesService.getCffexFuturesMiniKLine30m?symbol=IF190860分钟:
http://stock2.finance.sina.com.cn/futures/api/json.php/CffexFuturesService.getCffexFuturesMiniKLine60m?symbol=IF1908日线:
http://stock2.finance.sina.com.cn/futures/api/json.php/CffexFuturesService.getCffexFuturesDailyKLine?symbol=IF1908
通过上面的股票、商品期货和股指期货接口得到的是json格式的数据,所以需要对得到的json数据进行解析,下面是获取历史数据的代码,如需要不同周期或者不同品种的数据只需要更改一下url即可,下面的代码以获取期货数据为例:
from urllib import request
import jsondef get_data(id):url_60m = 'http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine5m?symbol='url = url_60m + idreq = request.Request(url)rsp = request.urlopen(req)res = rsp.read()res_json = json.loads(res)bar_list = []res_json.reverse()for line in res_json:bar = {}bar['date'] = line[0]bar['open'] = float(line[1])bar['high'] = float(line[2])bar['low'] = float(line[3])bar['close'] = float(line[4])bar['vol'] = int(line[5])bar_list.append(bar)print(bar_list)if __name__ == '__main__':get_data('rb1910')
【python量化】python通过新浪财经获取金融衍生品历史数据相关推荐
- Python量化交易实战:获取股票数据并做分析处理
量化交易(也称自动化交易)是一种应用数学模型帮助投资者进行判断,并且根据计算机程序发送的指令进行交易的投资方式,它极大地减少了投资者情绪波动的影响.量化交易的主要优势如下: 快速检测 客观.理性 自动 ...
- python获取股票历史数据_量化交易之如何获取股票历史数据并存为csv
量化研究尤其是进行基于价值投资的量化研究,需要上市公司的历史估值数据,如市盈率PE,市净率PB,或者市销率PS,市现率PCF.而有的人喜欢用exce或者csv文件的格式存放数据并且分析.我这里介绍一个 ...
- Python量化入门系列:获取数据-Tushare获取股票数据(1)
做量化用到的数据一般包括二级市场各种数据.宏观经济各种数据以及一些特殊需求的网页数据,需要有通过python获取数据.常见的获取数据方式有三种: 一是通过SQL语言从数据库获取数据,适用于二级市场和宏 ...
- python量化分析系列之---使用python获取股票历史数据和实时分笔数据
财经数据接口包tushare的使用(一) Tushare是一款开源免费的金融数据接口包,可以用于获取股票的历史数据.年度季度报表数据.实时分笔数据.历史分笔数据,本文对tushare的用法,已经存在的 ...
- python量化分析系列之---5行代码实现1秒内获取一次所有股票的实时分笔数据
python量化分析系列之---5行代码实现1秒内获取一次所有股票的实时分笔数据 最近工作太忙了,有一个星期没有更新文章了,本来这一期打算分享一些对龙虎榜数据的分析结果的,现在还没有把数据内的价值很好 ...
- python量化投资必背代码-量化投资:用Python实现金融数据的获取与整理
小编说:数据可以说是量化投资的根本,一切投资策略都是建立在数据基础上的.本文以优矿网为例,带领大家用Python实现金融数据的获取与整理. 本文选自<Python与量化投资:从基础到实战> ...
- python获取时间周数_【手把手教你】Python量化策略风险指标
如何衡量一个量化策略的好坏?一是比较稳定的收益,二是有严谨的回测,三是有清晰的逻辑.--刘富兵 引言 引言尽管过去不能代表未来,通过历史回测来评估量化策略仍然是量化投资非常重要的一环.量化回测过程中常 ...
- 量化金融投资及其python应用_量化投资:用Python实现金融数据的获取与整理
小编说:数据可以说是量化投资的根本,一切投资策略都是建立在数据基础上的.本文以优矿网为例,带领大家用Python实现金融数据的获取与整理. 本文选自<Python与量化投资:从基础到实战> ...
- 【python量化交易学习】pandas获取mysql数据,使用pyecharts画K线图,ma移动均线。
将pyecharts官方提供的数据源,替换成已经存在mysql中的数据.画出专业的k线图(k线+ma移动均线+交易额柱状图(单位是千)) 参考: [python量化交易学习]pandas获取tusha ...
最新文章
- 4、数据类型二:Lists
- 潭州Java中级班(day_05)
- 区块链技术公司谈找到合适的激励机制
- OrderOnline——设计概述
- ROS-WIKI——编写简单的发布者和订阅者(C++和Python版本)
- 记录数据库内一条记录的更新时间
- JavaScript正则表达式补充
- mysql查询与索引优化2
- linux debian安装ssh,Ubuntu Linux上安装SSH和vsFTPd的方法
- 使用代码段遍历,枚举类型Enum
- 运输问题基本解 最小元素法
- 拍拍贷第三届“魔镜杯”启动 :10万美金邀你“秀出你的算法!”
- 腾讯广点通DMP广告数据提交回传对接方法解析
- 免费报表软件有哪些?5款热门工具
- 分享55个计数统计PHP源码,总有一款适合你
- Beer Mugs(思维)
- Sigcomm2019 High Precision Congestion Control(HPCC)论文阅读笔记
- python to apk
- 惩罚宝宝十个科学方法
- 计算机美化标题教案,计算机基础教案标题.doc
热门文章
- 华为手机大变?余承东被传离职转岗,进军美国受阻惹的祸?
- 100个高频Spring面试题,助你一臂之力
- Git搭建私有服务器
- win10卸载IE11后无法安装,启用windows功能的复选框消失。该如何解决?
- JETSON NANO清除磁盘(SD卡无法被电脑识别)
- 金大侠眼光果然犀利:《笑傲江湖》只值一块钱
- 知识点六:jQuery遍历-同胞Siblings(), next(), nextAll()
- R语言中使用UpSet包绘制多集合Venn图
- ps aux|grep xxx详解
- java 多线程 售票_Java 多线程 之 火车站售票实例