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实时获取股票的数据函数封装相关推荐

  1. Python量化交易实战-05什么是股票?

    B站配套视频教程观看 一.股票的由来 股票至今已有将近似400年的历史.最早的股市产生于1602年荷兰和英国成立的海外贸易公司.这些公司通过募集股份资本而建立,具有明显的股份公司特征:具有法人地位:成 ...

  2. 【python量化交易学习】pandas获取mysql数据,使用pyecharts画K线图,ma移动均线。

    将pyecharts官方提供的数据源,替换成已经存在mysql中的数据.画出专业的k线图(k线+ma移动均线+交易额柱状图(单位是千)) 参考: [python量化交易学习]pandas获取tusha ...

  3. 《深入浅出Python量化交易实战》:散户也能学会的数字化交易策略

    前言 您可能不知道,许多专业的交易机构已经采用设定程序完成自动化交易,通过机器语言,解密盘面的走势,从而实现持续盈利的目的. (文末送读者福利) 这并非什么秘密,他们正是借助了这样的数字化工具进行操作 ...

  4. Python量化交易实战-41EasyTrader自动化模拟真实交易

    B站配套视频教程观看 EasyTrader自动化模拟真实交易 来到官方文档的使用部分: https://easytrader.readthedocs.io/zh/master/usage/ 一.用法 ...

  5. Python量化交易实战-38使用开源项目回测双均线策略

    B站配套视频教程观看 使用PyAlgoTrade回测双均线策略 双均线策略:长短周期均线,通过金叉,死叉的方式买入卖出股票,获取收益的策略. 回顾上节课代码的部分,上节课完成了可视化代码的部分, 主要 ...

  6. Python量化交易实战-40easytrader开发环境安装

    B站配套视频教程观看 初始化easytrader开发环境 一.安装对象 1.1客户端安装 股票的客户端,可以是券商,比如说华泰.海通.也可以是第三方平台,东方财富.同花顺.但是由于easytrader ...

  7. 很燃基于掘金量化平台的《Python量化交易实战》新书介

    原 很燃!基于掘金量化平台的<Python量化交易实战>新书简介 内容简介: 在目前不断变化.蓬勃发展的中国资本市场,量化投资作为新兴的投资方法,引来越来越多的关注,使用量化投资技术的证券 ...

  8. 深入浅出Python量化交易实战--笔记01

    第1章 从零开始 本书源于一个真实的故事,故事的主角是一位名叫小瓦的姑娘. 小瓦出生在一个普通的家庭,父母都是老实淳朴的普通人,靠着并不 丰厚的收入把小瓦养育成人.18岁那年,小瓦考上了一所不好不坏的 ...

  9. 深入浅出Python量化交易实战--第1章 从零开始

    本书源于一个真实的故事,故事的主角是一位名叫小瓦的姑娘. 小瓦出生在一个普通的家庭,父母都是老实淳朴的普通人,靠着并不 丰厚的收入把小瓦养育成人.18岁那年,小瓦考上了一所不好不坏的 大学,所学专业是 ...

最新文章

  1. 使用jdk生成ssl证书文件
  2. chrome 禁用恢复页面提示_有哪些很值得推荐的Chrome插件?精选7款实用插件
  3. Oracle inline view 简介
  4. linux下文件描述符的介绍
  5. 给超链接(a标签)加onclick事件
  6. artTemplate
  7. 【NOIP2017】逛公园 拆点最短路+拓扑(记忆化搜索
  8. DirectX_11_游戏编程入门_1
  9. Hadoop系列-HDFS HA高可用集群
  10. 10个开源且优秀的后台管理系统UI面板
  11. 将三角形绕点b顺时针旋转90度_模型 | 图形旋转与翻折题型汇编
  12. 解决RichEdit line insertion error的方法(转载)
  13. 使用IB时设置textView属性崩溃
  14. 5.2自动扫描及装配数据
  15. 三次hermite插值多项式例题_2点三次Hermite插值多项式解析.ppt
  16. 2020android加固,360加固2020最新脱壳全套图文教程-一一网络
  17. Office Visio 2007 中文版 安装
  18. AV终结者新变种(随机7位字母病毒)的分析
  19. java simon_Java程序监控API Java Simon
  20. 为什么天蝎座出互联网大佬,我来告诉你原因!

热门文章

  1. live555中关于mpeg4的处理
  2. 为什么说JDK中的Stack设计是失败的
  3. 利用Kangle的HTTP-only,Cookie防XSS跨站攻击
  4. Qt编写物联网管理平台20-控制器管理
  5. 云南省行政村谷歌图层_如何根据行政边界(省市区县乡镇)下载地图
  6. LNMP搭建(Centos 7 源码包)
  7. Linux LNMP源码架构部署 | Nginx服务 | Mysql服务 | php服务 | 论坛源码编译安装 | 超详细
  8. JavaScript apply 和 call 和 bind,原型和原型链的理解
  9. 秘密显示技术:戴上眼镜才能看到你的内容
  10. 振弦采集模块(智能振弦传感器测量模块)其它常见问题