Откуда лучше взять тиковые данные в Lua?

Страницы: 1
RSS
Откуда лучше взять тиковые данные в Lua?
 

Собственно есть 2 варианта источника тиковых данных цены сейчас. Это либо через OnAllTrade, либо через CreateDataSource + SetUpdateCallbac. Вопрос, какой поток меньше тормазит, более легковесный с точки зрения системы, брокера? Вроде по сути тоже самое, что лучше из практики?

 
Это по сути одно и то же.

Разница в том, что в варианте с подпиской вы получите уже отфильтрованные по инструменту колбеки, а в первом все без разбора
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
AndyWise, Ни тот, ни другой вариант неприемлем, не говоря уже о том, что при работе с Квиком тиковые данные вообще не нужны. Никому. Ибо использовать их для принятия решений практически невозможно - для этого нужно другое железо и другой софт. У меня прямо противоположная проблема: мне нужны свечи, причём тяжёлые - от 15-минутных и выше. Можно даже от часовых. Но сервис для их получения настолько ужасен, что я вообще отказался от их использования. А более лёгкие свечи, от 7.5-секундных до 64-минутных (10 таймфреймов) я считаю сам, простым опросом ТТТ (LAST) раз в полсекунды и усредняя результаты замеров. Дёшево и сердито! И я свято убеждён, что это и есть "лучшее из практики".
 
А какой вариант получения данных приемлем?
«Никому» Вы слишком категоричны, мне нужны, я хочу нарезать из тика Мин/Макс за 1сек. С удовольствием взял бы секундные свечи, но их нет.
ТТТ (LAST) не понял, что это, можно по подробнее. Я опрашивал getParamEx("LAST") раз в сек, но мне нужны иголки Мин/Макс.
 
Первый ответ на Ваш вопрос в теме был корректным.

ТТТ -- это аббревиатура от "Таблица текущих торгов".
 
AndyWise, Только тот вариант получения данных приемлем, который описал я! :smile:

А нафига Вам Мин/Макс за 1сек? Что Вы с ними делать будете? Их уже нет, поезд ушёл! Вам могли бы пригодиться разве что BID и OFFER, но даже их, возможно, уже нет! Пока Ваш скрипт отправит заявку в Квик, тот брокеру, а брокер бирже, ситуация со стаканом может 100500 раз измениться. А иголки я с недавнего времени стал ловить, но только в полуторасекундном прерывании, а ведь они бывают и часовые, и дневные, и недельные. Просто более тяжёлые иголки скрипт и сам поймает, по свечам.

Я опрашиваю getParamEx("LAST") два раза в секунду, и это очень быстрая (для Квика и Луа) операция: сотни и даже тысячи тикеров можно обслужить, особо не напрягаясь. А вот связываться с OnAllTrade или CreateDataSource - это одна Большая Жопа, причём гарантированая.
 
Поезд ушёл, если к Мин/Макс относиться как к цене сейчас. А это факт хождения цены. В чем жопа, можно конкретнее? Пока меня напрягает только возможный перезаказ данных, когда вываливается история, а нужен поток сейчас. Приходиться самому отбрасывать и обрабатывать только свежие данные.
 
AndyWise, А как к ней ещё относиться? Я уже не раз здесь говорил, что классические мат.ожидание и дисперсия в миллион раз информативнее всей этой "японской" лабуды. А если Вас "напрягает только возможный перезаказ данных, когда вываливается история", то тикеров у Вас под контролем вряд ли больше десятка. А если их будет несколько сотен (как у меня), тогда и увидите, "в чём жопа". :smile:  
 
Цитата
AndyWise написал:
Собственно есть 2 варианта источника тиковых данных цены сейчас. Это либо через OnAllTrade, либо через CreateDataSource + SetUpdateCallbac. Вопрос, какой поток меньше тормазит, более легковесный с точки зрения системы, брокера? Вроде по сути тоже самое, что лучше из практики?
Для начала возьмите индикатор.
В функцию onCalculate приходят тики.
Для вычисления Max/Min  на интервале секунда используйте локальное время компьютера.
синхронизируйте время компьютера с сервером точного времени, чтобы время компьютера точно совпадало с временем биржи.
 
Цитата
AndyWise написал:
Поезд ушёл, если к Мин/Макс относиться как к цене сейчас. А это факт хождения цены. В чем жопа, можно конкретнее? Пока меня напрягает только возможный перезаказ данных, когда вываливается история, а нужен поток сейчас. Приходиться самому отбрасывать и обрабатывать только свежие данные.
если у вас  каждый тик будет поезд уходить  то  этож какой вам трафик нужно рассчитывать чтоб успевать каждый тик отследить  ???    -  тогда уж проще обратиться к  таблице обезличенных сделок по инструменту  и  по ней свои желаемые  рассчеты  производить , она практически  соответсвует  тиковым данным и при желании на ней их можно самостоятельно  строить и  делить на тики ; секунды и прочие лично желаемые  тайфреймы  .......  а вот если кому то хотса отобразить тики на графике  ( я так понимаю  что речь идет про супер активные  инструменты а не те что из третьего эшелона ) то  сначала нужно обеспечить себя свежей пачкой сигарет для  длительного перекура , ну или  потом при помощи  Stri+ Shift+Esc  заходите в диспетчер и сбрасывайте свой Квик иначе очень много перекуров прийдется делать прежде чем он отвиснет.  
 
Всем спасибо, я попробую getParamEx("LAST") 10 или 20 раз сек, и выберу МинМакс. Если не понравиться, значит будет OnAllTrade, там еще бонусом дельту можно.
 
Подскажите, где Квик хранит тики, если хранит? Внешней программе нужны накопленные квиком тики. Я думал, что это файл alltrade.dat , но он каждый день стирается. При чем менял настройки "Очищать данные после смены даты" на локальной машине и на сервере - все равно файл обновляется.
 
Vladimir, здравствуйте.

Графики, в том числе и тиковый, формируются на основе информации полученной в таблице обезличенных сделок, поэтому предлагаем настроить вывод данной таблицы по OBDC или DDE для последующего экспорта таковой информации во внешние системы анализа.
 
У меня включена таблица всех сделок, добавлены в нее все необходимые мне инструменты. Хотел бы уточнить следующее.
1) Тики копятся в alltrade.dat ?
2) alltrade.dat  обновляется с новой датой при любых настройках квика или есть настройки, позволяющие этому файлу ( или в другом месте ) накопить тики за 1 месяц, например?
3) Т.е. Мы можем во внешнюю программу получать тики только за сегодня в "реальном" времени или можно за предыдущие дни получить тоже?
 
Здравствуйте.

Ответы на Ваши вопросы:
1) Да;
2) alltrade.dat очищается с новой торговой сессией, изменить это нельзя;
3) Что конкретно понимается под фразой "Мы можем во внешнюю программу получать тики" ? Если речь идёт о том, можно ли при помощи сторонней программы получить доступ к содержимому dat-файлов - то нельзя. Но Вы можете экспортировать содержимое ТОС при помощи ODBC или DDE в базы данных или excel-таблицы, информацию из которых потом Вы можете импортировать во внешние системы анализа.
Страницы: 1
Читают тему
Наверх