Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5 - страница 138

 

Заметил, что MqlTradeRequest имеет приличный зарезервированный размер (112 байт, что замечательно). Сразу подумал о https://www.mql5.com/ru/forum/90051, никто из компании так и не ответил.  Почему бы не вкрутить

ENUM_STOPPRICE_TYPE
ENUM_STOPPRICE_DEFAULT = 0
ENUM_STOPPRICE_BID
ENUM_STOPPRICE_ASK
ENUM_STOPPRICE_LAST

struct MqlTradeRequest {
    ...
    ENUM_STOPPRICE_TYPE stopprice_type;  // Тип цены для активации стоп ордеров.
};


Это не будет ломать обратную совместимость, а для вас - несколько строк кода в серверной части (ну какая разница какую цену брать для проверки активации). sl это также касается.

ЗЫ: для тех, кто кинется называть меня идиотом (а такие наверняка будут) - активация != исполнение.

Стоит ли активировать все стоп-ордера bid'ом?
Стоит ли активировать все стоп-ордера bid'ом?
  • 2016.06.29
  • www.mql5.com
Стоит Не стоит Не понял сути Мне всё равно...
 
pavlick_:

Заметил, что MqlTradeRequest имеет приличный зарезервированный размер (112 байт, что замечательно). Сразу подумал о https://www.mql5.com/ru/forum/90051, никто из компании так и не ответил.  Почему бы не вкрутить

ENUM_STOPPRICE_TYPE
ENUM_STOPPRICE_DEFAULT = 0
ENUM_STOPPRICE_BID
ENUM_STOPPRICE_ASK
ENUM_STOPPRICE_LAST


Это не будет ломать обратную совместимость, а для вас - несколько строк кода в серверной части (ну какая разница какую цену брать для проверки активации). sl это также касается.

ЗЫ: для тех, кто кинется называть меня идиотом (а такие наверняка будут) - активация != исполнение.

Поддерживаю. Неоднократно уже об этом говорилось. В ответ только крутили пальцем у виска. В лучшем случае указывали на то, что это можно реализовать программно (при помощи рыночного ордера).

 
Aleksey Vyazmikin:

Как Вы это представляете в тестере? Как узнать, важность, если нет информации об истории?

Нет, параметр нужный и важный, который в большей степени нужен для экономии вычислительных ресурсов.

Всё просто:  если советник запрашивает исторические данные, то их и нужно загружать в память (за тот период, который запрашивается).  Собственно МТ5 так и работает в обычных условиях (не тестере).  А данный параметр - это рудимент, доставшийся от МТ4.
 
Alexey Navoykov:
Всё просто:  если советник запрашивает исторические данные, то их и нужно загружать в память (за тот период, который запрашивается).  Собственно МТ5 так и работает в обычных условиях (не тестере).  А данный параметр - это рудимент, доставшийся от МТ4.

История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.

 
Aleksey Vyazmikin:

История запрашивается с сервера только если её нет. Параметр критически важен для индикаторов.

Речь не только о запросе с сервера, но и с диска.  В оперативной памяти хранится только то, что используется. Лишнее выгружается.  Поэтому и в тестере надо чтоб работало так же.
 
Спим? 
 
Vladimir Karputov:

Отлично. Значит отложу на время свой код. А потом (скоро) он будет сразу работать на новой функции ArrayRemove!

Build 1980. ArrayRemove заработала.

//+------------------------------------------------------------------+
//|                                                  ArrayRemove.mq5 |
//|                              Copyright © 2019, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2019, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   int array[];
   ArrayResize(array,3);
   array[0]=10;
   array[1]=11;
   array[2]=12;
   ArrayPrint(array);
   Print("ArrayRemove: ",ArrayRemove(array,1,1));
   ArrayPrint(array);
  }
//+------------------------------------------------------------------+

Результат:

10 11 12
ArrayRemove: 1
10 12
Файлы:
 
Подключен к MQ-Demo. 1978 говорит, что он актуальный
2019.02.02 09:02:31.142 Terminal        MetaTrader 5 x64 build 1978 started (MetaQuotes Software Corp.)
...
2019.02.02 09:02:56.895 LiveUpdate      check for beta version
2019.02.02 09:02:56.953 LiveUpdate      you are using the latest version
 
После обновления разрешенные URLs для WebRequest исчезли.
 
fxsaber:
Подключен к MQ-Demo. 1978 говорит, что он актуальный
Выдача обновлений порционная - для сглаживания нагрузки на раздающий сервер.