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

 
ivandurak:

Ниже приведен скрипт который должен выводить метки на выбранный сивол, несмотря на то - на какой символ его кидать  .Однако он выводит метки только если кидать его на одноимименный символ. Плз нужен подзатыльник .

 

Вместо:

   CopyRates(Symbol(),0,0,10,price);

нужно

   CopyRates("EURUSD",0,0,10,price);
 
uncleVic:

Вместо:

нужно

Почему не проходит с Symbol()?
 
tol64:
Почему не проходит с Symbol()?

 выводить метки на выбранный сивол, несмотря на то - на какой символ его кидать  .

с Symbol() будет брать тот на который кинут. 

 

С какого это перепугу перечисление ENUM_APPLIED_PRICE начинается с 1 ???

   ENUM_APPLIED_PRICE enm;
   for(int i=0;i<10;i++)
     {
      enm=i;
      Print(EnumToString(enm));
     }

результат:

        ENUM_APPLIED_PRICE::9
        ENUM_APPLIED_PRICE::8
        PRICE_WEIGHTED
        PRICE_TYPICAL
        PRICE_MEDIAN
        PRICE_LOW
        PRICE_HIGH
        PRICE_OPEN
        PRICE_CLOSE
        ENUM_APPLIED_PRICE::0
 

Что за время все-таки возвращает функция TimeCurrent( )?

В справке читаем:

Возвращает последнее известное время сервера, время прихода последней котировки по одному из выбранных в "Обзоре рынка" символов. В обработчике OnTick() данная функция вернет время пришедшего обрабатываемого тика. В других случаях (например, вызов в обработчиках OnInit(), OnDeinit(), OnTimer() и так далее) это – время прихода последней котировки по любому символу, доступного в окне "Обзор рынка", то самое время, которое показано в заголовке этого окна. Значение времени формируется на торговом сервере и не зависит от настроек времени на компьютере пользователя.

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

Если посмотреть обзор рынка - сервер MQL (снимок сделан сегодня):


Видим время 15:22:42 - оно никакому из символов не соответствует. Может надо на сервере что-то подправить?

 

Господа MQ есть малаенькое предложение:

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

Для тех кому это не нужно сделайте флаг в настройках тестера.

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

 
vdv2001:

Господа MQ есть малаенькое предложение:

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

Для тех кому это не нужно сделайте флаг в настройках тестера.

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

А ещё бывает пропал контакт в сетевом выключателе (да мало ли проблем у конечного пользователя). Вообще проблему нужно ставить шире,

сделать промежуточное автосохранение внутренних данных тестера (ну там последнюю популяцию),

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

ЗЫ Такая фича давно проверена на играх (редкую игру можно пройти регулярно не сохраняясь) и себя вполне оправдывает. Так что это не будет новой моделью велосипеда.

 

Господа разработчики .При всем уважении прошу разьяснить проблему . Имхо проблема не в лыжнике и не в асфальте , остаются лыжи . Как получается что цикл становится бесконечным .Код прилагаю. Или напинайте в сторону лыжни .

class proba
  {
   private:
      int   Nambe;
   public:
       void     Init(){Nambe=10 ;};
       void     Vedenie() {Nambe--  ;};
       bool     Start(){if (Nambe >0) return(true); return(false) ;};        
  };
//=========================================================================
proba cikl;
void OnStart()
  {
      cikl.Init();
      while(cikl.Start())
        {
         cikl.Vedenie() ;
         Print(" Функция старт вернула ",cikl.Start());
        }
  }
 

если поправить текст класса вот так:

class proba
  {
   private:
      int   Nambe;
   public:
       void     Init(){Nambe=10 ;};
       void     Vedenie() {Nambe--  ;};
       bool     Start(){
         if (Nambe >0)return(true);
         return(false) ;
       };        
  };

 то все работает:

2011.11.27 11:06:13 proba (EURUSD,M30) Функция старт вернула false

2011.11.27 11:06:12 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:12 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:12 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:11 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:10 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:09 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:06:07 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:05:59 proba (EURUSD,M30) Функция старт вернула true

2011.11.27 11:05:44 proba (EURUSD,M30) Функция старт вернула true

 

чудеса. 

 
gdtt:

если поправить текст класса вот так:

 то все работает 

чудеса. 

Ctrl-C      Ctrl-V   не работает плз поясните в чем прикол , и какая у вас версия . У меня билд 540 от 11 ноября 2011.