期货程序化交易策略研发

上传人:仙*** 文档编号:46350598 上传时间:2021-12-12 格式:DOC 页数:49 大小:1.34MB
返回 下载 相关 举报
期货程序化交易策略研发_第1页
第1页 / 共49页
期货程序化交易策略研发_第2页
第2页 / 共49页
期货程序化交易策略研发_第3页
第3页 / 共49页
点击查看更多>>
资源描述
期货程序化交易策略研发 浙江大学硕士学位论文 摘要摘要期货程序化交易起源于欧美国家,随着计算机技术的发展,程序化交易得到了快速的发展。程序化交易主要通过阿拉法模型、交易成本模型和风险控制模型三个模型构成,通过对历史数据的分析寻找阿拉法策略,通过多策略组合实现能够收益稳定回撤可控的程序化策略组。本文主要是通过对程序化交易各个环节的特点进行剖析,实现通过数量模型就能稳定盈利的方法。关键词:阿拉法模型,交易成本模型,风险控制模型,数据,多策略组合i浙江大学硕士学位论文 AbstractAbstractFutures program trading originated in Europe and the United States, with the development of computer technology, program trading has been rapid development. Program trading is mainly constituted by alpha model, transaction cost model and risk control model of three model, by finding the Alpha strategy for the analysis of historical data, the combination of strategies can yield stable retracement controllable program strategy group. This paper is mainly through the analysis of characteristics of every part of the transaction on the program, through the method of quantitative model can stable profit.Key Words:Alpha model, Transaction cost model, Risk control model, Data, Multiple strategies ii浙江大学硕士学位论文 目录目录摘要iAbstractii图目录IV第1章 绪论11.1 课题背景11.2 国内外状况11.2.1 程序化交易的国外发展状况11.2.2 程序化交易的国内发展状况21.3 程序化交易特点21.3.1 程序化交易的优点21.3.2 程序化交易的缺点:31.4 本课题研究的目标41.5 本章小结4第2章 交易平台与关键研发技术52.1 程序化交易平台52.2 交易开拓者交易平台52.3 MATLAB2012B介绍72.4 相关策略技术现状8第3章 需求分析93.1 策略功能需求分析93.2 性能需求11第4章 策略详细设计124.1 策略开发流程图124.2 阿拉法模块介绍124.2.1 理论驱动型134.2.2 数据驱动型144.3 交易成本模块介绍144.4 风险控制模型介绍154.4.1 控制风险的类型15数据的重要性154.5 技术分析技术174.5.1 日本蜡烛图174.5.2 日本蜡烛图的画法174.5.3 日本蜡烛图的形态174.5.4 代码编辑蜡烛图194.6 技术指标194.6.1 技术指标概述194.6.2 技术指标分类194.7 阻力位和支撑位214.8 本章小结22第5章 程序化交易策略实现235.1 日内交易策略DRT255.1.1 策略开发流程图255.1.2 策略介绍255.1.3 策略测试结果265.2 日内交易策略DRT(加仓)295.2.1 策略开发流程图295.2.2 策略介绍295.2.3 策略测试结果305.3 日内交易策略R_Breaker325.3.1 策略开发流程图335.3.2 策略测试结果345.4 基本面策略开盘后一分钟交易策略365.4.1 策略思想365.4.2 策略开发流程图365.5 统计套利策略375.5.1 统计套利的定义385.5.2 统计套利的思路385.5.3 统计套利风控395.5.4 统计套利策略395.6 本章小结39第6章 程序化交易展望416.1 CTA416.1.1 CTA概述416.1.2 CTA策略416.2 投资组合的分散化426.3 异构策略426.3.1 同构策略436.3.2 交易时间框架436.4 策略的系统测试436.5 本章小结44参考文献45作者简历47致谢48III浙江大学硕士学位论文 表目录图目录图 3.1 程序化交易策略功能结构图10图 4.1交易策略流程图12图 4.2实体长线18图 4.3长影线18图 4.4 Boll通道20图 4.5 MACD21图 5.1 DRT流程图25图 5.2 DRT交易策略测试结果26图 5.3 DRT收益曲线27图 5.4 DRT(加仓)流程图28图 5.5 DRT(加仓)交易策略29图 5.6 DRT(加仓)收益曲线30图 5.7原理图31图 5.8 R_Breaker流程图32图 5.9 R_Breaker策略图33图 5.10 R_Breaker收益曲线34图 5.11 1minVol交易36图 5.12统计套利37图 6.1投资策略分散化40表目录表 2.1 数据类型6表 5.1仿真交易结果表27表 5.2仿真交易结果表30V浙江大学硕士学位论文第1章 绪论第1章 绪论1.1 课题背景程序化交易系统是指设计人员将交易策略的逻辑与参数在电脑程序运算后,并将交易策略系统化。当趋势确立时,系统发出多空讯号锁定市场中的价量模式,并且有效掌握价格变化的趋势,让投资人不论在上涨或下跌的市场行情中,都能轻松抓住趋势波段,进而赚取波段获利。程序化交易的操作方式不求绩效第一、不求赚取夸张利润,只求长期稳健的获利,在市场中成长并达到财富累积的复利效果。经过长时期操作,年获利率可保持在一定水准之上。程序化交易系统的构成就是:极其开放模型(策略)的设计、风险动态管理技术、误差矫正反馈检验准确率、快捷的下单速度。这四项组成了整个程序化交易系统。1.2 国内外状况1.2.1 程序化交易的国外发展状况20世纪90年代以及2000年以后资本市场以及金融衍生品市场的长足发展,在87年股灾中被指为罪魁祸首的程序化交易,终于被历史肯定了它的价值,人们终于也像当时从认为股票和期货为洪水猛兽到接受它们并发挥它们的经济作用一样,开始逐步的走进了程序化交易的世界、量化投资的世界。量化投资及程序化交易大师西蒙斯默默无闻的在十几年间大量使用量化系统的交易方法,取得了比巴菲特、索罗斯等市场传奇更高的年收益率。在这漫长的岁月中,程序化交易一直悄无声息的为投资者不停的赚进大把的钞票,也在润物无声的在为各交易所的交易量做着贡献。据统计欧美市场中有70%的交易是由程序化交易完成的,如果将程序化交易的概念再定义的宽泛一些的话,可能这个比例会更高。而在亚洲台湾、韩国来看的话,程序化交易量占比在50%左右。从另外的角度,国外的期货CTA也就是期货的资产管理业务,交易量的70%左右都是由程序化交易来实现。1.2.2 程序化交易的国内发展状况国内证券市场只有20年的历史,相比欧美以及亚太其他发达地区市场成熟度还有很大差距,不仅如此,国内市场的一些特性也使程序化交易在国内发展受到限制。首先,国内的交易场所比较单一,股票只在交易所进行交易。而国外的情况则是大量的流动性存在于交易所以外,比如大大小小的暗池、ECN等。即使同一只股票也会在多个交易所交易,目前NYSE股票只有25%左右的交易量是通过NYSE执行的。国外很多执行算法就是为这种条件量身定做的,比如各种智能路由算法,而在国内这些算法都没了用武之地。其次,国内市场的T+1交割制度使得大量日内交易策略不能得以实施,高频交易策略更是无从谈起。除此以外,股票市场不允许卖空、缺乏做市商制度、可供交易的产品简单、交易指令不够完善等,都不利于程序化交易策略的开展。尽管如此,程序化交易在国内的发展前景依然良好。自2010年4月沪深300股指期货被正式推出以来,大量的程序化套利策略纷纷出炉并创造出惊人的交易量。在国内的期货交易所主要有大连期货交易所,郑州期货交易所,上海期货交易所和中金交易所。中金所主要以金融期货为主,包括已经上市的股指期货和即将上市的国债期货两个品种,其他三个交易所交易的是商品期货,包括农产品如豆粕、豆油、棉花、白糖等,化工产品如天胶、强塑、PTA、甲醇等,金属产品如铜、螺纹、黄金、白银等。以交易量来看,中金所的股指期货虽然只有一个品种,交易量已经占到了所有期货产品的60%左右,如果国债期货推出以后,中金所的交易量能超过交易量总额的85%以上,而且这两种金融属性的期货产品很适合使用程序化交易进行包括套利,趋势和高频等策略进行交易。1.3 程序化交易特点1.3.1 程序化交易的优点1、 客服弱点使用程序化交易可以在交易过程中可以克服人性的弱点,这是程序化交易最大的优点,也是我们喜爱程序化交易的最主要原因,人是有人性的弱点的,人的情绪化因素,贪婪,恐惧,做事不果断,赌性等等因素都会让一个人在正在交易的时刻突然改变原有的计划,而这种行为是不断重复发生的。就如德国的哲学家心理学家叔本华说过:一个人在相同的时间和环境条件下会犯同样的错误,是不可避免的,这就是人的劣根性。我们和市场做交易,还不如说我们是不断的和自已的心魔做斗争。而程序化交易是一切功课在事先,电脑是不折不扣的执行者,应当说几乎百分之百的做到知行合一.这样也让人从盘面的辛劳中解脱出来。2、突破极限使用程序化交易可以突破人的生理极限.我们都知道人的反应速度是有限的。我们交易从大脑所想到手动需要一段时间来完成,而电脑程序交易显然比人工快的多,特别是当我们为了分散风险而进行多品种组合时,人的能力是有限的,例如选择品种多一点更能降低交易风险,在同时持有四个以上的商品品种,当行情激烈多品种同时发生交易信号时,那一个人的行为是顾及不了的,但电脑可以轻松完成.程序化交易可以让你远离期货,享受生活。1.3.2 程序化交易的缺点:1、不能表达全部的交易思想只有系统性交易者才能做到程序化交易,而其它另类的交易方法,没办法用程序化交易来完成,这就把一部分人挡在了门外。2、 巨大的回测风险有些程序化交易模型从长期看是盈利,但是短期内可能会出现巨幅的资金回撤。部分投资者对程序化交易认识比较模糊,认为程序化交易就是一台赚钱的机器。永远盈利。这些投资者在这种资金回撤下就可能难以继续进行程序化交易,从而错过后期出现的大幅盈利。3、容易加剧金融风险1987年美国股市暴跌的罪魁祸首一度被认定是期现市场的程序化交易。当时的情况是股票期货低于股票价格,指数套利者将买入期货并卖出股票,如果股票价格下跌的幅度远远不够,投资组合保险公司将卖出期货合约,造成期货市场新一轮的下跌,这导致指数套利者进一步卖出股票,从而形成自我强化抛售的下跌周期。不管1987的股灾是否是程序化交易造成,但是期间程序化交易至少起到了推波助澜的作用。国内股指期货一而再,再而三的推迟上市时间,监管部门或许也是处于这样的担忧。1.4 本课题研究的目标主要是通过交易开拓者平台进行程序化交易的策略开发,采用语法类似Pascal的TBL语言开发实现的。策略功能主要包括策略模型、资金管理、风险控制、交易成本管理等。通过交易所提供的实时数据进行交易,通过平台的数据库内的数据进行历史测试。文章首先简介涉及的相关技术与基本知识,然后阐述策略的功能,再具体分析策略各个模块的功能及具体实现方法。1.5 本章小结程序化交易伴随着计算机技术的发展,已经有30多年了,很多国外的大型资产管理机构通过使用程序化交易来控制巨额资金,同时交易全球的资本市场,取得了稳定的回报。4浙江大学硕士学位论文第2章交易平台与关键研发技术第2章 交易平台与关键研发技术2.1 程序化交易平台从广义上讲,量化交易是指投资者利用计算机技术、金融工程建模等手段将自己的金融操作用很明确的方式去定义和描述,用以协助投资者进行投资决策,并且严格按照所设定的规则去执行交易策略(买卖、价格、数量等)的交易方式。按照数学模型的理念和对计算机技术的利用方式,量化交易可以进一步细分为自动化交易(Automatic Trading)、量化投资(Quantitative Investment)、程序化交易(Program Trading)、算法交易(Algorithm Trading)以及高频交易(High Frequency Trading)。这五种量化交易方式的侧重点各有不同,是量化交易技术发展到不同阶段的产物,也是不同量化交易用户群的不同交易方式。量化交易平台是指能分别满足上述五种交易方式的平台,要求其从交易系统的行情和基础数据、交易和执行、策略研发和运营三个主要方面既要做到大而全,也要做到深而精。这对目前大中型金融机构的IT以及实际运营部门是很大的挑战,同时也提供了发展机遇。目前的量化交易平台可以从开发语言、技术架构、系统架构、策略方向、交易方式等几个方面2。2.2 交易开拓者交易平台1、Trade Blazer公式介绍Trade Blazer公式是一种专为分析金融数据-时间序列而设计的高级语言,它提供直接、强大的框架将交易思想转化为用户函数、公式应用等计算机能够识别的代码。Trade Blazer公式是一门语法简单但是功能强大的语言,它能帮助创建自己的交易和技术分析工具。通过组合普通的公式应用和简单的语句,Trade Blazer公式能够很容易并且直接的用简单语句表达自己的交易规则和行为。交易开拓者能够读取开发的Trade Blazer公式,在历史价格数据基础上进行评估,并能自动执行特定的交易动作,将交易思想转化为实际的交易操作。2、Bar数据所谓的Bar数据,是指商品在不同周期下形成的序列数据,在单独的每个Bar上面包含开盘价、收盘价、最高价、最低价、成交量及时间。期货等品种还有持仓量等数据。所有的Bar按照不同周期组合,并按照时间从先到后进行排列,由此形成为序列数据,整个序列称之为Bar数据。3、叠加数据交易开拓者的超级图表支持商品叠加的显示,当叠加的图表调用各项公式时,可能有需要使用叠加的商品对应的基础数据,针对这样的需求,Trade Blazer公式提供了叠加数据的支持。例如新建一个超级图表模块,其主数据对应的商品为:cu1303,在此基础上,我们叠加了cu1304和cu1305。此时,根据叠加操作的先后顺序,cu1303为Data0,cu1304为Data1,cu1305为Data2,在Trade Blazer公式中,我们可以通过Data1.Close(),Data2.Vol()类似方法调用叠加Bar数据,叠加Bar数据的函数和Bar数据一样,只是需要在调用的时候加上数据源。也可以使用Data0.Open()来调用Bar数据,默认情况下,可以省略对主数据源的指定,为了方便,一般直接使用Open()来代替Data0.Open()。4、数据类型Trade Blazer公式支持有三种基本数据类型:数值型、字符串、布尔型。引用数据类型为了通过用户函数返回多个值,序列数据类型为了对变量,参数进行回溯。因此,数据类型共有九种,如下表所示:表 2.1 数据类型名称说明 Bool布尔型。BoolRef布尔型引用。BoolSeries和周期长度一致的Bool型序列值。Numeric数值型。NumericRef数值型引用。NumericSeries和周期长度一致的Numeric型序列值。String字符串。StringRef字符串引用。StringSeries和周期长度一致的String型序列值。方法可以被声明接受可变数目的参数。缺省的参数传递方法是对基本数据类型进行值传递。ref关键字可以用来强迫一个变量通过引用传递,这使得一个变量可以接受一个返回值。Series关键字也能声明引用传递过程,与ref不同的地方是,它指明这个参数并不需要初始值。2.3 MATLAB2012B介绍MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。1、系统结构MATLAB系统由MATLAB开发环境、MATLAB数学函数库、MATLAB语言、MATLAB图形处理系统和MATLAB应用程序接口(API)五大部分构成。2、开发环境MATLAB开发环境是一套方便用户使用的MATLAB函数和文件工具集,其中许多工具是图形化用户接口。它是一个集成的用户工作空间,允许用户输入输出数据,并提供了M文件的集成编译和调试环境,包括MATLAB桌面、命令窗口、M文件编辑调试器、MATLAB工作空间和在线帮助文档。3、数学函数库MATLAB数学函数库包括了大量的计算算法。从基本算法如加法、正弦,到复杂算法如矩阵求逆、快速傅里叶变换等。4、语言MATLAB语言是一种高级的基于矩阵/数组的语言,它有程序流控制、函数、数据结构、输入/输出和面向对象编程等特色。5、应用程序接口MATLAB应用程序接口(API)是一个使MATLAB语言能与C、Fortran等其它高级编程语言进行交互的函数库。该函数库的函数通过调用动态链接库(DLL)实现与MATLAB文件的数据交换,其主要功能包括在MATLAB中调用C和Fortran程序,以及在MATLAB与其它应用程序间建立客户、服务器关系。2.4 相关策略技术现状目前国内资管业务程序化方向主要以TB、文华财经、MC等交易平台作为开发测试平台,这些平台的好处是界面清晰友好、数据连续性全、期货合约可以自动换月,针对Bar数据上的研发简单易行。缺点是这些平台只能提供最近一周的Tick数据,实盘交易时候数据不稳定、交易费用昂贵等问题,不能进行微秒量级上的策略开发和实施。交易平台国内一般选择赢佳、CTP108、理财牛等直接和上期技术开发平台数据相对接的平台,这些平台缺点是界面并不友好,数据需要自己录制。优点是可以使用C+,MATLAB等,代码实施后交易速度快,费用低。2.5 本章小结本章是策略开发平台的基础知识,系统地讲解TB和matlab策略开发交易平台、机制、开发环境等内容。为策略的开发打下了一个良好的理论基础。8浙江大学硕士学位论文第6章策略详细设计第3章 需求分析3.1 策略功能需求分析随着国内资管业务的开放,资管公司通过公募渠道,信托渠道发放大量的CTA业务类产品,为了能更好的管理些资金,使得程序化交易变得极为重要。根据对程序化交易策略的需求,主要可以概括为以下几点:1、 数据的录取、存储和清洗数据是策略开发的基础,所有的策略开发都是围绕着历史真实的行情数据进行研究开发的。数据的来源主要是通过数据供应商的购买和自己录制。购买的数据一般会出现数据缺失或者数据不真实,这样会导致开发出的策略不稳定。自己录制数据量较少,只有通过几年的数据录制才能达到开发策略需要的数据标准,成本较高。2、 高胜率和高盈亏比的策略交易策略是将几个模块合并,包括阿拉法策略、成本模型、风险模型、资金管理模型等。策略的实施首先要考虑交易费用,平均每成交一次的成本在万分之五到千分之一,再加上滑点等,成本有可能达到千分之五。如果每天一个策略交易2次,全年手续费就需要本金的100%。其次如何提高胜率和盈亏比,减少交易次数。相同概率的胜率和盈亏比不能帮助交易者赚取一丝的利润,只有在胜率和盈亏比的积大于1的情况下,策略才有意义。再次在何位置加仓,减仓,在何位置止损和止盈,一般情况下,已有仓位盈利达到加仓位置时,胜率会比首次开仓高,但是盈亏比就会下降。3、 交易策略的快速执行股指期货每秒钟有2个Tick,1个Tick有时候会出现1-2个点的行情,能否快速的执行交易策略,是控制交易滑点很重要的一个步骤。同时快速执行会使策略在实际运行和开发测试得到的结果想接近,提高准确性。4、 交易策略组合应用行情一般分为趋势和震荡行情,策略也就分为趋势和震荡策略,震荡策略的目的是为了使资金曲线平滑,趋势策略是为了使资金曲线上升。多种策略组合应用,有效的回避大的资金回撤,使得收益更加稳健。这个策略要实现的功能如下:(1)使用5倍手续费,来应对实盘交易可能出现的滑点损失。(2)最大回撤控制在30%以内。(3)R平方达到85%以上,资金曲线显得平滑稳健。(4)交易次计数要在100次以上,以达到有效统意义。(5)胜率和盈亏比要达到1.1以上。(6)年化收益要超过60%,使得预计亏损和预计盈利在1:2。交易策略一般包括:阿拉法模型、风险控制模型、资金管理模型、交易成本模型。通过对数据的研究来开发交易程序 1 。数据阿拉法模型风险控制模型资金管理投资组合构建模型 执行交易成本模型研究图 3.1 程序化交易策略功能结构图阿拉法模块:实现进仓和出仓的依据,通过技术指标,关键阻力位,支撑位,量价配合等方式实现。资金管理模块:实现仓位的大小,根据资金量,保证金,最大承受风险等确定仓位大小。风险控制模块:每次交易所能承受的最大风险。交易成本模型:交易中产生的各种磨损对交易策略影响的大小执行模型:主要是应用于开平仓的控制3.2 性能需求首先要求程序要完全可靠,可以应付各种由于系统问题产生的错误,比如初始网络失败等。要求提前设想到类似的尽可能多的可能发生的事件,做出相应的应对措施,并向用户提交简单易懂清晰明白的提示信息。策略要有良好的容错性,当行情数据出现极端情况时候,可以自动停止交易,或者系统本身出现问题时要能以最快的速度退出策略,避免发生程序假死现象。要求程序对所运行之系统的硬件条件要求尽可能低,运行时内存占用尽可能小,响应速度要尽可能快。并且不发生内存泄漏之类影响系统运行的错误事件。并且要求易于维护及扩展。所以应该采用模块化开发,各个模块之间不要有太多的耦合,以免维护困难。第4章 策略详细设计4.1 策略开发流程图整体流程图如图4-1所示:数据有信号?NY风险可控NY仓位量是否盈利达到止损位N达到止盈位Y达到止损位平仓图 4.1交易策略流程图4.2 阿拉法模块介绍阿拉法是指扣除市场基准回报以后的投资回报,或者说是仅仅有投资者决策所增加或减少的那部分价值。追求阿拉法回报的策略,本质上就是投资组合的资产配置决策及设置其头寸规模的择时决策者。这种策略的一个核心就是,没有永远好的金融产品,也没有永远差的金融产品,或者说,没有什么金融产品值得一直持有,也没有什么金融产品永远不值得一看1。阿拉法模型的类型:理论驱动和数据驱动。4.2.1 理论驱动型理论驱动模型:从一些符合经济学理论对市场行为的解释出发,构建理论模型,然后检验这些理论是否可以成功预测未来。包括:趋势型(trend),回复型(reversion),价值型/收益型(value/yield),成长型(growth)和品质型(quality)。这一点和主观判断型交易者所用的策略基本一致。趋势型交易有时候也称为“博傻理论”,它的核心就是:因为人们相信存在趋势,因此倾向于追涨杀跌,而这种交易力量就会推动形成趋势,成功的关键就是有一个更傻的人从交易者的手中接过筹码,而不会成为最后一个接棒者。趋势交易者一般会选择一个比较显著的方向性运动,这个可以用很简单的交易系统来表示。例如双均线交易系统,核心就是当20日的移动平均线上穿50日的移动平均线,形成一个强有力的趋势,交易者跟随趋势直到20日均线下穿50日均线填平头寸,认为趋势已经停止。(详细内容见第8章)回复型交易的理论为交易者认为价格会围绕一个交易中心波动,交易者通过判断波动幅度的大小来进行赢利。或者是在统计套利中,交易者认为商品之间的价格应该围绕着一个稳定的价格波动,当商品之间的价格偏离超过了这个幅度后,价格应该收敛。例如:上海期货交易所和上海黄金交易所中的商品黄金,在这两个交易所中黄金的属性是一样的,在2008年黄金期货刚刚上市的时候,两个市场之间的价差会达到在10元/克,当市场上针对黄金套利的交易者增多了以后,现在两个市场的黄金价差1元/克上下浮动,无风险套利的空间大大的减少了。(详细内容见第10章)价值型/收益型,成长型和品质型主要是应用于股票市场中,根据对股票的基本面和公司的财务数据进行分析的交易方式,本论文就不过多讨论。4.2.2 数据驱动型数据驱动模型:采用数据挖掘技术,其假设是,数据可以暗示将要发生的事件,并且借助分析技术可以识别出一些市场走势。这种方法的优点是:第一相对于理论驱动交易模型,数据挖掘在技术上的挑战要更高一些,相对应的就是竞争的对手就少,就更会开发出更有利的模型。第二:数据驱动型策略可以捕获各种市场行为,使交易者开发出“之其然不知其所以然”的交易策略。4.3 交易成本模块介绍交易成本分为三个方面:佣金和费用、滑点和市场冲击成本。1、佣金和费用佣金和费用作为第一类交易成本,用来支付给经纪公司和交易所,因为他们提供了服务,包括给市场参与者提供了交易通道,提高交易的安全性和运作交易基础设施2、滑点滑点指的是交易者决定在交易开始到订单实际被执行这两个时间段之间的价格变化。趋势跟随型策略是对滑点比较敏感的策略,因为他们准备买卖的产品往往已经向预测的方向移动了。均值回复策略则倾向于承担较少的滑点,并且这种滑点有时候是正向的,通常是因为这些策略尝试着购买和卖出那些与他们发出订单运动方向相反的产品。3、冲击成本市场冲击成本是指当交易者买入一种金融产品时,交易者的订单真对当时市场的流动性来说很大,就可能会导致价格上涨;如果交易者卖出,则价格下跌。交易者的流动需求规模越大,交易会变得越昂贵,因为交易者必须要求更多的流动性供给4.4 风险控制模型介绍头寸规模控制是风险管理的一种重要形式,想象一个非常好的交易策略是一件非常容易的,但是如果没有风险管理意识,我们将所有的资本投入到这笔交易中,就会有爆仓的危险。限制风险大小的量化风险控制模型一般围绕三个方面:1、如何看待头寸规模限制水平2、风险怎么度量3、头寸规模限制水平用于何处4.4.1 控制风险的类型用于消除不可预测敞口的量化风险控制模型,一般通过两种熟悉的方式来设计,即以理论为依据和以经验为依据。理论驱动型风险控制模型使用了一套一开始就已经定义好的系统性风险,这些系统性风险可以使程序化交易者度量并且校准一个给定投资组合的敞口。经验型风险控制模型以历史数据来决定这些风险是什么,并且判断一个给定的投资组合如何暴露在风险中,和暴露在风险中的大小6。数据的重要性数据的特征常常决定了模型的细节,交易者不可能根据每日的日K线数据来完成日内程序化交易的设计,也不可能根据季度GDP数据来构建一个高频交易系统。考虑开发那种交易策略,很大的程度上取决于我们数据库数据的类型。1、价格数据价格数据不仅仅是期货商品的价格,还包括从交易所得到的其他信息,比如期货的交易量,成交的时间,当时的持仓量,挂单量,成交手数等等。2、基本面数据基本面数据包括很多,尤其是在期货市场中数据几乎包括经济数据中所有的数据(CPI可能影响到豆粕的价格,豆粕主要是用于生产猪饲料),天气指数、环境因素(干旱少雨会影响到大豆的产量),还有国外的数据(波罗的海运指数影响到铁矿石的价格,进而影响到螺纹钢的价格)。在开发中长线基本面交易模型的时候,宏观数据的影响就很显著的。3、数据的来源交易者可以通过多种渠道获得数据来源。最直接有效的方法就是直接获取未经过加工的数据。最初的数据来源及数据类型:交易所:成交日期、成交时间、价格、成交量、持仓量等。政府:宏观经济数据,例如:就业率、通胀率等。新闻机构:新闻稿和新闻报道等。天气预报:各国和各地的天气状况等国外数据:美国非农指数、各国的利率、船运指数等。卫生局:病情、疫情等数据供应商:路透、万德等。4、数据的整理当交易者取得到数据以后,数据经常会出现缺失或不准确,这些会给交易者的交易策略带来很大的影响,当交易者使用没有经过清洗过的数据开发的交易策略进行实盘交易的时候,有可能会给交易者带来巨大的经济损失。因此,数据的整理就很重要。数据的整理主要分为两个方面:数据的缺失和数据的异常。数据缺失:当数据缺失的时候,一般是插入一个可以替代缺失数据的合理值,这种方法对历史数据特别有用,同时对实时交易也很有用。数据的异常:数据不是“0值”或是“未知”数据,是一个和附近数据迥异的数值,解决这个问题的办法是使用异常值过滤,寻找到价格异常大的,突然的跳动,并对它进行平滑或消除。5、数据的下载代码通过实时的交易平台数据收集交易数据,存储到数据库中。ParamsString Filename(d: Data2013-04-03 rb1310.csv); /数据存放路径名和名称BeginIf(Time 0.0859 )FileAppend(Filename,date = +DateToString(date) /交易数据日期 + +timeToString(CurrentTime) /交易数据时间 + +Text(Open) /开盘价 + +Text(High)/最高价 + +Text(low)/最低价 + +Text(Close)/收盘价 + +Text(Vol) /成交量 + +Text(OpenInt); /持仓量End4.5 技术分析技术4.5.1 日本蜡烛图日本蜡烛图技术是现今人们普遍运用分析期货、股票、外汇等证券市场的一项重要方法8。4.5.2 日本蜡烛图的画法蜡烛图画法:以交易时间为横坐标,价格为纵坐标将每日的K线连续绘出即成K线图。K线图中的柱体有阳线和阴线之分。一般用红色柱体表示阳线,蓝色柱体表示阴线。如果柱体表示的时间段内的收盘价高于开盘价,即价格上涨,则将柱体画为红色,反之则画为黑色。如果开盘价正好等于收盘价,则形成十字线。4.5.3 日本蜡烛图的形态日本蜡烛图形态分析主要分为单一图形和组合图形。单一图形是由一根K线图组成的,因为这跟K线图出现在价格极值位置,可能出现在突破上涨发动时,也可能发生在连续上涨以后的结束情形的时候。多以一根大阳线或者是一根大阴线突破盘整行情,展开一轮行情。图 4.2实体长线也会在连续行情结束前,以长上影线或者是长下影线出现,代表这趋势的反转。(图4.2) 长阴线下影线图 4.3长影线组合图形:由多根K线图组成,当将这些K线图组合起来的时候,将开盘价、最高价、最低价和收盘价组合起来形成单一图形的形态,为交易者提供交易的依据。4.5.4 代码编辑蜡烛图BeginIf(OpenClose & Close=Low & High-Low =N) /长阴线SellShort(lots,Close); /做空操作 If(Open=1/2*N & High-Low =N) /下影线Buy(lots,Close); /做多操作End4.6 技术指标4.6.1 技术指标概述技术指标是通过考虑市场行为的各个方面,建立一个数学模型, 给出数学上的计算公式,得到一个体现市场的某个方面内在实质的数字。这个数字叫指标值。指标值的具体数值和相互间关系,直接反映股市所处的状态,为我们的操作行为提供指导方向。指标反映的东西大多是从行情报表中不能直接看到的9。4.6.2 技术指标分类目前,证券市场上的各种技术指标数不胜数。例如,相对 强弱指标(RSI)、随机指标(KD)、趋向指标(DMI)、平滑异同平均线(MACD)等。这些都是很著名的技术指标,在交易市场应用中长盛不衰。以下讲介绍两种趋势指标,在很多的趋势交易系统中都会用到这两个指标。4.6.2.1 布林带原理(Boll )图 4.4 Boll通道布林线是根据统计学中的标准差原理设计出来的一种非常实用的技术指标。它由三条轨道线组成,其中上下两条线分别可以看成是价格的压力线和支撑线,在两条线之间是一条价格平均线,一般情况价格线在由上下轨道组成的带状区间游走,而且随价格的变化而自动调整轨道的位置。当波带变窄时,激烈的价格波动有可能随即产生;若高低点穿越带边线时,立刻又回到波带内,则会有回档产生。4.6.2.2 平滑异动平均线原理和代码(MACD)图 4.5 MACDMACD称为指数平滑异同移动平均线,是从双移动平均线发展而来的,由快的移动平均线减去慢的移动平均线,MACD的意义和双移动平均线基本相同,但阅读起来更方便。当MACD从负数转向正数,是买的信号。当MACD从正数转向负数,是卖的信号。当MACD以大角度变化,表示快的移动平均线和慢的移动平均线的差距非常迅速的拉开,代表了一个市场大趋势的转变。4.7 阻力位和支撑位价格的压力位和支撑位不是计算出来了,是客观存在的;一般是与在一定的区域内成交的密度有关,可以通过筹码分布来分析阻力位和支撑位的所在;筹码的压力支撑作用属于客观存在的,另外,均线也有压力支撑作用,这一般属于心理压力或支撑的范畴,它是因为很多技术派人士要按照均线来买卖,这样操作的人多了,均线也就形成了压力或支撑,当然,有时主力也会利用均线来操作;通过对盘口的分析,也可以寻找到阻力位和支撑位。一般压力位指在价格上方,由于前期下跌过程中在某个位置有大量的套牢盘,这里是一个筹码比较集中的密集区,那么此时价格上行到此位置时将会遇到较大的抛压,使得价格受阻,则这个位置就是压力位,而价格的下方筹码密集区,可能是主力建仓的区域,则价格跌到这个位置时主力为防止价格跌破自己的建仓成本,会拉升价格,则此处就将形成支撑8。 4.8 本章小结本章主要介绍了交易策略的几个主要方面。阿拉法模型是如何交易,交易的进出场点,主要由技术指标和支撑阻力位决定。交易成本模型主要是由佣金、滑点和冲击成本决定。风控模型主要是仓位和最大亏损的决定。20浙江大学硕士学位论文第7章程序化交易策略实现第5章 程序化交易策略实现一个完整系统的成分一个完整的交易系统包含了成功的交易所需的每项决策:市场-买卖什么、头寸规模-买卖多少、入市-何时买卖、止损-何时退出亏损的头寸、离市-何时退出赢利的头寸、策略-如何买卖11。市场-买卖什么第一项决策是买卖什么,或者本质上在何种市场进行交易。如果你只在很少的几个市场中进行交易,你就大大减少了赶上趋势的机会。同时,你不想在交易量太少或者趋势不明郎的市场中进行交易。头寸规模-买卖多少有关买卖多少的决策绝对是基本的,然而,通常又是被大多数交易员曲解或错误对待的。买卖多少既影响多样化,又影响资金管理。多样化就是努力在诸多投资工具上分散风险,并且通过增加抓住成功交易的机会而增加赢利的机会。正确的多样化要求在多种不同的投资工具上进行类似的(如果不是同样的话)下注。资金管理实际上是关于通过不下注过多以致于在良好的趋势到来之前就用完自己的资金来控制风险的。买卖多少是交易中最重要的一个方面。大多数交易新手在单项交易中冒太大的风险,即使他们拥有其他方面有效的交易风格,这也大大增加了他们破产的机会。入市-何时买卖的决策通常称为入市决策。自动运行的系统产生入市信号,这些信号说明了进入市场买卖的明确的价位和市场条件。止损-何时退出亏损的头寸长期来看,不会止住亏损的交易员不会取得成功。关于止亏,最重要的是在你建立头寸之前预先设定退出的点位。离市-何时退出赢利的头寸许多当作完整的交易系统出售的“交易系统”并没有明确说明赢利头寸的离市。但是,何时退出赢利头寸的问题对于系统的收益性是至关重要的。任何不说明赢利头寸的离市的交易系统都不是一个完整的交易系统。策略-如何买卖信号一旦产生,关于执行的机械化方面的策略考虑就变得重要起来。这对于规模较大的帐户尤其是个实际问题,因为其头寸的进退可能会导致显著的反向价格波动或市场影响。主要对于一致性赚钱的交易,使用机械系统就是最佳的方式。如果你知道自己的系统能够长期赚钱,你就比较容易接受信号,并且在亏损期间按照系统信号进行交易。如果你在交易中依赖自己的判断,你可能会发现恰恰应该勇敢时你却胆怯,而恰恰应该胆怯时你却勇敢。如果你拥有一个能够赢利的机械交易系统,而且你虔诚地跟随这个系统,那么,你的交易将会取得赢利,而且系统会帮助你安然摆脱难免会来自于一长串亏损或者巨额赢利的内心的挣扎。海龟所用的交易系统是一个完整的交易系统。这是取得成功的一个主要因素。交易系统使交易者更容易地进行一致性的、成功的交易,因为它没有给交易员的判断力留下重要的决策任务。5.1 日内交易策略DRT5.1.1 策略开发流程图找出开盘Nm的高点价格突破开多仓ATR棘轮跟踪止损或盘尾平仓达到止损条件盈利N点以上,结束该策略今天交易亏损或盈利少于N个点反向开空仓达到盈利点数,平仓停止今天交易当继续开仓错误,满足再次开多仓条件(价格超过当时最高点),开多仓NYNY图 5.1 DRT流程图5.1.2 策略介绍DRT:在开盘后Nmin后得到高低点的一个区间,当价格突破高点后开始开后多仓,当达到止损线以后平仓或反向开仓。反向开仓后如果达到盈利的位置平仓,或继续反向多仓10。5.1.3 策略测试结果图 5.2 DRT交易策略测试结果所产生的交易收益曲线如下图所示图 5.3 DRT收益曲线仿真交易结果:表 5.1仿真交易结果表标准研发实施RDT回报率大于6%大于15%50%+最大回测20%10%65%收益/最大回撤大于1大于22.3R2大于0.7大于0.80.84参数个数333每年交易数多于50多于200266测试条件:交易3手, 周期为3分钟,,手续费为双向4%(单向2%),测试周期为股指开市以来至2013/2/19。5.2 日内交易策略DRT(加仓)5.2.1 策略开发流程图找出开盘Nm的高点以m周期的3min高点作为加仓点位突破高点开多仓以m周期的3min低点作为止损点当high1小于止损点,open平仓当close1加仓点位,加仓以m周期的3min低点作为止损点,平仓YN图 5.4 DRT(加仓)流程图5.2.2 策略介绍策略核心思想:开盘后nMIN的高点突破,属于趋势跟踪,当价格再次达到进仓条件,则加仓。进场时机:上一根BAR的close打破区间高点,下一根BAR的open进场或当收盘价再次突破5周期的3分钟最高价格为加仓点。每次交易1手,加仓1手,最多仓位为5手离场时机:以5周期的3分钟最低价格为止损点,当BAR的高点低于止损点,出仓。5.2.3 策略测试结果图 5.5 DRT(加仓)交易策略图 5.6 DRT(加仓)收益曲线仿真交易结果:表 5.2仿真交易结果表标准研发实施RB(40)加仓策略回报率大于6%大于15%47最大回测20%10%19.6%收益/最大回撤大于1大于27.3R2大于0.7大于0.80.94参数个数330每年交易数多于50多于200370测试条件:交易3手, 周期为3分钟,,手续费为双向4%(单向2%),测试周期为股指开市以来至2013/2/19。5.3 日内交易策略R_Breaker交易系统的基本原理如下:图 5.7原理图ssetup=hitoday1+f1*(Close1-ltoday1);senter=(1+f2)/2)*(hitoday1+Close1)-(f2)*ltoday1;benter=(1+f2)/2)*(ltoday1+Close1)-(f2)*hitoday1;bsetup=ltoday1-f1*(hitoday1-Close1);bbreak=ssetup+f3*(ssetup-bsetup);sbreak=bsetup-f3*(ssetup-bsetup);5.3.1 策略开发流程图盘末平仓盘末平仓盘末平仓数据大于突破买入价Y开仓做多大于反转卖出价YN做空大于突破买入价价Y大于观察卖出价N小于反转卖出价大于突破买入价价YN图 5.8 R_Breaker流程图5.3.2 策略测试结果图 5.9 R_Breaker策略图交易产生的收益曲线如下图所示。图 5.10 R_Breaker收益曲线31浙江大学硕士学位论文第8章程序化交易展望5.4 基本面策略开盘后一分钟交易策略5.4.1 策略思想市场交易者从持仓的长短分为短期交易者,中期交易者和长期交易者,短期交易者主要是抓取日内波段的小幅震荡来博取收益,中期和长期交易者赚取隔夜波动带来的利润。市场交易者从开仓的依据主要分为基本面交易者和技术分析交易者,还包括少量的数量分析交易者。基本面交易者主要是依据国家的宏观调控、经济转型、战略目标、宏观数据等进行长期的交易。技术分析主要根据阻力位和支撑位的不断变化来寻找进仓的位置17。市场交易者从进仓的目的可以分为投机和套保,投机交易者主要根据价格的波动来获取利润。套保是手里持有现货,在期货市场上来锁定成本和利润,避免现货市场的价格波动带来风险。中国的股指和股票市场的开盘时间相差15分钟,同时中国政府经常会在股市结盘以后突然公布大的经济政策。因此,很多的基本面交易者会在股指开盘的一分钟以内进行套保交易,规避风险,这个时候会伴随着巨大的成交量。程序化交易者可以通过对这一分钟价量的分析,跟随主力的资金运作,顺势操作获取利润21。5.4.2 策略开发流程图离市-当价格达到预期的利润或者是到盘尾的时候平仓。图 5.11 1minVol交易5.5 统计套利策略统计套利是由配对交易发展而来的,所谓配对交易,是选择两个历史价格变动有显著相关性的商品,当它们的走势发生分化时,做多相对弱势的商品,做空相对强势的商品,期望它们未来的走势再次趋同获利。20世纪80年代,随着计算机技术在投资领域的广泛普及,在全球市场范围内搜索证券对,同时管理和维护大量证券多空仓位成为一种可能,解决了一组证券对预测困难,配对交易风险大的问题,成为统计套利的开端。 “统计套利”一词首次使用是在20世纪90年代早期,统计套利方法的范围,从最古老的纯粹的匹配交易机制到复杂的、动态的非线性模型,应用的技术包括神经网络、小波分析、分形分析几乎涵盖了统计学、物理学和数学上所有的模型匹配技术,这些技术被测试、检验,并在大多数情况下遭到摈弃。统计套利后期的发展融合了多种因素,包括交易经验、更多的实证观测值、实验分析,并且从工程学和物理学的视角(涉猎领域从高能粒子物理到流体动力学,应用的数学技巧从概率论到微分差分方程)给予了理论上的解释。随着越来越多的智力成果被应用到相关的研究中,“匹配交易”这个名称已经不太恰当,甚至有些过时,于是,“统计套利”一词由此被创造出来。5.5.1 统计套利的定义统计套利策略是国外对冲基金等机构投资者成功运用的策略,它的实施能为投资者带来巨额低风险收益,而在我国目前处于将起步阶段。统计套利是一种基于模型的套利策略,通过从资产的历史交易数据找寻规律,发现两个或者两个以上的资产之间存在的套利机会,然后通过模型拟合资产价格的变化规律,设定交易阀值,通过计算机程序根据市场的实时信息自动发出交易信号而进行套利13。5.5.2 统计套利的思路统计套利的基本思路是运用统计分析工具对一组相关联的价格之间的关系的历史数据进行研究分析,研究该关系在历史上的稳定性,并估计其概率分布,确定该分布中的极端区域,即否定域,当真实市场上的价格关系进入否定域时,则认为该种价格关系不可长久维持,套利者有较高成功概率进场套利。价差超出均值范围价差超出均值范围图 5.12统计套利5.5.3 统计套利风控
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!