一种基于Storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法与流程

文档序号:12887844阅读:521来源:国知局
一种基于Storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法与流程

本发明涉及金融信息管理技术领域,尤其是一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法。



背景技术:

衍生产品是一种金融工具,一般表现为两个主体之间的一个协议,其价格由其他基础产品的价格决定。随着现代金融业的发展,金融衍生品在市场上扮演越来越重要的作用,基于衍生品的定价分析、交易和风险管理成为学术界和金融业界的关注重点。

现有的金融衍生品交易与风控系统主要有两种计算模式:一是设置定时器,周期性地进行扫描;二是在产生委托的时候,把委托相关的衍生品种的行情数据、盘口数据,以及如期权greeks的各项指标从硬盘上的数据库服务器文件读取,进行各项指标的更新,再写入硬盘数据库服务器中。但是,由于金融衍生品市场品种繁多,盘中行情数据量太大,无法把所需的数据全部放入单个节点的存储介质中,从存储介质读取到内存中也相当耗时,失去了实时性。

而且由于合规方面要求的指标繁多,衍生品在进行交易时候风控指标也丰富多样,在传统的交易与风控体系模式下,会导致在很多场景中下单的性能指标严重下降,无法满足套利、做市等自动化快速交易的需求。在当前市场追求最高的交易性能的应用场景下,各种快速交易系统应运而生,将普通委托在毫秒级别提升到了微秒量级。但如果在交易上面增加风控检查,性能则会急剧下降,把快速交易系统带来的性能优势磨灭殆尽。

并且,不同场景下风控规则随时会变化,现有技术系统不支持动态修改风控规则。

另外,采用大数据如hadoop技术体系的实现,数据存放在hdfs分布式文件系统中,在分布式节点间运算时,数据需要从磁盘读入内存,然后在不同的节点间通过网络传输,效率不高,仅适合于定时的批处理类型的风控规则计算。批处理技术可以满足对大量数据处理的需求,但是处理模式是把预先定义的时间间隔分成短小的批量数据进行处理,延迟较高,无法满足毫秒级实时风控规则计算的需求。



技术实现要素:

针对现有技术的不足,本发明提供一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法。

本发明的技术方案为:一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制系统,包括数据库服务器、控制台模块、风控服务器、订单服务器、下单服务器;其中

数据库服务器,用于存储金融衍生品的各类元数据及特征值、以及用于存储风控规则;

控制台模块,用于实时输入风控规则段,并将输入的规则段发送给风控服务器,其中,所述的风控规则使用领域专业语言(dsl);

风控服务器,分别与数据库服务器、订单服务器、控制台模块通讯连接,从而用于接收订单服务器的订单消息、以及将控制台模块实时发送的风控规则段加载到storm计算节点中,更新计算节点内存当中的风控规则树,重建风控规则,并从数据库服务器中加载金融衍生品的各类元数据及特征值,对订单消息进行风控规则的并行验证,最终汇总各规则引擎的计算结果,输出订单的风控规则校验结果至订单服务器、以及更新数据库服务器中的数据;

订单服务器,用于与下单服务器通讯连接,从而接收下单服务器的下单消息,生成订单对象和订单消息,并将订单消息发送给风控服务器,从而接收风控服务器反馈的风控结果;

下单服务器,与订单服务器通讯连接,用于将下单消息发送给订单服务器,并接收订单服务器反馈的风控结果,根据风控接收或拒绝消息后来调整下单业务逻辑。

所述的风控服务器包括消息输入服务器、消息解析服务器、消息分发服务器、规则解析服务器、订单解析服务器、订单预处理服务器、规则引擎服务器、消息输出服务器,其中,

消息输入服务器,与消息解析服务器连接,用于接收控制台模块与订单服务器输入的参数信息,并将参数信息实时发送给消息解析服务器;

消息解析服务器,与消息分发服务器连接,将接收到的参数信息解析为规则消息或订单消息,并将规则消息或订单消息发送给消息分发服务器;

消息分发服务器,分别与规则解析服务器、订单解析服务器连接,用于将规则消息发送给规则解析服务器,以及将订单消息发送给订单解析服务器;

规则解析服务器,用于将收到的规则消息进行解析,转换成风控规则对象,并将风控规则对象发送给规则引擎服务器;

订单解析服务器,用于将收到的订单消息进行解析,转换成订单对象,并且与订单预处理服务器连接,从而将订单对象发送给订单预处理服务器;

订单预处理服务器,与规则引擎服务器通讯连接,用于对订单对象进行预处理,预先加载订单需要的基础属性数据,并发送给规则引擎服务器;

规则引擎服务器,与消息输出服务器连接,用于接收规则解析服务器发送的风控规则对象,加载到storm计算节点中,从而更新storm计算节点内存中的风控规则树,重建风控规则,进而更新规则引擎;

以及用于接收订单解析服务器发送的订单对象,执行风控规则来处理订单,从而生成风控结果策略,并将生成的风控结果策略发送给消息输出服务器;

消息输出服务器,接收规则引擎服务器的风控结果策略,生成最终的订单处理策略,并将订单处理策略发送给订单服务器。

本发明的另一目的,还提供一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制方法,其特征在于,包括以下步骤:

s1)、基于storm流处理框架实时处理风控规则配置消息和衍生品订单下单消息;

s2)、根据所述的配置规则和订单进行风控模型建模,抽象出各种风控指标;

s3)、根据风控规则的与、或、非关联关系,自动将多条风控规则进行平行异步化处理,并设置风控规则生效的条件及生效的时间区间;

s4)、根据数据库服务器中历史订单请求数,并结合实时订单消息,准确的进行订单数量、频次的风险控制,防止订单数量超限或下单频次过快;

s5)、对已下单用掉的资金额度进行实时冻结,防止资金额度透支;

s6)、对多个风控规则产生的多个风控结果进行自动汇总产生最终的风控结果,以提供下单决策建议。

进一步的,上述方法中,步骤s1)中,所述的风控规则包括静态法规类规则和动态资金量、频次规则;

所述的订单消息为衍生品期货订单、期权订单。

进一步的,上述方法中,步骤s2)中,所述的风控指标包括风控公式、风控因子、风控阈值、订单占比、反向单、风控结果、风控dsl描述、订单类型;

进一步的,上述方法中,步骤s5)中,还包括根据实时市场行情数据,计算买入金额,以防止资金额度透支。

进一步的,上述方法中,步骤s6)中,还包括对于单个风控规则可直接生产最终下单决策建议,无需再汇集其他风控规则的结果。

本发明的有益效果为:设计合理,结构简单、实用性强,通过控制台模块可动态修改风控规则,并且风控规则及相关数据通过使用数据库服务器的数据,进一步提高实时性,降低延迟,另外,风控规则通过执行并行化结果自动汇集后输出,进一步提高了下单策略的准确性,风控规则计算通过采用大数据的流式计算框架storm,实时接收消息交由提前配置好的storm拓扑节点并行执行,执行性能达到毫秒级,进一步提高了其处理效率,减少了数据在节点间传送消耗的带宽及延迟,消息可靠性进一步得到保证。

附图说明

图1为本发明的系统框架流程图;

图2为本发明风控服务器的框架流程图;

图3为本发明方法的流程示意图;

具体实施方式

下面结合附图对本发明的具体实施方式作进一步说明:

如图1所示,一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制系统,包括数据库服务器、控制台模块、风控服务器、订单服务器、下单服务器;其中

数据库服务器,用于存储金融衍生品的各类元数据及特征值、以及用于存储风控规则;

控制台模块,用于实时输入风控规则段,并将输入的规则段发送给风控服务器,其中,所述的风控规则使用领域专业语言(dsl);

