通过调整交易系统验证交易界道理

论坛 期权论坛 期权     
期权匿名问答   2022-1-27 15:19   12487   8
之前写了一个粗糙的短线程序的雏形,用过去10年行情回测,思路和具体回测情况分享出来了,还没看的可以点击下面链接查看哈。
点击此处查看
    看我的东西,大家就当闲聊了哈。这里尽力调整了,但是并没有什么效率。效果不好,也是教训,发出来大家看看没准也能参考。
    上文刚发,就有很多人给我讲这个逻辑的缺点,感谢大家。我的思路就就先写个核心雏形,之后会根据这个雏形,让每个环节都更好一些。下面就聊一下改善的过程。其实就是自己的行动笔记。最后的结论是自己绝对不会采用这个思路去交易。
//---- 然后我就用大量的数据和一整天的白忙活,先总结,验证交易界的一些道理,后面细说。
总结和验证:
1、盈亏比不高的交易系统,且胜率不高的交易系统,效率太低。这个不用我证明,大家都知道。如果有返佣,且不会亏,倒是可以用来刷手续费收入的好工具。但是和真正盈利的好系统相比,这点儿手续费也算了吧。反正我不用哈哈

2、这个系统赚点儿就跑,没有使用投机界的一句道理叫“截断亏损,让利润奔跑”。虽然怎么回测都不会亏,但是不亏也没达到赚钱的目的,没意思。就像利弗莫尔前面七八年自己就做短线,怎么也赚不到钱。我不是说短线交易系统不好啊,而是我这次想到的这个短线交易思路不中用,很不好。之后的自动交易程序,控制1单的短线,最小的波段就抓日内波段。逐渐放大,小时线级别的刷单短线暂时先不弄了,但是有思路我肯定要验证一下的。但是先从效率更高的开始交易。也说不准哪天就弄出效率更高的频率更高的短线系统了呐。

3、雕琢这个系统的过程中做了大量的尝试,最终发现加入更多条件,不一定比简单的条件更好。条件变复杂,效率反而降低。下面有详细过程,感兴趣可以看看。
4、利用筹码管理,确实有助于提高效率,在这么烂的交易思路下都能提高盈利效率。

5、总有意外发生,总要有对策来对付意外情况。
6、除了交易策略本身,一定要考虑交易成本,点差、手续费之类的。否则要出大问题,尤其对于短线思路交易者。为什么下文也有讲到了。选择点差低的老经纪商也是必要的。
7、着眼小行情的交易系统,一般都会错过大行情。盯着一处看,其它地方就会变成盲区。所以选择适合自己的方式,盯紧它,把握住它就好,不要想着一涨一跌全都抓到,不可能。(也许可以让不同的交易策略一起运转)
8、我换了3种趋势描述方式,区别不大。
9、我尝试用4小时方向和日线方向共振,曲线更好看一点儿点儿,但是呐,效率仍然很低,直接放弃。还是得截断亏损,让利润奔跑。

10、我做了简单的数据统计。因为短线在5*24小时的市场中,开盘前启动交易系统,周末或者休息日来临前,关闭交易系统,清空持仓,很重要。如果刨除直接跳空的损失,结果可能会好的多。下文有讲,之所以用“可能”,是因为没有排除错过跳空高开的额外盈利。
11、回测过程种我产生了幻觉,认为某一种方式可能更好,但是去检验后,发现是自己错了。我们在交易实战中经常会产生幻觉,要警惕这一点。
(下次还是直接尝试弄盈亏比好,好到不担心对错,不光简单,还更容易实现)
//---细说,下面就是我的行动和思维过程,从这些中总结出的上面的情况。也不能说是总结,其实都是交易界大家都心知肚明的道理,算是验证一下道理吧~
    下面开始雕琢这个雏形程序,让它变得更好。具体情况和回测报告都在上面链接中说了,如果只针对这些报告内容改,其实是有漏洞的。因为这个日内短线程序,必须在5*24小时交易的市场中,周一开盘前打开,然后周末收盘前或者节假日收盘前就清仓关闭程序。开盘期间止损很小的,但是一旦有了持仓,周末没走,重大事件跳空,就可能大盈大亏,想改掉造成这种大盈亏而去调整逻辑是没用的。当然也不能过度优化,一个粗糙的木雕轮廓,再进一步雕琢好看一些,不会改变核心。不追求完美,符合价格波动的特征即可。对错不是核心,也并不重要。

    首先梳理交易程序的轮廓,让它在脑子中更清晰。然后我们再去针对10年7000多笔交易的数据分析,来改善一些明显的可以轻易解决的问题。之后发现没什么分析价值哈哈。毕竟交易思路效率就不高,也分析不出啥来。主要的东西回测报告都有了。
==========
先说程序轮廓:
1、方向判断。4小时K线往哪边走,就选择哪个方向做。

2、入场、出场逻辑。15分钟Stoch震荡指标的金叉死叉,附带一个简单信号过滤器。肉眼一看就知道机会好不好,机器不行,必须过滤一下。逻辑核心是一个4小时里就16根15分钟K线,上上下下有一次就不错了。

3、频率控制。每根4小时K线的时间段内,无论盈亏,只有一次交易机会。

4、仓位控制和风险管理。暂无设置,先用最小固定手数0.01手去回测。这样还可以,才能去想仓位控制和风险管理的事儿。
    目前这个程序可以选择三种方式计算仓位。
    一是固定仓位不变(仅仅初期回测系统时使用)。
    二是按照资金量去计算仓位(一般不用,因为资金回撤后,计算的仓位变小了,很难回来)。
    三是用固定的单笔亏损金额和止损位置计算仓位(实战时用这个,因为亏损额度不变,入场点好时止损小,计算出来的仓位就相对大,位置不太好时止损较大,计算的仓位也相对较小。总之每笔亏损金额不会变,而且位置极好的时候,止损非常小,仓位也要大很多,亏损金额不变的情况下,如果胜利了盈利爆发增长,这个优点并没有没有体现在上次回测之中)。
5、额外的止损保护。逻辑本身并没有止损,只有出入场逻辑。但是如果下单之后,跑交易程序的电脑或者服务器断网了!市场出现重大波动我们这里不知道,那就麻烦了,所以每单发往交易服务器时都是挂着一个不容易打到的止损的。就算断网后出现罕见意外,也不会有特别重大的损失。需要统计7000笔交易中有多少是打掉这个止损的,通常都是开盘跳空的那种损失,实际应用中不会出现,看看程序这个环节是否需要调整。这里是离场和仓位风控之外又套了一层风控,谨防意外。
==============

    程序轮廓梳理完成后,花了一阵子时间让10年历史行情在图表中一跳一跳快速走完,7000笔订单注意审查,确认了一下,程序确实是按照设计的逻辑交易的。毕竟10年的行情,重新跑,这个环节需要消耗大量的时间,时而暂停写笔记记录没问题,时而思考有没有更好的解决方案。
    对了,正常交易日回测的时候,默认截取当前点差当为交易成本,周末回测时,也是默认当前成本,所以需要修改,平时点差在交易活跃时段欧元是1点左右,偶尔时0点不要点差,偶尔是2点,很少看到3点。周末我回测改成2点。7000笔点差翻倍,资金曲线一个模样,但是利润少了70点以上,7000笔0.01手,共70手,增加了70点。我估计这个交易程序,如果放到高点差的投机商行,肯定就是亏损的了,怎么做怎么亏,因为点差活跃时段可以看到17点...我把回测点差改成7,就出现了稳定的亏损曲线。短线交易频率较高的系统,真的不能在高点差平台做。
过程中发现了一些问题:
1、交叉信号筛选可能过于严苛,但是测试后发现并不是。
    似乎对交易信号筛选过于严苛,导致错过很多不错的机会。于是就放宽震荡指标交叉范围,上下各放宽10%。
    先只放款入场的,不放松离场的,看看效果有没有变得更好,修改参数后重新这10年历史回测。
    结果增加了1400多笔交易,情况却变差了,账户不亏不赚。如果只刷手续费用,倒是也有利润。但是交易实战绝对不行。这个想法被数据验证不好。
    所以交易信号稍微严苛一些也还好,平均一天2.7次入场,也不算太严苛。这个就不改了。
    测试完成之前,盯着屏幕K线变动,我主观上认为放松要求会更好,主观又错了,数据证明我很傻,是一种幻觉。而我们经常有这种幻觉,也是交易的难点。总是觉得错过了好点位,但是如果用这个逻辑想不错过这些好机会,那同时也意味着会在更多不好的点位交易,造成的损失比抓这些机会的盈利要大。所以抵制幻觉,尊重实事。
2、对价格位置的限制。发现加入限制后反而更不好。
    如果是多单,我要求开仓时的开仓价大于上一根已经收盘的4小时阳K线的最低价。如开空单,则要求开仓价格小于上一根4小时K线的最高价。否则4小时周期的波动方向短期就被打破了。
    在想如果做多,价格冲高后回踩产生的金叉信号,很难达成盈利,所以开仓时加上要求开仓价就在已经收盘的上一4小时K线的波动区间内。加上这种限定后再试一试。
    结果显示,虽然还是没亏,效果还是变差了,增加限制条件,反而结果变得不好了。于是就删掉了这个限制。
    反而刚开始就按照自己认知的简单交易道理去写,简单些反而更好。
3、回测时跳空高开、低开,造成的突然的大额度损失。
    没办法。但是实际上并不需要担心,因为在5*24小时波动的外汇市场,这个短线程序如果雕琢满意了,使用时,会在开盘前没有持仓时,启动程序,在周五停盘周末到来之前,就清空持仓,暂停程序了。
    后面改变仓位后,所有的大幅度回撤都是因为仓位重,还赶上周末跳空,10年,一年52个星期,10年520个星期,就有520次跳空的可能。这个没办法,也不用担心。休息日来临前清仓就好。
4、错过大波动。
    没办法,短线程序的取舍,就注定会错过这种波动,以后再写一个专门抓这种波动的程序,为了多个程序一起用就解决了,先雕琢好这一个短线的。
5、趋势描述方式改改会不会更好?
    我只描述了创新高时,且4小时K线收阳线,才等待买入信号,空头反之,需要短期内创新低,且4小时收阴线,才等待做空信号。
    但是这并不符合趋势的定义,多头趋势是波峰在不断创新高,波谷也在不断抬高。空头正好相反。我只管一面。多头只管新的波峰,不管波谷。而空头就只管新低的波谷,不管波峰。所以就描述一下,底部也要不断太高才行。多头要高点不断太高,低点也要不断太高,空头反之。我想前辈给的这种趋势的定义,应该会不错,就试试看。同时也兼顾了最新K线的阴阳。
    哇!资金曲线变了个样子,盈利没有以前多了,但是呐,曲线图似乎更好看了,订单之前是交易了7080次,现在只有5521次,少了1559笔订单。只想每天相当于2.7笔订单,现在平均每天大约2笔订单,胜率变化不大。截图和雏形阶段比较一下,虽然现在也还是雏形阶段,距离成熟还远。
    之前的资金曲线:


    这样改动后的资金曲线:


    区别似乎不大,但是确实更平滑一点儿点儿了...吧...至少当前资金和历史最高峰值更接近了。可是第一次账户资金大幅度回调,第二种方式更深一些。
    突然想到K线阴阳,在任何趋势上都可以画K线,赶上涨势回调时收一根K线,就是阴线。所以把4小时K线阴阳的条件删除试试?只看不断抬高或者不断降低的波峰波谷?减少一层条件,会不会更好?那就试试。
    结果并没有变得更好,胜率还下降了4%,曲线图变成这个样子:


    最近的价格对市场情绪影响最大,是一种心理上的锚定效应。所以少了这条规则并不好。那就加回来。目前三种方式,盈利最强的还是最初的那种,也许第二种更舒服一些,但是盈利能力比不上第一种,而且第二种第一次大幅度回撤幅度,比第一种还大。所以折腾了半天,决定还是不改变策略,还用第一种最简单最原始的雏形。
    看起来怎么去改,都不如根据10年交易经验直接写出来的东西好....所以折腾了快一整天了,结果什么都还没改!!!
    目前都是追随短期方向,并没有用更大一级的趋势来过滤杂音,这个后面再弄。另外之后仓位和风险管理,才是最重要的,目前的对错只是浮云。
    下一个问题。
