欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    补充经典程序化交易策略.docx

    • 资源ID:14431248       资源大小:119.90KB        全文页数:55页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    补充经典程序化交易策略.docx

    1、补充经典程序化交易策略经典程序化交易策略日内策略】Dual Thrust策略:Dual Thrust类型:日内Dual Thrust与R-Breaker一样,曾长期排名Future Trust杂志最赚钱的策略。该策略在形式上和开盘区间突破策略类似。不同点主要体现在两方面:Dual Thrust在Range(代码中的浮动区间)的设置上,引入前N日的四个价位,使得一定时期内的Range相对稳定,可以适用于日间的趋势跟踪;Dual Thrust对于多头和空头的触发条件,考虑了非对称的幅度,做多和做空参考的Range可以选择不同的周期数,也可以通过参数K1和K2来确定。 当K1时,多头相对容易被触发,

    2、当K1K2时,空头相对容易被触发。因此,投资者在使用该策略时,一方面可以参考历史数据测试的最优参数,另一方面,则可以根据自己对后势的判断,或从其他大周期的技术指标入手,阶段性地动态调整K1和K2的值。代码(金字塔语言):TB,WH3,大智慧,matlab,EVIEW (R2)/策略:Dual Thrust/类型:日内/中间变量input:n(1,1,100,1),K1(0.7,0.1,1,0.1),k2(0.7,0.1,1,0.1),nmin(10,1,100,1),ss(1,1,100,1);CYC:=barslast(dateref(date,1)+1;昨高:=callstock(stkl

    3、abel,vthigh,6,-1);昨低:=callstock(stklabel,vtlow,6,-1);昨收:=callstock(stklabel,vtclose,6,-1);开盘价:=valuewhen(cyc=1,open);HH:=hhv(昨高,n);/N日high的最高价HC:=hhv(昨收,n);/N日close的最高价LC:=LLV(昨收,n);/N日close的最低价LL:=LLV(昨低,n);/N日low的最低价浮动区间:=max(HH-LL,HC-LL);/range上轨:开盘价+k1*浮动区间;下轨:开盘价-K2*浮动区间;t1:=timeopentime(1) and

    4、 timet2:=time=closetime(0)-nmin*100;手数:=ss;/交易条件开多条件:=c上轨 and holding=0;开空条件:=c1,手数,market);开空:buyshort(开空条件 and t1 and cyc1,手数,market);收盘平多:sell(t2,手数,market);收盘平空:sellshort(t2,手数,market);这个策略已有很多个版本,这个版本引入了前N日的四个价位,以及K1、K2参数。默认参数设置与现有策略一致,为前一日,K1=k2=0.7.【经典策略】海龟交易系统海龟交易系统相对而言是一个比较早的交易系统了,也是世界著名的机械

    5、交易系统,对于想学习程序化系统交易的投资者来说是一个很好的入门学习材料。一套完整的机械的交易系统都有明确并且唯一的交易信号,例如两条均线就构成了一个交易系统,只不过它更好的说是属于技术指标的范畴。而完整的交易系统所持头寸(仓位)调整和风险控制是交易系统的核心,而海龟交易系统就是这样一套交易系统。 海龟交易系统简介:交易信号:海龟的交易信号其实很简单,当价格创20或50天新高就买入,当价格创10天或20天新低就卖出,时间上具体的参数使用者也可以自己调整。头寸管理和风险控制策略:海龟交易系统由总资金风险百分比和N波动的系数策略来决定交易头寸的多少,用N确定什么时候加仓、加多少,同时用2N来确定头寸

    6、的保护性损止。N每7天调整一次(五个交易日)。这就是海龟交易系统的交易策略,属于一套完整的交易系统。下面是海龟交易系统测试版的编程源码。以下代码为金字塔语言: Buy(BB)是买入的股票的数量(含加码部分总共最多4次),Sell()是卖出全部的股票数量。总资金以100万为例。 海龟交易系统修正版:该版本主要改进之处是在N的算法上直接用语句实现,因为SMA函数首次的N即PDN取值是不海龟交易系统所说的20日简单均线,所以会造成误差,而改进后更符合原意。我们在这里说的N、PDN等等,对假如没看过海龟法则的投资者而言可能无法理解,所以在了解源码之前可以先看看海龟法则。以下是修正版的程序:/turtl

    7、eJ:=1;I:=1;P:=1;TR:=MAX(H,C)-MIN(L,C);IF BARPOS=20 THEM BEGIN IF BARPOS=20 THEN N:=MA(TR,20); IF P=5 OR BARPOS=20 THEN BEGIN N:=(19*N+TR)/20; P:=1; END P:=P+1; IF H=HHV(H,20) & J=1 THEN BEGIN HOW:=CASH*0.01/N; BPK(HOW); J:=0; END L:=LLV(L,10) & J=0 THEN BEGIN SP; J:=1; I:=1; END IF C-ENTERPRICE=(N/2

    8、) & i=(2*N) THEN SP;END原版海龟交易法则 2009-11-01 23:19:17 标签: 无 阅读对象:所有人导言 海龟实验 理查德.丹尼斯想弄清楚伟大的交易员是天生造就的还是后天培养的。 一个老生常谈:天性还是培养? 1983年年中,著名的商品投机家理查德.丹尼斯与他的老友比尔.埃克哈特进行了一场辩论,这场辩论是关于伟大的交易员是天生造就还是后天培养的。理查德相信,他可以教会人们成为伟大的交易员。比尔则认为遗传和天性才是决定因素。 为了解决这一问题,理查德建议招募并培训一些交易员,给他们提供真实的帐户进行交易,看看两个人中谁是正确的。 他们在巴伦氏、华尔街期刊和纽约时报

    9、上刊登了大幅广告,招聘交易学员。广告中称,在一个短暂的培训会后,新手将被提供一个帐户进行交易。 因为里克(理查德的昵称)或许是当时世界上最著名的交易员,所以,有1000多位申请人前来投奔他。他会见了其中的80位。 这一群人精选出10个人,后来这个名单变成13个人,所增加的3个人里克以前就认识。1983年12月底,我们(译注:作者当时是参加培训的学员之一)被邀请到芝加哥进行两周的培训,到1984年1月初,我们开始用小帐户进行交易。到了2月初,在我们证明了自己的能力之后,丹尼斯给我们中的大多数人提供了50万至200万美元的资金帐户。 学员们被称为海龟(丹尼斯先生说这项计划开始时他刚刚从亚洲回来,他

    10、解释了自己向别人说过的话,我们正在成长为交易员,就象在新加坡他们正在成长为海龟一样)。-斯坦利.W.安格瑞斯特,华尔街期刊,1989年9月5日 海龟成为交易史上最著名的实验,因为在随后的四年中我们取得了年均复利80%的收益。 是的,里克证明了交易可以被传授。他证明了用一套简单的法则,他可以使仅有很少或根本没有交易经验的人成为优秀的交易员。 继续往下读。从下一章开始,接下来就是丹尼斯传授给新手们的那一套完整的法则。第一章 完整的交易系统 海龟交易系统是一个完整的交易系统,它包括了交易的各个方面,实际上没有给交易员留下一点主观想象决策的余地。 大多数成功的交易员都使用机械交易系统。这并非偶然。 一

    11、个良好的机械交易系统可以自动运行整个交易程序。对于交易员在交易中必须制定的每项决策,系统都会给出答案。该系统使交易员更容易进行一致性的交易,因为有一套明确说明应该做什么的法则。交易的机械化就是不留给交易员自己进行判断。 如果你知道自己的系统能够长期赚钱,你就比较容易接受信号,并且在亏损期间按照系统信号进行交易。如果你在交易中依赖自己的判断,你可能会发现恰恰应该勇敢时你却胆怯,而恰恰应该小心翼翼时你却勇气十足。 如果你有一个机械交易系统在发挥作用而且你一致地跟随它,那么,尽管可能有来自于一长串亏损或者巨额赢利的内心的挣扎,你的交易都将是一致的。自信、一致性以及由彻底检测过的机械交易系统所保证的纪

    12、律,是大多数能够赢利的交易员成功的关键。 海龟交易系统是一个完整的交易系统。其法则覆盖了交易的各个方面,并且不给交易员留下一点主观想象决策的余地。它具备一个完整的交易系统的所有成分。 一个完整系统的成分 一个完整的交易系统包含了成功的交易所需的每项决策: 市场-买卖什么 头寸规模-买卖多少 入市-何时买卖 止损-何时退出亏损的头寸 离市-何时退出赢利的头寸 策略-如何买卖 市场-买卖什么 第一项决策是买卖什么,或者本质上在何种市场进行交易。如果你只在很少的几个市场中进行交易,你就大大减少了赶上趋势的机会。同时,你不想在交易量太少或者趋势不明郎的市场中进行交易。 头寸规模-买卖多少 有关买卖多少

    13、的决策绝对是基本的,然而,通常又是被大多数交易员曲解或错误对待的。 买卖多少既影响多样化,又影响资金管理。多样化就是努力在诸多投资工具上分散风险,并且通过增加抓住成功交易的机会而增加赢利的机会。正确的多样化要求在多种不同的投资工具上进行类似的(如果不是同样的话)下注。资金管理实际上是关于通过不下注过多以致于在良好的趋势到来之前就用完自己的资金来控制风险的。 买卖多少是交易中最重要的一个方面。大多数交易新手在单项交易中冒太大的风险,即使他们拥有其他方面有效的交易风格,这也大大增加了他们破产的机会。 入市-何时买卖 何时买卖的决策通常称为入市决策。自动运行的系统产生入市信号,这些信号说明了进入市场

    14、买卖的明确的价位和市场条件。 止损-何时退出亏损的头寸 长期来看,不会止住亏损的交易员不会取得成功。关于止亏,最重要的是在你建立头寸之前预先设定退出的点位。 离市-何时退出赢利的头寸 许多当作完整的交易系统出售的交易系统并没有明确说明赢利头寸的离市。但是,何时退出赢利头寸的问题对于系统的收益性是至关重要的。任何不说明赢利头寸的离市的交易系统都不是一个完整的交易系统。 策略-如何买卖 信号一旦产生,关于执行的机械化方面的策略考虑就变得重要起来。这对于规模较大的帐户尤其是个实际问题,因为其头寸的进退可能会导致显著的反向价格波动或市场影响。 摘要 对于一致性赚钱的交易,使用机械系统就是最佳的方式。如

    15、果你知道自己的系统能够长期赚钱,你就比较容易接受信号,并且在亏损期间按照系统信号进行交易。如果你在交易中依赖自己的判断,你可能会发现恰恰应该勇敢时你却胆怯,而恰恰应该胆怯时你却勇敢。 如果你拥有一个能够赢利的机械交易系统,而且你虔诚地跟随这个系统,那么,你的交易将会取得赢利,而且系统会帮助你安然摆脱难免会来自于一长串亏损或者巨额赢利的内心的挣扎。 海龟所用的交易系统是一个完整的交易系统。这是我们取得成功的一个主要因素。我们的系统使我们更容易地进行一致性的、成功的交易,因为它没有给交易员的判断力留下重要的决策任务。第二章 市场:海龟交易什么 海龟交易的是在美国芝加哥和纽约交易所交易的具有流动性的

    16、期货。 流动性 海龟们用于确定能够参与交易的期货品种的主要标准就是构成市场基础的流动性。 海龟是期货交易员,在当时更普遍地称为是商品交易员。我们在美国人气最旺的商品交易所交易期货合约。 因为我们交易的规模高达数百万美元,所以我们不能在那些每天只能交易几百张合约的市场交易,因为那会意味着我们发出的指令会造成市场的大幅波动,结果是我们不承受巨大的损失就难以进出头寸。海龟只在流动性最好的市场进行交易。 一般,海龟在除谷物和肉类以外美国所有具有流动性的市场进行交易。因为理查德.丹尼斯自己的帐户已经达到了交易头寸限额,所以,他无法允许我们在不超过交易头寸限额的情况下为他交易谷物。 我们不交易肉类是因为肉

    17、类交易厅中存在着场内交易员腐败的问题。在海龟解散几年之后,联邦调查局(FBI)在芝加哥肉类交易厅开展了一场大规模的针刺行动(sting operation),指控多名交易员涉嫌价格操纵及其他形式的腐败行为。 以下是海龟参与交易的期货市场的清单: 芝加哥期货交易所(CBOT) 30年期美国长期国债(Treasury Bond) 10年期美国中期国库券(Treasury Note) 纽约咖啡可可与原糖交易所(NYCSC) 咖啡 可可 原糖 棉花 芝加哥商品交易所(CME) 瑞士法郎 德国马克 英镑 法国法郎 日圆 加拿大元 标准普尔500股票指数 欧洲美元 90天美国短期国库券(Treasury

    18、Bill) 纽约商品期货交易所(COMEX) 黄金 白银 铜 纽约商业期货交易所(NYMEX) 原油 燃油 无铅汽油 海龟被给予可自行决断不参与清单中任何一种商品交易的自由。不过,如果某个交易员决定不参与某个特定市场的交易,那么,他根本就不参与该市场的交易。我们得到建议,不要不一致地参与市场交易。第三章 头寸规模 海龟将一个基于波动性的常数百分比用作头寸规模风险的测算标准。 头寸规模是所有交易系统最重要的部分之一,但也是最不为人理解的部分。 海龟所用的头寸规模测算标准在当时非常先进,因为通过调整以市场的美元波动性为基础的头寸规模,该测算标准使头寸的美元波动性标准化。这意味着在以美元表示的数量相

    19、同的特定交易日,特定的头寸往往会上下波动(与其他市场的头寸相比),不考虑特定市场根本的波动性。 这是实际情况,因为在每张合约上下波动剧烈的市场中的头寸与波动性较低的市场中的头寸相比,会抵消较少的合约数。 这种波动性的标准化是非常重要的,因为这意味不同的市场中不同的交易对于特定的美元损失或特定的美元收益往往具有相同的机会。这就提高了在多个市场间进行多样化交易的效果。 即使某个特定市场的波动性较低,但是,任何明显的趋势都会带来相当大的赢利,因为海龟会更多地持有这种低波动性商品的合约。 波动性-N的含意 海龟用一个理查德.丹尼斯和比尔.埃克哈特称之为N的概念来表示某个特定市场根本的波动性。 N就是T

    20、R(True Range,实际范围)的20日指数移动平均,现在更普遍地称之为ATR。从概念上来看,N表示单个交易日某个特定市场所造成的价格波动的平均范围,它说明了开盘价的缺口。N同样用构成合约基础的点(points)进行度量。 每日实际范围的计算: TR(实际范围)=max(H-L,H-PDC,PDC-L) 式中: H-当日最高价 L-当日最低价 PDC-前个交易日的收盘价 用下面的公式计算N: N=(19PDN+TR)/20 式中: PDN-前个交易日的N值 TR-当日的实际范围 因为这个公式要用到前个交易日的N值,所以,你必须从实际范围的20日简单平均开始计算初始值。 价值量波动性的调整

    21、确定头寸规模的第一步,是确定用根本的市场价格波动性(用其N值定义)表示的价值量波动性。 这听上去比实际情况更复杂。价值量波动性用下面简单的公式确定: 价值量波动性=N每点价值量 波动性调整后的头寸单位 海龟按照我们所称的单位(Units)建立头寸。单位按大小排列,使1N代表帐户净值的1%。 因此,特定市场或特定商品的单位可用下面的公式计算: 单位=帐户的1%/市场价值量波动性 或 单位=帐户的1%/(N每点价值量) 示例 燃油(HO03H): 我们来看2003年3月份燃油的价格、实际范围及N值: 日期 最高价 最低价 收盘价 实际范围 N 20021102 0.7220 0.7124 0.71

    22、24 0.0096 0.0134 20021104 0.7170 0.7073 0.7073 0.0097 0.0132 20021105 0.7099 0.6723 0.6723 0.0176 0.0134 20021106 0.6930 0.6800 0.6838 0.0130 0.0134 20021107 0.6960 0.6736 0.6736 0.0224 0.0139 20021108 0.6820 0.6706 0.6706 0.0114 0.0137 20021111 0.6820 0.6710 0.6710 0.0114 0.0136 20021112 0.6795 0.6

    23、720 0.6744 0.0085 0.0134 20021113 0.6760 0.6550 0.6616 0.0210 0.0138 20021114 0.6650 0.6585 0.6627 0.0065 0.0134 20021115 0.6701 0.6620 0.6701 0.0081 0.0131 20021118 0.6965 0.6750 0.6965 0.0264 0.0138 20021119 0.7065 0.6944 0.6944 0.0121 0.0137 20021120 0.7115 0.6944 0.7087 0.0171 0.0139 20021121 0.

    24、7168 0.7100 0.7124 0.0081 0.0136 20021122 0.7265 0.7120 0.7265 0.0145 0.0136 20021125 0.7265 0.7098 0.7098 0.0167 0.0138 20021126 0.7184 0.7110 0.7184 0.0086 0.0135 20021127 0.7280 0.7200 0.7228 0.0096 0.0133 20021202 0.7375 0.7227 0.7359 0.0148 0.0134 20021203 0.7447 0.7310 0.7389 0.0137 0.0134 200

    25、21204 0.7420 0.7140 0.7162 0.0280 0.0141 20021205 0.7340 0.7207 0.7284 0.0178 0.0143 2002年12月6日的单位大小(从12月4日起用N值0.0141)如下: 燃油 N=0.0141 帐户规模=1,000,000美元 每点价值量=42,000(以美元报价的42,000加仑合约) 单位大小=(0.011,000,000)/(0.014142,000)=16.88 因为我们不可能只交易部分的合约,所以,这一结果取整数为16张合约。 你可能会问:需要多久计算一次N值和单位大小? 每周一,我们为海龟准备一份单位大小表,

    26、上面列出了我们所交易的各种期货合约的N值和单位大小。头寸规模的重要性 多样化就是努力在诸多投资工具上分散风险,并且通过增加抓住成功交易的机会而增加赢利的机会。适当的多样化要求我们在多种不同的投资工具上进行类似的(如果不是同样的话)下注。 海龟系统用市场波动性来度量每个市场有关的风险。然后,我们用这一风险量度标准以表示风险(或波动性)的一个常数的增量来建立头寸。这提高了多样化的收益,并且增加了赢利交易弥补亏损交易的可能性。 注意:这种多样化在资金不足时很难实现。考虑上面的例子,假定我们所用的是一个10万美元的帐户。单位大小可能就是1张合约,因为1.688取整为1。对于较小的帐户,调整的间距太大,

    27、这样会大大削弱多样化的效果。 作为风险量度标准的单位 因为海龟把单位用作头寸规模的量度基础,还因为那些单位已经过波动性风险调整,所以,单位既是头寸风险的量度标准,又是头寸整个投资组合的量度标准。 海龟被给予限制我们可以在任何特定的时间在四个不同的级别上持仓的单位数目的风险管理法则。本质上,这些法则控制着交易员可能带来的全部风险,这些限制在亏损延长期间以及价格异常波动期间使损失最小化。 价格异常波动的一个例子是1987年10月股票市场崩盘的第二天。头一天晚上,美联储将利率调低了几个百分点,用以提振股市及国民的信心。海龟在利率期货上满仓做多:欧洲美元、短期国库券及债券。第二天损失惨重。在某些情况中,20%-40%的帐户净值在一天之中就蒸发了。但是,如果没有最大头寸限制,这些损失会相对更大。 最大头寸限制为: 级别 类型 最大单位 1 单一市场 4个单位 2 高度相关市场 6个单位 3 低度相关市场 10个单位 4 单向交易-多头或空头 12个单位 单一市场-每个市场最大为4个单位。 高度相关市场-对于高度相关的市场,在一个特定方向上最大可以有6个单位(即,6个多头单位或6个空头单位)。高度相关市场包括:燃油和原油;黄金和白银;瑞士法郎和德国马克;短期国


    注意事项

    本文(补充经典程序化交易策略.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开