Новая версия платформы MetaTrader 5 build 2650: Фоновая загрузка графиков и улучшения в профилировщике MQL5-кода - страница 13

 
Извините, друзья, за предложение: хорошо бы в терминале сделать так, чтобы не залипал тренд до самого края: то вверх, то вниз. хорошо, что есть кнопка для отодвигания конца тренда от правой стенки. а он ещё вплотную часто придвигается к верхней и нижней. не видно профита моего, только стопы вижу. приходится переходить на большущие таймфреймы, что неудобно, потому что там только узенькая полосочка видна из моей сделки. если в будущем это решится - буду рад. потому что часто беспокоит такое. хочется немного отодвинуть тренд от края. куда писать это предложение - ещё не знаю. может есть специальное место? спасибо за внимание.
 
Александр Яворский:
Извините, друзья, за предложение: хорошо бы в терминале сделать так, чтобы не залипал тренд до самого края: то вверх, то вниз. хорошо, что есть кнопка для отодвигания конца тренда от правой стенки. а он ещё вплотную часто придвигается к верхней и нижней. не видно профита моего, только стопы вижу. приходится переходить на большущие таймфреймы, что неудобно, потому что там только узенькая полосочка видна из моей сделки. если в будущем это решится - буду рад. потому что часто беспокоит такое. хочется немного отодвинуть тренд от края. куда писать это предложение - ещё не знаю. может есть специальное место? спасибо за внимание.

Можно во фрилансе заказать советник/скрипт, который будет масштабировать высоту графика.

А руками можно просто зажать левую кнопку мыши на ценовой шкале и изменить масштаб, сузив график.
 
Aleksey Vyazmikin:
А руками можно просто зажать левую кнопку мыши на ценовой шкале и изменить масштаб, сузив график.
Ух ты, точно! Очень благодарю Вас, добрый человек! Всё уже есть в готовом виде.
 
Александр Яворский:
Ух ты, точно! Очень благодарю Вас, добрый человек! Всё уже есть в готовом виде.

Рад помочь!

 
Довольно серьезный CopyTicks-баг.
void OnStart()
{
  MqlTick Ticks[];
  
  // Если закомментировать эту строку
  Alert(::CopyTicksRange(_Symbol, Ticks, COPY_TICKS_ALL, D'2020.06.01' * 1000, LONG_MAX));
  
  // Или раскомментировать эту.
//  ArrayFree(Ticks);
  
  // То будет зависание здесь. А если ничего не менять, то отработает без проблем.
  Alert(::CopyTicksRange(_Symbol, Ticks, COPY_TICKS_ALL, D'2020.05.01' * 1000, LONG_MAX));
}

Вроде, появился баг в b2652. Воспроизводится на торговом сервере RannForex-Server.
 
fxsaber:
Довольно серьезный CopyTicks-баг.
Вроде, появился баг в b2652. Воспроизводится на торговом сервере RannForex-Server.

Нужно больше подробностей. Что значит "зависание"? Только на этом сервере? Только на одном символе? Каком?  Что пишется в логах терминала и эксперта?

 
Anton:

Нужно больше подробностей. Что значит "зависание"? Только на этом сервере? Только на одном символе? Каком?  Что пишется в логах терминала и эксперта?

Зависание - это отсутствие выхода из CopyTicks. При этом CPU на нуле. Прервать можно только через Abnormal termination.

Пробовал несколько символов на этом сервере - везде воспроизвелось. Другие сервера не смотрел.

В логах пусто. Срабатывает только первый Алерт. Перезагрузка Терминала не помогает.

 
fxsaber:
Довольно серьезный CopyTicks-баг.
Вроде, появился баг в b2652. Воспроизводится на торговом сервере RannForex-Server.

У меня скрипт выполняется около 50 сек в холодном варианте - на символе минимум истории тиков. Правда результат выполнения функции CopyTicksRange() = -1 и ошибка :

ERR_HISTORY_NOT_FOUND

4401


Любопытно, что в самой Документации для функции CopyTicksRange()  про ошибку "Запрашиваемая история не найдена" (4401) ни гу-гу...

void OnStart()
{
  MqlTick Ticks[];
  
  // Если закомментировать эту строку
  // Alert(::CopyTicksRange(_Symbol, Ticks, COPY_TICKS_ALL, D'2020.06.01' * 1000, LONG_MAX));
  
  // Или раскомментировать эту.
  //  ArrayFree(Ticks);
  
  // То будет зависание здесь. А если ничего не менять, то отработает без проблем.
  Alert(::CopyTicksRange(_Symbol, Ticks, COPY_TICKS_ALL, D'2020.05.01' * 1000, LONG_MAX));
}
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicksRange
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicksRange
  • www.mql5.com
[out]  Cтатический или динамический массив MqlTick для приема тиков. Если в статический массив не вмещаются все тики из запрошенного интервала времени, то будет получено столько тиков, сколько помещается в массив. При этом функция сгенерирует ошибку ERR_HISTORY_SMALL_BUFFER (4407) . ERR_NOT_ENOUGH_MEMORY – не хватает памяти для получения...
 
Denis Kirichenko:

У меня скрипт выполняется около 50 сек в холодном варианте - на символе минимум истории тиков. Правда результат выполнения функции CopyTicksRange() = -1 и ошибка 

А если оригинал без изменений запустить?

 
fxsaber:

А если оригинал без изменений запустить?

Жрёт память немилосердно.


Несколько минут висит. Дальше сам убиваю процесс.