Ошибки, баги, вопросы - страница 1541

 
Karputov Vladimir:
Вам нужен аналог правого клика по графику и "Обновить" для индикатора?
Эээ... мне ничего не нужно. Я лишь сказал, что ChartRedraw() не аналогичен по работе нажатию кнопки "обновить".
 
как открыть демо счет на сервере  metaquotes ??? Что бы получить новые версии мт5 ...
 
Vladimir Pastushak:
как открыть демо счет на сервере  metaquotes ??? Что бы получить новые версии мт5 ...
выбираешь сервер MetaQuotes-Demo при открытии демо счета
 
Karputov Vladimir:
Вам нужен аналог правого клика по графику и "Обновить" для индикатора?

Да именно так. Чтобы мог рассчитаться индикатор, но не обращаться к иниту.  ChartRedraw()  это не выполняет.

Вызов в  OnChartEvent 

 
Владимир:

Да именно так. Чтобы мог рассчитаться индикатор, но не обращаться к иниту.  ChartRedraw()  это не выполняет.

Вызов в  OnChartEvent 

Сделайте весь цикл функцией, и вызывайте с нужными параметрами откуда хотите.
 
Владимир:

Да именно так. Чтобы мог рассчитаться индикатор, но не обращаться к иниту.  ChartRedraw()  это не выполняет.

Вызов в  OnChartEvent 

Для четверки

  static int FullOnCalculate( void )
  {
    long volume[];
    int spread[];

    ArraySetAsSeries(volume, TRUE);
    ArraySetAsSeries(spread, TRUE);

    const int Size = MathMin(CopyTickVolume(Symbol(), Period(), 0, Bars, volume),
                             CopySpread(Symbol(), Period(), 0, Bars, spread));

    return(OnCalculate(Size, 0, Time, Open, High, Low, Close, Volume, volume, spread));
  }

Для пятерки аналогично.

 

Почему этот класс компилируется под MT4, но не компилируется под MT5?

class CHARTOBJECT
{
public:
  template <typename T>
#ifdef __MQL4__
  void SetProperty( const int id, const T Value, const int Modifier = 0 ) const
#else #endif
#ifdef __MQL5__
  void SetProperty( const ENUM_OBJECT_PROPERTY_STRING id, const T Value, const int Modifier = 0 ) const
#endif      
  {
    const string sType = typename(T);

    if (sType == "double")
      ::ObjectSetDouble(0, "", id, Modifier, (double)Value);
    else if (sType == "string")
      ::ObjectSetString(0, "", id, Modifier, (string)Value);
    else
      ::ObjectSetInteger(0, "", id, Modifier, (long)Value);

    return;
  } 
  
  virtual void operator =( const string Value ) const
  {
    this.SetProperty(OBJPROP_TEXT, Value);

    return;
  }
};
 
А там #else или #endif не лишние случаем?
 
Комбинатор:
А там #else или #endif не лишние случаем?

В строке #else #endif если убираю #endif, то не компилируется. Почему - тоже не знаю.

Но даже если убрать всю условную компиляцию, под MT5 не будет компилироваться, а под MT4 - будет. 

 
Alexey Kozitsyn:
Что такое мультитерминал?)
Это версия терминала МТ4, один экземпляр которого якобы может одновременно работать с несколькими счетами. Установочный файл fcmt4multisetup_ru.exe я скачал на сайте FXCluba. Мб, это вообше их разработка, и я обращаюсь не по адресу?
Причина обращения: