Новая версия платформы MetaTrader 5 build 2265: Функции DirectX для 3D-визуализации в MQL5 и настройка инструментов в тестере стратегий - страница 10

 
2265 - починили, Спасибо.
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

fxsaber, 2019.12.04 23:10

Локализовал проблему.

#include <WinAPI\WinAPI.mqh>

#define GA_ROOT           0x00000002

void OnDeinit( const int )
{
  static const int ControlID[] = {0xE81E, 0x804E, 0x2712, 0x4196};
  
  long Handle = user32::GetAncestor(::ChartGetInteger(0, CHART_WINDOW_HANDLE), GA_ROOT);
                                                                                        
  for (int i = 0; i < sizeof(ControlID) / sizeof(int); i++)                             
    Handle = user32::GetDlgItem(Handle, ControlID[i]);

  ushort Str[6];
  user32::GetWindowTextW(Handle, Str, sizeof(Str) / sizeof(ushort)); // Freeze
}


Запускаете этот советник на чарте и потом руками снимаете. Будет зависание Терминала.

Выполнение этого же кода в любой другой On-функции зависания не производит.


2265 - актуально.

 
не могу найти как отключить кастомизацию настроек символов  тестере значок остается со звездочкой, хотя и захожу в настройку и жму - по умолчанию, и всеравно в тесте пишет EURUSD: custom settings for the symbol applied from file 'MQL5\Profiles\Tester\Symbols\EURUSD.txt'

 
Fast235:
не могу найти как отключить кастомизацию настроек символов  тестере значок остается со звездочкой, хотя и захожу в настройку и жму - по умолчанию, и всеравно в тесте пишет EURUSD: custom settings for the symbol applied from file 'MQL5\Profiles\Tester\Symbols\EURUSD.txt'

Да, там по-моему есть баг - стоит один раз изменить параметры тестируемого символа, и далее он будет постоянно отображаться как изменённый:

И никакие обновления на последние билды этого не меняют - EURUSD был мною изменён один раз при выходе первого билда, позволяющего менять параметры тестируемых символов. И теперь он у меня всегда "кастомный". Вот и фунт теперь таким будет - неважно, жму я потом "Default", или возвращаю режим исполнения на тот, который был до изменения - параметры символа стандартные, но он отображается как пользовательский.

 

хотелось бы в редакторе при "минимизированном" окне Инструменты, что-бы она сигнализировала при ошибках компиляции, пока все время выношу панель в отдельное окно



 
Ни у кого нет зависания тестера с черными полосами в момент запуска визуального тестирования?
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Новая версия платформы MetaTrader 5 build 2190

Flops, 2019.11.09 01:57

...

сильно замедлилась компиляция при отключенной оптимизации):

2190
0 error(s), 0 warning(s), 395 msec elapsed without optimizations                1       1  // OPTIMIZE=0
0 error(s), 0 warning(s), 10754 msec elapsed            1       1                          // OPTIMIZE=1

2204
0 error(s), 0 warning(s), 1758 msec elapsed without optimizations               1       1  // OPTIMIZE=0
0 error(s), 0 warning(s), 10814 msec elapsed            1       1                          // OPTIMIZE=1

Проблема осталась в 2265. Очень раздражает. Приходится откатываться на предыдущую версию.

При компиляции из командной строки такой проблемы нет.


Кажется, эта проблема есть не только при компиляции, иногда при открытии и закрытии файлов есть подобные подвисания на секунду-две.

 

Форум по трейдингу, автоматизированным торговым системам и тестированию торговых стратегий

Некоторые инструменты не работают с новой сборкой MT5 2265 - как это исправить?

Ален Верлейен , 2019.12.07 17:33

Я смог изолировать проблему с использованием StringTrimRight () со строкой достаточно длинной (может быть, также связанной с содержимым строки?).

 //+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
   string datastr= "!sjkhdsjkhsdjkshdkjhdskdhskdhsjdhh;!                              ; ;qhwjdhw;jqjdhwk;dhwd;!                               ; DWDWDWDWDWDWDD                     ;                       ;                     ;                              ; !                              ; !                  ;             sjkgdsakjdhgskdgskdlhgsadhlgsdhsjgdshlds; odywqoudhwpiuddhpqwihdwiphdpqwidhwp; !ajkhqqwkjdhwkjdhwdkwjhdwkjdhwdjkh; wqhwpiudwhdiuwdhwiudhwiduwhdhdHHQIUHU; dkjqhwdkjwhdwkqjdhwdjkwdhqdkjqhwdkq; q;hiiqwidjwodiwjdowidjwiodwiiiIIIIQOWIEJQOIj; !wsuipqypwiuwhHHPIHPIUQHqkjwhqkjwhqkw;            !                        ;                                                                                                                                                                                                                               " ;
   StringTrimRight (datastr); 
  }

MT5 не дает сбоя в этом простом тесте, как в советнике, но имеет место нарушение прав доступа.

2019.12.07 11: 31: 44.732 MT52265_Crash (DA6Z19, M5) Нарушение доступа при 0x00007FF6D711AE30 с чтением в 0xFFFFFFFFFFFFFFFF
2019.12.07 11: 31: 44.733 Сбой MT52265_Crash (DA6Z19, M5) -> 00007FF6D711AE30 488B0E mov rcx, [rsi]
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE33 4889CE mov rsi, rcx
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE36 4883E6FC и rsi, 0xfc
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE3A F6C102 тестовый кл, 0x2
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE3D 74F1 jz 0x7ff6d711ae30
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5)
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE3F 488B4A08 mov rcx, [rdx + 0x8]
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00007FF6D711AE43 F6C102 тестовый кл, 0x2
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5)
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 00: 0x00007FF6D711AE30
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 01: 0x00007FF6D7793ED9
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 02: 0x00007FF6D77CAEAA
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 03: 0x00007FF6D7949F43
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 04: 0x00007FF6D7108966
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 05: 0x00007FF6D728ED9D
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 06: 0x00007FF6D7299A30
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 07: 0x00007FF6D7B0980C
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 08: 0x00007FFB7A977BD4
2019.12.07 11: 31: 44.733 MT52265_Crash (DA6Z19, M5) 09: 0x00007FFB7BFCCED1


 

Форвард-тест перед запуском так и  зависает.

Тестер при загрузке продолжает вешать терминал.

Графики оптимизации......

 
Artyom Trishkin:

Да, там по-моему есть баг - стоит один раз изменить параметры тестируемого символа, и далее он будет постоянно отображаться как изменённый:

И никакие обновления на последние билды этого не меняют - EURUSD был мною изменён один раз при выходе первого билда, позволяющего менять параметры тестируемых символов. И теперь он у меня всегда "кастомный". Вот и фунт теперь таким будет - неважно, жму я потом "Default", или возвращаю режим исполнения на тот, который был до изменения - параметры символа стандартные, но он отображается как пользовательский.

1. Удалить файл MQL5\Profiles\Tester\Symbols\EURUSD.txt
2. Зайти в настройки символа, нажать на Default, потом нажать Ok
Причина обращения: