CN105989537A - 一种证券及金融衍生品交易风险控制系统及风险控制方法 - Google Patents
一种证券及金融衍生品交易风险控制系统及风险控制方法 Download PDFInfo
- Publication number
- CN105989537A CN105989537A CN201510375326.7A CN201510375326A CN105989537A CN 105989537 A CN105989537 A CN 105989537A CN 201510375326 A CN201510375326 A CN 201510375326A CN 105989537 A CN105989537 A CN 105989537A
- Authority
- CN
- China
- Prior art keywords
- processing unit
- transaction information
- transaction
- market
- risk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种证券及金融衍生品交易风险控制系统,包括设置在用户端和交易市场之间的风险控制模块,所述风险控制模块包含输入处理单元、风控处理单元和输出处理单元;所述输入处理单元连接所述用户端,用于接收用户端发送给交易市场的数据并解析出交易信息;所述风控处理单元对所述证券及金融衍生品交易信息进行风险控制处理;所述输出处理单元将所述风控处理单元处理后的交易信息封装为所述交易市场能够识别的交易数据并发送至所述交易市场。本发明还提供一种证券及金融衍生品交易风险控制系统的风险控制方法。
Description
技术领域
本发明涉及一种金融领域的风险控制系统,尤其涉及一种基于硬件的应用于证券及金融衍生品交易的风险控制系统。
背景技术
随着证券及金融衍生品交易程序化(程序化的证券及金融衍生品交易可以由用户设定交易条件和相应的交易指令,当市场行情符合用户设定的交易条件时,计算机自动执行用户设定的对应的交易指令。可以根据指标选股买卖,同时监控多账户交易,交易完毕后可实时接收反馈信息;能够兼容主流行情和所有券商,也可进行模拟盘或实盘操作。)的日益普及,越来越多的交易通过计算机程序自动完成,这极大的提高了交易完成的效率,单位时间完成的交易也越来越多,但是计算机程序一旦出错,就会使交易风险越来越高。因此,风险控制系统是程序化交易系统中不可缺少的一部分。
当前市场上的风险控制系统都是基于软件的,即运行在通用CPU上的软件程序,这些系统能够实现某些风险控制功能。在该CPU系统架构下,程序化交易过程中所有需要进行的运算都必须通过CPU实现,比如对网络协议(MAC,即数据链路层协议,TCP/IP协议等)的处理等,而上述运算的处理通常要占用很多CPU资源,从而引入很大延迟;而且在该CPU构架下的程序化交易通常无法保证运算延迟性能的均衡。即由于CPU构架和软件系统的局限性,不管网络流量如何,程序化交易过程中都存在一定的延迟;而且因为单位时间内CPU能够处理的消息数有限,当网络流量出现激增的时候,延迟会突然变得很大,这也是程序化交易所不希望的。此外随着证券及金融衍生品交易程序化的发展,该交易系统的程序化对系统延迟性能要求也会越来越高。
发明内容
为了解决以上程序化交易系统中的问题,本发明提供一种证券及金融衍生品交易风险控制系统,其特征在于:包括设置在用户端和交易市场之间的风险控制模块,所述风险控制模块包含输入处理单元、风控处理单元和输出处理单元;所述输入处理单元连接所述用户端,用于接收用户端发送给交易市场的交易数据并解析出交易信息;所述风控处理单元对所述交易信息进行风险控制处理;所述输出处理单元将所述风控处理单元处理后的交易信息封装为所述交易市场能够识别的交易数据并发送至所述交易市场。
优选地,所述风险控制模块、输入处理单元和输出处理单元的至少其中之一基于FPGA制成,FPGA中内置固化的实现其处理功能的逻辑电路。
优选地,所述输入处理单元包括第一网络协议处理单元和第一市场协议处理单元;所述第一网络协议处理单元连接所述用户端,用于将用户端发送的交易数据解析为具有市场协议格式的交易信息;所述第一市场协议处理单元连接所述第一网络协议处理单元和所述风控处理单元,用于将第一网络协议处理单元解析出的所述具有市场协议格式的交易信息按照特定市场的数据协议解析出所述交易信息。
优选地,所述风控处理单元包括风控参数计数器;所述输出处理单元包括第二市场协议处理单元和第二网络协议处理单元;所述第二网络协议处理单元连接所述交易市场的信息反馈接口,在接收到市场返回的交易结果后进行网络协议处理,并发送给所述第二市场协议处理单元;所述第二市场协议处理单元连接所述风控处理单元和所述第二网络协议处理单元,在对从所述第二网络协议处理单元接收到的交易结果进行市场协议处理,并将交易结果发送给所述风控处理单元;所述风控处理单元根据交易结果更新所述风控参数计数器的计数值。
优选地,所述输入处理单元只接收所述用户端发送的数据包而不与所述用户端保持固定的网络链接;所述输出处理单元只发送处理后的数据包而不与所述交易市场保持固定的网络链接。
优选地,还包括与第一市场协议处理单元连接的用于临时存储交易信息的存储装置;当所述第一市场协议处理单元接收到的交易信息不完整时,将该交易信息暂存于所述存储装置并等待该交易信息所在的所有数据包收齐后再将交易信息发送至风控处理单元;当接收的交易信息完整时,将交易信息直接发送至风控处理单元。
优选地,所述风控处理单元对交易信息进行风险检测,当判断有风险时,对所述交易信息进行修改;当判断交易信息没有风险时,直接将交易信息转发至所述输出处理单元。
优选地,所述风险控制模块将有风险的交易信息所属的数据包修改为不会被交易市场丢弃也不会进行交易的数据包。
优选地,所述风控处理单元将有风险的交易信息的交易数量修改为零。
优选地,所述风控处理单元将有风险的交易信息的交易代码修改为在相应市场中不会进行交易的测试代码。
优选地,当所述风控处理单元判断交易信息没有风险时,所述输出处理单元直接调用存储装置中存储的该交易信息对应的数据包并转发给所述交易市场。
优选地,还包括:输入输出模块,用于连接所述风险控制模块和外部设备。
优选地,所述的外部设备为控制与管理模块,用于设定风控逻辑规则及参数。
优选地,所述风险控制模块还包括寄存器单元,用于存储所述风控逻辑规则的参数;所述控制与管理模块通过所述寄存器单元设定所述风控逻辑规则的参数。
优选地,所述风险控制模块还包括错误信息反馈单元;所述错误信息反馈单元能够将交易信息违反所述风控逻辑规则的原因和/或处理结果反馈至客户端。
本发明的另一方面提供一种证券及金融衍生品交易风险控制方法,包括:交易信息接收步骤,接收客户端发送给交易市场的数据包,并解析出交易信息;风险检测及处理步骤,对所述交易信息进行风险控制处理;交易信息发送步骤,将风险检测及处理步骤处理后的交易信息封装为所述交易市场能够识别的交易数据并发送到交易市场。
优选地,所述交易信息接收步骤、风险检测及处理步骤和交易信息发送步骤中的至少其中之一通过内置逻辑电路的FPGA装置进行处理。
优选地,在所述交易信息接收步骤中,当第一市场协议处理单元接收到的数据包中的交易信息不完整时,将该交易信息暂存于与第一市场协议处理单元连接的存储装置中,并等待该交易信息所在的所有数据包收齐后再将交易信息发送至风控处理单元;当接收的交易信息完整时,将交易信息直接发送至风控处理单元。
优选地,在所述风险检测及处理步骤中,将有风险的交易信息所属的数据包修改为不会被交易市场丢弃也不会进行交易的数据包。
优选地,在所述风险检测及处理步骤中,将有风险的交易信息的交易数量修改为零。
优选地,在所述风险检测及处理步骤中,将有风险的交易信息的交易代码修改为在相应市场中不会进行交易的测试代码。
优选地,在交易信息接收步骤中暂存收到的数据包,当在风险检测及处理步骤判断交易信息没有风险时,在交易信息发送步骤直接调用暂存的该交易信息对应的数据包并转发给所述交易市场。
优选地,还包括:交易反馈步骤,将交易市场返回的交易结果反馈至风险控制装置和客户端。
优选地,还包括风险控制反馈步骤,当所述交易信息违反风控逻辑规则时,将交易信息违反所述风控逻辑规则的原因和/或处理结果反馈至客户端。
优选地,还包括:参数配置步骤,通过外部控制装置对风控处理单元的风控逻辑规则及参数进行配置。
本发明所涉及的基于FPGA的应用于证券及金融衍生品交易的风险控制系统,其主要运算部分通过FPGA硬件完成,如网络协议的解析、市场协议的处理以及风控逻辑的监控等运算。通过硬件实现各种运算,可以节省大量的CPU资源;而且因为FPGA硬件具备处理到10G(甚至以上,比如40G)每秒线速的能力,能够保证数据流量激增时的处理能力。本发明通过硬件实现风控逻辑和市场协议的处理,实现了风控处理的最低延迟性能;通过硬件实现网络协议解析,避免了数据由网络接口向软件层的传递及在软件层处理后再向网络接口的传递,实现了网络传输处理的最低延迟性能。
附图说明
图1为本发明第一实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统结构示意图;
图2为本发明第一实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统的风险控制流程图;
图3为本发明第二实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统结构示意图;
图4为本发明第二实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统的风险控制流程图。
具体实施方式
下面根据附图所示实施方式阐述本发明。此次公开的实施方式可以认为在所有方面均为例示,不具限制性。本发明的范围不受以下实施方式的说明所限,仅由权利要求书的范围所示,而且包括与权利要求范围具有同样意思及权利要求范围内的所有变形。
本发明涉及的风险控制系统包括设置在用户端和交易市场之间的风险控制模块、控制与管理模块以及信号分配模块,所述风险控制模块包含输入处理单元(包括第一网络协议处理单元和第一市场协议处理单元)、风控处理单元和输出处理单元(包括第二市场协议处理单元和第二网络协议处理单元)。所述风险控制模块的各单元、输入处理单元、输出处理单元至少其中之一为基于FPGA制成,在FPGA中内置固化风险控制逻辑电路或其他逻辑电路来实现相应的功能。在处理网络协议的时候,所述输入处理单元完成IP数据包的解析,但系统和客户端以及系统和交易市场之间并不单独做TCP连接。同时该系统在检测到违规下单时,将上述违规下单修改为无效订单信息,主要有以下处理方式:将违规下单数修改为0或者将交易代码修改为测试代码,这样交易市场在接收到该下单信息时会予以拒绝,或者系统选择中断该违规下单的客户端所在的网络连接,同时不影响通过设备的其他没有出现违规消息的网络连接。
下面结合实施例具体说明本发明涉及的基于FPGA的证券及金融衍生品交易风险控制系统结构及其风险控制方法。
实施例1
图1为本发明第一实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统结构示意图。如图1所示,所述的风险控制系统包括FPGA风险控制模块1、信号分配模块2和控制与管理模块3。通常,客户端5与交易市场4直接相连,进行交易。在本发明中,FPGA风险控制模块1设置于客户端5与交易市场4之间,通过网络与客户端5与交易市场4相连,接收客户端5发送给交易市场4的交易信息并进行风控处理,将处理后的交易信息发送给交易市场4。所述信号分配模块2分别与FPGA风险控制模块1、交易市场4和客户端5相连接;控制与管理模块3与FPGA风险控制模块1相连接。
在本实施例中FPGA风险控制模块1为基于FPGA的硬件模块,其各功能单元的功能均由FPGA实现。FPGA具备10G/S线速甚至以上的线速,能够保证数据流量激增时的处理能力。具体的,能够实现网络协议解析、市场协议处理以及风控逻辑判断;该模块包括第一网络协议处理单元11、第一市场协议处理单元12、风控处理单元13、寄存器单元14、输入输出单元15、第二市场协议处理单元16、第二网络协议处理单元17等。
客户端5通过网络连接第一网络协议处理单元11,所述第一网络协议处理单元用于处理经由网络发送来的IP数据包,具体的,将网络发送的IP数据包中的数据解析出来,并将解析的数据传输给第一市场协议处理单元12。所述的IP数据包包括含有下单信息的交易数据包和含有校验和、目的IP地址、源IP地址等的IP包头信息。该第一网络协议处理单元11解析IP数据包后得到具有下单信息的交易数据包和具有校验和、目的IP地址和源IP地址等数据的IP包头信息,并将解析出的交易数据包信息和IP包头信息一起发送至第一市场协议处理单元12。第一市场协议处理单元12用于按照特定的市场数据协议,将接收的来自于第一网络协议处理单元11的解析的交易数据包中的下单信息和市场信息解析出来,并将解析出的下单信息和市场信息、IP包头信息一起发送给风控处理单元13。同时该第一市场协议处理单元12内部设置缓存部件(未图示),能够存储解析的下单信息和IP包头信息等数据。
风控处理单元13为FPGA风控处理模块1的核心处理单元,该单元为内置固化的风险控制逻辑电路的FPGA单元。当风控处理单元13接收到下单信息、市场信息、IP包头信息后,根据风控逻辑所配置的下单规则实时检测下单信息是否违反下单规则,如果发现下单信息违反规则,风控处理单元13会进行相应的处理,并将处理后的下单信息、市场信息、IP包头信息发送至第二市场协议处理单元16。风控处理单元13内部的交易规则能够更新,例如当交易规则与数量相关时,风控处理单元13能够对相关的数量进行更新。例如,该交易规则为下单次数,在风控处理单元13内设置未图示的计数器用于累积下单次数的信息,每次交易后风控处理单元13会根据交易市场反馈的下单结果信息自动更新(累加或递减)计数器的下单累积值,当累积下单次数大于阈值(计数器从0开始累加)或者小于0(计数器从阈值开始递减)时,就设定为违反下单规则。
寄存器单元14与输入输出单元15相连,该寄存器单元14用于储存控制与管理模块3发送的风控规则的参数,并将这些参数配置给风控处理单元13。
输入输出单元15用于连接控制与管理模块3和FPGA风险控制模块1,接收控制与管理模块3的风险控制规则的参数,并存储于寄存器单元14中。优选地,该输入输出单元15为PCIe接口。
第二市场协议处理单元16能够在处理用户下达的交易指令时和处理市场反馈的下单结果时分别对风控处理单元13发送的下单信息和第二网络协议处理单元解析的下单结果信息分别进行处理。在处理用户下达的交易指令时,该单元能够将经过风控处理单元13处理的下单信息按照市场信息和特定的市场数据协议进行组包为具有下单信息的交易数据包,并将上述数据包和IP包头信息发送给第二网络协议处理单元17。在处理市场反馈的下单结果时,该第二市场协议处理单元16能够接收第二网络协议处理单元17解析的信息(交易市场4反馈的下单结果信息),并按照特定的市场数据协议对上述接收的来自于第二网络协议处理单元16的信息进行解析。
第二网络协议处理单元17能够在处理用户下达的交易指令时和处理市场反馈的下单结果时分别对第二市场协议处理单元16发送的具有下单信息的交易数据包和交易市场发送的下单结果信息分别进行处理。在处理用户下达的交易指令时,该单元能够按照特定的网络协议和IP包头信息将接收到的第二市场协议处理单元16发送的交易数据包进行重新组包,组包为与第一网络协议处理单元11接收的IP数据包格式相同的IP数据包,并将其发送给交易市场4。在处理市场反馈的下单结果时,第二网络协议处理单元17能够接收交易市场4反馈的下单结果信息,并按照网络层协议将上述反馈的下单结果信息进行解析。
信号分配模块2,优选地为无源分光器器件,能够将交易市场反馈的信息进行复制和分配,先将信息进行复制(优选地,复制为两份),其中一份信息直接发送至客户端5以达到最低延迟,其中另一份发送至硬件模块以便更新下单规则。
控制与管理模块3通过输入输出单元15与FPGA风险控制模块1进行数据交换,该模块具有图形界面,管理员可以通过图形界面对所述的FPGA风险控制模块1进行监控和配置参数的输入。
FPGA风险控制模块1的下单信息由客户端5输入,并最终发送至交易市场4。该客户端5与交易市场4分别通过网络与FPGA风险控制模块1相连。客户在所述客户端5可以进行下单操作。交易市场4能够解析FPGA风险控制模块1发送的IP数据包,分别解析出下单信息等信息,并根据解析的下单信息判断接收或者拒绝该次下单。同时该交易市场4还能将上述下单结果通过信号分配模块2反馈至客户端5和FPGA风险控制模块1;所述交易市场4为交易所。
图2为本发明第一实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统的风险控制流程图。
如图2所示,客户端下单,下单的内容可以包括买卖的数量、价格区间等交易条件和信息(步骤S1)。该下单信息经网络发送至第一网络协议处理单元11,发送至第一协议处理单元11的为具有交易数据包和IP包头信息的IP数据包(步骤S2)。所述第一网络协议处理单元11按照网络层协议将上述IP数据包进行解析处理,解析为具有下单信息的交易数据包和具有校验和、目的IP地址(交易市场IP)、源IP地址(客户IP)等的IP包头信息,并将解析的交易数据包和IP包头信息发送至第一市场协议处理单元12(步骤S3)。第一市场协议处理单元12根据特定的市场数据协议将获取的交易数据包进行解析,解析出客户的下单信息和市场信息(S4)。第一市场协议处理单元12判断解析的下单信息是否完整(步骤S5)。具体的,第一市场协议消息12先判断步骤S4中解析出的下单信息是否完整:如果步骤S4解析的下单信息完整,则判断已有下单信息为完整的;如果步骤S4解析的下单信息不完整则调用未图示的缓存部件中存储的下单信息,然后判断调取出来的下单信息(缓存部件中存储的)与步骤S4中解析出的下单信息等已有的下单信息是否能够组成完整的下单信息,如果能够组成完整的下单信息则判断已有的下单信息是完整的,如果不能组成完整的下单信息则判断已有的下单信息是不完整的。如果判断已有交易数据包中的下单信息不完整(步骤S5为否),则将步骤S4中解析出的下单信息和对应的IP包头信息存储于第一市场协议处理单元12的缓存部件(未图示)中,并等待步骤S2接收的新的IP数据包,继续判断下单信息是否完整。如果判断已有的下单信息完整(步骤S5为是),则将完整的下单信息以及相应的IP包头信息发送至风控处理单元13,风控处理单元13基于该单元内部的下单风险检测逻辑电路对接收到的下单信息进行检测,同时风控处理单元13可以将接收到的下单信息等数据反馈至控制与管理模块3,当操作人员根据反馈信息或其他因素认为应修改检测规则参数时,可以在控制与管理模块3中进行修改(步骤S6)。所述的下单风险检测逻辑电路是在风控处理单元开始工作之前根据操作人员设定的风控规则写入风控处理单元内的。在该步骤中,风控处理单元13中的检测规则的阈值等参数也是由操作人员通过控制与管理模块3配置的,该配置参数由输入输出单元14和未图示的驱动设备发送至寄存器单元15,再由寄存器单元15将参数配置到风控处理单元13内部的寄存器中(未图示),供风控处理单元13进行下单信息检测。上述风控规则的参数可以由操作人员在控制与管理模块3上进行实时修改。风控处理单元13判断下单信息是否符合风控处理单元13内的下单风险检测规则(步骤S7)。如果风控处理单元13检测发现下单信息符合检测规则(步骤S7为是),则将该下单信息和对应的市场信息直接发送至第二市场协议处理单元16,由第二市场协议处理单元16按照特定的市场数据协议和市场信息将下单信息进行组包,组包为具有完整下单信息的交易数据包,并将该数据包发送至第二网络协议处理单元17(步骤S8)。如果风控处理单元13检测发现下单信息不符合检测规则(步骤S7为否),则风控处理单元13将下单信息进行修改,例如将下单信息中的买卖的数量、价格区间等参数全部初始化为0,或者将交易代码修改为测试代码(交易市场发现测试代码会认为是测试数据,从而忽略该下单)(步骤S11)。将修改后的下单信息和市场信息发送至第二市场协议处理单元16,由第二市场协议处理单元16按照特定的市场数据协议和市场信息将下单信息进行组包,组包为具有完整下单信息的交易数据包,并将该数据包发送至第二网络协议处理单元17(步骤S8)。第二网络协议处理单元17按照网络层协议规范将接收到的含有下单信息的交易数据包进行重新组包,组包为IP数据包,同时将该IP数据包经网络发送至交易市场4(步骤S9)。
当交易市场4接收到上述具有下单信息的IP数据包后,自行解析,解析出下单信息和校验信息等数据,如果解析出的下单数为0或者测试代码,则会拒绝该下单;如果下单数不为0和测试代码,则会接收该下单(步骤S10)。
交易市场4接受或拒绝该下单信息后,会反馈该下单的处理结果,信号分配模块2连接在交易市场4的处理结果输出端。信号分配模块2将该反馈的下单结果信息进行复制,复制为若干份,优选地,复制为两份,并将复制的信息发送出去(步骤S12)。一份直接发送至客户端5,使客户了解自己的下单是否被受理;另一份通过网络发送至FPGA风险控制模块1(步骤S13)。上述下单结果信息需先经过FPGA风险控制模块1下的第二网络协议处理单元17和第二市场协议处理单元16分别按照网络层协议和特定的市场数据协议解析出具体下单结果(交易市场4接受或拒绝下单),并将该下单结果信息发送至风控处理单元13,当风控处理单元13接收到该下单结果信息后,则对其内部交易规则进行相应的修改(步骤S14);例如该交易规则为下单次数累计值时,风控处理单元13内设置计数器用于累积下单次数:如果交易市场反馈的下单结果为拒绝下单时,计数器累积值不变;如果交易市场反馈的下单结果为接收该下单时,计数器累积值自动加1或减1。
实施例2
图3为本发明第二实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统结构示意图。如图3所示,所述的风险控制系统包括FPGA风险控制模块1、信号分配模块2和控制与管理模块3。
在本实施例中FPGA风险控制模块1的结构与实施例1的FPGA风险控制模块1的结构相同,包括第一网络协议处理单元11、第一市场协议处理单元12、风控处理单元13、寄存器单元14、输入输出单元15、第二市场协议处理单元16、第二网络协议处理单元17。其中风控处理单元13、输入输出单元15、信号分配模块2和控制与管理模块3与实施例1的相应结构的功能相同,在此不再重复说明。
第一网络协议处理单元11具有与实施例1所述的第一网络协议处理单元16相同的功能(接收IP数据包,并将接收到的IP数据包解析为交易数据包和IP包头信息)外,第一网络协议处理单元11还与寄存器单元14连接,能够将接收到的IP数据包以及其解析的IP包头信息发送至寄存器单元14。
第一市场协议处理单元12用于按照特定的市场数据协议,将接收的来自于第一网络协议处理单元11的解析的交易数据包中的下单信息和市场信息解析出来,并将解析出的下单信息和市场信息、IP包头信息一起发送给风控处理单元13。但与实施例1不同的是,该单元不设置缓存部件,不具备存储功能;此外,该单元与寄存器单元14连接,能够将解析的下单信息等发送至寄存器单元14。
寄存器单元14分别与第一网络协议处理单元11、第一市场协议处理单元12、第二网络协议处理单元17和输入输出单元15相连,该寄存器单元14用于储存控制与管理模块3发送的风控规则的参数,并将这些参数配置给风控处理单元13(与实施例1的寄存器单元功能相同);与实施例1的寄存器单元的功能不同的是,本实施例的寄存器单元14还用于存储第一网络协议处理单元11接收的IP数据包和解析的含有源IP地址、目的IP地址和校验和等信息的IP包头信息以及第一市场协议处理单元12解析的下单信息。
第二市场协议处理单元16除了具有与实施例1所述的第二市场协议处理单元16相同的功能外,该单元还能转发下单信息和相应的IP包头信息至第二网络协议处理单元17。
第二网络协议处理单元17除了具有与实施例1所述的第二网络协议处理单元17相同的功能外,第二网络协议处理单元17还能根据下单信息和IP包头信息调用寄存器单元14中存储的相应的IP数据包,并将该IP数据包发送给交易市场4。
所述交易市场4与客户端5与FPGA风险控制模块1的关系与实施例1中所述的相同,在此不再重复说明。
图4为本发明第二实施例涉及的基于FPGA的证券及金融衍生品交易风险控制系统的风险控制流程图。如图4所示,步骤S21~S24与实施例1所述的步骤S1~S4的过程相同,在此不再重复说明。第一市场协议处理单元12判断已有的下单信息是否完整(步骤S25)。具体的第一市场协议处理单元12先判断步骤S24中解析出的下单信息是否完整:如果步骤S24解析的下单信息完整,则判断已有的下单信息为完整的;如果步骤S24解析的下单信息不完整则调用寄存器单元14中存储的下单信息,然后判断调取出来的下单信息(寄存器单元14中存储的)与步骤S24中解析出的下单信息是否能够组成完整的下单信息,如果能够组成完整的下单信息则判断已有的下单信息是完整的,如果不能组成完整的下单信息则判断已有的下单信息是不完整的。如果判断已有的下单信息不完整(步骤S25为否),则将第一网络协议处理单元11接收到的IP数据包以及第一市场协议处理单元12解析得到的下单信息和相应的IP包头信息存储于寄存器单元14中,并等待步骤S2接收的新的IP数据包,继续判断下单信息是否完整。如果判断已有的下单信息完整(步骤S25为是),则将完整的下单信息发送至风控处理单元13,接着执行步骤S26和S27,与实施例1的步骤S6和S7过程相同,在此不再重复说明。如果风控处理单元13检测发现下单信息符合检测规则(步骤S27为是),则风控处理单元13将该符合检测规则的下单信息和对应的IP包头信息发送至第二市场协议处理单元16,第二市场协议处理单元16直接将接收到的下单信息和对应的IP包头信息转发至第二网络协议处理单元17,第二网络协议处理单元17根据接收到的下单信息和IP包头信息调用第一网络协议处理单元11存储于寄存器单元14的具有该下单信息和IP包头信息的IP数据包,并将该IP数据包发送至交易市场4(步骤S28)。然后进行同实施例1的步骤S10相同的过程(在此不再重复说明)(步骤S32)。如果风控处理单元13检测发现下单信息不符合检测规则(步骤S27为否),则风控处理单元13将下单信息进行修改,该修改过程与实施例1的步骤S8过程相同,在此不再重复说明(步骤S29)。然后将修改后的下单信息和市场信息发送至第二市场协议处理单元16,由第二市场协议处理单元16按照特定的市场数据协议和市场信息将下单信息进行组包,组包为具有完整下单信息的交易数据包,并将该数据包发送至第二网络协议处理单元17(步骤S30)。
然后依次执行步骤S31~S35,上述过程与实施例1中所述的步骤S10~S14过程相同,在此不再重复说明。
在本发明中,所述风控处理单元按照下单规则对下单信息进行检测和处理,所述第二市场协议处理单元16能够将经过风控处理单元13处理的下单信息按照特定的市场数据协议进行组包为具有下单信息的交易数据包,但不仅限于此。在很多情况下,将风控处理和市场协议处理合并在一起处理的效率会更高,因此,为了提高系统的处理能力,风控处理单元13可以设置为不仅能够按照其内部存储的下单规则对下单信息检测和处理,还能够将处理后的下单信息按照特定市场数据协议进行组包,组包为具有下单信息的交易数据包,然后将封装好的交易数据包由第二市场协议处理单元16转发至第二网络协议处理单元17进行组包;此时,第二市场协议处理单元16不对下单信息进行组包。
在本发明中,FPGA风险控制模块1检测到下单信息不符合风控处理单元13的检测规则时,风控处理单元13将下单数重新初始化为0或者将交易代码修改为测试代码,以使交易市场拒绝该下单请求,但不仅限于此。也可以在FPGA风险控制模块1检测到下单信息不符合风控处理单元13的检测规则时,风控处理单元13直接中断该违规下单所在的网络连接,同时不影响通过该系统的其他没有出现违规消息的网络连接。
本发明中,上述的实施方式仅以一个客户端下单的情况进行说明。实际上,客户端可以为多个,所述风险控制模块中的风控逻辑电路也可以具有多个,每个风控逻辑电路对应某一特定的客户端。如果几个客户端的风控规则相同,其可以共享一个风控逻辑电路以节省资源占用。本发明的风险控制系统对下单处理的方式为并行处理方式,所以在处理过程中,每个下单之间的检测并不相互影响,能够保证下单检测的准确性。
上述实施方式所涉及的风险控制系统,客户端仅能够获知自己的下单是否成功,但不仅限于此。风险控制模块还可以具有反馈单元,当客户端下单信息不符合下单规则时,风险控制模块不仅能够对下单信息进行更新,还能将该下单信息不符合下单规则的原因和/或处理结果反馈至客户端;使客户端在获知自己下单是否成功的同时,还能在下单失败时获知下单失败的原因。
本发明所属的风险控制系统的FPGA风控处理模块中的第一网络协议处理单元11、第一市场协议处理单元12、风控处理单元13、寄存器单元14、输入输出单元15、第二市场协议处理单元16、第二网络协议处理单元17均基于FPGA制成。但不仅限于此,上述的FPGA风险控制模块的各单元中至少其中之一为基于FPGA制成。
在以上实施例中均以网络传输协议为IP协议为例进行说明,但不限于此,本发明也可以用于以其他方式传输数据的证券及金融衍生品交易系统。
Claims (25)
1.一种证券及金融衍生品交易风险控制系统,其特征在于:
包括设置在用户端和交易市场之间的风险控制模块,所述风险控制模块包含输入处理单元、风控处理单元和输出处理单元;
所述输入处理单元连接所述用户端,用于接收用户端发送给交易市场的交易数据并解析出交易信息;
所述风控处理单元对所述交易信息进行风险控制处理;
所述输出处理单元将所述风控处理单元处理后的交易信息封装为所述交易市场能够识别的交易数据并发送至所述交易市场。
2.根据权利要求1所述的风险控制系统,其特征在于:
所述风险控制模块、输入处理单元和输出处理单元的至少其中之一基于FPGA制成,FPGA中内置固化的实现其处理功能的逻辑电路。
3.根据权利要求2所述的风险控制系统,其特征在于:
所述输入处理单元包括第一网络协议处理单元和第一市场协议处理单元;
所述第一网络协议处理单元连接所述用户端,用于将用户端发送的交易数据解析为具有市场协议格式的交易信息;
所述第一市场协议处理单元连接所述第一网络协议处理单元和所述风控处理单元,用于将第一网络协议处理单元解析出的所述具有市场协议格式的交易信息按照特定市场的数据协议解析出所述交易信息。
4.根据权利要求3所述的风险控制系统,其特征在于:
所述风控处理单元包括风控参数计数器;
所述输出处理单元包括第二市场协议处理单元和第二网络协议处理单元;
所述第二网络协议处理单元连接所述交易市场的信息反馈接口,在接收到市场返回的交易结果后进行网络协议处理,并发送给所述第二市场协议处理单元;
所述第二市场协议处理单元连接所述风控处理单元和所述第二网络协议处理单元,在对从所述第二网络协议处理单元接收到的交易结果进行市场协议处理,并将交易结果发送给所述风控处理单元;
所述风控处理单元根据交易结果更新所述风控参数计数器的计数值。
5.根据权利要求3所述的风险控制系统,其特征在于:
所述输入处理单元只接收所述用户端发送的数据包而不与所述用户端保持固定的网络链接;
所述输出处理单元只发送处理后的数据包而不与所述交易市场保持固定的网络链接。
6.根据权利要求5所述的风险控制系统,其特征在于:
还包括与第一市场协议处理单元连接的用于临时存储交易信息的存储装置;
当所述第一市场协议处理单元接收到的交易信息不完整时,将该交易信息暂存于所述存储装置并等待该交易信息所在的所有数据包收齐后再将交易信息发送至风控处理单元;当接收的交易信息完整时,将交易信息直接发送至风控处理单元。
7.根据权利要求6所述的风险控制系统,其特征在于:
所述风控处理单元对交易信息进行风险检测,当判断有风险时,对所述交易信息进行修改;
当判断交易信息没有风险时,直接将交易信息转发至所述输出处理单元。
8.根据权利要求7所述的风险控制系统,其特征在于:
所述风险控制模块将有风险的交易信息所属的数据包修改为不会被交易市场丢弃也不会进行交易的数据包。
9.根据权利要求8所述的风险控制系统,其特征在于:
所述风控处理单元将有风险的交易信息的交易数量修改为零。
10.根据权利要求8所述的风险控制系统,其特征在于:
所述风控处理单元将有风险的交易信息的交易代码修改为在相应市场中不会进行交易的测试代码。
11.根据权利要求7所述的风险控制系统,其特征在于:
当所述风控处理单元判断交易信息没有风险时,所述输出处理单元直接调用存储装置中存储的该交易信息对应的数据包并转发给所述交易市场。
12.根据权利要求5所述的风险控制系统,还包括:
输入输出模块,用于连接所述风险控制模块和外部设备。
13.根据权利要求12所述的风险控制系统,其特征在于:
所述的外部设备为控制与管理模块,用于设定风控逻辑规则及参数。
14.根据权利要求13所述的风险控制系统,其特征在于:
所述风险控制模块还包括寄存器单元,用于存储所述风控逻辑规则的参数;
所述控制与管理模块通过所述寄存器单元设定所述风控逻辑规则的参数。
15.根据权利要求1~14中任一项所述的风险控制系统,其特征在于:
所述风险控制模块还包括错误信息反馈单元;
所述错误信息反馈单元能够将交易信息违反所述风控逻辑规则的原因和/或处理结果反馈至客户端。
16.一种证券及金融衍生品交易风险控制方法,包括:
交易信息接收步骤,接收客户端发送给交易市场的数据包,并解析出交易信息;
风险检测及处理步骤,对所述交易信息进行风险控制处理;
交易信息发送步骤,将风险检测及处理步骤处理后的交易信息封装为所述交易市场能够识别的交易数据并发送到交易市场。
17.根据权利要求16所述的风险控制方法,其特征在于:
所述交易信息接收步骤、风险检测及处理步骤和交易信息发送步骤中的至少其中之一通过内置逻辑电路的FPGA装置进行处理。
18.根据权利要求17所述的风险控制方法,其特征在于:
在所述交易信息接收步骤中,当第一市场协议处理单元接收到的数据包中的交易信息不完整时,将该交易信息暂存于与第一市场协议处理单元连接的存储装置中,并等待该交易信息所在的所有数据包收齐后再将交易信息发送至风控处理单元;当接收的交易信息完整时,将交易信息直接发送至风控处理单元。
19.根据权利要求18所述的风险控制方法,其特征在于:
在所述风险检测及处理步骤中,将有风险的交易信息所属的数据包修改为不会被交易市场丢弃也不会进行交易的数据包。
20.根据权利要求19所述的风险控制方法,其特征在于:
在所述风险检测及处理步骤中,将有风险的交易信息的交易数量修改为零。
21.根据权利要求19所述的风险控制方法,其特征在于:
在所述风险检测及处理步骤中,将有风险的交易信息的交易代码修改为在相应市场中不会进行交易的测试代码。
22.根据权利要求19所述的风险控制方法,其特征在于:
在交易信息接收步骤中暂存收到的数据包,当在风险检测及处理步骤判断交易信息没有风险时,在交易信息发送步骤直接调用暂存的该交易信息对应的数据包并转发给所述交易市场。
23.根据权利要求19所述的风险控制方法,还包括:
交易反馈步骤,将交易市场返回的交易结果反馈至风险控制装置和客户端。
24.根据权利要求23所述的风险控制方法,其特征在于:
还包括风险控制反馈步骤,当所述交易信息违反风控逻辑规则时,将交易信息违反所述风控逻辑规则的原因和/或处理结果反馈至客户端。
25.根据权利要求16所述的风险控制方法,还包括:
参数配置步骤,通过外部控制装置对风控处理单元的风控逻辑规则及参数进行配置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510375326.7A CN105989537A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
CN202110590384.7A CN113177848A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510375326.7A CN105989537A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110590384.7A Division CN113177848A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105989537A true CN105989537A (zh) | 2016-10-05 |
Family
ID=57040023
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510375326.7A Pending CN105989537A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
CN202110590384.7A Pending CN113177848A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110590384.7A Pending CN113177848A (zh) | 2015-07-01 | 2015-07-01 | 一种证券及金融衍生品交易风险控制系统及风险控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN105989537A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106600402A (zh) * | 2016-11-02 | 2017-04-26 | 上海成括信息科技有限公司 | 基于交易所公布的案例对异常交易风险监控系统的改进 |
CN107330641A (zh) * | 2017-08-18 | 2017-11-07 | 广发证券股份有限公司 | 一种基于Storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法 |
CN109493219A (zh) * | 2018-10-24 | 2019-03-19 | 深圳市金证科技股份有限公司 | 期权合约报价的生成方法、系统、终端设备及存储介质 |
CN110766289A (zh) * | 2019-09-26 | 2020-02-07 | 北京淇瑀信息科技有限公司 | 一种风控规则动态调整方法、装置和电子设备 |
TWI769534B (zh) * | 2020-09-28 | 2022-07-01 | 凱基證券股份有限公司 | 證券交易之低延遲即時風險控制系統及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102339452A (zh) * | 2011-11-09 | 2012-02-01 | 曾祥洪 | 金融衍生品量化交易方法和量化交易系统 |
CN103530772A (zh) * | 2013-09-30 | 2014-01-22 | 深圳钱盒信息技术有限公司 | 一种移动互联支付风险控制方法及系统 |
CN103745345A (zh) * | 2014-01-27 | 2014-04-23 | 上海坤士合生信息科技有限公司 | 应用于交易平台实现金融信息分级安全处理的系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149831A (zh) * | 2007-10-26 | 2008-03-26 | 于培宁 | 一种智能商品市场交易系统 |
CN101706937A (zh) * | 2009-12-01 | 2010-05-12 | 中国建设银行股份有限公司 | 电子银行风险监控方法及系统 |
CN103279883B (zh) * | 2013-05-02 | 2016-06-08 | 上海携程商务有限公司 | 电子支付交易风险控制方法及系统 |
-
2015
- 2015-07-01 CN CN201510375326.7A patent/CN105989537A/zh active Pending
- 2015-07-01 CN CN202110590384.7A patent/CN113177848A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102339452A (zh) * | 2011-11-09 | 2012-02-01 | 曾祥洪 | 金融衍生品量化交易方法和量化交易系统 |
CN103530772A (zh) * | 2013-09-30 | 2014-01-22 | 深圳钱盒信息技术有限公司 | 一种移动互联支付风险控制方法及系统 |
CN103745345A (zh) * | 2014-01-27 | 2014-04-23 | 上海坤士合生信息科技有限公司 | 应用于交易平台实现金融信息分级安全处理的系统及方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106600402A (zh) * | 2016-11-02 | 2017-04-26 | 上海成括信息科技有限公司 | 基于交易所公布的案例对异常交易风险监控系统的改进 |
CN106600402B (zh) * | 2016-11-02 | 2022-02-22 | 上海金仕达成括信息科技有限公司 | 一种基于交易所公布案例改进的异常交易风险监控系统 |
CN107330641A (zh) * | 2017-08-18 | 2017-11-07 | 广发证券股份有限公司 | 一种基于Storm流处理框架和规则引擎的金融衍生品实时风险控制系统及方法 |
CN109493219A (zh) * | 2018-10-24 | 2019-03-19 | 深圳市金证科技股份有限公司 | 期权合约报价的生成方法、系统、终端设备及存储介质 |
CN110766289A (zh) * | 2019-09-26 | 2020-02-07 | 北京淇瑀信息科技有限公司 | 一种风控规则动态调整方法、装置和电子设备 |
TWI769534B (zh) * | 2020-09-28 | 2022-07-01 | 凱基證券股份有限公司 | 證券交易之低延遲即時風險控制系統及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113177848A (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105989539A (zh) | 一种金融交易行情获取系统以及获取方法 | |
CN105989537A (zh) | 一种证券及金融衍生品交易风险控制系统及风险控制方法 | |
US9148352B2 (en) | Method and system for dynamic repurposing of payload storage as a trace buffer | |
CN102932444B (zh) | 金融实时交易系统中的负载均衡模块 | |
CN100369423C (zh) | 网络仿真测试系统及方法 | |
JP3640187B2 (ja) | マルチプロセッサシステムの障害処理方法、マルチプロセッサシステム及びノード | |
CN105511954A (zh) | 一种报文处理方法及装置 | |
CN110324198A (zh) | 丢包处理方法和丢包处理装置 | |
CN110535654A (zh) | 基于区块链的并行系统部署方法、装置和计算机设备 | |
CN105282128A (zh) | 一种基于长连接的双向调用方法及系统 | |
CN109246189A (zh) | 网络数据分发方法及装置、存储介质、服务端 | |
CN105847179A (zh) | 一种dpi系统中数据并发上报的方法及装置 | |
WO2021083375A1 (zh) | 检测链路状态的方法及装置 | |
CN111447273B (zh) | 云处理系统及基于云处理系统的数据处理方法 | |
US10339091B2 (en) | Packet data processing method, apparatus, and system | |
EP3779714A2 (en) | Emulating broadcast in a network on chip | |
CN109814871B (zh) | 基于dds总线的节点管理方法及系统 | |
CN113938512B (zh) | 一种基于可配置网关的多设备联动控制方法及系统 | |
Täubrich et al. | Formal specification and analysis of AFDX redundancy management algorithms | |
CN116760510B (zh) | 一种消息发送方法、消息接收方法、装置和设备 | |
CN112448854B (zh) | 一种kubernetes复杂网络策略系统及其实现方法 | |
CN112765925B (zh) | 互联电路系统、验证系统及方法 | |
CN209250664U (zh) | 数据处理装置 | |
CN102983993B (zh) | 一种提升snmp设备数据处理速度的方法及系统 | |
CN114422295B (zh) | 一种网络信息处理方法、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 403, no.3766, South Ring Road, Binjiang District, Hangzhou City, Zhejiang Province, 310053 Applicant after: Shengli Anyuan Technology (Hangzhou) Co.,Ltd. Address before: 310053 4th floor, new century building, 3766 South Ring Road, Binjiang District, Hangzhou City, Zhejiang Province Applicant before: SHENGLI FINACIAL SOFTWARE DEVELOPMENT (HANGZHOU) Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161005 |