MQL5的建议 - 页 2

 
我还应该补充一点,基于事件的编码是唯一让我对MQL5感到兴奋的事情。现在我发现,除了我觉得没用的按钮和输入框之外,我根本无法用它来做任何事情(即让我的代码更有效,更容易管理)。我想转到MQL5对我来说可能不值得这么麻烦。
 

好吧,我重新下载并重新安装了测试版,终于能够再次运行它(之前它甚至无法启动)。在测试了代码之后,我又有了新的看法。我喜欢现在有一个反对创建时间的属性(假设这就是OBJPROP_CREATETIME),除了CHARTEVENT_TRADE不工作之外,事件实际上是相当好的。唯一严重缺失的是一个对象创建事件。为什么不呢?它不可能那么难实现。毕竟,你已经有CHARTEVENT_CLICK和CHARTEVENT_OBJECT_ENDEDIT。对象的创建并不遥远,而且它是如此明显的需要。


我也喜欢 "禁用选择 "的对象属性;然而,当它被启用时,对象可以被移动而不被选择。这是个错误吗?禁用选择的目的不就是为了让对象不能被轻易移动吗?

 
哦,我仍然缺少标记水平线 的能力。
 

你好。

首先,MetaQuotes,祝你在MT5平台开发方面好运。这是一项艰巨的任务,所以不要因为人们的抱怨而不高兴,只要像你们已经做的那样继续改进。

由于MT5最近刚刚向公众开放,并处于测试阶段,我认为仍可作出若干改进。我在下面列出了我的建议。

对MQL5团队的建议--一般。

1.与.mq4的向后兼容 听起来很重要--有数百个,甚至数千个用MQL4编写的最先进的指标、EA和有用的应用程序。将它们移植到MQL5中需要几个月,甚至几年的时间。另一件事是--正如有人已经提到的--很多很多的交易者将非常不愿意使用MT5,如果他们不能使用他们喜欢的东西。这是一个相当大的威胁,因为使用MT5的经纪商可能会失去大量的客户,这显然会间接影响你的公司。

我知道这一点可能听起来有争议,但也许他们至少可以以编译的.ex4形式使用?

对MQL5团队的建议--MetaEditor。

2.指标调试- 在我的印象中,stringo 曾经提到,不可能调试指标,只能调试EA和脚本。我希望我只是误解了,因为这绝对应该是一个功能。

对MQL5团队的建议--策略测试。

这一部分包括了我的大部分建议,因为对交易系统进行可靠的测试和统计评估的能力是交易系统开发的一个重要组成部分,严格来说是必须的。 这比选择指标或进入方法等要重要得多,所以我希望它能得到MetaQuotes团队所有成员的适当关注。

3.3.修复策略测试器的速度表- 在MT4中,31的速度仍然很慢,而32的速度太快了。

4.4.多货币/投资组合测试- 该功能是每个专业交易员的基本需求,无论是机构还是自己交易。缺少这个功能是MT4的一个严重缺陷,所以我希望MT5能真正实现这个功能。

5.5.增加 为测试目的 导入tick数据的功能(作为.fxt文件)--有两个主要原因。

a) 很多人都在做日内交易和开发剥头皮,所以当涉及到测试时,他们真的很有限(众所周知的M1模型质量问题,加上为测试目的随机生成的ticks)。

b) 能够在尽可能接近真实市场的数据上进行测试将是非常好的--如果他/她能够导入10年的真实tick数据,为什么要用随机生成的ticks来降低回溯测试的可靠性?

6.允许用户选择他是否愿意在回测中反复使用相同的tick数据文件--我记得mql4.com论坛上有很多关于测试结果从一个运行到另一个运行的线程。这是一个非常、非常 糟糕的问题。如果有人改变了一些参数,他想检查的是参数变化的影响,而不是其他,特别是不检查从.fxt文件随机生成的ticks的影响。我想,在测试器中提供一个 "生成新的刻度线文件 "的复选框应该不难,我的建议是。

a) 取消这种复选框可以确保用户在完全相同的条件下测试新的参数/指标/逻辑,因为他知道他已经导入了他的M1历史报价和随机生成的tick文件(对于特定货币的第一次运行),所以他测试中的 "市场 "不会改变。

b) 勾选这样的复选框可以让用户测试系统的稳健性--我的意思是,参数/指标/逻辑保持稳定,但每次测试器运行时,条形图内的刻度都是随机生成的--它可能模拟部分变化的交易环境,提供另一种测试方式,有点类似于蒙特卡洛分析(历史报价保持不变,但刻度每次都是随机生成--如果系统保持稳定,很有可能它真的很稳健)。

7.允许用户在测试报告中 "包括 "自己的统计参数(用户定义的指标)--有大量的统计指标可以参考交易(我知道大约40个,但肯定还有更多),每个认真测试的交易者都有自己的一套参数。MT4不得不从报告中提取交易历史,并将其全部导出到Excel,以进行进一步的统计评估,这是很烦人的。如果您能允许用户编写自己的MQL5代码,根据您已经提供的一些明显的内置措施(交易数量、赢利百分比、跌幅百分比等)来定义自己的指标,那就太好了。这已经在AmiBroker中实施了很久,这确实是一个很好的想法。为了给你一个例子,请看下面的链接。

http://amibroker.com/guide/a_custommetrics.html

8.提供参数评估的3D景观图--这对找到既能盈利又稳健的参数值区域真的很有用(这也是MT4用户必须在Excel等外部应用中做的另一件事)。AmiBroker的例子(取自上面的链接),让你感受到我的意思。

9.将 "遗传算法 "选项的1280个组合限制 改为更高的值--在过去几年中,硬件发生了很大的变化,所以我想现在这个1280的值可以改为几千,不会造成任何明显的问题。

10.允许用户在自定义符号上进行回测- 例如,如果我有DAX Future的10年M1历史数据或铜的20年M1历史数据,为什么我不能在这些数据上测试我的系统?我想这根本不影响你的商业目标,而且如果能够在经纪公司提供的市场之外的其他市场上检查你用MQL4编写的策略,而不是在MetaStock、AmiBroker或任何其他软件中重新编码整个交易系统,那肯定会很方便。

这就是我目前能想到的全部。我相当关注MT5的测试能力,我相信如果你能提供上述内容,你会说服大量的交易者和金融机构使用MetaTrader作为一个完全专业的工具(我猜你知道测试和优化问题确实是MT4的一个主要缺点)。

stringo,Rosh- 我可能会得到关于上述建议的任何评论吗?

最好的问候。

Enigma71

How to add user-defined metrics to backtest/optimization report
  • amibroker.com
One of the new additions in 4.67.x/4.68.x BETA is portfolio backtester programming interface providing full control of 2nd phase of portfolio backtest. This allows multitude of applications including, but not limited to:
 

谢谢你的建议。

1.没有。

2.是的。会的。

3.是的

4.是的

5.不

6.是的

7.可能是

8.可能是

9.我还不知道

10.不知道

 

嗨,stringo,谢谢你的答复。如果将来需要,我可以参与MetaTrader的测试,因为我在世界最大的电信公司之一担任全职测试员/软件集成商,我熟悉与发现和报告错误有关的问题,改进软件功能,以及所有这些可能对开发人员有用的东西。

我只是好奇--为什么你们不允许用户导入.fxt文件的ticks?我的意思不是为交易目的制作图表,只是为回溯测试 提供历史刻度,以增加其可靠性。

希望你能把7和8(用户定义的统计指标和3D "景观 "图)包括进来,因为这将极大地增强MT5的能力。

热切地等待MT5的下一个版本:)

最好的问候。

尊敬的Enigma71

 
Enigma71fx :

嗨,stringo,谢谢你的答复。如果将来需要,我可以参与MetaTrader测试,因为我在世界最大的电信公司之一担任全职测试员/软件集成员,我熟悉与发现和报告错误有关的问题,改进软件功能,以及所有这些可能对开发人员有用的东西。

我只是好奇--为什么你们不允许用户导入.fxt文件的ticks?我的意思不是为交易目的制作图表,只是为回溯测试 提供历史刻度,以增加其可靠性。

希望你能把7和8(用户定义的统计指标和3D "景观 "图)包括进来,因为这将大大增强MT5的能力。

热切地等待MT5的下一个版本:)

最好的问候。

梦之城_梦之城娱乐_梦之城国际娱乐_梦之城国际娱乐平台71


1.好的。谢谢你的合作。请参阅MQL4.COM上的信息。

2.现在我们不保留fxt文件了。我们的生成算法比读文件快。

3."可能 "意味着 "是的,但不是现在"

 
预先加载图表?终端中每个图表周期 的初始加载非常慢,特别是对于较高的周期。希望这不会影响需要访问多个时期数据的EA--我相信你在MQL5中手动预加载图表数据?
 
是否可以在ExperAdvisor "ChartInChart "中插入两条移动平均线?谢谢。
 
如果EA可以在自定义子文件夹中创建文件,那就很方便了。