适用于“大智慧新一代 Level-2 V3.03.08.0801 ”的版本。
附件:数据表结构
◎代码数据(cndm)结构
字段名 含义 类型 备注
dm 代码 char
jc 简称 char
◎行情数据(cnfqhq)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
kp 开盘 num
zg 最高 num
zd 最低 num
sp 收盘 num
sl 成交数量 num
je 成交金额 num
yz 复权因子 num
◎除权数据(cncq)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
fh 分红 num
sgbl 送股比例 num
pgbl 配股比例 num
pgjg 配股价格 num
◎股本数据(cngb)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
zgb 总股本 num
ltg 流通A股 num
bg B股 num
hg H股 num
◎财务指标(cncw)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
eps 每股收益(全面摊薄) num
eps1 每股收益(加权平均) num
naps 每股净资产 num
roe 净资产收益率(全面摊薄) num
roe1 净资产收益率(加权平均) num
◎财务报表(cncwbb)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
bsdqtzje 短期投资净额 num
bsyszkje 应收帐款净额 num
bschje 存货净额 num
bsldzc 流动资产 num
bscqtzje 长期投资净额 num
bsgdzc 固定资产 num
bswxzc 无形及其他资产 num
bszzc 总资产 num
bsdqjk 短期借款 num
bsyfzk 应付帐款 num
bsldfz 流动负债 num
bscqfz 长期负债 num
bsfz 负债合计 num
bsgb 股本 num
bsssgdqy 少数股东权益 num
bsgdqy 股东权益 num
bszbgj 资本公积 num
bsyygj 盈余公积 num
iszysr 主营业务收入净额 num
iszycb 主营业务成本 num
iszylr 主营业务利润 num
isqtlr 其它业务利润 num
isyyfy 营业费用 num
isglfy 管理费用 num
iscwfy 财务费用 num
istzsy 投资收益 num
islrze 利润总额 num
issds 所得税 num
isjlr 净利润 num
iskchjlr 扣除经常性损益后的净利润 num
iswfplr 未分配利润 num
cfjyhdxjlr 经营活动现金流入 num
cfjyhdxjlc 经营活动现金流出 num
cfjyhdxjje 经营活动现金净额 num
cftzxjlr 投资现金流入 num
cftzxjlc 投资现金流出 num
cftzxjje 投资现金净额 num
cfczxjlr 筹措现金流入 num
cfczxjlc 筹措现金流出 num
cfczxjje 筹措现金净额 num
cfxjjze 现金及现金等价物净增额 num
cfxsspxj 销售商品收到的现金 num
mgsy 每股收益 num
mgjzc 每股净资产 num
tzmgjzc 调整后每股净资产 num
mgzbgjj 每股资本公积金 num
mgwfplr 每股未分配利润 num
mgjyxjllje 每股经营活动产生的现金流量净额 num
mgxjzjje 每股现金及现金等价物增加净额 num
mll 毛利率 num
zyywlrl 主营业务利润率 num
jll 净利率 num
zzcbcl 总资产报酬率 num
jzcsyl 净资产收益率 num
xsxjzb 销售商品收到的现金占主营收入比例 num
yszczzl 应收帐款周转率 num
chzzl 存货周转率 num
gdzczzl 固定资产周转率 num
zyywzzl 主营业务增长率 num
jlrzzl 净利润增长率 num
zzczzl 总资产增长率 num
jzczzl 净资产增长率 num
ldbl 流动比率 num
sdbl 速动比率 num
zcfzbl 资产负债比率 num
fzbl 负债比率 num
gdqybl 股东权益比率 num
gdzcbl 固定资产比率 num
kchmgjlr 扣除经常性损益后每股净利润 num
◎交易日期(cnrq)结构
字段名 含义 类型 备注
rq 交易日期 date
◎板块数据(cnbk)结构
字段名 含义 类型 备注
lb 类别 char
bk 板块 char
dm 代码 char
zz 创建者 char
◎存款利率(cnll)结构
字段名 含义 类型 备注
dm 代码 char
jc 简称 char
rq 变动日期 date
ll 利率 num
◎港股代码(hkdm)结构
字段名 含义 类型 备注
dm 代码 char
jc 简称 char
◎港股行情(hkhq)结构
字段名 含义 类型 备注
dm 代码 char
rq 日期 date
kp 开盘 num
zg 最高 num
zd 最低 num
sp 收盘 num
sl 成交数量 num
je 成交金额 num
FxjData2FinData程序有上千行
调用方法:
/*************************************************************************************
使用说明:
1)调用格式:FxjData2FinData(Market,DataType,FinDataLib)
其中,
Market:市场代码,SH为沪市,SZ为深市,BK为板块指数,如果有其它市场数据,可有其它市场代码如HK等.
DataType:数据类型,dm,cq,cw0,hq0,hq,等等,含义见下面注释
FinDataLib:目标逻辑库,如果给定的目标逻辑库不存在,则将设为Work
2)如果数据文件已经被分析家等软件占用导致无法打开时,将自动复制一份该文件,并从该备份文件中读取数据.
3)程序将自动补充数据,即如果目标表不存在,则建立并添加数据,如果目标表已存在,则判断表中每只证券的最新
数据,然后只添加数据表中所缺少的数据.
***************************************************************************************/
/*请修改以下的参数*/
%let FxjPath=C:\fxj\;/*分析家安装目录*/
/*HqmbFilesToRead=分笔成交读取文件数.若为1则只读取report.dat,
若为值n,则除了读取Report.dat外还将读取(n-1)个最新.PRP历史分笔成交数据文件*/
%let HqmbFilesToRead=2;
/*请确认要转换的数据,在下面语句的%后加*变为注释取消转换*/
/*沪市*/
%FxjData2FinData(sh,dm,FinData); /*dm--证券代码,原数据集将保存为xxDM_bak*/
%FxjData2FinData(sh,cq,FinData); /*cq--除权数据*/
%FxjData2FinData(sh,cw0,FinData); /*cw0--最新财务数据*/
%FxjData2FinData(sh,hq0,FinData); /*hq0--最新行情*/
%FxjData2FinData(sh,hq,FinData); /*hq--每日行情*/
%FxjData2FinData(sh,hqmb,FinData); /*hqmb--每笔成交*/
%FxjData2FinData(sh,hq5,FinData);/*hq5--5分钟行情*/
%FxjData2FinData(sh,fp,FinData);/*fp--分红送配(专业财务数据)*/
%FxjData2FinData(sh,gb,FinData);/*gb--股本结构(专业财务数据)*/
%FxjData2FinData(sh,cw,FinData);/*cw--财务数据(专业财务数据)*/
%FxjData2FinData(sh,gd,FinData);/*gd--十大股东(专业财务数据)*/
%FxjData2FinData(sh,jjjz,FinData);/*jjjz--基金净值(专业财务数据)*/
%FxjData2FinData(sh,jjzh,FinData);/*jjzh--基金投资组合(专业财务数据)*/
/*深市*/
%FxjData2FinData(sz,dm,FinData);
%FxjData2FinData(sz,cq,FinData);
%FxjData2FinData(sz,cw0,FinData);
%FxjData2FinData(sz,hq0,FinData);
%FxjData2FinData(sz,hq,FinData);
%FxjData2FinData(sz,hqmb,FinData);
%FxjData2FinData(sz,hq5,FinData);
%FxjData2FinData(sz,fp,FinData);
%FxjData2FinData(sz,gb,FinData);
%FxjData2FinData(sz,cw,FinData);
%FxjData2FinData(sz,gd,FinData);
%FxjData2FinData(sz,jjjz,FinData);
%FxjData2FinData(sz,jjzh,FinData);
/*板块及板块指数*/
%FxjData2FinData(bk,zh,FinData);/*板块数据:Market=bk,DataType=zh,...*/
%FxjData2FinData(bk,dm,FinData);
%FxjData2FinData(bk,hq0,FinData);
%FxjData2FinData(bk,hq,FinData);
%FxjData2FinData(bk,hqmb,FinData);
%FxjData2FinData(bk,hq5,FinData);
/*香港市场*/
%*FxjData2FinData(hk,dm,FinData);
%*FxjData2FinData(hk,hq0,FinData);
%*FxjData2FinData(hk,hq,FinData);
%*FxjData2FinData(hk,hqmb,FinData);
%*FxjData2FinData(hk,hq5,FinData);
大智慧新一代 2.08.07.0907 数据格式
作者:root 日期:2007-12-12
字体大小: 小 中 大
备忘
日线数据文件day.dat
case DataTypes.hq:
fileName = "DAY.DAT";
startAddress = 0x41000;
blockSize = 8192;
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,date,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;"+
"je,成交金额,single,4,7,24,";
数据格式几乎与分析家相同
起止地址 数据内容 数据含义 数据类型
00 - 03 F4 9B 13 FC 文件标志 int
04 - 07 00 06 00 00 未知 int
08 - 0B 00 00 00 00 保留 int
0C - 0F 97 04 00 00 证券总数 int
10 - 13 00 18 00 00 未知 int需添加之起始块号
14 - 17 DB 17 00 00 未知 int当前最后空块号
18 - 21 31 41 30 30 30...FF 证券代码 byte[10]
22 - 25 B0 09 00 00 日线记录数 int
26 - 57 00 00 25 04...FF FF 记录块号 char[25]
......
记录块开始于0x41000
41000 - 41003 80 47 B2 2B 日期 int
41004 - 41007 B9 1E 25 41 开盘价 float
41008 - 4100B CD CC 4C 41 最高价 float
4100C - 4100F EC 51 18 41 最低价 float
41010 - 41013 9A 99 41 41 收盘价 float
41014 - 41017 80 06 B2 47 成交量 float
41018 - 4101B 40 1C BC 4C 成交金额 float
4101C - 4101D 00 00 上涨家数 char
4101E - 4101F 00 00 下跌家数 char
注:
1)起止地址、数据内容为十六进制,数据类型为 Delphi 下之定义。
2)从18h开始至40017h每64byte为一条股票数据分配记录,含义如上表18h - 57h所示;
3)从41000h开始每8KB为一股票数据存储块,每个股票数据存储块共存储256条日线记录,
每一条记录的长度为32 byte(含义如上表;上涨家数及下跌家数只对指数有效);
4)从41000h开始的8KB为第0号数据存储块,以后类推;
5)系统对每个股票日线数据存储以存储块为单位进行分配。
6)具体应用实例分析家数据管理程序。
7) 日期字段的意义为:实际日期 = StrToDate(^1970-01-01^)+(日期字段 div 86400);
即“日期字段”除以86400所得数为实际日期距1970年01月01日的天数。
有关块号计算方法,请参见分笔成交数据格式
日期字段的意义为:实际日期 = StrToDate(^1970-01-01^)+(日期字段 div 86400);
即“日期字段”除以86400所得数为实际日期距1970年01月01日的天数
1分钟数据文件min1.dat
case DataTypes.hq1:
fileName = "MIN1.DAT";
startAddress = 0x41000;
blockSize = 12288;//8192
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;"+
"je,成交金额,single,4,7,24,";
5分钟数据文件min.dat
case DataTypes.hq5:
fileName = "MIN.DAT";
startAddress = 0x41000;
blockSize = 8192;
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;" +
"je,成交金额,single,4,7,24,";
最新行情STKINFO60.dat
case DataTypes.hq0:
fileName = "STKINFO60.DAT";
startAddress = 0x68A8A6;
blockSize = 0;
recordSize = 273;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"jc,简称,string,32,1,10,;" +
"rq,更新时间,datetime,4,5,60,;" +
"zs,昨收,single,4,7,68,;" +
"kp,今开,single,4,8,72,;" +
"zg,最高,single,4,9,76,;" +
"zd,最低,single,4,10,80,;" +
"sp,最新,single,4,11,84,;" +
"sl,总手数,single,4,12,88,;" +
"je,金额,single,4,13,92,;" +
"xss,现手数,single,4,14,96,;" +
"ztj,涨停价,single,4,27,184,;" +
"dtj,跌停价,single,4,28,188,;" +
"np,内盘,single,4,27,192,;" +
"wp,外盘,single,4,28,196,;" +
"mrjg1,买一价,single,4,15,100,;" +
"mrsl1,买一量,single,4,18,120,;" +
"mrjg2,买二价,single,4,16,104,;" +
"mrsl2,买二量,single,4,19,124,;" +
"mrjg3,买三价,single,4,17,108,;" +
"mrsl3,买三量,single,4,20,128,;" +
"mrjg4,买四价,single,4,32,112,;" +
"mrsl4,买四量,single,4,34,132,;" +
"mrjg5,买五价,single,4,33,116,;" +
"mrsl5,买五量,single,4,35,136,;" +
"mcjg1,卖一价,single,4,21,140,;" +
"mcsl1,卖一量,single,4,24,160,;" +
"mcjg2,卖二价,single,4,22,144,;" +
"mcsl2,卖二量,single,4,25,164,;" +
"mcjg3,卖三价,single,4,23,148,;" +
"mcsl3,卖三量,single,4,26,168,;" +
"mcjg4,卖四价,single,4,36,152,;" +
"mcsl4,卖四量,single,4,38,172,;" +
"mcjg5,卖五价,single,4,37,156,;" +
"mcsl5,卖五量,single,4,39,176,";
//"jd,精度,int,4,3,52,;" +
//"scbz,删除标志,int,4,4,56,";
//"unknown,(未知),int,4,31,164,;" +
//",(未知),,48,40,200,;"
分笔成交数据文件report.dat(结构同day.dat,但其中一些数据不是直接保存)
case DataTypes.hqmb:
fileName = "REPORT.DAT";
startAddress = 0x41000;
blockSize = 12272;
recordSize = 52;
codeIsLong = false;
isIndexDataStruct = false;//不完全等同于day.dat结构,因此单独处理
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,0,0,;" +
"zjcj,最近成交价,single,4,1,4,;" +
"zss,总手数,single,4,2,8,calc;" +
"je,金额,single,4,3,12,;" +
"xss,现手数,single,4,2,8,;" +
"mm,内外盘,string,2,16,21,;" +
"mr1jg,买一价,single,1,10,42,;" +
"mr1sl,买一量,single,2,4,22,;" +
"mr2jg,买二价,single,1,11,43,;" +
"mr2sl,买二量,single,2,5,24,;" +
"mr3jg,买三价,single,1,12,44,;" +
"mr3sl,买三量,single,2,6,26,;" +
"mr4jg,买四价,single,1,12,45,;" +
"mr4sl,买四量,single,2,6,28,;" +
"mr5jg,买五价,single,1,12,46,;" +
"mr5sl,买五量,single,2,6,30,;" +
"mc1jg,卖一价,single,1,13,47,;" +
"mc1sl,卖一量,single,2,7,32,;" +
"mc2jg,卖二价,single,1,14,48,;" +
"mc2sl,卖二量,single,2,8,34,;" +
"mc3jg,卖三价,single,1,15,49,;" +
"mc3sl,卖三量,single,2,9,36,;"+
"mc4jg,卖四价,single,1,14,50,;" +
"mc4sl,卖四量,single,2,8,38,;" +
"mc5jg,卖五价,single,1,14,51,;" +
"mc5sl,卖五量,single,2,8,40,;" +
"bs,总笔数,int,2,0,16,"
;
//以上数据类型不是存储类型,程序中不直接用实际数据类型:买/卖X量为short,买/卖X价为byte
//现手数通过当总手数计算而得,应该放在总手数后面
大智慧新一代Level-2 分笔成交数据格式
起止地址 数据内容 数据含义 数据类型
00 - 03 F4 9B 13 FC 日线文件标志 int
04 - 07 10 02 00 00 未知 int
08 - 0B 00 43 DF 46 1970.01.01 00:00:00始的秒数 int
0C - 0F 5D 05 00 00 证券总数 int
10 - 13 ED 20 00 00 未知 int
14 - 17 ED 20 00 00 未知 int
18 - 21 30 30 30 30 30 31 00 00 证券代码 byte[10]
22 - 25 9C 12 00 00 日分笔记录数 int
26 - 57 00 00 BA 03...FF FF 记录块号 char[25]
00041000 记录页起始点,
每记录长: 0x34 = 52
每页记录数: 0xEC = 236
每页长: 每记录长0x34 * 每页记录数0xEC = 0x2FF0 = 12272
地 址 数据内容 数据含义 数据类型
41000 - 41003 35 FA DF 46 1970.01.01 00:00:00 始的秒数 int
41004 - 41007 00 00 18 41 最新价 float
41008 - 4100B 00 80 B4 43 累计成交量 float
4100C - 4100F 80 46 A7 48 累计成交金额 float
41010 - 41011 51 9C 累计成交笔数 char
41012 - 41013 00 00 未知 char
41014 10 累计成交笔数的溢出标志(00|10) byte
41015 80 买入,卖出标识(80|E0买入,C0|A0卖出) byte
41016 - 41017 23 01 委买量1 char
41018 - 41019 8E 5B 委买量2 char
4101A - 4101B 80 27 委买量3 char
4101C - 4101D 8E 5B 委买量4 char
4101E - 4101F B8 40 委买量5 char
41020 - 41021 23 01 委卖量1 char
41022 - 41023 8E 5B 委卖量2 char
41024 - 41025 80 27 委卖量3 char
41026 - 41027 8E 5B 委卖量4 char
41028 - 41029 B8 40 委卖量5 char
4102A 16 委买价1 与成交价的差 byte
4102B 9A 委买价2 与成交价的差 byte
4102C 80 委买价3 与成交价的差 byte
4102D 40 委卖价4 与成交价的差 byte
4102E 30 委卖价5 与成交价的差 byte
4102F 57 委卖价1 与成交价的差 byte
41030 68 委卖价2 与成交价的差 byte
41031 69 委卖价3 与成交价的差 byte
41032 7A 委卖价4 与成交价的差 byte
41033 81 委卖价5 与成交价的差 byte
注意:
1、如有疑问请与 QQ 8588711 联系,愿与您共同挖掘股票成交数据。
2、数据类型为JAVA数据类型定义,实际读数据时应该将数据十六进制取反,如:41000 - 41003的数据为 35 FA DF 46,实际应该读成:
0x46DFFA35 = 1189083701, 这个1189083701值就是距1970.01.01 00:00:00 始的实际秒数。其他int,float,char都是这样取反的。
3、委买卖与成交价的差,是小数点后的整数差,如果买卖标识为80或C0,成交价小数点后是两位(股票),如果买卖标识为E0或A0,
成交价小数点后是三位(权证等)
4、累计成交笔数如果溢出,则41014位上的值不为00,而是10或者20,30等,成交笔数计算方法应为:41014位上的值反转,
10转为01,20转为02。。。 再与41010 - 41011位上的值合并成一个16进制串。
5、记录块号计算方法:char[0] = 0x00 第一个记录块起始地址为:41000h + 0x0000 * 0x2FF0 = 41000h,char[1] = 0x03BA
则第二个记录块起始地址为:41000h + 0x03BA * 0x2FF0 = 0x00077F78
标签: 财经
近日发现Level-2的逐笔成交数据是缓存在dzh2\data\sh\TEMP目录下,文件名以证券代码为名,后辍是.L2D,如果重启大智慧,
L2D文件会全部被删除,而且临时文件只有在浏览过该证券的逐笔成交后才会生成,不过花的时间也不算太多。也许以后会要研究
逐笔成交数据了,这样的数据更有意义,读数据不是问题,最主要的是分析方法,当得到盘口异动数据后,还需要结合信息面来操作,
这样的成功几率非常大,我已经初尝胜果。后面,还要通过数据来分析大盘走势,还有通过行业数据异动,发现基金等大资金的中短期
目标,这点也非常之重要。这个十一假期,过得不会很闲,还有很多东西要做、、、 现在也不想接受QQ加好友请求,真正做数据盘口
分析的,发现数据格式,马上就已经投入战斗了,而且一看就会明了。在这个市场,每个人都有自己的方式生存,没有拿手绝活,那
是不要随便来玩的。逐笔成交数据格式,大概也会在不久后弄个明白。
财务数据(简单)STKINFO60.dat
case DataTypes.cw0:
fileName = "STKINFO60.DAT";
startAddress = 0x4c2a;
blockSize = 2227;
recordSize = 273;//196
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,报告期,date,4,0,4,;" +
"gxrq,更新日期,date,4,0,0,;" +
"ssrq,上市日期,date,4,0,8,;" +
"col1,每股收益,single,4,0,12,;" +
"col2,每股净资产,single,4,0,16,;" +
"col3,净资产收益率,single,4,0,20,;" +
"col4,每股经营现金,single,4,0,24,;" +
"col5,每股公积金,single,4,0,28,;" +
"col6,每股未分配,single,4,0,32,;" +
"col7,股东权益比,single,4,0,36,;" +
"col8,净利润同比,single,4,0,40,;" +
"col9,主营收入同比,single,4,0,44,;" +
"col10,销售毛利率,single,4,0,48,;" +
"col11,调整每股净资产,single,4,0,52,;" +
"col12,总资产,single,4,0,56,;" +
"col13,流动资产,single,4,0,60,;" +
"col14,固定资产,single,4,0,64,;" +
"col15,无形资产,single,4,0,68,;" +
"col16,流动负债,single,4,0,72,;" +
"col17,长期负债,single,4,0,76,;" +
"col18,总负债,single,4,0,80,;" +
"col19,股东权益,single,4,0,84,;" +
"col20,资本公积金,single,4,0,88,;" +
"col21,经营现金流量,single,4,0,92,;" +
"col22,投资现金流量,single,4,0,96,;" +
"col23,筹资现金流量,single,4,0,100,;" +
"col24,现金增加额,single,4,0,104,;" +
"col25,主营收入,single,4,0,108,;" +
"col26,主营利润,single,4,0,112,;" +
"col27,营业利润,single,4,0,116,;" +
"col28,投资收益,single,4,0,120,;" +
"col29,营业外收支,single,4,0,124,;" +
"col30,利润总额,single,4,0,128,;" +
"col31,净利润,single,4,0,132,;" +
"col32,未分配利润,single,4,0,136,;" +
"col33,总股本,single,4,0,140,;" +
"col34,无限售股合计,single,4,0,144,;" +
"col35,A股,single,4,0,148,;" +
"col36,B股,single,4,0,152,;" +
"col37,境外上市股,single,4,0,156,;" +
"col38,其他流通股,single,4,0,160,;" +
"col39,限售股合计,single,4,0,164,;" +
"col40,国家持股,single,4,0,168,;" +
"col41,国有法人股,single,4,0,172,;" +
"col42,境内法人股,single,4,0,176,;" +
"col43,境内自然人股,single,4,0,180,;" +
"col44,其他发起人股,single,4,0,184,;" +
"col45,募集法人股,single,4,0,188,;" +
"col46,境外法人股,single,4,0,192,;" +
"col47,境外自然人股,single,4,0,196,;" +
"col48,优先股或其他,single,4,0,200,";
分红送配STKINFO60.dat
case DataTypes.cq:
fileName = "STKINFO60.DAT";
startAddress = 0x44aa;
blockSize = 2227;
recordSize = 20;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,date,4,0,0,;" +
"sgbl,送股比例,single,4,1,4,;" +
"pgbl,配股比例,single,4,2,8,;" +
"pgjg,配股价格,single,4,3,12,;" +
"fh,分红,single,4,4,16,";
代码表STKINFO60.dat
case DataTypes.dm:
fileName = "STKINFO60.DAT";
startAddress = 0x68A8A6;
blockSize = 0;
recordSize = 273;//fxj248
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"jc,简称,string,32,1,10,";
struct fileStruct
{
public string fileName;//文件名
public int startAddress,blockSize,recordSize;//起始地址,每块长度,记录长度
public bool codeIsLong, isIndexDataStruct; //codeIsLong索引中的代码包含有市场代码SH、SZ等;isIndexDataStruct象Day.Dat那样的结构即由索引+数据组成;
public string[,] fields;//字段
public fileStruct(DataTypes fileType)
{
fileName = "";
startAddress = 0;
blockSize = 0;
recordSize = 0;
codeIsLong = false;
isIndexDataStruct = true;
string fieldString = ""; //字段名,字段标签,类型,长度字段,存储顺序,偏移量
switch (fileType)
{
#region 代码表STKINFO60.DAT//代码的拼音是乱码,有可能拼音简写未存盘,而是由大智慧软件另行计算。
case DataTypes.dm:
fileName = "STKINFO60.DAT";
//startAddress = 0x845898;
startAddress = 0x6d0226;
//startAddress = 0x68A8A6;
blockSize = 0;
//recordSize = 248;//原分析家
recordSize = 273;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"jc,简称,string,32,1,10,;" +
"py,拼音,string,10,2,42,";
break;
#endregion
#region 分红送配STKINFO60.DAT//除权数据//OK
case DataTypes.cq:
fileName = "STKINFO60.DAT";
startAddress = 0x44aa;
blockSize = 2227;
recordSize = 20;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,date,4,0,0,;" +
"sgbl,送股比例,single,4,1,4,;" +
"pgbl,配股比例,single,4,2,8,;" +
"pgjg,配股价格,single,4,3,12,;" +
"fh,分红,single,4,4,16,";
break;
#endregion
#region 财务数据(简单)STKINFO60.DAT//OK
case DataTypes.cw0:
fileName = "STKINFO60.DAT";
startAddress = 0x4c2a;
blockSize = 2227;
recordSize = 273;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,报告期,date,4,0,4,;" +
"gxrq,更新日期,date,4,0,0,;" +
"ssrq,上市日期,date,4,0,8,;" +
"col1,每股收益,single,4,0,12,;" +
"col2,每股净资产,single,4,0,16,;" +
"col3,净资产收益率,single,4,0,20,;" +
"col4,每股经营现金,single,4,0,24,;" +
"col5,每股公积金,single,4,0,28,;" +
"col6,每股未分配,single,4,0,32,;" +
"col7,股东权益比,single,4,0,36,;" +
"col8,净利润同比,single,4,0,40,;" +
"col9,主营收入同比,single,4,0,44,;" +
"col10,销售毛利率,single,4,0,48,;" +
"col11,调整每股净资产,single,4,0,52,;" +
"col12,总资产,single,4,0,56,;" +
"col13,流动资产,single,4,0,60,;" +
"col14,固定资产,single,4,0,64,;" +
"col15,无形资产,single,4,0,68,;" +
"col16,流动负债,single,4,0,72,;" +
"col17,长期负债,single,4,0,76,;" +
"col18,总负债,single,4,0,80,;" +
"col19,股东权益,single,4,0,84,;" +
"col20,资本公积金,single,4,0,88,;" +
"col21,经营现金流量,single,4,0,92,;" +
"col22,投资现金流量,single,4,0,96,;" +
"col23,筹资现金流量,single,4,0,100,;" +
"col24,现金增加额,single,4,0,104,;" +
"col25,主营收入,single,4,0,108,;" +
"col26,主营利润,single,4,0,112,;" +
"col27,营业利润,single,4,0,116,;" +
"col28,投资收益,single,4,0,120,;" +
"col29,营业外收支,single,4,0,124,;" +
"col30,利润总额,single,4,0,128,;" +
"col31,净利润,single,4,0,132,;" +
"col32,未分配利润,single,4,0,136,;" +
"col33,总股本,single,4,0,140,;" +
"col34,无限售股合计,single,4,0,144,;" +
"col35,A股,single,4,0,148,;" +
"col36,B股,single,4,0,152,;" +
"col37,境外上市股,single,4,0,156,;" +
"col38,其他流通股,single,4,0,160,;" +
"col39,限售股合计,single,4,0,164,;" +
"col40,国家持股,single,4,0,168,;" +
"col41,国有法人股,single,4,0,172,;" +
"col42,境内法人股,single,4,0,176,;" +
"col43,境内自然人股,single,4,0,180,;" +
"col44,其他发起人股,single,4,0,184,;" +
"col45,募集法人股,single,4,0,188,;" +
"col46,境外法人股,single,4,0,192,;" +
"col47,境外自然人股,single,4,0,196,;" +
"col48,优先股或其他,single,4,0,200,";
break;
#endregion
#region 最新行情STKINFO60.DAT//OK
case DataTypes.hq0:
fileName = "STKINFO60.DAT";
startAddress = 0x6D0226;
blockSize = 0;
recordSize = 273;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"jc,简称,string,32,1,10,;" +
"rq,更新时间,datetime,4,5,60,;" +
"zs,昨收,single,4,7,68,;" +
"kp,今开,single,4,8,72,;" +
"zg,最高,single,4,9,76,;" +
"zd,最低,single,4,10,80,;" +
"sp,最新,single,4,11,84,;" +
"sl,总手数,single,4,12,88,;" +
"je,金额,single,4,13,92,;" +
"xss,现手数,single,4,14,96,;" +
"ztj,涨停价,single,4,27,184,;" +
"dtj,跌停价,single,4,28,188,;" +
"np,内盘,single,4,27,192,;" +
"wp,外盘,single,4,28,196,;" +
"mrjg1,买一价,single,4,15,100,;" +
"mrsl1,买一量,single,4,18,120,;" +
"mrjg2,买二价,single,4,16,104,;" +
"mrsl2,买二量,single,4,19,124,;" +
"mrjg3,买三价,single,4,17,108,;" +
"mrsl3,买三量,single,4,20,128,;" +
"mrjg4,买四价,single,4,32,112,;" +
"mrsl4,买四量,single,4,34,132,;" +
"mrjg5,买五价,single,4,33,116,;" +
"mrsl5,买五量,single,4,35,136,;" +
"mcjg1,卖一价,single,4,21,140,;" +
"mcsl1,卖一量,single,4,24,160,;" +
"mcjg2,卖二价,single,4,22,144,;" +
"mcsl2,卖二量,single,4,25,164,;" +
"mcjg3,卖三价,single,4,23,148,;" +
"mcsl3,卖三量,single,4,26,168,;" +
"mcjg4,卖四价,single,4,36,152,;" +
"mcsl4,卖四量,single,4,38,172,;" +
"mcjg5,卖五价,single,4,37,156,;" +
"mcsl5,卖五量,single,4,39,176,";
//"jd,精度,int,4,3,52,;" +
//"scbz,删除标志,int,4,4,56,";
//"unknown,(未知),int,4,31,164,;" +
//",(未知),,48,40,200,;"
break;
#endregion
#region 分笔成交数据文件report.dat(结构同day.dat,但其中一些数据不是直接保存)//OK
case DataTypes.hqmb:
fileName = "REPORT.DAT";
//fileName = "20080926.PRP";
startAddress = 0x41000;
blockSize = 12272;//52*236=12272
recordSize = 52;
codeIsLong = false;
isIndexDataStruct = false;//不完全等同于day.dat结构,因此单独处理
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,0,0,;" +
"zjcj,最近成交价,single,4,1,4,;" +
"zss,总手数,single,4,2,8,calc;" +
"je,金额,single,4,3,12,;" +
"xss,现手数,single,4,2,8,;" +
"mm,内外盘,string,2,16,21,;" +
"mr1jg,买一价,single,1,10,42,;" +
"mr1sl,买一量,single,2,4,22,;" +
"mr2jg,买二价,single,1,11,43,;" +
"mr2sl,买二量,single,2,5,24,;" +
"mr3jg,买三价,single,1,12,44,;" +
"mr3sl,买三量,single,2,6,26,;" +
"mr4jg,买四价,single,1,12,45,;" +
"mr4sl,买四量,single,2,6,28,;" +
"mr5jg,买五价,single,1,12,46,;" +
"mr5sl,买五量,single,2,6,30,;" +
"mc1jg,卖一价,single,1,13,47,;" +
"mc1sl,卖一量,single,2,7,32,;" +
"mc2jg,卖二价,single,1,14,48,;" +
"mc2sl,卖二量,single,2,8,34,;" +
"mc3jg,卖三价,single,1,15,49,;" +
"mc3sl,卖三量,single,2,9,36,;" +
"mc4jg,卖四价,single,1,14,50,;" +
"mc4sl,卖四量,single,2,8,38,;" +
"mc5jg,卖五价,single,1,14,51,;" +
"mc5sl,卖五量,single,2,8,40,;" +
"bs,总笔数,int,2,0,16,"
;
//以上数据类型不是存储类型,程序中不直接用实际数据类型:买/卖X量为short,买/卖X价为byte
//现手数通过当总手数计算而得,应该放在总手数后面
break;
#endregion
#region 日线数据文件day.dat//OK
case DataTypes.hq:
fileName = "DAY.DAT";
startAddress = 0x41000;
blockSize = 8192;
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,date,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;"+
"je,成交金额,single,4,7,24,";
break;
#endregion
#region 1分钟数据文件min1.dat
case DataTypes.hq1:
fileName = "MIN1.DAT";
startAddress = 0x41000;
blockSize = 16384;//块大小为:/32=;原分析家是
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;"+
"je,成交金额,single,4,7,24,";
break;
#endregion
#region 5分钟数据文件min.dat//OK
case DataTypes.hq5:
fileName = "MIN.DAT";
startAddress = 0x41000;
blockSize = 8192;
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,datetime,4,1,0,;" +
"kp,开盘,single,4,2,4,B;" +
"zg,最高,single,4,3,8,B;" +
"zd,最低,single,4,4,12,B;" +
"sp,收盘,single,4,5,16,B;" +
"sl,成交数量,single,4,6,20,A;"+
"je,成交金额,single,4,7,24,";
break;
#endregion
#region 分红送配数据文件exprof.fdt
case DataTypes.fp:
fileName = "EXPROF.FDT";
startAddress = 0x41000;
blockSize = 3776;
recordSize = 236;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0,;"+
"cqrq,除权日期,date,4,23,176,;" +
"sgbl,送股比例,double,8,1,12,;" +
"sgdjr,送股股权登记日,date,4,2,20,;"+
"sgcqr,送股除权日,date,4,3,24,;"+
"sgssr,红股上市日,date,4,4,28,;"+
"zzbl,转增比例,double,8,5,32,;"+
"zzdjr,转增股权登记日,date,4,6,40,;"+
"zzcqr,转增除权日,date,4,7,44,;"+
"zzssr,转增上市日,date,4,8,48,;"+
"fhbl,分红比例,double,8,9,52,;"+
"fhdjr,分红股权登记日,date,4,10,60,;" +
"fhcxr,分红除息日,date,4,11,64,;" +
"fhpxr,分红派息日,date,4,12,68,;" +
"pgbl,配股比例,double,8,13,72,;"+
"pgdjr,配股股权登记日,date,4,14,80,;"+
"pgcqr,配股除权基准日,date,4,15,84,;"+
"pgjkqsr,配股缴款起始日,date,4,16,88,;"+
"pgjkzzr,配股缴款终止日,date,4,17,92,;"+
"pgssr,配股可流通上市日,date,4,18,96,;"+
"pgjg,配股价格,single,4,19,100,;"+
"frgpgbl,公众股受让法人股配股比例,double,8,20,104,;"+
"frgmgzrf,认购法人股配股每股转让费,single,4,21,112,;"+
"pgzcxs,配股主承销商,string,60,22,116,;"+
"bgrq,报告日期,date,4,24,180,;"+
"dshrq,董事会日期,date,4,25,184,;"+
"gdhrq,股东会日期,date,4,26,188,;"+
"fhggrq,分红公告日期,date,4,27,192,;"+
"zgbjs,总股本基数,double,8,28,196,;"+
"sgsl,送股数量,double,8,29,204,;"+
"zzsl,转增数量,double,8,30,212,;"+
"sjpgs,实际配股总数,double,8,31,220,;"+
"cqhzgb,除权后总股本,double,8,32,228";
break;
#endregion
#region 股本结构STKCapital.fdt
case DataTypes.gb:
fileName = "STKCAPITAL.FDT";
startAddress = 0x41000;
blockSize = 3488;
recordSize = 218;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0;" +
"rq,日期,date,4,17,214;"+
"zgb,总股本,double,8,1,12;" +
"gjg,国家股,double,8,2,20;" +
"fqrg,发起人股,double,8,3,28;" +
"frg,法人股,double,8,4,36;" +
"ybfrps,一般法人配售,double,8,5,44;" +
"zgg,内部职工股,double,8,6,52;" +
"a,流通A股,double,8,7,60;" +
"zltzag,战略投资A股,double,8,8,68;" +
"zpg,转配股,double,8,9,76;" +
"jjps,基金配售,double,8,10,84;" +
"h,H股,double,8,11,92;" +
"b,B股,double,8,12,100;" +
"yxg,优先股,double,8,13,108;" +
"ggcg,高级管理人员持股,double,8,14,116;" +
"gbbdyy,股本变动原因,string,56,15,124;" +
"gbbdyylb,股本变动原因类别,string,34,16,180";
break;
#endregion
#region 财务数据STKFinance.fdt
case DataTypes.cw:
fileName = "STKFINANCE.FDT";
startAddress = 0x41000;
blockSize = 14848;
recordSize = 464;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0,;"+
"rq,日期,date,4,,460,;"+
"bsdqtzje,短期投资净额,double,8,1,12,;"+
"bsyszkje,应收帐款净额,double,8,2,20,;"+
"bschje,存货净额,double,8,3,28,;"+
"bsldzc,流动资产,double,8,4,36,;"+
"bscqtzje,长期投资净额,double,8,5,44,;"+
"bsgdzc,固定资产,double,8,6,52,;"+
"bswxzc,无形及其他资产,double,8,7,60,;"+
"bszzc,总资产,double,8,8,68,;"+
"bsdqjk,短期借款,double,8,9,76,;"+
"bsyfzk,应付帐款,double,8,10,84,;"+
"bsldfz,流动负债,double,8,11,92,;"+
"bscqfz,长期负债,double,8,12,100,;"+
"bsfz,负债合计,double,8,13,108,;"+
"bsgb,股本,double,8,14,116,;"+
"bsssgdqy,少数股东权益,double,8,15,124,;"+
"bsgdqy,股东权益,double,8,16,132,;"+
"bszbgj,资本公积,double,8,17,140,;"+
"bsyygj,盈余公积,double,8,18,148,;"+
"iszysr,主营业务收入净额,double,8,1,156,;"+
"iszycb,主营业务成本,double,8,2,164,;"+
"iszylr,主营业务利润,double,8,3,172,;"+
"isqtlr,其它业务利润,double,8,4,180,;"+
"isyyfy,营业费用,double,8,5,188,;"+
"isglfy,管理费用,double,8,6,196,;"+
"iscwfy,财务费用,double,8,7,204,;"+
"istzsy,投资收益,double,8,8,212,;"+
"islrze,利润总额,double,8,9,220,;"+
"issds,所得税,double,8,10,228,;"+
"isjlr,净利润,double,8,11,236,;"+
"iskchjlr,扣除经常性损益后的净利润,double,8,12,244,;"+
"iswfplr,未分配利润,double,8,13,252,;"+
"cfjyhdxjlr,经营活动现金流入,double,8,1,260,;"+
"cfjyhdxjlc,经营活动现金流出,double,8,2,268,;"+
"cfjyhdxjje,经营活动现金净额,double,8,3,276,;"+
"cftzxjlr,投资现金流入,double,8,4,284,;"+
"cftzxjlc,投资现金流出,double,8,5,292,;"+
"cftzxjje,投资现金净额,double,8,6,300,;"+
"cfczxjlr,筹措现金流入,double,8,7,308,;"+
"cfczxjlc,筹措现金流出,double,8,8,316,;"+
"cfczxjje,筹措现金净额,double,8,9,324,;"+
"cfxjjze,现金及现金等价物净增额,double,8,10,332,;"+
"cfxsspxj,销售商品收到的现金,double,8,11,340,;"+
"mgsy,每股收益,single,4,1,348,;"+
"mgjzc,每股净资产,single,4,2,352,;"+
"tzmgjzc,调整后每股净资产,single,4,3,356,;"+
"mgzbgjj,每股资本公积金,single,4,4,360,;"+
"mgwfplr,每股未分配利润,single,4,5,364,;"+
"mgjyxjllje,每股经营活动产生的现金流量净额,single,4,6,368,;"+
"mgxjzjje,每股现金及现金等价物增加净额,single,4,7,372,;"+
"mll,毛利率,single,4,8,376,;"+
"zyywlrl,主营业务利润率,single,4,9,380,;"+
"jll,净利率,single,4,10,384,;"+
"zzcbcl,总资产报酬率,single,4,11,388,;"+
"jzcsyl,净资产收益率,single,4,12,392,;"+
"xsxjzb,销售商品收到的现金占主营收入比例,single,4,13,396,;"+
"yszczzl,应收帐款周转率,single,4,14,400,;"+
"chzzl,存货周转率,single,4,15,404,;"+
"gdzczzl,固定资产周转率,single,4,16,408,;"+
"zyywzzl,主营业务增长率,single,4,17,412,;"+
"jlrzzl,净利润增长率,single,4,18,416,;"+
"zzczzl,总资产增长率,single,4,19,420,;"+
"jzczzl,净资产增长率,single,4,20,424,;"+
"ldbl,流动比率,single,4,21,428,;"+
"sdbl,速动比率,single,4,22,432,;"+
"zcfzbl,资产负债比率,single,4,23,436,;"+
"fzbl,负债比率,single,4,24,440,;"+
"gdqybl,股东权益比率,single,4,25,444,;"+
"gdzcbl,固定资产比率,single,4,26,448,;"+
"kchmgjlr,扣除经常性损益后每股净利润,single,4,27,452,";
break;
#endregion
#region 十大股东stkhold.fdt
case DataTypes.gd:
fileName = "STKHOLD.FDT";
startAddress = 0x41000;
blockSize = 17568;
recordSize = 2196;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0,;"+
"rq,日期,date,4,66,2192,;" +
"gd1mc,股东名称,string,160,1,12,;"+
"gd1cgsl,股东持股数量,double,8,2,172,;"+
"gd1cgbl,股东持股比例,single,4,3,180,;"+
"gd1bz,股东备注,string,20,4,184,;"+
"gd1fr,股东法人,string,8,5,204,;"+
"gd1jyfw,股东经营范围,string,16,6,212,;"+
"gd2mc,股东名称,string,160,7,228,;"+
"gd2cgsl,股东持股数量,double,8,8,388,;"+
"gd2cgbl,股东持股比例,single,4,9,396,;"+
"gd2bz,股东备注,string,20,10,400,;"+
"gd2fr,股东法人,string,8,11,420,;"+
"gd2jyfw,股东经营范围,string,16,12,428,;"+
"gd3mc,股东名称,string,160,13,444,;"+
"gd3cgsl,股东持股数量,double,8,14,604,;"+
"gd3cgbl,股东持股比例,single,4,15,612,;"+
"gd3bz,股东备注,string,20,16,616,;"+
"gd3fr,股东法人,string,8,17,636,;"+
"gd3jyfw,股东经营范围,string,16,18,644,;"+
"gd4mc,股东名称,string,160,19,660,;"+
"gd4cgsl,股东持股数量,double,8,20,820,;"+
"gd4cgbl,股东持股比例,single,4,21,828,;"+
"gd4bz,股东备注,string,20,22,832,;"+
"gd4fr,股东法人,string,8,23,852,;"+
"gd4jyfw,股东经营范围,string,16,24,860,;"+
"gd5mc,股东名称,string,160,25,876,;"+
"gd5cgsl,股东持股数量,double,8,26,1036,;"+
"gd5cgbl,股东持股比例,single,4,27,1044,;"+
"gd5bz,股东备注,string,20,28,1048,;"+
"gd5fr,股东法人,string,8,29,1068,;"+
"gd5jyfw,股东经营范围,string,16,30,1076,;"+
"gd6mc,股东名称,string,160,31,1092,;"+
"gd6cgsl,股东持股数量,double,8,32,1252,;"+
"gd6cgbl,股东持股比例,single,4,33,1260,;"+
"gd6bz,股东备注,string,20,34,1264,;"+
"gd6fr,股东法人,string,8,35,1284,;"+
"gd6jyfw,股东经营范围,string,16,36,1292,;"+
"gd7mc,股东名称,string,160,37,1308,;"+
"gd7cgsl,股东持股数量,double,8,38,1468,;"+
"gd7cgbl,股东持股比例,single,4,39,1476,;"+
"gd7bz,股东备注,string,20,40,1480,;"+
"gd7fr,股东法人,string,8,41,1500,;"+
"gd7jyfw,股东经营范围,string,16,42,1508,;"+
"gd8mc,股东名称,string,160,43,1524,;"+
"gd8cgsl,股东持股数量,double,8,44,1684,;"+
"gd8cgbl,股东持股比例,single,4,45,1692,;"+
"gd8bz,股东备注,string,20,46,1696,;"+
"gd8fr,股东法人,string,8,47,1716,;"+
"gd8jyfw,股东经营范围,string,16,48,1724,;"+
"gd9mc,股东名称,string,160,49,1740,;"+
"gd9cgsl,股东持股数量,double,8,50,1900,;"+
"gd9cgbl,股东持股比例,single,4,51,1908,;"+
"gd9bz,股东备注,string,20,52,1912,;"+
"gd9fr,股东法人,string,8,53,1932,;"+
"gd9jyfw,股东经营范围,string,16,54,1940,;"+
"gd10mc,股东名称,string,160,55,1956,;"+
"gd10cgsl,股东持股数量,double,8,56,2116,;"+
"gd10cgbl,股东持股比例,single,4,57,2124,;"+
"gd10bz,股东备注,string,20,58,2128,;"+
"gd10fr,股东法人,string,8,59,2148,;"+
"gd10jyfw,股东经营范围,string,16,60,2156,;"+
"gdzs,股东总数,int,4,61,2172,;"+
"gjgfrggds,国家股法人股股东数,int,4,62,2176,;"+
"aggds,流通股A股股东数,int,4,63,2180,;"+
"bggds,流通股B股股东数,int,4,64,2184,";
break;
#endregion
#region 基金周报fundweek.fdt
case DataTypes.jjjz:
//fileName = "FUNDWEEK.FDT";
fileName = "FUNDINFO.fdt";
startAddress = 0x41000;
blockSize = 12032;
recordSize = 188;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0,;"+
"rq,日期,date,4,13,184,;"+
"dwjz,基金单位净值,single,4,6,152,;" +
"jjze,基金净值总额,double,8,5,144,;" +
"gm,基金规模,double,8,4,136,;" +
"dwcz,基金单位初值,single,4,7,156,;"+
"tzhjz,基金调整后净值,single,4,8,160,;"+
"tzhcz,基金调整后初值,single,4,9,164,;"+
"zzl,基金增长率(%),double,8,10,168,;"+
"ljjz,基金累计净值,single,4,11,176,;"+
"slrq,基金设立日期,date,4,1,12,;"+
"glr,基金管理人,string,60,2,16,;"+
"tgr,基金托管人,string,60,3,76,"
;//12为保留字段
break;
#endregion
#region 基金投资组合funddiv.fdt
case DataTypes.jjzh:
fileName = "FUNDDIV.FDT";
fileName = "FUNDINVEST.fdt";
startAddress = 0x41000;
blockSize = 8320;
recordSize = 260;
codeIsLong = true;
fieldString =
"dm,代码,code,12,0,0,;" +
"bgrq,报告日期,date,4,31,252,;" +
"zzrq,截止日期,date,4,32,256,;" +
"dm1,证券代码,string,12,1,12,;" +
"sz1,证券市值,double,8,2,24,;" +
"bl1,证券占净值比例(%),single,4,3,32,;" +
"dm2,证券代码,string,12,4,36,;" +
"sz2,证券市值,double,8,5,48,;" +
"bl2,证券占净值比例(%),single,4,6,56,;" +
"dm3,证券代码,string,12,7,60,;" +
"sz3,证券市值,double,8,8,72,;" +
"bl3,证券占净值比例(%),single,4,9,80,;" +
"dm4,证券代码,string,12,10,84,;" +
"sz4,证券市值,double,8,11,96,;" +
"bl4,证券占净值比例(%),single,4,12,104,;" +
"dm5,证券代码,string,12,13,108,;" +
"sz5,证券市值,double,8,14,120,;" +
"bl5,证券占净值比例(%),single,4,15,128,;" +
"dm6,证券代码,string,12,16,132,;" +
"sz6,证券市值,double,8,17,144,;" +
"bl6,证券占净值比例(%),single,4,18,152,;" +
"dm7,证券代码,string,12,19,156,;" +
"sz7,证券市值,double,8,20,168,;" +
"bl7,证券占净值比例(%),single,4,21,176,;" +
"dm8,证券代码,string,12,22,180,;" +
"sz8,证券市值,double,8,23,192,;" +
"bl8,证券占净值比例(%),single,4,24,200,;" +
"dm9,证券代码,string,12,25,204,;" +
"sz9,证券市值,double,8,26,216,;" +
"bl9,证券占净值比例(%),single,4,27,224,;" +
"dm10,证券代码,string,12,28,228,;" +
"sz10,证券市值,double,8,29,240,;" +
"bl10,证券占净值比例(%),single,4,30,248,";
break;
#endregion
#region 板块userdata\block
case DataTypes.bk:
fileName = "BLOCK.DEF";
startAddress = 0;
blockSize = 0;
recordSize = 248;
codeIsLong = false;
isIndexDataStruct = false;
fieldString =
"lb,类别,string,20,0,0,;" +
"bk,板块,string,20,1,10,;" +
"dm,证券代码,string,10,2,42,";
break;
#endregion
#region 评级
case DataTypes.pj:
fileName = "评级.str";
//fileName = "SIMU.DAT";
startAddress = 0;
blockSize = 256;
recordSize = 256;
codeIsLong = true;
isIndexDataStruct = false;
fieldString =
"dm,证券代码,string,12,0,0,;" +
"pj,评级,string,2,2,0,;" +
"sm,说明,string,244,2,0,";
break;
#endregion
#region 复权行情,计算而得
case DataTypes.hqfq:
fileName = "DAY.DAT";
startAddress = 0x41000;
blockSize = 8192;
recordSize = 32;
codeIsLong = false;
fieldString =
"dm,代码,code,10,0,0,;" +
"rq,日期,date,4,1,0,;" +
"kp,开盘复权价,single,4,2,4,B;" +
"zg,最高复权价,single,4,3,8,B;" +
"zd,最低复权价,single,4,4,12,B;" +
"sp,收盘复权价,single,4,5,16,B;" +
"sl,复权成交数量,single,4,6,20,A;" +
"je,成交金额,single,4,7,24,;"+
"spsyl,收盘收益率,single,4,0,0,";
break;
#endregion
}
string[] fieldLine = fieldString.Split(new char[] { ';' });
fields = new string[fieldLine.Length, 7];
for (int i = 0; i < fieldLine.Length; i++)
{
string[] field = fieldLine[i].Split(new char[]{','} ,7 );
for(int j=0;j<field.Length;j++)
{
fields[i,j]=field[j];
}
}
}
}