主页 > 案例大全 > 论文写作模式-期货公司账户系统适当性管理设计

论文写作模式-期货公司账户系统适当性管理设计

2021-03-29 11:18:57

  投资者适当性管理是现代金融服务的基本原则和要求,也是成熟市场普遍采用的保护投资者权益和管控创新风险的做法。当前,期货市场处于稳步发展的历史时期,国际影响力显著提升,期货行业监管严格,市场规范有序。从期货市场的投资者参与结构上看,中小投资者仍然是市场主力,这部分人群投资规模小,投资经验少,抗风险能力弱,需要对其给予教育和重点保护。统一的适当性管理,通过产品和投资者的分类分级及匹配,使中小投资者更加谨慎地参与高风险市场,有利于加强期货市场投资者的保护。

  本次设计采用B/S设计模式,以Spring为开发框架的Java web项目,后端用Oracle数据库进行数据管理,来实现期货公司账户系统的适当性开户流程。

  1.1项目的背景和意义

  1.1.1政策背景

  证监会发布《证券期货投资者适当性管理办法》(以下简称《办法》),自2017年7月1日起施行,同时发布《关于实施<证券期货投资者适当性管理办法>的规定》,自发布之日起施行。

  《办法》一共43条,针对适当性管理中的实际问题,主要规定了以下制度安排:一是形成了依据多维度指标对投资者进行分类的体系,统一投资者分类标准和管理要求。二是明确了产品分级的底线要求和职责分工,建立层层把关、严控风险的产品分级机制。三是规定了经营机构在适当性管理各个环节应当履行的义务,全面从严规范相关行为。四是突出对于普通投资者的特别保护,向投资者提供有针对性的产品及差别化服务。五是强化了监管职责与法律责任,确保适当性义务落到实处。

  经营机构在《办法》发布后至施行前的期间内,应当从管理制度、技术设备、人员配备等各个层面做好准备。在《办法》施行后,经营机构应当按照《办法》要求,对新开立账户或接受服务的客户以及购买新产品或接受新服务的老客户进行分类、评估、匹配及动态管理,建立投资者评估数据库,严格落实适当性管理制度。

  投资者适当性管理是现代金融服务的基本原则和要求,也是成熟市场普遍采用的保护投资者权益和管控创新风险的做法。当前,期货市场处于稳步发展的历史时期,国际影响力显著提升,期货行业监管严格,市场规范有序。从期货市场的投资者参与结构上看,中小投资者仍然是市场主力,这部分人群投资规模小,投资经验较少,抗风险承受能力较弱,需要对其给予教育和重点的保护。统一的适当性管理,通过产品和投资者的分类分级进行匹配,使得中小投资者能够更加谨慎地参与高风险市场,有利于加强期货市场对于投资者的保护。

  1.1.2意义

  作为一个即将离开学校,走向社会的计算机科学与技术专业的本科生,个人认为自己非常有必要尝试去做有实际意义的项目。这些复杂的技术问题不光是软件开发上的技术问题,更关键的还在于解决与社会生活相关联的性质复杂的业务问题.因此,毕业设计作为我们大学生活最后也是最重要的一次软件开发的经历.我认为非常有必要去解决社会生活中会遇到的具体的问题.基于这种考虑之下,结合实际的实习经历,我选择了期货公司账户系统适当性管理设计的毕业设计选题。

  1.2研究现状分析

  投资者适当性管理也被称为合格投资者管理,当金融机构把新的金融产品介绍给投资者时,其首要任务是知晓投资者的购买条件是否符合金融机构的基本要求,适当性是指用户是否可以承受金融机构介绍的产品和服务的风险,需要特别关注的是适当性包含的是金融机构零售业务。相较于市场投资者适当性管理而言,是分配科学、严谨的资源,并且在制度的束缚下探索适合的投资者,从而符合投资者要求。投资者适当性管理标准极为严格,比如如制约自然人股东身份,降低个人投资者参加交易发生的次数;单笔转让股数不低于三万股等条件,其目的是预防中小型投资者增加交易活动次数,对市场造成影响。

  首先,创新始终贯穿于整个金融行业之中,并成为其持续发展的动力支撑,伴随着金融产品的创新与服务难度的不断加强,投资者自身的知识水平和专业技能将会受到一定阻碍,使得投资者对一些金融产品与服务的风险不太了解。而金融中介机构的专业性比较强,把握的信息也会比投资者更多,更准确。中小型的投资者在采购难度系数较高的复杂金融产品与服务时,通常不能快速找到产品漏洞,完全是依靠金融中介机构的讲解。即便金融中介机构将产品信息准确无误地告诉投资者,但由于金融市场的繁琐性,也会导致金融产品和服务对少数投资者不太适用。

  其次,即使投资者对产品存在的不足较为了解,也并不能很快寻求法律上的帮助。金融产品在市场中价格波动较大而且影响的因素非常之多,难以确定其价格波动是否是由产品质量引起的,又或是其他原因引起的。根据现有法律条例,组成证券诈骗的法律叫做“违背客户真实意愿”,但是在实际的实践阶段难以肯定。即便是通过深入的研究,明确产品价格波动是由产品质量引起的,也很难衡量投资者在实践过程中需要的赔偿数额。因此应通过投资者适当性管理来调整投资者的地位,以确保投资者合法权益不受损害。

  1.3本文的主要工作

  本选题要求的系统开发主要以JAVAEE为基础,底层的架构使用Spring搭建,开发工具为eclipse,采用eclipse的maven工程,使用maven来管理项目,项目的数据库使用oracle,项目的骨架为Spring MVC框架。实现期货公司账户系统的适当性开户流程(柜员开户),适当性信息采集,档案采集,问卷设置,客户风险等级,审核等业务流程,对整个项目进行概述

  1.4本章小结

  本章主要讨论了本课题的相关政策背景、现状,分析了适当性管理对于金融公司以及投资者的作用于意义,对课题价值进行了说明。

  2相关技术介绍

  2.1数据库Oracle

  1.开放性:

  Oracle能在所有主流平台上运行,完全支持所有的工业标准,采用完全开放的策略,可以使客户选择最适合的解决方案,对开发商全力支持。

  2.性能:

  Oracle几乎是性能最高的关系型数据库,保持有开放平台下的TPC-D和TPC-C的世界记录。

  3.客户端支持及应用模式:

  Oracle支持多层次的网络计算,支持多种工业标准,可以用OCI、JDBC、ODBC等网络客户连接。

  4.操作性:

  Oracle相对于其他RDBMS来讲较复杂,同时提供GUI和命令行,在WindowsNT和Unix下操作相同。

  5.使用性:

  Oracle具有相当长时间的开发经验,完全向下兼容。得到广泛的认可与应用,完全没有风险。

  6.安全性:

  Oracle获得了最高认证级别的ISO标准认证。它提供多层安全保护,包括用于评估风险、防止未授权的数据泄露、检测和报告数据库活动,以及通过数据驱动的安全性在数据库中实施数据访问控制的控制。

  2.2项目管理工具Maven

  作为项目管理和整合工具的Maven,它为开发者提供了一套具有完整的生命周期的框架。Maven有两大主要作用:包括依赖管理和项目构建。Maven的仓库就是用来存放项目所需要的jar包和插件,让开发人员可以花很少的时间去配置一些基础的东西。

  2.3 Spring框架

  2.3.1 spring框架中的IoC思想

  反转控制(IoC,Incersion of Control),又称以来注射(DI,Dependency Injection),是面向对象领域的编程思想,也是Spring的核心所在。其原理是基于OO的设计原则的The Hollywood Principle:Don’t call us,we’ll call you(别来找我,我会来找你的)。Spring提倡使用控制反转来解决依赖耦合问题,实现应用程序的松散耦合。在传统实现方式中,程序与程序之间的依赖关系由程序代码来直接控制。这样造成程序之间的紧耦合。而使用IoC,控制权就由程序代码转移到了IoC容器之中,也就是说,对象将不再是从容器中寻找它的依赖类,而是容器在实例化对象的时候主动将它的依赖类注入给它

  2.3.2 spring框架中的AOP思想

  面向切面编程(AOP)是OOP的延续,它的主要意图是:将日志记录,性能统计,按全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来,通过对这些行为的分离,希望可以将他们独立到非指导业务逻辑的方法中,进而改变这些行为的时候不影响业务逻辑的代码。AOP可以通过预编译方式和运行期动态代理实现,在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GOF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现

  2.3.3 springMVC

  很多应用程序的问题在于处理业务数据的对象和显示业务数据的视图之间存在紧密耦合,通常,更新业务对象的命令都是从视图本身发起的,使视图对任何业务对象更改都有高度敏感性。而且,当多个视图依赖于同一个业务对象时是没有灵活性的。

  SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦。基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,SpringMVC也是要简化我们日常Web开发。

  通过策略接口,Spring框架是高度可配置的,而且包含多种视图技术,例如JavaServer Pages(JSP)技术、Velocity、Tiles、iText和POI。Spring MVC框架并不知道使用的视图,所以不会强迫开发者只使用JSP技术。Spring MVC分离了控制器、模型对象、过滤器以及处理程序对象的角色,这种分离让它们更容易进行定制。

  2.4 Ajax

  Ajax=Asynchronous JavaScript and XML(异步的JavaScript和XML)。

  Ajax不是新的编程语言,而是一种使用现有标准的新方法。

  AJAX最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

  3系统需求分析

  3.1可行性需求分析

  开发技术可行性:本选题要求的系统开发主要以JAVAEE为基础,底层的架构使用Spring搭建,开发工具为eclipse,采用eclipse的maven工程,使用maven来管理项目,项目的数据库使用Oracle,项目的骨架为Spring MVC框架。都是一些成熟稳定的技术。Java是一种安全的编程语言,Java虽然源自于C++,但是它消除了许多C++的不可靠因素,Java的自动单元收集防止了内存丢失等动态内存分配导致的问题。Java不支持指针,防止了内存的非法访问。之所以用Oracle作为数据库开发工具,是因为Oracle是目前最具权威的数据库产品,它具有兼容性、可联结性、可移植性、开放性和高生产率的特点。而且,面对的客户是金融公司,数据库的安全性就更为重要了,Oracle的数据安全级别是C2级(最高级)。因此,系统开发的技术方面是可行的。

  实际操作可行性:该系统设计结构合理清晰,界面交互简洁友好,操作错误都会有相对应的提示信息,只要清楚开户流程,就可以很快熟悉的进行使用。

  3.1功能需求分析

  适当性信息管理,金融中介机构所提供的金融产品或服务与客户的投资目标、财务状况、风险承受能力水平、财务需求、受教育水平和经验之间的契合程度。即“适合的投资者购买与其对应的恰当产品”。是金融公司账户系统中,开户流程的一个不可或缺的环节,它的存在能够对新开立的账户或者接受服务的客户进行分类、评估、匹配及动态管理,通过对投资者的分级及匹配,加强期货市场对投资者的保护。需要实现的目标:一、有同一的适当性规划,避免管理上的孤岛。二、强化客户与产品的适当性匹配。三、优化适当性管理,提高效率与体验。

  4系统设计

  4.1功能模块设计

  账户系统适当性管理设计,主要包含5个模块:一、黑名单管理,涉及黑名单的导入,导出,查询,修改,删除。二、适当性信息采集,采集适当性信息,以及验证客户是否为黑名单客户限制开户。三、风险承受能力评估,给客户做问卷,根据筛选判断客户的风险承受能力等级。四、问卷设置,涉及问卷试题的设置,标准答案设置,分值设置,问卷的增加,删除,修改。五、审核模块,涉及对待审核任务的查询,审核提交的任务,以及审核打回等操作。

  图4-1:功能模块图

  4.2主要逻辑设计

  系统整体逻辑设计:

  图4-1:系统整体逻辑逻辑图

  信息采集逻辑设计:操作员登录后,根据客户提供的身份信息,进行适当性信息的填写,采集适当性信息的同时,黑名单校验会提示该客户是否为黑名单客户,客户为黑名单客户的话则不允许开户,输入完成后会进行客户图像采集,信息填写与图像采集结束后提交审核,审核通过后,适当性信息采集完毕。

  图4-2:信息采集逻辑图

  风险承受能力评估逻辑设计:客户进行问卷填写,问卷信息填写完毕后,通过给定的标准答案进行统计给分,给出客户不同的风险等级,并提交审核,审核通过后,风险承受能力评估完毕。

  图4-3:风险承受能力评估逻辑图

  4.3数据库设计原则

  (1)把同一个主题的数据存储到同一个数据表中。

  (2)通过设置索引字段,提高访问数据库的速度。

  (3)数据表设计时应该考虑实际的业务情况。

  (4)数据库设计应满足第三范式,减少数据冗余,尽量做到规范化设计。

  4.4主要表概述

  根据系统需求,数据库中主要相关的表有5张,分别为:

  (1)custpersoninfo表

  客户适当性信息表,保存输入的适当性信息。主要包括客户编号,投资期限,投资品种,证件类型,证件号码,出生日期,手机号码,邮编,省级代码,市代码,职业代码,电子邮箱,工作单位,联系地址,实际受益人,诚信来源类别,诚信来源名称等信息。

  图4-4:custpersoninfo表

  (2)customer表

  客户基本信息表,保存客户的基本信息。主要包括客户编号,客户姓名,账户全称,客户性别,国籍地区,机构标志,证件类别,证件号码,证件开始日期,证件有效截止日期,客户风险等级,客户风险测评日,客户风险到期日。

  图4-5:customer表

  (3)custeligquest表

  适当性试题表,保存适当性试题信息。主要包括问题编号,顺序号,试题类型,试题类别,试题属性,试题内容,试题标准答案,使用信息标志,备注。

  图4-6:custeligquest表

  (4)audittask表

  复核任务表,保存审核任务信息。主要包括流水序号,复核流程标识,复核级别,操作员编号,客户编号,客户姓名,界面被修改的字段信息,审核打回的字段,复核日期,复核时间等。

  图4-7:audittask表

  (5)blacklistcheckresul表

  黑名单校验记录表,保存黑名单校验记录的信息。主要包括当前日期,客户编号,证件类型,证件号码,国家代码,通过原因,来源类别,备注。

  图4-8:blacklistcheckresul表

  4.5主要表详细设计

  (1)custpersoninfo表

  表4-1客户适当性信息表

  序号字段名含义字段类型长度可否为空是否主键

  1 client_id客户编号varchar 18 N Y

  2 mobile_tel手机号码varchar 24 N N

  3 birthday出生日期date 20 N N

  4 e_mail电子邮箱varchar 24 N N

  5 address联系地址varchar 24 N N

  6 id_no证件号码int 40 N N

  7 id_type证件类型varchar 24 N N

  8 credit_source诚信来源varchar 24 N N

  9 invest_variety投资品种varchar 10 N N

  10 invest_years投资年限int 10 N N

  11 city_code市级代码varchar 24 N N

  12 province_code省级代码varchar 24 N N

  13 officezip邮编int 10 N N

  …………………

  (2)customer表

  表4-2客户基本信息表

  序号字段名含义字段类型长度可否为空是否主键

  1 client_id客户编号varchar 18 N Y

  2 client_name客户姓名varchar 24 N N

  3 full_name账户全称varchar 24 N N

  4 client_gender客户性别varchar 24 N N

  5 organ_flag机构标志varchar 24 N N

  6 corp_begin_date客户风险测评日date 20 N N

  7 corp_end_date客户风险到期日date 20 N N

  8 corp_risk_level客户风险等级varchar 24 N N

  9 nationality国籍地区varchar 10 N N

  10 id_kind证件类别varchar 24 N N

  11 id_no证件号码int 40 N N

  12 id_begindate证件开始日期date 20 N N

  13 id_enddate证件到期日期date 20 N N

  (3)custeligquest表

  表4-3适当性试题表

  序号字段名含义字段类型长度可否为空是否主键

  1 question_no问题编号int 10 N Y

  2 order_no顺序号int 10 N N

  3 question_kind试题类型varchar 24 N N

  4 question_type试题类别varchar 24 N N

  5 question_prop试题属性varchar 24 N N

  6 question_content试题内容varchar 500 N N

  7 answer_key试题标准答案varchar 24 N N

  8 use_flag使用信息标志varchar 24 N N

  9 remark备注varchar 32 Y N

  (4)audittask表

  表4-4复核任务表

  序号字段名含义字段类型长度可否为空是否主键

  1 client_id客户编号varchar 18 N N

  2 client_name客户姓名varchar 24 N N

  3 field_mod_info界面修改字段信息varchar 500 N N

  4 audit_back_info审核打回字段varchar 500 N N

  5 serial_no流水序号int 10 N Y

  6 process_id复核流程标识int 10 N N

  7 audit_level复核级别int 10 N N

  8 operator_no操作员编号varchar 18 N N

  9 audit_date复核日期date 20 N N

  10 audit_time复核时间int 20 N N

  (5)blacklistcheckresul表

  表4-5黑名单校验记录表

  序号字段名含义字段类型长度可否为空是否主键

  1 client_id客户编号varchar 18 N Y

  2 curr_date当前日期date 20 N N

  3 id_kind证件类别varchar 24 N N

  4 id_no证件号码int 40 N N

  5 reason_str通过原因varchar 100 N N

  6 country_code1国籍代码varchar 10 N N

  7 source_kind来源类别varchar 24 N N

  8 remark备注varchar 32 Y N

  5系统实现

  5.1登录界面

  输入操作员的用户名、密码以及验证码进行登录

  图5-1:登录界面

  5.2适当性信息采集

  适当性客户开户界面,对客户进行适当性信息的采集,加红点的字段为必填项,未填的情况下会进行提示,填写证件号码时会校验黑名单并给出相应提示,填写完毕后会提交审核。

  图5-2:适当性信息采集界面

  图5-3:必填项提示

  图5-4:证件号码存在黑名单时提示

  5.3黑名单提示代码实现

  图5-5:黑名单提示代码实现

  5.4黑名单查询页面

  黑名单查询页面,对黑名单数据进行管理,涉及到对黑名单数据进行查询,分页查询,批量导入,excel导出,逐条新增,修改,删除等操作

  图5-6:黑名单客户查询界面

  图5-7:导入黑名单

  5.5风险承受能力评估

  风险承受能力评估界面,首先输入通过适当性开户生成的客户号查询客户,然后进行试卷类别,版本的选择,输入正确的测评日期,测评时间,进入问卷作答界面。

  图5-8:问卷选择界面

  图5-9:填写问卷界面

  5.6问卷设置

  问卷设置界面,涉及问卷查询,问卷新增,问卷试题的新增,删除,修改,查看,试题分值设置等。

  图5-10:问卷设置界面

  图5-11:试题设置

  5.6审核任务

  待审核的任务界面,可以通过输入查询条件查询适当性开户时提交的,以及客户进行风险承受能力评估时提交的任务,点击审核进入审核页面进行审核,对于不通过的字段可以选中,进行审核打回操作。

  图5-12:审核任务列表界面

  图5-13:审核任务界面

  6系统测试

  6.1登录测试

  登录模块,通过设置4组测试用例:1、输入正确的账号密码及验证码2、输入正确的账号,错误的密码3、输入错误的账号4、输入正确的账号密码及错误的验证码,验证登录功能,具体测试结果如下表所示:

  表6-1登录测试表

  测试用例期望结果实际结果

  输入正确的账号密码及验证码登录成功,并成功跳转到主页登录成功,并成功跳转到主页

  输入正确的账号,错误的密码登录失败,弹出密码错误提示,并停留在登录页面登录失败,弹出密码错误提示,并停留在登录页面

  输入错误的账号弹出不存在账号提示弹出不存在账号提示

  输入正确的账号密码及错误的验证码登录失败,弹出验证码错误提示,并停留在登录页面登录失败,弹出验证码错误提示,并停留在登录页面

  6.2业务功能测试

  针对黑名单的数据导入,excel导出,开户时黑名单校验结果,以及各结果提示信息等模块进行测试。

  针对问卷设置的试题设置,分数设置,做问卷时的试题对比,提交时的分数对比进行测试。

  通过大量有效数据的验证,确保功能正常,业务完善。