指标: Ping - 页 2 123 新评论 fxsaber 2017.12.12 19:32 #11 fxsaber:它其实不小 ~ 5 毫秒。对于那些饱受零 ping 之苦的用户来说,这无疑是花园里的一块石头。在第 1703 版中,平均延迟是一样的。但浪涌变得更少了。我做了一个实验。在装有 MT5 的机器上启动洪流,情况是这样的这意味着如果有人正在使用网络,终端滞后时间可能长达 2 秒。对于使用 VPS 的用户来说,了解这一点尤为重要,因为在 VPS 上,网络通道不是取决于一个,而是取决于许多客户端。例如,在这种 VPS 上放置新闻 TS 就会变得非常危险。 Aleksey Vyazmikin 2018.06.22 00:28 #12 fxsaber:事实上,最初有人说智能交易系统中的指标是一个瓶颈,因为所有指标都是在一个线程中执行的,这与智能交易系统不同。Expert Advisors 中的滞后需要单独研究。获取滞后期的功能已在说明中列出,因此并不困难。您能告诉我,是在哪里说明了智能交易系统中调用的指标是在一个线程中执行的,以及智能交易系统以某种方式与任务本身并行吗? 在我看来恰恰相反--指标是一个单独的程序,可以在并行线程中轻松计算,但如果由于某种原因没有完成计算,则必须等待。我知道在策略测试器中,一切都是在一个线程中进行的。 fxsaber 2018.06.22 19:37 #13 Aleksey Vyazmikin:您能告诉我,在 Expert Advisor 中调用的指标是在一个线程中执行的,并且 Expert Advisor 以某种方式与任务本身并行吗? 关于交易、自动交易系统和测试交易策略的论坛 谁能解释一下 "智能交易系统 "中 "应用 "的含义 :.... Renat Fatkhullin, 2010.02.06 13:06 指标是一个计算实体,它的工作有严格的要求。它无权放慢速度,也无权不产生数据(数据是无条件需要的)。指标在自己的流程中工作,处理每个价格刻度,任何延迟都会导致整个系统阻塞(后果将是多种多样的)。我们曾担心,使用对象会导致指标严重堵塞(使用对象需要通过一个特殊的异步消息队列)。实验表明,如果合理 使用对象(不需要一次移动成百上千个对象),它们不会对计算产生重大影响。这就是我们允许在自定义指标中使用对象管理功能的原因。但如果你愿意,可以通过对指标中的对象进行非智能化操作,轻松在终端中制造刹车。要了解指标是什么,我们需要深入了解--访问历史数据。当通过 OnCalculate 调用指标时,会给它提供可用的历史数据。如果查看一下它的容量(通过显示日志中的计数器),就会发现每个刻度线 实际上都提供了数十兆或数百兆字节的数据: 来自全局历史记录管理器,该管理器按 tick 逐个更新、缓存并按要求重新创建时间框架。谁提供这些数组?由谁提供? 它们被阻止读取,由终端依次提供给每个指标。提供多少指标? 理论上数量不限,但要逐个提供。 内存严重不足,因此指标只能逐个运行。 与 MetaTrader 4 相比,MetaTrader 5 的特殊性在于现在的历史记录量增加了许多倍,我们已经解决了一个非常困难的问题,即快速(无需为每个指标分别复制数十兆字节的历史记录)重新计算指标。即使是相同时间框架上的两个(或更多)相同指标,也会合并为一个计算副本并计算一次。现在,您提议采用并放慢整个机制,实际上是要把指标变成纯粹的专家。很明显,这在技术上是不合理的。在指标中加入交互性会立即破坏终端核心的工作机制--访问数据。结果,我们会得到 "缓慢的终端,他们甚至无法绘制指标,图表绘制也有延迟!",没有人会说 "是的,是我的花哨指标起作用了,都是他的错"。即使在这种情况下,我们也会被指责为 "没有提供合理的分离,不知道如何编写多线程软件等等"。因此,指标工作的行为和原则不会有根本性的改变。 Aleksey Vyazmikin 2018.06.22 20:02 #14 fxsaber: 感谢您提供的信息。 我们都知道 "永不言败",所以我很想知道现在的情况,是否真的没有变化。 此外,从 Renat 的回答中可以看出,每个指标都在自己的线程中运行,那么这不就意味着一个智能交易系统和一个指标至少可以同时存在两个线程吗? 雷纳特声称,造成延迟的原因是需要为指标提供大量数据(事实上, 每个刻度都要提供 数十兆或数百兆字节的 数据),但根据当今的现实情况,这并不是一个多么大的数据量,而且很有可能的是,对于使用相同工具的相同指标 的工作,将组织一个历史数据的联合流,但用于计算指标本身的是另一个不同的流,这在 2010 年已经部分组织起来了。 即使这是真的,也完全可以将指标合并到一个集群中,并在其中应用 OpenCL(我自己从未应用过,因为对于傻瓜来说,关于组织的信息很少)。 fxsaber 2018.06.22 21:39 #15 Aleksey Vyazmikin:我很想知道现在是什么情况一 二 三 四 Aleksey Vyazmikin 2018.06.22 23:12 #16 fxsaber:一、二、三、四谢谢,我仔细看了搜索结果。大部分都是老一套。 因此,我们每个符号都有一个线程,包含该符号上的所有指标。每个 EA 都有一个线程。那么,如果我们使用来自不同图表的信息进行决策,使用指标是否更可取? 指标有一个优势--使用历史计算方便。 也许,如果您对每个刻度线进行计算,指标就会成为瓶颈,因为它会试图提供最相关的数据,但如果计算是基于 OHLC,那么并行计算就会带来优势。只要 "智能交易系统 "从指标中获取信息,在检查当前仓位的情况后,这些数据就已经可以接收了。是的,我只在新条形图打开时在指标中进行计算。如果将指标逻辑结合起来,速度会更快,您有不同意见吗? fxsaber 2018.06.22 23:42 #17 Aleksey Vyazmikin: 还是你有不同意见? 换个主题。 Manoel Calixto Da Silva Neto 2019.06.14 02:41 #18 您好,ping 的计量单位是秒吗? জচেলিনো 2019.06.14 13:40 #19 Manoel Calixto Da Silva Neto: 您好,ping 的计量单位是秒吗?有说明。你没看吗? "报价的延迟以毫秒为单位" fxsaber 2021.03.12 10:56 #20 我想起了这个很棒的指示器。 这是一张来自零 ping 机器的图片。事实证明,终端的内部延迟平均约为 2 毫秒。它在 0-9 毫秒的范围内跳跃。 例如,服务器上出现了两个刻度:第一个刻度在 10 毫秒后出现,第二个刻度在 10 毫秒后出现。因此,在终端中,第二个刻度不是在第一个刻度之后的 10 毫秒内出现,而是在 10-19 毫秒内出现。平均为 12 毫秒。 123 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
它其实不小 ~ 5 毫秒。对于那些饱受零 ping 之苦的用户来说,这无疑是花园里的一块石头。
在第 1703 版中,平均延迟是一样的。但浪涌变得更少了。
我做了一个实验。在装有 MT5 的机器上启动洪流,情况是这样的
这意味着如果有人正在使用网络,终端滞后时间可能长达 2 秒。对于使用 VPS 的用户来说,了解这一点尤为重要,因为在 VPS 上,网络通道不是取决于一个,而是取决于许多客户端。例如,在这种 VPS 上放置新闻 TS 就会变得非常危险。
事实上,最初有人说智能交易系统中的指标是一个瓶颈,因为所有指标都是在一个线程中执行的,这与智能交易系统不同。Expert Advisors 中的滞后需要单独研究。获取滞后期的功能已在说明中列出,因此并不困难。
您能告诉我,是在哪里说明了智能交易系统中调用的指标是在一个线程中执行的,以及智能交易系统以某种方式与任务本身并行吗?
在我看来恰恰相反--指标是一个单独的程序,可以在并行线程中轻松计算,但如果由于某种原因没有完成计算,则必须等待。我知道在策略测试器中,一切都是在一个线程中进行的。
您能告诉我,在 Expert Advisor 中调用的指标是在一个线程中执行的,并且 Expert Advisor 以某种方式与任务本身并行吗?
关于交易、自动交易系统和测试交易策略的论坛
谁能解释一下 "智能交易系统 "中 "应用 "的含义 :....
Renat Fatkhullin, 2010.02.06 13:06
指标是一个计算实体,它的工作有严格的要求。它无权放慢速度,也无权不产生数据(数据是无条件需要的)。
指标在自己的流程中工作,处理每个价格刻度,任何延迟都会导致整个系统阻塞(后果将是多种多样的)。
我们曾担心,使用对象会导致指标严重堵塞(使用对象需要通过一个特殊的异步消息队列)。实验表明,如果合理 使用对象(不需要一次移动成百上千个对象),它们不会对计算产生重大影响。这就是我们允许在自定义指标中使用对象管理功能的原因。但如果你愿意,可以通过对指标中的对象进行非智能化操作,轻松在终端中制造刹车。
要了解指标是什么,我们需要深入了解--访问历史数据。当通过 OnCalculate 调用指标时,会给它提供可用的历史数据。
如果查看一下它的容量(通过显示日志中的计数器),就会发现每个刻度线 实际上都提供了数十兆或数百兆字节的数据:
来自全局历史记录管理器,该管理器按 tick 逐个更新、缓存并按要求重新创建时间框架。谁提供这些数组?
它们被阻止读取,由终端依次提供给每个指标。
理论上数量不限,但要逐个提供。
内存严重不足,因此指标只能逐个运行。
与 MetaTrader 4 相比,MetaTrader 5 的特殊性在于现在的历史记录量增加了许多倍,我们已经解决了一个非常困难的问题,即快速(无需为每个指标分别复制数十兆字节的历史记录)重新计算指标。即使是相同时间框架上的两个(或更多)相同指标,也会合并为一个计算副本并计算一次。
现在,您提议采用并放慢整个机制,实际上是要把指标变成纯粹的专家。很明显,这在技术上是不合理的。在指标中加入交互性会立即破坏终端核心的工作机制--访问数据。
结果,我们会得到 "缓慢的终端,他们甚至无法绘制指标,图表绘制也有延迟!",没有人会说 "是的,是我的花哨指标起作用了,都是他的错"。即使在这种情况下,我们也会被指责为 "没有提供合理的分离,不知道如何编写多线程软件等等"。
因此,指标工作的行为和原则不会有根本性的改变。
感谢您提供的信息。
我们都知道 "永不言败",所以我很想知道现在的情况,是否真的没有变化。
此外,从 Renat 的回答中可以看出,每个指标都在自己的线程中运行,那么这不就意味着一个智能交易系统和一个指标至少可以同时存在两个线程吗?
雷纳特声称,造成延迟的原因是需要为指标提供大量数据(事实上, 每个刻度都要提供 数十兆或数百兆字节的 数据),但根据当今的现实情况,这并不是一个多么大的数据量,而且很有可能的是,对于使用相同工具的相同指标 的工作,将组织一个历史数据的联合流,但用于计算指标本身的是另一个不同的流,这在 2010 年已经部分组织起来了。
即使这是真的,也完全可以将指标合并到一个集群中,并在其中应用 OpenCL(我自己从未应用过,因为对于傻瓜来说,关于组织的信息很少)。
我很想知道现在是什么情况
一 二 三 四
一、二、三、四
谢谢,我仔细看了搜索结果。大部分都是老一套。
因此,我们每个符号都有一个线程,包含该符号上的所有指标。每个 EA 都有一个线程。那么,如果我们使用来自不同图表的信息进行决策,使用指标是否更可取?
指标有一个优势--使用历史计算方便。
也许,如果您对每个刻度线进行计算,指标就会成为瓶颈,因为它会试图提供最相关的数据,但如果计算是基于 OHLC,那么并行计算就会带来优势。只要 "智能交易系统 "从指标中获取信息,在检查当前仓位的情况后,这些数据就已经可以接收了。是的,我只在新条形图打开时在指标中进行计算。如果将指标逻辑结合起来,速度会更快,您有不同意见吗?
Aleksey Vyazmikin:
还是你有不同意见?
换个主题。
您好,ping 的计量单位是秒吗?
有说明。你没看吗?
"报价的延迟以毫秒为单位"
我想起了这个很棒的指示器。
这是一张来自零 ping 机器的图片。事实证明,终端的内部延迟平均约为 2 毫秒。它在 0-9 毫秒的范围内跳跃。
例如,服务器上出现了两个刻度:第一个刻度在 10 毫秒后出现,第二个刻度在 10 毫秒后出现。因此,在终端中,第二个刻度不是在第一个刻度之后的 10 毫秒内出现,而是在 10-19 毫秒内出现。平均为 12 毫秒。