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

 
Прошу помощи по WinAPI.
#include <WinAPI\WinAPI.mqh>

#define GA_ROOT          0x0002
#define LVM_GETITEMCOUNT 0x1004

void OnStart()
{  
  HANDLE Handle = user32::GetAncestor(::ChartGetInteger(0, CHART_WINDOW_HANDLE), GA_ROOT);
  Handle = user32::GetDlgItem(Handle, 0xE81E);
  Handle = user32::GetDlgItem(Handle, 0x804E);
  Handle = user32::GetDlgItem(Handle, 0x28ED);

  long PrevCount = 0;
  
  while (!IsStopped())
  {
    const long Count = user32::SendMessageW(Handle, LVM_GETITEMCOUNT, 0, 0); // Количество элементов во вкладке Journal.
    
    if (Count != PrevCount)     // Если количество записей во вкладке Journal изменилось,   
      Alert(PrevCount = Count); // алертим.
      
    Sleep(100);
  }
}

Этот скрипт алертит, когда во вкладке Journal Тестера меняется количество записей.


Если нажимать на кнопку Start при активной Journal-вкладке, то скрипт правильно алертит.

Если же выбрана другая вкладка, то алерта нет, пока не переключишься на Journal.

Как заставить обновляться Journal, когда он не выбран (или выбрать его, чтобы он обновился)?

 
fxsaber #:
Прошу помощи по WinAPI.

Этот скрипт алертит, когда во вкладке Journal Тестера меняется количество записей.


Если нажимать на кнопку Start при активной Journal-вкладке, то скрипт правильно алертит.

Если же выбрана другая вкладка, то алерта нет, пока не переключишься на Journal.

Как заставить обновляться Journal, когда он не выбран (или выбрать его, чтобы он обновился)?

Решено через WM_LBUTTONDOWN.

 
Нет предупреждений, что переменные не используются.
void OnStart()
{ 
  int i = 0;
  int k = i;
}
 
fxsaber #:
Нет предупреждений, что переменные не используются.

Потому, что они инициализированы.

 
Alexey Viktorov #:

Потому, что они инициализированы.

Инициализированы и не используются.

 
Почему на фьючерсе Si брокер Финам, платформа метатрейдер 5 при тестировании советника, график результатов выглядит неверно, там появляется просадка которой нет в списке сделок и ордеров, а в бектесте просадка в 200%, например депозит 100 000 рублей, и показывает просадку около 269 000 рублей, когда в списке убыточные сделки по 500 рублей и их не так много по сравнению с прибыльными, а итог теста прибыль 7000? См скрины. Спасибо.
Файлы:
 
fxsaber #:

Инициализированы и не используются.

Я не могу объяснить почему так. Это из личных наблюдений. Проверьте.

 

В английском разделе Доминик Эгерт обнаружил ошибку MT5, при которой пользовательские индикаторы не выпускаются, даже если OnInit() возвращает «INIT_FAILED» (или « INIT_PARAMETERS_INCORRECT »).

Я также подтвердил ошибку в МТ5 и обнаружил, что она корректно работает на МТ4.


In the English section, a MT5 bug has been identified by Dominik Egert where Custom Indicators are not released even when OnInit() returns "INIT_FAILED" (or "INIT_PARAMETERS_INCORRECT").

I also confirmed the bug in MT5 and found that it works correctly on MT4.


Obviously bug in indicators OnInit() return value effect
Obviously bug in indicators OnInit() return value effect
  • 2024.01.28
  • www.mql5.com
It seems return value of indicators is not being respected by terminal. It works for Experts, but not for indicators...
 
Fernando Carreiro #:

В английском разделе Доминик Эгерт обнаружил ошибку MT5, при которой пользовательские индикаторы не выпускаются, даже если OnInit() возвращает «INIT_FAILED» (или « INIT_PARAMETERS_INCORRECT »).

Я также подтвердил ошибку в МТ5 и обнаружил, что она корректно работает на МТ4.


In the English section, a MT5 bug has been identified by Dominik Egert where Custom Indicators are not released even when OnInit() returns "INIT_FAILED" (or "INIT_PARAMETERS_INCORRECT").

I also confirmed the bug in MT5 and found that it works correctly on MT4.


подтверждаю, есть такой баг

даже при обновлении на последнюю бета версию ЕСТЬ

и это баг, это АБЗАЦ :-) где хоть минимальные авто-тесты ????

как такое могло пройти

 
Maxim Kuznetsov #:

как такое могло пройти

MQ не используют индикаторы.

Причина обращения: