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

 

При получении тиковой истории с помощью CopyTicks() возвращаются тики предыдущей рабочую сессию терминала, что противоречит описанию функции:

MQL5: Добавлена функция работы с тиковой историей CopyTicks. Функция позволяет получить массив тиков, накопленных терминалом за текущую рабочую сессию. Глубина получаемых тиков ограничена последними 2 000.

Вопрос к разработчикам. Будет ли это исправлено? И можно ли сделать так, чтобы при запуске терминала в него с сервера МQ (или брокера) передавались последние N тиков, чтобы не ждать, пока накопиться история? Просто, вряд ли кому-то нужна тиковая история за какие-то неизвестные N тиков в прошлом. Сервисдеск #1162481

 

У меня в настройках приватности убрана галочка "новые скриншоты", т.е. при их публикации, сообщений в ленте быть не должно.

В моей ленте действительно нет этого сообщения. Однако, сообщение о публикации новых скриншотов есть в лентах новостей моих друзей.

ЗЫ: если так и должно быть, то получается эта настройка вообще никак не относится к приватности )

 
sanyooooook:

У меня в настройках приватности убрана галочка "новые скриншоты", т.е. при их публикации, сообщений в ленте быть не должно.

В моей ленте действительно нет этого сообщения. Однако, сообщение о публикации новых скриншотов есть в лентах новостей моих друзей.

ЗЫ: если так и должно быть, то получается эта настройка вообще никак не относится к приватности )

Спасибо за сообщение,

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

 
Открыл четыре терминала МТ5, они начали обновляться до b.1079. Нормально загрузили обновление, нормально ушли на перезагрузку. А с перезагрузки удалось выйти только половине из них, и то случайно.
Причиной оказалось это самое обновление. На графике ниже процесс обновления одного терминала МТ5 с торговой системой, файл подкачки до и после обновления.

 При обновлении до b.1085 всё осталось по-прежнему.

 

Это что же нужно было сделать с терминалом, чтобы один терминал загадил файл подкачки на 2 Gb ?

 В системе нет "тяжелых" индикаторов. Самый "тяжелый" требует всего 7 мксек на загрузку, два, - по 5, один, - 4, остальные, - 1 мксек и меньше. 

Для сравнения индикатор JMA из CodeBase требует на моей машине 110 мксек, но в системе он не используется.


Таким образом обновившийся МТ5 мгновенно похоронил мою торговую систему, - невозможно работать даже в одном терминале, - а я, соответственно, похоронил его.

Когда в МТ5 в одном флаконе бассейн, магазин и отхожие места, это должно было произойти неизбежно.

Монстеризация хорошего МТ5 началась давно.  Когда количество мусора в прежних версиях МТ5 подвалило к 1 Gb, я забеспокоился и параллельно полностью перевел систему на платформу МТ4. Оказалось, не напрасно. 

В системе одновременно анализируются 8 ТФ, на графике видно три из них. Опережающие торговые сигналы системы генерируются на основе инструментальных измерений

соотношения спрос/предложение, поэтому объективны.

Ниже, - одновременно открыты 5 терминалов МТ4 (для разных вал. пар) с этой же торговой системой и никаких проблем, как видно, пока нет.

 



 
s2101:
Открыл четыре терминала МТ5, они начали обновляться до b.1079. Нормально загрузили обновление, нормально ушли на перезагрузку. А с перезагрузки удалось выйти только половине из них, и то случайно.
Причиной оказалось это самое обновление. На графике ниже процесс обновления одного терминала МТ5 с торговой системой, файл подкачки до и после обновления.

По какой причине вы скрыли показатели физической памяти из скриншота, но не забыли про файл подкачки?

Кроме того, решая столь важный вопрос, вы забыли приложить скриншот из раздела процессов, где видны и реальные затраты памяти на каждый процесс и количество запущенных потоков.

 

На сколько понял, в МТ5 1085 присутствует состояние гонки для установки комментария (Сomment).

Смысл такой - есть индикатор в отдельном окне с кодом:

int OnInit(){
   Comment("AAAAAAAAAAAAAAAAAAAAAAAAA");
}

void OnDeinit(const int reason) {
   Comment("");
}

 Если мы запустим 2 экземпляра индикатора на одном чарте и переключим ТФ, то что увидим в Comment?
В 90% это будет "". (что ли разные очереди в разных потоках  с разным приоритетом для установки Comment из под OnInit и OnDeinit....)

 

Ошибка компиляции

template<typename T>
string ETS( T t ) { return ( typename( t ) == "int" ? "OK" : ::EnumToString( t ) ); }
enum ENUM {     ENUM__ };
void OnStart()
{
        ENUM i1 = ENUM__;       Print( ETS( i1 )); //нормально
        int  i2 = 0;            Print( ETS( i2 )); //ошибка компиляции
}
Зачем во втором случае вычислять ::EnumToString( int ), если тип известен во время компиляции ?
 
ALXIMIKS:

В 90% это будет "".

А что ожидалось? Один пишет - другой стирает.
 
A100:
А что ожидалось? Один пишет - другой стирает.
Вы забыли об второй пишет.

Есть две записи и два стирания. Они асинхронные скорее всего.
По идеи стирание должно быть раньше записи, но увы это не так...
 

Компилятор не обнаруживает ошибку (а она есть - как минимум отсутствует второй #endif), что приводит к невыявлению более существенных ошибок

#property library
#define __MQL5
#ifdef  __MQL5
#ifndef __MQL5
#else
#else
#endif


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