Выпущена бета-версия MetaTrader 4 Build 529 с новым компилятором - страница 106

 
serferrer:
Сейчас отсутствует значение спреда (возможно и биржевой объем ) в структуре MqlRates, это будет добавлено позже?
Когда-нибудь - да, возможно
 
stringo:

Тут несколько сложнее. Структура, которую принимают dll тоже поменялась.

То есть, Вам необходимо переписать ArrayCopyRates в массив структур MqlRates. Также в Ваших dll нужно заменить описание соответствующей структуры

 
Patrol:
Это я, увы, понимаю. А имел в виду вот что:

Существующие DLL принимают в качестве входных параметров ссылку на такой массив и его длину по первому измерению. Если я перед каждым вызовом функции из DLL буду вызывать ArrayCopyRates(), передавая ей в качестве первого параметра ссылку на массив double[][6] и получая в качестве возвращенного значения чмсло реально скопированных баров, то в коде DLL можно пока ничего не менять, верно?

Или я ошибаюсь и структура этого массива тоже изменилась? Сейчас она выглядит так (порядок следования цен OLHC против OHLC в MqlRates):


В новом MQL4 производится реальное копирование в двумерный массив double[][6]. Всё как описано. Можете проверить каким-либо скриптом.

Однако, раньше, в старом MQL4, в DLL передавался не двумерный дабловый массив, а массив структур. В этом месте - засада. Так как новая структура исторических данных MqlRates отличается от прежней

 

stringo
:


В новом MQL4 производится реальное копирование в двумерный массив double[][6]. Всё как описано. Можете проверить каким-либо скриптом.

Однако, раньше, в старом MQL4, в DLL передавался не двумерный дабловый массив, а массив структур. В этом месте - засада. Так как новая структура исторических данных MqlRates отличается от прежней

Да, я это уже понял. Хотел убедиться в том, что правильно понял новую структуру, для чего обратился к файлу MQL4\Samples\DLLSample\DLLSample.cpp в новом билде 555, но там по-прежнему значится:

struct RateInfo
  {
   unsigned int      ctm;
   double            open;
   double            low;
   double            high;
   double            close;
   double            vol;
  };

А правильно, как я понимаю, должно быть так:

struct MqlRates
  {
   datetime time;         // время начала периода
   double   open;         // цена открытия
   double   high;         // наивысшая цена за период
   double   low;          // наименьшая цена за период
   double   close;        // цена закрытия
   long     tick_volume;  // тиковый объем
   int      spread;       // спред
   long     real_volume;  // биржевой объем
  };

Прошу внести ясность.

 
Замена структуры бара это не просто засада, а засадище!
 

по неизвестной причине не могу авторизоваться в терминале в мкл коммунити билд 555

 
3. Лучше использовать полный набор (несколько иконок в одном файле) от 16х16 до 64х64 (128х128) .ico файлов. Скоро прямо в интерфейсе операционки программы будут показываться со своими родными иконками.

Про ресурсы можно еще почитать:



Работает или еще нет ???

#resource "\\Files\\VR.ico"

пытаюсь вставить изображение, и ничего.... ошибка

 
VOLDEMAR:


Работает или еще нет ???

пытаюсь вставить изображение, и ничего.... ошибка

#property copyright           "Copyright 2013, Artyom A. Trishkin"
#property link                "artmedia70@gmail.com, Skype: Artmedia70"
#property version             "1.00"
#property description         "This indicator looks for pattern"
#property description         "\" Closing Price Reversal\""
#property description         "   and draw trade levels"
#property icon                "\\files\\CPR32x32.ico";
 
artmedia70:


draws trade levels

 
Выпустили 556 билд.
Причина обращения: