Новая версия платформы MetaTrader 5 build 3390: Float в OpenCL и математических функциях, методы активации и потерь для машинного обучения - страница 4

 
Aliaksandr Hryshyn #:

Вот:

Просмотр массива строк не доступен.

К сожалению ДА, я тоже сегодня нарвался на такую непонятку. Но к счастью, массив работает как надо.

 
Aliaksandr Hryshyn #:

Вот:

Просмотр массива строк не доступен.

Aliaksandr Hryshyn #:

Вот:

Просмотр массива строк не доступен.

Кстати тоже заметил, что некоторые dynamic массивы стали отображаться как fixed и их просмотр недоступен.

 

хотелось бы малюсенькую просьбу к разработчикам, 
в класс  CCanvas добавить функцию  CreateBitmap2, организовать привязку к графику по 2м точкам. 
и обработчик масштаба обьектов в терминале, нарисовал линию, синусоиду или вообще свою картинку и при изменении размеров графика
меняется и масштаб битмапа, по принципу привязок всех графических обьектов по 2м точкам

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

второй момент к этой же теме, добавить возможность создания своей панели инструментов в область где расположены основные панели, но это не обязательно, можно на графике сделать свою панель,

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


так же есть странная ошибка которую сложно сформулировать, например у меня 2 одинаковых индикатора которые рисуют графические обьекты, для того чтобы обьекты не конфликтовали я добавляю к названию уникальный идентификатор который генерируется при инициализации индикатора, тоесть каждый раз он разный, де инит прекрасно удаляет обьекты при ликвидации индикатора, но при смене таймфрейма система уничтожает старый график и создает новый, далее переносит все обьекты, и толку от того что де инит поставил в очередь на удаление обьекты если они уже сохранились и встали в очередь на отрисовку на новом графике, а у индикатора то уже новый уникальный идентификатор так как произошла переинициализация, я удаляю их сервисом с зпдержкойц в 10 секунд через глобальную переменную, которую отправляет индикатор сервису но это как то криво, а сервис бесконечным циклом постоянно грузит проц на 15% просто ради смены таймфрейма раз в неделю, при закрытии терминала тоже поведение обьектов странное, как будто де инит вообще через раз отрабатывает.

 

Уважаемые разработчики, добавьте пож-ста пару свойств для отложенного ордера, аналогичных тем, что есть у позиции:

::PositionGetInteger(POSITION_TIME_UPDATE);
::PositionGetInteger(POSITION_TIME_UPDATE_MSC);

К примеру  ORDER_TIME_UPDATE и  ORDER_TIME_UPDATE_MSC. 

Спасибо.

 
Denis Kirichenko #:

Уважаемые разработчики, добавьте пож-ста пару свойств для отложенного ордера, аналогичных тем, что есть у позиции:

К примеру  ORDER_TIME_UPDATE и  ORDER_TIME_UPDATE_MSC. 

Спасибо.

Очень хорошее и полезное предложение, поддерживаю!

 

Добавьте пожалуйста в OBJ_ARROW возможность привязки к ценам, что-бы это выглядело по типу выделения лини, при множестве сделок с ценовыми метками график засоряется

 

Вывод в комментарий любого количества EnumToString() выводит во всех строках только значение самого первого enum из списка значений, выводимых в комментарий.

Если перед выводом enum'ов в комментарий вывести какую-нибудь строковую переменную, то во всех результатах EnumToString() функция Comment() выведет значение этой переменной.

Если же предварительно результаты, возвращаемые из EnumToString() записать в переменные и в комментарий выводить значения переменных, то всё нормально.

Print()  в отличие от Comment() правильно выводит значения из EnumToString().

К сожалению, нет возможности привести тестовый пример.

Билд 3368

 
Artyom Trishkin #:

Вывод в комментарий любого количества EnumToString() выводит во всех строках только значение самого первого enum из списка значений, выводимых в комментарий.

Если перед выводом enum'ов в комментарий вывести какую-нибудь строковую переменную, то во всех результатах EnumToString() функция Comment() выведет значение этой переменной.

Если же предварительно результаты, возвращаемые из EnumToString() записать в переменные и в комментарий выводить значения переменных, то всё нормально.

Print()  в отличие от Comment() правильно выводит значения из EnumToString().

К сожалению, нет возможности привести тестовый пример.

Билд 3368

Вот код для проверки

/********************************************************************\
|   ChartEvent function                                              |
\********************************************************************/
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
 {
  if(id == CHARTEVENT_CLICK)
   {
    //string enum_1 = EnumToString(ENUM_CHART_MODE(1)),
    //       enum_2 = EnumToString((ENUM_CHART_EVENT)id);
    //Comment("id ", id, "\n",
    //        enum_1, "\n",
    //        "lparam ", lparam, "\n",
    //        "ID=",id,": ToString: ",enum_2, "\n",
    //        "dparam ", dparam, "\n",
    //        "");
    Comment("id ", id, "\n",
            "lparam ", lparam, "\n",
            "dparam ", dparam, "\n",
            EnumToString(ENUM_CHART_MODE(1)), "\n",
            EnumToString((ENUM_CHART_EVENT)id), "\n",
            "");
   }
 }/******************************************************************/

результат


Вариант с переменными

/********************************************************************\
|   ChartEvent function                                              |
\********************************************************************/
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
 {
  if(id == CHARTEVENT_CLICK)
   {
    string enum_1 = EnumToString(ENUM_CHART_MODE(1)),
           enum_2 = EnumToString((ENUM_CHART_EVENT)id);
    Comment("id ", id, "\n",
            enum_1, "\n",
            "lparam ", lparam, "\n",
            "ID=",id,": ToString: ",enum_2, "\n",
            "dparam ", dparam, "\n",
            "");
    //Comment("id ", id, "\n",
    //        "lparam ", lparam, "\n",
    //        "dparam ", dparam, "\n",
    //        EnumToString(ENUM_CHART_MODE(1)), "\n",
    //        EnumToString((ENUM_CHART_EVENT)id), "\n",
    //        "");
   }
 }/******************************************************************/

результат


Файлы:
TestBug.mq5  5 kb
 
Artyom Trishkin #:

Вывод в комментарий любого количества EnumToString() выводит во всех строках только значение самого первого enum из списка значений, выводимых в комментарий.

Если перед выводом enum'ов в комментарий вывести какую-нибудь строковую переменную, то во всех результатах EnumToString() функция Comment() выведет значение этой переменной.

Если же предварительно результаты, возвращаемые из EnumToString() записать в переменные и в комментарий выводить значения переменных, то всё нормально.

Print()  в отличие от Comment() правильно выводит значения из EnumToString().

К сожалению, нет возможности привести тестовый пример.

Билд 3368

Спасибо, исправлено.

Действительно, для всех вызовов EnumToString в качестве параметров функции, использовалась одна и та же строковая переменная-результат.

 
Alexey Viktorov #:

Вот код для проверки

Спасибо