股票市值统计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
股票市值统计
背景
随着我国经济迅速发展,金融市场也日益壮大,其中股票市场(也叫做证券市场)发展更为迅猛。我国目前有两所证券交易所,两千多家证券营业部,基金管理公司很多,目前光开发式基金就有200多只,还有数不清的私募基金,信托公司,还有九千多万的股民,而且每天还以几万户新增用户,可以说跟股票有关公司、个人在我国已经非常普及。
所有这些人都会关心自己股票或基金或国债等,我们统称为证券,他们关心的是我目前有多少市值,今天买卖的赚钱没有,如何能准确的反映出自己帐号上的最新市值和盈亏。个人可能依赖于交易系统,也就是营业部系统查询,这就要求营业部需要有及时正确的数据供股民使用;但基金公司,各种投资公司由于数据量大,就需要他们自己建立一套能有效管理自己帐号下股票并能及时反映出最新状况的数据。
本人以前做过证券交易系统,对股票交易稍微有点熟悉,想把如何及时准确计算市值跟大家一起探讨,并希望对大家如证券公司、基金公司、投资公司等有个参考。
数据结构
为了准确及时统计帐号总市值、动态市值需要建立一个完善的数据库系统,由于交易系统数据多、数据量大、属性众多、关系复杂,我们现在只讨论如何有效、快速计算市值,其它辅助数据或关系不重要数据在这里就不描述,只列出我们关心的数据,主要有客户(帐号)信息、资金信息、证券帐号信息、证券代码信息、证券余额信息,下面我就分别讲述:
客户信息
客户信息主要是记录客户基本信息,如客户号、客户姓名、客户各种密码(一般有交易密码、取款密码,根据情况附加密码等)、身份证、客户类别、通讯地址信息等。主要功能提供身份认证,而客户唯一标识客户号则是整个系统纽带,下面很多数据都跟客户号有关。
客户号是客户识别唯一标志,每个客户一个,一般以数字表示,便于从各种终端输入,如:电话、手机、小键盘等,可以从1开始编码,也可以分段编码,也可以随意编码,但不能重复。我们下面数据一般都以客户号为单元来统计。
对我们统计信息来说,最主要的就是客户号,数据库结构表示(该名称我们可以暂时这么定,每个系统可以选自己喜欢名称):
表名称:CustomerInfomation
字段名称类型中文名称备注
customer_id INT 客户编码PK主键
...
资金信息
资金信息用于记载客户所对应的各种货币的资金余额,如实际资金、可用资金、可取资金、冻结资金、长期冻结资金,未结利息等。
在统计市值过程中需要信息有:客户帐号、币种类别、期初余额、当前余额。
根据上面分析,我们给出资金信息表:FundBalance
字段名称类型中文名称备注
customer_id INT 客户编码PK主键
money_id Tinyint 币种PK主键
begin_balance money 期初余额昨日结算完成的余额,
不包括今天存取金额current_balance money 当前余额期初余额+当天存取金
额
frozen_balance money 冻结金额
unfrozen_balance money 解冻金额
...
币种信息
上面资金信息中提到币种,也就是目前我们沪深股票中除了A股用人民币结算外,还
有B股,也就是上海B股,它用美元结算;深圳B股,它用港币结算。这样我们就需要处
理多种币种,在计算总市值时候还需要有个兑换率,把它们统一兑换成人民币来计算。
对应数据库表结构:
字段名称类型中文名称备注
money_id Tinyint 币种PK主键(1-人民币2-
美元3-港币...)money_name varchar 币种名称人民币、美元、港币... change_rate float 兑换率一般记载最新兑换率以
供参考
证券帐号信息
证券代码信息
证券余额信息
为了统计买卖动态市盈率或动态市值,还需要增加两个信息:买入金额和卖出金额。买入金
额意识就是当天买入股票、基金、国债等所花掉的资金(冻结资金)包括各种手续费,如佣金、印花税、过户费等;卖出金额也就是卖出股票数量和价格的乘积减去各种手续费。有了
这几个金额我们不但可以计算买卖前的期初市值、当前市值(昨日余额乘以股票最新价),也可以计算买卖后的动态市值,具体计算过程请看下面分析。
计算方法
修改过程
结束语