论文部分内容阅读
随着我国经济的迅猛发展,银行间本币市场作为金融市场体系的核心,交易的数目和规模都在与日俱增。银行间本币市场交易中,电子交易系统的交易量占整个银行间市场交易量的90%以上。电子交易系统为金融机构提供了方便快捷的交易手段,却也同时带来了一系列问题和风险。由于缺少人为的监督,违规甚至违法的交易层出不穷,屡禁不止。因此,根据人民银行总行要求,为了维护银行间市场稳定,监测市场异常交易,及时打击违法违规的交易行为,中国外汇交易中心需要开发专门的监测系统,实现对银行间本币市场异常交易的甄别和监测。银行间市场异常交易监测系统(以下简称异常交易监测系统)主要由异常数据筛选、报表输出、参数设置、系统管理和应急操作五个主要模块组成。系统属于传统的Java Web项目,其中Oracle存储过程是本系统的技术难点与关键点所在。由于Oracle存储过程技术在处理复杂业务需求时的性能优势,大型企业系统往往都选择使用它来进行数据库的相关操作,异常交易监测系统也不例外。在进行实际开发时,我们对各个功能点进行了充分的性能测试,从Service层到SQL语句本身,都进行了多次修改,尽可能减少Java端与数据库的交互次数,提高SQL语句执行效率;此外,在系统债券市场交易策略筛选功能点,由于筛选逻辑非常复杂,处理的数据量也较大,且设置的筛选参数需要实时生效,我们在对应的存储过程中采用了多任务并行的处理方式,并在存储过程中添加了LOGGINGMESSAGE,对各个子过程的执行时间进行了记录,对比分析并行处理前后查询时间的变化,直到最终性能满足客户的需求。异常交易监测系统于2011年11月正式投入使用,现阶段,2.1.2.0版本已成功上线。本文将主要描述该版本新增的五个功能点的需求分析、设计与实现过程,这五个功能点通过杠杆率、交易规模等不同的异常指标对本币市场的各类交易进行筛选和监测,从而达到维护市场稳定的根本目标。根据上文所述,这五个功能点相关Oracle存储过程的设计与实现将是本文讨论的重点。