Текущие задачи по PlazaTrader

Текущие задачи по PlazaTrader
Atom
10/10/2011
Alexander


  1. Избавиться от накопления очереди сообщений в первые секунды работы (необходимо разбить получение реплики на несколько соединений, работающих в отдельных thread'ах, каждое со своим циклом выборки).
  2. Добавить профилировщик получения данных и отправки заявок - необходимо понять насколько быстрый PlazaTrader у нас (особенно в связи с грядущими изменениями в плазе после нового года).
  3. Отфильтровывать данные от уже прошедшей сессии (вечером приходят данные как от дневной, так и от вечерней сессии).
  4. Если заявка GTC, то в вечерний клиринг приходит сообщение Inserted, с id_ord = новому номеру заявки и с id_ord1 = старому номеру заявки. Необходимо заменить одно на другое.

Ничего не упустил?

3ий таск я уже начал делать в фоновом режиме. Кто готов взяться за другие задачи?

Сделано: 2) Обрабатывать снятие заявки в клиринг (сейчас заявка остаётся активной и снять её невозможно). (Alexander) 3) Поддержка Plaza 64x. (frontman) 4) Возможность задания даты истечения заявки (сейчас делается через PlazaStopCondition.ExpiryDate, что не прозрачно, т.к. на Plaza вообще нет стоп заявок). (Alexander) 7) Добавить поддержку FutMoveOrder - одновременное перемещение 2х заявок. (frontman)


Tags:


Thanks:


<< < 15 16 17 18 19  > >>
frontman

Avatar
Date: 11/28/2011
Reply


Я переделал еще круче стало: Методу "StockSharp.Plaza.Wrappers.ConnectionWrapper32..ctor()", прозрачному для безопасности, не удалось вызвать машинный код с использованием метода "P2ClientGateMTA32.CP2ConnectionClass.add_ConnectionStatusChanged(P2ClientGateMTA32.IP2ConnectionEvent_ConnectionStatusChangedEventHandler)". Для вызова машинного кода требуются критические для безопасности или безопасные методы. ))

Thanks:

frontman

Avatar
Date: 11/28/2011
Reply


Ок.

Thanks:

Alexander

Avatar
Date: 11/28/2011
Reply


Я это всё исправил сегодня с утра. Первое - следствие чьего-то фикса, лень смотреть чьего. Кто-то местами поменял инициализацию.

Второе - следствие перехода на .Net 4.0. Я поставил Security.Level1 для Plaza.

Thanks:

Alexander

Avatar
Date: 11/28/2011
Reply


Пообщался с поддержкой - говорят StreamDataDeleted теоретически может придти для любой таблицы -

  1. если на сервере удаляется какая-то строка
  2. если на сервере что-то замещается - в этом случае для базового приходит Updated, для безбазового - Inserted + Deleted.

Сейчас мы это никак не обрабатываем. Есть идеи как данное событие обрабатывать?

Thanks:

frontman

Avatar
Date: 11/28/2011
Reply


Александр я не очень хорошо знаю код еще... А вот это разве не исп этого события?

private void OnStreamDataDeleted(IStreamWrapper stream, string tableName, long id, IRecordWrapper record)
		{
			var evt = Deleted;

			if (evt != null)
				evt(id, _record.Fill(record));
		}
Thanks:

Alexander

Avatar
Date: 11/28/2011
Reply


frontman: Александр я не очень хорошо знаю код еще... А вот это разве не исп этого события?

private void OnStreamDataDeleted(IStreamWrapper stream, string tableName, long id, IRecordWrapper record) { var evt = Deleted;

		if (evt != null)
			evt(id, _record.Fill(record));
	}

Это поднятие событие Deleted. Его (Deleted) должны потоки обрабатывать - сами PlazaStream.
По аналогии с Inserted \ End (см. PlazaTrader.cs)
Thanks:

Mikhail Sukhov

Avatar
Date: 11/28/2011
Reply


Alexander Mukhanchikov: Есть идеи как данное событие обрабатывать?

РТС придумала событие, но не знает для чего оно нужно[lol]

Thanks:

frontman

Avatar
Date: 11/28/2011
Reply


)) Мне вот то же показалось что оно как то не очень то и нужно)))

Thanks:

frontman

Avatar
Date: 11/28/2011
Reply


Тяжело мне что то разбираться в логике плазы... Если не трудно можете объяснить для чего нужен PlazaOrderBuilder. Вот не пойму..

Thanks:

frontman

Avatar
Date: 11/28/2011
Reply


Большой минус в том что очень мало комментов в коде(

Thanks:
<< < 15 16 17 18 19  > >>

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

loading
clippy