期货海龟交易公式 期货海龟交易法则
海龟交易法则的加仓方法,为啥以波动性作为间隔
这个问题我认为问的十分到位!为了解释这个问题,我把海龟交易法则中关于头寸规模、入市规则和止损规则又都细细的品了一遍。这么一琢磨对我的启发也不小。这次为了解答这个“加仓间隔”的问题,有一部分以前没看出来的内容也被发掘了出来。
不过,现在研究海龟交易法则的人那么多。我的观点也只能代表一家之言,难免偏颇。各位看官姑且观之吧。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
总体来说,海龟交易法则中,加仓部分为什么要以波动性为间隔?
我认为,这主要是因为海龟的波动性中已经设计了头寸规模。而头寸规模又与止损规则相关。所以,在波动性的表象下,加仓过程其实是以风控管理为内核的一个操作行为。不过,这里也潜藏着一些深层次的东西。
下面我就把我的看法展开。
我们先从海龟的开仓规则开始讨论,然后进一步讨论到加仓上。
海龟的原始开仓规则包括早喊困两部分,书中称为入市策略,如图:
简单说,海龟就是通过突破唐奇安通道来发出开仓信号的。
但有一点我们需要注意的是。海龟的两个系统中只有系统2提到了加仓规则。而系统1只论述了信号的甄别。这里我就不浪费篇幅去贴海龟的原文了。建议大家找来海龟这本书对照着看。这段在书中的第232页。
这里,我认为有必要先开个小差,我们先来聊聊海龟的系统1。
系统1对信号的有效性进行了区分,它们分别是——盈利性突破和亏损性突破。书中并没有定义其他形式的突破,所以,我们可以理解为一旦系统1发出了交易信号,那么后续对这个信号的判断就只有“盈利性突破”和“亏损性突破”的二元定义。这与持仓是否处于盈利无关。
我们先看一下原文的表述:“假如上一次突破是一次赢利性突破(也就是可以带来一次赢利的交易),那么系统1的当前入市信号将被忽略。”
从字面上理解,由于唐奇安通道本身是在描述不断创出的新高或新低点。如果,以价格突破唐奇安通道高点(以上涨为例)为信号的话,那么价格不断创新高的过程,可以视为系统在不断发出信号。海龟不可能每个创新高的时点都做多。所以,只在第一个突破的时候买进去。这个信号被视为有效信号。后面再突破就不再买了。也就是说系统1更多的情况是只有底仓而不加仓的。
我们再研究一下亏损性突破的定义:如果突破日之后的价格在头寸有机会退出获利(根据10日突破退出法则)之前发生了2N幅度的不利变动,这就陆念被视为一次亏损性的突破。
这其实是说,当仓位建好后,在不利方向的2N位置设置个初始止损。(不了解N的意思的朋友不用急,我后面会详细说。现在我们先暂时把N理解成为N个最小变动价位)
如果这个初始止损被触发了,那么产生这次操作的突破信号就叫做亏损性突破。
根据规则,我们可以看到:系统1就是在等待开仓机会,设好初始止损和持续跟踪中完成交易的。
我们再来看看系统2的渗亮入市规则:
“如果价格超过55日最高价,那么,海龟就会在相应的商品上买入一个单位建立多头头寸。如果有一个信号显示价格跌破了最近55日的最低价,海龟就会卖出一个单位建立空头头寸。
对系统2来说,所有突破都被视为有效信号,无论上一次突破是亏损性还是盈利性的。”
在系统2中,已经不考虑盈利性突破还是亏损性突破了。只要是突破,就被认为是有意义的。
为什么?!
为什么系统1就要区分而系统2就不区分了?
我认为,首先回答了这个问题才能从更深的一个层次去理解海龟加仓的逻辑。
我们看海龟的系统1和系统2,本质上其实就是两套趋势跟踪系统揉在一起。一个是参数较小的敏感系统,一个是参数较大的迟钝系统。
相对迟钝系统,敏感系统会发出更多的信号。由于市场中单边趋势行情并非很多,那种“恰到好处”的波动很容易将系统1频繁的清洗出场。
即使是一个标准的单边趋势,其过程中也难免出现过大幅度的反向运动。这种反向运动不仅会结束盈利持仓,甚至会给出反方向的开仓信号。而这种反方向的开仓信号,通常又会产生2N幅度的亏损。
可以说,海龟本身已经考虑到了敏感系统的不稳定性。所以,它并不在系统1上加仓。这一点对我们也有借鉴意义。那就是,敏感参数构成的系统最好不要通过频繁的加仓来捕捉趋势。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面,我们在讨论系统2的加仓思路前,先做一些铺垫。
再讨论加仓规则前,我们要先把海龟的仓位计算和止损规则研究一下。
海龟是通过计算交易标的的“真实波动幅度均值(ATR)”,并结合资金回撤幅度来计算下单量的。这体现了海龟将波动性与风险控制结合起来的思想!我认为这是有很大前瞻性的思想这个思路在我的文章《干货!给期货新手讲一个简单易用的资金管理方法》也有涉及。
接下来我们讨论一下具体的公式,以及存在的问题。
要计算真实波动幅度均值(ATR),要先计算“真实波动幅度(TR)”。
公式为:
TR= MAX(H- L, H- PDC, PDC- L)
H-当日最高价;L-当日最低价;PDC-前个交易日的收盘价,简称:前收价
简单说,就是当日的高低价差、最高价和前收价的价差以及前收价和最低价的价差中找到对大的那个数,作为当天的真实波动幅度(TR)来用。(这要在日线收盘后计算。)
这里出现了问题一:作为现代市场,很多流动性较大的品种,其TR通常为当日最高价与最低价的差。
我们看一下示意图:
除去比较极端的情况,比如春节、十一假期后开盘。这种前收价在当日高低价以外的例子,在如今的期货市场上已经不是很容易出现了。即使出现了,由于在计算ATR时又进行了一下平均,其对最终结果的计算的影响也已经微乎其微了。
我在想,海龟为什么在计算TR的时候,要考虑前收价呢?可能是因为当时的市场,日线级别出现大幅度跳空的情况比较常见。为了将跳空的尺度计算到风险控制模型之中,必须将前收价与当日高低价的差值进行比较,并取大者。
其实,从这个片面的角度,我们也可以看到海龟系统与如今市场节奏上的不同。在计算如今市场的波动幅度的时候,我们也应该与时俱进为佳。不过,原版海龟的这一步计算也不是不能用。
然后,在计算N值的公式上,出现了第二个问题:如果选取不同的起始日,计算出来的N值将会出现差异。
先来看一下N的计算公式:
N=(19× PDN+ TR)/20
PDN-前个交易日的N值;TR-当日的真实波动幅度值
“由于公式中需要前一日的N值,你在首次计算N的时候不能用这个公式,只能计算真实波动幅度的20日简单平均值。”
也就是说,如果我们选择的起始日不同,其对应的起始N值就会不同。
我们用原文中的数据举个例子:
由于首个N值是用真实波动幅度TR的20个平均值计算的,不同的日期,其均值取值范围不同,具体的数值肯定也会不同。而后面的N值则都是在这个基础的N值之上进行计算,难免就会出现误差。
所以,现在很多软件中ATR的计算直接就用20个TR的均值了。而不是再生搬硬套这个N的公式了。
所以,为了有所区别,海龟计算的咱们还叫N。而单纯用TR平均计算出来的咱们以后就叫它ATR吧。
海龟们得到N之后,就要用它来计算下单量了。
公式为:
头寸规模单位=账户的1%/(N×点值)
用书中的例子计算:
当N= 0.0141;账户规模=1 000 000美元;民用燃油点值= 42000美元
头寸规模单位= 1 000 000× 1%/(0.0141× 42000)=16.88
取整为16份合约。
好,现在要回忆一下上文中,咱们讨论系统1的时候提到的初始止损了。也就是2N的止损空间。
如果下单16份合约做多,止损跌2N的话,这次交易将会亏损:16×42000×2×0.0141=18950.4美元
我们再算算比例:18950.4÷1 000 000×100%=1.895%≈2%
到这应该就能明白了吧,海龟的止损其实是配合着资金管理的。其目的就是根据行情的波动幅度,在尽可能包容行情折腾的前提下,让单次亏损的资金控制在总资金的2%以内。
这让初次分析海龟的朋友容易混乱。它等于在一个环节里处理了包括:市场波动、风控计算(通过下单量计算实现)、止损点位确认等多个任务。
那,这与我们问题中的加仓有什么关系呢?
这涉及两方面问题,我们接着讨论。
=========================================
首先,我们从书中的例子入手。
在书中的第236页,关于『止损标准』这一段,如图:
我们可以看到,加仓的点位都是在初始位置上按1/2N的间隔累积的。而止损价则是入市价反向2N的位置。
也就是每一次新开仓,如果成交后,行情折返并触及止损,则该笔交易将亏损总资金的2%。
我们逐个计算一下:
第四个单位:30.10- 27.70= 2.4;2.4÷1.2= 2(N) (N=1.2)
第三个单位:29.50- 27.70= 1.8;1.8÷ 1.2= 1.5(N)
第二个单位:28.90- 27.70= 1.2;1.2÷ 1.2= 1(N)
第一个单位:28.30- 27.70= 0.6;0.6÷1.2= 0.5(N)
总计亏损:2+ 1.5+ 1+ 0.5= 5(N)
也就是说,开四个单位的仓,总风险理论上为5%。
也就是说,海龟的这个加仓其实是在考虑总风险控制的基础上,来进行分步加仓的。
而每往上增加1/2N,行情就有可能提前折返而无法触发新的买入位置。这在一定程度上将降低亏损的机会成本。
比如,行情只启动了第二个单位就折返了。此时两个单位都止损,其总风险为3.5%。如果,我们在最开始启动的位置直接买两个单位(而不是一个单位)的话,总风险将是4%(虽然初始止损位更低一些)。这样比较起来,虽然进场位置更不利了一些,但总风险其实在同等仓位的时候更小了点。而且,从行情能够到达第二个买入位来看,潜力比在价格只到第一个位置时更强势了一些。
我们可以这么考虑,当行情涨了10%的时候,我们可能还没什么感觉;当行情涨了20%的时候,我们觉得行情已经有启动的可能了;当行情涨了30%的时候,我们确信上涨趋势要来;当行情涨了40%的时候,我们处于上涨趋势之中;当行情涨了100%的时候,我们已经大幅获利。
这也就是正反馈思维的核心,每一个顺势的强化都被认为是在继续增强中。所以,海龟的加仓可以理解为正反馈思维的具体化。
第二个层面:
费斯在书中讲过这么一句话:
这表明,如果趋势出来了,却没能赚到足够多的钱,那么最终海龟是难逃亏钱的命运的。
这表现在两个方面,一个是趋势必须把握到,不能错过;另一个就是把握到的趋势,必须尽可能的多赚。
因此,海龟设置了系统2。通过更加迟钝的系统,来把握必然出现的趋势。即使系统1被震出场,那么系统2也必将把趋势把握到。
但把握到趋势还不行。费斯的潜台词是,迟钝系统启动代表出大趋势的可能性就会大于系统1。那么,必须通过尝试加仓的模式来尽可能的去把握利润。
从这个角度,也就解释了,为什么系统2有加仓而系统1却没有。
因为两个系统的作用是不同的:系统1是在尽量规避噪声的同时,把握行情;系统2则是在把握行情和风险可控的前提下,尽可能多赚。
好,啰嗦了半天,我们最后总结一下回答。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
海龟的加仓方法,为什么以波动性作为间隔:
海龟的加仓可以说是一种对“相对确认”的行情“下重注”的行为。
以波动性进行加仓,一方面是在系统2的信号基础上再对行情进行一遍筛选,避免不必要的重仓;另一方面则是为了每次进场的头寸更方便的设置初始止损位服务,从而将单笔风险和总持仓风险控制住。
如果进行尝试,以波动性进行加仓的模式可以进行变通性调整。只要能够将控制风险和把握行情这两个基本原则顾及上就行。比如,利用系统2突破时,突破位置必须在1/2N以上的位置再加仓;又或者,在20日唐奇安通道的跟踪轨道侧向上加2N的位置作为进场位置,通过跟踪20日唐奇安通道的离场轨道来加满四次仓等。
总之,在海龟看来,趋势行情不多,不能错过,且一定要尽量多赚。至于形式,只要遵守那两个基本原则,可以变通。
好了,啰嗦了很多话。其实三四段内容就可以总结。但是,如果只有三四段话可能也会有人看不明白。就当我这个文章是在梳理思路吧。
如果您认可我的文章,请帮忙转发一下。让更多感兴趣的朋友看到。如果我的文章能够给大家更多的启发,我将不胜荣幸。
期货交易,唐奇安交易系统(海龟交易法则)
最高点是前20天的最高价,最低纳如点是前20天的最低价,就是简单的找最高和最低点
这个是唐奇安的交易规则,而海册茄此龟交易是机械交易的统称,包括唐奇安的,还有其州迅他一些修正的
不懂再问
海龟交易法则中TR的计算
TR(实际范围)=max(H-L,H-PDC,PDC-L)
TR真实波幅MAX取最大值,里面的H-L意思就是没跳空的情况下,最高价-最低价,如果携腊是跳空高开高走,当天最低价大于昨天收盘价,最高价-昨日收盘价(此时计算出来前顷的值是比最高价-最低价要大),如果是跳空低开低走,最慧隐陆高价小于昨日收盘价,那就用昨日收盘价-当日最低价,三者计算后取最大值,其实TR和ATR都很简单,这样像后算出20天的TR值/20就是取20天来的平均TR值了,博易大师直接输:atr,就可以查看,把参数改成20就成了20日的ATR值了,不用自己再去计算,
TR: MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR: MA(TR,N);
N值取20
还要具体的例子吗?
比如:一支股票或期货商品昨天收于2000,今天最高2100,最低1980,那最高减最低2100-1980=120,当天TR值为120,如果高开如2030开盘,最低价2015大于2000,最高价2100,那最高减最低2100-2015<2100-2000,MAX取最大值就应该用2100-2000=100,当天TR为100,这样算出20天的TR值/20,平均值就是海龟中的ATR了
好累,回答得够细了吧~!全手工打字计算,低开的情况自己算吧!分给我不?
关于海龟交易法则 外汇保证金交易 单位头寸的计算问题
海龟交易法是著名的公开交易系统,1983年著名的商品投机家理查德.丹尼斯在一个交易员培训班上推广而闻名于世,它涵盖了交易系统的各个方面。这里结合A股市场详解海龟交易法。
1、市场和品种选择(买卖什么)
1983年可以交易5个市场中的21个品种,包括了农产品、金属、燃油期货、外汇,奇怪的是没有一只股票,只有标准普尔500股票指数。选择市场和品种的原则:
关联度低:也就是品种间相互影响同步涨跌的可能性很小。如金属期货和农产品期货的关联度低,相对来说金属期货中的黄金、白银期货关联度就高了。这个因素很重要,如果资金全在高度关联的市场中交易无疑会增加风险,收益曲线波幅也会增大。这一因素还会影响到后面的头寸管理。沪深A股可以说是一个高度关联的股票交易市场。
流动性好:交易的品种能很快的变成现金。
容量大:期货就要交易主力合约。容量大的市场不容易被操纵,前段时间国内某期货的非主力合约盘中出现瞬间巨大跌幅,造成很多帐户自动被平仓,损失惨重。容量大的市场才能承载大船,大资金能从容的进出不至于引起市场大幅的波动。
2、头寸规模(买卖多少)
这是决定成败的关键因素,却往往被忽略。
海龟交易法则中采用基于波动性的头寸管理策略(止损同样是基于波动性),因此必须理解波动性(用N来表示)的含意。
波动性N:实际波动幅度的20日指数移动平均。也就是我们常用行情软件中的ATR指标(一般是按简碧耐单移动平均计算的)。
价值量波动性NV:波动性代表的货币价值,通俗的讲这个波动性值多少钱。对于A股股票波动性是直接以货币计量的,最小交易单位是100股,所以NV=N x 100。对于股指期货就不同了,波动是以点数计量,必须转换成货币,NV=N x每点价值。举例说伏塌明:沪深300股指期货规定的每点价值300元人民币,因此NV=N x 300。
账户规模C:能交易价值多少的商品。C=投入的资本 x杠杆,对于A股市场没有杠杆(杠杆为1),C=投入的资本。
头寸单位U:海龟在建立头寸时每次买多少。U=(C x 1%)/ NV
实例说明:假设帐户规模为10万人民币,A股市场的股票001在某一天出现买入信号,日线上这天的ATR指标为0.55,我们应该买入多少呢?U=(100000 x 0.01)/(0.55 x 100)= 18手。
注意:N值是每天变化的,海龟只采用每周一的N值计算。
最大头寸限制:
1、单一品种(如日元)最大4个头寸单位,并称之为满仓(缺慧圆日元)
2、高度相关的品种一共最大6个头寸单位。
3、低度相关的品种一共最大10个头寸单位。
4、单一方向(做多或做空)最大12个单位,称之为完全满仓
3、入市(建仓,第一次买入)
海龟有2套入市规则,我觉得中文称为建仓更合适,正好与加仓对应起来
建仓规则1:以20日突破(也就是创20日新高或新低)为基础的短线系统
建仓规则2:以55日突破为基础的长线系统(也有资料以60日突破)
注意:以即时价格有效,不用等到当天收盘;只买入1个单位的头寸;入市之后的入市信号被忽略。
加仓规则:价格在上次买入价格的基础上往盈利的方向变化0.5N(系数在0.5~1之间),即可再增加1个单位,直到满仓4个单位.
4、止损
海龟以头寸的风险为基础设置止损,可以说有2种止损规则:
统一止损:任何一笔交易都不能出现帐户规模2%以上的风险。价格波动1N表示1%的帐户规模,容许风险为2%的最大止损就是价格反向波动2N。分批买进但按统一价格止损,按0.5N的波动加仓之后,之前的头寸止损价也增加0.5N。
双重止损:止损设在价格反向波动0.5N处,即只承受0.5%的账户风险。各单位头寸保持各自的止损价不变,某一单位触发止损后,如果市场价格恢复到原来的买入价,该单位就被重新建立。缺点是会造成更多的亏损,优点是4个单位头寸的累加风险也不超过2%
下面例举一个多头交易的例子:
股票S, 55日突破价位=100,N=4.00
统一止损双重止损
入市价格止损价相差入市价格止损价相差
第一个单位 100 92 2N 100 98 0.5N
1次加仓后
第一个单位 100 94 1.5N 100 98 0.5N
第二个单位 102 94 2N 102 100 0.5N
2次加仓后
第一个单位 100 96 1N 100 98 0.5N
第二个单位 102 96 1.5N 102 100 0.5N
第三个单位 104 96 2.0N 104 102 0.5N
3次加仓后
第一个单位 100 98 0.5N
第二个单位 102 98 1.0N
第三个单位 104 98 1.5N
第四个单位 106 98 2.0N
(如果价格跳空成交,则不影响前面的止损价:)
第一个单位 100 96 1N
第二个单位 102 96 1.5N
第三个单位 104 96 2.0N
第四个单位 109 101 2.0N
5、离市(除止损外之外的另一种卖出)
海龟有2种离市规则,一旦触发,头寸中的所有单位都要退出。
离市规则1:最近10日反向突破(多头头寸是创10日最低价,空头头寸是创10日最高价)
离市规则2:最近20日反向突破