您现在的位置:程序化交易>> 程序化交易>> 程序化老手>>正文内容

止损与价格突破与厚尾的相互关联及程序化交易为什麽能获利[程序化老手]

今天来谈谈为什麽我会认为程式交易为什麽能获利,还有停损、价格突破与厚尾之间的关联。其中有些是我自已的想法,有些是从网路上看到的一些想法,有些地方可能不会很严谨,但大家可以参考看看。

首先,我认为市场不是完全的随机市场,裡面隐藏某种程度的不随机性,若是市场是一个完全随机市场,像一个公平的硬币如此随机,再怎麽利害的程式交易,也不可能长期在这个市场获利。

但市场的不随机性在那裡? 不同的市场有不同的不随机性,所以也可能发展出不同的策略,但目前我观察的所有市场,都有一种共通的不随机性---「厚尾」。 什麽是厚尾? 若是以当天的涨跌幅来看,也就是"当天的收盘价 - 当天的开盘价",有正有负,有高有低,若是以大数法则来看,涨跌幅愈大,机率愈低,若是一个随机市场,整体应该会呈常态分佈。 但实际上,市场总会有大涨或是大跌的时候,虽然机率不会很高,但仍比常态分佈的理论统计值高,也就是在两端尾部会比较厚,也就是所谓的厚尾现象。

以下图为例,市场为 @ES.D (mini S&P 500) 的当天的涨跌幅分佈图,柱状图是实际分佈,分佈在正负40点之间,若是大于正负40点,以正负40点计,而紫色则根据分代的标准差,算出来的常态分佈。我们可以在两端,看出市场分佈明显比常态分佈高一些。 这个现象在个个不同市场都很容易看到,目前我看的黄金、台期指等都有,而且在不同的 time frame 也是有,day, hour 和 minute 的不同 time frame,像YI (小黄金) 的day、hour、minute frame 都可以看到厚尾现像。


为什麽会有厚尾,你可以说是因为市场经常会有恐慌性的卖压、盲目的追高,媒体的推波助澜,或是在真实世界上,有太多的突发事件,或是说这是因为黑天鹅、混吨、蝴蝶效应,都可以,只要知道厚尾现象在真实的交易市场是存在的。

--------------------------------------------------------------------------------

说明完厚尾,我们来看停损,停损在程式交易中的威力,可以用「死多头、死空头」来说,「死多头、死空头」的原始概念来自这篇文章「死多头死空头都获利」(http://cctrading.blogspot.com/2004/06/ds1.html),原文的故事说的比我精彩,若是有兴趣,可以看看原文。

有两个人,一个是「死多头」,另一个是「死空头」。 所谓「死多头」就是不管怎样开盘就作多,并设停损,例如 USD $200,若是没有触动停损,则在当日收盘时平仓。 以 TradeStation 与 ES.D 为例,程式如下:

代码: 选择全部
if (date>date[1]) then Buy ("LE") next bar at market;
if (Time=1500) then Sell ("LX") next bar at market;
SetStopLoss(200);


以过去 5 年ES.D, time frame = 15 min 为测试数据,获利 $4,625


所谓「死空头」就是不管怎样开盘就作空,也是设停损,USD $200,若是没有触动停损,则在当日收盘时平仓。 程式如下:

代码: 选择全部
if (date>date[1]) then SellShort ("SE") next bar at market;
if (Time=1500) then BuyToCover ("SX") next bar at market;
SetStopLoss(200);


以过去 5 年ES.D, time frame = 15 min 为测试数据,获利 $26,525。


这裡要注意的是,这裡的获利是没有计算手续费、滑价,主要是集中在市场特性与策略理论的探讨,因此在真实交易中,这些策略需要用更严苛的条件作测试依据。

基本上,「死空头」获利比较多,但不管是多头或是空头,都是获利的,基本上,这要归功于「停损」的威力。 但为什麽停损可以製造出更大的获利空间呢? 我认为是因为市场有某些程度的不随机性。 若是一个完全随机的市场,如赌场,你再用怎样的停损策略,也很难在赌场创造获利空间。

为什麽市场的不随机性与停损可以创造获利空间,我们先想像市场的涨跌幅分佈是左右对称,但有厚尾现象,不管作多或是作空,都是一半猜对的机会,假设是作多,市场也是多,则会赚钱,而市场是空时,则是赔钱,而且若是在厚尾两端,则是大赚大赔。

若是大数法则,最后应该会不赚不赔(不考虑手续费、滑价),但若是有停损下,大赚仍是不变,但避免了大赔的机会,再强调一次,停损只会在不是完全随机性的市场有用,若是完全随机的市场,什麽时候停损都是一样的期望值。 举例来说,若是你已经赔了100元,若是完全随机性的市场,未来再赔100元 (全部赔200元),与未来赚回100元 (全部不赚不赔) 的机率是一样的,因此不管你有没有停损,最后获利的期望值都是-100元。

但若是有厚尾现象的不完全随机性的市场,在已经赔了100元的状况下,未来赚回100元 (全部不赚不赔)的机率,可能会与未来再赔100元 (全部赔200元)与未来再大赔400元 (全部赔500元)的机率加总一样。 若是停损,损失是100元,但若没有停损,假设 0.5 机率赚回100元 ,0.45 机率再赔100元,0.05 机率是再大赔400元,如此全部的期望值是 -100 + 0.5 * (+100) + 0.45 * (-100) + 0.05 * (-400) = -115。 所以因为厚尾现象,在达到停损点时,输赢的期望值已经不是对称分佈了。

有些人作停损后,因为盘面拉回,就后悔太早作停损,但其实在有些情况下,没有作停损,会让你陷入大赔的风险中。

简单的说,停损避免让策略掉入赔钱的厚尾,保留赚钱的厚尾,因此可以创造出获利的空间。

--------------------------------------------------------------------------------

再来说「价格突破」与停损的关系。既然「死多头」与「死空头」都有可能赚钱,那可不可以一起作,在开盘时,同时作多与作空,并依开盘价加减一个固定点数(如 4 点,在 ES.D 每点 $50,等于 $200),作为高点与低点,当价格涨过高点,「死空头」就平仓,当价格低过低点「死多头」就平仓,当日收盘时,若是手上还有仓位,就平仓。

这样的「死多头」与「死空头」合作策略来看。 一开始的仓位是 0,也就是一开始其实不用买卖。等到价格涨过高点,因为「死空头」已平仓,所以剩「死多头」多头的仓位,因为一开始的仓位是 0价格一涨过高点,就要作多,买一口进来。类似的,若是低过低点,则是作空一口,当日收盘时,若是手上还有仓位,就平仓。

从这样来看,「死多头」与「死空头」+停损的合作策略其实就是「价格突破」策略,开盘价加减一个固定点数,作为高点与低点,当价格涨过高点,就作多,当价格低过低点,就作空。 以下是对应的 TS 程式码,基本上这个程式码是可以反手的,等于为「死多头」+「死空头」的合作策略加上再进场机制。

代码: 选择全部
var: OpenPrice(0);
 
if (date>date[1]) then begin
    OpenPrice = Open;
end
else if (Time<1500) then begin
    Buy ("LE") next bar at OpenPrice + 4 stop;
    SellShort ("SE") next bar at OpenPrice - 4 stop;
end
else if (Time=1500) then begin
    Sell ("LX") next bar at market;
    BuyToCover ("SX") next bar at market;
end;


整体获利是 $43,100,比「死多头」+「死空头」($4,625+$26,525 = $31,150),应该是因为可以反手的关系,因为可以反手,当一边避免赔钱的厚尾机率,另外一边以反手增加赚钱的厚尾机率。


所以「价格突破」策略本身就有停损的机制,而「价格突破」比「死多头」「死空头」分别作、分别停损的策略好处如下:

1. 减少交易次数:真实交易是需要手续费的,若是我们同时有「死多头」「死空头」,则仓位其实是0,我们并不需要买卖交易。

2. 增加获利稳建度:一般市场在某一段时间可能是偏多或是偏空,若是偏空,对「死多头」则是比较不利,配合停损,可能只是降低损失,但可能无法获利,但若是「价格突破」,则是两个方向都考虑到,获利当然比较稳建。

简单来说,「价格突破」策略,因为厚尾的市场不随机性,是一个具有停损,且有获利潜力的策略。

--------------------------------------------------------------------------------

再来谈谈「交易圣杯」或是程式交易为什麽能帮你赚钱,基本上,程式交易是希望能够找到某些策略,依市场的不随机性,找出最大的可能获利性。 有些程式成功,有些程式失败,有些程式很複杂,有些程式很简单,有些可以应用在较多的市场,有些只能应用在某个特定市场。 无论如何,创造获利空间 (trader edge)是我们追求的目标,其实trader edge不必要很高,但要很稳建,就像赌场庄家一样,每一次的 house edge 都不必很高,但经过大数法则与资金的管理,让赌场不止稳赚不赔,而且是大赚其钱。 目前在市场的不随机性,现象最一致的就是厚尾吧,而利用厚尾来创造获利空间,我想「价格突破」只是其中的一种,但它也应该是最简单一种,因为简单,正是大巧不工,可以适应的市场与稳建性也是相对的高。

若是能够有一个稳建的 trader edge,配合资金管理与市场风险分散,这样就像赌场的庄家一样,可以利用程式策略帮你稳定的赚钱,若是能达到这个的管理与目标,应该就是所谓的「交易圣杯」吧。

最后,在说明一下,这裡的程式只是为了说明停损、价格突破与厚尾的关系,说明即使是一个简单的策略,只要能够掌握到市场的不随机性的优势,就有可能获利。

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198   点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容