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

 
A100:
Тем более что Вы не рядовой пользователь, а Вашими трудами пользуются многие и многие

я бы так сказал: 

при чтении файла эта ошибка может возникнуть 1 раз за 100 чтений (чтение файла, например, с периодичностью 10 раз в секунду)

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

 
Vladislav Andruschenko:

я бы так сказал: 

при чтении файла эта ошибка может возникнуть 1 раз за 100 чтений (чтение файла, например, с периодичностью 10 раз в секунду)

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

В связи с этим есть простое и честное предложение к Разработчикам: взять компьютер именно в той конфигурации(*), который указан как минимальные системные требования к MetaTrader и в том числе на нем проводить тесты (в том числе и в СервисДеск)

(*) мой планшет по сравнению с этой конфигурацией - метеор и кроме MetaTrader ничего не загружено

 
A100:

В связи с этим есть простое и честное предложение к Разработчикам: взять компьютер именно в той конфигурации(*), который указан как минимальные требования к MetaTrader и в том числе на нем проводить тесты (в том числе и в СервисДеск)

(*) мой планшет по сравнению с этой конфигурацией - метеор


может быть дело доходит до тормозов (даже мой не слабый уже на 90 % загружен) и тогда возникает эта ошибка? как Вы показали на объяснении выше? 

Спасибо за направление, я постараюсь выяснить это. 

 
A100:

Итак по заявке #1530548 СервисДеск не может воспроизвести ошибку https://www.mql5.com/ru/forum/1111/page1628#comment_2702870 при том что у меня даже сейчас (в build 1881) устойчивое воспроизведение. Немного поразмыслив я понял почему! Ответ следующий: потому что у меня медленный компьютер (планшет)

Подобная ситуация была и в заявке #1952509 вот по этой проблеме https://www.mql5.com/ru/forum/1111/page2124#comment_6518537

СервисДеск также первое время сообщал о том что не может воспроизвести ошибку. Мне стоило больших трудов убедить, что ошибка все-таки есть... в итоге:

Support Team 2018.02.10 22:35
 Похоже воспроизвели вашу проблему ещё в пятницу на слабой машине с 39 чартами.
Будем смотреть. Если потребуется запросим дополнительные данные. Спасибо.

В связи с этим возникает вопрос: А нужно ли вообще заморачиваться на такие ошибки? Или пусть себе тихо живут своей жизнью... авось не всплывут больше - ведь достаточно пересесть за быстрый компьютер?!

Эти вопросы возникают в контексте того что десяток другой чартов с несколькими экспертами\индикаторами вполне способны превратить быстрый компьютер в медленный (а среднестатистический трейдер использует именно много советников - вот пример https://www.mql5.com/ru/forum/267154/page5#comment_8164924 - 82 советника запущено)... или даже медленным он может стать на короткое время вследствии других обстоятельств (антивирус... другие программы... или сама система временно захватила почти все ресурсы).

И тогда наступит именно тот самый необъяснимый сбой 1 из 100 (ну и по законам природы естественно он возникает в самое неподходящее время)

а в чем проблема перенести рабочую стратегию за пределы МТ5 оставив МТ5 как коннектор ? думаю потратить время на такие танцы это нормально если стратегия стоящая, а не как обычно ))

 
Konstantin:

а в чем проблема перенести рабочую стратегию за пределы МТ5 оставив МТ5 как коннектор ? думаю потратить время на такие танцы это нормально если стратегия стоящая, а не как обычно ))

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

кто то может обосновать почему при расчете индикатора в MQL5 в таймсерии time[] находится время не соответствующее времени сервера?

вот индикатор, который считает смещение цен закрытия относительно начала дня:

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
//--- plot Label1
#property indicator_label1  "Label1"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2
//--- indicator buffers
double         DB[];

static int lastdayclose=-1;
static double F0=1.0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetIndexBuffer(0,DB,INDICATOR_DATA);
   lastdayclose=-1;
   F0=1;
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   int i,limit;
   MqlDateTime tmpdate;
   if(prev_calculated==0)
     {
      limit=rates_total-1;
      lastdayclose=-1;
      F0=1;
     }
   else limit=rates_total-prev_calculated;
   ArraySetAsSeries(time,true);
   ArraySetAsSeries(close,true);
   for(i=limit;i>=0;i--)
     {
      TimeToStruct(time[i],tmpdate);
      if(tmpdate.day!=lastdayclose)
        {
         F0=close[i];
         lastdayclose=tmpdate.day;
        }
      DB[i]=F0-close[i];
     }
   return(rates_total);
  }
//+------------------------------------------------------------------+

индикатор нарисовал:

https://www.mql5.com/ru/charts/8940511/eurusd-m5-alpari-international-limited

видно, что время начала дня смещено влево на 2 часа

 
Igor Makanu:

видно, что время начала дня смещено влево на 2 часа

Видно где?

 
Alexey Viktorov:

Видно где?

линии разделителей периодов видите? - это начало дня, соответствует серверному времени 0:00

логика индикатора понятна? - вертикальные всплески красной линии это цена закрытия первого бара начала дня, ее запоминаем и потом рисуем приращения цен закрытия относительно цены закрытия первого бара на открытии дня - этот "красный всплеск" должен быть на линии разделителей периода, т.е. на начале дня

 
A100:
Проблема в организации полноценной обратной связи... и даже коннекторам иногда нужно самим файлики открывать

а зачем коннекторам открывать самим файлы, если вся логика вынесена наружу, вызывайте из OnInit нужный функционал во внешней программе для инициализации

 
Igor Makanu:

линии разделителей периодов видите? - это начало дня, соответствует серверному времени 0:00

логика индикатора понятна? - вертикальные всплески красной линии это цена закрытия первого бара начала дня, ее запоминаем и потом рисуем приращения цен закрытия относительно цены закрытия первого бара на открытии дня - этот "красный всплеск" должен быть на линии разделителей периода, т.е. на начале дня

Вы считаете что на основании этого можно о чём-то говорить? Да, уж...

Причина обращения: