Сбор тиков по нескольким инструментам. - страница 2

 
Lizar:

2. У меня работает без тормозов, хотя процессор загружает прилично. получал тики более чем с 30 инструментов.

Спасибо за наработки.

Одно замечание, в скрипте в цикле while так и просится поставить Sleep(1);

Без этого, загрузка процессора уж сильно большая.

 
avoitenko:

Спасибо за наработки.

Одно замечание, в скрипте в цикле while так и просится поставить Sleep(1);

Без этого, загрузка процессора уж сильно большая.

Не забывай что Sleep работает с микросекундами, те Sleep(1) это задержка на 1/1000 сек

Правда Sleep работает только в скриптах.

 
avoitenko:

Спасибо за наработки.

Одно замечание, в скрипте в цикле while так и просится поставить Sleep(1);

Без этого, загрузка процессора уж сильно большая.

Я ставил sleep, потом чё-то убрал.
 

я собираюсь немног не так делать, хочу использовать:

Структура для получения текущих цен (MqlTick)

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

struct MqlTick
  {
   datetime     time;          // Время последнего обновления цен
   double       bid;           // Текущая цена Bid
   double       ask;           // Текущая цена Ask
   double       last;          // Текущая цена последней сделки (Last)
   ulong        volume;        // Объем для текущей цены Last
  };

и по изменению  MqlTick.time записывать новый тик инструмента

ЗЫ: думаю Sleep() можно и больше 1 мс ставить, т.к. не видел пока чтобы по какому инструменту больше 120 тиков в минуту, да и то 120 на золоте только бывает, на валютах более 70 тиков  в минуту не видел 

 

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура для получения текущих цен
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура для получения текущих цен
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура для получения текущих цен - Документация по MQL5
 
IgorM:

я собираюсь немног не так делать, хочу использовать:

Структура для получения текущих цен (MqlTick)

Если речь идет только о сборе данных, то эксперт вообще не нужен. Все можно делать в скрипте.
 
Lizar:
Если речь идет только о сборе данных, то эксперт вообще не нужен. Все можно делать в скрипте.

структуру программы я еще не определил, все прикидываю как лучше, в МТ4 у меня на 7 мажорах висят советники которые пишут данные в нестандартные ТФ, все работает как часы

вот и думаю на МТ5 переделать, только не придумал как мне быть с тем, что нестандартные ТФ МТ5 не умеет рисовать, а МТ4 не имеет данных о времени поступления последнего тика инструмента, вот и прикидываю, может попробовать сделать связку МТ5-->МТ4 или делать подобие виртуальных индикаторов в коде МТ5 - не рисовать индикаторы на нестандартных ТФ,  обрабатывать массивы данных и на основании результатов давать команды BUY или SELL

в общем с появлением МТ5 часть проблем отпала, а часть проблем появилась вновь 

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Стили рисования
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Стили рисования
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Стили рисования - Документация по MQL5
 
IgorM:

структуру программы я еще не определил, все прикидываю как лучше, в МТ4 у меня на 7 мажорах висят советники которые пишут данные в нестандартные ТФ, все работает как часы

вот и думаю на МТ5 переделать, только не придумал как мне быть с тем, что нестандартные ТФ МТ5 не умеет рисовать, а МТ4 не имеет данных о времени поступления последнего тика инструмента, вот и прикидываю, может попробовать сделать связку МТ5-->МТ4 или делать подобие виртуальных индикаторов в коде МТ5 - не рисовать индикаторы на нестандартных ТФ,  обрабатывать массивы данных и на основании результатов давать команды BUY или SELL

в общем с появлением МТ5 часть проблем отпала, а часть проблем появилась вновь 

Можно и на МТ5 строить нестандартные ТФ. У меня есть это. Хотел написать статью, все руки не доходят.
 
Lizar:
Можно и на МТ5 строить нестандартные ТФ. У меня есть это. Хотел написать статью, все руки не доходят.
если не сложно, поделитесь наработками в этом вопросе - можете в личку сбросить если публиковать пока не собираетесь
 
IgorM:
если не сложно, поделитесь наработками в этом вопросе - можете в личку сбросить если публиковать пока не собираетесь
Сложность одна: нодо привести это в более-менее приемлемый вид для публичного просмотра. Как буду готов, сделаю это.
 
Urain:

Не забывай что Sleep работает с микросекундами, те Sleep(1) это задержка на 1/1000 сек 

Кроме всего прочего, Sleep насильно переключает контексты потоков. Так что, иногда и Sleep(0) бывает очень полезным.
Причина обращения: