《基于cep技术量化交易系统构建》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
万方数据基于CEP技术的量化交易系统构建5.1.5规则约束⋯⋯⋯⋯⋯⋯⋯⋯⋯5.2类图设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.2.1消息类设计⋯⋯⋯⋯⋯⋯⋯⋯5.2.2对象类设计⋯⋯⋯⋯⋯⋯⋯⋯5.3状态变更⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.4系统调用时序⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.5配对交易策略实现⋯⋯⋯⋯⋯⋯⋯⋯5.5.1配对交易策略说明⋯⋯⋯⋯⋯5.5.2配对交易策略实现⋯⋯⋯⋯⋯53配对交易策略实现小结⋯⋯⋯第六章总结与展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.61总结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯致谢⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯目录——』IIIIIIIIIIIIIIIII——..................Y2704309............39.⋯⋯,⋯⋯⋯⋯⋯⋯⋯.⋯.⋯⋯.⋯.⋯⋯⋯⋯⋯...⋯⋯.⋯40.⋯⋯⋯⋯⋯⋯⋯⋯..⋯⋯.⋯⋯.⋯⋯⋯⋯⋯⋯...⋯.⋯.⋯41⋯⋯⋯⋯⋯⋯.⋯⋯⋯..⋯.⋯⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯..⋯43⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.z19⋯⋯⋯⋯⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.⋯..50⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯52⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯53⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5:;.⋯⋯⋯⋯⋯⋯⋯⋯..⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..51;⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.56.⋯⋯⋯.⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.56⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.56⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.58⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.⋯⋯.⋯.⋯⋯⋯⋯⋯60 万方数据基于CEP技术的量化交易系统构建摘要摘要随着国内证券市场的快速发展和金融创新的不断出现,大型投资机构和高净值人士对量化交易工具的需求越米越多,但是具体的需求却千差万别。而量化交易平台可以满足这些不同需要的策略开发、回测、运行的需求。本文首先介绍量化交易平台的相关理论和方法,然后进行量化交易平台的需求分析,包含策略开发与评估环境、策略运行环境以及CEP周边系统接口三个不要的功能需求。策略开发评估环境需要能够快速开发策略,调试完成后进入回测环境,根据回测的结果对该策略进行评估,通过评估后,策略进入运行环境,通过为策略进行权限管理,开始通过不同的方式为不同的客户提供服务。而量化交易系统需要通过CEP周边系统接口和外部系统通信来完成获取行情或发出委托等交互工作。然后,讨论系统架构,通过应用架构视图来完成子系统划分和应用分层,通过逻辑架构定义出子系统的各种主要功能。系统应用架构进行了分层设计,白底向上分为接口服务层、策略引擎层、基础服务层和应用服务层。接口服务层复杂周边系统的通信,策略引擎层提供策略高速安全运行的核心引擎,基础服务层提供策略交易的基础服务,比如订单管理子系统,而应用服务层提供外部用户的多种不同应用。技术架构视陶勾画出整个量化交易平台的技术实现方式,其中的核心是高速引擎和IAF框架,通过IAF技术框架,可以完成对周边接口的高效管理和监控,然后设计出系统的物理部署拓扑,描述整个平台的部署结构。在架构设计基础上完成了量化交易平台的详细设计,并对相对独立的核心子系统一订单管理子系统进行单独的设计实现,并阐述该子系统和其他部分的交互关系。同时,在量化交易平台上实现了配对交易策略。通过对量化交易平台的架构设计,部署出满足多种不同用户类型的量化交易平台对中国量化交易的快速发展具有重要意义。关键词量化交易复杂事件处理回测交易接口 万方数据基于CEP技术的量化交易系统构建ABSTRACTWiththerapiddevelopingofthedomesticcapitalmarket,largeinvestmentinstitutionsandhighnetworthindividualinvestorsdemandquantitativetradingtoolsmoreandmore.However,thedemandsaredifferinthousandsofways.Quantitativetradingplatformcanmeetthedifferentrequirementsforstrategies’developing,testingandexecution.Thisthesisintroducesquantitativetradingplatform’stechnologiesfirstlY,andthenanalysistherequirements.Itcouldbedividedintothreecategories,strategiesdevelopmentandevaluationenvironment,strategiesdeployingenvironmentandCEPperipheralinterfaces.Strategiesdevelopmentandevaluationenvironmentisusedtoquicklydevelop,debugandbacktesttradingstrategies,andthenevaluatethestrategy.Accordingtotheperformance,suitablestrategieswillbedeployediritetheproductjveenvironmentwithlimitsofauthoritytoprovideservicestodifferentcustomers.ThequantitativetradingsysteminteractswithexternalsystemsthroughtheCEPperipheralinterface.Then,itdiscussesthesystemarchitectureandimplementation.TheapplicationVJewofarchitectureshowssubsystemsandapplicationlayers.Thewholeplatformisbottomupdividedintofourlayers,inchdinginterfacelayer,thecoreenginelayer,basicserviceslayerandapplicationservicesone.Interfacelayerinteractswiththeoutsystems.Thecoreenginelayerprovideshigh—performanceandsaferuntimeenvironment.Andthebasicserviceslayercontainsbasiccommonservicesfortradingstrategies,suchasordermanagementsubsystem.Applicationserviceslayerprovidesvariableservicestoendusers.Andlogicalviewhigh]jghtsdetai1informationofallthesubsystems.Technicalarchitectureviewshowsthetechnologyapproachofquantitativetradingplatform.ThecoretechnologiesaretheCEPengineandIrAframework.Theframeworkadministratesalltheadapter、seffectively.Atlast,usingdeploysviewtoshowhowtodeploythewholesystem.2 万方数据基于CEP技术的量化交易系统构建ABSTRACTAccordingtothearchitecture,designedandimplementedthemainsubsystems.What’Smore,designedindependentlythecoresubsystem,ordermanagementsubsystem,andexpoundshowthesysteminteractswithotherpartsoftheplatform.Meanwhile,apairstradingstrategyiSimplementedontheplatform.Basedonthequantitativesystemarchitecture,theplatformisdeployedtomeetvariablerequirementsofdifferentendusers.TheplatformiSsignificanttotherapiddevelopingofChina’Squantitativetrading.Keywordsalgorithmictrading,complexeventprocessing,systembacktesting,tradinginterfaces 万方数据基于CEP技术的量化交易系统构建第一章绪论中国资本市场经过近几年的快速发展,金融创新不断出现,大量的金融衍生品为量化交易提供了越来越大的空间,国内市场已经具备了实施量化交易的摹本环境,随着金融创新产品的不断出现,量化交易的空间越来越大。近年来,国内量化交易进入快速发展阶段,不少券商开始构建量化交易平台,对外提供量化交易服务。1.1论文研究背景技术进步带来了金融资产交易方式的革命。如今交易过程的每一个步骤,从订单输入到交易场所再到后台清算,都实现了高度自动化。交易技术创新显著减少了由交易中介导致的成本和摩擦,从而能够促进更加高效的风险分摊和风险对冲,提升市场的流动性和价格的有效性,并最终降低企业的资本成本。量化交易包括算法交易、策略交易,足目前国际金融市场主流的交易手段,已经在欧美等成熟市场得到了广泛的应用,伦敦证券交易所2011年程序化交易占所有交易的60%以上,而美国市场则高达70%以上。大部分基金公司、机构投资者都使用算法交易来降低冲击成本、寻找最优价格。量化交易(AlgorithmicTrading)正是这场意义深远的技术革命的重要体现。根据AyeshaandKaljuvee(2007)的定义,算法交易是指在运用程序交易同时处理一篮子证券的基础上,强调以各种算法拆分订单以实现最优执行价格并最小化市场影响的交易技术。当投资者有大量证券资产需要交易时,一般都会把交易拆细,分批执行。但是,这就出现了一个问题:如何安排这些交易对是最有利的?一般交易者都希望交易不要对市场产生太大的冲击,同时也希望交易不会拖延太久导致市场价格向不利于交易者的方向变动。但是,这是一个两难:市场冲击是交易速度的增函数;等待风险则足交易速度的减函数。当交易执行速度较快时,等待风险很小,冲击成本很大;交易执行慢时,冲击成本很小,等待风险很大。算法交易的核心问题之一就是是在冲击成本与等待风险之问进行平衡,找出最优执行方案。完整的以降低冲击成本为目的的算法交易由交易计划制定和智能路由两部分构成。交易员首先给出指定交易量的买入或者卖出指令,算法根据目标基准和市场条件等制定交易计划,确定交易时机和下单量,并智能地将订单发送至流动性最好的交易场所,从而实现风险可控、成本叫+控的订单执行。实现算法的计算机程序系统则能够高速接入市场,在一分钟内产生数千个交易指令,并4 万方数据基于CEP技术的量化交易系统构建第一章绪论在瞬间取消或者更新原有的指令,将大额委托化整为零,在控制执行风险的前提下尽可能减小对市场的冲击,寻求最佳的执行路径。事实上对于管理资产规模不断扩大的机构投资者而言,交易成本对其总体收益的影响正在日益增大。市场的发展伴随着更加严格的监管,使得证券交易变得日益复杂并且难以获利。在过去的五年中,自动化和新的技术正通过金融工程改变着经纪人与投资者追求更低交易成本的方法,推动了基于模型的算法交易技术得到越来越广泛的应用。成本竞争的加剧迫使公司大量投资于他们的交易和执行平台,华尔街上电子与算法交易应用的扩张速度令人惊讶。据AiteGroup的统计预测,美国的算法交易使用率逐年升高,到2010年将有超过50%的交易量由算法交易完成。而欧洲投资界同样也大量使用算法交易,目前的使用率已经接近三分之一。事实上,在投资管理公司中算法交易更加普及,全美约90%投资经理在建立投资组合时至少使用一次算法交易,在英国这一数字也达到了77%。由于量化交易需要搭配先进的信息平台及完善的应用程序设计,并且对交易网络和信息传输的速度有较高要求,因此亚洲地区的算法交易发展起步晚于欧美。但与欧美市场相比,亚洲市场的股票流动性更差并且成交难度更大,导致了交易成本较高,所以算法交易的价值也更为突出。部分亚洲领先市场的算法交易发展迅速,在2010年香港、日本和新加坡证券市场的算法交易使用率已经超过了30%,并且预测未来增速同样可观。而国内市场近年随着金融创新的不断出现,对量化交易的需求在迅猛增加。如何有效应对这种趋势成为近几年证券公司信息化建设的新的挑战,证券公司也掀起了进行量化交易平台系统建设的风潮。班Ⅺ420052043620072()082009∞船蔓美国誓欧洲亚洲图1-1算法交易在全球的使用率增长情况觥燃麟|耋猕燃册 万方数据幕于CEP技术的量化交易系统构建第一章绪论1.2论文内容和意义虽然量化交易在国内大部分机构尚处于系统研究和初步试验阶段,但考虑到目前国内资本市场上的交易成本较高,尤其是不可见交易成本较高,许多机构投资者都对降低交易成本有着迫切的需求,量化交易在中国发展前景看好。以下因素将进一步推动量化交易在我国高速发展:(1)日益壮大的指数基金是算法交易潜在的最大用户。目前指数基金在A股开放式基金中的资产规模占比可以达到12%以上。2009年以来,己获批或已发行的指数基金达16只,其中60%是基金公司首发的指数产品,指数基金的发展明显提速,基金公司对指数产品的重视前所未有。而指数基金管理的主要目的是最小化跟踪误差,每次买卖价格是控制跟踪误差的关键,而这正是算法交易的强项。(2)机构投资者管理资产规模的扩大使算法交易提上议程。随着机构投资者所管理资产规模的日益扩大,每次在市场上的进出对市场的影响会逐渐显露。为了尽量减少对市场的冲击、降低交易成本,同时隐藏自己的交易目的、提高交易执行的效率,机构投资者会逐渐把部分交易转移到算法交易执行上来。(3)投资者和金融产品多样化为算法交易提供催化剂。目前国内市场的投资者构成己初具多样化的态势:公募基金、私募基金、保险资管、券商资管、信托公司、财务公司、众多散户等等,投资者的多样化必然带来对交易执行要求的多样化。同时,目前交易所市场已有股票、权证、ETF、封闭式基金、债券等金融工具,而股指期货等衍生工具也呼之欲出,金融工具的多样化丰富了可能的投资策略,进而对交易执行提出了新的要求。这些都是国内发展量化交易良好的催化剂。实际上,国内证券公司对于算法交易、策略交易的应用已经从实验室性质的研究走向生产上线,为满足优质客户对于算法交易、策略交易的需求,一些有远见的券商开始引进世界最先进的CEP产品来搭建自己的事件驱动型量化交易平台,从而跨越了JP摩根等国际投行曾经走过的老路,这样可以有两个优点:·可以提高编写、运行策略的效率,避免金工人员从一般编程语言的底层开始写策略,不再担心复杂策略的稳定性;●可以保证策略的持续升级,跟踪市场动态,避免策略本身的知识产权流失,不再受制于专用算法工具的软件公司。从国内外的算法交易、策略交易实践上来看,算法交易、策略交易会形成较高的换手率,其主流用户是高端客户,即:机构客户、私募基金、QFII和高 万方数据基于CEP技术的量化交易系统构建笫一章绪论净值人士,因此多属于是众多券商的优质客户。这对这些优质客户的需求,通过量化交易平台,向高端客户提供公司级的整体服务,是某证券公司获取增量高端客户、体现券商服务差异化的有效手段。为此,某证券公司在对市场复杂事物处理平台进行总体评估后选择Apama建设量化交易系统。1.3论文章节安排本文详细阐述量化交易系统的架构设计和构建过程。论文分为六个章节。第一章绪论首先介绍了国内外量化交易的整体趋势,论述量化交易平台建设的核心意义以及论文的章节结构。第二章量化交易平台相关理论和方法,介绍量化交易平台涵盖的范围和各个部分的作用,进一步介绍了进行量化交易平台建设的核心技术一主流的CEP平台和资本市场基础服务。第三章平台需求分析和高层设计,首先进行量化交易平台需求分析,在此基础上对量化交易平台架构设计工作,论述基于ITA的架构设计过程,通过系统应用架构,逐步设计出系统分层和更个分层功能及耦合关系。通过逻辑架构介绍系统的逻辑划分以及各个子系统的关系,而技术架构介绍核心平台以及系统交互所采用的技术框架,部署视图描述了系统部署要求和拓扑结构。第四章量化交易平台详细设计与实现探讨了相关子系统的主要功能和实现。第五章对量化交易平台的核心子系统进行了完整的封装和实现,并在此平台上实现了一个配对交易策略。最后对整个设计和实现进行客观的评述,并根据这个分析对未来的研究和应用方向进行展望。 万方数据基于CEP技术的量化交易系统构建第二章量化交易、F台相关理论和方法第二章量化交易平台相关理论和方法量化交易平台建设涵盖的具体范围和建设的方法在国内资本市场上并无统一的定义和成熟的方法论,尤其是采用的技术手段差异较大,通过大量的调研和分析,我们确认量化交易平台涵盖策略开发评估、策略运行、平台管理和周边接口四大部分。实现方法上采用事件驱动的CEP(ComplexEventProcessing)技术。2.1量化交易平台概述量化交易平台的建设目标是提供快速策略开发、调试、回测、运行、第三方系统接入以及多种管理功能。具体包括策略研发、策略运行、策略管理、行情资讯、多协议接入和第三方系统接口等功能。同时系统需要兼顾■次开发的功能,保证随着业务应用的不断发展,系统能够有效进行扩充。其核心子系统包含:1策略开发与评估策略研发是策略交易平台的重要组成功能,决定了策略交易的效率和实用性。研发系统应该包括对策略、指标、信号等基本元素的支持,同时应当具备主流丌发工具的特性基础开发库的支持。除了功能上的完备,还需要具有完善的图形化策略开发、图形分析展示等可视化技术分析的开发能力,来满足最终用户多样化的展现需求。2策略运行环境策略运{/-包含生产环境和测试环境,是策略执行和测试的平台。策略运行系统要具有高可用性、负载均衡和横向性能扩展能力,满足不同业务需求。策略运行系统包括策略执行、回测、报告、临控、交易管理、资源管理等功能。同时支持与门户、网卜交易软件无缝整合。(1)生产运行环境策略执行功能是策略运行的基础功能,在保证策略高速执行的同时,也要保证策略执行的可控性,如支持通过设置策略运行优先级等调整策略运行占用的资源。此外,对于公共计算资源,例如基础计算、常用指标等要作为公共组件实现共享和管理提高效率,在同一个策略执行平台上,每个时刻同一品种的相同指标应当只计算一次。同时策略执行应有相关安全机制,在出现异常情况(如价格延迟过大、仓位资金异常等)保证策略不进行错误的操作。(2)策略测试运行环境 万方数据基于CEP技术的量化交易系统构建第二章量化交易、F台相关理论和方法回测功能是策略测试、研究的重要组成部分。系统应该提供统一的回测模块,为所有策略提供回测服务,毋须另外开发。回测环境作为公用的测试环境,所有策略开发完成后可直接进行测试。回测应分为历史和实盘两种。此外还要支持跨市场、跨品种、数据频率和时间间隔以的测试。回测应支持数据回放速度控制。回测的模拟成交方式应该包括概率成交、价量成交、延迟成交、部分成交等,同时还需要开放模拟成交接口,方便配合白定义的模拟成交策略进行测试。模拟委托应当支持目前主流的价格委托方式(收盘、均价、买卖等),同时应当支持针对不同的策略设置模拟的费率、冲击成本,并提供自定义参数设置和调整支持等。除了市场数据的回测模拟,还需要支持白定义事件流等进行事件响应模拟。回测的指标应支持指定任意周期(日、周、月、N月或任意指定的再平衡日序列)。3平台管理系统策略运行过程中的运行参数、状态、实时数据、信号、策略涉及的子策略、公共指标、性能统计分析和系统硬件资源等都需要进行监控并提供统一可定制的查询监控页面。策略运行中产生的日志需要进行统一管理。相关的数据都需要提供对外访问接口,支持订阅推送信息,并与集中监控系统对接。4行情资讯策略交易平台需要支持高速实时行情、历史行情,也需要支持结构化数据、非结构化数据等外部数据源转化为内部事件。行情资讯不仅为策略运行、开发提供服务,也可以作为独立的数据服务提供给外部订阅者。系统要支持不同市场、品种、频率的行情数据、结构化数据(财务数据、行业数据等)和非结构化数据(年报、新闻公告、研究报告)等多种类型的数据。行情数据应支持多个数据源,数据应带有进入系统的时间戳并能自动选择最新的行情数据。5第三方系统接口策略交易平台需要与交易系统、行情系统、黑盒策略等第三方系统配合来提供不同的策略交易服务,满足多样化的策略交易需求。策略交易平台的第三方系统接口应该具备标准化、击兕范化和二次开发的能力。上线时应当提供相关接口,连通证券公司现有交易系统和行情系统,同时也要支持常见第三方黑盒交易和金融工程研究系统(如SAS、Matlab、VBA、天软金融工程平台、铭创资产管理系统等)的接入。在上述接口之外,应该提供二次接口开发包和相关新接口的丌发服务,为了后续拓展提供支持。 万方数据基于CEP技术的量化交易系统构建第二章量化交易、F台相关理论和方法2.2CEP技术平台介绍CEP(ComplexEventProcessing)是一种基于内存计算的面向数据流的实时数据分析技术,主要用于高速的复杂数据模式识别,在国外并广泛应用月资本市场的量化交易和风险控制领域。目前主流的CEP技术平台有多个,我们评估认为,ProgressApama是适合用来构建中国资本市场的量化交易平台,该产品采用模块化及可扩展性的设计,其核心功能可概括如下:·监控由消息传输基础设施或者某种引用数据传输进入的事件。·分析该类事件,可单一事件分析,或者针对有共性与或有连续事件综合分析。·依据分析,采取应对行动,如触发下单指令事件。“Tic“k1S“t08res‘;蒋TC吼E)陇qm图2-1ApamaCEP技术平台传统的“存储一索引一查询”数据架构模型要求索引必须根据新来数据不断更新。每秒钟高达数万次的数据处理速率会产生大量的运算成本。Apama⑧架构颠覆这种传统模式的架构,索引“查询”,而不是“数据”。如今有了Apama@,输入的数据无需更新索引便可立即检索,并随后进行高性能分析。实质上在Apama⑧内部是事件“查找”查询,因此极大幅的降低了运算成本和缩短了时间延迟。在Apama@内的查询被界定在“监控器”内,并且在高性能引擎中内执行,除了事件“引擎”之外,Apama@结构还包含:·实时的图表型仪表盘以监控及同应用软件交互。·一种集成框架以集成Apama@于事件处理环境、数据库和现有应用环境。·一种既兼顾商业用户又考虑传统开发员的集成开发环境。·一套全面的多语言的应用程序界面(APIs)。lO攀一一一 万方数据基于CEP技术的量化交易系统构建第二章量化交易iF台相关理论和方法·可监控包括延迟性测量的系统性健康监控能力。Apama@率先应用于商业CEP,并相应地成为使用最广、实践时间最长的方案。值得一提的是,作为CEP在资本市场上应用的先行者,几乎通用于所有资产类别(股票、固定收益、外汇、商品以及这类资产的衍生品)和市场参与者(买方、卖方、交易所、监管机构以及其他机构等)。黼arketpresence———————翼’●●i。-‘●图22CEP平台魔力四象限受益于其多年的经验和对资本市场的专注,Apama@已经开发及培育出大量其他CEP引擎企业无法比及的技术资产。这些资产包括CapitalMarketFoundation,提供大量的模块以运行通用计算及服务平台,满足Progress@庞大客户群中绝大多客户的需求(如行情数据管理、头寸和PAL计算、风险控制)。2.3资本市场基础服务ProgressApama资本市场基础服务(CMF)由一系列在ProgressApama复杂事件处理(CEP)平台上创建资本市场应用程序而建立的基础组件和服务服务组成。CMF的首要目标是为资本市场量化交易的策略开发人员提供强有力的策略丌发基础,使其能够集中精力创建自有的交易策略,而不是将精力浪费在构建和测试公共组件上。 万方数据基于CEP技术的量化交易系统构建第二章量化交易·F台相关理论和方法SolutionAccelerators(e.g.AlgorithmicTradingAccelerator,FXAggregation..}I鲨篷鋈錾鎏i鬃溱豢鬻豢鬻i鬻鬻ll鋈黉鬻蕤豢豢豢i鏊鬻瀵蒸攀鬻蕤戮蕤黍鋈图2—3资本市场基础服务CMF组件及服务分为三种功能群:基础设施组件及服务提供CMF应用软件框架及各种使用功能。这些组件及服务并非针对具体的资本市场应用策略。分析组件及服务包括全部有关行情数据处理以及其他分析方法,例如仓位跟踪和拓展性数学功能。订单管理组件及服务涵盖全部相关的订单处理及风险防护功能。 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计量化交易系统的系统建设目标是为某证券公司内部部门(自营、资管)和高端客户(机构客户、私募基金、QFII和高净值人士)提供完整的策略开发、回测和运行管理的统一环境。3.1需求分析量化交易平台包括策略开发、策略运行管理与回测评估(提供管理功能,支持权限管理、版本管理、运行监控等,提供策略回测和评估的客户端)、行情资讯(Level1、Level2等)第三方系统接口(大集中、网上交易、资管、QFII)等功能。i—j时系统提供二次开发的功能,方便根据业务需求,在现有系统基础上拓展功能。3.1.1策略研发需求策略研发是量化交易平台的重要组成功能,决定了策略交易的效率和实用性。研发系统应该包括对策略、指标、信号等基本元素的支持,同时应当具备主流开发工具的特性基础开发库的支持。除了功能上的完备,还需要具有完善的图形化策略开发、图形分析展示等可视化技术分析的开发能力。主要包括如下几个方面:策略、指标、信号支持平台提供完整的程序化交易、算法交易支持。同时能够调用子策略、指标,接收和发送预定和自定义信号。指标是定制的技术分析库,除了能在策略中引用不同指标,指标应与图形分析工具和报告等功能集成。信号(事件)提供信息交互功能,实现对市场交易机会、特殊事件等的交互。信号应该支持第三方接口,支持内部和外部的订阅推送。策略开发语言开发语言应当在保证执行效率的同时,具备脚本语言的简洁性,方便非IT人员学习和开发,方便撰写适用于金融市场的业务逻辑。同时应该内置支持金融交易相关的数据类型,例如行情数据等。此外,对行情、交易、资金等应该提供相关的基础操作库支持或内置功能支持。策略开发工具开发工具,需要具备主流EclipseIDE的基本功能,包括解决方案式工程类型、代码自动完成、语法高亮、语法错误检测、本地调试(回测)、版本管 万方数据基于CEP技术的量化交易系统构建第三章iF台需求分析和高层设计理、外部策略和指标引用等、策略提交等功能。提供图形化的界面开发工具,实现固化流程的图形化开发、基础策略的代码自动生成,方便业务人员直接开发。刚时开发语言要具有与分析图表交互的能力,可以推送信号和数据到图表,并且可以支持指标叠加分析。策略开发库策略开发库包含如下资源:基础库、基础策略、预置策略、指标等。基础库包括行情、交易管理、仓位管理、市场扫描、时间函数、科学计算函数等。基础策略是包含相关公用基础功能的策略,应该包括开仓、平仓等。预置策略是一些常用的策略,满足客户的常见需求,如VWAP等。指标库是专门的技术分析库,作为技术分析的重要工具,在策略开发库中也应该作为基础的功能库提供,包括MACD、RSt、K叫等常见指标,同时要支持添加自定义指标。回测系统应该提供统一的回测模块,为所有策略提供回测服务。回测应为公用的模块,所有策略开发完成后可直接进行测试。此外还要支持跨市场、跨品种、数据频率和时间问隔以的测试。回测应支持数据回放速度控制。模拟委托应当支持目前主流的价格委托方式(收盘、均价、买卖等),同时应当支持针对不同的策略设置模拟的费率,并提供自定义参数设置和调整支持等。除了市场数据的回测模拟,还需要支持自定义事件流等进行事件响应模拟。回测的指标应支持指定任意周期(日、周、月、N月或任意指定的再平衡日序列)。回测界面除了可设置上述测试参数外,凹测的结果数据还要能保存在服务器和本地,支持服务端和本地的数据回放。策略报告策略报告是策略执行和回测相关数据生成的分析结果,应包含策略运行过程中的所有信息,按照统计结果和实际详细信息进行汇总和明细展示,包括但不限于资金、持仓、盈亏、交易明细、信号触发说明等。策略报告还需具有一定的分析优化功能,提供相关接口方便定制和第三方系统获取。3.1.2策略运行需求策略运行是策略执行和测试的平台。策略运行系统要具有高可用性、负载均衡和横向性能扩展能力,满足不同业务需求。策略运行系统包括策略执行、回测、报告、监控、交易管理、资源管理等功能。同时支持与相关业务系统无缝整合。14 万方数据基于CEP技术的量化交易系统构建第三章’f,台需求分析和高层设计执行策略执行功能是策略运行的基础功能,在保证策略高速执行的同时,也要保证策略执行的可控性,如支持通过设置策略运行优先级等调整策略运行占用的资源。此外,对于公共计算资源,例如基础计算、常用指标等要作为公共组件实现共享和管理提高效率,在同一个策略执行、F台上,每个时刻同一品种的相同指标应当只计算一次。同时策略执行应有相关安全机制,在出现异常情况下避免策略进行错误的操作。监控策略运行过程中的运行参数、状态、实时数据、信号、性能统计分析和系统资源等都需要进行监控并提供统一可定制的查询监控页面。策略运行中产生的日志需要进行统一管理。相关的数据需要提供对外访问接口,支持订阅推送信息。交易管理交易管理主要针对策略交易相关的功能进行管理。交易管理包括订单管理、持仓管理、资金管理、费用管理、交易统计分析和交易同志。所有交易相关的功能都需要提供对外接口,方便实时监控。策略评估客户端依托平台上述基础功能,给策略使用者提供一个进行策略评估测试的环境。客户根据自己的权限进行策略参数的调整,并可以启动停止修改相应的策略状态,满足证券公司在策略验证、运行、权限管理、监控的实际需要。3.1.3平台管理需求管理平台提供整个策略平台的统一权限控制和辅助管理功能,包括平台用户管理、策略管理以及操作日志等。同时应该提供安全通信和登陆认证,实现双因素认证、通信加密等。用户管理用户管理应该分为运维用户和普通用户两个体系,运维用户体系控制管理人员的平台管理权限,包括对所有监控对象的访问、控制权限。普通用户体系提供用户策略执行、策略升发、策略相关资源访问等业务操作权限的控制。普通用户体系应该支持分级管理,按照公司账户、操作员账户进行控制。公司账户可以管理操作员账户的策略开发、运行、访问权限。同时普通账户体系应该与交易系统的资金账户建立映射关系,能够对映射关系进行管理。策略管理策略管理应包括权限控制、版本控制、提交和发布审核、加密等功能。策 万方数据摹于CEP技术的量化交易系统构建第三章平台需求分析和高层发计略权限控制应该包括不同账户的对策略查看、修改、发布等控制。策略版本控制要维护策略的不同版本,按照版本对策略进行独立管理。策略审核功能应该提供对策略发布、修改的审核和留痕功能。操作日志平台所有的关键操作都应该保存日志并可以控制是否记录,与平台所有的日志(运行日志、交易日志等)实现统一的管理、备份,并提供相关的操作访问接口。3.1.4行情资讯需求量化交易平台需要支持高速实时行情(Level2)、历史行情,也需要支持资讯数据等外部数据源转化为内部事件。行情资讯不仅为策略运行、开发提供服务,也可以作为独立的数据服务提供给外部订阅者。系统要支持不同市场(证券、期货)、品种、频率的行情数据、资讯数据。行情数掘应支持多个数据源,数据应带有进入系统的时间戳并能自动选择最新的行情数据。行情系统主要分为如下两种。实时行情系统实时行情系统提供实时跨市场多品种的高频市场数据,内部策略开发、运行接口,同时可以作为实时行情提供给第三方系统。历史行情系统历史行情系统提供多市场、多品种、多频率的市场数据和分析数据提供策略运行、开发和回测接口,同时可以作为第三方历史数据源,如本地回测数据源。3.1.5第三方系统接口需求量化交易平台需要与交易系统、行情系统、黑盒策略等第三方系统配合来提供不同的策略交易服务,满足多样化的策略交易需求。量化交易平台的第三方系统接口应该具备标准化、规范化和二次开发的能力。上线时应当提供相关接口,连通证券公司现有交易系统和行情系统,同时也要支持常见第三方黑盒交易和金融工程研究系统(如Matlab、Quantlib、R、SAS等)的接入。在上述接口之外,应该提供二次接口开发包和相关新接口的开发服务,为了后续拓展提供支持。交易系统接口交易系统接口为量化交易平台提供交易功能支持,应当具有标准接口规范,支持国内现货、期货等多个市场和国际市场的接入能力。 万方数据基于CEP技术的量化交易系统构建第三章j『,.台需求分析和高层设汁交易系统接口应作为统一的交易通道接口,所有交易订单都通过此接口委托到不同的交易系统。接口应该具备对订单请求进行解包、路由的二次开发功能,方便证券公司白行开发交易系统接口。基于统一交易接口,支持证券公司现有的集中交易系统、网上交易、资管系统、期货交易系统、OFII交易系统等。同时要提供必要的新接口开发服务和二次开发功能,方便对接多市场多交易系统。交易接口需要与策略运行系统结合,支持交易通道状态、交易流量、通道功能控制等管理功能。黑盒策略接口针对黑盒策略应该提供标准接口,默认应该具备常见的第三方白行开发的策略交易系统接入(如Matlab、Quant]ib、R、SAS等)。通过上述策略执行平台和管理平台的标准接口,为第三方系统提供除了策略执行外的完整的策略交易服务(包括行情、信号、交易管理、权限等)。通用协议(FIX协议接口)系统提供标准的FIX接入服务,支持FIX协议的策略交易指令(FIX4.2、FIX4.4及后续的版本)。3.2平台架构设计基于对量化交易平台整理功能的把握和细致分析,决定对采用ITA(InformationTechnologyArchitecture)进行架构设计。●科学的架构描述体系基于ITA(InformationTechnologyArchitecture)的架构描述标准,有效降低沟通成本。●可扩展性原则架构设计中充分考虑系统可扩展性,包括系统的多核扩展、多机扩展的设计考虑。●安全性原则架构设计中充分考虑系统安全性,保证客户核心资产的充分保护,并保持成本和标准的、F衡。●合规性原则架构设计过程遵守客户业务规则和IT运维规则。3.2.1系统应用架构从应用角度上,可以把系统分为接口服务层、策略引擎层、基础服务层和最上层的应用服务层。 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计图3—1系统应用架构图应用服务层应用服务层是整个量化平台的应用实现,通过对应用服务层的不断扩展来满足量化交易平台不断变化的需求。项目建设的目标包含策略研发、策略运行、平台管理等多种服务。●策略研发开放的“白盒”开发平台,提供可视化的策略开发、调试、监控和管理环境,除本身自带“拖拉拽”的方式生成模型外(用户也可以用EPL语言手工编写),还可与多种建模工具对接(如:Matlab、QuantLib等)对接,使已有模型重用。生成的模型最终被编译为本机二进制代码,保证了大吞吐量和低时延。·策略运行实现策略的执行、回测、策略报告生成、策略监控、交易管理、资源管理等功能。支持策略的模拟测试和实盘测试两种方式,对模拟测试,直接转换历史数据为事件流,按照事件的时间,可视化回放,回放速度任意可调;对实盘测试,系统能够以当前的实时行情来测试策略。对实现策略的执行监控,执行监控的指标包括:CPU效率、数据流吞吐量和延迟监控、内存使用、数据流的接收和处理数量等。生成的策略报告中包含订单、信号、盈亏、交易成本、冲击成本等,可以通过页面查看,也支持导出为常见格式,如PDF、EXCEL等。在交易管理中,可对括订单、持仓、资金、交易通道、费用等进行配置控制,提供交易统计分析、交易日志查看、交易盈亏控制等功能。·平台管理 万方数据基于CEP技术的量化交易系统构建第三章、『台需求分析和高层设计对系统用户分级分层次进行授权和访问管理,支持集中交易账户与系统账户的映射管理。支持策略权限控制和审核,支持策略加密。可对策略进行版本管理。可以与某证券公司现有风控系统对接。对系统关键操作、事件记录并提供日志访问和管理接口。●行情咨洵对实时行情支持跨市场多品种高频市场行情数据广播、支持作为外部行情源。对历史行情支持跨市场多品种高频市场行情数据订阅、支持作为外部行情源。可以接入第三方的结构化和非结构化数据。基础服务层基础服务层运行着一些“原子”的基础组件,这些组件按照一定的业务逻辑组合并稍作扩展,就可形成应用服务层的应用,如:算法交易、订单管理、套利交易、组合交易等。本节就重点组件介绍如F:●订单管理和传统的委托单状态管理不同,量化交易的委托单状态管理子系统(OrderManagementSub—system)在管理的范围和状态变更通知机制上有很大不同:1.管理的范围。传统的委托单状态管理由柜台系统管理,通常管理从柜台接收到委托指令开始,到委托指令离开交易所结束。但是量化交易的OMS管理的范围,从策略开始生成委托单开始,经过风险控制(firewall),到经过柜台系统,交易所处理,以及被处理后,调整后重新委托,经过多次循环直到策略要求的交易结束的整个过程。2.通知变更的机制不同。传统的委托单状态管理通常采用查询指令来主动查询委托单不断变化的状态,通常情况下查询的频率不高,并不会根据委托单状态的变更做大量的调整。而量化交易平台因为要支撑大量高并发用户,这些用户使用的策略往往需要根据委托单状态做出开始的调整,如果使用查询机制,柜台系统的压力会非常大,效率会大幅下降,可能会导致滑价,甚至是策略的失效,所以,量化交易系统的OMS不能采用查询机制,而需要采用推送机制。和投资机构相比,券商的量化交易平台需要满足众多不同类型客户的多种多样的需求,能够快速实现、修『F和回测验证是最基本和最重要的需求之一。量化交易的类型很多,其中绝大多数都包含交易功能。和传统的交易客户端的交易功能不同,量化交易的交易功能需要根据委托单的状态的不断调整委托单来保证按照算法设计预期进行快速的成交,那么委托单的状态管理就成为其中的关键问题。从海外量化交易系统建设的经验上,委托单的状态管理作为量化交易系统的基础服务进行设计和封装。 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计●交易路由服务接收策略交易引擎发送过米的订单信息,将这些信息发送到相应的交易通道,最终送达指定的交易所,实现订单传输的多路由支持,通道负载均衡,流量控制等功能,消除交易通道的单点故障。·成交回报服务从交易柜台获取成交回报数据,主动推送给交易策略引擎和订阅成交回报服务的高层业务系统。●头寸服务包含账户管理和头寸管理,保持与交易柜台之间的同步和通讯,进行交易账户的头寸控制,在头寸异常时采取主动预警,禁止交易等措施。·策略管理实现策略的加载、运行、监控、回测,能够根据用户身份进行严格的策略执行权限控制。●虚拟交易所支持沪深市场不I—J品种分别T十l和T+O交易等方式的虚拟撮合,可以在对历史数据快速回溯计算时使用,而且也接真实行情每天试运行情况下提供快速可配置的撮合功能。撮合方式能够实现概率成交、价量成交、延迟成交、部分成交等多种成交模式。其中价量成交中支持以“不超过委托相反方向盘口二个档位内的价格全部成交”的撮合规则。提供开放的模拟成交接口,可以白行开发模拟成交策略进行测试。●对账服务将策略交易平台的成交记录与日终柜台成交数据进行对账,以柜台成交数据为准进行对账处理。·交易查询服务提供资金、股票、账户、委托、成交、撤单等全方位的委托查询服务。·行情服务用于接入上交所、深交所DBF行情数据、上交所Level2行情数据、钱龙行情,上期行情、高频历史行情数据以及其它行情数据(如:海外市场、外汇等)。提供历史行情数据的接入服务。·资讯服务提供财务、股本、行业数据、宏观数据的数据接入服务,包括结构化数据和非结构化数据的接入服务。·分析函数库20 万方数据基于CEP技术的量化交易系统构建第三章、卜台需求分析和高层设计提供常见的技术指标分析、科学计算函数、日期函数,提供开放的函数库接口,并提供专业分析函数库的集成,比如Matlab、Quantlib、R,同时,用户可根据自身需要灵活自定义函数指标。●日志管理在系统各个环节记录业务处理记录,通过统一的日志管理系统对外部提供系统日志查询服务。策略引擎层策略引擎层包含具体的交易策略和算法,包括主动型算法、被动型算法,还包括其它业务模型。用户可以白定义任意多的模型或交易算法。算法服务层的模型或算法和应用服务层的应用是低耦合的,从而保证了策略的独立性和可扩展性,并且可以不断优化算法。用户可以白定义任意数量的算法。接口服务层接口服务层实现核心策略系统与外围系统的IO处理,使用基于高性能的ApamaIAF技术,具备对订单请求进行解包、路由策略开发的支撑功能,能够实现高吞吐量和低时延数据传输能力,特别适合于算法交易这样的高性能处理系统,是整个系统实时分析处理的坚实基础。·FIX协议接口采用平台提供的FIX协议的适配器,能够连同所有基于FIX4.2.2以上标准的的资本市场接口,达到i00多种,其中大多数接口都使用基于FIX协议进行灵活配置的。APMAA的FIX接口通过配置后,可以直连任何遵守FIX的订单执行柜台或者报价目的地。·系统接出服务策略交易系统交易后的数据可通过系统接出服务导出到其它后台系统,如:会计系统、风险控制系统、数据中心等。 万方数据基十CEP技术的量化交易系统构建第三章,r台需求分析和高层设汁3.2.2系统逻辑架构图3—2系统逻辑架构图如图3—2所示,系统逻辑上可以划分为如下几个部分:策略交易CEP平台这部分为系统的核心功能,由ProgressApama复杂事件处理引擎来提供整个量化交易平台所需的事件驱动型高性能分析和运算。策略管理包括策略的上传、策略审批、策略发布、策略启动、策略停止等功能。业务服务平台业务服务层包含两部分,一部分是CEP网关(后台进程),完成业务逻辑和CEP交互;另外一部分是浏览器/服务器模式的应用,展示策略前端使用界面。3.2.3系统技术架构整个量化交易平台包含很多相对独立的子系统,他们在具体的技术实现上采用的技术架构有较大的不同。策略运行和回测环境采用CEP平台技术、周边系统接IZl基于IAF技术框架,而平台管理采用J2EE架构实现,本文不再赘述J2EE技术架构。 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计图3—3系统技术架构图Apama引擎提供一个快速、灵活的分析基础架构实现高效实时分析应用,为了可以有效、高效地提交连续性智能,Apama引擎层具备如下能力:●提供持续、“实时”分析结果·产生可扩展的动态实时分析·在不同处理速度下灵活提交分析信息·为全面语境、精确度提供深层次的信息·能够驱动即时建议和行动·提供访问实时信息的简易途径·支持快速、灵活的分析开发过程·支持负载均衡技术为了分析处理外部发生的实时事件,Apama引入了集成适配器框架(IntegrationAdapterFramework,以下简称IAF)。使用IAF框架可以非常简单地创建适配器来进行Apama与消息总线或其他信息源的集成。使用IAF创建的适配器可以和外部的消息系统进行通讯,解析一些格式化的消息,并且非常灵活地将它们转换成Apama的事件。所有不同的消息源接收的事件都会通过IAF转换成统一的内部格式,这就使得Apama可以在内部将各种外部信息源的事件进行关联和处理。基于IAF开发的适配器支持双向的事件信息通讯。除了可以接收不同外部信息源产生的事件并且进行格式化来支持Correlator进行统一处理,IAF也可 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计以接收ApamaCorrelator产生的事件并转换成外部系统所支持的特定的格式(例如,消息服务总线或者交易所可以识别的订单)。Apama适配器是支持Apama触发外部系统操作的关键机制一将Apama内部的事件转换成外系统可以识别的特定格式并发送到外部系统。与外部系统将消息封装成标将消息转换成双向通讯准格式蠡瞻瓯g滓件事件翔影外部系统动态热载秘卸鬣动态蟹改图3—4IAF架构图如图3—4所示,ApamaIAF框架包含了三个主要的组件。·Transport层:直接与外部的消息源或外部系统进行通讯。它的功能通过Apama提供的或者客户自己实现的Trasport层Plug—in来实现。编程语言可以是C,C++或者Java.●Codec层:将Transport层接收的外部消息转换成标准的格式,或者将ApamaCorrelator发送过来的事件转换成外部系统的特定格式。Codec层由Apama提供或者客户自己实现。编程语言可以是C,C++或者Java.·SemanticMapper层:使用XML配置文件中定义的一组映射规则,将Codec层产生的标准化格式的消息转换成Apama事件,或者将ApamaCorrelator发送出来的事件转换成Codec层可以识别的标准格式。IAF提供了高度可配置和方便维护的接口和消息/事件的映射关系配置。使用IAF创建的适配器可以随时重新配置和升级而不需重新启动。IAF的动态插件加载机制可以使用户非常方便的定制与特定外部系统的通讯方式。IAF框架将语义映射(SemanticMapper)层和Transport层分离,这就赋予了Apama相当大的灵活性。同一个Transport层与外部系统的连接可以有不同24 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计的应用。一旦Transport层与一个外部的消息源/系统建立了连接,这个连接可以支持在其之上构建各种应用。IAF是一种基于服务器的运行时服务,所有基于IAF开发的适配器都会在运行时被IAF调用。一个IAF进程可以支持一个或多个IAF开发的适配器。IAF可以和Correlator部署在同一台服务器上也可以部署在不同的服务器上。此外,IAF也可以在多台服务器上同时运行。3.2.4系统拓扑结构图3—5系统拓扑图本系统建设之后,可以支持策略交易的平台接口标准化,以及对外服务和对内研发、运维、管理等业务应用。系统的生产环境部署有5个物理服务器,分别是Web应用服务器、策略交易核心服务器、接口服务器、应用数据库服务器、以及策略交易核心服务器测试。其中,接口服务器的服务模块基于APAMA的标准接口框架IAF实现,从而满足FIX协议、多协议外部统~接入需求。3.2.5系统安全设计系统的安全设计覆盖三个方面,算法安全性、数据安全和访问控制安全3个层次。 万方数据基于CEP技术的量化交易系统构建第三章平台需求分析和高层设计算法安全性保证算法是券商的核心资产,以使用本平台实现的算法需要进行合理有效的安全保护。系统通过物理隔离和加密技术来保证算法安全。物理隔离,把不同等级用户的重要算法,通过不同的操作系统帐号或者虚拟化平台进行隔离,其他人员不能访问算法所在的虚拟主机或者没有系统权限访问对应的帐号,从而借助操作系统安全和防火墙来保证算法安全。系统后续建设可以考虑物理主机和网络的分离。加密技术针对有服务器和目录访问权限的用户的安全控制。本系统采用加密技术,算法设计人员完成算法设计后,此后该算法无法被作为正常的算法文件打开和阅读,但是可以被平台引擎iiF确地识别、解析和运行。数据安全保证敏感的落地数据如用户密码等信息不保存明文,采用不可逆算法加密保存。访问安全控制访问安全控制是系统管理中用户管理的一部分。使用基于角色的用户管理体系来保证系统管理的安全性。●角色前端应用软件提供的应用权限的安全控制体系是按照角色进行控制的,系统提供一个初始化的角色,系统管理员可以通过这个角色来初始化登陆添加用户或角色。●用户前端应用软件的应用权限中的用户都对应于各个角色中,权限通过组来限制。用户通过组来获得各种权限。只有系统管理员才‘可以建立新的用户,并且将用户加入到相应的角色中。用户登陆系统时只需要输入用户名和密码,而不需要输入或选择对应的角色名称,系统将自动将用户向他所属的角色进行匹配,如果这个用户属于多个角色,则这个用户将自动获得多个角色的权限。●权限权限类型:查看(可查看数据),编辑(可补录数据),完全控制(可查看、补录、删除数据)。在管理工具中,可将各种访问权限赋予各个角色,通过角色来完成用户权限的限制。 万方数据基于CEP技术的量化交易系统构建第Uq章量化交易、卜台详细设计与实现第四章量化交易平台详细设计与实现根据架构设计的系统划分,本章对策略开发和评估环境、策略运行环境、周边系统接口、策略管理以及业务服务平台部分进行详细的设计和实现。4.1策略开发与评估环境量化交易系统的评估环境是量化交易平台的重要组成部分。评估环境与生产环境是独立的。在评估环境下,通过强大的策略研发工具,为策略开发人员提供集成化的策略开发环境,包括易用的图形拖拽策略丌发器、策略基础库、虚拟交易所、高速的回测机制、自定义的策略回测报告等内容。4.1.1策略开发语言和开发环境策略开发语言采用EPL(EventProcessingLanguage)。这种基于事件的语言功能(EPL)提供了一个简洁而功能强大的机制,可以定义极为复杂的算法。EPL也可以与标准的Java一起使用,提供了最大的应用灵活性。EPL支持策略的嵌套调用,在策略中可以调用系统内置的指标,指标库町以由用户自行扩展。系统通讯基于Event的事件(信号)处理模式,Event是策略之间以及Apama与外部Adapter通讯的桥梁。通过Event,系统可以接入外部数据或信号,也可以将Apama内部的处理结果发送给外部。行情、订单、成交、资金信息、外部资讯、系统运行状态、日志等等都可以为Event,因此通过自定义Event,系统处理的策略可以随业务类型的不断扩展,策略不只限于量化交易,还可以扩展到风险控制、订单路由、资源控制等各个业务。策略开发工具采用可在ApamaStudio综合开发环境。该开发环境构建在开源IDE工具Eclipse之上,可以以项目的方式同时创建、开发多个策略解决方案。ApamaStudio具有代码自动完成、语法高亮、语法错误检测等特性,能够大幅度提高开策略发效率。更加方便的是,ApamaStudio提供了断点和单步调试功能,能够在策略编写过程中的迅速定位错误,进行调试。对于内部内的软件开发人员,ApamaStudi0提供了Deve]oper的视图,可以直接访问策略引擎。EPI。开发的策略可以与Apama的Dashboard无缝集成,将策略执行过程中的重要信息推送到展示界面,实现图形化展示。Apama中可以直接进行Dashboard的丌发,Dashboard中提供了70余种图表和界面控件,可以以拖拉的方式直接进行所见即所得式的界面开发,即使是非IT人员也可以快速实现自 万方数据基于CEP技术的量化交易系统构建第四章量化交易平台详细设计与实现定义的包含诸如蜡烛图、折线图、饼图、雷达图等图表的展示界面。在展示界面中可以进行多指标叠加分析。该环境以独特的方式,支持业务用户和I,f用户的应用。对于业务用户来说,EventModeler提供了图形化的开发环境,交易人员或金融工程师可以使用它来开发和部署算法策略。通过点击界面,可以实现完整的交易脚本的规范制定,其中包括启动交易的条件,这样可以将开发周期从数月、几周减少到几天,甚至几小时。ApamaStudio内还囊括了SmartB]ocks。SmartBlocks是预装组件,例如封装交易分析、订单管理功能和集成业务,从而很容易将它们整合到不同应用中。SmartBlocks中u丁以“原封不动”地被插入到系统中,或对其进行修改,以满足新要求。开发人员还可以使用创建自己的SmartBlocks。ApamaStudio中还可以进行业务集成,实现策略回测、策略提交等业务功能。4.2策略运行环境系统的核心是策略运行环境。策略交易核心引擎具有高可用性、负载均衡和横向性能扩展能力,满足不同业务需求。在交易引擎之上,系统构建了策略执行、策略运行监控、交易管理等功能。可以与大集中、网上交易系统、资产管理系统、QFII等外围系统实现规范整合。由于策略核心引擎强大的处理能力,可以保证策略的高速、正确执行。系统中的公芡计算资源如基础计算、常用指标等以公共组件的形式存在,可为不同的策略共享。各策略中引用相同参数的指标只有一个实例运行,当指标值改变时以Event的方式推送,所有订阅该指标的策略都会立即收到。系统中的策略执行可以实现QOs,当策略触发交易条件时,可以按用户级别实现下单的先后优先级处理。系统中内建交易风控功能,按照预先设置的风控策略对策略执行进行检查。当出现价格延迟过大、仓位资金异常等异常情况时,可以执行预定的步骤,保证策略执行的正确性。4.2.1高可用运行环境策略交易核心引擎具有高可用性、负载均衡和横向性能扩展能力,满足不同业务需求。在Apama交易引擎之上,系统构建了策略执行、策略回测、策略监控、交易管理等功能。可以与大集中、网上交易软件、资产管理、QFII等外围系统无缝整合。策略运行引擎可以实现双活或者多活的热备,其热备特点是: 万方数据基于CEP技术的量化交易系统构建第四章量化交易平台详细设计与实现l-完全依赖于CEP平台自身提供的机制来进行主点失败检测,自动切换到备点,不需要第三方的检测工具。2.切换时问非常迅速,根据配置不同,可以实现最快3秒之内切换到备点。完全实现了热备份,所有的状态信息都不会丢失。3.可以实现多平台互备。4.根据CEP平台启动的时间长短来确定主备点,当原主点失败恢复后,不需要切换回去。4.2.2策略运行监控策略运行的重要信息以事件(Event)的方式传递到统一的监控平台,可监控的信息包含策略运行过程中的运行参数、状态、实时数据、信号、策略涉及的子策略、公共指标、性能统计分析和系统硬件资源等。因为采用了异步传输机制,监控信息的传输不会影响到策略本身的执行效率。监控平台以图表、图形的方式展示策略运行状态。策略运行中产生的日志采用异步的方式记录到数据库中,通过日志查询界面进行展示。系统对外提供获取监控信息和系统口志的访问接口,第三方系统可通过接口获取相关信息,也可以订阅相关事件,数据发布服务可按订阅情况进行消息的主动推送。4.3CEP周边系统接口算法交易平台需要与交易系统、行情系统、金融数学函数库等周边系统配合,满足多样化的量化交易需求。4.3.1交易类系统接口交易系统接口为算法交易平台的生产环境提供交易功能支持,具有标准接口规范,通过AGC集中交易系统支持国内沪深两市的现货,通过上期平台支持国内期货和金融期货。算法交易平台的评估环境不接入交易系统接口。在灾备设计方面,系统内部实现多路交易系统切换和主备机制,消除了算法服务器引起的单点故障。主备交易服务之间通过心跳机制来实现互相切换,当各用服务连续5次(可以配置)收不到主用服务的心跳回包时就切换至1作状态。当备用交易服务启动工作的时候,需要向CEP平台获取当前用户信息进行用户登录操作。当29 万方数据基于CEP技术的量化交易系统构建第四章量化交易、卜台详细设计与实现所有用户都登录成功后,再向CEP平台获取所有未结束的委托单信息并启动查询成交回报线程。同时可以接收新的业务处理。系统基于统一交易接口,支持某证券公刮现有的柜台系统、上期技术期货交易系统等交易系统。同时交易系统接口支持配置化,方便以后的接口扩展和升级。图4-1交易接口与策略运行系统结合,控制等管理功能。AGC适配器主各交易服务支持交易通道状态、交易流量、通道功能集中交易系统适配器,完成对于沪深两市证券市场的委托指令、撤单指令和资金余额查询、回报查询,以及其他的对应指令封装。其中委托、撤单等指令为同步处理,回报采用异步独立线程轮洵机制。上期技术综合交易平台商品期货和金融期货交易系统适配器,完成对国内期货市场的委托指令、撤单指令和资金余额查询、回报查询,以及其他的对应指令封装。其中委托、撤单等指令为同步处理,回报采用异步独立线程轮询机制。4.3.2行情类系统接口行情接口支持股票、期货等多市场实时行情(包括交易所和主流第三方供应商的数据)和外部市场数据源。针对凹测环境,支持标准数据库接n,提供对海量高频历史行情的数据的回测支持。接口以标准接口形式提供,支持作为独立行情源为平台内部和外部订阅者提供行情数据服务和研究数据服务。系统内部实现多路行情源切换和主备机制,消除单点故障。 万方数据基于CEP技术的量化交易系统构建第四章量化交易平台详细设计与实现4.3.3行业标准数学系统接口量化交易平台需要提供标准Plug—in接口规范,允许常见金融工程工具(如Matlab、Quantlib、R等)的接入。在上述接口之外,应该提供二次接口开发包和相关新接口的开发规范,为了后续拓展,如SAS、TinySoft提供支持,满足多样化的策略交易需求。4.4策略管理≮乏Id。箩@j<
此文档下载收益归作者所有