Приходят мои сделки у которых в ордере Id равно нулю.

Приходят мои сделки у которых в ордере Id равно нулю.
Atom
11.09.2012
Maxim


Добрый день.
Иногда в событии NewMyTrades приходят сделки, у которых значение в ордере Id равно нулю.

В исходниках плазы нашел вот это место, касающееся МоихСделок:
Код

if (orderTransactionId != 0)
{
	AddMyTrade(security, 0, orderTransactionId, trade);
}


Это баг или фича?

Теги:


Спасибо:


1 2  >
Mikhail Sukhov

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


Maxim
Добрый день.
Иногда в событии NewMyTrades приходят сделки, у которых значение в ордере Id равно нулю.


Воспроизвести возможно?
Спасибо:

Maxim

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


Навряд ли. Большую часть времени все нормально.
Из 1400 сделок 30 имеют ордер ноль.
Как воспроизвестись не знаю.
Спасибо:

Mikhail Sukhov

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


Maxim
Навряд ли. Большую часть времени все нормально.
Из 1400 сделок 30 имеют ордер ноль.
Как воспроизвестись не знаю.


А как идет проверка?
Спасибо:

Maxim

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


Все сделки в SQL записываю.
В них нахожу сделки с нулевым ордером.
Спасибо:

Mikhail Sukhov

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


Maxim
Все сделки в SQL записываю.
В них нахожу сделки с нулевым ордером.


Понятно... Надо конечно упрощать проверку. Потому что ошибка может быть вовсе не в стокшарпе.
Спасибо:

Maxim

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


Mikhail Sukhov
Maxim
Все сделки в SQL записываю.
В них нахожу сделки с нулевым ордером.


Понятно... Надо конечно упрощать проверку. Потому что ошибка может быть вовсе не в стокшарпе.


Немного не понял, какую проверку упрощать?
Данные льются в SQL при поступлении.
Я ничего не проверяю.

Насчет «ошибки не в стокшарпе», возможно.
Но при этом параллельно эти же сделки заливаются через Квик в другой SQL.
И в другом SQL данные нормальные.
Это, конечно, не подтверждает баг в стокшарпе.

Ну и плюс «AddMyTrade(security, 0, orderTransactionId, trade);»
Возможно в этом месте что-то происходит не так?
Постфактум не присваивается номер?

Спасибо:

Maxim

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


1) Вопрос раз.

Работает ли корректно метод «AddMyTrade(security, 0, orderTransactionId, trade);»?
Может быть до моего случая ни у кого не возникала ситуация, когда сделка приходит раньше ордера?
Может быть этот метод в StockSharp.Algo.BaseTrader работает неверно?


2) Вопрос два.

Зачем при добавлении своей сделки в методе «PlazaTrader.OnTradeInserted(PlazaRecord record)» использовать метод
«AddMyTrade(security, 0, orderTransactionId, trade);» с параметром заявки равным нулю?

Ведь таблица «deal» потока «FORTS_FUTTRADE_REPL» содержит поля «id_ord_sell» или «id_ord_buy» которые и есть номер заявки, для данной сделки.
Спасибо:

Mikhail Sukhov

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


AddMyTrade работает именно так, как нужно.
Спасибо:

Maxim

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


Mikhail Sukhov
AddMyTrade работает именно так, как нужно.


А на второй вопрос есть ответ? :)
Спасибо:

Alexander

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


Maxim
2) Вопрос два.

Зачем при добавлении своей сделки в методе «PlazaTrader.OnTradeInserted(PlazaRecord record)» использовать метод
«AddMyTrade(security, 0, orderTransactionId, trade);» с параметром заявки равным нулю?

Ведь таблица «deal» потока «FORTS_FUTTRADE_REPL» содержит поля «id_ord_sell» или «id_ord_buy» которые и есть номер заявки, для данной сделки.



Как ты по сделке определишь по какому именно ордеру она прошла - по ord_sell или по ord_buy?
Они оба != 0
Спасибо:
1 2  >

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

loading
clippy