6、用大周期过滤一下?
    毕竟逆势经常会有交易信号,但是用多大的势来过滤?我选择日线吧,因为1天24小时6根K线,可能有2-3根,甚至4根是日内调整,也会产生交易信号,刚按照信号开始交易,日内行情启动,然后就亏损。所以我用简单的东西,让这个短线系统,必须和日内方向共振才能选择这个方向进行交易。也就是4小时方向和日线方向共振。
    真的会更好么?


    结果是盈利能力还是变弱了,不过资金曲线更平缓了....吧....至少第一次重大回撤没了。10年2500次左右,平均每天交易1次左右。在固定仓位的情况下,20美金做到60美金,还是不如最初的20美金到200美金。现在胜率是46.14%, 和刚开始也没什么变化,就是采用了双周期共振,让曲线看起来稍微平稳一点儿。
    过滤了一些不好的信号同时难以避免也过滤掉一些不错的信号。但是如果从曲线上选择,还是现在的样子更容易让人接受吧?
    这只是个开始。方向判断、进出场逻辑、止损逻辑都有了,还欠缺仓位计算环节。在开始仓位计算之前,我先下载详细的交易数据,对这2000笔数据做个简单统计。
    忙乎了这么半天,就加入了一个日线级别大周期筛查掉一些信号。其它的什么都没做。
7、简单数据统计。
    首先,看看有多少不是因为离场逻辑平仓的,而是打掉了止损保护。一共有37次,这37次,在实战中很难碰到,毕竟一周5天是连续波动的,一天24小时。所以把这种亏损去掉,0.01手的单子这37次共亏损113.49美金。而且以后有了仓位计算功能后,一笔单子让它最多亏2美金左右,就亏不到3美金,因为点差可能亏到2.1或者2.2美金左右。如果把这些亏损忽略,那盈利能力又大幅度提升。
    不看上面37单跳空止损的,看看交易的手数固定的情况下,盈亏大小排个序,看看分布如何。下图为获利情况分布:


    扣除37笔跳空止损后,盈利情况整体更好了,单笔最大亏损-6.49美金,最大盈利11.7美金。大部分时候看起来盈亏差不多,就是盈利在高处的更多一些。
    仓位计算的好处可大了,我们就以单笔亏损有金额限制的方式来限制亏损。每笔亏损金额如果固定。如果入场时,位置较好,距离止损比较小,亏同样多的钱,用同样的风险,计算出来的仓位就比较大。如果入场时位置比较飘,同样的风险,计算出来的仓位就比较小。如果位置不好,不光仓位更轻,而且,离场时距离开仓价也近,不光是亏损小了,盈利也小了。但是如果位置好,止损金额也不会扩大,盈利是会扩大的。
    接下来我们看看加上简单的仓位计算后是什么样子。
8、仓位计算。
    固定用最小手数0.01手来回测,是为了验证策略长期看起来还马马虎虎,最关键的其实是仓位和风险。
    下面修改程序完成,如果以单笔固定损失金额计算仓位的逻辑。让单笔离场亏损最大不能超过5美金!
    接下来我用1000美金的资金重新回测交易逻辑,单笔亏损金额限制5美金的话,连亏200次就爆仓啦!!!
    在此之前加入一条逻辑。就是如果止损点数小于4小时K线过去30根的平均波动率的1/3, 那么止损点数就等于4小时K线平均波动率的1/3。为什么呐?因为有时候止损点数太小了,5美金的亏损额度,可以计算出一个超级大的仓位,比如止损点数碰巧就是0.1点。欧元的话,就计算出来一下可以下单5手!!!价值50万美金。拿1000美金可做不了这个生意,直接爆仓!跟计算沟通就是难哈哈。
    加入这个逻辑后,再去回测,资金曲线资金曲线也不怎么样哈哈,如下:


    前期好舒服,后期都回撤回来。亲手证明这个思路还差点事儿...刷手续费都不用它。也觉得还不如就追随4小时波动。
9、如果不用和日内共振,单独追随4小时的方向。按照这个方式计算仓位,单笔投入5美金,账户总额1000美元,连亏200次爆仓。结果会有什么不同嘛?
    如下图:


    仍然没什么效率,交易次数是上面的2.8倍,盈利270多美金。交易手数之总和为230手左右,刷了460美金左右的手续费,比盈利多多了。
    这个短线思路线告一段落哈哈,绝对不会把这个应用于实战....还是先开发盈亏比好一些的短线程序。这个也是短线,但是太鸡肋了....鸡肋到只有食之无味,但是绝对不会弃之可惜,一点儿也不可惜,直接扔了就好了。效率太低了。有想法后尝试了,尝试后否认了,也是一种进步。不排除给计算机描述的不够到位,但是尽力了哈哈。
    这么烂的思路想出来就写,写出来就不亏钱,虽然也没赚钱,怎么做到的?欢迎阅读本人自己对于交易的见解,点击下面链接查看。(脸皮厚到发慌)
点击此处查看

    今天就聊到这儿了哈~
分享到 :
0 人收藏

8 个回复

倒序浏览
2#
期权匿名回答  16级独孤 | 2022-1-27 15:19:27 发帖IP地址来自 福建
我也准备写个程序来用历史数据验证交易系统,我是个小白,除了是个码农,啥也不是,说的不合适莫怪,关于“总有意外发生,总要有对策来对付意外情况。”这句我想说下自己的看法,我程序还没开始写,因为交易系统还没定论,是人工去验证的,我发现无论如何交易系统都会有不可应付的意外,针对意外调整我也尝试过,怎么调整都会出现其他意外,只能是个人决策和取舍的区别,只要考虑到这种情况,定好止损位,是不是这样理解?
3#
期权匿名回答  16级独孤 | 2022-1-27 15:19:47 发帖IP地址来自 中国
简单说,就是怎么亏都不疼哈哈,比如昨天一根大阳线饱满,昨天低价很难打破,今天找机会入场,止损直接拉到昨天最低价下面,要求打到这个止损也不疼,用打算亏了不疼给的钱,和这个止损点数,去算算应该下多少单子。
4#
期权匿名回答  16级独孤 | 2022-1-27 15:20:39 发帖IP地址来自 北京
嗯,明白,心疼亏损是做不好的
5#
期权匿名回答  16级独孤 | 2022-1-27 15:21:25 发帖IP地址来自 中国
会写代码的优势很大的哈哈,我把10年的交易经验,全都写在知乎上了,交易经验方面,您可以通过读我在知乎上写的东西进行思维碰撞。也许会帮助,我写这些的原因,是因为10年行路难且孤单,希望同路中人少走弯路,少些起伏。加油~
6#
期权匿名回答  16级独孤 | 2022-1-27 15:22:02 发帖IP地址来自 北京
万分感谢我研究一下。这玩意是很孤独的,家人都睡了,我一个人在这瞎折腾[飙泪笑]
7#
期权匿名回答  16级独孤 | 2022-1-27 15:23:02 发帖IP地址来自 北京
请问你的公众号是什么,想关注
8#
期权匿名回答  16级独孤 | 2022-1-27 15:23:32 发帖IP地址来自 北京
公众号名: 情义绵棉
9#
期权匿名回答  16级独孤 | 2022-1-27 15:23:48 发帖IP地址来自 陕西西安
发的东西和这里一样哈,我的知乎专栏能看到一样的东西
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:400157
帖子:80032
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP