Order.Matched вызывается несколько раз


Order.Matched вызывается несколько раз
Atom
3/2/2012


Здравствуйте, есть проблема с вызовом события на Order.Matched.
Версия 4.0.19
Создаю заявку:
Code
 var order = this.CreateOrder(direction, dealPrice, lotSize);
 base.RegisterOrder(order);


потом создаю событие на исполнение заявки:
Code
StrategyRule stopRule = this.When(order.Matched());
            stopRule.Do
                (() =>
                {
...
});


Т.е. если сделка выполнилась, заходим в правило и выставляем стоп, но на деле происходит так.
Например я покупаю 50 лотов, но покупка произошла не одной сделкой а допустим 3-мя, в итоге событие order.Matched отрабатывается 3 раза.
В документации написано что Matched это событие полного исполнения заявки, вопрос почему оно отрабатывается по ходу несколько раз, а не один раз в конце?

Tags:


Thanks:


1 2  >
russ

Avatar
Date: 3/2/2012
Reply


Ребята, что у всех работает?
Thanks:

freelancer

Avatar
Date: 3/2/2012
Reply


Стокшарп использует ну очень мало человек. Муханчиков приводит какую-то статистику, но все просто бросают библиотеку, когда с ней повозятся.

Причин много: Matched глючит, например. Это означает, что в документации про этот метод - враньё, и надеяться на метод нельзя. Сохранение данных в хранилище вообще не оттестировано и не работает. Новые методы в новых весиях не работают с самого начала.

И всем пофиг
Thanks:

Alexander

Avatar
Date: 3/2/2012
Reply


freelancer Go to
Стокшарп использует ну очень мало человек. Муханчиков приводит какую-то статистику, но все просто бросают библиотеку, когда с ней повозятся.

Причин много: Matched глючит, например. Это означает, что в документации про этот метод - враньё, и надеяться на метод нельзя. Сохранение данных в хранилище вообще не оттестировано и не работает. Новые методы в новых весиях не работают с самого начала.

И всем пофиг



Над библиотекой работают 2-3 человека.
Совершенно безвозмездно.

Хотите помогать - помогайте. Ошибки которые находятся - исправляются.
Хотите тестировать - тестируйте.

вызов order.Matched несколько раз ещё не посмотрели. Мы не можем отвечать на найденные ошибки в течение пары часов.
Вы раньше писали о том что Matched глючит? Нет.

Вы можете бесплатно весь день посвящать библиотеке, исправлению ошибок да ответам на вопросы на форуме? Если да - мы готовы дать исходники.

Критиковать все горазды. Как речь заходит о помощи - все пасуют, да ждут других.
Thanks:

Serg

Avatar
Date: 3/2/2012
Reply


Я бы предложил: если нашел ошибку или непонятки выложи конфиг терминала, проект поминимуму чтоб ошибка проявлялась. Тогда и разобраться проще. Лично я бы такие просьбы рассматривал(может не все но все же). Иногда просто лень создавать кучу строк кода ради того чтобы проверить одну. Это мое предложение всем пользователям библиотеки. Таким образом можно наверно и кодить нормально научиться))
И я лично благодарен ребятам уже только за то что могу нормально данные из квика получить и обработать. Спасибо
Thanks:

russ

Avatar
Date: 3/2/2012
Reply


freelancer Go to
Стокшарп использует ну очень мало человек. Муханчиков приводит какую-то статистику, но все просто бросают библиотеку, когда с ней повозятся.

Причин много: Matched глючит, например. Это означает, что в документации про этот метод - враньё, и надеяться на метод нельзя. Сохранение данных в хранилище вообще не оттестировано и не работает. Новые методы в новых весиях не работают с самого начала.

И всем пофиг

