错误、漏洞、问题 - 页 579

 

olyakish:

>而你那里有两笔交易,一笔是盈利的,一笔是收盘价为零的,但权益仍在波动。

它实际上是由卖入(开仓卖出)和买出(平仓 卖出)组成的一个交易。

确切地说,这是一个双重交易,In--开仓,Out--平仓(据我所知,还有InOut--对现有头寸的反击交易)。

规则是,只有一个头寸,里面可以有你喜欢的订单和交易。

 
papaklass:

不清楚的是以下情况。

我们有两个单值的EA,每个都在自己的线程中工作,有自己的单一工具,有自己的连续的ticks集合。这两组连续的刻度线是相互独立的。例如,英镑兑美元的刻度线进来了。它们会影响欧元兑美元吗?欧元兑美元有自己独立的报价流。我是对的还是错的?如果我是对的,为什么这两个独立的数据流不能分布在不同的核心?这就是我不清楚的地方。

如果我们谈论的是两个运行不同图表的专家顾问,他们完全受益于多核能力,因为他们在不同线程中工作。

如果我们谈论的是并行测试,你可以从不同的文件夹启动两个客户终端,同时运行两个测试。代理人将在不同的核心上运行。

 
Interesting:

它只是两个交易In--开仓,Out--平仓(据我记得还有InOut--对现有头寸的反击交易)。

规则是--有一个位置,里面可以有你喜欢的订单和交易。



好吧,我同意,我说的不太对。

在我的案例中,有一个正常(最小)的周期:开仓,平仓

实质性问题--请对测试器中的权益/平衡图进行评论。

 
papaklass:

请原谅我的直言不讳。当涉及(文本)单一流(金融工具)时,我理解强调的测试。也就是说,我们有一个单价的专家顾问,对一个符号起作用。蜱虫在其中被持续处理,并行处理没有任何意义。我明白了。

不清楚的是以下情况。

我们有两个单值的EA,每个都在自己的线程中工作,有自己的工具,有自己的连续ticks集合。这两组连续的刻度线是相互独立的。例如,英镑兑美元的刻度线进来了。它们会影响欧元兑美元吗?欧元兑美元有自己独立的报价流。我是对的还是错的?如果我是对的,为什么这两个独立的数据流不能分布在不同的核心?这就是我不清楚的地方。

stringo

如果我们谈论的是两个在不同图表上工作的EA,它们完全受益于多核,因为它们在不同的线程中工作。

如果我们谈论的是并行测试,你可以从不同的文件夹启动两个客户终端,同时运行两个测试。代理人将在不同的核心上运行。

1.位于不同图表上的EA(最好是不同的符号)真正充分利用了多线程/多核心的优势。你也可以用老方法运行几个终端(例如,如果你交易几个账户)。

2.当我说到多线程时,我指的只是在一个单一的专家顾问中工作。而且,如何以及通过何种方式组织同步处理并不重要。

在这个框架内组织这样的处理是没有意义的,否则会给开发者和终端用户带来很多问题(正如Renat和Stringo所提到的)。

但有一个解决方案,至少是一个理论上的解决方案,尽管我不知道是否有可能实施它,也不知道这一切有多大意义。

这样的 "多线程 "在执行了至少两个步骤之后才有可能(开发者会知道得更清楚)。

a) 某些事件的参数化处理程序(可能添加新的事件或改变现有的事件)。

b) 改变整个终端的结构,以便在一个专家顾问中(仅针对专家顾问)可以同时执行一些处理程序。

而且据我所知,如果没有任何参数化处理程序,谈论它就没有意义。

3.从开发者的角度来看,引入参数化处理的蜱虫是一个开放的问题。但是,尽管与引进有关的所有问题,他们可能决定采取这样的步骤(将实现推迟到遥远的将来)。实现所有后续它已经从一个幻想的世界,在这里当然只停留在梦想。

只有在向OnTick添加参数后,才有可能分割并同时处理每个字符的ticks,在那之前,这个实现没有意义。

PS

结论一--首先是带参数的OnTick(一个符号的名字 就够了),然后是继续讨论这一切是为了什么。

Документация по MQL5: Предопределенные переменные / _Symbol
Документация по MQL5: Предопределенные переменные / _Symbol
  • www.mql5.com
Предопределенные переменные / _Symbol - Документация по MQL5
 
papaklass:
也就是说,在一个测试者内,即使EA是多币种,在一个线程、一个核心的情况下,点值是一致的(不管是什么工具)。对吗?

1.现有架构中的抽搐只由主工具(图工具)处理。因此,该计划必须是一致的。

在这种情况下,多币种仅表示专家顾问可以从其他符号和/或其他TF中请求数据,同时能够对所选符号进行交易。

单一测试(以及专家顾问的任何工作)是在一个线程中顺序进行的。也就是说,一次只有一条命令(一行代码)。

当我们对一个专家顾问 进行优化 时,不同的代理(即内核)会收到他们自己的专家顾问副本,并有自己的参数和输入。

每个代理按顺序进行测试,但在其内部顺序进行(其他代理甚至不知道其工作情况)。在这种情况下,代理只知道他的任务,克劳德知道他从特定的测试人员那里收到的所有任务,并给了代理,而最终用户/测试人员知道所有的任务,并收到所有通过的结果。

 
papaklass:
也就是说,即使一个EA是多币种的,也是顺序的(与工具无关),一个线程,一个核心。对吗?

是的,这就像生活中一样。在现实生活中,所有抽搐都是一致的。在一个时间量子中,原则上,不可能有超过一个刻度。

有两个线程在测试器中工作--一个用于与终端通信,另一个处理刻度线并测试专家顾问。

但客户终端的架构是这样的:客户终端在一个线程中接收到的ticks,并分别分配给每个工具的不同线程。此外,每个专家顾问都在自己的线程中工作。如果有几个核心,所有这些线程都在它们之间分配。

在测试器和终端的多货币专家顾问 总是占用一个线程,但这并不意味着其他线程在那一刻是空闲的。

 

下午好,我对MT5订单系统很关注。我并不反对一般的网状物,但我认为它在5中是生硬的。我一直想弄清楚如何做一个漂亮的MT5中枢,以便在反转没有发生的情况下留在市场中,但不是我不聪明,就是这个任务不可能完成。我注意到,MQ并不想讨论这个问题。我需要详细描述吗?另外,你如何回答这个问题。

目前的订单系统。

а.很好,我们不会改变它。

б.需要改进

IMHO:目前组织交易的唯一方法是让PC始终控制这个过程。但这是一种负担和神经。为什么我需要所有这些担忧--无论是否有联系。我将在市场上投资有意义的钱,所以它对我很重要。

 
Vict:

下午好,我对MT5订单系统很关注。我并不反对一般的网状物,但我认为它在5中是生硬的。我一直想知道如何做一个漂亮的MT5中枢,以便在没有反转的情况下留在市场中,但我不是太笨就是任务不可行。


请给我发私信,我们将讨论。
 
Vict:

...在过去的几天里,我一直试图找出如何制作一个漂亮的MT5中枢,这样,如果没有中枢发生,我就会在市场上,但要么我是哑巴,要么这个任务是不可能的。

你说的 "如果反转没有发生就留在市场上 "是什么意思?你如何扭转一个你有问题的立场?
 

我把市场看成是一个守浪者。我找到第一波,在反弹时进入,目标是三分。我不受任何特定顺序的约束,所以第一波可能同时出现向上和向下的情况。因此,如果我有一个向下或向上的头寸,而一个信号出现在另一个方向,我需要扭转,但它不会取消过去的趋势如果价格超过了最后的反弹,我们就必须回调之前的位置。这一定很让人困惑,下面是图片。

图片的解释。

*高位信号出现,我们开出 买入头寸

*低位信号出现后,现在就没有必要采取买入的立场。我在4中的行动是在1级上锁定利润止损,在老的反弹后获取利润。结果是,如果市场下跌,我就拿一部分利润,如果市场回升,我就等待目标水平3。

*我在MT5中做什么?例如,我扭转了一个头寸以获利。如果市场出现反弹,我如何重新开启之前的买入?我会委托我的EA来做吗(不可靠,我想把这些命令放在服务器上)?我是否应该在1级放置一个买入止损(BuyStop)待定? 但如果价格移动到上方的反弹之下,我应该怎么做,我应该如何删除它?

附加的文件:
x71ec4t1j4.png  15 kb