Ошибки, баги, вопросы - страница 3421

 
Vladimir Simakov #:

PS. ~0u==-1. Ты даже не представляешь, сколько реальных и потенциальных багов вокруг этой темы в production реальных проектов)

Осталось понять, "заботливые" Warning в конечном счете привели к увеличению или уменьшению количества этих багов:

int f() { return -1; }
void OnStart()
{
    if (f() == (uint(-1))) //Warning: expression is always 'false'
        Print( "TRUE"  );
    else
        Print( "FALSE" );
}

Если 

                                      expression is always 'false'

то какой будет результат в этом примере? TRUE или FALSE ?

А теперь проверьте результат в MQL

 
A100 #:

Осталось понять, "заботливые" Warning в конечном счете привели к увеличению или уменьшению количества этих багов:

Если 

то какой будет результат в этом примере? TRUE или FALSE ?

А теперь проверьте результат в MQL

Кривой Warning. А они вообще у всех кривые, иначе их подавления не было бы. А насчет их полезности. Лично я стараюсь, что бы их не было. И да, реальные ляпы, которые в рантайме не разу не явно проявлялись бы они очень часто помогали не допустить)

 
fxsaber #:

Скорее всего, результат будет зависеть от компилятора. Кто-то будет делать (uint)(-1), кто-то - (int)(i).

Да нет, это именно стандарт и все компиляторы обязаны одинаково это делать

 

Добрый день!

Подскажите пожалуйста, как отследить число срабатываний take profit в роботе для mql5?

Счет неттинговый.

С уважением, Александр

 

Добрый день!

Подскажите пожалуйста, как отследить число трейдов в роботе для mql5?

Счет неттинговый.

Функция HistoryDealsTotal() дает количество сделок, а мне нужны завершенные трейды.

С уважением, Александр

 

Нет карты


Нет карты расположения агентов тестирования. Просто точка в пустоте. Где же карта?

Пробовал на двух разных браузерах, карты нет. Может, что-то в моих настройках?

 

Ошибка при выполнении в последнем выпуске 4075

#define MACRO   1
#ifndef MACRO
#define MACRO   2
//#else
#undef  MACRO
#define MACRO   3
#endif
void OnStart()
{
    Print( MACRO );
}

Результат:   3

Ожидалось: 1

А раньше все нормально было

 

klycko #:


Функция HistoryDealsTotal() дает количество сделок, а мне нужны завершенные трейды.

Пример из учебника. Можно обработать каждую сделку. Надеюсь это поможет:

https://www.mql5.com/ru/docs/trading/historydealgetticket

Документация по MQL5: Торговые функции / HistoryDealGetTicket
Документация по MQL5: Торговые функции / HistoryDealGetTicket
  • www.mql5.com
HistoryDealGetTicket - Торговые функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
A100 #:

Ошибка при выполнении в последнем выпуске 4075

И теперь еще с двумя #else компилируется

#ifndef MACRO1
#else
#define MACRO2  2
#else             //???
#define MACRO2  3
#endif
void OnStart()
{
    Print( MACRO2 );
}

Результат: 3

 
Putnik #:


Нет карты расположения агентов тестирования. Просто точка в пустоте. Где же карта?

Пробовал на двух разных браузерах, карты нет. Может, что-то в моих настройках?

Обновите IE до последней версии