[讨论]关于ea
本帖最后由 scalping 于 2016-1-10 12:39 编辑
这几年写过不少ea,也测过无数别人的ea,得到一些经验和教训,挑一些主要的和大家分享,欢迎讨论。
首先关于在市场上是否能买到好的ea,疑问最多的就是谁会去用金手指去换钱,关于这个问题,反正我自己写的能赚钱的ea是不会拿出去卖钱的。
事实上的确国外网站上卖的ea几乎都是骗人的,但是,优秀的ea偶然会出现,原因我也不知道。关键的是所有卖ea的显示的曲线都很好,根本看不出哪个是真的。如果你要是花钱去买回来测,那还没等找到能赚钱的ea你就破产了。好的ea很难得到。
这儿补充一下,我喜欢看别人的交易单,喜欢看回测结果,每次最先看的一定是总收益,然后马上是看pf,就是期待值,总收益/总损失。然后是看最大回测,然后是看止损大小等。下面会说还有一个很重要的值。
接着说,就算是你买的了一个好的ea,回来一测的确曲线45度角直接右上方向前进,高高兴兴放上去实盘使用,结果却是亏损的。
主要原因是mt4的回测系统的缺陷,测试的时候点差设定是固定的,实盘的时候点差是变化的。ea基本都是短线和超短线的,点差差一点结果差很远,反应出的现象就是每笔利益减小,止损次数增加,开单次数减少。
所以买ea的时候看展示回测结果的时候要看它的点差,你会发现点差设定都很小,因为能在点差大的情况下赚钱的短线ea基本没有。
几乎都是这类问题,如果就这么放弃了,基本上就放弃了ea,不放弃就意味着实盘亏损。
有没有解决问题的办法,非常困难,但也不是不可能。
我说一下我的方法,
首先前提条件是要找一个相对好的平台的真正ecn,然后把ea放在一个好的vps上,这样尽量避免人为和网络原因造成的滑点。
然后就是在回测的时候一定要用各种点差去测试,找到点差允许的范围,然后在程序里加上限制,大于这个范围不让下单。如果是自己的ea,很简单就能做到,如果是买来的ea就实现不了,碰到这种情况,碰到认为非常有价值的ea,放弃了非常可惜,于是我采取的是最笨的方法,就是一点一点回测研究,扒出它的逻辑后用自己的程序再现出来,碰到比较简单的,在回测选项上点显示画面,程序中用到的所有指标会在测试完了之后显示在画面上,然后对照这交易记录一点一点研究,碰到复杂的只能研究出大概思路和只要优点部分。反正所有东西都真实反映在了交易记录上,而且数据量要多少有多少,就看你的经验和毅力了。
关于回测数据和工具。
也有很多人问,我用的是tick data suite工具,据说能够测动态点差,我没试出来。正常需要花钱买,开始97刀,然后每月10刀。
使用过程是先从dukascopy下载csv数据,然后用tickdatasuite的脚本把数据转换成mt4历史数据和fxt形式的tick数据文件,测试的时候启动被
tickdatasuite打了补丁的mt4即可。数据质量能到99%。
关于vps,这几年我一直用amazon的aws云虚拟机,自己可以在各大洲创建自己的虚拟机。最近想试一下和亚马逊完全一样的微软的azure云虚拟机。
欢迎大家纠正补充。
发表于:2016-01-10 04:53只看该作者
2楼
本帖最后由 smile2u 于 2016-1-10 13:13 编辑
下面是使用TDS进行动态点差的测试方法。按步骤做绝无差错的可能。
1、下载tick数据到csv,这步用什么方法都可以。推荐用tickstory导出csv按伦敦区(gmt+2)带夏令时。
2、配置TDS时选择不使用fixed点差。然后启动,保持连接状态才能让下面的脚本工作。
3、将csv文件放到EA下Files目录下。打开1分钟图,用csv2fxt脚本选择real spread为ture,生成hst和fxt。
4、手动将hst和fxt放到正确目录下,正常情况下fxt文件都带有只读属性。
完事了,现在回测都是浮动点差了。
手续费的事,也还是fxt文件的事。第3步的脚本运行参数设定时可以填写手续费。如果不想写,之后又想测减手续费的话。
可以用tickstory的菜单里的编辑数据功能,打开fxt文件,修改“基本手续费”。
按一手平仓费用填写保存。回测时每次交易平仓都会自动减手续费了。
4楼
smile2u 发表于 2016-1-10 12:53
下面是使用TDS进行动态点差的测试方法。按步骤做绝无差错的可能。 1、下载tick数据到csv,这步用什么方法 ...
韬客社区www.talkfx.co
5楼
iyth999 发表于 2016-1-10 12:53
比较中肯,比那些无脑喷EA的人强多了,那些人连EA是什么都不懂,就排斥
韬客社区www.talkfx.co
发表于:2016-01-10 05:13只看该作者
6楼
TDS有点贵了,用tickstory也能凑合,不过只能测固定点差
vps建议自己研究自己学会配置ovz的性价比最高
点评
发表于 2016-01-10 05:33
韬客社区www.talkfx.co
韬客社区www.talkfx.co
8楼
本帖最后由 scalping 于 2016-1-10 13:35 编辑
是的,Tick Data Suite用的人很少, Tickstory用的最多,听说还有一个Forex Studio,准备有时间研究一下
aluok3000 发表于 2016-1-10 13:13
TDS有点贵了,用tickstory也能凑合,不过只能测固定点差 vps建议自己研究自己学会配置ovz的性价 ...
韬客社区www.talkfx.co
发表于:2016-01-10 05:36只看该作者
9楼
无脑的再喷一下。。。。。。。。
ea没有感觉。它适应市场的方式就是回测。而回测大多数只使用历史数据。历史价格只是市场千万种可能走势中的一种。如果ea只能抓住某一时期的特征,而不是普遍特征,那就是个坑。普遍特征就是不管未来如何波动,也会呈现这个特征。所以,历史测试远远不能反映ea的真实能力。应该用模拟数据发生器产生的随机数据来测试,如果电脑配置高,一周就可以验证出一款ea是否为印钞机。那时候,才可以说ea已经战胜了市场。
可惜,这是一项庞大的工程,需要的时间并不少于培养一个顶级操盘手的时间。。。。。
点评
发表于 2016-01-10 05:47
韬客社区www.talkfx.co
10楼
本帖最后由 scalping 于 2016-1-10 13:54 编辑
EA比较简单能回测,大家对ea的要求也就比较苛刻。比如说,谁也不会要求一个手动交易的人去回测10年的数据,也不会要求他对所有外汇兑所有时间段都能赚钱,而ea却要经得住各种考验包括非农和各种意外。即使都经受过去人们还是会说那也保证不了将来一定就能赚钱,不过我到认为苛刻要求没什么不好,事实上,由于这个原因,实盘上用ea赚钱的要远远高于用手动交易赚钱的。
hdtfriend 发表于 2016-1-10 13:36
无脑的再喷一下。。。。。。。。 ea没有感觉。它适应市场的方式就是回测。而回测大多数只使用历史数据。 ...
韬客社区www.talkfx.co
发表于:2016-01-10 05:54只看该作者
11楼
本帖最后由 wenruan999 于 2016-1-10 14:00 编辑
我现在方法手工和ea都可以做,
但是我一定用ea,不用手工开。
去年在构思新的ea时候,手工做了一段新的思路,简直累得不得了。
走上使用ea之路,也是得益于方法的复杂,如果不用ea,天天挂单,撤单,花费太多人工。
每个人情况可能不同,对工具使用也有各自看法。都无可厚非
如果一个策略就是简单开单,平仓,不一定非要使用ea,如果策略里面的构思需要多道计算,可能手工的工作量和消耗时间的程度,是不讨巧的。
我是做一篮子货币的,ea每天要做25个货币,如果手工,情况可想而知。
点评
发表于 2016-01-10 05:59
12楼
wenruan999 发表于 2016-1-10 13:54
我现在方法手工和ea都可以做, 但是我一定用ea,不用手工开。
点评
发表于 2016-01-10 06:07
发表于:2016-01-10 06:07只看该作者
13楼
scalping 发表于 2016-1-10 13:59
你比我强,我手动只会做超短的更累,而且一年下来虽然不陪也不赚钱,而且点差还必须很小的平台。
点评
发表于 2016-01-10 06:24
14楼
本帖最后由 scalping 于 2016-1-10 14:28 编辑
是的,和策略有关。我猜你可能是网格策略,逆势策略的不用考虑点差。做外汇一定是互相帮助才容易成功。
wenruan999 发表于 2016-1-10 14:07
我使用ea根本不考虑点差,不知道有人相信吗?当然点差低,收益高,容易出局。 10个点的我都做
韬客社区www.talkfx.co
16楼
yolailai 发表于 2016-1-10 14:40
大铅笔,说的很中肯啊
点评
发表于 2016-01-10 07:41
韬客社区www.talkfx.co
发表于:2016-01-10 07:41只看该作者
17楼
scalping 发表于 2016-1-10 15:03
前天压注非农的时候,到了最后时刻不得不压的时候我找了半天也没看见你压的,心想你个笨蛋你随便压一个然 ...
韬客社区www.talkfx.co
发表于:2016-01-10 08:21只看该作者
18楼
韬客社区www.talkfx.co
发表于:2016-01-10 12:37只看该作者
19楼
太专业
韬客社区www.talkfx.co