行情数据量化处理方法及设备技术

技术编号:35264586 阅读:24 留言:0更新日期:2022-10-19 10:25
本发明专利技术的目的是提供一种行情数据量化处理方法及设备,用户只需掌握少量语法便可编写策略代码,策略计算模块提供访问行情、财报等基础数据的接口,可以使用算术运算、逻辑运算对数据进行加工计算,支持使用自定义函数、流程控制来表达策略思路,同时本系统还提供文本源码编译器前端,检查源码语法语义,生成语法树,将语法树翻译成c++代码,调用三方工具生成目标模块。以此降低投资者编写策略的技术门槛,简化策略开发环境,提高投资者分析加工数据的效率,实现用户定制策略的需求。实现用户定制策略的需求。实现用户定制策略的需求。

【技术实现步骤摘要】
行情数据量化处理方法及设备


[0001]本专利技术涉及计算机领域,尤其涉及一种行情数据量化处理方法及设备。

技术介绍

[0002]投资者在投资活动中,需要获取行情数据,对数据进行分析加工,以辅助作出投资决策,在这个过程中通常面临数据量庞大,人工分析数据低效,软件工具难以定制个性化交易策略的问题,因此我们通常使用计算机程序帮助我们解决前述问题。
[0003]目前主流的量化策略开发系统有两类,一类是利用主流的编程语言以及软件系统,比如Python和MATLAB等,这类系统要求使用者具备专业的软件开发技术。另一类是一些商业公司自行研发的策略开发系统,如功能公式管理器,只能编写简单的技术指标,也有功能比较全面的量化软件,如MQL4语言系列和Easy Language等,这类系统与各公司金融软件终端深度绑定。

技术实现思路

[0004]本专利技术的一个目的是提供一种行情数据量化处理方法及设备。
[0005]根据本专利技术的一个方面,提供了一种行情数据量化处理方法,该方法包括:
[0006]策略编译模块获取用户输入的文本源码,基于语法规则将所述文本源码转换成策略单元模块;
[0007]策略计算模块获取待分析加工的批量行情数据,策略计算模块调用所述策略单元模块,对所述批量行情数据进行分析加工,以得到分析加工结果数据。
[0008]进一步的,上述方法中,策略编译模块获取用户输入的文本源码,基于语法规则将所述文本源码转换成策略单元模块,包括:
[0009]策略编译模块读取用户输入的文本源码;
[0010]根据BNF范式描述的语法规则及补充检查规则,对所述文本源码进行语法和语义分析,以生成抽象语法树(AST);
[0011]将所述抽象语法树翻译为C++代码,使用第三方的C++编译工具链进行编译和链接,以生成策略单元模块。
[0012]进一步的,上述方法中,根据BNF范式描述的语法规则及补充检查规则,对所述文本源码进行语法和语义分析,以生成抽象语法树,包括:
[0013]根据BNF范式描述的语法规则解析文本源码得到语法节点,遍历所有的语法节点,对每个节点进行语义分析,若语法和语义分析成功,则生成完整的抽象语法树。
[0014]进一步的,上述方法中,对语法节点进行语义分析,包括:
[0015]检查所述抽象语法树的域类型节点的合法性,其中,约定一组变量定义表达式和一组函数定义表达式的集合称为一个域(domain);
[0016]检查所有域类型节点下涉及符号定义节点的合法性;
[0017]检查所有域类型节点下面的函数体节点的语义合法性。
[0018]进一步的,上述方法中,检查所述抽象语法树的域类型节点的合法性,包括:
[0019]从根节点开始开始遍历,使用深度优先遍历的方式,遍历检查所有的域类型节点的语义。
[0020]进一步的,上述方法中,检查所有域类型节点下涉及符号定义节点的合法性,包括:
[0021]检查域内变量定义节点的合法性,主要检查变量符号及初始化表达式的合法性;
[0022]检查域内函数声明节点的合法性,主要检查函数符号及函数形参的合法性。
[0023]进一步的,上述方法中,检查所有域类型节点下面的函数体节点的语义合法性,包括:
[0024]对函数体节点整个代码块的所有表达式逐一进行语义检查,若函数体中包含子代码块,则递归检查内部表达式合法性。
[0025]进一步的,上述方法中,策略计算模块调用所述策略单元模块,对所述批量行情数据进行分析加工,以得到分析加工结果数据,包括:
[0026]策略计算模块调用所述策略单元模块,并提供批量行情数据的访问接口、模拟交易接口和指标计算接口,对所述批量行情数据进行分析加工,以得到分析加工结果数据。
[0027]本专利技术提供一种行情数据量化处理设备,其中,该设备包括:
[0028]策略编译模块,用于获取用户输入的文本源码,基于所述语法规则生成策略单元模块;
[0029]策略计算模块,用于获取待分析加工的批量行情数据,策略计算模块调用所述策略单元模块,执行策略单元模块的逻辑流程,对所述批量行情数据进行分析加工,以得到分析加工结果数据。
[0030]根据本专利技术的另一方面,还提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现上述任一项所述的方法。
[0031]根据本专利技术的另一方面,还提供一种用于在网络设备端信息处理的设备,该设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该设备执行上述任一项所述的方法。
[0032]与现有技术相比,本专利技术提供一个量化策略开发系统,用户只需掌握少量语法便可编写策略代码,策略计算模块提供访问行情、财报等基础数据的接口,可以使用算术运算、逻辑运算对数据进行加工计算,支持使用自定义函数、流程控制来表达策略思路,同时本系统还提供文本源码编译器前端,检查源码语法语义,生成语法树,将语法树翻译成c++代码,调用三方工具生成目标模块。以此降低投资者编写策略的技术门槛,简化策略开发环境,提高投资者分析加工数据的效率,实现用户定制策略的需求。
附图说明
[0033]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:
[0034]图1示出本专利技术一实施例的策略逻辑表达基本单元的示意图;
[0035]图2示出本专利技术一实施例的series类型数据的示意图;
[0036]图3示出本专利技术一实施例的符号搜索路径的示意图;
[0037]图4示出本专利技术一实施例的策略编译链的示意图。
[0038]附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
[0039]下面结合附图对本专利技术作进一步详细描述。
[0040]在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0041]内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0042]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD

ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种行情数据量化处理方法,其中,该方法包括:策略编译模块获取用户输入的文本源码,基于语法规则将所述文本源码转换成策略单元模块;策略计算模块获取待分析加工的批量行情数据,策略计算模块调用所述策略单元模块,对所述批量行情数据进行分析加工,以得到分析加工结果数据。2.根据权利要求1所述的方法,其中,策略编译模块获取用户输入的文本源码,基于语法规则生成策略单元模块,包括:策略编译模块读取用户输入的文本源码;根据BNF范式描述的语法规则及补充检查规则,对所述文本源码进行语义分析,以生成抽象语法树;将所述抽象语法树翻译为C++代码,使用第三方的C++编译工具链进行编译和链接,以生成策略单元模块。3.根据权利要求2所述的方法,其中,根据BNF范式描述的语法规则及补充检查规则,对所述文本源码进行语义分析,以生成抽象语法树,包括:根据BNF范式描述的语法规则解析文本源码得到语法节点,遍历所有的语法节点,对每个节点进行语义分析,若语法和语义分析成功,则生成完整的抽象语法树。4.根据权利要求3所述的方法,其中,对语法节点进行语义分析,包括:检查所述抽象语法树的域类型节点的合法性,其中,一组变量定义表达式和一组函数定义表达式的集合称为一个域;检查所有域类型节点下涉及符号定义节点合法性;检查所有域类型节点下面的函数体节点的语义合法性。5.根据权利要求4所述的方法,其中,检查所述抽象语法树的域类型节点的合法性,包括:从根节点开始开始遍历,使用深度优先遍历的方式,遍历检查所有的域类型节点的语义。6.根据权利要求4所述的方...

【专利技术属性】
技术研发人员:向良艺
申请(专利权)人:上海东方财富证券投资咨询有限公司
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1