Скачать MetaTrader 5

Разработчики, с какой целью в таймсериях Стандартной Библиотеки стоит ограничение на годовой размер таймсерии ?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
George Merts
5218
George Merts  

Всех приветствую.

Такой вопрос, видимо, в основном разработчикам.

-----------------

Создаю таймсерию дневок, наследника CSeries, выясняю сколько дневок на сервере, и пытаюсь загрузить.

Долго не мог понять - загружается 365 дневок ! Обратите внимание, не дневки за год (их меньше, чем дней в году), а именно 365 !

Наконец нашел причину - в функции Стандартной Библиотеки CSeries::BufferResize стоит оригинальный код:

//--- correcting size for "big" timeframes (1 year limitation)
   int tmp_size=size;
   switch(m_period)
     {
      case PERIOD_D1:
         if(size>365)
            tmp_size=365;
         break;
      case PERIOD_W1:
         if(size>52)
            tmp_size=52;
         break;
      case PERIOD_MN1:
         if(size>12)
            tmp_size=12;
         break;
      default:
         break;
     }

Заметьте ремарку "корректируем размер для больших таймфреймов". То есть, сделано это намерено.

Комментирование оператора switch - приводит к нормальной загрузке всех дневок с сервера и дальнейшей нормальной работе.

Вопрос - с какой целью поставлено это странное ограничение ?

Оно действительно необходимо для работы ?

365 дневок - это крайне немного... А если мне нужны недельки или месяцы ??? Что ж получается, я не должен загружать в таймсерию более 12 месяцев ??? В чем смысл данного ограничения ?

George Merts
5218
George Merts  

Поднимаю тему... Видимо, ответить некому ?

А в Сервисдеске на подобные вопросы могут ответить ?

Andrey Khatimlianskii
59526
Andrey Khatimlianskii  
Laryx:

Поднимаю тему... Видимо, ответить некому ?

А в Сервисдеске на подобные вопросы могут ответить ?

Да, туда и пишите.
Mikhail Filimonov
5931
Mikhail Filimonov  

Все таймсерии строятся и минуток!

Не надо писать в СД 

Но самое прикольное не это!

Если Вы построите свои днёвки и какое-то время не будете обращаться к ним,

то Ваша таймсерия выгрузится из памяти и...

Всё по-новой! 

Andrey Khatimlianskii
59526
Andrey Khatimlianskii  
Mikalas:

Все таймсерии строятся и минуток!

Не надо писать в СД 

Ну и что, что из минуток? Больше года смотреть нельзя? ;)
Mikhail Filimonov
5931
Mikhail Filimonov  
komposter:
Ну и что, что из минуток? Больше года смотреть нельзя? ;)

Тогда комп будет заниматься только загрузкой и построением таймсерий:)

 

P/S komposter, оказывается не я один такой непонятливый. 

Andrey Khatimlianskii
59526
Andrey Khatimlianskii  
Mikalas:

Тогда комп будет заниматься только загрузкой и построением таймсерий:)

 

P/S komposter, оказывается не я один такой непонятливый. 

Сколько чего считать - решать программисту.

ps: еще посмотрим ;) 

Vasiliy Smirnov
15053
Vasiliy Smirnov  
Так делаем сами и нет вопросов).
Комбинатор
16902
Комбинатор  

Стандартная  библиотека в С++ называется так потому, что соответствует стандарту.

А от некоторых решений в стандартной  библиотеке MQL иногда волосы дыбом.

Vasiliy Smirnov
15053
Vasiliy Smirnov  
Стандарту ГОСТ).
Vasiliy Smirnov
15053
Vasiliy Smirnov  
Некоторые даже делают вид, что её нет).
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий