转换通达信分钟数据,包括5分钟和1分钟数据

文章介绍了如何利用Python解析和转换通达信的5分钟及1分钟数据,将原始二进制数据转化为可读的CSV和Excel格式,包括日期和时间的处理。此外,还提到软件是免费的,且适用于不具备编程经验的用户,以方便他们进行金融数据分析。
摘要由CSDN通过智能技术生成

目录

1 前言

2 操作演示

 3 代码

4 软件下载

5 stockpy整体功能介绍


1 前言

真正的市场高手不但要熟练掌握日线,对分钟线也要进行深入研究。缠中说禅在他的博客中讲到,年、季、月、周、日、60分钟、30分钟、5分钟、1分钟研究道理是相同的。粒度越细,那么赢利点就越多。如果长期不操作,那么好苹果也会成为烂苹果。高手甚至能在某一天的某一秒就确定这一秒是几年来的最高点。这都需要剖析分钟线数据。

在研究的过程中,发现网上相关资料要不语焉不详,要不就是资料数据过时,无法直接拿来使用。这回正好借着在家发烧的大好时机,深挖细挖通达信分钟数据结构和python代码,终于可以顺利导出5分钟和1分钟数据了。在这里,python代码和程序都拿出来与大家免费分享。

软件主要增加以下内容:

* 转换通达信5分钟数据

* 转换通达信1分钟数据

* 以上数据中的日期字段,本来是一串数字,转换为可读日期“年月日”

* 分钟字段计算为“时:分”格式

2 操作演示

 

 

 3 代码

from struct import *
import pandas as pd
import os
# import sys
import time
import datetime
import math
 
# stock_list = []
# linename=['code','date','open','high','low','close','amout','vol']
# df_all_stock = pd.DataFrame(stock_list, columns=linename)
def miniute2csv_data(dirname, fname, targetDir):
    ofile=open(dirname + os.sep + fname, 'rb')
    buf=ofile.read()
    ofile.close()

    ifile=open(targetDir + os.sep + fname+'.csv','w')
    num=len(buf)
    no=num/32
    b=0
    e=32
    line=''
    linename=str('date')+','+str('miniute')+','+str('open')+','+str('high')+','+str('low')+','+str('close')+','+str('amout')+','+str('vol')+'\n'
    ifile.write(linename)

    t = datetime.datetime.strptime("2012-11-11 00:00:00", "%Y-%m-%d %H:%M:%S")

    for i in range(int(no)):
       # a=unpack('IIIIIfII',buf[b:e])
       a = unpack('HHfffffii',buf[b:e])
       
       year=math.floor(a[0]/2048)+2004
       month=math.floor((a[0] % 2048)/100)
       day=(a[0] % 2048) % 100
       hm = (t + datetime.timedelta(minutes=a[1])).strftime("%H:%M")
       line = str(year)+'{:02}'.format(month)+'{:02}'.format(day)+','+hm+','+'{:.2f}'.format(a[2])+','+'{:.2f}'.format(a[3])+','+'{:.2f}'.format(a[4])+','+'{:.2f}'.format(a[5])+','+'{:.2f}'.format(a[6])+','+str(a[7])+'\n'

       # line = str(year)+'{:02}'.format(month)+'{:02}'.format(day)+','+str(a[1])+','+'{:.2f}'.format(a[2])+','+'{:.2f}'.format(a[3])+','+'{:.2f}'.format(a[4])+','+'{:.2f}'.format(a[5])+','+'{:.2f}'.format(a[6])+','+str(a[7])+'\n'
       # line =str(a[0]) +','+str(a[1])+','+'{:.2f}'.format(a[2])+','+'{:.2f}'.format(a[3])+','+'{:.2f}'.format(a[4])+','+'{:.2f}'.format(a[5])+','+'{:.2f}'.format(a[6])+','+str(a[7])+'\n'
       ifile.write(line)
       b = b+32
       e = e+32
    ifile.close()
	
    df_gp = pd.read_csv(targetDir + os.sep + fname + '.csv', sep=',')
    df_gp.to_excel(targetDir + os.sep + fname + '.xlsx')
 
