欢迎来到天天文库
浏览记录
ID:22931614
大小:63.82 KB
页数:13页
时间:2018-11-02
《大智慧相关的数据结构》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、大智慧日K线的数据结构r 大智慧股票行情软件是目前应用广泛的一个炒股工具,有时我们需要自编炒股的算法进行研究,如提取某只股票的收盘价,成交量等,这时候如果能直接读大智慧股票分析系统的数据格式,将对软件的编制带来极大的方便。(注:大智慧用的钱龙数据格式,本文适用于钱龙股票行情软件中的日k线数据)。本文主要描述了在Delphi下大智慧日K线的数据结构,和以动态数组方式提取数据的方法。r 一、数据文件和数据结构:r 大智慧数据文件和数据结构:(假设大智慧股票行情软件安装在D:dzh目录下)r 上海日线存储路径为:D:dzhDATASHaseDay,文件扩展名为:.da
2、yr 上海周线存储路径为:D:dzhDATASHaseweek,文件扩展名为:.wekr 上海月线存储路径为:D:dzhDATASHasemonth,文件扩展名为:.mntr 深圳日线存储路径为:D:dzhDATASZnseDayr 深圳周线存储路径为:D:dzhDATASZnseweekr 深圳月线存储路径为:D:dzhDATASZnsemonthr 周线,月线格式与日线格式一致.r 以深发展日线为例:r 1A76:0100D6CD2F0152070100-5207010052070100r 1A76:011052070
3、100860F0000-4D02000000000000r 1A76:01200000000000000000-D7CD2F0160030100r 1A76:01306003010060030100-6003010082050000r 1A76:0140D400000000000000-0000000000000000rr每一条记录的长度为40字节:r1-4字节为日期,D6CD2F01转换为十进制是:19910102r5-8字节=开盘价(元)*1000r9-12字节=最高价(元)*1000r13-16字节=最低价(元)*1000r
4、n17-20字节=收盘价(元)*1000r21-24字节=成交金额(元)/1000r25-28字节=成交量(手)r其余12字节未使用r实现步骤:r1、先定义日线数据结构数组r2、再以实际记录数分配动态数组空间r3、然后把数据读入相应数组中rrProcedure TFormKXianMain.ReadData(Sender:Tobject);//读取日k线数据文件中的开盘价、最高价、最低价、收盘价、成交金额、成交量rVarI:Integer;rVarFileName:String;//日k线数据文件rVarDataFile
5、:File;r//-----------------定义日线数据结构数组----------rVarDataDate:LongWord;//日期数组rVarDataOpen:LongWord;//开盘价数组rVarDataHigh:LongWord;//最高价数组rVarDataLow:LongWord;//最低价数组rVarDataClose:LongWord;//收盘价数组rVarDataShuLiang:LongWord;//成交量数组rVarDataJinE:LongWord;//成交金额数组rVarDataNoOne:LongWo
6、rd;rVarDataNoTwo:LongWord;rVarDataNoThree:LongWord;r//----------------------------------------------rBeginr Tryr DayCount:=0;r FileName:=‘D:dzhDATASZnseDay 001.day‘;//此处根据文件的具体路径填写r IfFileExists(FileName)Thenr Beginr AssignFile(DataFile,Filename);r Reset(Data
7、File,1);r //-------以实际记录数分配动态数组空间--------r DayCount:=Round(FileSize(DataFile)/40);r //基本数据r SetLength(DayData,7);r ForI:=Low(DayData)toHigh(DayData)dor SetLength(DayData[I],D
此文档下载收益归作者所有