Фичи/Баги/Пожелания для AlfaConnector

Фичи/Баги/Пожелания для AlfaConnector
Atom
5/4/2011
Sergey Masyura


Основная функциональность в альфа-коннекторе завершена.

Код свободно доступен на http://stocksharpconnect...Control/list/changesets

Из основных явных недоделок можно выделить:
- отсутствие поддержки опционов
- отсутствие поддержки стоп-ордеров.

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

Tags:


Thanks:


<< < 10 11 12 13 14  > >>
vedroid

Avatar
Date: 12/28/2011
Reply


На самом деле нет такого таймаута фиксированного. Я пытался где-то пол-года тому назад подобрать, но всегда получалось по разному.
Бывало что лимитка + стоп проскакивали менее чем за секунду, а бывало и за 3 не получалось.
Мои выводы:
1) У альфы есть фиксированный временной мараторий между заявками
2) Время меняется в зависимости от загрузки их сервера
3) Альфа-Директ - фуфло! Ждем в 2012 новый убер-терминал от альфы. Обещают космолет.
Thanks:

Sergey Masyura

Avatar
Date: 12/28/2011
Reply


OvcharenkoVI
Попробую найти, а так да, есть такой косяк у них((


Как выяснилась такая же ерунда, если, например, отменить ордер и тут же отправить заявку на регистрацию.

У себя в роботе после первой операции запускаю таймер и жду пока та первая заявка отменится / в Вашем случае исполнится

Code

                    var timer = new Timer(300);
                    timer.Elapsed += (sender, args) =>
                    {
                        if(_orderClose.State != OrderStates.Done)
                        {
                            this.AddInfoLog("Пред. заявка {0}, tr.id {1} еще не отменена", _orderClose.Id, _orderClose.TransactionId);
                        }
                        else
                        {
                            this.AddInfoLog("Заявка {0}, tr.id {1} отменена, открытие позиции", _orderClose.Id, _orderClose.TransactionId);

                            timer.Stop();

                            _orderClose = null;
                            PlaceOpenOrder(state > 0 ? OrderDirections.Buy : OrderDirections.Sell, _lastPrice, volumeToClear);
                        }
                    };
                    timer.Start();

Thanks: OvcharenkoVI

Sergey Masyura

Avatar
Date: 12/28/2011
Reply


vedroid
На самом деле нет такого таймаута фиксированного. Я пытался где-то пол-года тому назад подобрать, но всегда получалось по разному.
Бывало что лимитка + стоп проскакивали менее чем за секунду, а бывало и за 3 не получалось.
Мои выводы:
1) У альфы есть фиксированный временной мараторий между заявками
2) Время меняется в зависимости от загрузки их сервера
3) Альфа-Директ - фуфло! Ждем в 2012 новый убер-терминал от альфы. Обещают космолет.


да, посмотрим чего сделают. обещать я тоже умею [cool]
Thanks: OvcharenkoVI

OvcharenkoVI

Avatar
Date: 12/28/2011
Reply


Все ждут в принципе)
Thanks:

OvcharenkoVI

Avatar
Date: 12/28/2011
Reply


Кстати, Сергей, вы говорили, что изложите какие то другие методы получения свечек от альфы)

жду не дождусь)
Thanks:

Sergey Masyura

Avatar
Date: 1/2/2012
Reply


OvcharenkoVI
Кстати, Сергей, вы говорили, что изложите какие то другие методы получения свечек от альфы)

жду не дождусь)


Залил реализацию получения реал-тайм свечек на CodePlex.

Code


trader.CandlesFinished += OnCandlesFinished;
trader.CandlesStarted += OnCandlesStarted;
trader.CandlesChanged += OnCandlesChanged;

trader.RegisterCandles(_security, AlfaTimeFrames.Minute5, trader.MarketTime - TimeSpan.FromHours(3));


Свечки берутся локально из терминала - должен быть открыт график с этими свечками для данного инструмента и именно этого же тайм-фрейма.

Если будут вопросы или сложности - пишите. Как будет время добавлю это в пример и обновлю документацию.
Thanks: OvcharenkoVI

OvcharenkoVI

Avatar
Date: 1/2/2012
Reply


Сергей, огромное спасибо, будем пробовать!
Thanks: Sergey Masyura

OvcharenkoVI

Avatar
Date: 1/4/2012
Reply


Sergey Masyura
OvcharenkoVI
Кстати, Сергей, вы говорили, что изложите какие то другие методы получения свечек от альфы)

жду не дождусь)


Залил реализацию получения реал-тайм свечек на CodePlex.

Code


trader.CandlesFinished += OnCandlesFinished;
trader.CandlesStarted += OnCandlesStarted;
trader.CandlesChanged += OnCandlesChanged;

trader.RegisterCandles(_security, AlfaTimeFrames.Minute5, trader.MarketTime - TimeSpan.FromHours(3));


Свечки берутся локально из терминала - должен быть открыт график с этими свечками для данного инструмента и именно этого же тайм-фрейма.

Если будут вопросы или сложности - пишите. Как будет время добавлю это в пример и обновлю документацию.


Тьфу тьфу все получилось=) спасибо)

Потестил все с индикаторами, все работает)
Thanks:

Sergey Masyura

Avatar
Date: 1/5/2012
Reply


OvcharenkoVI

Тьфу тьфу все получилось=) спасибо)

Потестил все с индикаторами, все работает)


Порядок =)
Thanks:

OvcharenkoVI

Avatar
Date: 1/8/2012
Reply


Сергей, все копался копался - не знаю что куда воткнуть.

Можно ли в AlfaTrader добавить GlobalFilter? Чтобы не было обязательным держать открытым таблицы заявок, сделок и так далее, было бы очень удобно.

Выдержка из документации Альфы:


Установка и получение глобальных фильтров.
СИНТАКСИС
[VB]
ADObj.GlobalFilter(Name)

[C++]
HRESULT get_GlobalFilter(BSTR Name, BSTR *Value);
HRESULT put_GlobalFilter(BSTR Name, BSTR Value);
ПРИМЕЧАНИЕ
Терминал устанавливает на сервере «Альфа-Директ» так называемые глобальные фильтры, которые указывают какую именно информацию необходимо присылать клиенту. Выбор этих фильтров определяется открытой конфигурацией в терминале.
Данное свойство позволяет установить дополнительные фильтры к уже существующим. При чтении этого свойства будут доступны лишь те фильтры, которые были установлены с помощью открытого интерфейса.
Параметр Name определяет с каким именно фильтром будет работа:
• «FI» – котировки;
• «AT» – все сделки;
• «Q» – очереди заявок.
Значение фильтра задается как набор цифровых кодов инструментов (paper_no) соединенных знаком «|».
ЗНАЧЕНИЯ ЦИФРОВЫХ КОДОВ ИНСТРУМЕНТОВ МОЖНО УЗНАТЬ ИЗ ТАБЛИЦЫ ЛОКАЛЬНОЙ БАЗЫ ДАННЫХ.
Thanks:
<< < 10 11 12 13 14  > >>

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy