一种程序化交易策略的自动构建与优化方法

文档序号:6631827阅读:176来源:国知局
一种程序化交易策略的自动构建与优化方法
【专利摘要】本发明公开了一种程序化交易策略的自动构建与优化方法,包含以下步骤:A.批量化地自动构建策略的逻辑结构;B.进行策略逻辑结构的自动优化,策略逻辑结构在优化过程中发生变化;C.将策略的逻辑结构输出为策略实例。使用本发明,用户可以不通过分析数据和编写代码,快速地得到指定数量的策略源代码,每个策略的交易逻辑各有差异;本发明一方面降低了程序化交易策略开发的难度和成本,同时可以开放策略源代码,保持策略开发的灵活性,避免黑箱信号的不可靠性。
【专利说明】一种程序化交易策略的自动构建与优化方法

【技术领域】
[0001]本发明涉及程序化交易领域,尤其涉及一种程序化交易策略的自动构建与优化方法。

【背景技术】
[0002]随着金融市场规模的扩大,投资方法与手段日渐多样化,其中程序化交易因其较强的执行力、严格的纪律性等优势,正在逐渐发挥巨大作用。程序化交易通过开发交易策略实现,程序化交易策略也可称为程序化交易系统。但是,程序化交易策略的开发比较困难,策略开发、维护的时间与人力成本,是程序化交易的应用瓶颈。
[0003]目前现有的策略开发辅助工具,其功能通常是整合市场中通用的交易模型和技术指标,通过黑箱的形式输出固定逻辑的交易信号。具体流程如图1所示。
[0004]下面描述这种方法的一般流程:
[0005]A01.用户选取内置的交易模型。
[0006]A02.用户确定交易品种与测试时间。
[0007]A03.将交易模型在指定的品种与时间上进行参数优化。
[0008]A04.按照交易模型的固定逻辑,以黑箱的形式输出交易进出场信号。
[0009]这种方法存在的问题有:
[0010]1.用户仅能调整少量的参数,策略逻辑无法调整,这种形式不具有策略开发的灵活性。
[0011]2.策略数量通常很少,用户的可选择范围小。
[0012]3.策略逻辑对于用户是黑箱,黑箱信号的可靠性无法验证。


【发明内容】

[0013]为了克服以上技术缺陷,本发明提供一种程序化交易策略的自动构建与优化方法,可以批量化实现策略逻辑结构的快速自动构建与优化调整,并且将策略以程序源代码或插件、可执行程序的形式输出。
[0014]本发明采用的技术方案如下:
[0015]程序化交易策略的自动构建与优化方法,包含以下步骤:
[0016]A.批量化地自动构建策略的逻辑结构;
[0017]B.进行策略逻辑结构的自动优化,策略逻辑结构在优化过程中发生变化;
[0018]C.将策略的逻辑结构输出为策略实例。
[0019]所述程序化交易策略(简称为策略),也可称为程序化交易系统,包含交易开平仓买卖理念和规则的程序化交易模型,以策略逻辑结构或策略实例两种形式表达。
[0020]步骤A中所述的策略的逻辑结构,是以存储在内存或其他存储介质(如硬盘)中的抽象数据结构的形式存在,包含实现开仓与平仓的一组逻辑,每个逻辑结构中可以包含参数,也可以没有参数。
[0021]步骤A中所述的策略实例,是将一个策略逻辑结构以计算机程序的形式表达:可以为程序化交易平台的可编译的程序源代码文本,如交易开拓者、文华财经、Multicharts等软件的策略语目;或者计算机编程语目源代码,如C语目、C++、JAVA、MATLAB等语目代码;也可以为独立的可执行程序,如windows操作系统下的.exe可执行文件;或者可供其他程序调用的插件,如windows操作系统下的.dll动态链接库。
[0022]步骤A中所述的自动构建策略的逻辑结构,是随机选取多个不同的市场价格、成交量、数学函数、运算符、技术指标等组合成一个交易逻辑,按顺序排列的一组交易逻辑组成策略的开仓和平仓逻辑。
[0023]步骤A中所述的批量化,就是独立地重复自动构建策略逻辑结构的过程,产生一组两两不同的策略逻辑结构。
[0024]步骤B中所述的策略逻辑结构的自动优化,是在自动构建的批量的策略中,选取其中一个或多个为母本,这些策略的逻辑结构可以发生局部变化,或仅参数发生变化,或逻辑结构和参数都发生变化,变化后的策略可以再作为母本,重复上述过程继续进行自动优化。
[0025]上述的策略的逻辑结构可以发生局部变化,是指:将每个策略的逻辑结构分解为多个逻辑片段,两个或多个策略的不同逻辑片段相互交换,或删除一个策略的逻辑片段,并补充新的逻辑片段。
[0026]步骤C中所述的将策略的逻辑结构输出为策略实例,就是将策略逻辑结构的抽象数据结构,转化为策略实例形式输出。
[0027]由以上技术方案可见,使用本发明提供的程序化交易策略的自动构建与优化方法,其有益效果在于:
[0028]1、可以快速地得到大批量结构各异的程序化交易策略,便于用户筛选符合自身交易理念的策略;
[0029]2、可以实现策略的结构优化,具有模型发现的功能,可以将由技术指标组成的逻辑划分为不同逻辑片段进行逻辑重组,而不仅限制于传统技术指标的组合及参数优化。
[0030]3、策略实例可以包含交易逻辑的源代码,避免黑箱信号的发出,提高策略开发的灵活性和可靠性。

【专利附图】

【附图说明】
[0031]图1为现有策略辅助开发工具的流程示意图。
[0032]图2为本发明策略自动构建与优化方法的流程示意图。

【具体实施方式】
[0033]为了使本【技术领域】的人员更好地理解本发明的技术方案,下面结合说明书附图,对本发明的【具体实施方式】进行描述。
[0034]实施例提供了一种本发明的具体实施方案,即一种程序化交易策略的自动构建与优化方法,见图2,具体包括以下步骤:
[0035]A01.定义一个指标集合,包含市场价格、成交量、数学函数、运算符、技术指标
[0036]等,这里举例为:
[0037]市场价格:开盘价O,最高价H,最低价L,收盘价C ;
[0038]成交量:Vol;
[0039]数学函数:最大值max,最小值min,平均值mean ;
[0040]运算符:and,or, >, < ;
[0041]技术指标:MACD,ATR.
[0042]A02.随机选取多个不同的指标,如:
[0043]开盘价O,最高价H,平均值mean, and, MAO), >.
[0044]A03.将选取的指标自由组合成一个逻辑结构,可以组合成:
[0045]mean (开盘价 O) >最高价 H and MACD > O ;
[0046]也可以是:
[0047]最高价H-开盘价O > MACD
[0048]等,这些都是逻辑结构;在存储介质中,该结构可以以二叉树结构存在,也可以以数组编码的形式存在,或者以其他形式。
[0049]A04.重复步骤A02-A03,分别得到多头进场、空头进场、多头出场、空头出场逻辑,按这个顺序排列成完整策略。
[0050]A05.重复步骤A02-A04,获得批量不同的策略。
[0051]B01.随机从批量的策略中选取两个作为母本,从两个策略中各选出一个逻辑结构,从每个逻辑结构中拆分出两个逻辑片段并互换,将两个新的逻辑结构放回策略中,得到两个新的策略。例如,将上述两个逻辑结构,互换为:
[0052]开盘价O >最高价 H and MAO) > O ;
[0053]最高价H-mean (开盘价 O) > MACD.
[0054]即两逻辑结构中的片段mean (开盘价O)与开盘价O互换。
[0055]B02.随机从批量的策略中选取一个作为母本,随机选取该策略中的一个逻辑结构,删除其中一个逻辑片段,并补充新的片段,将新的逻辑结构放回策略中。
[0056]例如,对下述的逻辑结构
[0057]mean (开盘价 O) >最高价 H and MACD > O,
[0058]删除其中MA⑶> O片段,补充一个新的片段如
[0059]最低价L+ATR >开盘价O ;
[0060]组成新的逻辑结构:
[0061]mean (开盘价O) >最高价H and最低价L+ATR >开盘价0.
[0062]B03.重复步骤B01-B02,获得批量优化后的策略逻辑结构。
[0063]C01.将策略逻辑结构转化为计算机程序源代码形式输出。例如:对于二叉树形式存储的逻辑结构,通常采用自下而上的遍历算法将二叉树结构转化为源代码语句。
[0064]C02.重复步骤COl可输出批量化的策略程序源代码。
[0065]使用本发明,用户可以不通过分析数据和编写代码,快速地得到指定数量的策略源代码,每个策略的交易逻辑各有差异。本发明一方面降低了程序化交易策略开发的难度和成本,同时可以开放策略源代码,保持策略开发的灵活性,避免黑箱信号的不可靠性。
[0066]容易理解,该实施例仅仅是本发明的一部分,本领域技术人员在没有做出创造性劳动的前提下所获得的其他实施例,以及进行的未脱离本发明精神和范围的各种改动和变型,都应当属于本发明的保护范围之内。
[0067] 本发明未详细描述的技术、形状、构造部分均为公知技术。
【权利要求】
1.一种程序化交易策略的自动构建与优化方法,其特征在于,包含以下步骤: A.批量化地自动构建策略的逻辑结构; B.进行策略逻辑结构的自动优化,策略逻辑结构在优化过程中发生变化; C.将策略的逻辑结构输出为策略实例。
2.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,所述策略包含交易开平仓买卖理念和规则的程序化交易模型,以策略逻辑结构或策略实例两种形式表达。
3.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,策略的逻辑结构以存储在内存或其他存储介质中的抽象数据结构的形式存在,包含实现开仓与平仓的一组逻辑,每个逻辑结构中可以包含参数,也可以没有参数。
4.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,策略实例是将一个策略逻辑结构以计算机程序的形式表达,可以为程序化交易平台的可编译的程序源代码文本,或者计算机编程语言源代码,也可以为独立的可执行程序,或者可供其他程序调用的插件。
5.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,自动构建策略的逻辑结构,是随机选取多个不同的市场价格、成交量、数学函数、运算符、技术指标等组合成一个交易逻辑,按顺序排列的一组交易逻辑组成策略的开仓和平仓逻辑。
6.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,批量化,是独立地重复自动构建策略逻辑结构的过程,产生一组两两不同的策略逻辑结构。
7.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,策略逻辑结构的自动优化,是在自动构建的批量的策略中,选取其中一个或多个为母本,这些策略的逻辑结构可以发生局部变化,或仅参数发生变化,或逻辑结构和参数都发生变化,变化后的策略可以再作为母本,重复上述过程继续进行自动优化。
8.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,策略的逻辑结构可以发生局部变化,是将每个策略的逻辑结构分解为多个逻辑片段,两个或多个策略的不同逻辑片段相互交换,或删除一个策略的逻辑片段,并补充新的逻辑片段。
9.根据权利要求O所述的程序化交易策略的自动构建与优化方法,其特征在于,步骤C是将策略逻辑结构的抽象数据结构,转化为策略实例形式输出。
【文档编号】G06F9/44GK104346171SQ201410583932
【公开日】2015年2月11日 申请日期:2014年10月28日 优先权日:2014年10月28日
【发明者】石玉峰, 王鑫, 滕斌 申请人:石玉峰
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1