风控服务器,分别与数据库服务器、订单服务器、控制台模块通讯连接,从而用于接收订单服务器的订单消息、以及将控制台模块实时发送的风控规则段加载到storm计算节点中,更新计算节点内存当中的风控规则树,重建风控规则,并从数据库服务器中加载金融衍生品的各类元数据及特征值,对订单消息进行风控规则的并行验证,最终汇总各规则引擎的计算结果,输出订单的风控规则校验结果至订单服务器、以及更新数据库服务器中的数据;

订单服务器,用于与下单服务器通讯连接,从而接收下单服务器的下单消息,生成订单对象和订单消息,并将订单消息发送给风控服务器,从而接收风控服务器反馈的风控结果;

下单服务器,与订单服务器通讯连接,用于将下单消息发送给订单服务器,并接收订单服务器反馈的风控结果,根据风控接收或拒绝消息后来调整下单业务逻辑。

如图2所示,所述的风控服务器包括消息输入服务器、消息解析服务器、消息分发服务器、规则解析服务器、订单解析服务器、订单预处理服务器、规则引擎服务器、消息输出服务器,其中,

消息输入服务器,与消息解析服务器连接,用于接收控制台模块与订单服务器输入的参数信息,并将参数信息实时发送给消息解析服务器;

消息解析服务器,与消息分发服务器连接,将接收到的参数信息解析为规则消息或订单消息,并将规则消息或订单消息发送给消息分发服务器;

消息分发服务器,分别与规则解析服务器、订单解析服务器连接,用于将规则消息发送给规则解析服务器,以及将订单消息发送给订单解析服务器;

规则解析服务器,用于将收到的规则消息进行解析,转换成风控规则对象,并将风控规则对象发送给规则引擎服务器;

订单解析服务器,用于将收到的订单消息进行解析,转换成订单对象,并且与订单预处理服务器连接,从而将订单对象发送给订单预处理服务器;

订单预处理服务器,与规则引擎服务器通讯连接,用于对订单对象进行预处理,预先加载订单需要的基础属性数据,并发送给规则引擎服务器;

规则引擎服务器,与消息输出服务器连接,用于接收规则解析服务器发送的风控规则对象,加载到storm计算节点中,从而更新storm计算节点内存中的风控规则树,重建风控规则,进而更新规则引擎;

以及用于接收订单解析服务器发送的订单对象,执行风控规则来处理订单,从而生成风控结果策略,并将生成的风控结果策略发送给消息输出服务器;

消息输出服务器,接收规则引擎服务器的风控结果策略,生成最终的订单处理策略,并将订单处理策略发送给订单服务器。

如图3所示,本发明的另一目的,还提供一种基于storm流处理框架和规则引擎的金融衍生品实时风险控制方法,其特征在于,包括以下步骤:

s1)、基于storm流处理框架实时处理风控规则配置消息和衍生品订单下单消息;

s2)、根据所述的配置规则和订单进行风控模型建模,抽象出各种风控指标;

s3)、根据风控规则的与、或、非关联关系,自动将多条风控规则进行平行异步化处理,并设置风控规则生效的条件及生效的时间区间;

s4)、根据数据库服务器中历史订单请求数,并结合实时订单消息,准确的进行订单数量、频次的风险控制,防止订单数量超限或下单频次过快;

s5)、对已下单用掉的资金额度进行实时冻结,防止资金额度透支;

s6)、对多个风控规则产生的多个风控结果进行自动汇总产生最终的风控结果,以提供下单决策建议。

进一步的,上述方法中,步骤s1)中,所述的风控规则包括静态法规类规则和动态资金量、频次规则;

所述的订单消息为衍生品期货订单、期权订单。

进一步的,上述方法中,步骤s2)中,所述的风控指标包括风控公式、风控因子、风控阈值、订单占比、反向单、风控结果、风控dsl描述、订单类型;

进一步的,上述方法中,步骤s5)中,还包括根据实时市场行情数据,计算买入金额,以防止资金额度透支。

进一步的,上述方法中,步骤s6)中,还包括对于单个风控规则可直接生产最终下单决策建议,无需再汇集其他风控规则的结果。

上述实施例和说明书中描述的只是说明本发明的原理和最佳实施例,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1