Зачем так жестко я в первую очередь спрашивал у тех кто уже юзает библиотеку, люди ж как-то определяют, что заявка исполнилась.
Просто сегодня реально залетел на этом, стоп сработал 3 раза вместо одного, в итоге вместо закрытия шорта взялся двойной сайз в лонг :(
Thanks:

freelancer

Avatar
Date: 3/2/2012
Reply


russ Go to
Зачем так жестко

Накатило как-то [crying]
Thanks:

russ

Avatar
Date: 3/2/2012
Reply


freelancer Go to
russ Go to
Зачем так жестко

Накатило как-то [crying]

Да, тоже иногда бывает, но потом вспоминаю, что это не коммерческий проект и нужно хотя-бы спасибо сказать.
Thanks:

Mikhail Sukhov

Avatar
Date: 3/3/2012
Reply


freelancer Go to
russ Go to
Зачем так жестко

Накатило как-то [crying]


Если это было оправданием, то оно явно не катит. Думаете наша команда - это такая урна, в которую можно излить все, что накипело? Ошибаетесь. У нас и своих забот хватает каждодневно. Выслушивать еще и неблагодарную критику нет никакого желания.

Это был ремень. Теперь нравоучение.

Давайте попытаемся понять все вместе, почему все именно так, как оно есть сейчас, а не так, как хотелось бы. Есть проект, который развивает постоянно. Когда я говорю постоянно, я имею ввиду именно не от версии к версии, а от новой идеи к реализации. Идеи идут постоянно. Реализации также. Баги реализаций, естественно, идут вслед. Кто их будет фиксить? Их будем фиксить мы. А кто будет делать новое? Предполагалось, что в проект будут вливаться постоянно новые участники. Но новые как-то не особо появляются. Висят текущие задачи, все проходят мимо. Мол не наши проблемы, это проблемы команды StockSharp. А баги в ваших роботах - это тоже что ли наши проблемы? Может еще и риски на нас? Ваша то тогда где доля? Да, да, лично к вам обращаюсь, freelancer, что вы лично сделали для проекта, что начинаете критиковать? Или суть фразы "некоммерческий проект, развивающийся совместными усилиями" не понятна?

Или никак не доходит, что не помогая с решениями текущих задач, вы тем самым себе же делаете подлянку в перспективе? Что, когда у вас будет лично проблема, ее никто быстро не исправит из-за нехватки рук? Неужели эта взаимосвязь не видна?

По поводу конкретной ошибки. Подозреваю, что тянется из-за той же проблемы, которая наблюдается у котирования. Под Плазу работает, под Квик не пашет (уверен, что именно Квик у автора). Квик шлет изменения как ему угодно. Нормальное АПИ закрыто от использования. Нам что теперь, так же кричать на форумах Квика? Им мозг выносить? Думаете глыба сдвинется и скажет "ребята, конечно, мы все поняли, простите нас, вот вам АПИ нормально"? Ничего подобного. Нам душу изливать некуда. Почему мы тогда должны от вас подобное выслушивать?

Я еще в том году говорил, что робот на Квике - это нестабильное решение и мука до конца дней. Предлагал варианты. Лежит Транзак почти доделанный. Есть новехонький Алор. Есть другие варианты. Где сдвиги то? Кто-нибудь высказался ЗА? Никто. Значит всё всех устраивает. Так а какого тогда, простите, вы тут душу изливаете, если всех всё устраивает?
Thanks: Alexander

Alexander

Avatar
Date: 3/3/2012
Reply


russ Go to
Здравствуйте, есть проблема с вызовом события на Order.Matched.
Версия 4.0.19
Создаю заявку:
Code
 var order = this.CreateOrder(direction, dealPrice, lotSize);
 base.RegisterOrder(order);


потом создаю событие на исполнение заявки:
Code
StrategyRule stopRule = this.When(order.Matched());
            stopRule.Do
                (() =>
                {
...
});


Т.е. если сделка выполнилась, заходим в правило и выставляем стоп, но на деле происходит так.
Например я покупаю 50 лотов, но покупка произошла не одной сделкой а допустим 3-мя, в итоге событие order.Matched отрабатывается 3 раза.
В документации написано что Matched это событие полного исполнения заявки, вопрос почему оно отрабатывается по ходу несколько раз, а не один раз в конце?



1) Сделайте Once, тогда правило выполнится 1 раз
2) Это происходит по следующей причине:
- правило Matched подписано на изменение ордера
- изменение ордера происходит при
а) ответе на посланную транзакцию
б) при обновлении таблицы своих сделок

Именно поэтому изменение происходит 2 раза и 2 раза срабатывает правило.
Thanks:

russ

Avatar
Date: 3/3/2012
Reply


Alexander Mukhanchikov Go to
russ Go to
Здравствуйте, есть проблема с вызовом события на Order.Matched.
Версия 4.0.19
Создаю заявку:
Code
 var order = this.CreateOrder(direction, dealPrice, lotSize);
 base.RegisterOrder(order);


потом создаю событие на исполнение заявки:
Code
StrategyRule stopRule = this.When(order.Matched());
            stopRule.Do
                (() =>
                {
...
});


Т.е. если сделка выполнилась, заходим в правило и выставляем стоп, но на деле происходит так.
Например я покупаю 50 лотов, но покупка произошла не одной сделкой а допустим 3-мя, в итоге событие order.Matched отрабатывается 3 раза.
В документации написано что Matched это событие полного исполнения заявки, вопрос почему оно отрабатывается по ходу несколько раз, а не один раз в конце?



1) Сделайте Once, тогда правило выполнится 1 раз
2) Это происходит по следующей причине:
- правило Matched подписано на изменение ордера
- изменение ордера происходит при
а) ответе на посланную транзакцию
б) при обновлении таблицы своих сделок

Именно поэтому изменение происходит 2 раза и 2 раза срабатывает правило.

Да, я как только этот баг увидел сразу сделал.
Спасибо большое за помощь.
Thanks:
1 2  >

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

loading
clippy