Python量化交易实战-10实时获取股票的数据函数封装
B站配套视频教程观看
实时获取股票的数据函数封装
实现股票数据获取的模块及方法
从这节课开始 我们就开始构建所谓的量化交易系统,量化交易平台功能模块。
上面是量化交易系统的功能模块图,主要分为3块,第一块是行情数据,
行情记录与历史数据:主要是股票的标的信息,财务数据,估值数据,存储的历史记录,将数据导出到csv中存储起来。
交易策略和回归测试模块:主要包含择时策略和选股策略,针对这些策略,为了保证数据的有效性和准确性,还需要对数据进行回测。
交易数据管理与查询:主要是自动交易,以及数据管理和查询,比如说递交委托,持仓信息和收益信息。
总的来说 量化交易系统以后端的功能为主,图表可视化
部分相对来说比较粗糙一点,我们可以利用matplotlib
或者echart
这样的可视化库去结合Python后端代码来实现数据的可视化,方便大家理解交易逻辑是什么样子的,如果在加上前端的功能实现的话,就会牵扯很多的功能模块,比如说我要设计页面框架,是选flask
还是django
。所以我们把前端尽量做的简单一点。
一、代码实操
这节课主要做2件事情。
第一个我们会在项目的根目录创建README.md
。
表示对这个项目的说明,如果你是程序员,就应该很熟悉,这个文档的作用就是告诉来使用我们这个项目的人,我这个源代码是干什么的,有哪些模块,调用关系有哪些。
第二个我们会在stock.py
这个文件当中,定义一些常用的数据获取方法。
def 获取所有A股股票列表
def 获取单个股票行情数据
def 导出股票行情数据
def 转换股票行情周期
def 获取单个股票财务指标
def 获取单个股票估值指标
1.1创建README.md
在项目的根目录创建一个叫做”README.md“文件:
# XuhssQuant## 功能模块### 行情记录(Data)#### stock
- 获取所有A股股票列表
- 获取单个股票行情数据
- 导出股票相关的数据
- 将数据转换股票行情指定周期
- 获取单个股票财务指标
- 获取单个股票估值指标
1.2定义常用的数据获取方法
然后在stock.py
中创建所有的函数
# 获取所有A股股票列表
def get_stock_list():stock_list = list(get_all_securities(['stock']).index)return stock_list
# 获取单个股票行情数据
def get_single_price(stock_code, timefrequency, startdate, enddate):data = get_price(stock_code, start_date=startdate, end_date=enddate,count=5, frequency=timefrequency)return data
导出股票行情数据 需要创建一个文件夹 用于存储行情数据:
# 导出股票相关的数据(type:存储的文件夹的名称[Finace/Price])
def export_data(data, filename, type):fileroot = 'D:/software/00/01推广/XuhssQuant/Data/' + type +'/' + filename + '.csv'data.to_csv(fileroot)print('已经存储成功,存储路径为', fileroot)
# 将数据转换股票行情指定周期
def transfer_price_freq(data, timefrequency):df_trans = pd.DataFrame()df_trans["open"] = data["open"].resample(timefrequency).first()df_trans['close'] = data['close'].resample(timefrequency).last()df_trans['high'] = data['high'].resample(timefrequency).max()df_trans['low'] = data['low'].resample(timefrequency).min()df_trans['volume(sum)'] = data['volume'].resample(timefrequency).sum()df_trans['money(sum)'] = data['money'].resample(timefrequency).sum()return df_trans
# 获取单个股票财务指标
def get_single_finance(code, date, statDate):data = get_fundamentals(query(indicator).filter(indicator.code == code), date = date, statDate=statDate)return data
# 获取单个股票估值指标
def get_single_valuation(code, date, statDate):data = get_fundamentals(query(valuation).filter(valuation.code == code), date = date, statDate=statDate)return data
Python量化交易实战-10实时获取股票的数据函数封装相关推荐
- Python量化交易实战-05什么是股票?
B站配套视频教程观看 一.股票的由来 股票至今已有将近似400年的历史.最早的股市产生于1602年荷兰和英国成立的海外贸易公司.这些公司通过募集股份资本而建立,具有明显的股份公司特征:具有法人地位:成 ...
- 【python量化交易学习】pandas获取mysql数据,使用pyecharts画K线图,ma移动均线。
将pyecharts官方提供的数据源,替换成已经存在mysql中的数据.画出专业的k线图(k线+ma移动均线+交易额柱状图(单位是千)) 参考: [python量化交易学习]pandas获取tusha ...
- 《深入浅出Python量化交易实战》:散户也能学会的数字化交易策略
前言 您可能不知道,许多专业的交易机构已经采用设定程序完成自动化交易,通过机器语言,解密盘面的走势,从而实现持续盈利的目的. (文末送读者福利) 这并非什么秘密,他们正是借助了这样的数字化工具进行操作 ...
- Python量化交易实战-41EasyTrader自动化模拟真实交易
B站配套视频教程观看 EasyTrader自动化模拟真实交易 来到官方文档的使用部分: https://easytrader.readthedocs.io/zh/master/usage/ 一.用法 ...
- Python量化交易实战-38使用开源项目回测双均线策略
B站配套视频教程观看 使用PyAlgoTrade回测双均线策略 双均线策略:长短周期均线,通过金叉,死叉的方式买入卖出股票,获取收益的策略. 回顾上节课代码的部分,上节课完成了可视化代码的部分, 主要 ...
- Python量化交易实战-40easytrader开发环境安装
B站配套视频教程观看 初始化easytrader开发环境 一.安装对象 1.1客户端安装 股票的客户端,可以是券商,比如说华泰.海通.也可以是第三方平台,东方财富.同花顺.但是由于easytrader ...
- 很燃基于掘金量化平台的《Python量化交易实战》新书介
原 很燃!基于掘金量化平台的<Python量化交易实战>新书简介 内容简介: 在目前不断变化.蓬勃发展的中国资本市场,量化投资作为新兴的投资方法,引来越来越多的关注,使用量化投资技术的证券 ...
- 深入浅出Python量化交易实战--笔记01
第1章 从零开始 本书源于一个真实的故事,故事的主角是一位名叫小瓦的姑娘. 小瓦出生在一个普通的家庭,父母都是老实淳朴的普通人,靠着并不 丰厚的收入把小瓦养育成人.18岁那年,小瓦考上了一所不好不坏的 ...
- 深入浅出Python量化交易实战--第1章 从零开始
本书源于一个真实的故事,故事的主角是一位名叫小瓦的姑娘. 小瓦出生在一个普通的家庭,父母都是老实淳朴的普通人,靠着并不 丰厚的收入把小瓦养育成人.18岁那年,小瓦考上了一所不好不坏的 大学,所学专业是 ...
最新文章
- 使用jdk生成ssl证书文件
- chrome 禁用恢复页面提示_有哪些很值得推荐的Chrome插件?精选7款实用插件
- Oracle inline view 简介
- linux下文件描述符的介绍
- 给超链接(a标签)加onclick事件
- artTemplate
- 【NOIP2017】逛公园 拆点最短路+拓扑(记忆化搜索
- DirectX_11_游戏编程入门_1
- Hadoop系列-HDFS HA高可用集群
- 10个开源且优秀的后台管理系统UI面板
- 将三角形绕点b顺时针旋转90度_模型 | 图形旋转与翻折题型汇编
- 解决RichEdit line insertion error的方法(转载)
- 使用IB时设置textView属性崩溃
- 5.2自动扫描及装配数据
- 三次hermite插值多项式例题_2点三次Hermite插值多项式解析.ppt
- 2020android加固,360加固2020最新脱壳全套图文教程-一一网络
- Office Visio 2007 中文版 安装
- AV终结者新变种(随机7位字母病毒)的分析
- java simon_Java程序监控API Java Simon
- 为什么天蝎座出互联网大佬,我来告诉你原因!
热门文章
- live555中关于mpeg4的处理
- 为什么说JDK中的Stack设计是失败的
- 利用Kangle的HTTP-only,Cookie防XSS跨站攻击
- Qt编写物联网管理平台20-控制器管理
- 云南省行政村谷歌图层_如何根据行政边界(省市区县乡镇)下载地图
- LNMP搭建(Centos 7 源码包)
- Linux LNMP源码架构部署 | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | 超详细
- JavaScript apply 和 call 和 bind,原型和原型链的理解
- 秘密显示技术:戴上眼镜才能看到你的内容
- 振弦采集模块(智能振弦传感器测量模块)其它常见问题