600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 利用通达信软件导出所有股票历史行情

利用通达信软件导出所有股票历史行情

时间:2021-11-30 01:29:07

相关推荐

利用通达信软件导出所有股票历史行情

独角兽企业重金招聘Python工程师标准>>>

在通达信官网提供了所有券商行情的历史数据下载地址:/list_66_69.html

例如我们只需要A股日线数据,只需要下载“上证所有证券日线”和“深证所有证券日期”即可。这个数据是包含了指数数据的。

下载后得到shlday.zip和szlday.zip的压缩文件包。如果要导入通达信,假如我通达信安装在C:\new_tdx\,那么分别解压到C:\new_tdx\vipdoc\sh\lday和C:\new_tdx\vipdoc\sz\lday路径即可。

解压后的文件都是一个个的.day文件。下面这段Python代码可以演示如何读取.day文件中的行情数据。

import osimport structimport pandas as pddef readTdxLdayFile(fname="C:\\new_tdx\\vipdoc\sh\\lday\\sh601628.day"):dataSet=[]with open(fname,'rb') as fl:buffer=fl.read() #读取数据到缓存size=len(buffer) rowSize=32 #通信达day数据,每32个字节一组数据code=os.path.basename(fname).replace('.day','')for i in range(0,size,rowSize): #步长为32遍历bufferrow=list( struct.unpack('IIIIIfII',buffer[i:i+rowSize]) )row[1]=row[1]/100row[2]=row[2]/100row[3]=row[3]/100row[4]=row[4]/100row.pop() #移除最后无意义字段row.insert(0,code)dataSet.append(row) data=pd.DataFrame(data=dataSet,columns=['code','tradeDate','open','high','low','close','amount','vol'])print(data)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。