Особенности языка mql5, тонкости и приёмы работы - страница 164

 
Vict:

Какие кодовые страницы, о чем вы вообще? "специальными кодами" определяется кол-во байт для кодирования символа, т.к. кодировка с переменной длинной. UTF-8 не хуже UTF-16 закодирует любой символ юникода. И utf-16 с переменной длиной (суррогатные пары).

Обсуждать устройство Unicode здесь задача не стоит.

 
Edgar Akhmadeev:

Это ещё не всё.

Как ANSI Cyrillic = CP1251, так

Unicode:

UTF-8 = CP65001, // UNIX/Linux

UTF-16LE = CP1200, // Windows

UTF-16BE = CP1251, 

UTF-32LE = ?,

UTF-32BE = ?,

ISO10646:

UCS-2 ~ UTF-16

UCS-4 = UTF-32

Путаница? Не, не слыхали.

Точно, ещё же разная архитектура платформ, по этому под Windows все и говорят тут, что UTF-16LE/BE
Ведь терминал под Windows написан, дошло теперь ))

 
Комментарии, не относящиеся к этой теме, были перенесены в "Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам".
 
ArrayCopy позволяет легко перестраивать "матрицы".
void OnStart()
{
  int Array1[];
  int Array2[][2];
  
  ArrayResize(Array1, 6);
  
  Array1[0] = 0;
  Array1[1] = 1;
  Array1[2] = 2;
  Array1[3] = 3;
  Array1[4] = 4;
  Array1[5] = 5;
  
  Print(ArrayCopy(Array2, Array1));

  ArrayPrint(Array2);      
}


    [,0][,1]
[0,]   0   1
[1,]   2   3
[2,]   4   5


Жаль, что ArraySwap этого не может.

 
Чтобы включить возможность профилирования советника на реальных данных, добавляю в него эти строки.
const int TimeToStop = 100 * EventSetTimer(1); // Сколько секунд на профилирование.

void OnTimer()
{
  static int Timer = 0;
  
  if (Timer++ >= TimeToStop)
    ExpertRemove();
}
 
fxsaber:
Чтобы включить возможность профилирования советника на реальных данных, добавляю в него эти строки.

Чем не подходит ручная остановка профилировщика?

 
Andrey Khatimlianskii:

Чем не подходит ручная остановка профилировщика?

Ручная остановка не выдает результаты профилирования, к сожалению.

 
fxsaber:

Ручная остановка не выдает результаты профилирования, к сожалению.

Какая-то проблема с кодом, значит. У меня выдает.

 
fxsaber:

Ручная остановка не выдает результаты профилирования, к сожалению.

Такая же проблема. 
Стоит запустить профилирование с кодом, который читает историю на 30 000 сделок (5 лет торгов) и результата профилирования нет. 
HistorySelect жрёт......
Я уже и в массив пробовал а дальше работаю с массивом. Тормоза меньше стали , но они есть. 
 
Vladislav Andruschenko:
Такая же проблема. 
Стоит запустить профилирование с кодом, который читает историю на 30 000 сделок (5 лет торгов) и результата нет. 

Да, у меня чтение истории присутствует.

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