Ситуация следуйщая: тестирую стратегию уже дня 3. Было совершено очень много сделок и вот впервые столкнулся с такой ситуацией. При старте стратегии подписываюсь на правила и регестрирую заявку
this.When(Order1.Matched()).Do(() =>
{
if (Order2.TransactionId == 0)
this.RegisterOrder(Order2);
}).Once();
this.When(Order2.Matched()).Do(() =>
{
if (Order3.TransactionId == 0)
this.RegisterOrder(Order3);
}).Once();
this.RegisterOrder(Order1);
Заявка 1 встала исполнилась, выставилась 2я также исполнилась потом 3я. Все отработало как часы. Но... заметил что в логе нет информации о 1ой сделке. Решил перейти в режим отладки посмотреть что не так. И тут я обнаружил что стратегия вообще не знает что она выставляла первую заявку. Тоесть в Orders ее нет, есть только 2я и 3я. И в MyTrades также нет сделки по 1вой заявке но есть по 2й и 3й. Решил заглянуть в Trader.Orders и Trader.MyTrades, здесь все ок, все заявки и сделки наместе. Сталкивался ли кто-то с подобного рода проблемой. В чем может быть причина. Куда рыть где искать? Quik, S# 4.0.19 Спасибо.
Kommentare (3)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
Пустой TransactionID небось. У квика есть проблемы, я им о них сообщил.
Да Александр, видимо так и есть. TransactionID == 0 но ID транзакции в квике заполнена. Арковци как всегда взяли на заметку и тишина?)
Да. Ждём от них фикса. Неизвестно когда.
попробуем каким-нибудь образом в S# это обойти. Возможно удастся