MetaTrader 4 Client Terminal build 509 - страница 6

 
Interesting:

Все выше перечисленное тянет на 18-19 Мб максимум, и при этом давно известно.

Речь же идет о том что трейдеры (при некоторых условиях) замечают гораздо больший трафик при/после обновления.

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

Но в любом случае нельзя в 2013 году говорить о 14 мб как о существенном трафике.

 

Здравствуйте товарищи разработчики! Я нашел жесткий баг (во всяком случаи я так думаю). Но вначале необходимо немного порассуждать.

Представим ситуацию:

  • Текущее время 00:00:30 (час : секунды : минуты);
  • У нас есть бар с лоу == 1 и хай == 5;
  • Время == 00:00:31, приходит тик == 2 (бид);
  • Время == 00:01:10, в текущей минуте не было ни одного тика;
  • Время == 00:01:11, приходит тик == 3 (бид).

          Вопрос: как должен выглядеть бар, с временем открытия 00:01:00 ? Я считаю, что у бара должны быть следующие характеристики:

  1. open == 2 (бид);
  2. low == 2;
  3. high == 3;
  4. close == 3;
  5. volume == 1;

Правильные характеристики? Вы согласны? Но посмотрим на то, что мы имеем ( я набросал скрипт для обнаружения странной ситуации (запустить на M1) ):

int start()
{
   while( ! IsStopped() )
   {
      if(High[0] == Low[0]  /*&&  Volume[0] == 0*/)
      {
         Alert("Найден бар с нулевым диапазоном");
         break;
      }
      RefreshRates();
   }
   return(0);
}

          При закомментированной проверке объема, алерт срабатывает. Следовательно, первый тик в новой минуте это не движение цены в новом баре (от хай к лоу или наоборот), а лишь обозначение open. Еще одно противоречие - при расскомментированной проверке объемов, алерт не срабатывает. Следовательно, количество тиков мы накрутили новому бару, а нарисовать разный хай - лоу забыли, т.е. тик есть, а на ценовом графике это не отображено.

P.S: Очень хочется хотя бы поразговаривать, прокомментируйте, пожалуйста, ситуацию.

 
220Volt:

Здравствуйте товарищи разработчики! Я нашел жесткий баг (во всяком случаи я так думаю). Но вначале необходимо немного порассуждать.

Представим ситуацию:

  • Текущее время 00:00:30 (час : секунды : минуты);
  • У нас есть бар с лоу == 1 и хай == 5;
  • Время == 00:00:31, приходит тик == 2 (бид);
  • Время == 00:01:10, в текущей минуте не было ни одного тика;
  • Время == 00:01:11, приходит тик == 3 (бид).

          Вопрос: как должен выглядеть бар, с временем открытия 00:01:00 ? Я считаю, что у бара должны быть следующие характеристики:

  1. open == 2 (бид);
  2. low == 2;
  3. high == 3;
  4. close == 3;
  5. volume == 1;

Правильные характеристики? Вы согласны? Но посмотрим на то, что мы имеем ( я набросал скрипт для обнаружения странной ситуации (запустить на M1) ):

          При закомментированной проверке объема, алерт срабатывает. Следовательно, первый тик в новой минуте это не движение цены в новом баре (от хай к лоу или наоборот), а лишь обозначение open. Еще одно противоречие - при расскомментированной проверке объемов, алерт не срабатывает. Следовательно, количество тиков мы накрутили новому бару, а нарисовать разный хай - лоу забыли, т.е. тик есть, а на ценовом графике это не отображено.

P.S: Очень хочется хотя бы поразговаривать, прокомментируйте, пожалуйста, ситуацию.

 

Нет тиков - нет бара. 

Поэтому, бар, с временем открытия 00:01:00, будет выглядеть так:

 
  1. open == 3 (бид);
  2. low == 3;
  3. high == 3;
  4. close == 3;
  5. volume == 1;
 
PapaYozh:

 

Нет тиков - нет бара. 

...
Не спорю, и это правильно (имхо). Но ведь в новой минуте 00:01:00 тик пришел, следовательно его нужно отрисовать, но этого не происходит.
 
220Volt:
Не спорю, и это правильно (имхо). Но ведь в новой минуте 00:01:00 тик пришел, следовательно его нужно отрисовать, но этого не происходит.

Я не понял, что за "противоречие"?

Когда пришел тик, Volume[0] не может быть меньше 1.

До прихода первого тика нулевой бар это - последний сформировавшийся бар. Т.е. в 00:01:10 нулевой бар это бар с временем открытия 00:00:00, а в 00:01:11 - с временем открытия 00:01:00

 
PapaYozh:

Я не понял, что за "противоречие"?

Когда пришел тик, Volume[0] не может быть меньше 1.

До прихода первого тика нулевой бар это - последний сформировавшийся бар. Т.е. в 00:01:10 нулевой бар это бар с временем открытия 00:00:00, а в 00:01:11 - с временем открытия 00:01:00

Нет тика - нет бара, верно? Следовательно если бар есть, есть тик, значит цена в баре прошла ходя бы пипс, правильно? Тогда как может быть high == low?

P.S: Пожалуйста, посмотрите внимательно код скрипат, не хотелось бы 10 страниц объяснять что не так.

 
220Volt:

Нет тика - нет бара, верно? Следовательно если бар есть, есть тик, значит цена в баре прошла ходя бы пипс, правильно? Тогда как может быть high == low?

P.S: Пожалуйста, посмотрите внимательно код скрипат, не хотелось бы 10 страниц объяснять что не так.

 

Не так.

Когда пришел 1-ый тик, в нулевом баре будет O=H=L=C. Разница будет между Close[1] и Open[0]

 

volume == 1, OHLC равны. Где логика? Тики были, а график этого не отображает. Мнения бывают разные, надеюсь разработчики не сочтут это нормой.


P.S:

Это примерно как спидометр показывает 60, а колеса не крутятся ))

 
220Volt:

volume == 1, OHLC равны. Где логика? Тики были, а график этого не отображает. Мнения бывают разные, надеюсь разработчики не сочтут это нормой.

P.S:

Это примерно как спидометр показывает 60, а колеса не крутятся ))

Тик это - цена. Первый тик бара это - первая цена бара.

 
PapaYozh:

Тик это - цена. Первый тик бара это - первая цена бара.

 


Честно говоря, фраза заставила сомневаться. Почему-то был уверен, что не бывает валидных баров с равным лоу и хай.

P.S

Теперь я сомневаюсь, надеюсь МК разъяснит какие график построены правильно.

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