当前位置: 首页 > news >正文

校园旅游网站建设方案策划书整合营销网站

校园旅游网站建设方案策划书,整合营销网站,网站系统建设的主要意义,渠道建设网站用qteasytushare实现金融数据本地化存储及访问 目的什么是qteasy什么是tushare为什么要本地化使用qteasy创建本地数据仓库qteasy支持的几种本地化仓库类型配置本地数据仓库配置tushare 的API token 配置本地数据源 —— 用MySQL数据库作为本地数据源下载金融历史数据 数据的定期… 用qteasytushare实现金融数据本地化存储及访问 目的什么是qteasy什么是tushare为什么要本地化使用qteasy创建本地数据仓库qteasy支持的几种本地化仓库类型配置本地数据仓库配置tushare 的API token 配置本地数据源 —— 用MySQL数据库作为本地数据源下载金融历史数据 数据的定期下载更多用法请参见文档 目的 做量化投资或者对量化交易感兴趣的朋友应该都需要用到大量的金融数据例如股票价格基金净值、上市公司技术指标和财务指标等等。但是如何有效、可靠地获取金融数据并且有效地使用却是一个令人头疼的问题。在这篇文章中我想跟大家交流我的使用心得分享我的最佳实践——建立一个本地数据仓库、定期拉取数据按照这个最佳实践可以实现以下功能 数据本地化存储实现数据高速查询没有数量限制定期下载数据实现去重和清洗保持本地数据最新 以上的功能通过qteasytushare来实现可以比较容易地整合到量化投资系统里去。 什么是qteasy qteasy是本人正在开发的一个快速量化交易工具包完全免费使用。利用这个工具包可以快速灵活地生成各种量化交易策略生成历史数据并回测策略的表现有针对性地优化策略的性能还能模拟实盘自动化交易不仅如此qteasy还内嵌了tushare可以快速建立一个本地数据仓库实现大量金融数据的快速下载、清洗、存储和快速调用。qteasy目前最新版本为v1.0.14并且正在不断迭代中最新版本可以通过pip安装。 python -m pip install qteasyqteasy的Github项目地址在这里 请访问qteasy文档获取更多信息 什么是tushare tushare是一个立足于国内的金融数据包。通过它可以相当容易地获取包括股票、基金、期货在内的大量金融数据使用非常简便而且基础功能免费。 tushare的早期版本是完全免费的不过功能也相对单一后来升级到了tushare pro之后支持的数据种类大大扩展同时也开启了积分的功能部分高级数据获取功能是需要一定积分的积分通常需要付费而且每年都需要支付。不过平心而论相比早期版本升级到pro版本后数据的丰富程度、数据提取速度和稳定性、可靠性都大大提升相比获得的提升支付一点点费用完全可以说是物超所值的。 这里是tushare的 文档链接。使用pip安装qteasy时会自动安装tushare。 为什么要本地化 现在有一些金融数据包提供了在线实时读取金融数据的功能但是如果每次都使用在线下载的方式获取金融数据会有不少问题 网络连接不够可靠不管网络速度有多快从服务器上获取数据的速度总归是一个大问题尤其是需要获取大量数据的时候还容易出现连接失败的问题。单次下载信息量受限tushare有一些特殊的下载限制要求比如某些数据单次下载最多不能超过5000行数据或者某些数据单次下载限定了股票的数量等等为了获取完整的数据比如所有指数的指标就必须分批下载进一步降低速度。增加服务器负载当然这是从tushare的角度来考虑的如果所有人都依赖于从服务器上下载数据tushare的服务器很快就会超负荷 因此最佳实践是使用qteasy建立一个本地数据仓库并创建一个定期拉取程序需要数据的时候从本地数据仓库中获取同时定期运行数据拉取程序将最新的数据下载并合并到本地数据仓库中确保数据仓库中的数据时时最新。 使用qteasy创建本地数据仓库 安装好qteasy后只需要简单的配置就可以快速建立数据仓库了。qteasy数据仓库内置了相当完整的数据类型清单涵盖股票、指数、基金、期货、期权等投资品种数据类型除量价、K线数据以外还内置了几乎所有常见的股票技术指标、宏观经济数据、上市公司基本信息以及完整的财务报表数据等等信息。 部分支持的数据如下表 所有上面提到的这些信息qteasy都给它们赋予了一个唯一的数据类型标识通过这个数据类型标识用户可以用一行代码就从网上下载相应的历史数据并将它们存储到本地。在下载的过程中qteasy会自动完成数据清洗、归类、去重并将数据分门别类存储到多张不同的数据表中。 在需要数据的时候同样只要通过数据类型标识也仅仅通过一行代码即可从数据仓库中读取相应的数据同时还具备自动的数据频率调整、插值功能也具备较完善的数据可视化功能以方便用户使用。 qteasy支持的几种本地化仓库类型 金融数据的量是非常大的尤其是高频数据。比如仅沪深股市所有上市股票的分钟级K线数据量就超过200GB其余期货、期权、基金、指数等数据量也在几十到数百GB的量级。不过如果是日频数据例如过去20年所有A股股票的日K线数据全部加起来也不过只有10G不到。 因此建议大家根据自己的数据使用频率来规划相应的磁盘空间如果需要使用高频数据建议使用NAS系统或者至少需要有一个足够大的硬盘。首先规划好至少1TB的磁盘空间准备用来存储所需的数据是必要的。如果只需要短期内的低频数据本地文件存储也就足够了。 使用qteasy可以选择采用不同的文件形式来存储本地数据仓库 本地文件存储 (默认文件格式为csv除此以外还可以选择hdf5和feather文件类型)mysql数据库存储 两种方法各自有优缺点。默认的csv文件优点在于上手简单不需要特殊配置而且文件内容可以直接使用Excel等软件查看支持超大的文件但是文件太大用Excel就不容易打开了但是读取速度慢安全性和稳定性差mysql正好相反上手稍微复杂一些需要配置数据库需要有一些数据库基础但是速度快、稳定性好。 还是那句话各人需要根据自己的实际需要选择合适的存储方式如果需要用到大量高频数据首选mysql作为数据仓库存储介质如果数据量不是特别大的话csv文件系统也可以胜任工作。 配置本地数据仓库 qteasy通过tushare金融数据包来获取大量的金融数据用户需要自行申请tushare的API Token获取相应的权限和积分。详情请参考这里。 因此在使用qteasy之前需要对本地数据源和tushare进行必要的配置。在QT_ROOT_PATH/qteasy/路径下打开配置文件qteasy.cfg可以看到下面内容 # qteasy configuration file # following configurations will be loaded when initialize qteasy# example: # local_data_source database配置tushare 的API token 将你获得的tushare API token添加到配置文件中如下所示 tushare_token 你的tushare API Token 配置本地数据源 —— 用MySQL数据库作为本地数据源 默认情况下qteasy使用存储在data/路径下的.csv文件作为数据源不需要特殊设置。 如果设置使用mysql数据库作为本地数据源在配置文件中添加以下配置 local_data_source database local_db_host host name local_db_port port number local_db_user user name local_db_password password local_db_name database name关闭并保存好配置文件后重新导入qteasy就完成了数据源的配置可以开始下载数据到本地了。 下载金融历史数据 要下载金融价格数据使用qt.refill_data_source()函数。下面的代码下载2021及2022两年内所有股票、所有指数的日K线数据同时下载所有的股票和基金的基本信息数据。 根据网络速度下载数据可能需要十分钟左右的时间如果存储为csv文件将占用大约200MB的磁盘空间 import qteasy as qt qt.refill_data_source(tables[stock_daily, # 股票的日线价格index_daily, # 指数的日线价格basics], # 股票和基金的基本信息start_date20210101, # 下载数据的开始时间end_date20221231, # 下载数据的截止时间 )数据下载到本地后可以使用qt.get_history_data()来获取数据如果同时获取多个股票的历史数据每个股票的历史数据会被分别保存到一个dict中。 import qteasy as qt qt.get_history_data(htypesopen, high, low, close, # 获取的数据类型shares000001.SZ, 000300.SH, # 股票代码start20210101, # 开始日期end20210115) # 结束日期运行上述代码会得到一个Dict对象包含两个股票000001.SZ以及000005.SZ的K线数据数据存储为DataFrame {000001.SZ:open high low close2021-01-04 19.10 19.10 18.44 18.602021-01-05 18.40 18.48 17.80 18.172021-01-06 18.08 19.56 18.00 19.56... 2021-01-13 21.00 21.01 20.40 20.702021-01-14 20.68 20.89 19.95 20.172021-01-15 21.00 21.95 20.82 21.00,000300.SH:open high low close2021-01-04 5212.9313 5284.4343 5190.9372 5267.71812021-01-05 5245.8355 5368.5049 5234.3775 5368.50492021-01-06 5386.5144 5433.4694 5341.4304 5417.6677...2021-01-13 5609.2637 5644.7195 5535.1435 5577.97112021-01-14 5556.2125 5568.0179 5458.6818 5470.45632021-01-15 5471.3910 5500.6348 5390.2737 5458.0812}除了价格数据以外qteasy还可以下载并管理包括财务报表、技术指标、基本面数据等在内的大量金融数据详情请参见qteasy文档 股票的数据下载后使用qt.candle()可以显示股票数据K线图。 data qt.candle(000300.SH, start2021-06-01, end2021-8-01, asset_typeIDX)qteasy的K线图函数candle支持通过六位数股票/指数代码查询准确的证券代码也支持通过股票、指数名称显示K线图 qt.candle()支持功能如下 显示股票、基金、期货的K线显示复权价格显示分钟、 周或月K线显示不同移动均线以及MACD/KDJ等指标 详细的用法请参考qteasy文档示例如下(请先使用qt.refill_data_source()下载相应的历史数据) # 场内基金的小时K线图 qt.candle(159601, start 20220121, freqh) # 沪深300指数的日K线图 qt.candle(000300, start 20200121) # 股票的30分钟K线复权价格 qt.candle(中国电信, start 20211021, freq30min, adjb) # 期货K线三条移动均线分别为9天、12天、26天 qt.candle(沪铜主力, start 20211021, mav[9, 12, 26]) # 场外基金净值曲线图复权净值不显示移动均线 qt.candle(000001.OF, start20200101, asset_typeFD, adjb, mav[])生成的K线图可以是一个交互式动态K线图请注意K线图基于matplotlib绘制在使用不同的终端时显示功能有所区别某些终端并不支持 动态图表详情请参阅 matplotlib文档 在使用动态K线图时用户可以用鼠标和键盘控制K线图的显示范围 鼠标在图表上左右拖动可以移动K线图显示更早或更晚的K线鼠标滚轮在图表上滚动可以缩小或放大K线图的显示范围通过键盘左右方向键可以移动K线图的显示范围显示更早或更晚的K线通过键盘上下键可以缩小或放大K线图的显示范围在K线图上双击鼠标可以切换不同的均线类型在K线图的指标区域双击可以切换不同的指标类型MACDRSIDEMA 数据的定期下载 复制下面的源码定期运行即可定期下载相应数据到数据仓库中供量化交易研究或实盘运行使用源码如下 import qteasy as qt import pandas as pd# 下载低频data和event数据下载周期较长以cover所有的季度月度周度数据 每月下载 tables stock_weekly, stock_monthly, index_weekly, index_monthly, tables income, balance, cashflow, financial, forecast, express, comp, report, events today pd.to_datetime(today) # 结束日期为今天 begin pd.to_datetime(today - pd.Time_delta(30, unitd) # 开始日期为30天以前 qt.refill_data_source(tablestables, start_datebegin.strftime(%Y%m%d), end_datetoday.strftime(%Y%m%d), parallelTrue, merge_typeupdate,reversed_par_seqTrue)# 分批下载中频数据下载周期较短以减少下载负载 每周下载 tables adj, stock_daily, fund_daily, fund_nav, future_daily, options_daily, stock_indicator, stock_indicator2, index_indicator, shibor, libor, hibor, index_daily today pd.to_datetime(today) # 结束日期为今天 begin pd.to_datetime(today - pd.Time_delta(7, unitd) # 开始日期为7天以前 qt.refill_data_source(tablestables, start_datebegin.strftime(%Y%m%d), end_datetoday.strftime(%Y%m%d), parallel True, merge_typeupdate,reversed_par_seqTrue)# 分批下载高频数据下载周期最短以减少下载负载 每天下载 tables adj, stock_1min, stock_5min, stock_15min, stock_30min, stock_hourly # tables adj, index_1min, index_5min, index_15min, index_30min, index_hourly # tables fund_1min, fund_5min, fund_15min, fund_30min, fund_hourly # tables adj, future_daily, options_daily today pd.to_datetime(today) # 结束日期为今天 begin pd.to_datetime(today - pd.Time_delta(1, unitd) # 开始日期为1天以前 qt.refill_data_source(tablestables, start_datebegin.strftime(%Y%m%d), end_datetoday.strftime(%Y%m%d), parallel True, merge_typeupdate,reversed_par_seqTrue)更多用法请参见文档 关于DataSource对象的更多详细介绍请参见qteasy文档
http://www.ihoyoo.com/news/119246.html

相关文章:

  • 做兼职网站有哪些广西建设厅网站绿色建筑标识
  • 新余专业的企业网站建设公司可做设计任务的网站
  • 如何维护建设网站长沙网站制
  • 黄冈网站建设收费邯郸哪儿能做网站
  • 在北京建设教育协会的网站抖音小程序在哪里
  • 微信小程序下单助手商家版网站文章优化流程方案
  • js模拟点击网站的按钮宝塔系统怎么建设网站
  • 网站怎样做seo怎样搭建一个网站
  • 网页制作与网站建设论文全球最大的外贸平台
  • 海尔商城网站建设维护网站开发技术的现状及发展趋势
  • 网站开发职业要求江苏省城乡建设网站
  • 网站网页的书签怎么做门户网站开发需要多少钱
  • 邯郸网站制作个人网站怎么做引流呢
  • wordpress能大网站wordpress影视源码
  • 深圳的网站建设公司有哪些织梦网站怎么做seo
  • 多语言企业网站源码常用的软件下载网站
  • 下载好了网站模板怎么开始做网站?wordpress过期
  • 百度推广会帮你做网站不域名备案需要多久
  • 做网站要准备的需求自动升级wordpress失败
  • 为什么 要建设网站做建材网站
  • 网站建设php心得体会网站建设方案意见
  • 公司网站如何做百度收录网站备案初审
  • wordpress 手动下一页win10优化工具
  • 小企业网站维护什么东西佛山建网站价格
  • 网站开发一般要多少钱建设一个网站多少钱
  • 印度网站域名奥数辅导机构网站建设
  • 四川德充建设集团有限公司网站阜创汇网站建设名额
  • 自己做网站需要花钱吗沈阳seo专业培训
  • 网站云解析域名解析蚌埠市网站建设
  • wordpress网站导航模板seo优化方法有哪些