CandleManager
Atom
24.03.2010
Tauler


вот в мануале вычитал что "Менеджер создания свечек. По торговому шлюзу ITrader подключается к событию NewTrades, и на основе полученных данных формирует свечки по заданным критериям. "

то есть свечки строятся по сделкам, я правильно понимаю?

А есть возможнолсть строить свечки по Bid/Ask из таблицы Инструменты?


Теги:


Спасибо:


Tauler

Фотография
Дата: 24.03.2010
Ответить


вот в мануале вычитал что "Менеджер создания свечек. По торговому шлюзу ITrader подключается к событию NewTrades, и на основе полученных данных формирует свечки по заданным критериям. "

то есть свечки строятся по сделкам, я правильно понимаю?

А есть возможнолсть строить свечки по Bid/Ask из таблицы Инструменты?

Спасибо:

Mikhail Sukhov

Фотография
Дата: 24.03.2010
Ответить


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

Спасибо:

Tauler

Фотография
Дата: 24.03.2010
Ответить


при ликвидном инструменте будете терять значения - слишком уж быстро будет скакать спред.

поподробнее можно? на стакане буду терять или на инструментах?

Спасибо:

Mikhail Sukhov

Фотография
Дата: 24.03.2010
Ответить


На стакане меньше, на инструменте больше. Дело в том, что тот же РТС обновляется раз 10-15 в секунду (это то, что мне удалось увидеть самому при прямом подключении к бирже, может быть и больше). Квик, при самом быстром раскладе, пришлет 3-4 изменения для стакана. По инструменту, вроде бы обновление не чаще 1 раза в секунду.

Спасибо:

Pulsar

Фотография
Дата: 03.04.2010
Ответить


Если можно еще один вопрос по менеджеру свечей. собственно вопрос в том что не получается его создать и правильно использовать. Приведенный ниже код на VB не создает ошибок, но работает неправильно:

'объявления ... Public WithEvents CandleMan As New CandleManager(Trader) '-- Создаем Менеджер свечей Dim token As CandleToken '--Cтранный идентификатор типа свечей Dim Svechi() As Candle ... '---Загрузочная процедура--- ... token = CandleMan.RegisterTimeFrameCandles(Instrument, TimeSpan.FromMinutes(5)) Svechi = CandleMan.GetTimeFrameCandles(Instrument, TimeSpan.FromMinutes(5), 100) ... Instrument содержит правильно сформированный инекс RIM0 (проверено в отладчике). После этого в массиве Svechi оказывается 9 или 10 записей, хаотично разбросанных по времени и со странными значениями открытия- закрытия свечей (обычно равными между собой)

Процедура вызываемая по событию появления новой свечи Sub PodpisCandle() Handles CandleMan.NewCandles ... вызывается только один раз при загрузке программы. На смену или изменение свечей в графике квика не реагирует.

Что-то я не так понимаю?

Спасибо:

Mikhail Sukhov

Фотография
Дата: 05.04.2010
Ответить


Делается не так то, что RegisterTimeFrameCandles запускает в другом потоке процесс формирования свечек. Соответственно, когда на следующей строчке Вы делаете получения свечек - практически ничего еще не свормированно. Как получать свечки. Нужно подписатся на событие NewCandles. Оно вызывается, когда появилась новая свечка (именно появилась, когда произошел первый тик, а не до конца сформировалась). Скажем, если пришло событие для свечки со временем 12:25, то значит все свечки раньше этого периода сформировались, и можно получать их через GetTimeFrameCandles.

Спасибо:

Pulsar

Фотография
Дата: 06.04.2010
Ответить


Да, вы правы, это сработало. Правда несколько странно, - при первом запуске программы коллекция заполняеся постепенно с шагом 8-16-32-52-73... при этом на каждом шаге вызывается событие новой свечи... но все же заполняется и то слава богу. Однако до 100 (как в примере и хелпа) не доходит. По той простой причине что в период с 10-30 до 18-45 накапливается всего 99 5-минутных свечей. Вот на 99 коллекция и останавливается в 18-45 (раньше - меньше). Отсюда вопрос - как получить вчерашние свечки? Ведь на них нужно строить входные для сегодняшнего дня значения индикаторов.

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy