Рисовка Советником

 

Здравствуйте,

Подскажите как заставить советника рисовать обьекты?

В данный момент мне нужно заставить советника рисовать линию, Что то тима МА только с моими данными.

Вот как должно выглядеть:

Советник вычеслил какую-то цену, и нарисовал точку, потом цена поменялась и советник нарисовал новую точку и соеденил их линией, потом цена опять поменялась и опять советник нарисовал новую точку и соеденил линией.

Возможно ли такое вообще?

Советник вообще умеет рисовать линии или точки?

 
Frostr:

Здравствуйте,

Подскажите как заставить советника рисовать обьекты?

В данный момент мне нужно заставить советника рисовать линию, Что то тима МА только с моими данными.

Вот как должно выглядеть:

Советник вычеслил какую-то цену, и нарисовал точку, потом цена поменялась и советник нарисовал новую точку и соеденил их линией, потом цена опять поменялась и опять советник нарисовал новую точку и соеденил линией.

Возможно ли такое вообще?

Советник вообще умеет рисовать линии или точки?


Объекты
 
не очень полезная инфа )
 
кто знает как заставить советника рисовать точки на заданой цене, или линию.... только не трендевую))
 
Frostr:
кто знает как заставить советника рисовать точки на заданой цене, или линию.... только не трендевую))
То, что вы хотите сделать возможно именно трендовой с отключенным свойством "луч". И только так.
 
Frostr:
кто знает как заставить советника рисовать точки на заданой цене, или линию.... только не трендевую))

Судя по всему не знаете MQL4 https://book.mql4.com/ru/

Изучая язык обратите внимание на CreateoOject https://book.mql4.com/ru/functions/objects https://docs.mql4.com/ru/objects/ObjectCreate

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


 
спасиб, ща попробую...
 
Трендовыми линиями рисовать. Может и есть какие другие способы рисования точки, только криво будет, а трендовыми линиями нормально. Размер точки определяется толщиной линии. А чтобы собственно точка получилось, нужно задавать одинаковые координаты первой и второй точки трендовой линии.
 

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

например:

советник вычислил какую-нибудь цену - "А" и запомнил ее... потом цена изменилась и стала цена - "B" мне нужно что бы советник соеденил эти цены линией.....

 
Frostr:

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

например:

советник вычислил какую-нибудь цену - "А" и запомнил ее... потом цена изменилась и стала цена - "B" мне нужно что бы советник соеденил эти цены линией.....

Ваш советник должен всегда вычислять две координаты. Они могут совпадать - будет точка. И не совпадать - будет линия. У каждой такой линии/точки должно быть своё уникальное имя, чтобы те линии, которые были нарисованы ранее, не перемещались на новые координаты, а оставались на своём месте.

//+----------------------------------------------------------------------------+
void SetTLine (color cl,         // Цвет линии
               int wnd,          // Номер окна, куда будет выведена линия
               string nm="",     // Имя линии
               datetime t1=0,    // Первая координата ВРЕМЯ
               double p1=0,      // Первая координата ЦЕНА
               datetime t2=0,    // Вторая координата ВРЕМЯ
               double p2=0,      // Вторая координата ЦЕНА
               bool ry=False,    // true = луч, false = не луч
               int st=0,         // Стиль линии
               int wd=1)         // Толщина линии
               {
  if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_TREND, wnd, 0,0, 0,0);
  ObjectSet(nm, OBJPROP_TIME1 , t1);
  ObjectSet(nm, OBJPROP_PRICE1, p1);
  ObjectSet(nm, OBJPROP_TIME2 , t2);
  ObjectSet(nm, OBJPROP_PRICE2, p2);
  ObjectSet(nm, OBJPROP_COLOR , cl);
  ObjectSet(nm, OBJPROP_RAY   , ry);
  ObjectSet(nm, OBJPROP_STYLE , st);
  ObjectSet(nm, OBJPROP_WIDTH , wd);
}
//+----------------------------------------------------------------------------+
Причина обращения: