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

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


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

Код свободно доступен на http://stocksharpconnectors.codeplex.com/SourceControl/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: Попробую найти, а так да, есть такой косяк у них((

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

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


					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.



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.

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