社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python金融应用之提取交易日+合并截面数据

西瓜财经资讯 • 5 年前 • 1326 次点击  

NO.160

2020.07.15

工欲善其事,必先利其器


//


  - 前言 -  


◆ ◆ ◆ ◆



今天,小咖来讲讲如何利用Python提取最近交易日、前一周交易日、前一月交易日、前一季度交易日等,并提取各个交易日的PE截面数据然后合并成单一表格,最终将导出以下结果。

资料来源:西瓜财经资讯


  - 利用python进行金融处理 -  


◆ ◆ ◆ ◆


为了实现以上功能需要进行以下完整步骤:


第一步:安装各种包

资料来源:西瓜财经资讯


第二步:提取交易日数据

资料来源:西瓜财经资讯


(1)首次使用Python的wind接口时,需要进行如下操作:wind客户端——量化——修复插件——修复Python接口。


(2)在导入“包”时已经导入了Windpy,并设置为w,之后的语句直接使用w即可。


(3)语句需要以w.start() 开始,否则所有与wind相关的程序都无法运行,但只要运行一次后不用重复运行。


(4)通常我们需要根据当天日期来查找最近交易日,为了实现python运行的自动化,先确定当天日期,主要使用today1=datetime.today() ,并利用datetime.strftime将其转为str。


(5)以当天日期为要素,然后根据wind的wsd函数得到沪深300最近365个交易日收盘价,这里为了便利不再将其转化为dateframe。注意得到的frame1为升序排列,因此最近交易日在最后一行,且一共有两列,第一列为日期。(为了下图的可视化小咖还是进行了dateframe转换的操作,但是如果单纯根据本文语句则无法显示如下dateframe)

资料来源:西瓜财经资讯


(6)设置timedelta这一空list,然后利用循环从表格中提取日期要素。frame1.Data[i][t]可以直接提取数据,i从0开始代表列数,t从0开始代表行数。由于frame1为升序排列,所以frame1.Data[0][-1]即代表第一列+倒数第二行,即前一交易日的日期数据。然后根据append将提取出的各个交易日合并至timedelta中。

资料来源:西瓜财经资讯


第三步:提取科创板成分上述交易日的PE数据

资料来源:西瓜财经资讯


(1)根据wset函数获取科创板成分,不用生成dateframe可以直接提取科创板代码,原理同上面的frame1。code的结果如下:

资料来源:西瓜财经资讯


(2)先用timedelta[0]即最近交易日得到一个有证券名称和和最近交易日PE的基础表。之前我们往往通过以下语句得到dateframe:


date1=w.wss(code,"sec_name,pe_ttm","tradeDate="+timedelta[0])


data1frame=pd.DataFrame(data=np.mat(date1.Data).T,index=date1.Codes)     


但是经过对wind的探索,发现通过增加"error,"和“usedf=True”可以直接生成dateframe,语句如下:


error,data1=w.wss(code,"sec_name,pe_ttm","tradeDate="+timedelta[0],usedf=True)

资料来源:西瓜财经资讯


(3)根据剩下交易日生成各个日期的PE截面数据并直接在循环中合并。

资料来源:西瓜财经资讯


第四步:导出自动命名的表格


(1)excel表格名称设置为——科创板动态市盈率'+today+',即可以得到动态命名的表格。

资料来源:西瓜财经资讯

资料来源:西瓜财经资讯

资料来源:西瓜财经资讯



  - 后言 -  


◆ ◆ ◆ ◆


想要获取源代码的小伙伴关注公众号,后台回复“Python金融应用之提取交易日+合并截面数据”即可。注意,源代码可以直接粘贴使用,而且是带文字说明的哦。


往期回顾:

一文看懂《积极型资产配置指南》的资产配置逻辑(全)

多周期资产配置法及大类资产配置应用

2020半年度大类资产及基金表现盘点

全面解读债券收益率曲线(全)

中债估值/YY估值的分析与对比

如何从护城河角度识别伟大的公司?(更)

最全!黄金行情与金价决定因素分析

美林时钟深度理解及在国内市场的应用(全)

一文看懂股债跷跷板效应

从本轮人民币对美贬值看汇率历史走势和影响因素(全)

中美股指历史走势对比及未来展望

python量化入门(一)——利用特定指标筛选股票并回测

Python金融应用之基金业绩评价体系构建

Python金融应用之利用Pyecharts做动态图

Python金融应用之雷达图制作

Python金融应用之制作热力图

Python金融应用之制作词云

Python金融应用之图表制作(八)——三维图

Python金融应用之图表制作(七)——蜡烛图

Python金融应用之图表制作(六)——色阶图

Python金融应用之图表制作(五)——合并图

Python金融应用之图表制作(四)——饼图

Python金融应用之图表制作(三)——散点图

Python金融应用之图表制作(二)——折线图

Python金融应用之图表制作(一)——柱状图

利用工具自动撰写报告(Python)——进阶版(一)

利用工具自动撰写报告(Python/Excel)——入门版











end



公众号:西瓜财经资讯

撰稿人:安静的金融美女子


记得点个在看哦

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/71395
 
1326 次点击