Ни фига не могу понять. В результате непонятно чего после регистрации заявки весь журнал забивается "Заявка XXXXXXXXXXX в процессе регистрации."
QUIK 6.01.0.17 S# 4.0.22
Не могу понять в чем дело. Verifier говорит что все в порядке. Может кто подскажет куда копать?
Kommentare (74)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
я догадался что что-то отвалилось. так же идут сообщения "Заявка XXXXXXXXXXX в процессе снятия."
надеюсь, кто-нибудь подскажет куда копать вероятно экспорт заявок не отрабатывает
похоже что ордера приходят. в данном случае сделка проходит, а S# об этом не узнает. плохо, что для одних сделок это так, как ниже, а для других - все ОК. сделку совершаю с помощью MarketQuotingStrategy
S# 4.0.22
Изменения не приходят.
И собственно я так понимаю дальше по этой заявке ничего больше не приходило. Поэтому и пишет до бесконечности.
все верно - пишет до бесконечности, но сделка по этой заявке проходит.
я специально включил в журнал информацию о том, что в принципе S# какую-то информацию по заявке получает
А сделка как-то влияет на событие OrdersChanged? Она прошла, видно. А дальше по идее должно от Квика прийти, что и заявка удовлетворилась. Но вот последнего что-то нет. Можете вывести данные из PreProcessDdeData?
к сожалению OrdersChanged я не отслеживаю потребуется какое-то время что бы подготовить новый пример с PreProcessDdeData
судя по PreProcessDdeData - инфа от квика по "проблемным" заявкам поступает не вся. т.е. заявка становится ACTIVE - причем 2 записи, по заявке проходит сделка. а в PreProcessDdeData больше ничего по этой заявке не приходит...
Надо вначале понять, по каким именно заявкам перестает приходить обновление ДДЕ. По тем, что снимаются, или тем, что исполняются. Нужен некий тест. Котирование мучать дальше не имеет смысла, так как ошибка не в нем.
я продолжу копать - но вероятнее всего что обновление по ДДЕ перестает приходить по исполненным заявкам - о самом факте исполнения инфа так же не приходит. и при перестановке проблема - т.е. при попытке снять исполненную. и во всех случаях происходил только перебор котировальщиком.
субъективно - в 4.0.20 работа была намного стабильнее - буду откатываться чтобы убедиться точно
Да, и это тоже стоит проверить.
откатился на 4.0.20 - первый десяток сделок без проблем. на 4.0.22 - более половины с проблемами. может что-то с ДДЕ в .22? так же сегодня подключился к другому серверу брокера по его рекомендации - это как-то может влиять?
корявость квика (медленность) :D с логами надо поколдовать, тогда месаги не будет выкидывать, возникает только в алгоритмах котирования _logManager.Sources.Add(_strategy); // _strategy.Log += OnLog; если как тут закоментировать 2-у строчку, месаги не будут выскакивать 😳
так проблема не в том что в лог не выкидывало, а в том чтобы заработало
коллега выше предположил, что "не приходят ордера от терминала" - буду проверять
ну я так и не добился работы на квике, да и на плазе тоже выскакивает просто реже
а как решили проблему? мне по сути необходимо гарантированно_совершить_сделку по "рынку". если мы просто выставляем лимитник - цена может уйти и ее нужно будет догонять - стратегия котирования как раз этим и занимается, если я правильно понял.
может посоветуете что-нибудь?
ну у меня несколько другие задачи от котирования, я как раз стараюсь войти по лучшим ценам и мне не надо чтобы меня нарантировано ударили :D если просто по "рынку" то как нибудь так
new Unit(500) priceOffset отступ цены для выставляемой заявки
также и для покупки значение 500 с плюсом надо брать как выше показано для продажи, он запустит котирование и ударит
если надо скотировать к примеру по лучше, то выставляем с отрицательным значение, т.е. будет от бида или аска вычитать это значение, и стоять в стакане, пока котируемая заявка не уйдет bestPriceOffset (см. в доке) как то так попробуйте должно получится
для меня был бы идеальным вариант войти по лучшим - но пойдет и по рынку открываюсь я почти как и в Вашем примере
а проблему решил отключением логов 😊 если кто напишет решение буду тоже признателен вместе в автором темы))
проблема не в отключении лога. проблема в том, что по заявке стратегии котирования проходит сделка, но сама стратегия котирования об этом не узнаЁт. стратегия пытается переставить заявку, а предварительно СНЯТЬ.
используйте тот метод который я написал выше
он не спасет - сделка пройдет, а стратегия об этом не узнает...
Пробуйте из ветки dev (codeplex \ dev)
Соглашусь с данными ответами. Судя по логам, не приходит событие о снятой заявке. Котирование и ждет снятия заявки до бесконечности. По идее это OrderChanged событие. Надо бы его проверить на рабочесть для начала :). Новые ордера и сделки видно что приходят.
Проблемы начались с .21 или .22?
.21 не успел поставить - сразу .22
Проверьте, пожалуйста. Пока совсем не понятно что так повлияло.
запустил на .21
может это на моей стороне проблемы? брокер/инет/железо?
судя по количеству авторов - 3-5 человек используют[ли] связку MarketQuotingStrategy+QUIK
и как на .21?
пока не было торговых моментов... я отпишу о первых результатах
пока тихо?
пока было всего 5 сделок - все было ровно. продолжаю наблюдать, но без присмотра не оставляю. настроил себе чтоб при начале открытия позиции мне приходит соответствующее сообщение на icq - и наблюдаю в реальном времени за процессом.
если это предложение мне, то могу проверить без проблем. судя по названию свойства - это учет стратегией сделок "руками"? "руками" я только довожу до нужного объема, то что неверно отрабатывает MQS, предварительно остановив стратегию
Версия 4.0.22 бралась из архива или с codeplex? Если из архива - то там этого свойства нет
от сюда http://www.box.com/stocksharp
тогда остался вопрос лишь по поповду 4.0.21 надо понять где конкретно поломалось - 21 или 22
похоже в 21 все в порядке. по крайней мере лучше чем в 22...
Можно чуть подробнее и в цифрах?
у меня в 22 более половины сделок при котировании отрабатывались неправильно в 20-21 - одна проблема на 7-10 сделок примерно
Нас один товарищ ввел в заблуждение насчет ДДЕ. Сказал, что в версии 22 не приходят все строчки по заявкам (PreProcessDdeData). Из-за этого нет событий. Если не сложно, можете это так же проверить? Чтобы точно убедиться, что коннектор ни при чем.
ок. проверю.
такая проблема была с версии 4.05 - по сей день, так что наверное ничего не ломалось. на Плазе также присутствует эта ошибка, тестовый контур.
вот так создаю и запускаю котрование
попробую сегодня разные версии, чтоб точно знать! завтра отпишусь о тестах.
У вас не ошибка вовсе.
Михаил, а в чем проблема?
Михаил, Александр!
заявка исполнилась, а алгоритм котирования пытается ее переставить, в результате ошибка
| Заявка 39620787 не была принята по причине StockSharp.Plaza.PlazaException: Произошла ошибка. Код 50, описание 'Не найдена заявка для перестановки.'..
полный стек трейс в сообщении
такая же фигня бывает при работе с квиком...
Проверьте на 4.0.23
В ветке 4.1 дополнительно исправили перерегистрации заявок, если есть возможность - лучше вообще уже на 4.1 переходить
а когда 4.1 будет на http://www.box.com/stocksharp ?
when it's done качайте пока с codeplex
скачал, поставил, запустил
запускаем котирование по 4-м инструментам
и далее бесконечный список по 3-м заявкам.
предположу, что если бы они исполнились, то все было бы в порядке, но в данном случае цена "ушла" и не было предпринято ни одной попытки переставить заявки. в квике заявки появлись.
28.03.2012 13:28:11 | Заявка 48441724 в процессе регистрации. 28.03.2012 13:28:11 | Заявка 48441723 в процессе регистрации. 28.03.2012 13:28:11 | Заявка 48441722 в процессе регистрации.
28.03.2012 13:28:09 | RegisterOrder: TransactionId=48441721, Id=0, State=None 28.03.2012 13:28:09 | Заявка 48441721 на Sell отправлена с ценой 17610 объемом 1. 28.03.2012 13:28:09 | RegisterOrder: TransactionId=48441722, Id=0, State=None 28.03.2012 13:28:10 | Заявка 48441722 на Sell отправлена с ценой 6825 объемом 2. 28.03.2012 13:28:10 | Order changed: TransactionId=48441721, Id=0, State=Active 28.03.2012 13:28:10 | Order changed: TransactionId=48441721, Id=0, State=Active 28.03.2012 13:28:10 | New order: TransactionId=48441721, Id=7190517401, State=Active 28.03.2012 13:28:10 | RegisterOrder: TransactionId=48441723, Id=0, State=None 28.03.2012 13:28:10 | Заявка 48441723 на Buy отправлена с ценой 9576 объемом 2. 28.03.2012 13:28:10 | Заявка 48441721 принята биржей. 28.03.2012 13:28:10 | Order changed: TransactionId=48441722, Id=0, State=Active 28.03.2012 13:28:10 | Order changed: TransactionId=48441722, Id=0, State=Active 28.03.2012 13:28:11 | Order changed: TransactionId=48441721, Id=7190517401, State=Done 28.03.2012 13:28:11 | RegisterOrder: TransactionId=48441724, Id=0, State=None 28.03.2012 13:28:11 | OrderChanged TransactionId=48441721 id=7190517401 State=Done 28.03.2012 13:28:11 | Заявка 48441724 в процессе регистрации. 28.03.2012 13:28:11 | Заявка 48441723 в процессе регистрации. 28.03.2012 13:28:11 | Заявка 48441722 в процессе регистрации.
все фрагменты кода, которые я привел - в упрощенном виде
по пунктам 8-11 потребуется время
Сейчас просьба всю отладку вести на 4.0.23. 4.1 который лежит на codeplex не обновлялся пока с понедельника и там не включены важные фиксы, которые и влияли на проблему.
Пока нет логов по остальным пунктам, давайте попробуем следующее:
а) сейчас 4.0.23 используется? Если нет - обязательно переключитесь на неё. б) если пункт а) не помог - сделайте Trader.IsSupportAtomicReRegister = false
пока работаю с 4.0.20
сейчас вытяну 4.0.23 и пропишу Trader.IsSupportAtomicReRegister = false о результатах сообщу...
вот ваш пост, где свойство IsSupportAtomicReRegister именно у Security. и на начальном этапе мне это действительно помогло
а какой класс для этого отнаследовать? QuikTarder или BaseTrader?
Никакой. Просто свойство IsSupportAtomicReRegister = false напишите при создании шлюза
в том то и дело
'Set' accessor of property 'IsSupportAtomicReRegister' is not accessible.
хотя прочитать могу
та же ошибка, что выше...🤨
S# 4.0.23
Моя ошибка, да. Можно проверять работу с 4.0.23 как есть, с установкой свойства для Exchange.
Удалось в итоге проверить на 4.0.23?
поставил 4.0.23 - пока сделок не было о результатах сообщу
Отлично. Надеюсь что с новым интернетом проблема не всплывёт :)
частично тоже грешу на него - была yota, теперь будет проводной...
пока ни одной проблемы на 15-20 сделок
Отлично! 😎