错误、漏洞、问题 - 页 529

 

我的问题已经飞走了)。我再说一遍。

tol64:
Почему то между 2001 и 2006 годом не тестируются эксперты. Смотрел по евро и фунту. Закрыл терминал, удалил историю. Закачалась заново. Всё равно. До 2001 сделки открываются. А начиная с 2001 по 2006 при наличии сигналов пропуск. Почему?

---
Дополнительная информация. Это происходит только, если в настройках тестера выбран таймфрейм D1. Если выбрать таймфрейм D1 в настройках эксперта, а в настройках тестера меньший ТФ, то пропуска нет. Это баг или есть какое-то этому объяснение? 

有人遇到过类似的问题吗?
 
Yedelkin:
那么,看看作者给出的代码 吧。在什么情况下会调用PositionGetDouble :)

嗯,是的,我们在确定原则上没有职位,并且选择某个职位失败后,就会得到数据...

这在某种程度上是很奇怪的。

 
papaklass:

对韦德金。

再一次。参考文献说,为了保证新鲜的位置数据,建议在调用它们之前就调用PositionSelect( Symbol( ) )函数。我在这里提供的代码反驳了这种说法。从逻辑上讲,这段代码本身是荒谬的,但它强调了帮助中的声明的不正确性。

现在。

而错误在于,如果没有位置,PositionGetDouble(POSITION_VOLUME)函数应该返回0。就这样了。IMHO。

不,你错了....

返回零,如果 (PositionSelect() )的位置,音量=0。

或者你认为,如果没有头寸,你应该返回0,开盘价=0

 
papaklass:

而错误在于,如果没有位置,PositionGetDouble(POSITION_VOLUME)函数应该返回0。

:)其 "缺陷 "在于,在没有一个开放性职位的情况下,要求其提供数据并根据这些数据进行进一步计算是没有意义的。

好吧,让我们说你肯定知道没有位置。那么,如果你已经知道没有位置,为什么还要要求它的数据(做额外的步骤)?重写一下代码比较容易。

纸杯

再一次。参考文献说,为了保证获得新鲜的位置数据,建议在调用PositionSelect( Symbol())函数 之前就调用它。我在这里提供的代码反驳了这种说法。从逻辑上讲,这段代码本身是荒谬的,但它强调了帮助中的声明的不正确性。

上面的代码 只说作者 "为了保证新鲜的数据 "调用PositionSelect()函数,该函数报告其失败,但作者仍然需要新鲜的位置数据。这是否正确?

但随后我们得到了以下信息。

  • (a) PositionSelect函数的失败意味着新鲜的位置数据没有被复制到软件环境中(如作者所愿);
  • (b) 随后对PositionGetDouble、PositionGetInteger和PositionGetString的调用将返回之前PositionSelect函数成功时复制过的数据

换句话说,开发人员建议调用该函数,以便在该函数成功完成后继续处理新鲜的位置数据,如果该函数返回错误,他们根本不承诺任何事情。 ...当收到错误时,开发人员建议的程序有些不同:)

2.此外,让我们考虑一个新版本的代码。

if(PositionSelect(Symbol()))
   {//---еще одно непосредственное обращение
      //---например, расчитываем объем позиции при доливки
   } 
else 
   {
      //---например, расчитываем объем позиции при отсутствии позиции
   }

在这里,如果PositionSelect() 函数失败, 就会提示我们 "在没有位置时 计算位置量"但谁说PositionSelect() 函数的失败 自动意味着没有位置?PositionSelect() 函数失败的原因可能是不同的。

 

我想再一次纠缠开发商......

我想通过画图告诉大家,当达到一定价格时,能够删除挂单 是非常重要的。作为MT4交易员,我对没有这样的选项更感兴趣。 请告诉我你们在这个方向的未来计划是什么。谢谢你。

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
附加的文件:
zhq04b2p01.png  16 kb
 

在使用测试器工作时,终端经常崩溃。

 
tol64:

在使用测试器工作时,终端经常崩溃。

终端崩溃的情况会以自动模式定期报告给开发者。但如果你愿意,你可以向裁谈会提出申请,说明所有细节并附上日志。
 
tol64:

在使用测试器工作时,终端经常崩溃。

向服务台详细描述你的情况,具体说明

  • 测试期间专家顾问的输入参数
  • 附上指示器(指示器在固定后将被移除)。
 
Interesting:
终端的崩溃报告似乎经常自动送来给开发者。但如果你愿意,你可以向CA提出请求,在那里你可以指定所有的细节并附上日志。
那么,如果在互联网上,那些在细节>> 中的信息会自动发送给开发人员吗?如果是这样,那就好了。一切都应该是自动化的。)
 
ALozovoy:

向服务台详细描述你的情况,具体说明

  • 测试期间专家顾问的输入参数
  • 附上指示器(指示器在固定后将被移除)。

好的,我以后会做的。
原因: