文章 "如何在莫斯科交易所安全地使用您的 EA 进行交易" - 页 6

 
Andrey Miguzov #:

SZY:

要在一个账户上实现由不同专家在相同工具上的正确交易(您在其他主题中写到过这个话题),所花的时间比编写和测试主策略还要多:)。而且我还不确定一切工作是否正确。

嗯...我知道了。来自 necro-development: https://www.mql5.com/ru/market/product/5011?source=Site+Market+Product+Page#description 2013。现在它躺在 github 上,没人需要它。总的来说,这个想法很有趣,虽然是错误的。现在,我基于抽签形式的计票系统制作了一个驱动器。它运行起来更简单、更可靠。总的来说,它的优点更多。但缺点是,无法在现实中单独查看每个策略的统计数据。

Скачайте Торговую утилиту 'HedgeTerminalUltimate' для MetaTrader 5 в магазине MetaTrader Market
Скачайте Торговую утилиту 'HedgeTerminalUltimate' для MetaTrader 5 в магазине MetaTrader Market
  • www.mql5.com
Торгуйте разнонаправленно вместе с HedgeTerminal HedgeTerminal - это полноценный торговый терминал внутри самого торгового терминала MetaTrader 5. Это
 
Pavel Malyshko #:

限价订单技术本身就要求经纪人必须以最佳价格执行订单,如果他拥有中央银行执照的话。

很明显,你来自外汇世界。经纪人的限价订单并不意味着他必须执行订单。执行限价指令的是交易对手,具体来说是价格接受者,他进入市场,但不一定是使用市价指令。在这种情况下,价格接受者必须希望在你卖出时买入,在你买入时卖出。如果你追逐价格,想随其朝一个方向发展,那么你的限价盘对任何人都没有用处,很快就会被远远抛在后面。

 
tapo #:

嗯,非常有趣,在存在价差的情况下,限额怎么会比市场进入更糟呢?如果市场进入满足了利润阈值(佣金),那为什么还需要限额呢?

就目前而言,你是对的。但例子很简单--你需要在 1000 点买入。有一个限价 - 市场朝您的方向发展,您以 1000 的价格卖出。而价格在 50 毫秒内变成了 900 :)在 900 点买入比在 1000 点买入更好吗?

限价在价差中,从 TC 的角度来看 - 1000 是一个很好的价格。但 900 更好...

tapo#:

您是如何实现的?不是通过终端的全局变量吗?

根据我同事的建议(非常感谢他们),我将最后一个位置的数据写入文件:)启动 Expert Advisor 时,如果与文件不一致,我就会挖掘历史仓位(通过交易到标识符和 magik)。如果目前没有头寸,我就通过历史交易(通过 magik)来查找。

据我所知,这不是唯一的方法,但对我来说是最清晰的方法。

瓦西里-索科洛夫#:

缺点是,无法在现实中单独查看每个策略的统计数据。

老兄,我还没想过这个问题....。

 
Andrey Miguzov #:

根据我同事的教诲(非常感谢他们),我将最后一个仓位的数据写入文件:)启动 Expert Advisor 时,如果与文件不符,我将查看历史仓位(通过与标识符和 magik 的交易)。如果目前没有头寸,我将通过历史交易(通过 magik)进行筛选。

据我所知,这不是唯一的方法,但对我来说是最合理的。

老兄,我还没有想过这个问题呢....。

你对文件的理解是错误的。试着用基础而不是文件。我们真正积极使用文件是在过去十年,当时还没有使用数据库的本机能力。现在,所有这些情况都已过时。

 
Vasiliy Sokolov #:

你对文件的理解是错误的。试着使用数据库而不是文件。我们真正积极使用文件是在过去十年,当时还没有使用数据库的本机能力。现在,所有这些情况都已过时。

关于数据库--原则上是有趣的。但不是 SQLite,而是 PostgreSQL 或 MySQL。

 
嵌入式基础有其优势:本地支持,在 vps 上 部署购物中心更容易。对于小型任务来说,本地也是一个优势。事实上,只需使用本地文件即可。易于使用。 大型完整基础架构当然也有用武之地,但可能会用于更复杂的任务。另外,你还必须为 mql 编写自己的驱动程序。这是另一种乐趣。
 
Vasiliy Sokolov 在 vps 上 部署购物中心更容易。对于小型任务来说,本地也是一个优势。事实上,只需使用本地文件即可。易于使用。 大型完整基础架构当然也有用武之地,但可能会用于更复杂的任务。另外,你还必须为 mql 编写自己的驱动程序。这是另一种乐趣。

内置 - 如果它很小的话。

如果有 10000 个机器人(包括测试机器人),每个机器人都存储仓位、订单、统计信息、当前止损位等,它就很难应付。- 难以应付。

 
Vasiliy Sokolov #:

你对文件的理解是错误的。试着使用数据库而不是文件。我们真正积极使用文件是在过去十年,当时还没有使用数据库的本机能力。现在,所有这些情况都已过时。

我不太喜欢文件,但事实上,它只是用来记忆极值点,然后从该极值点搜索账户历史记录中的交易数据库(这样就不必翻阅整个历史记录)。一旦我拿到它,我就会重新做,因为我还没有通过 MQL 使用过数据库--我需要了解它。

 

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

讨论文章 "在莫斯科交易所交易时如何保护自己和您的智能交易系统"

Andrey Miguzov, 2022.06.29 12:24 AM

当下 - 你是对的。因此,例子很简单- 你需要买1000。有一个限制 - 市场朝着您的方向发展,您以 1000 的价格卖出。而价格在 50 毫秒内变成了 900 :)在 900 点买入比在 1000 点买入更好吗?

限价在价差中,从 TC 的角度来看 - 1000 是一个很好的价格。但 900 更好...

根据我同事的建议(非常感谢他们),我 数据写入文件的 最后一个位置:)启动 Expert Advisor 时,如果与文件不符,我就会挖掘历史仓位(通过交易到标识符和 magik)。如果目前没有头寸,我就会通过历史交易(通过 magik)来查找。

据我所知,这不是唯一的方法,但对我来说是最清晰的方法。

老兄,我还没想过这个问题呢....。

当然, 你的例子也有道理,但在这种情况下,我们代表的是两种不同的东西。我说的是价差大、流动性极低的情况。在这种情况下,必须经过几秒钟甚至几分钟才能出现您所描述的情况。在你的情况下,我认为牌号是最好的解决方案。


在我看来,这不是最好的解决方案。如果是 finam(因经纪商而异),在我看来,它能提供即时计算所需的一切(解析历史交易)。但这种方法需要额外检查文件,而且不清楚为什么需要这样做。GlobalVariableSetOnCondition() 可以防止多个智能交易系统同时进入。

 
JRandomTrader #:

内置 - 如果很小的话。

但如果有 10000 个机器人(包括测试机器人),每个机器人都存储了仓位、订单、统计数据、当前止损位等信息,它就难以应付了。- 难以应付。

如果您有如此多的机器人,而不是一个假设的例子,我建议您改用共识/投票系统。有了这么多的系统,工作起来会容易得多。