AUTD模拟交易系统项目需求规格说明书文档格式.docx
《AUTD模拟交易系统项目需求规格说明书文档格式.docx》由会员分享,可在线阅读,更多相关《AUTD模拟交易系统项目需求规格说明书文档格式.docx(52页珍藏版)》请在冰豆网上搜索。
撮合系统不能讲系统自动挂单相互撮合。
)
✧模拟交易客户端用于客户黄金现货交易或Au(T+D),Ag(T+D)递延交易。
✧模拟交易管理系统用于维护客户的开户信息和交易的管理信息。
二.2范围
●撮合系统自动推送最新行情
●撮合系统自动模拟挂单以维持模拟黄金市场
●撮合系统撮合交易挂单(自动挂单不能相互撮合)
二.3用户
●中国银行业务操作人员,负责维护模拟交易系统的操作与管理。
●客户,使用模拟交易客户端进行挂单交易。
二.4强制的限制条件
二.4.1解决方案的限制条件
{此处明确了限制条件,它们规定了解决问题必须采取的方式。
描述强制使用的技术和解决方案。
包括使用的版本号。
还应该解释使用该技术的原因。
}
二.4.2实现环境
[此处描述产品将被实施的技术环境和物理环境。
这包括自动的、机械的、组织的和其他设备,以及非人员的相邻系统。
]
二.4.3相关应用
[此处描述那些不属于产品的一部分,但产品却又必须与其协作的应用程序。
这些可能是外部引用程序、商业软件包或已经存在的内部应用程序。
二.4.4第三方组件
[此处描述实现产品需求所必须使用的COTS(商业组件)。
二.4.5相关假定和事实
[事实是可能对产品产生影响的因素,但不是强制性的需求限制条件。
他们可以是业务规则、组织系统,或任何对产品有影响的活动。
事实是希望规格说明书的读者知道的事情。
[开发者所做的假定清单。
这些假定可能是关于预期的操作环境的,也可以是任何对产品产生影响的事情。
作为管理预期的一部分,假定还包含关于产品不会做什么的说明。
[还应该包括用户有明确要求的开发期限、设备条件、开发场地、用户的资料准备和交流配合上的要求等]
第三章业务概述
三.1业务概述
模拟交易系统的使用人员主要针对将来可能开通中国银行的贵金属代理交易的客户,客户使用模拟系统的交易客户端与模拟的黄金市场进行交易。
三.2业务流程描述
整个模拟系统的主要业务分为客户账户管理模块,实时交易模块,业务查询模块,撮合模块。
三.2.1客户账户管理模块
开户:
客户应首先中国银行代理个人黄金业务模拟交易签约客户。
和中国银行代理个人黄金签约客户不同处是模拟交易的签约客户是签约于中国银行,系统内部会生成一个黄金交易客户编号,并根据黄金交易客户编号设立一个虚拟交易资金账户与客户绑定。
账户中设立了一定数额的虚拟交易资金。
客户交易:
客户交易时使用虚拟交易资金账户中的虚拟交易资金进行交易。
虚拟交易资金的变化情况如下
处理类型
名称
说明
虚拟交易资金账户变化情况
实时交易
申报
现货各合约买入申报、Au(T+D)、Au(T+N)多头和空头开仓申报、收货交割申报、中立仓收货申报
冻结资金
申报撤销
上述申报的撤销
解冻资金
申报成交
现货各合约买入申报成交、Au(T+D)、Au(T+N)多头和空头开仓申报成交、收货交割申报成交、中立仓收货申报成交
扣除已经冻结的资金
现货各合约卖出申报成交、Au(T+D)、Au(T+N)多头和空头持仓平仓、交货交割申报成交、中立仓交货申报成交
增加虚拟交易资金账户的资金
三.2.2实时交易模块
●客户通过模拟交易客户端发起黄金现货交易或Au(T+D)、Ag(T+D)开仓交易,客户必须输入:
交易委托的合约,交易委托的手数,交易委托的价格等基本要素。
●模拟交易管理系统计算客户需要冻结的资金
现货买入总共需要冻结的资金(元)=委托交易价格(元)×
委托交易手数(手)×
每手基本交易单位(克/手)×
(交易保证金率+客户交易的总手续费率)
现货交易保证金率=100%(此参数比例可进行手工调整)
Au(T+D)、Ag(T+D)买卖总共需要冻结的资金(元)=委托交易价格(元)×
Au(T+D)、Ag(T+D)交易保证金率=10%(此参数比例可进行手工调整)
客户交易的总手续费率=模拟交易系统中撮合系统收取交易手续费率+我行向客户收取手续费率(我行向客户收取的手续费率可进行手工调整)
●当客户资金不足时直接回报客户可交易的虚拟资金不足。
●如果客户的可用虚拟资金充足,冻结客户的可用虚拟资金,并将交易挂单送入模拟交易系统的撮合系统模块,进行交易撮合。
●告知客户此笔交易委托已经接收。
●撮合系统对管理系统发送过来的客户交易进行撮合成交,并将成交信息(全部成交,部分成交)发送给管理系统。
●模拟交易管理系统对成交进行处理,释放客户在交易申报时所冻结的部分资金,扣除客户交易成交使用的金额,客户的库存或持仓随着买入申报或开仓申报成交相应增加。
无论是现货还是Au(T+D)、Au(T+N),成交时都可以遵照下面计算公式处理:
成交释放客户的资金(元)=委托价格(元)×
成交手数×
每手基本交易单位(克)×
成交扣除客户的资金(元)=成交价格(元)×
实际释放到黄金交易资金账户的资金(元)=释放客户的资金(元)-扣除客户的资金(元)
对于现货买入成交:
客户库存增加(克)=成交手数×
每手基本交易单位(克)
对于Au(T+D)、Au(T+N)开仓:
客户持仓增加(手)=成交手数
三.2.3业务查询模块
按查询类别可以分为:
客户信息查询,业务交易信息查询。
客户信息查询:
提供客户对各种交易信息进行查询。
包括客户资金查询、客户库存查询、客户持仓查询、客户保证金率查询、递延费率查询、交易费率查询等
交易信息查询包括:
客户资金明细查询、交易委托信息查询、成交信息查询、费用明细查询等。
三.2.4撮合模块
撮合系统主要包括:
自动挂单,交易撮合,行情推送3部分功能。
●行情推送:
撮合系统第一次启动后,根据行情容忍点差,进行最新价上下波动,每秒向模拟交易管理系统和模拟交易客户端推送最新行情。
●自动挂单:
监控模拟市场,将模拟市场无挂单或已存在挂单不足以显示5档行情时(市场不完善),系统自动发起挂单,以填充市场。
系统自动发起的挂单不参与自我撮合,一定时间后会失效,如果失效后发现市场仍不完善,则根据最新的行情再自动发起一部分挂单来维护市场运行。
●交易撮合:
所有交易挂单采用按价格优先机制进行排队处理。
(排定市场中的买5档和卖5档价格)。
优先以买卖5档价格成交。
当一个客户挂了一笔非5档价格的买挂单,按排队机制是不会显示在买卖5档中。
但当另外一个客户发起了一笔同样价格的卖挂单时,则给予成交。
●交易成交原理为价格相同优先,其次为最先挂单时间。
第四章业务功能需求及分析
四.1总体分析
四.1.1系统关系图
本系统包括(AUTD模拟交易撮合系统,AUTD模拟交易管理系统,AUTD模拟交易转发模块,AUTD模拟交易客户端,XDESK客户统一登录模块,资讯模块)其中AUTD模拟交易客户端是面向客户的界面程序,主要向客户提供客户账户信息,模拟市场行情,模拟市场的交易。
AUTD模拟交易转发模块负责接收客户端请求,并将请求通过MCIS发到AUTD模拟交易管理系统。
AUTD模拟交易管理系统将客户的交易信息发送到模拟交易撮合系统中进行撮合成交。
四.1.2系统体系结构图
[以图+文本结合的方式描述系统的总体架构,重点在于自身系统本身。
以下应提供系统总体架构图:
举例:
以下对系统总体架构进行描述:
如上图所示报价引擎作为实现系统目标的平台,系统主要由以下服务模块组成:
Ø
统一报价应用接口总线(PriceEAI)
即时价格发布服务(PriceServer)
历史价格查询服务(PriceQuery)
数据库(含内存数据库)
报价业务管理模块(PriceManager)
报价接口(PriceAdapter)
报价技术管理模块(PriceDefine)
系统监控模块(PriceMonitor)
以下针对不同模块进行介绍:
统一报价应用接口总线(PriceEAI):
所有外部系统通过该接口总线请求或接收相应的报价信息。
针对一些有特殊要求的用户,可以在此统一接口的基础上开发个性化的接口,避免系统核心的频繁调整,也可提高系统本省的安全性。
即时价格发布服务(PriceServer):
专门用于发送即时价格。
历史价格查询服务(PriceQuery):
针对历史价格的查询,通过该服务提供。
该服务提供随机时段、固定时段等不同时段、不同报价种类的数据服务。
通过单设即时价格发布服务、历史价格查询服务提高系统处理价格发布业务的性能,减少相互之间的干扰。
四.1.3系统运行软硬件环境
四.1.3.1硬件环境
应包含硬件设备及网络环境要求。
说明:
各相关服务可根据系统用户量、数据量等压力情况分开或合并部署。
该硬件配置只考虑单台服务器,具体配置需结合用户量及报价数据量综合评估后确定。
硬件环境
IBMP55A
HDISK:
2TB
MEMORY:
16-20G
CPU:
4颗
四.1.3.2软件环境
服务器端:
操作系统:
AIX
数据库:
ORACLE
JDK:
1.5
中间件:
Webshpere7.1
PC前端:
Windows2000/XP/VISTA
办公软件:
Office2003
IE浏览器:
IE6、IE8
四.1.4系统总体流程
[以图+文本结合的方式说明系统的总体流程,重点在于系统内部各功能模块间的关系。
以下应提供系统的总体流程图。
以下对系统总体流程图进行描述:
图上灰色区域为我方项目范围,在采集价格后。
。
四.1.5系统功能组成图
四.2业务需求分析
[需求分析的目的是获取或描述系统需求中的每一个功能需求,并通过分析确定系统能够做什么?
谁来使用这个系统?
·
建立用例模型:
发现角色和用例,并确定角色之间的关系、用例之间的关系,以及角色与用例之间的相互关系
描述用例:
角色与系统如何交互的规格说明。
四.2.1撮合系统
此撮合系统为全天运行市场永远开市,交易状态永远为连续交易,不进行切日转换。
四.2.1.1行情推送
四.2.1.1.1业务需求要求:
根据一个基准的最新价然后在一定范围内上下波动,以模拟真实的黄金市场。
四.2.1.1.2功能描述:
撮合系统第一次开启时通过配置文件读入行情波动容忍点差参数,和一个基准最新价。
然后根据这2个值模拟真实黄金市场的波动行情。
每秒向管理系统和客户端推送一次行情。
行情信息包括现货市场,递延市场开市状态,现货合约和Au(T+D),Ag(T+D)合约的连续交易状态,现货市场和递延市场(Au(T+D),Ag(T+D))的最新价格状态等。
四.2.1.1.3功能流程图:
无
四.2.1.1.4界面效果图:
四.2.1.1.5前提与约束:
当系统第一次开启时,因为没有任何客户挂单,所以需要模拟市场行情进行波动,当开始出现客户挂单并被撮合成交后,采用此成交的价格为最新价推送给管理系统和客户端,而不再进行模拟行情的波动。
(同一合约需要模拟卖5档和买5档,共10档价格)
四.2.1.1.6处理规则:
四.2.1.1.7输入数据项:
详细描述输入数据项的名称、格式要求、输入要求和限制、默认要求,及其他说明。
序号
数据项名称
数据格式及展示要求
是否必输、默认值
备注
内部序列号
长度为整型,输入框
必须
必须为已经存在的内部序列号
台帐种类
长度为3,数值型,下拉列表框,可选可输
必须为已经存在的台帐种类
通知日期
长度为8,进行日期格式检查,日历框
必须,默认为当天
应收日
自动计算=通知日期+一月,可修改,
计划金额
Double,长度为16,2,输入框
长度为300,输入框,加滚动条
可选
四.2.1.1.8输出数据项:
见金交所接口平台V2.5
详细描述输出数据项的名称、格式要求,及其他说明。
市场代码
长度为整型
长度为3,数值型
长度为8
Double,长度为16,2,千分位分隔。
长度为300,有滚动条
四.2.1.1.9接口方式:
通过XNET方式推送给管理系统和客户端.
四.2.1.1.10接口描述:
四.2.1.1.11与其他功能点关系:
四.2.1.2自动挂单
四.2.1.2.1业务需求要求:
为了模拟真实黄金市场,使客户登陆模拟市场时不出现市场不运作的情况,需要系统自动挂一批单.
四.2.1.2.2功能描述:
当撮合系统开始运行后,系统判断目前的是市场行情是否满足了一个合约同时存在买5档和卖5档挂单或每档挂单总手数较少。
如果不存在或较少就根据最新行情给出的最新价对缺少挂单的某一档价格进行挂单。
以保证市场的运行。
如果判断当前的行情满足了一个合约同时存在买5档和卖5档挂单且每档挂单总手数较多则自动挂单功能暂时停止工作,直到判断需要开启自动挂单功能时再开启自动挂单功能。
四.2.1.2.3功能流程图:
四.2.1.2.4界面效果图:
四.2.1.2.5前提与约束:
每个合约必须存在买5档卖5档共10档的挂单,每档挂单最少数量需要配置文件维护。
每档挂单总手数的最大值不做限制。
四.2.1.2.6处理规则:
四.2.1.2.7输入数据项:
四.2.1.2.8输出数据项:
四.2.1.2.9接口方式:
四.2.1.2.10接口描述:
四.2.1.2.11与其他功能点关系:
四.2.1.3撮合交易
四.2.1.3.1业务需求要求:
为了模拟黄金市场,使客户登陆模拟交易客户端所做的挂单可以成交,需要模拟系统对交易进行撮合。
四.2.1.3.2功能描述:
当客户发起的一笔买挂单进入撮合系统后,系统根据此挂单的价格,在此合约的卖挂单队列中抽取对应价格进行成交,(根据挂单的笔数会出现完全成交和部分成交),如果没有成交或部分未成交部分则进入买挂单队列等待下次撮合。
当客户发起的一笔卖挂单进入撮合系统后,系统根据此挂单的价格,在此合约的买挂单队列中抽取对应价格进行成交,(根据挂单的笔数会出现完全成交和部分成交),如果没有成交或部分未成交部分则进入卖挂单队列等待下次撮合。
四.2.1.3.3功能流程图:
四.2.1.3.4界面效果图:
四.2.1.3.5前提与约束:
按价格优先顺序进行撮合(如果存在一笔不在卖5档内的价格的挂单,如果出现一笔对应价格的买挂单,则需要优先撮合这2笔挂单交易。
撮合交易优先撮合2笔都是由客户发起的挂单,其次才是撮合客户和系统自动挂单。
撮合交易不能撮合2笔都是系统自动挂单。
客户挂单进入撮合系统按买卖共10档价格进行排队。
同一档价格中按挂单早晚进行排队。
四.2.1.3.6处理规则:
四.2.1.3.7输入数据项:
四.2.1.3.8输出数据项:
四.2.1.3.9接口方式:
四.2.1.3.10接口描述:
四.2.1.3.11与其他功能点关系:
四.2.2模拟交易客户端
是面向客户的界面程序,与模拟交易管理系统进行https方式的通讯,允许客户现货和递延的委托交易。
四.2.2.1客户端注册
四.2.2.1.1业务需求要求:
✧客户端登陆界面,提供新用户注册按钮。
✧点击注册按钮后进入注册界面,客户输入必要信息后,提交注册请求。
✧客户必须输入用户名,密码,确认密码,e-mail,证件类型,证件号码,联系电话,联系地址。
✧客户端收到注册请求的返回信息,如果注册成功则自动跳转到登陆界面,否则则在注册界面显示注册失败原因。
四.2.2.1.2功能描述:
四.2.2.1.3功能流程图:
四.2.2.1.4界面效果图:
四.2.2.1.5前提与约束:
四.2.2.1.6处理规则:
四.2.2.1.7输入数据项:
四.2.2.1.8输出数据项:
四.2.2.1.9接口方式:
https通讯
四.2.2.1.10接口描述:
四.2.2.1.11与其他功能点关系:
四.2.2.2客户端用户登陆
四.2.2.2.1业务需求要求:
客户每次登陆模拟交易系统客户端都需要验证验证码
四.2.2.2.2功能描述:
✧启动客户端,输入用户名、密码、验证码。
✧系统用户名,密码,验证码如果正确,登录成功,进入系统。
四.2.2.2.3功能流程图
四.2.2.2.4界面效果图
四.2.2.2.5前提与约束:
验证码由模拟交易管理系统来生成。
四.2.2.2.6处理规则:
四.2.2.2.7输入数据项:
客户ID
长度为20,输入框
客户密码
长度为32,输入框
验证码
输入框
Etoken或验证码二选一
四.2.2.2.8输出数据项:
四.2.2.2.9接口方式:
四.2.2.2.10接口描述:
四.2.2.2.11与其他功能点关系:
四.2.2.3客户端用户密码修改
四.2.2.3.1业务需求要求:
提供用户修改密码功能
四.2.2.3.2功能描述:
用户输入原密码,新密码和确认新密码来修改密码
四.2.2.3.3功能流程图
四.2.2.3.4界面效果图
四.2.2.3.5前提与约束:
四.2.2.3.6处理规则:
密码至少包含一位字母和一位数字,且长度范围(6-32)位.
四.2.2.3.7输入数据项:
原密码
新密码
确认密码
四.2.2.3.8输出数据项:
四.2.2.3.9接口方式:
四.2.2.3.10接口描述:
四.2.2.3.11与其他功能点关系:
四.2.2.4客户端密码找回功能
四.2.2.4.1业务需求要求:
当客户忘记密码后,可以通过密码找回功能找回密码。
四.2.2.4.2功能描述:
当客户忘记密码后,可以点击登录界面的密码找回按钮,进入密码找回界面。
在密码找回界面输入客户的用户名,e-mail,联系电话,后后台会验证信息,
如果信息正确,就会给指定邮箱发送重置了的新密码的邮件。
四.2.2.4.3功能流程图:
四.2.2.4.4界面效果图
四.2.2.4.5前提与约束:
四.2.2.4.6处理规则:
后台需要验证客户的用户名,联系电话,e-mail地址.
四.2.2.4.7输入数据项:
交易码
字符串型
联系电话
e-mail
四.2.2.4.8输出数据项:
四.2.2.4.9接口方式:
四.2.2.4.10接口描述:
四.2.2.4.11与其他功能点关系:
四.2.2.5现货买入交易
四.2.2.5.1业务需求要求:
支持客户进行模拟现货买卖交易。
四.2.2.5.2功能描述:
现货买入在客户交易的现货?
递延页发起,需要输入内容:
主要字段/域/元件
类型
长度
必输
合约代码
下拉框
默认为在行情列表中选中合约的合约代码。
买卖方向
输入,单选按钮
默认为买入
开平方向
延期合约必输,现货合约变灰
变灰
委托价格(元)
输入(自动抓价)
15位
小数点后2位。
输入的委托价格不能超过涨/跌停板价
委托手数(手)
输入
9位
整数。
输入的委托数量不可超过最大可交易手数
点击“委托申报”按钮,提交委托交易;
客户端收到报单处理结果后,若委托成功,显示显示委托结果页,如果委托失败,显示失败原因。
[委托结果页]
挂单流水号
自动回显
委托返回字段
委托状态
委托的合约代码
买入
交易类型
现货
开平仓标志
开仓/平仓,现货不显示。
小数点后2位,交收和中立仓没有。
委托数量(手)
四.2.2.5