Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 743

 
Ghabo:

Фетиш такой)

Вот так, должно работать

или я export не туда ставлю?

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

 
Ilya Prozumentov:

Вот, чисто код для метки. Бегает за ценой Bid хоть так, хоть при прокрутке графика, хоть после переключения графиков. Бегает за перекрестием и запоминает заданное таким образом смещение, продолжая потом ориентироваться на Bid.

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

ограничение озу до 3.7gb мне терпеть тоже надоело

для хп нет поддержки тестирования сов на всех ядрах проца


В действительности у меня пока четыре метки: бид, спред, положение курсора и макс, мин свечи под курсором :-)

Я сначала то же хотел сделать с флагами, но есть более простое решение (это кусок старого кода, новый не еще не готов)

   if(sparam =="16")
      {
      ObjectCreate(0, xlabel, OBJ_LABEL,0, 0, 0);
      ObjectSetInteger(0, xlabel, OBJPROP_XDISTANCE, width-120);
      ObjectSetString(0, xlabel, OBJPROP_TEXT, DoubleToString(xprice, _Digits-1));
      }
      
      //Print("Координаты щелчка мышки на графике: x = ",lparam,"  y = ",dparam, " sparam = ", sparam); 
      
   if(sparam =="0" && ymouse < 50)
       
        ObjectSetInteger(0, xlabel, OBJPROP_YDISTANCE, dparam+1);
         else
            ObjectSetInteger(0, xlabel, OBJPROP_YDISTANCE, dparam-20);
 
  
   if(sparam =="1")
      ObjectDelete(0,xlabel);

Те метка появляется при нажатии на колесо, двигается пока spram==0 и удаляется по ЛК.

Сейчас хочу научиться рассчитывать размер объектов, попробовал сделать это на метке

   Print("ysize = ", ObjectGetInteger(0,objname,OBJPROP_YSIZE,0));

Получаю нулевые значения как для x, так и для y. С чем это связано?

=для хп нет поддержки тестирования сов на всех ядрах проца

У меня ручная торговля, так что требования к железу минимальные, браузер Макстон работает быстрее ФФ, Хрома и прочих, позволяя открывать сайты, игнорируя нечитаемые сертификаты.

С ХР я конечно перееду, как только появится больше свободного времени, ну и денег с торговли нарублю :-)

 
psyman:

Получаю нулевые значения как для x, так и для y. С чем это связано?

Возможно метки просто ещё нет на графике, на момент запроса её размера.

Можешь скинуть создание всех меток в OnInit(), не придётся думать есть ли они или нет, и затем останется их только двигать да текст в них менять, исчезновение можно сделать просто задав координаты за пределами экрана.

 
Ilya Prozumentov:

Возможно метки просто ещё нет на графике, на момент запроса её размера.

Можешь скинуть создание всех меток в OnInit(), не придётся думать есть ли они или нет, и затем останется их только двигать да текст в них менять, исчезновение можно сделать просто задав координаты за пределами экрана.

Я делаю вывод размеров в конце функции что написал Тарас после перемещения метки


   ObjectMove(0,objname,0,label_time,label_price);
   ChartRedraw();

   Print("ysize = ", ObjectGetInteger(0,objname,OBJPROP_YSIZE,0));
 

Как вывести на график изображение созданное внутри программы ?

Сохранить в файл и вывести потом через OBJ_BITMAP_LABEL я смог.

ResourceCreate("Pict", src, 256, 256, 0, 0, 0, COLOR_FORMAT_ARGB_RAW);
ResourceSave("Pict", "Pic.bmp");
ObjectCreate("BMP",OBJ_BITMAP_LABEL, 0, 0, 0);
ObjectSetInteger(0, "BMP", OBJPROP_XSIZE, 256);
ObjectSetInteger(0, "BMP", OBJPROP_YSIZE, 256);
ObjectSetString(0, "BMP", OBJPROP_BMPFILE, 0, "\\Files\\Pic.bmp");
ObjectSetString(0, "BMP", OBJPROP_BMPFILE, 1, "\\Files\\Pic.bmp");

Можно ли вывести изображение без использования файла? Именованные каналы смогут тут помочь?

 
Ilya Prozumentov:

Как вывести на график изображение созданное внутри программы ?

Сохранить в файл и вывести потом через OBJ_BITMAP_LABEL я смог.

Можно ли вывести изображение без использования файла? Именованные каналы смогут тут помочь?

 
psyman:

Получаю нулевые значения как для x, так и для y. С чем это связано?

в справке пишут что можно измерять только:

OBJPROP_YSIZE

Высота объекта по оси Y в пикселях. Задается для объектов OBJ_LABEL (read only), OBJ_BUTTON, OBJ_CHART, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL.

int

 
Artyom Trishkin:

Массив уже создан и заполнен данными внутри работающей программы, его только как-то надо передать в OBJ_BITMAP_LABEL
Через файл это получилось, но это занимает лишнее время и попусту тратит ресурс жесткого диска.

 
Taras Slobodyanik:

в справке пишут что можно измерять только:

OBJPROP_YSIZE

Высота объекта по оси Y в пикселях. Задается для объектов OBJ_LABEL (read only), OBJ_BUTTON, OBJ_CHART, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL.

int

А он что делал? (ObjectGetInteger)

 
Здравствуйте! Где то читал статью про то что mql4 или 5 стал предлогать шифровать своим сервисом коды советников....подскажите где конкретнее про это почитать и что за сервис?
Причина обращения: