Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 759

 
Vitaly Muzichenko:

Имел ввиду убрать программно примерно так: CHART_SHOW_OHLC, CHART_SHOW_BID_LINE, ..., а не удалением граф.объектов

Спасибо!

Вроде нет такого свойства программного. Всё отдано на откуп пользователя (ручное управление только).

 

Добрый день!

Подскажите, можно ли в MQL создаваемый класс наследовать и от класса и от интерфейса?

Нужно сделать что то вроде:

class Order : public CObject, Deserializable {

 
Vitaly Muzichenko:

Подскажите, как убрать маркеры после закрытия позиции, чтобы они не отображались?

И есть-ли возможность их убрать программно?

Спасибо!

Это в терминале или тестере?

В терминале надо снять галку

В тестере кажется никак...

 

Насколько плохо так делать, или разницы по нагрузке нет?

ChartRedraw каждую секунду:

int OnInit()
 {
  EventSetTimer(1);
 ...
 }

void OnTimer()
 {
   ...
   SetLabel(...);
  ChartRedraw(0);
 }
 
Vitaly Muzichenko:

Насколько плохо так делать, или разницы по нагрузке нет?

ChartRedraw каждую секунду:


Имхо, лучше засунуть это дело в обработчик OnTrade(). Ведь стрелки появляются только при возникновении торговых операций...

 
Vitaly Muzichenko:

Насколько плохо так делать, или разницы по нагрузке нет?

ChartRedraw каждую секунду:

Ну, в принципе уже ответили выше - перерисовку нужно делать лишь тогда, когда она требуется. Скажем так: вы же не достаёте деньги из кошелька с периодичностью и постоянно, а лишь тогда, когда они нужны ;)

 
Dennis Kirichenko:

Имхо, лучше засунуть это дело в обработчик OnTrade(). Ведь стрелки появляются только при возникновении торговых операций...

Да, стрелки то появляются)

Это уже совсем другая программа, и со стрелками она не связана.

PS. Прорисовка объектов идёт по таймеру каждую секунду, поэтому встала такая задача, иначе без ChartRedraw объекты не перерисовываются. 

 
Vitaly Muzichenko:

Да, стрелки то появляются)

Это уже совсем другая программа, и со стрелками она не связана.

PS. Прорисовка объектов идёт по таймеру каждую секунду, поэтому встала такая задача, иначе без ChartRedraw объекты не перерисовываются. 

Всё же стоит подумать как их перерисовывать тогда, когда требуется. Или реально необходимо каждую секунду график перерисовывать?

 
Artyom Trishkin:

Всё же стоит подумать как их перерисовывать тогда, когда требуется. Или реально необходимо каждую секунду график перерисовывать?

Да, необходимо каждую секунду, предположим, тот-же объект "Время до закрытия бара", но это самый простейший пример.

В четвёрке работает и без ChartRedraw, а вот в пятерке - только с ним, что "вызывает озабоченность"(с)

 

Подыму вопрос снова, так-как ответа на него не получил.

Насколько плохо так делать, или разницы по нагрузке нет?

ChartRedraw каждую секунду:

int OnInit()
 {
  EventSetTimer(1);
 ...
 }

void OnTimer()
 {
   ...
   SetLabel(...);
  ChartRedraw(0);
 }