Общая концепция терминала. У меня тупиковая ситуация? - страница 2

 
Urain:

У меня всё работает. Количество данных в окне выставлено Unlimited

Выставите теперь 5000 и получите 1 мил. баров. Именно об этом говорит Lizar.
 

В дополнение, инфа из справки по функциям CopyXXXX():

Если интервал запрашиваемых данных полностью находится вне доступных данных на сервере, то функция возвращает -1. В случае если запрашиваются данные за пределами TERMINAL_MAXBARS (максимальное количество баров на графике), функция также вернет -1.

 
AlexSTAL:
Выставите теперь 5000 и получите 1 мил. баров. Именно об этом говорит Lizar.

Блин, ребята зачем подрезать крылья а потом проверять полетит лебедь или не полетит. Я же говорю правильно ставьте задачи.

Если нужно ограничить получаемые данные индивидуально по каждому ТФ то выставьте в индикаторе настройки. Какому ТФ сколько получать. У меня на Unlimited всё нормально летает. Правда не запускал 200 графиков, да и не могу представить задачу для решения которой нужно 200 чартов. Но данные чарта хранятся в специальном сжатом формате. Поэтому 100 или 100000 не очень влияет на скорость работы чарта. Именно поэтому получать данные стоит только необходимые, а не про запас. Тк они всегда доступны. На самом деле чарт это и есть СУБД. Причём довольно эффективный так так оптимизирован на работу именно с котировками.

 
AlexSTAL:

P.S. Моя точка зрения простая - каждый график должен иметь своё значение "Макс. баров в окне", тогда никаких проблем возникнуть не должно.

Это будет полный капут. 

Разработчики позиционируют MQL5 как язык "для чайников".

Себя чайником не считаю, хотя до сих пор в деталях не пойму, как терминал подкачивает запрошенные данные))

Мое мнение - ставить x64, в параметрах - Unlimited и переписывать все индикаторы под экономию вычислительных ресурсов

 

AlexSTAL:

Но для паттерной системы необходим так же стат. анализ, да желательно бы и с визуализацией. И тут мы врезаемся в стену. Нам нужно для конкретно открытого графика не 5000 баров, а 1 000 000 (скажем минутки за пару-тройку лет).

Стат. нализ нужно проводить постоянно и одновременно на 200 инструментах и 16 ТФ?

Или, может, можно анализировать ситуацию отдельно по каждому инструменту (при Unlimited баров), сохранять результаты в удобном формате, а потом просто их читать?


И совсем уж не понятно, зачем на 200 графиках наложены MACD и RSI. Не верю я, что человек может работать с таким кол-вом информации ОДНОВРЕМЕННО.

А если они нужны для советника, то и использовать можно специальные экономные (самописные) версии, считающие последние 5К баров.

 
komposter:

Стат. нализ нужно проводить постоянно и одновременно на 200 инструментах и 16 ТФ?

Или, может, можно анализировать ситуацию отдельно по каждому инструменту (при Unlimited баров), сохранять результаты в удобном формате, а потом просто их читать?


И совсем уж не понятно, зачем на 200 графиках наложены MACD и RSI. Не верю я, что человек может работать с таким кол-вом информации ОДНОВРЕМЕННО.

А если они нужны для советника, то и использовать можно специальные экономные (самописные) версии, считающие последние 5К баров.

1. Насколько я знаю пока больше 100 графиков одновремено открыть не удасться. Поэтому или мульты или несколько экземпляров терминала.

2. На мой взгляд слишком много ресурсов буде задействовано для системы, она может не справится. Тут действительно скорей всего спасет только грамотно организованная БД + многопоточность + расчеты во внешнем ПО (хотя бы частично) + FIX API (если понадобится для реализации данной задачи).

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

Тут как минимум работу с несколькими тФ (верней со семи) нужно оптимизировать так чтобы кучу графиков не открывать (был только основной график) и все ТФ "варились" в одном коде.

Еще нужно подумать как обойти ограничение в 100 одновременно открытых графиков, так как его пока никто не отменял. Я конечно предлагал в свое время увеличить максимальное число графиков или дать параметр для его указания пользователем (но как понял разработчики не горят желание это делать, хотя все возможно).

 
AlexSTAL:

Дано: поисковая машина для нахождения паттернов на заданном инструменте и заданном периоде.

Пользователь этой "машины" открывает одновременно необходимое ему количество инструментов (только инструментов, не периодов) - может быть скажем 200 (фьючерсы, вся сводная информация дополнительно визуализируется на отдельно открытом графике).

На каждый открытый график добавляется советник, который одновременно оперирует всеми заданными пользователем периодами (рекомендуется мною 16) данного инструмента. Приближённо можно считать, что пользователь просто открыл 200 х 16 = 3200 графиков.


Если честно (без обид) - По текущему состоянию задачи мне кажется что это полный бред или детский сад.

Вся система требует тщательной и глубокой оптимизации, возможно с применением внешнего ПО.

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

 

Ребята!

Такое ощущение, что или я пишу каким-то иносказанным языком, или Вы не хотите вникнуть. Сейчас каждому отвечу развёрнуто.


 
Urain:

Блин, ребята зачем подрезать крылья а потом проверять полетит лебедь или не полетит. Я же говорю правильно ставьте задачи.

Если нужно ограничить получаемые данные индивидуально по каждому ТФ то выставьте в индикаторе настройки. Какому ТФ сколько получать. У меня на Unlimited всё нормально летает. Правда не запускал 200 графиков, да и не могу представить задачу для решения которой нужно 200 чартов. Но данные чарта хранятся в специальном сжатом формате. Поэтому 100 или 100000 не очень влияет на скорость работы чарта. Именно поэтому получать данные стоит только необходимые, а не про запас. Тк они всегда доступны. На самом деле чарт это и есть СУБД. Причём довольно эффективный так так оптимизирован на работу именно с котировками.

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

Если не подрезать крылья, то у 200 открытых графиков ресурсы будут тратиться на ненужные никому 99,98% баров, зачем это нужно?

200 графиков нужны для работы с фьючерсами. Паттерные системы характеризуются тем, что они работают когда появляется сигнал, а этого сигнала можно и месяц ждать. Поэтому работа ведётся на большом количестве инструментов. Это значит, что каждый открытый график 99% времени сидит в засаде, и только рассчитывает. А потом сообщает о себе в одно единственное сводное окно и пользователь только тогда переключается на конкретный график и там уже может менять таймфрейм.

Документация по MQL5: Операции с графиками / ChartOpen
Документация по MQL5: Операции с графиками / ChartOpen
  • www.mql5.com
Операции с графиками / ChartOpen - Документация по MQL5
 
yu-sha:

Это будет полный капут. 

Разработчики позиционируют MQL5 как язык "для чайников".

Себя чайником не считаю, хотя до сих пор в деталях не пойму, как терминал подкачивает запрошенные данные))

Мое мнение - ставить x64, в параметрах - Unlimited и переписывать все индикаторы под экономию вычислительных ресурсов. 

Какой капут? Речь идёт про всего навсего 1 визуальный параметр! Что Вы всё про индикаторы то? Других ресурсов нету что ли?
Причина обращения: