CN114049140A - 一种期货量化策略的精准回测系统及方法 - Google Patents
一种期货量化策略的精准回测系统及方法 Download PDFInfo
- Publication number
- CN114049140A CN114049140A CN202111250308.8A CN202111250308A CN114049140A CN 114049140 A CN114049140 A CN 114049140A CN 202111250308 A CN202111250308 A CN 202111250308A CN 114049140 A CN114049140 A CN 114049140A
- Authority
- CN
- China
- Prior art keywords
- strategy
- retest
- backtesting
- module
- futures
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 97
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000011002 quantification Methods 0.000 title claims abstract description 18
- 238000013102 re-test Methods 0.000 claims abstract description 173
- 238000012544 monitoring process Methods 0.000 claims abstract description 16
- 238000005259 measurement Methods 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 24
- 238000005457 optimization Methods 0.000 claims description 21
- 238000011156 evaluation Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 49
- 230000009191 jumping Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/06—Asset management; Financial planning or analysis
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Game Theory and Decision Science (AREA)
- Technology Law (AREA)
- Human Resources & Organizations (AREA)
- Operations Research (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种期货量化策略的精准回测系统及方法,包括账号管理模块、策略管理模块、回测管理模块、回测后台控制及服务模块、回测报告模块、行情服务模块和市场环境监测模块,账号管理模块用于策略权限管理;策略管理模块用于已编写的策略导入和导出;回测管理模块生成回测任务;回测后台控制及服务模块用于回测任务负载分发及节点回测运行;回测报告模块展示回测结果及相关分析统计报告;行情服务模块接收期货公司行情数据,并向回测管理模块、回测后台控制及服务模块、市场环境监测模块提供历史及实时的行情服务;市场环境监测模块分析当前期货市场环境,挑选出合适的交易合约。避免期货合约移仓换月产生的价格缺口而导致的回测失真的问题。
Description
技术领域
本发明涉及量化交易技术领域,具体涉及一种期货量化策略的精准回测系统及方法。
背景技术
在大数据时代,算法研究和高性能计算迅猛发展,量化交易以其稳定的投资业绩和逐渐扩大的市场份额,得到了越来越多投资者的青睐。量化交易是结合了数学知识、统计知识和计算机技术的交易方式,通过数学建模来代替人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种"大概率"事件以制定策略,极大地减少了投资风险。随着机器学习算法的不断优化、现代金融理论的不断完善,量化交易策略层出不穷。尽管这样的进步有诸多益处,但同时也带来了不容忽视的负面影响,就是在相关领域的研究中发现看似成功的投资策略也许不会取得较高的收益。因此,策略选择成为一项具有挑战性和紧迫性的任务。许多投资公司基于历史市场数据的性能模拟,通过策略回测来选择投资策略和分配资本。
但是,目前策略回测领域中也存在着诸多问题。第一个问题是回测结果的精准度,一方面,当期货交易中出现“移仓换月”的阶段时,在主力连续合约上通常会出现价格跳空现象,由此产生的价格缺口容易带来回测失真;另一方面,以前的回测过程为了简化处理,默认调取盘口的最新价,虽然操作简便,但是容易高估系统的收益率,导致回测收益和实际收益间存在偏差,回测结果精确度较差。第二个问题是,由于回测涉及大量历史数据,在运行时需要较长时间,效率较慢。
发明内容
为此,本发明提供一种期货量化策略的精准回测系统及方法,以解决现有技术中由于期货合约移仓换月产生的价格缺口而导致的回测失真的问题。
为了实现上述目的,本发明提供如下技术方案:
根据本发明的第一方面,公开了一种期货量化策略的精准回测系统,所述系统包括:账号管理模块、策略管理模块、回测管理模块、回测后台控制及服务模块、回测报告模块、行情服务模块和市场环境监测模块;
所述账号管理模块用于管理回测用户账号、系统管理员和用户策略权限;
所述策略管理模块用于导入和导出已编写的策略,为策略回测和实盘运行做准备;
所述回测管理模块用于生成回测任务、显示回测状态,还可以按条件查找用户创建的所有回测任务,并查看每个回测任务的配置详情;
所述回测后台控制及服务模块用于接收测试任务,对任务进行分拆,并根据节点的负载均衡进行回测任务的分配及节点回测运行;
所述回测报告模块用于展示和统计分析回测结果,包括回测评估报告、回测K线图和回测配置详情;
所述行情服务模块通过CTP接口获取各期货交易所的行情数据,形成各类型的K线,向回测管理模块、回测后台控制及服务模块和市场环境监测模块提供历史及实时的行情服务;
所述市场环境监测模块用于分析当前期货市场环境,并挑选出合适的交易合约。
进一步地,所述策略管理模块在创建策略时,填写策略名称及说明,选择策略框架,选择是否加仓并设置加仓间隔,设定策略参数来创建由进场子策略、出场子策略构成的策略组合,在策略管理模块中创建的策略支持是否加仓的选项。
进一步地,所述策略管理模块在进行子策略管理时,将所有的子策略分为资金管理策略和多空趋势策略两大类,以树状结构按类别显示;其中资金管理策略包含总体资金管理策略、资金分配策略和仓位管理策略;多空趋势策略包括进场子策略、出场子策略。
进一步地,所述回测管理模块针对不同的回测目的,生成批量回测、组合回测和参数优化三种类型的回测任务,保存或启动回测任务,并实时查看回测状态。
进一步地,所述批量回测是指把同一个策略加载到不同的时间段和合约上,一次性完成测试的功能;
所述组合回测是指在某一时间段内,对多个策略,灵活加载到多个合约或K线周期上;
所述参数优化是指在某一时间段内,对某个策略,加载到某个合约及K线周期上,对策略的参数取不同值,遍历测试,并对比其测试结果以选取最优参数的过程。
进一步地,所述回测后台控制及服务模块的处理逻辑为:
回测管理模块将回测任务发送到回测控制中心;
回测控制中心根据各节点的负载情况,将子回测任务进行分配;
节点接受任务,并获取行情数据,依据策略逻辑模拟成交,完成后输出成交记录并写入数据库;
所有子任务完成,系统生成回测结果及报告。
进一步地,所述回测后台控制及服务模块在接受回测管理模块创建的回测任务后,根据回测任务的类型,对回测任务进行拆分,其中,将批量回测任务拆分成具体的“K线周期+合约ID+策略”,将组合回测任务拆分成“K线周期+合约+策略”的不同回测任务,将参数优化任务拆分成“K线周期+合约+策略+参数”的不同回测任务。
进一步地,所述市场环境监测模块主要利用商品涨跌排行榜、趋势度、板块涨跌幅、月度涨跌幅对比、周间日涨跌幅对比和一些市场联动指标来分析当前期货市场环境,从而挑选出合适的交易合约。
根据本发明的第二方面,公开了一种期货量化策略的精准回测方法,所述方法为:
显示创建策略界面,填写策略名称及说明,选择策略框架,设定策略参数;
接受在所述创建策略界面的策略框架和参数信息等设置操作,创建由各类型的进场子策略和出场子策略构成的策略组合,同时可以查看、修改和删除当前已存在的子策略,为策略回测做准备;
针对不同的回测目的,选择生成批量回测、组合回测或参数优化这三种类型的回测任务,显示选定的回测任务界面,并设定回测参数;
接收在所选定的回测任务界面上的回测参数信息设置操作,对回测任务进行分拆,并根据节点的负载均衡进行回测任务的分配;
节点接受任务,并获取行情数据,依据策略逻辑模拟成交,完成后输出成交记录并写入数据库;
所有子任务完成,系统生成回测结果及报告,包括回测评估报告、回测K线图和回测配置详情。
进一步地,所述精准回测方法针对期货合约的回测方法为:
回测开始前,回测进程都会从行情服务模块预取K线,保证相应的指标有充足的数据运算,并形成对应的进出场信号;
当期货交易中出现“移仓换月”的阶段时,在主力连续合约上通常会出现价格跳空现象,为了避免价格缺口带来回测失真,自动预取下一个主力合约的历史K线,其中K线个数需满足至少为策略指标中使用的最大周期数;
回测阶段出现“移仓换月”时,在上一个主力合约结束时,将相关持仓在最后一根K线上以收盘价平仓,以避免上一个主力持仓在下一个主力的回测时间段内跳空平仓的情况。
本发明具有如下优点:
本发明公开了一种期货量化策略的精准回测系统及方法,专门针对期货合约进行策略回测,当期货交易中出现“移仓换月”的阶段时,自动引入下一个主力合约的历史数据,可以有效避免价格缺口带来回测失真现象;
策略回测中的交易过程和实盘交易过程几乎完全一致,特别是进出场点的处理采用买一卖一挂单方式,直接调用盘口的买一价或卖一价下单,更加贴近实盘交易过程,大大提高了回测的精准度,经实盘几年的对比验证,准确度大于98%;
可以创建批量回测、组合回测和参数优化三种不同类型的回测任务,简单配置就可以完成想要的复杂的回测组合,并且可以回测到最优参数;
采用集群的分布式回测方法,回测控制中心将回测任务根据节点的负载情况,动态地分配回测任务,使得回测能够快速完成。另外,节点可以根据硬件情况,灵活增加。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
图1为本发明实施例提供的一种期货量化策略的精准回测系统的结构示意图;
图2为本发明实施例提供的回测管理模块对回测任务的拆分逻辑图;
图3为本发明实施例提供的回测后台控制及服务模块的处理逻辑图;
图4为本发明实施例提供的精准回测处理逻辑图;
图5为本发明实施例提供的鸡蛋期货的主力合约切换图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
参考图1,本实施例公开了一种期货量化策略的精准回测系统,所述系统包括:账号管理模块、策略管理模块、回测管理模块、回测后台控制及服务模块、回测报告模块、行情服务模块和市场环境监测模块;
所述账号管理模块用于管理回测用户账号、系统管理员和用户策略权限;
所述策略管理模块用于导入和导出已编写的策略,为策略回测和实盘运行做准备;
所述回测管理模块用于生成回测任务、显示回测状态,还可以按条件查找用户创建的所有回测任务,并查看每个回测任务的配置详情;
所述回测后台控制及服务模块用于接收测试任务,对任务进行分拆,并根据节点的负载均衡进行回测任务的分配及节点回测运行;
所述回测报告模块用于展示和统计分析回测结果,包括回测评估报告、回测K线图和回测配置详情;
所述行情服务模块通过CTP接口获取各期货交易所的行情数据,形成各类型的K线,向回测管理模块、回测后台控制及服务模块和市场环境监测模块提供历史及实时的行情服务;
所述市场环境监测模块用于分析当前期货市场环境,并挑选出合适的交易合约。
账号管理模块在管理用户账号时可以新增、修改用户账号信息,对用户账号进行菜单权限管理和策略权限管理:通过勾选权限列表,可以管理用户账号下模块功能使用权限;通过勾选策略列表,可以管理用户账号对于所有子策略的操作权限,实现对用户账户的综合管理,
策略管理模块在进行子策略管理时,将所有的子策略分为资金管理策略和多空趋势策略两大类,以树状结构按类别显示;其中资金管理策略包含总体资金管理策略、资金分配策略和仓位管理策略;多空趋势策略包括进场子策略、出场子策略;选中某一个子策略时,右边会显示子策略的名称、说明和参数列表;同时还可以结合“导入”、“删除”和“恢复”操作对子策略进行管理。
策略管理模块在创建策略时,填写策略名称及说明,选择策略框架,选择是否加仓并设置加仓间隔,设定策略参数来创建由进场子策略、出场子策略构成的策略组合。在下拉框中选择不同的策略,参数表会根据策略变化,也可以在参数表中直接修改参数的值。因为策略修改会影响到回测的结果,所以在建立不同的策略组合或设置不同的参数时,创建多个策略,而不是直接在策略上修改再进行回测。
在策略管理模块中创建的策略支持是否加仓的选项。如果选择否,则持仓不允许开新仓,旧仓平后才可以开新仓;如果选择是,则不限制开新仓,但限制每次加仓时和上次开仓价格的差值,差值大于n*ATR(n可设)时才允许开新仓,否则放弃。
回测管理模块在生成回测任务时,根据想要生成的回测类型,输入相应的内容,点击保存会将回测保存到回测列表中,以便稍后启动;点击开始回测也会将回测保存到回测列表中,系统立即开始回测,状态为测试中。其中一共存在五种回测状态:未开始、测试中、测试完成、暂停和测试失败;可以先创建回测任务,保存后其状态为未开始,点击开始回测后,状态为“测试中”,当系统回测完毕,生成测试报告后,状态为“测试完成”;测试中的回测任务可以暂停,之后再重新启动;测试中如遇异常,显示测试失败,可以在失败详情里查看失败的原因,如参数错误、网络原因、服务不响应等,也可以返回到配置详情里查看原始配置。
在回测管理模块中,针对不同的回测目的,可以生成批量回测、组合回测和参数优化这三种类型的回测任务。所述批量回测是指把同一个策略加载到不同的时间段和合约上,一次性完成测试的功能。批量回测是针对一个策略在一个或多个时间段,一个或多个合约下的回测表现,目的是使同一个策略同时在多个时间段和合约中检验表现效果,寻找策略更适合的交易合约和启动的时间段。时间段和合约将组合成多个回测切片,如果主力合约在测试时间段有多个具体合约,将继续分成多个具体合约的切片。生成批量回测任务的具体操作为:在回测管理栏的批量回测界面,设置初始资金和资金管理策略,设置策略框架,设置仓位管理策略和固定下单手数,选择主交易行情周期,添加测试时间段和合约;其中,对于每个“时间段+合约”的组合,其初始资金、策略和交易行情周期都是相同的。
组合回测是指在某一时间段内,对多个策略,灵活加载到多个合约或K线周期上。组合回测是针对一个时间段在“合约+周期+策略”的组合下的回测表现,目的是可以测试出某个时间段内一些策略或一些合约的组合表现,为实盘运行增加更高的参考性。每个商品都支持一个虚拟合约,名为“XX主力”,选择此合约时,会根据时间段来判断具体的主力合约,当主力合约发生切换时(按交易日),将不再在老的主力合约上开新仓,如果有持仓,会按策略的规则在老的主力合约上平掉持仓,所有的新开仓会按主力合约的行情数据进行判断。创建组合回测任务的具体操作为:在回测管理栏的组合回测界面,设置初始资金、资金管理策略和资金分配策略,设置仓位管理策略和固定下单手数,设置时间段的开始时间和结束时间,设置合约、主交易行情周期和策略;其中,资金的分配方案是作用于全局的,分为两种:
(1)按合约等分,即按总资金和参与测试的合约总数,平均分配每个合约可以使用的资金,当某个合约上资金到达额度时,不再开仓;
(2)先到先得,即按时间顺序让各个策略下单,直至资金不足停止开仓。为达到此目的,可以按“时间段+策略+合约+K线周期”单个回测,生成下单记录,保存其结果后,再根据下单的时间顺序排列,逐一计算资金变化,标注出因资金不足无法下单的情况,反映到最后的评估报告中。
参数优化是指在某一时间段内,对某个策略,加载到某个合约及K线周期上,对策略的参数取不同值,遍历测试,并对比其测试结果以选取最优参数的过程。参数优化是针对一个策略的不同参数在同一时间段同一合约下的回测表现,目的是选择在某个时间段内、针对于某个合约来说最佳的策略参数。具体来看,参数优化需要同时对进场子策略、出场子策略、进场下单子策略、出场下单子策略配置参数,相关参数将生产组合策略。创建参数优化任务的具体操作为:设置初始资金和资金管理策略,设置仓位管理策略和固定下单手数,设置时间段的开始时间和结束时间,选择合约、主交易行情周期和策略,设置策略的参数。其中,选择策略,会显示其策略框架及相关子策略;同时,可以对每个子策略的参数设定起始值、结束值和步长,系统会按步长计算并遍历每套参数,进行回测。子策略的名称和参数列表会根据选取的策略而自动变化。参数的起始值和结束值默认为创建策略时设置的参数值,步长默认为0;参数的起始值和结束值及步长可以修改,但不能修改子策略的名称及参数表(不能增加或减少参数)。
参考图2,回测后台控制及服务模块的处理逻辑如下:
步骤201:回测控制服务收到回测管理模块发来的回测任务;
步骤202:通信各回测节点,获取负载情况,将子回测任务按算法进行分配,负载低的分配的回测任务多,负载高的分配的回测任务少;
步骤203:节点的回测服务收到分配的任务,开始准备回测。首先,从行情模块获取合约ID在回测时间段+预取一段时间的总的K线周期数据,再根据策略逻辑模拟成交,同时写入数据库;
步骤204:节点完成子回测任务后,通知回测控制服务。当一个完整的回测任务完成后,回测控制服务通知回测报告模块,生成回测成交K线图、回测分析报告。
参考图3,回测管理模块根据回测任务的类型,对回测任务进行拆分,具体拆分逻辑如下:
步骤301:接收回测任务;
步骤302:判断是否为组合回测或参数优化任务,若为否,则跳转到步骤304;
步骤303:将组合回测任务拆分成“K线周期+合约+策略”的不同回测任务,将参数优化任务拆分成“K线周期+合约+策略+参数”的不同回测任务;
步骤304:判断是否“主力合约”,若为否,则跳转到步骤307;
步骤305:判断在回测任务时间段上,“主力合约”是否对应多个具体的合约ID,若为否,则跳转到步骤307;
步骤306:将该回测任务拆分成具体的“K线周期+合约ID+策略”,并特殊标识;如回测2020/1/1~2021/1/1“鸡蛋主力”在策略a,15分钟K线上的回测结果,最终该回测将被拆分成:
“15分钟+20200102~20200122+jd2005+策略a”,
“15分钟+20200203~20200818+jd2009+策略a”,
“15分钟+20200819~20200915+jd2010+策略a”,
“15分钟+20200916~20201208+jd2101+策略a,
“15分钟+20201209~20201231+jd2105+策略a,总共5个子任务;
步骤307:将拆分完的任务发送到回测控制中心。
在回测后台控制及服务模块完成回测后,通过回测报告模块形成回测报告。回测报告模块可以分别查看回测评估报告、回测K线图和回测配置详情。按回测任务的三种类型,会生成不同的评估报告:针对批量回测,按时间段和合约这两个维度会生成不同的评估报告和损益曲线图;如果选择全部,指的是所有测试结果的叠加;针对组合回测,按策略、合约和周期这三个维度会生成不同的评估报告和损益曲线图;针对参数优化,可以查看各组参数的评估报告,选择某一组参数,可以生成对应的评估报告和损益曲线图。按回测任务的三种类型,会生成不同的回测K线图:针对批量回测,选择时间段和合约后,可以查看对应的K线图;针对组合回测,选择策略、合约和周期后,可以查看对应的K线图;针对参数优化在表格中显示使用各组参数回测后的一些基本指标,净盈亏、收益率、胜率等,选择某一行参数,可以查看对应的K线图。
市场环境监测模块可以分析当前期货市场环境,并挑选出合适的交易合约。所述的商品涨跌排行榜,利用涨跌幅、波动率和波动空间这两类指标来显示所有商品的主力合约的日内涨跌幅及波动空间,从而观察并比较所有商品的主力合约的涨跌情况;所述的趋势度,构建两种动态趋势度指标来观察并比较所有商品的主力合约的趋势;所述的板块涨跌幅,可以实现将所有商品划分到不同板块中,利用板块的涨跌幅,即板块内所有商品主力合约的日涨跌幅的算术平均值,来观察并比较不同板块的涨跌幅;所述的月度涨跌幅对比,通过观察单个商品主力合约的不同年度不同月度的月涨跌幅,比较商品不同月度的涨跌情况;所述的周间日涨跌幅对比,通过观察单个商品主力合约的不同周次周一至周五的日涨跌幅,比较商品周间每天的涨跌情况;所述的市场联动指标,主要选取市场中主力合约前一日成交量大于5万的商品,计算当日的涨跌个数比、平均涨幅和平均跌幅,来观察市场测涨跌趋势。
参考图4,期货量化策略的精准回测系统的精准回测处理逻辑如下:
步骤401:回测进程收到回测任务时,首先进行判断:回测的期货合约是否是“主力合约”;主力合约是系统生成的一个品种的连续合约;若非“主力合约”,则跳转到步骤403;
步骤402:继续判断该回测任务是否经过分拆;若未经过分拆,则转到步骤403,按照策略的开平逻辑回测,将委托、成交结果写入数据库;若经过分拆,则跳转到步骤404;
步骤403:回测进程将直接从行情服务获取该合约ID的回测类型的K线数据,包括测试时间段及预期的K线,并且按照策略的开平逻辑回测,将委托、成交结果写入数据库;
步骤404:经过分拆的回测任务,继续判断是否是最后一个子任务;如果是最后一个子任务,则转到步骤405;如果不是最后一个子任务,则跳转到步骤406;
步骤405:将最后一根K线上仍然存在的持仓,以结算价平仓,确保上一个主力合约不会在下一个主力合约的K线上平仓,避免平仓价格失真;其余的按照策略的开平逻辑回测,将委托、成交结果写入数据库,跳转到步骤407;
步骤406:按照策略的开平逻辑回测,将委托、成交结果写入数据库;
步骤407:整合回测结果,并形成报告;对于回测结束时依然存在的持仓,将以最后一个回测交易日的结算价进行盈亏计算。
本实施例公开的一种期货量化策略的精准回测系统,专门针对期货合约进行策略回测,当期货交易中出现“移仓换月”的阶段时,自动引入下一个主力合约的历史数据,可以有效避免价格缺口带来回测失真现象;
策略回测中的交易过程和实盘交易过程几乎完全一致,特别是进出场点的处理采用买一卖一挂单方式,直接调用盘口的买一价或卖一价下单,更加贴近实盘交易过程,大大提高了回测的精准度,经实盘几年的对比验证,准确度大于98%;
可以创建批量回测、组合回测和参数优化三种不同类型的回测任务,简单配置就可以完成想要的复杂的回测组合,并且可以回测到最优参数;
采用集群的分布式回测方法,回测控制中心将回测任务根据节点的负载情况,动态地分配回测任务,使得回测能够快速完成。另外,节点可以根据硬件情况,灵活增加。
实施例2
本实施例公开了一种期货量化策略的精准回测方法,所述方法为:
显示创建策略界面,填写策略名称及说明,选择策略框架,设定策略参数;
接受在所述创建策略界面的策略框架和参数信息等设置操作,创建由各类型的进场子策略和出场子策略构成的策略组合,同时可以查看、修改和删除当前已存在的子策略,为策略回测做准备;
针对不同的回测目的,选择生成批量回测、组合回测或参数优化这三种类型的回测任务,显示选定的回测任务界面,并设定回测参数;
接收在所选定的回测任务界面上的回测参数信息设置操作,对回测任务进行分拆,并根据节点的负载均衡进行回测任务的分配;
节点接受任务,并获取行情数据,依据策略逻辑模拟成交,完成后输出成交记录并写入数据库;
所有子任务完成,系统生成回测结果及报告,包括回测评估报告、回测K线图和回测配置详情。
回测开始前,回测进程都会从行情服务模块预取K线,保证相应的指标有充足的数据运算,并形成对应的进出场信号;
当期货交易中出现“移仓换月”的阶段时,在主力连续合约上通常会出现价格跳空现象,为了避免价格缺口带来回测失真,自动预取下一个主力合约的历史K线,其中K线个数需满足至少为策略指标中使用的最大周期数;
回测阶段出现“移仓换月”时,在上一个主力合约结束时,将相关持仓在最后一根K线上以收盘价平仓,以避免上一个主力持仓在下一个主力的回测时间段内跳空平仓的情况。
在回测完成后,根据回测结果及报告将测试好的策略进行发布,即保存为相应的文件包,后期导入实盘中,以便于在实盘上应用。
在一个具体例子中,策略回测方法是一种专门针对期货合约的回测方法。根据交易所规则,每个期货品种上市了多个不同交割期的期货合约,参考图5,期货合约名称的构成是品种+交割年月,比如“鸡蛋2109(jd2109)”指的就是2021年9月份到期交割的鸡蛋期货合约。每个期货合约都会有最后交易日。最后交易日后该合约就会下线,交易所会同时上线该品种的多个合约,但每个期货品种存在一个主力合约,即持仓量最大的合约。一般情况下,持仓量最大的合约,其成交量也是最大的。它是市场上最活跃的合约,也是最容易成交的合约,是投资者主要参与的合约。以某交易软件wh6中大商所的鸡蛋品种为例,我们可以看到盘面上鸡蛋期货品种一共有1-12月份的12个合约,这几个合约是可以交易的。目前市场上鸡蛋期货品种持仓量最大的合约是“鸡蛋2109”,该合约对应的成交量在鸡蛋合约中也是最大的,因此目前鸡蛋品种的主力合约是“鸡蛋2109”。
专门针对期货合约的策略回测方法可以避免由于期货合约移仓换月产生的价格缺口带来回测失真现象。主力合约并非持续不变,随着主力合约临近交割期,交易所为保障交割业务的顺利开展,将逐步提高其保证金标准,出现移仓换月的一个阶段。所谓“移仓换月”,就是在临近期货最后交易日的时候,把手中临近交割月的原有期货合约平仓,同时再到相对活跃的月份合约开立相同方向的头寸;操作方法就是一平一开,平到期月合约,开远月合约。移仓时会出现当前的主力合约减仓,而远期合约增仓,远期合约成交量大于当前主力合约的现象,随着仓位的转移,市场上将产生新的主力合约。价格跳空:由于不同期限的合约价格不同,在期货合约移仓换月时,在主力连续合约上通常会出现价格跳空现象;如果两个合约的价位相差较大,则会出现大幅度跳空。如图5,同样以大商所的鸡蛋品种为例,由于主力合约“鸡蛋2105”临近期货最后交易日,在2021年4月15日,主力合约换月变为“鸡蛋2109”,由于“鸡蛋2109”和“鸡蛋2105”价位相差较大,出现价格大幅度跳空现象。由于主力连续合约上存在价格跳空现象,在策略回测时,为了避免价格缺口带来回测失真,本发明实施例在期货合约换月时,自动预取N根下一个主力合约的历史数据,其中N远大于当前指标计算所需要的K线数目,保证指标计算的正确性。
回测执行中的交易过程和实盘交易过程完全一致。本发明实施例在策略回测的进出场点的处理,采用买一卖一挂单方式。以前的回测过程为了简化处理,默认调取盘口的最新价,虽然操作简便,但是容易高估系统的收益率;特别当市场流动性不是很好的时候,实际上买一价/卖一价和最新价相差很大,导致回测收益和实际收益间存在很大的偏差,回测结果精确度较差。然而,本发明实施例在回测过程中直接调用盘口的买一价或卖一价下单,更加贴近实盘交易过程,使回测结果和实盘结果最大限度保持一致,从而大大提高了回测的精准度。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (10)
1.一种期货量化策略的精准回测系统,其特征在于,所述系统包括:账号管理模块、策略管理模块、回测管理模块、回测后台控制及服务模块、回测报告模块、行情服务模块和市场环境监测模块;
所述账号管理模块用于管理回测用户账号、系统管理员和用户策略权限;
所述策略管理模块用于导入和导出已编写的策略,为策略回测和实盘运行做准备;
所述回测管理模块用于生成回测任务、显示回测状态,还可以按条件查找用户创建的所有回测任务,并查看每个回测任务的配置详情;
所述回测后台控制及服务模块用于接收测试任务,对任务进行分拆,并根据节点的负载均衡进行回测任务的分配及节点回测运行;
所述回测报告模块用于展示和统计分析回测结果,包括回测评估报告、回测K线图和回测配置详情;
所述行情服务模块通过CTP接口获取各期货交易所的行情数据,形成各类型的K线,向回测管理模块、回测后台控制及服务模块和市场环境监测模块提供历史及实时的行情服务;
所述市场环境监测模块用于分析当前期货市场环境,并挑选出合适的交易合约。
2.如权利要求1所述的一种期货量化策略的精准回测系统,其特征在于,所述策略管理模块在创建策略时,填写策略名称及说明,选择策略框架,选择是否加仓并设置加仓间隔,设定策略参数来创建由进场子策略、出场子策略构成的策略组合,在策略管理模块中创建的策略支持是否加仓的选项。
3.如权利要求2所述的一种期货量化策略的精准回测系统,其特征在于,所述策略管理模块在进行子策略管理时,将所有的子策略分为资金管理策略和多空趋势策略两大类,以树状结构按类别显示;其中资金管理策略包含总体资金管理策略、资金分配策略和仓位管理策略;多空趋势策略包括进场子策略、出场子策略。
4.如权利要求1所述的一种期货量化策略的精准回测系统,其特征在于,所述回测管理模块针对不同的回测目的,生成批量回测、组合回测和参数优化三种类型的回测任务,保存或启动回测任务,并实时查看回测状态。
5.如权利要求4所述的一种期货量化策略的精准回测系统,其特征在于,所述批量回测是指把同一个策略加载到不同的时间段和合约上,一次性完成测试的功能;
所述组合回测是指在某一时间段内,对多个策略,灵活加载到多个合约或K线周期上;
所述参数优化是指在某一时间段内,对某个策略,加载到某个合约及K线周期上,对策略的参数取不同值,遍历测试,并对比其测试结果以选取最优参数的过程。
6.如权利要求1所述的一种期货量化策略的精准回测系统,其特征在于,所述回测后台控制及服务模块的处理逻辑为:
回测管理模块将回测任务发送到回测控制中心;
回测控制中心根据各节点的负载情况,将子回测任务进行分配;
节点接受任务,并获取行情数据,依据策略逻辑模拟成交,完成后输出成交记录并写入数据库;
所有子任务完成,系统生成回测结果及报告。
7.如权利要求6所述的一种期货量化策略的精准回测系统,其特征在于,所述回测后台控制及服务模块在接受回测管理模块创建的回测任务后,根据回测任务的类型,对回测任务进行拆分,其中,将批量回测任务拆分成具体的“K线周期+合约ID+策略”,将组合回测任务拆分成“K线周期+合约+策略”的不同回测任务,将参数优化任务拆分成“K线周期+合约+策略+参数”的不同回测任务。
8.如权利要求1所述的一种期货量化策略的精准回测系统,其特征在于,所述市场环境监测模块主要利用商品涨跌排行榜、趋势度、板块涨跌幅、月度涨跌幅对比、周间日涨跌幅对比和一些市场联动指标来分析当前期货市场环境,从而挑选出合适的交易合约。
9.一种期货量化策略的精准回测方法,其特征在于,所述方法为:
显示创建策略界面,填写策略名称及说明,选择策略框架,设定策略参数;
接受在所述创建策略界面的策略框架和参数信息等设置操作,创建由各类型的进场子策略和出场子策略构成的策略组合,同时可以查看、修改和删除当前已存在的子策略,为策略回测做准备;
针对不同的回测目的,选择生成批量回测、组合回测或参数优化这三种类型的回测任务,显示选定的回测任务界面,并设定回测参数;
接收在所选定的回测任务界面上的回测参数信息设置操作,对回测任务进行分拆,并根据节点的负载均衡进行回测任务的分配;
节点接受任务,并获取行情数据,依据策略逻辑模拟成交,完成后输出成交记录并写入数据库;
所有子任务完成,系统生成回测结果及报告,包括回测评估报告、回测K线图和回测配置详情。
10.如权利要求9所述的一种期货量化策略的精准回测方法,其特征在于,所述精准回测方法针对期货合约的回测方法为:
回测开始前,回测进程都会从行情服务模块预取K线,保证相应的指标有充足的数据运算,并形成对应的进出场信号;
当期货交易中出现“移仓换月”的阶段时,在主力连续合约上通常会出现价格跳空现象,为了避免价格缺口带来回测失真,自动预取下一个主力合约的历史K线,其中K线个数需满足至少为策略指标中使用的最大周期数;
回测阶段出现“移仓换月”时,在上一个主力合约结束时,将相关持仓在最后一根K线上以收盘价平仓,以避免上一个主力持仓在下一个主力的回测时间段内跳空平仓的情况。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111250308.8A CN114049140A (zh) | 2021-10-26 | 2021-10-26 | 一种期货量化策略的精准回测系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111250308.8A CN114049140A (zh) | 2021-10-26 | 2021-10-26 | 一种期货量化策略的精准回测系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114049140A true CN114049140A (zh) | 2022-02-15 |
Family
ID=80205896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111250308.8A Pending CN114049140A (zh) | 2021-10-26 | 2021-10-26 | 一种期货量化策略的精准回测系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114049140A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114723566A (zh) * | 2022-06-10 | 2022-07-08 | 高盈国际创新科技(深圳)有限公司 | 金融交易数据处理方法及系统 |
CN117745432A (zh) * | 2024-02-19 | 2024-03-22 | 上海大智慧信息科技有限公司 | 基于微服务架构的量化回测系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092851A (ja) * | 1999-09-08 | 2001-04-06 | Koto Gijutsu Kenkyuin Kenkyu Kumiai | 特許分析用データ加工および特許マップ自動生成方法とこれのためのプログラムを貯蔵するための記録媒体 |
CN101447892A (zh) * | 2008-11-24 | 2009-06-03 | 中兴通讯股份有限公司 | 分布式测试方法和系统、以及测试服务器 |
CN107958416A (zh) * | 2017-11-22 | 2018-04-24 | 上海宽全智能科技有限公司 | 一种跟随量化交易分析方法、设备与存储介质 |
CN110533540A (zh) * | 2019-09-06 | 2019-12-03 | 北京神州同道智能科技有限公司 | 一种基于智能维元策略平台的全市场多品种金融资管系统 |
CN110610422A (zh) * | 2019-09-06 | 2019-12-24 | 北京神州同道智能信息技术有限公司 | 一种基于智能有效策略平台的全市场多品种金融资管系统 |
-
2021
- 2021-10-26 CN CN202111250308.8A patent/CN114049140A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092851A (ja) * | 1999-09-08 | 2001-04-06 | Koto Gijutsu Kenkyuin Kenkyu Kumiai | 特許分析用データ加工および特許マップ自動生成方法とこれのためのプログラムを貯蔵するための記録媒体 |
CN101447892A (zh) * | 2008-11-24 | 2009-06-03 | 中兴通讯股份有限公司 | 分布式测试方法和系统、以及测试服务器 |
CN107958416A (zh) * | 2017-11-22 | 2018-04-24 | 上海宽全智能科技有限公司 | 一种跟随量化交易分析方法、设备与存储介质 |
CN110533540A (zh) * | 2019-09-06 | 2019-12-03 | 北京神州同道智能科技有限公司 | 一种基于智能维元策略平台的全市场多品种金融资管系统 |
CN110610422A (zh) * | 2019-09-06 | 2019-12-24 | 北京神州同道智能信息技术有限公司 | 一种基于智能有效策略平台的全市场多品种金融资管系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114723566A (zh) * | 2022-06-10 | 2022-07-08 | 高盈国际创新科技(深圳)有限公司 | 金融交易数据处理方法及系统 |
CN117745432A (zh) * | 2024-02-19 | 2024-03-22 | 上海大智慧信息科技有限公司 | 基于微服务架构的量化回测系统及方法 |
CN117745432B (zh) * | 2024-02-19 | 2024-05-14 | 上海大智慧信息科技有限公司 | 基于微服务架构的量化回测系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gao et al. | Chinese securities investment funds: The role of luck in performance | |
US7930239B2 (en) | Automated actions based on restrictions | |
Kozhan et al. | Decentralized stablecoins and collateral risk | |
US7395236B2 (en) | Risk management system and method providing rule-based evolution of a portfolio of instruments | |
US8065227B1 (en) | Method and system for producing custom behavior scores for use in credit decisioning | |
CN114049140A (zh) | 一种期货量化策略的精准回测系统及方法 | |
JP2007505411A (ja) | アセット・アロケーションのための方法およびシステム | |
Chaboud et al. | The evolution of price discovery in an electronic market | |
Zhang | Liquidity misallocation in an over-the-counter market | |
WO2023123228A1 (zh) | 交易策略回测方法、装置及存储介质 | |
Zareei | Network origins of portfolio risk | |
Goergen | Insider retention and long-run performance in German and UK IPOs | |
Guo et al. | Alpha decay and Sharpe ratio: Two measures of investor performance | |
Feldman | Behavioral biases and investor performance | |
TW201643800A (zh) | 投資證券的分層複合投資組合 | |
Chong et al. | Threshold effect of scale and skill in active mutual fund management | |
Oguzsoy et al. | Robust portfolio planning in the presence of market anomalies | |
McDonald et al. | Dividend and Share Changes: Is There a Financing Hierarchy? | |
CN114066581B (zh) | 一种可扩展的物资采购系统、方法、控制器和存储介质 | |
Akhigbe et al. | Exchange Traded Funds and the likelihood of closure | |
Semenchenko et al. | Structural reorganisation of a company in a crisis of supply discrepancies | |
Marioli | Trading Places | |
Trolle | Quality Investing in the Danish Market | |
Christi et al. | Analysis of Factors Affecting the Performance of Stock and Bond-Based ETF on The Indonesia Stock Exchange | |
US20150134567A1 (en) | Employee stock ownership plan (esop) management system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |