Сортировка тиков (CopyTicks) по минуткам - страница 2

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Sergey Chalyshev
8290
Sergey Chalyshev  
Stanislav Korotky:

Красное и зеленое противоречат друг другу. В принципе, когда есть разные источники информации, то в отсутствии синхронизированного времени между ними, можно лишь достоверно указывать время получения данных на серверах MQ, а это время точно будет упорядочено.

На ФОРТСе не был, но по какому бы типу цен бары ни строились, они строятся из тиков и не могут друг другу противоречить - я так пока считаю, потому что не знаю примеров, когда это не работает (кроме глюков).

Вы попробуйте ))

Дело в том, что у стакана (информационных котировок) нет времени, вернее МТ5 терминал не дает это время, хотя много раз просили. Так думаю сервер на инфо тики ставит своё серверное время.

А на торговые тики Last, время транслируется и ставится биржевое.

И как тут синхронизировать если даже в терминале в стакане видна рассинхронизация?

Alexey Kozitsyn
8855
Alexey Kozitsyn  
prostotrader:

Проблема в том, что как раз тики не отсортированы.

Например бар начался 10:00:25 (т.е не ровно с нулевой секунды)

А тики с асками и бидами идут с 10:00:00 

Как в индикаторе их выводить?

И еще проблема, что делать с тиками, если бара нет, куда их "пристраивать"

Т.е. хотите получить что-то типа свечек, только построенных не по ластам?

В таком случае, до прихода первого ласта нужно... ничего не делать. Как придет - запрос всех INFO-тиков и отобразить их. Но, ИМХО, лучше такое просто потоком (в подокно двумя линиями, например).

По поводу "куда пристраивать" - никуда. Не надо их пристраивать. Зачем пристраивать, если можно запросить и получить?

Однако, если хочется данные именно из стакана - тогда копить в массиве.

Nikolai Semko
6547
Nikolai Semko  
prostotrader:

Привет!

Кто-нибудь делал подобную сортировку?

Не вижу никаких сложностей. Конечно тики отсортированы.
Вот Вам и время бара (для M1) из тика:

datetime t = tick[i].time-tick[i].time%(60);

или

datetime t = 60*(tick[i].time/60);



Посмотрите вот этот код. 

Andrey Khatimlianskii
56009
Andrey Khatimlianskii  
prostotrader:

Построить индикатор из тиков (ask bid среднее значение), но по существующим минутным барам

Берите только тики с флагом TICK_FLAG_LAST

Stanislav Korotky
25912
Stanislav Korotky  
Andrey Khatimlianskii:

Берите только тики с флагом TICK_FLAG_LAST

Вот-вот, если бары строятся по last, то и тики эти надо смотреть. А суть задачи автор вопроса так и не раскрыл. Желательно с простым кодом, который выводит в лог "проблемы" со временем.

Stanislav Korotky
25912
Stanislav Korotky  
Sergey Chalyshev:

Вы попробуйте ))

Порекомендуйте, где можно открыть демо без регистрации (телефона).

prostotrader
8049
prostotrader  
Всем спасибо, буду думать...
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий