网站邮件功能设计理论,具有价值的专业网站建设平台,常用网站png,wordpress淘宝客主题破解版通达信软件中的vipdoc是一个存储股票行情数据的文件夹。在通达信软件的安装目录下#xff0c;可以找到一个名为vipdoc的文件夹#xff0c;里面存放着各个股票的分时、日线、周线、月线等行情数据文件。这些数据文件可以用于自定义分析和回测股票的走势和交易策略#xff0c;…通达信软件中的vipdoc是一个存储股票行情数据的文件夹。在通达信软件的安装目录下可以找到一个名为vipdoc的文件夹里面存放着各个股票的分时、日线、周线、月线等行情数据文件。这些数据文件可以用于自定义分析和回测股票的走势和交易策略前提要把加密的数据解析出来才能调用解析方法如下使用Python解析。
数据存放的位置bj代表北交所sh代表上海sz代表深圳的股票 看日线就在通达信lday文件夹目录下去找E:\zd_cjzq\vipdoc\sh\lday #01.通达信日线*.day文件的结构
文件名即股票代码每32个字节为一个数据其中每4个字节为一个字段每个字段内低字节在前。00 ~ 03 字节年月日, 整型04 ~ 07 字节开盘价*1000 整型08 ~ 11 字节最高价*1000, 整型12 ~ 15 字节最低价*1000, 整型16 ~ 19 字节收盘价*1000, 整型20 ~ 23 字节成交额元float型24 ~ 27 字节成交量手整型28 ~ 31 字节上日收盘*1000, 整型#02.通达信5分钟线*.5数据结构minline 文件夹包含了股票和期货的分钟线数据文件以 .lc1 扩展名结尾。每32个字节为一个5分钟数据每字段内低字节在前。
00 ~ 01 字节日期整型设其值为num则日期计算方法为yearfloor(num/2048)2004;monthfloor(mod(num,2048)/100);daymod(mod(num,2048),100);02 ~ 03 字节从0点开始至目前的分钟数整型
04 ~ 07 字节开盘价分整型08 ~ 11 字节最高价分整型12 ~ 15 字节最低价分整型16 ~ 19 字节收盘价分整型20 ~ 23 字节成交额元float型24 ~ 27 字节成交量股28 ~ 31 字节保留一般都是0以下是解析贵州茅台后的图片 600519csv数据文件
import struct
import datetime
import os
# 1.新建一个文件夹用于存放解析好的股票数据
os.makedirs(股票数据,exist_okTrue)#区分沪深北交所股票找到对应股票的文件位置
def hs_stock(code):if code[0] 6:str_codesh/lday/sh codeif code[0] 3:str_codesz/lday/sz codeif code[0] 8 or code[0] 4:str_codebj/lday/bj codereturn str_code#2.解析通达信日线数据
#F:\new_tdx\
def stock_csv(filepath,code,name):data []filepathfilepathhs_stock(code).daywith open(filepath, rb) as f:file_object_path 股票数据/ name .csvfile_object open(file_object_path, w)while True:stock_date f.read(4)stock_open f.read(4)stock_high f.read(4)stock_low f.read(4)stock_close f.read(4)stock_amount f.read(4)stock_vol f.read(4)stock_reservation f.read(4)# date,open,high,low,close,amount,vol,reservationif not stock_date:breakstock_date struct.unpack(l, stock_date) # 4字节 如20230812stock_open struct.unpack(l, stock_open) #开盘价*100stock_high struct.unpack(l, stock_high) #最高价*100stock_low struct.unpack(l, stock_low) #最低价*100stock_close struct.unpack(l, stock_close) #收盘价*100stock_amount struct.unpack(f, stock_amount) #成交额stock_vol struct.unpack(l, stock_vol) #成交量stock_reservation struct.unpack(l, stock_reservation) #保留值date_format datetime.datetime.strptime(str(stock_date[0]),%Y%M%d) #格式化日期list date_format.strftime(%Y-%M-%d),str(stock_open[0]/100),str(stock_high[0]/100),str(stock_low[0]/100),str(stock_close[0]/100),str(stock_vol[0]/100)\rfile_object.writelines(list)file_object.close()print(code股票数据解析完成)stock_csv(E:/zd_cjzq/vipdoc/,600519, 贵州茅台)