一种风控规则管理控制方法、装置、系统及存储介质与流程
未命名
08-22
阅读:260
评论:0

1.本发明涉及金融科技及数据分析技术领域,更具体地说,涉及一种风控规则管理控制方法、装置、系统及存储介质。
背景技术:
2.金融领域的风控规则引擎是一种软件系统,用于监测并管理金融市场中的风险。它基于一系列规则和算法,自动识别、评估和处理潜在的风险事件,以保护金融机构和投资者的利益。通常,风控规则引擎会使用实时数据监管交易,例如价格、数量、成本等数据,同时考虑各种因素,如市场波动、信贷风险、流动性风险和操作风险等。风控规则引擎可应用于各种金融产品和市场,包括股票、期货、外汇、债券和衍生品等。
3.目前,前台交易系统的风控规则订单的筛选条件的复杂度很高,维度多,指标多,阈值多,聚合规则复杂。
4.体现在如下个方面:
5.1、订单筛选条件复杂度高,筛选的条件有“或”、“且”、“非”、“包含”等多种条件,并且结合使用;
6.2、维度多,筛选条件包括交易所、产品、交易方向等;
7.3、指标和对应的阈值多,包括单笔订单限额,dv01限额,整数倍限额,持仓限额;
8.4、聚合规则复杂,例如dv01区分债券,利率互换,贵金属期货等分别计算持仓后合并统计。例如金交所的撤单比需要分别统计每个交易账户,每个产品的下单和撤单量,最后分别计算撤单比。
技术实现要素:
9.有鉴于此,针对于上述技术问题,本发明提供一种应用于金融科技领域,或者与金融科技领域相关技术领域的风控规则管理控制方法,包括:
10.利用语法解析工具构建抽象语法树;
11.基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;
12.根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。
13.优选地,所述利用语法解析工具构建抽象语法树之前,还包括:
14.根据创建指令,触发风控规则构建流程;
15.根据所述风控规则构建流程,获取所述风控规则的风控名称及类别;
16.获取所述风控名称及类别对应的作用范围信息,并确定对应的风控模板信息;
17.基于所述风控模板信息,获取对应的风控筛选条件和风控阈值,得到所述风控规则。
18.优选地,所述根据订单信息确定所对应的风控规则,并利用visitor方法访问所述
ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性,包括:
19.获取所述订单信息以确定所对应的所述风控规则;
20.遍历所述ast形式规则,利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性。
21.优选地,所述利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性,包括:
22.获取所述订单信息对应的归属信息;
23.根据所述归属信息判断所述订单信息是否归属于所述作用范围信息内;
24.若所述订单信息归属于所述作用范围信息内,则判定所述订单信息属于所述作用范围信息内的部门和/或交易台,基于所述返回结果确定所述订单信息对应的风控规则可行性。
25.优选地,所述判定所述订单信息属于所述作用范围信息内的部门和/或交易台之后,还包括:
26.获取所述订单信息对应的交易要素信息;
27.判断所述交易要素信息是否符合风控筛选条件;
28.若所述交易要素信息符合风控筛选条件,则基于所述返回结果确定所述订单信息对应的风控规则可行性。
29.优选地,所述交易要素信息符合风控筛选条件之后,还包括:
30.判断所述订单信息是否能触发所述风控阈值;
31.若述订单信息能触发所述风控阈值,则判定所述订单信息对应的风控规则不可行;
32.若述订单信息不能触发所述风控阈值,则判定所述订单信息对应的风控规则可行。
33.优选地,所述利用语法解析工具构建抽象语法树,包括:
34.定义所述语法解析工具的语法规则;
35.利用所述语法解析工具基于所述语法规则,生成解析器代码;
36.创建抽象语法树中的节点类;
37.定义于所述节点类和所述节点类对应的visitor方法;
38.在所述解析器代码中,将所述节点类和所述visitor方法组合,利用所述语法解析工具,构建所述抽象语法树。
39.此外,为解决上述问题,本发明还提供一种风控规则管理控制装置,包括:
40.构建模块,用于利用语法解析工具构建抽象语法树;
41.加载模块,用于基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;
42.确定模块,用于根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。
43.此外,为解决上述问题,本发明还提供一种风控规则管理控制系统,包括存储器以
及处理器,所述存储器中存储有风控规则管理控制程序,所述处理器运行所述风控规则管理控制程序以使所述风控规则管理控制系统执行如上述所述的风控规则管理控制方法。
44.此外,为解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有风控规则管理控制程序,所述风控规则管理控制程序被处理器执行时实现如上述所述的风控规则管理控制方法。
45.本发明提供了一种风控规则管理控制方法、装置、系统及存储介质,其中,所述方法包括:利用语法解析工具构建抽象语法树;基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。本发明基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险。
附图说明
46.图1为本发明风控规则管理控制方法实施例涉及的硬件运行环境的结构示意图;
47.图2为本发明风控规则管理控制方法第1实施例的流程示意图;
48.图3为本发明风控规则管理控制方法第2实施例中步骤s100之前补充步骤的流程示意图;
49.图4为本发明风控规则管理控制方法第2实施例中步骤s300细化的流程示意图;
50.图5为本发明风控规则管理控制方法第2实施例中步骤s320细化的流程示意图;
51.图6为本发明风控规则管理控制方法第2实施例中步骤s323之后补充步骤的流程示意图;
52.图7为本发明风控规则管理控制方法第2实施例中步骤s326之后补充步骤的功能模块连接及流程示意图;
53.图8为本发明风控规则管理控制方法第3实施例中步骤s100细化的流程示意图;
54.图9为本发明风控规则管理控制装置的模块连接示意图。
55.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
56.下面详细描述本发明的实施例,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
57.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
58.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
59.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
60.如图1所示,是本发明实施例涉及的终端的硬件运行环境的结构示意图。
61.本发明实施例风控规则管理控制系统,可以为pc,也可以是智能手机、平板电脑或者便携计算机等可移动式终端设备等。该风控规则管理控制系统中可以包括:处理器1001、例如cpu,网络接口1004、用户接口1003、存储器1005和通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏、输入单元比如键盘、遥控器,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器,例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。可选地,风控规则管理控制系统还可以包括rf(radio frequency,射频)电路、音频电路、wifi模块等等。此外,该风控规则管理控制系统还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
62.本领域技术人员可以理解,图1中示出的风控规则管理控制系统并不构成对其的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、数据接口控制程序、网络连接程序以及风控规则管理控制程序。
63.总之,本发明基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险。
64.实施例1:
65.参照图2,本发明第1实施例提供一种风控规则管理控制方法,包括:
66.步骤s100,利用语法解析工具构建抽象语法树;
67.上述,语法解析工具是一种软件工具,用于将输入的文本或代码解析成语法树或其他数据结构,使程序能够对其进行更深入的分析和处理。它们通常用于编译器、解释器、静态分析器等应用中。
68.本实施例中所提到的语法解析工具,可以包括但不限于antlr、bison、javacc和peg.js等。
69.其中,本实施例中,采用antlr作为语法解析工具。
70.上述,antlr(another tool for language recognition)是一个流行的语法解析工具,它支持多种语言(包括java、c++、python等)和平台,并且具有以下特点:
71.(1)自动生成解析器:antlr将输入的语法规则转换为java或其他目标语言的解析器,无需手工编写解析器代码。
72.(2)支持多种解析技术:antlr支持递归下降、ll(*)、lr(k)等多种解析技术,可以根据需要选择最合适的技术。
73.(3)生成可读性较好的语法错误信息:antlr生成的解析器能够检测出非法的语法结构,并生成易于理解的错误信息。
74.(4)支持语法文件的嵌套:antlr支持将多个语法文件组合在一起,从而方便地重用公共的语法规则。
75.(5)具有广泛的社区支持:antlr拥有庞大的用户群体和活跃的社区,提供了丰富的文档、示例代码和扩展插件,可以帮助开发者更快地构建语法解析器。
76.上述,抽象语法树(abstract syntax tree,简称ast)是编程语言在编译或解释期间,将源代码转换为计算机容易理解和处理的一种树形数据结构。它是一种树状结构,其中每个节点表示原始代码中的一个语法元素,例如变量、函数、运算符等等。
77.抽象语法树通常是通过分析源代码来构建的,识别出源代码中的各种语法结构,并尝试将其转化为一系列相互关联的节点。这些节点通过不同类型的边连接起来,以表示源代码中的层次结构和依赖关系。
78.与源代码不同,抽象语法树忽略了一些细节和语法规则,因此它更加抽象和概括。它可以用于编译器优化、代码生成、静态分析等领域,是程序分析和转换的重要工具之一。
79.在编译器中,抽象语法树(abstract syntax tree,ast)是从源代码生成的一种数据结构。它是一个树形结构,用于表示程序的源代码,并且在编译器中扮演着重要的角色。
80.抽象语法树,由语法解析器(parser)生成,可以将源代码分解成更小的、更可管理的部分,并为每个部分构建一个ast节点。这些节点代表语法规则中的不同元素,如表达式、函数调用、变量声明等。节点之间的关系描述了它们之间的层次和依赖关系。
81.通过构建抽象语法树,编译器可以更好地理解源代码的含义,并能够执行语义分析和代码生成等操作。此外,抽象语法树还可以用于实现代码编辑器、智能提示等功能,在代码开发中具有广泛的用途。
82.构建抽象语法树的过程就是将源代码解析成语法树的过程。它涉及到对源代码进行词法分析和语法分析,然后使用解析器将其转换成树形结构。最终得到的抽象语法树是针对源代码的一种抽象表示,便于进一步的处理和分析。
83.上述,步骤s100中,是基于antlr创建ast,它的作用是将输入的规则解析成语法树,并提供对这些节点进行访问的机制。其实现需要对每种运算符分别实现visitor方法,这样在后续的规则匹配过程中可以针对不同的运算符进行处理。
84.步骤s200,基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;
85.步骤s300,根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。
86.上述,服务初始化时加载所有规则,这部分工作可以在系统启动时完成,并将解析后的ast(即ast形式规则)存储起来以备查询时使用。
87.进而,在获取到用户所提供的订单信息后,根据订单信息,确定所对应的风控规则,并对风控规则进行筛选。从而,利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。
88.总之,本实施例基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险。
89.实施例2:
90.参照图3,本发明第2实施例提供一种风控规则管理控制方法,基于上述实施例1。所述步骤s100,利用语法解析工具构建抽象语法树之前,还包括:
91.步骤s400,根据创建指令,触发风控规则构建流程;
92.步骤s500,根据所述风控规则构建流程,获取所述风控规则的风控名称及类别;
93.步骤s600,获取所述风控名称及类别对应的作用范围信息,并确定对应的风控模板信息;
94.步骤s700,基于所述风控模板信息,获取对应的风控筛选条件和风控阈值,得到所述风控规则。
95.上述,用户可以在平台上对风控规则进行创建。
96.在创建时,可以触发生成创建指令,并根据指令启动构建流程。
97.上述,构建流程中,需要进行对各种信息进行获取和设置。
98.例如,可以为如下流程:
99.1.设置风控名称,确定对应的类别;
100.2.设置风控投组,即作用范围信息,为scope;
101.3.选择风控模板,即风控模板信息;
102.4.设置风控规则筛选条件,即criteria;
103.5.设置风控阈值;
104.从而得到了构建好的风控规则。
105.进一步的,参考图4,所述步骤s300,根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性,包括:
106.步骤s310,获取所述订单信息以确定所对应的所述风控规则;
107.上述,根据用户提交的订单信息,触发针对于风控规则的评价和筛选流程。
108.上述,订单信息,能够根据该信息确定用户所针对于的风控规则。
109.步骤s320,遍历所述ast形式规则,利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性。
110.当交易用户下单时,遍历风控规则,利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,通过返回值,从而确定是否可行。
111.进一步的,参考图5,所述步骤s320,利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性,包括:
112.步骤s321,获取所述订单信息对应的归属信息;
113.步骤s322,根据所述归属信息判断所述订单信息是否归属于所述作用范围信息内;
114.步骤s323,若所述订单信息归属于所述作用范围信息内,则判定所述订单信息属于所述作用范围信息内的部门和/或交易台,基于所述返回结果确定所述订单信息对应的风控规则可行性。
115.上述,当交易用户下单时遍历风控规则,先检查scope(作用范围信息),查看当前订单信息是否属于该规则的部门和/或交易台,如果不是直接跳过。
116.上述步骤中,需要遍历风控规则,并检查当前订单是否属于该规则的部门和交易台,即归属情况。这个过程可以通过以下逻辑步骤实现:
117.遍历风控规则,对风控规则执行以下操作:
118.检查规则的scope属性,确定其所属部门和交易台是否匹配当前订单。
119.如果匹配,则使用antlr创建的ast解析该规则的criteria属性,并将其转换为一个可执行的boolean表达式。
120.检查该boolean表达式是否为true。如果是,则表示订单符合该规则的筛选条件,继续执行下一步;否则,跳过该规则。
121.如果已经遍历完所有规则且没有找到匹配的规则,则订单未通过风控筛选,不允许下单。
122.在上述过程中,需要利用antlr创建的ast来解析规则的criteria属性,并将其转换为可执行的boolean表达式。这样可以将规则的筛选条件转换为计算机可以理解和执行的代码,方便判断订单是否满足筛选条件。同时,还需要注意在遍历规则时要按照一定的顺序进行,以确保所有规则都被正确地检查过。
123.进一步的,参考图6,所述步骤s323,判定所述订单信息属于所述作用范围信息内的部门和/或交易台之后,还包括:
124.步骤s324,获取所述订单信息对应的交易要素信息;
125.步骤s325,判断所述交易要素信息是否符合风控筛选条件;
126.步骤s326,若所述交易要素信息符合风控筛选条件,则基于所述返回结果确定所述订单信息对应的风控规则可行性。
127.上述,判断订单的交易要素,是否符合criteria(筛选条件)。
128.上述,其形式例如可以为:
129."instrument_class in('bond')and instrument_subclass in('lgb'),利用1的解析规则判断订单是否满足产品是否债券,且是地方机构债。
130.针对上述步骤,需要实现的是解析订单中的交易要素并与规则中定义的筛选条件进行匹配,以判断订单是否符合该规则的要求。具体实现步骤如下:
131.(1)使用antlr生成词法和语法分析器,将规则字符串转换成抽象语法树(ast)。
132.(2)从ast中获取规则的scope和criteria节点信息,并对其进行解析和存储。其中,scope节点包含了规则适用的部门和交易台信息;criteria节点包含了筛选条件,即订单需要满足的交易要素的限制条件。
133.(3)解析订单交易要素信息,比如订单中产品类型、子类型等信息。
134.(4)将订单交易要素与规则中的筛选条件进行匹配,判断订单是否符合规则要求。可以使用antlr生成的visitor方法来遍历ast,对于每个表达式节点,通过调用不同的visitor方法实现匹配逻辑。
135.(5)如果订单符合规则要求,则允许下单,否则拒绝下单。
136.需要注意的是,在实现上述步骤时,需要考虑到规则中可能包含多个条件,并且条件之间可能存在逻辑运算符(如and、or等)。因此,在匹配过程中需要使用布尔逻辑运算符来组合各个条件的匹配结果,以得到最终的匹配结果。另外,为了提高匹配效率,可以对规则和订单交易要素进行预处理,将常见的条件值提前缓存起来,避免重复解析和比较。
137.进一步的,参考图7,所述步骤s326,所述交易要素信息符合风控筛选条件之后,还包括:
138.步骤s327,判断所述订单信息是否能触发所述风控阈值;
139.步骤s328,若述订单信息能触发所述风控阈值,则判定所述订单信息对应的风控
规则不可行;
140.步骤s329,若述订单信息不能触发所述风控阈值,则判定所述订单信息对应的风控规则可行。
141.上述,针对于风控阈值的判断,判断订单是否触发阈值,如果是,则不允许下单。
142.在风控规则中,阈值可以指的是一定时期内累计交易量或金额等数据的限制。例如:某个部门或者交易台在一个月内只能交易100万美元的产品,如果超过这个限制,则该部门或者交易台的交易权限将被暂停或者取消。这个限制就是一个阈值。
143.对于订单筛选,如果订单涉及到某个部门或者交易台,那么该部门或者交易台的阈值信息就需要参与到订单的风险评估中。当累计量达到了某个阈值时,订单就会被拒绝。具体阈值的设定可以根据实际情况进行调整。
144.在上述步骤中,需要判断订单是否触发风控阈值,如果是,则不允许下单。具体实现逻辑如下:
145.(1)遍历所有风控规则,找到涉及到该订单的规则。
146.(2)对于每个匹配到的规则,获取其阈值信息和累计量信息。
147.(3)判断订单的交易要素是否符合该规则的筛选条件,如果不满足,则跳过该规则。
148.(4)如果符合筛选条件,则从订单中获取该规则所关注的要素并进行累加。
149.(5)检查累加后的数量是否超过了该规则的阈值,如果超过了,则拒绝该订单并返回拒绝原因;否则,继续遍历其他规则。
150.(6)如果所有规则都被遍历完,并且没有任何一个规则的阈值被触发,则接受该订单,并返回成功信息。
151.这里需要说明的是,为了避免重复计数,在处理订单时,应该先将订单与已经匹配到的规则做一个去重,只对未匹配到的规则进行计数。同时,在进行累加操作时,应该考虑并发情况下的安全性问题,可以使用线程安全的数据结构来存储各个规则的累计量信息。
152.上述步骤s300的执行可以达到以下技术效果:
153.(1)风控规则可以使用统一的语法进行描述,避免了不同开发人员采用不同方式实现风控规则的情况,提高了规则的可维护性和可扩展性。
154.(2)使用antlr生成的ast可以很方便地对风控规则进行解析和处理,大大简化了代码实现的复杂度。
155.(3)通过将风控规则加载到服务中,并在交易用户下单时进行处理,可以实现实时的风险评估,及时拦截风险交易。
156.(4)严格的订单筛选过程可以避免恶意或错误的交易,保障了交易系统的安全性和稳定性。
157.总之,上述步骤的执行可以帮助交易系统进行全面、准确、快速的风险评估,并防范各种潜在的风险,提高交易系统的可靠性和安全性。本实施例中所提供的方法,基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险;提供了可视化的界面,可以让运营和开发人员直观的了解目前已有的风控规则;抽象出scope和criteria的概念,控制风控规则的作用范围,比代码中具体的filter更加简洁明了。
158.实施例3:
159.参照图8,本发明第3实施例提供一种风控规则管理控制方法,基于上述实施例1,所述步骤s100,利用语法解析工具构建抽象语法树,包括:
160.步骤s110,定义所述语法解析工具的语法规则;
161.步骤s120,利用所述语法解析工具基于所述语法规则,生成解析器代码;
162.步骤s130,创建抽象语法树中的节点类;
163.步骤s140,定义于所述节点类和所述节点类对应的visitor方法;
164.步骤s150,在所述解析器代码中,将所述节点类和所述visitor方法组合,利用所述语法解析工具,构建所述抽象语法树。
165.上述,构建抽象语法树的过程就是将源代码解析成语法树的过程。它涉及到对源代码进行词法分析和语法分析,然后使用解析器将其转换成树形结构。最终得到的抽象语法树是针对源代码的一种抽象表示,便于进一步的处理和分析。
166.例如,构建抽象语法树,其步骤可以如下:
167.(1)定义antlr的语法规则:首先,需要定义一组符合antlr语法规则的风控规则,以便antlr能够正确解析规则文本。定义语法规则需要遵循antlr的语法规范,例如使用“:”表示规则名称和表达式之间的关系;使用“|”表示多个选项之间的关系等等。
168.(2)使用antlr生成解析器代码:通过运行antlr工具,可以自动生成对应的解析器代码,该代码可以读取规则文本并将其转换为ast结构。
169.(3)创建ast节点:在antlr解析规则时,会将规则文本转换为一棵抽象语法树。每个节点表示一个规则元素,比如操作符、操作数、变量名等等。需要创建对应的ast节点类,用于表示不同类型的ast节点,并为这些节点类实现一系列方法,如访问方法、判断方法等等。
170.(4)实现visitor方法:针对已经定义好的ast节点,需要实现visitor方法,该方法用于遍历ast树节点,访问不同类型的节点,并执行相应的操作。其中,visit方法用于处理单个节点,而visitchildren方法用于遍历节点的所有子节点。
171.(5)生成ast:在解析器代码中,需要将ast节点类和visitor方法进行组合,并使用antlr提供的语法树构建工具,构建出完整的抽象语法树。最终,可以利用生成的ast来进行风控规则的判断和处理。
172.上述步骤,可以帮助实现将风控规则文本转换为可执行可评价代码的过程。具体来说,antlr工具可以帮助定义和解析风控规则的语法,并生成对应的解析器代码,而抽象语法树(ast)可以帮助将规则文本转换为一种易于处理、可执行的数据结构。
173.通过这些技术,可以实现自定义的风控规则引擎,并且能够快速地编写和修改规则,以适应不同的业务需求。同时,由于抽象语法树具有易于理解和操作的特点,还可以在ast上进行各种统计和分析操作,如计算规则复杂度、优化规则匹配等等,从而进一步提升风控系统的性能和效率。
174.此外,参考图9,本实施例还提供一种风控规则管理控制装置,包括:
175.构建模块10,用于利用语法解析工具构建抽象语法树;
176.加载模块20,用于基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;
177.确定模块30,用于根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。
178.此外,本实施例还提供一种风控规则管理控制系统,包括存储器以及处理器,所述存储器存储有风控规则管理控制程序,所述处理器运行所述风控规则管理控制程序以使所述风控规则管理控制系统执行如上述所述的风控规则管理控制方法。
179.此外,本实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有风控规则管理控制程序,所述风控规则管理控制程序被处理器执行时实现如上述所述风控规则管理控制方法。
180.总之,本发明中所提供的方法,基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险;提供了可视化的界面,可以让运营和开发人员直观的了解目前已有的风控规则;抽象出scope和criteria的概念,控制风控规则的作用范围,比代码中具体的filter更加简洁明了。
181.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
182.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
技术特征:
1.一种风控规则管理控制方法,其特征在于,包括:利用语法解析工具构建抽象语法树;基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。2.如权利要求1所述风控规则管理控制方法,其特征在于,所述利用语法解析工具构建抽象语法树之前,还包括:根据创建指令,触发风控规则构建流程;根据所述风控规则构建流程,获取所述风控规则的风控名称及类别;获取所述风控名称及类别对应的作用范围信息,并确定对应的风控模板信息;基于所述风控模板信息,获取对应的风控筛选条件和风控阈值,得到所述风控规则。3.如权利要求2所述风控规则管理控制方法,其特征在于,所述根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性,包括:获取所述订单信息以确定所对应的所述风控规则;遍历所述ast形式规则,利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性。4.如权利要求3所述风控规则管理控制方法,其特征在于,所述利用visitor方法访问所述ast形式规则中的每个单词序列的所述节点值,以返回结果确定所述订单信息所对应的风控规则可行性,包括:获取所述订单信息对应的归属信息;根据所述归属信息判断所述订单信息是否归属于所述作用范围信息内;若所述订单信息归属于所述作用范围信息内,则判定所述订单信息属于所述作用范围信息内的部门和/或交易台,基于所述返回结果确定所述订单信息对应的风控规则可行性。5.如权利要求4所述风控规则管理控制方法,其特征在于,所述判定所述订单信息属于所述作用范围信息内的部门和/或交易台之后,还包括:获取所述订单信息对应的交易要素信息;判断所述交易要素信息是否符合风控筛选条件;若所述交易要素信息符合风控筛选条件,则基于所述返回结果确定所述订单信息对应的风控规则可行性。6.如权利要求5所述风控规则管理控制方法,其特征在于,所述交易要素信息符合风控筛选条件之后,还包括:判断所述订单信息是否能触发所述风控阈值;若述订单信息能触发所述风控阈值,则判定所述订单信息对应的风控规则不可行;若述订单信息不能触发所述风控阈值,则判定所述订单信息对应的风控规则可行。7.如权利要求1所述风控规则管理控制方法,其特征在于,所述利用语法解析工具构建抽象语法树,包括:定义所述语法解析工具的语法规则;
利用所述语法解析工具基于所述语法规则,生成解析器代码;创建抽象语法树中的节点类;定义于所述节点类和所述节点类对应的visitor方法;在所述解析器代码中,将所述节点类和所述visitor方法组合,利用所述语法解析工具,构建所述抽象语法树。8.一种风控规则管理控制装置,其特征在于,包括:构建模块,用于利用语法解析工具构建抽象语法树;加载模块,用于基于所述抽象语法树加载所有的风控规则,构成与所述抽象语法树对应的ast形式规则;确定模块,用于根据订单信息确定所对应的风控规则,并利用visitor方法访问所述ast形式规则的所述抽象语法树中的节点值,以便于确定所述订单信息所对应的风控规则可行性。9.一种风控规则管理控制系统,其特征在于,包括存储器以及处理器,所述存储器中存储有风控规则管理控制程序,所述处理器运行所述风控规则管理控制程序以使所述风控规则管理控制系统执行如权利要求1-7任一项所述的风控规则管理控制方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有风控规则管理控制程序,所述风控规则管理控制程序被处理器执行时实现如权利要求1-7任一项所述的风控规则管理控制方法。
技术总结
本发明提供了一种风控规则管理控制方法、装置、系统及存储介质,涉及金融科技及数据分析技术领域。所述风控规则管理控制方法包括:利用语法解析工具构建抽象语法树;基于所述抽象语法树加载风控规则,构成与抽象语法树对应的AST形式规则;根据订单信息确定所对应的风控规则,并利用visitor方法访问所述AST形式规则的抽象语法树中的节点值。本发明基于语法解析工具创建了风控规则引擎,在界面中配置规则的阈值、范围等,不再需要每次都修改代码来实现,提升了效率,降低了风险。降低了风险。降低了风险。
技术研发人员:龚畅优
受保护的技术使用者:平安银行股份有限公司
技术研发日:2023.06.05
技术公布日:2023/8/21
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/