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

 
Alexey Viktorov #:

Я тоже неоднократно просил вставить в контекстное меню

пункт "Сохранить как". Тоже никому не помешает, вставить не более пары минут с учётом открытия нужного места файла. Но никто не реагирует на это. Вот я и думаю, а если это так-же мало кому надо, то и вспоминать об этом уже не имеет смысла.

мне тоже это бы пригодилось.

нужно, думаю, напоминать периодически разработчикам.

тут другая проблема на форуме, как озвучишь какое то рацпредложение, так сразу набегают те, кому это нововведение уже причиняет душевную боль даже до реализации.)) иначе я не могу объяснить попытки помешать внедрению чего либо. 

 
Alexey Viktorov #:

пункт "Сохранить как".

Нажать.

  1. ALT+F.
  2. A.
Где-то 100 мс уходит на это.
 
fxsaber #:

Нажать.

  1. ALT+F.
  2. A.
Где-то 100 мс уходит на это.

Дело не в потраченном времени, а в удобстве, лично для меня. Сам я это сделать не смогу, а привыкать к другим примочкам уже не комильфо в моём возрасте. Уж лучше я буду пользоваться по старинке меню «Файл —> сохранить как».

 
Andrey Dik #:

0 errors, 0 warnings, 1256 msec elapsed

А можно попросить разработчиков выводить в результаты компиляции, кроме того что есть, ещё локальное время и имя программы, которой была выполнена компиляция?

И размер EX5 c полным путем. Есть еще режим пакетной компиляции.

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

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

fxsaber, 2022.05.25 08:16

0 errors, 0 warnings, 66366 msec elapsed
4 files total, 0 errors, 0 warnings

Просьба по CTRL+F7 выводить общее время компиляции - см. нижнюю строку.

Интересно еще количество файлов исходного кода компилируемой программы и их суммарный размер ДО предобработки компилятора и после предобработки (выкидывание ненужных функций и т.д.).
 
Alexey Viktorov #:

Дело не в потраченном времени, а в удобстве, лично для меня. Сам я это сделать не смогу, а привыкать к другим примочкам уже не комильфо в моём возрасте. Уж лучше я буду пользоваться по старинке меню «Файл —> сохранить как».

Круто, когда так часто приходят в голову новые идеи, что приходится создавать под них новые файлы. Сам почти 100% времени кодирую в старых файлах.

 
fxsaber #:

И размер EX5 c полным путем. Есть еще режим пакетной компиляции.

Интересно еще количество файлов исходного кода компилируемой программы и их суммарный размер ДО предобработки компилятора и после предобработки (выкидывание ненужных функций и т.д.).

+++

 
fxsaber #:

Круто, когда так часто приходят в голову новые идеи, что приходится создавать под них новые файлы. Сам почти 100% времени кодирую в старых файлах.

Чужие мысли могут и чаще приходить.

Просто я не создаю новые файлы, а просто в файле "Test" или "00" начинаю писать, запускаю несколько раз отладку… А потом всё это проще сохранить с нормальным именем в другую папку и продолжить…

Потом, если всё работает нормально, а надо проверить ещё одну СМСку… а вдруг будет хуже? Так чтобы безболезненно вернуться к исходному коду, проще почудить в другом файле, который можно и выкинуть и вернуться к тому который сохранял «как»
 

Уважаемые разработчики!

В тестере стратегий на графике отсутствует возможность отключения шкалы цен и шкалы времени. Исправьте пожалуйста. Это затрудняет тестирование стратегий со своим интерфейсом.


 

Напишу сюда - билд 3320 - убил кучу времени на выявления аномалии, по порядку.

Делай раз

//+------------------------------------------------------------------+
//|                                                     Test_Nol.mq5 |
//|                                                          -Aleks- |
//|                            https://www.mql5.com/ru/users/-aleks- |
//+------------------------------------------------------------------+
#property copyright "-Aleks-"
#property link      "https://www.mql5.com/ru/users/-aleks-"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
   double arr_Znach[]={0,0};
   double Load_arr_Znach[];
//ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
   int N_Par=ArraySize(arr_Znach)/4;

   int N_Combo=0;
   int arr_N_Combo[];
   int Total_Combo=1;
   ArrayResize(arr_N_Combo,2);
   ArrayInitialize(arr_N_Combo,-1);
   for(int i=0; i<1; i++)
   {
      arr_N_Combo[0]=int(1/arr_Znach[0]);
      arr_N_Combo[1]=int(1/arr_Znach[1]);
   }
   Print(1/arr_Znach[0]);
   Print("===========arr_N_Combo 1============");
   ArrayPrint(arr_N_Combo);
//ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
}
//+------------------------------------------------------------------+

Получаем

2022.06.07 20:50:02.589 Test_Nol (Si Splice,H1) inf
2022.06.07 20:50:02.589 Test_Nol (Si Splice,H1) ===========arr_N_Combo 1============
2022.06.07 20:50:02.589 Test_Nol (Si Splice,H1) 0 0

То inf, то ноль - отчего так?

Делай два

//+------------------------------------------------------------------+
//|                                                     Test_Nol.mq5 |
//|                                                          -Aleks- |
//|                            https://www.mql5.com/ru/users/-aleks- |
//+------------------------------------------------------------------+
#property copyright "-Aleks-"
#property link      "https://www.mql5.com/ru/users/-aleks-"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
   double arr_Znach[]={0,0};
   double Load_arr_Znach[];
//ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
   int N_Par=ArraySize(arr_Znach)/4;

   int N_Combo=0;
   int arr_N_Combo[];
   int Total_Combo=1;
   ArrayResize(arr_N_Combo,2);
   ArrayInitialize(arr_N_Combo,-1);
   for(int i=0; i<1; i++)
   {
      arr_N_Combo[0]=int(1/arr_Znach[0]);
      arr_N_Combo[1]=int(1/arr_Znach[1]);
   }
   Print(1/arr_Znach[0]);
   Print("===========arr_N_Combo 1============");
   ArrayPrint(arr_N_Combo);
ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
}
//+------------------------------------------------------------------+

Получаем


2022.06.07 20:51:33.076	Test_Nol (Si Splice,H1)	inf 
2022.06.07 20:51:33.076 Test_Nol (Si Splice,H1) ===========arr_N_Combo 1============
2022.06.07 20:51:33.076 Test_Nol (Si Splice,H1)           0 -2147483648

И делай три

//+------------------------------------------------------------------+
//|                                                     Test_Nol.mq5 |
//|                                                          -Aleks- |
//|                            https://www.mql5.com/ru/users/-aleks- |
//+------------------------------------------------------------------+
#property copyright "-Aleks-"
#property link      "https://www.mql5.com/ru/users/-aleks-"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
   double arr_Znach[]={0,0};
   double Load_arr_Znach[];
ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
   int N_Par=ArraySize(arr_Znach)/4;

   int N_Combo=0;
   int arr_N_Combo[];
   int Total_Combo=1;
   ArrayResize(arr_N_Combo,2);
   ArrayInitialize(arr_N_Combo,-1);
   for(int i=0; i<1; i++)
   {
      arr_N_Combo[0]=int(1/arr_Znach[0]);
      arr_N_Combo[1]=int(1/arr_Znach[1]);
   }
   Print(1/arr_Znach[0]);
   Print("===========arr_N_Combo 1============");
   ArrayPrint(arr_N_Combo);
//ArrayCopy(Load_arr_Znach,arr_Znach,0,0,WHOLE_ARRAY);
}
//+------------------------------------------------------------------+

получаем уже

2022.06.07 20:52:34.128	Test_Nol (Si Splice,H1)	inf
2022.06.07 20:52:34.128 Test_Nol (Si Splice,H1) ===========arr_N_Combo 1============
2022.06.07 20:52:34.128 Test_Nol (Si Splice,H1) -2147483648 -2147483648

Думаю, это сделано для развития шизофрении...

 
Aleksey Vyazmikin #:

Напишу сюда - билд 3320 - убил кучу времени на выявления аномалии

Локализовал.
void OnStart()
{
  const double dArray[] = {0};
  double dArrayTmp[];
  
//  ArrayCopy(dArrayTmp, dArray); // Наличие/отсутствие этой строки влияет на элементы int[] массива (см. вывод).
  
  int iArray[];
  ArrayResize(iArray, 2);
  
  iArray[0] = (int)(1 / dArray[0]);
  iArray[1] = (int)(1 / dArray[0]);
  
  ArrayPrint(iArray); // Вывод массива.
  
//  ArrayCopy(dArrayTmp, dArray); // Наличие/отсутствие этой строки влияет на элементы int[] массива (см. вывод).
}
Причина обращения: