要怎样才能让大家最终转到MT5呢?(收集意见) - 页 35

 
Artyom Trishkin:

MT4在哪些方面优于MT5?

在所有的人中))。我已经给你举了一个例子:我的旧车比所有的新车都要好,它有所有相同的东西,价格就像一辆自行车。)而且你不需要一个自动的盒子,也是白搭。

 
Makar Anoshin:

至少它在老式PC和笔记本电脑上启动时不会出现故障。MT5在这方面是非常不舒服的...我不是在谈论优化和使用专家顾问和指标的工作。那里的一切都更复杂...因此,在这些条件下,你会不由自主地选择更容易的东西......(MT4)

你怎么看这个问题?

关于交易、自动交易系统和策略测试的论坛

从MT4切换到MT5有意义吗?你为什么要转到MT5?

Renat Fatkhullin, 2019.02.08 23:07

鉴于该主题的讨论,我想让你更接近现实。应该如何做才能让大家最终转到MT5?(收集意见)

  1. MetaTrader 5的交易速度更快

    5的架构比4的效率要高一个数量级。所有流程都经过重新设计,以便在最小的延迟下进行交易。

    通过(或不通过)异步操作,你最多可以实现每秒几千个交易。一切都是为了速度,包括交易的优先次序。

    要在4年内完成,还差得远呢。

  2. 在MetaTrader 5中,机器人的运行速度最高可达20倍。

    这是因为5使用了一个C++级别的编译器,使代码非常高效。F4使用旧的运行时系统,没有进行代码优化。

    更快的速度意味着减少延迟和提高执行质量。

  3. 在MetaTrader 5中,你可以处理大量的数据

    从事深度开发的人知道存储在五个目录中的数据的大小。通常有几十GB的历史数据,包括完整的tick数据。

    Five的存储和显示完整的tick数据是一个不可排除的功能。不要错误地认为,因为图表上没有显示tick数据,就意味着它不存在。

    这里是在Otkritie经纪商的真实账户上运行的一个简单代码,以及RTS Splice符号,它是多年来所有RTS指数期货合约的粘合剂。
    void OnStart()
      {
       MqlTick ticks[];
       int     records=CopyTicks(Symbol(),ticks,COPY_TICKS_ALL,0,1000000000);
    //---
       Print(Symbol()," ticks ",records);   
      }
    
    它产生4.72亿支。
    RTS Splice ticks 472 111 564
    
    是的,一次查询就有4.72亿次。事后你想怎么处理就怎么处理。

    它让你对数据有绝对的控制权。你也可以得到数以亿计的蜱虫。只要设法踢开经纪人,就能照顾到历史数据。这是他的直接工作和授权。

    两行代码,全部数据就在你手中。谁在谈论MQL5的复杂性?

    4中没有这种东西。

  4. MetaTrader 5有一个非常精确的多符号测试器,精确度为毫秒。

    这使你可以与非常复杂的策略进行比赛,并更多地保证你的策略不会自毁。

    你直接写代码,测试人员负责所有复杂的市场建模。

    周期性的交易者吹嘘他们可以把简单的测试器写快很多倍,但这都是在酒吧的廉价运行周期的水平。更不用说完全排除了整个市场条件、工具和保证金要求的多样性。

    而且,我们不仅有最详细的建模,包括将所有利润精确转换为资产负债表上的货币,而且还收集了所有统计信息以及浮动股权/权益变化的历史。

    这与我们在MetaTrader 4中的情况相差甚远。

  5. 在MetaTrader 5测试器中,有一个惊人的延迟执行会计功能

    在给定滞后的情况下进行交易的模式使我们能够完全取消大多数黄牛策略的资格,这些策略在测试器中是美妙的,但在真实交易环境中却是灾难性的。



    即使增加50-100毫秒的延迟,也足以使许多策略的性能急剧下降。

    这个功能的威力是基于对市场环境的精确模拟,当测试器中的睡眠(ms)也能在现实中发挥作用。我们能够通过为专家顾问本身创建延迟来并行开发市场,这使得它能够有质量地进行真正的执行。

    你可以只是玩玩你的网络延迟,增加几次来测试你的机器人的稳健性。同时检查重新报价和反弹的质量。

    你有4英寸的吗?不,当然不是。

  6. Five的64位系统允许你用大量的图表和深入的历史进行操作。

    当你做复杂的分析或扫描多个符号和时间框架时,这是非常重要的。你可以持有和操作数以千计的图表(符号+周期),并确保它们是即时可用的。

    有些交易者说,他们不需要太多,四人组的微不足道的数据对他们来说已经足够了。但实际上,数据分析的赌注一直在增加。

    我的看法是,五的数据量还是不够的。我们正在不断努力提高数据交付的效率和速度。我们不断地调整性能,使巨大的数据总是唾手可得,并迅速从MQL5中获得。

  7. 使用多线程的测试器、计算和云服务器

    战略发展的主要成本是战略的优化。这是我们投资很大的领域。

    您可以使用您所有的本地核心,在本地建立一个计算场,或连接MQL5云网络。这使你可以将优化速度提高几十倍或几百倍。


  8. MetaTrader 5在众多的网关上有堆栈和执行。

    交易者并不十分了解,但MetaTrader 5有一个强大的不同流动性供应商的聚合系统和一个灵活的交易转移到不同供应商的系统。

    ECN,流动性聚集和匹配引擎允许有效地执行最佳价格执行策略,并支持从一个帐户的多个市场。

  9. 五是没有数据量限制

    你可以申请大量的历史图表数据(限制在1970年)和交易历史。

    你的账户历史上有一百万次交易吗?不是一个问题。只需添加更多的内存。

  10. 一个完全不同的图表架构和对象管理

    你可以更有效地管理你的图表,并为了你的构建而完全禁用图表

    以你想要的方式用图形对象或画布 来使用该窗口。

  11. 巨大的标准库

    这里是MQL5的标准库。有R语言、数据收集、OpenCL、图形等层面的数学。

    大多数交易者不知道我们已经在源代码中实现了R包中的数百个数学和统计函数。它们允许你做很多复杂的数学运算,比R中的运算快很多倍(5到50倍)。

    是的,用MQL5源代码编写的程序将R的C++实现速度提高了50倍。

  12. 自定义符号、自定义堆栈、合成符号和简单数据导入

    在Five中,你可以轻松地创建自己的符号,包括价格堆叠。从MQL5代码中创建它们,并将它们从MQL5代码中送入rltime。你可以使用公式建立合成符号。

    换句话说,MetaTrader 5早已成为一个独立的分析平台,你可以分析任何其他数据。任何MQL5程序都可以处理数据馈送。

  13. 还有很多其他反复描述的功能。



人们必须认识到这一点。

  • 技术在不断发展,那些停留在充足的老套路上的人就会被甩在后面。

  • 是的,这是一场技术竞赛。而首先是对交易者而言

  • MQL4和MQL5语言的复杂性绝对相同

    听着关于MQL4的简单性的陈述,而MQL5的复杂性却完全一样,这真的很有趣。mql5的复杂性是完全一样的。

    或者我们必须承认,对于程序员来说,几个额外的参数是一个普遍的问题。不,当然不是。这是一个美丽的传说,对于那些踩着旧的传说。

  • 我已经说过很多次了,我还要说--程序是由专业的开发人员编写的。

    只有不到2%的用户使用代码编辑器。大多数交易者从市场和kodobase下载现成的东西,而不分析代码。

    关于简单的MQL4的故事是异常荒谬的。关于OOP的讨论根本不在范围之内,尤其是它已经在MQL4中存在了很长时间。现在的任何程序员都必须默认知道OOP。

    只有足够熟练的程序员才能创造出质量合格的程序。不要被 "没有编程知识也能写出可接受的代码 "这种可能性所迷惑。

    我花了28年的时间每天进行编程,知道我的论断就是现实。

  • 我们有足够的技术合作伙伴和第三方开发商直接对保持MetaTrader 4

    因为这个平台有太多的技术缺陷,所以他们给自己套上了插件/孔洞的利基,并直接以此为食。

    是的,他们花了相当多的资源说服经纪人和交易员,"MetaTrader 4更好"。因为他们的生意会垮掉。而在这里,他们以独立商人的名义坐在这里,在反对派中工作。

    我们没有能力积极抗争,尽管我们特别热心,而且非常清楚他们告诉经纪人和交易员的内容和方式。

    例如,记得当微软使他们的平台更加安全并取消了他们的安全功能时,反病毒供应商10年来一直在发出的呼声。只是义愤填膺和大量的公关。

  • 进步是不可阻挡的。

 
Artyom Trishkin:

你对这个问题怎么看?


当然,这一切都很好,但在实践中,唉......由于某些原因,从启动、报价加载和在历史数据上彻底测试MQL程序,一切都运行得比较慢。

由于一些难以想象的原因,尽管有上述优势,但在我的电脑和VPS服务器 上,一切运行和测试都比在Mt4上快。而购买一台专门用于外汇交易的现代游戏电脑,那么,这哪里是方便和实用呢?

 
Artyom Trishkin:

你对此有何看法?


我认为,如果优化速度几乎慢了4倍,那就太微不足道了,如果你只有eX5文件,那么它们可能会挂起,没有任何可能编写代码来中断优化过程!!!。

渲染挂单 也有同样的问题,如果策略是基于挂单的,那么就完蛋了。

 
Renat Akhtyamov:

这取决于战略

重要的不仅仅是速度,还有下单开仓时的价格

一个 "聪明 "的经纪公司永远不会让你在游戏中领先...

 
Makar Anoshin:

当然,这一切都很好,但在实践中,唉......由于某些原因,从启动、加载报价和彻底测试历史数据的MQL程序,一切都运行得比较慢。

由于一些难以想象的原因,与上述好处相反,在MT4中一切运行和测试都更快(个人在我的电脑和VPS上)。而要购买专门用于外汇交易的现代游戏电脑,那么,它在哪里是方便和实用的呢?

我在一台简单的笔记本电脑上工作。它不能以正常质量播放任何游戏。而我只有5GB的内存。而且我有足够的资金用于我的项目 的日常工作,有五个。而且不知为何,它并没有像你所说的那样放慢速度。即使做一个指标,在市场审查的所有符号和每个符号的所有时间框架上获取数据,我只在第一次运行时等待。秒的时间,按符号和时间段调换出缺失的历史。之后,一切工作都迅速而不拖延。

让我告诉你一个秘密,如果你开始正确地用mql4写程序,你的代码几乎和mql5一样多。这些人只是习惯了这样的想法:一旦你得到了数据,你就可以立即把它塞进计算中,而忘记了完全检查:我在那里得到了什么?而如果你弄错了,你需要处理这样的结果,而不是把它放在计算中。正是由于这种粗心大意的编程方式,人们开始在所有论坛上询问如何永久更新指标,因为它总是显示一些奇怪的东西,只有手动更新图表或重新编译指标代码才能使其读数恢复到可接受的形式。你见过这样的要求,这样的拐杖吗?不是吗?嗯,我有过很多次。但是,只要你看一下代码,添加所有必要的检查,mql4-代码就会奇迹般地变得和mql5-代码一样大,而且开始工作,没有崩溃和强制刷新的拐杖。

所以大多数情况下,所有这些关于 "可怕的mql5 "的呻吟只是非程序员的呻吟,他们在业余时间从网络上收集的零散碎片中创建了自己的小工具。而一旦这些人被阻止悄悄向大众传播他们的作品,他们就哭了--哦,一切是多么复杂。这并不复杂。那些原本在四条上写得正确的人,他们并没有注意到区别。只是额外的功能。

所以我很赞成。没有什么可以用不工作的代码来填补这个空间。

 
xxz:

问题是,如果优化速度几乎慢了4倍,如果你只有eX5文件,那么它们可能会挂起,没有任何可能写代码来中断优化过程!!!。

渲染挂单 也有同样的问题,如果策略是基于挂单的,那么就完蛋了。

证明。请在此提供比较性的证据。同样的跨平台代码及其优化结果。相同的参数,相同的设置--四号的优化结果,以及五号的优化结果--所有优化过程所花费的时间。如果没有这一切,你的话语就只是一个大纲。

 
Artyom Trishkin:

我在一台简单的笔记本电脑上工作。它不能以正常质量播放任何游戏。而且只有5GB的内存。而这足以让我每天在5分钟内完成我的项目。而且不知为何,它并没有像你所说的那样放慢速度。即使做一个指标,在市场审查的所有符号和每个符号的所有时间框架上获取数据,我只在第一次运行时等待。秒的时间,按符号和时间段调换出缺失的历史。之后,一切工作都迅速而不拖延。

让我告诉你一个秘密,如果你开始正确地用mql4写程序,你的代码几乎和mql5一样多。这些人只是习惯了这样的想法:一旦你得到了数据,你就可以立即把它塞进计算中,而忘记了完全检查:我在那里得到了什么?而如果他们弄错了,他们需要处理这样的结果,而不是把它放在计算中。正是由于这种粗心大意的编程方式,人们开始在所有论坛上询问如何永久更新指标,因为它总是显示一些奇怪的东西,只有手动更新图表或重新编译指标代码才能使其读数恢复到可接受的形式。你见过这样的要求,这样的拐杖吗?不是吗?嗯,我有过很多次。但是,只要你看一下代码,添加所有必要的检查,mql4-代码就会奇迹般地变得和mql5-代码一样大,而且开始工作,没有崩溃和强制刷新的拐杖。

所以大多数情况下,所有这些关于 "可怕的mql5 "的呻吟只是非程序员的呻吟,他们在业余时间从网络上收集的零散碎片中创造了自己的小工具。而一旦这些人被阻止悄悄向大众传播他们的作品,他们就哭了--哦,一切是多么复杂。这并不复杂。那些原本在四条上写得正确的人,他们并没有注意到区别。只是额外的功能。

所以我很赞成。没有什么可以用不工作的代码来填补空间。

我们已经明白,主要的是不要像mql4那样强调语言的不简洁性。

DayOfWeek_p=DayOfWeek();

MqlDateTime str1;
TimeToStruct(TimeCurrent(),str1);
DayOfWeek_p=str1.day_of_week;
 
Artyom Trishkin:

...

所以我很赞成。 没有什么可以用不工作的代码来填补空间。


没错!重塑自己--成为一个专业的程序员!如果你不能成为一个专业人员--就离开这里!)

ZS.我是指用户友好性。这是不可能的。))

 
Реter Konow:


没错!重塑自己--成为一个专业的程序员!如果你不能成为一个专业人员--完全离开这里!)

你在跟我说话吗?谢谢,这很有趣。