#print("可能需要较长时间,请耐心等待......")
 
targetDir=r'.\data\tdx'
# 目标文件夹若不存在,则创建
if not os.path.exists(targetDir):
    os.makedirs(targetDir)
 
time.sleep(1)
 
# 沪市数据转换
#tdxPath = r'C:\new_mszq_v6\vipdoc\sh\lday'
#pathdir#
#fn#

if len(fn)==0:
    listfile = os.listdir(tdxPath)
else:
    listfile = fn

start = time.time()
i = 0
for f in listfile:
    i+=1
    #if i < 5:
    miniute2csv_data(tdxPath, f, targetDir)
    #print(f)
 
print ('数据转换完成。')

stop = time.time()
print("用时:%s秒"%str(stop-start))

4 软件下载

免费软件。

下载:

https://www.1hwj.net/forum.php?mod=viewthread&tid=57&extra=

5 stockpy整体功能介绍

通达信日线数据转换为csv、xlsx、feather格式;

通达信5分钟、1分钟数据转换为csv、xlsx格式;

搜索历史数据中特定形态,目前支持61种形态;

主要面向不会编程的朋友,以上所有功能不需要学习编程,点击几次鼠标即可完成;

免费的哈。

其他功能需求请在评论区留言,如果有可能我会尽量实现。

  • 9
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 36
    评论
### 回答1: 通达信软件实时1分钟数据全推器 全推数据专业版v1.01.zip是一个经过专业开发的数据推送工具。它能够提供实时的1分钟级别的股票数据,并且能够将这些数据以全推的方式传输给用户。 全推数据的意思是将所有的数据都推送到用户终端,而不仅仅是部分数据。这种方式能够让用户获取到更完整的市场行情数据包括股票的价格、成交量、成交额等重要信息。 这款软件的专业版v1.01.zip是一个更新版本,增加了更多的功能和优化了推送的稳定性。通过使用这个软件,用户可以快速地获取最新的股票数据,并根据这些数据进行分析和决策。 通达信软件实时1分钟数据全推器 全推数据专业版v1.01.zip具有以下特点: 1. 实时性:该软件能够实时推送1分钟级别的数据,确保用户获取到最新的市场行情。 2. 全面性:用户可以获得全部的股票数据,无论是大盘股还是小盘股,都能够在软件中找到。 3. 稳定性:软件经过精心开发和测试,具有较好的稳定性,可以长时间稳定运行。 4. 易用性:软件界面简洁明了,操作简单方便,即使是对于非专业人士也能够轻松上手使用。 总之,通达信软件实时1分钟数据全推器 全推数据专业版v1.01.zip是一个功能强大的数据推送工具,能够满足用户对实时股票数据的需求,帮助用户进行投资决策。 ### 回答2: 通达信软件实时1分钟数据全推器 全推数据专业版v1.01.zip是一个用于通达信软件的实时数据推送工具。该工具的主要功能是在1分钟的时间间隔内持续推送实时数据给用户。通过使用这个工具,用户可以及时获取最新的市场行情数据,以便进行交易决策和分析。 该工具的全推数据专业版v1.01.zip是通达信软件的一个升级版本,相比之前的版本,它增加了一些新功能和改进了一些问题。具体来说,这个版本提供了更稳定和快速的数据推送服务,同时还优化了数据传输的效率和稳定性。 在使用全推数据专业版v1.01.zip之前,用户需要先安装通达信软件,并将该工具安装到软件的插件目录中。安装完成后,用户可以根据自己的需要进行一些设置,如选择行情数据源和订阅的市场品种等。一旦设置完成,该工具就会自动在1分钟的时间间隔内将实时数据推送给用户。 通过使用通达信软件实时1分钟数据全推器,用户可以方便地获取实时的行情数据,及时跟踪市场动态,为交易和投资提供参考依据。它的稳定性和高效性也使得用户能够更好地进行交易决策和分析,提高交易的成功率和效益。
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值