|
图文卡与钱龙分析软件接口规范
|
|
图文卡与钱龙分析软件接口规范 第一章 系统概述 系统的物理结构 股票分析软件 Lonsd.exe(单机版) 驱动程序 Driver.exe(TSR) 操作系统 DOS3.30 or High 硬件平台 PC + 数据接收机 数据接收机可有多种实现方式,典型的有: VBI(图文电视)方式 RDS(调频副载波)方式 MODEM(调制解调器)方式 可视图文方式 X.25方式 股票分析软件Lonsd.exe通过驱动程序Diver.exe访问股票的行情数据,与不同的接收方式或硬件平台无关,而每一种数据接收机均需一个特殊的驱动程序Diver.exe以保证数据的正常接收。驱动程序Diver.exe为一常驻内存程序(TSR),负责实时数据的接收。所有的数据接收机的硬件生产厂商需提供用户针对该接收机的驱动程序Diver.exe,并保证能接收到本规范所定义的钱龙动态股票分析软件所需要的数据项,用户即可使用钱龙公司出品的最新股票分析单机版软件。实时数据发射端和数据接收机之间的通讯协定由数据接收机的硬件生产厂商决定,只须满足速度及稳定性要求即可。 系统的配置需求 CPU 80386、80486 or Pretium Memory >=2M, Free Memory>=1.6M( 建议>=4M) Display Standard VGA 640*480 16色 DOS VER3.30 or High(建议使用SmartDrv.exe) TLOOS 钱龙公司天生赢家Winnegro专用软件狗一个 接收速度 建议>=1 记录数/秒 第二章 动态单机版工作流程 驱动程序Diver.exe和分析软件Lonsd.exe的共用数据区 共用数据区由BIOS通讯区和行情数据区两部分组成。BIOS通讯区由硬件类型、硬件机号、行情类型、数据区地址(段地址和偏移量),数据区记录首指针、尾指针和Diver驻留标志等元素组成。行情数据区以队列方式存放,每条启示为96个字节,共有256条记录,记录格式见第三章。 驱动程序Diver.exe的工作流程 非驻留部分: 初始化,检查硬件-数据接收机是否存在。 接收所有股票的基本资料,建立证券名称对照表(需存盘,含各种指数),证券名称对照表见第三章,证券名称对照表按类别(type)排序,相同类别则按股票代号排序。 初始化BIOS通讯区,置硬件类型、硬件机号和行情类型、数据区段地址、偏移置和Diver驻留标志均需为0。 驻留部分: Driver驻留标志置为0xaa,检查分析软件是否启动,即判断数据区内存地址是否已置好。 若好,则接收数据。若当前数据首指针为n,则将行情数据写至(数据区内存地址+n*88)位置,然后置数据首指针置为n+1。(当n=255时,数据首指针置为0)。 若数据区内存地址为0,则停止接收数据。 分析软件Lonsd.exe的工作流程 检查是否已安装驱动程序,若是则申请数据区内存,置数据区内存地址。 将数据区首指针和尾指针置为0。 接收股票行情数据:判断首指针是否等于尾指针,若不等,设当前尾指针为m,则从(数据区内存地址+m*88)读一条记录,然后置数据尾指针置为m+1。(当m=255时,数据尾指针置为0)。 进入分析系统,循环处理第3条。 退出分析软件后将数据区内存地址重新置为0。 第三章 数据区、数据包及数据文件格式 BIOS通讯区数据表 硬件类型 0040:00f0 byte 1 Driver 不能为0 硬件机号 0040:00f1-00f5 5byte 5 Driver 行情类型 0040:00f6-00f7 16bit 1 Driver 最多为16种 数据区段地址 0040:00f8-00f9 word 1 Lonsd 数据区偏移地址 0040:00fa-00fb word 1 Lonsd 记录首指针 0040:00fc byte 1 Lonsd 由Driver改变 记录尾指针 0040:00fd byte 1 Lonsd 由Lonsd改变 汇金指标 0040:00fe byte 1 无 Driver驻留标志 0040:00ff byte 1 Driver 已驻留为0xaa 总计 0040:00f0-00ff 16 注:1、当汇金指标的值<=0f时,其值等于0,新股增加采用插入方式,其值等于1,新股增加采用代码表的方式,即使用exe目录下的NameTbl.Sha、NameTbl.Sza。 2、当汇金指标的值>0f时,则表示接收行情的方式当ax=0时,使用软中断接收行情,当ax=1时,使用硬中断接收行情0,并使用exe目录下的NameTbl.Sha、NameTbl.Sza。 指数数据包 数据包类型 type char 1 证券类型 证券代码 code(6) char 6 昨日收盘 close long 4 今日开盘 open long 4 今日最高 high long 4 今日最低 low long 4 今日最新 new long 4 总买盘量 vbuy long 4 可忽略 总卖盘量 bsell long 4 可忽略 总成交量 volume long 4 单位:百股 成交金额 amount long 4 单位:百元 总家数 total int 2 可忽略 日期 date long 4 可忽略 时间 time Long 4 可忽略 保留 reserved(34) Char 34 校验码 chksum Char 1 股票名称 name Char 8 总计 96 个股数据包 数据包类型 type Char 1 证券类型 证券代码 code(6) Char 6 昨日收盘 close Long 4 今日开盘 open Long 4 今日最高 high Long 4 今日最低 low Long 4 今日最新 new Long 4 买盘价1 pbuy1 Long 4 买盘量1 vbuy1 Long 4 买盘价2 pbuy2 Long 4 买盘量2 vbuy2 Long 4 买盘价3 pbuy3 Long 4 买盘量3 vbuy3 Long 4 卖盘价1 psell1 Long 4 卖盘量1 vsell1 Long 4 卖盘价2 psell2 Long 4 卖盘量2 vsell2 Long 4 卖盘价3 psell3 Long 4 卖盘量3 vsell3 Long 4 总成交量 volume Long 4 单位:股 成交金额 amount Long 4 单位:元 校验码 chksum Char 1 股票名称 name Char 8 总计 96 信息数据包 数据包类型 type Char 1 时间 time Int 2 如12:59表示为1259 流水号 sieralno Int 2 信息编号(0-9999) 提供者 provider Char 14 信息来源 总块数 totblock Int 2 块号 blockno Int 2 块号=0时为信息标题 信息内容 content(64) Char 64 每块信息为64字节 校验码 chksum Char 1 总计 88 证券名称对照表NameTbl.Sha NameTbl.Szn 证券类型 type Char 1 Bit7为标志位 证券代码 code(6) Char 6 不满8位填空格 证券名称 name(8) Char 8 最小交易单位 unit Char 1 每手股数/10 总计 16 注意事项 所有股票的价格及指数的值均为实际值乘1000。股票的成交金额以元为单位,成交量(买卖盘)以股数为单位。指数的成交金额以百元为单位,成交量(买卖盘)以百股为单位。 日期的表示:如1996年1月1日为19960101(长整型)。 B股的价格单位:上交所为美元,深交所为港元,因此在计算B股指数的成交金额时必须乘上汇率,否则会导致B股成交金额和大盘成交金额有误差。 信息数据包块号=0时的内容为该信息的标题。信息的正文块号从1开始。 两个证券名称对照表文件的目录分别为\ML30\DATA\SHASE\NameTbl.Sha和\ML30\DATA\SZNSE\NameTbl.Sza。 Type作为证券类型时,Bit7为标志位,Bit7=1时忽略该股票。 Lonsd对每一个行情来源(上交所或深交所)最多能处理16个指数和560个股票。 目前Lonsd 读取行情记录时暂不对校验码(chksum)做检查。 附录一 实时行情种类 Byte 0: 0040:00f6 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 保留 保留 保留 保留 保留 保留 深证所 上证所 Reserved Reserved Reserved Reserved Reserved Reserved SZNSE SHASE Byte 1: 0040:00f7 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 保留 保留 保留 保留 保留 保留 保留 保留 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved 附录二 数据包类型/证券类型 上海指数 0x10 上海A股 0x11 上海B股 0x12 上海债券 0x13 上海权证 0x14 上海红利 0x15 上海配股 0x16 上海证交所信息 0x1f 深圳指数 0x20 深圳A股 0x21 深圳B股 0x22 深圳债券 0x23 深圳权证 0x24 深圳红利 0x25 深圳配股 0x26 深圳证交所信息 0x2f 综合财经信息 0x05 空包 0xff 注:法人股系统及各期货交易上市的期货行情资料待日后(V3.10)增加。 附录三 证券代码(code) 个股的代码 个股的代码即为个股的股票代码,深圳证券交易所上市的股票的代码前4位有效,后2位填空格。 指数的代码 上证综合指数 999999 上证A股指数 999998 上证B股指数 999997 上证工业股指数 999996 上证商业股指数 999995 上证地产股指数 999994 上证公用事业股指数 999993 上证综合股指数 999992 上证30指数 999991 深圳成份股指数 9996 深圳成份A股指数 9995 深圳成份B股指数 9994 深证工业股指数 9993 深证商业股指数 9992 深证金融股指数 9991 深证地产股指数 9990 深证公用事业股指数 9989 深证综合股指数 9988 深证基金指数 9987 深证综合指数 9999 深证综合A股指数 9998 深证综合B股指数 9997
|
posted on
2006-08-18 13:33
郭胜群
阅读( 3074)
评论()
收藏
举报
|