哈喽大家好,我是源码分享者,今天开始和大家一起学习下量化交易的圣经之作-海龟交易法则(美)柯蒂斯·费 思。因为海龟交易法则内容及延伸内容很多,所以准备出一个系列写这个,最后系列结束时分享一个改进的实盘变异海龟交易法则。
今天我们来学习下海龟交易法则中的资金管理
首先看下完整代码
////////////////////////////根据风险率和ATR确定交易手数
MinPoint = MinMove*PriceScale;//最小变动单位=当前公式应用商品的最小变动量*当前公式应用商品的计数单位
АVgTR = XАVerage(TrueRange,ATRLength);//ATRLength(20)周期的ATR值
N = АVgTR[1];//N=上一根K的ATR值
TotalEquity = Portfolio_CurrentCapital() + Portfolio_UsedMargin();//按最新收盘价计算出的总资产=按当前BAR开盘价计算出来的可用资金+当前持仓保证金
TurtleUnits = (TotalEquity*RiskRatio/100) /(N * ContractUnit()*BigPointValue());//交易单位=按最新收盘价计算出的总资产*风险比率(0~100%)/
//(上一根K的ATR值 *当前公式应用商品的每张合约包含的基本单位数量(1手多少吨)*一跳多少钱)
TurtleUnits = IntPart(TurtleUnits); // 对上面计算出来的TurtleUnits(交易量)小数取整
上期介绍了ATR,我们再次把ATR的原理图贴一下
海龟交易法则是典型的易损定量的代表,翻译成白话就是可能亏的多,我就少买点,亏不了多少钱的我就多买点,这样可以把所有交易的风险控制在一个合理的范围,A交易可能亏100,B交易可能亏1000的单子如果使用同样的10手仓位,如果都亏损的话就是分别亏损1000和10000,但是如果A用10手,B用1手,如果都亏损就是全亏损1000,这样风险度就相同了。如上图所示,该区域的ATR波动范围是36~72(底部右侧框中显示),然后由于ATR的不同,该截图内的四次开仓分别是3手,4手,5手,7手。
说完了开仓时手数的限定这个资金管理,再来说说加仓和止损部分,接上篇文章加仓和止损说明。
“在第一个头寸成交以后,海龟们会以2N作为初始止损。由于1N相当于账户资金的1%,因此初始止损的风险为2%。
如果价格顺势运行0.5N触发第二个头寸入场,海龟们会将距离新的入场点2N的位置作为整体止损。此时头寸1的止损变为1.5N,头寸2的止损为2N,账户总风险为3.5%,单位头寸平均风险由2%降至1.75%。
当价格继续顺势运行0.5N触发第三个头寸入场后,整体止损也会继续上移0.5N。这时头寸1的止损为1N,头寸2的止损为1.5N,头寸3的止损为2N,账户总风险为4.5%,单位头寸平均风险降至1.5%。
如果第四个头寸也能顺利成交,整体止损再度上移0.5N。头寸1的止损为0.5N,头寸2的止损为1N,头寸3的止损为1.5N,头寸4的止损为2N,账户总风险为5%,单位头寸平均风险降至1.25%。”
可以看到,如果风险度是N,当仓位越来越大时,总仓位风险度有个最大值,单仓位风险度在逐渐降低,且有盈利时才会加仓,更好的防范了风险,符合浮盈加仓这一理念。
该部分资金管理是海龟交易法则的核心,以损定量也是一种非常实用的技巧,笔者一直也是用这种方法,小时级别单次交易预亏损额度是总资金的0.5%,日线级别是1%,这样就算连续亏损7~8次也能保证不会大伤,因为总资金一直回撤的话,N%的风险度的出来的预亏损额度也是逐渐降低的。
下次我们分享海龟交易法则开仓部分的唐奇安通道突破。
好了,本次的分享就到这里,我是拥有海量高质量实盘源码的量化交易者,网罗全网付费及私卝密量化源码,展现各种各样的量化策略和交易知识,提供无限的交易可能,欢迎大家多交流多分享。
感谢分享