﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Состояния завок</title>
  <id>~/topic/1042/sostoyaniya-zavok/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-27T10:24:05Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=1042" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/3136/</id>
    <title type="text">Не надо так. order.IsCanceled() достаточно order.IsMatched() order.State == Done order.IsPartiallyMa...</title>
    <published>2010-06-17T14:51:00Z</published>
    <updated>2010-06-17T14:51:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Не надо так. order.IsCanceled() достаточно&lt;/p&gt;
&lt;p&gt;order.IsMatched()&lt;/p&gt;
&lt;p&gt;order.State == Done order.IsPartiallyMatched() = true&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3135/</id>
    <title type="text">Робот и так будет снимать заявки по определенному условию, а так же их может снять человек. и я не м...</title>
    <published>2010-06-17T14:37:00Z</published>
    <updated>2010-06-17T14:37:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Робот и так будет снимать заявки по определенному условию, а так же их
может снять человек.
и я не могу знать кто снял - робот или человек.получается менятее шило
мыло - придется писать&lt;/p&gt;
&lt;p&gt;if(order.State == OrderStates.Done  &amp;amp;&amp;amp; otder.IsCancel)
делаем одно (выяснем сколько контрактов таки прошло и на это колво
бросаем правую)&lt;/p&gt;
&lt;p&gt;if( order.State == OrderStates.Done  &amp;amp;&amp;amp; otder.IsMatched)&lt;/p&gt;
&lt;p&gt;делаем другое (бросаем правую чтобы перекрыто все контракты из
левой)&lt;/p&gt;
&lt;p&gt;if( order.State == OrderStates.Done  &amp;amp;&amp;amp; otder.IsPartialyMatched)&lt;/p&gt;
&lt;p&gt;снова определяем сколько контрактов таки прошло?&lt;/p&gt;
&lt;p&gt;а если часть заявки прошла, а потом ее сняли? какой статус будет?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3134/</id>
    <title type="text">Спокойствие, еще пока ничего не сломано. Поэтому и консультируюсь. Если бы сломал - уже не до консул...</title>
    <published>2010-06-17T13:55:00Z</published>
    <updated>2010-06-17T13:55:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Спокойствие, еще пока ничего не сломано. Поэтому и консультируюсь.
Если бы сломал - уже не до консультации.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;order.IsMatched() будет короче, чем order.State ==
OrderStates.Matched&lt;/li&gt;
&lt;li&gt;А вот тут мне кажется логика хромает. Кидать надо то что осталось,
и не важно, полностью исполнилось или нет.&lt;/li&gt;
&lt;li&gt;И опять неправильный на мой взгляд подход. Завтра Вы сделаете,
чтобы робот сам снимал заявки по определенному условию и уже не
различите, кто снимал, человек или робот. Надо коллекцию делать из тех
заявок, что снимаются программно и что ручками. Если заявка снята
челом, то она будет отсутствовать в той коллекции.&lt;/li&gt;
&lt;li&gt;Как плюс. Вы снимаете заявку. Вы какого статуса дожидаетесь? Если
только Canceled то не правильно. Надо два. А так будет только одна
проверка.&lt;/li&gt;
&lt;li&gt;Опять же, из выше приведенной логики следует, что не так важно,
снята заявка или исполнилоась или активна все еще, а сколько
реализована контрактов.&lt;/li&gt;
&lt;li&gt;Matched/Canceled - бизнес состояния. Я так и писал.&lt;/li&gt;
&lt;li&gt;Status - Вы его используете? Я нет.&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3133/</id>
    <title type="text">Арбитражер. Например робот выставляет заявку. Она а) выполняется целиком - я вижу что она матчед, ки...</title>
    <published>2010-06-17T10:26:00Z</published>
    <updated>2010-06-17T10:26:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Арбитражер.
Например робот выставляет заявку. Она
а) выполняется целиком - я вижу что она матчед, кидаю правую часть
б) Vol-Bal != Vol - я кидаю правую часть на vol-bal, и снимаю левую
часть
в) висит в стакане - трейдер это видит, РУКАИТ снимает ее, я вижу что
она Canceled, вибрысываю ее из коллекции для обработки заявок
вот тут то мне и надо смотреть кто Matched, кто частично исполнене, а
кто Canceled. И повторюсь еще раз - состояния Matched/Canceled
отражают реальное состояие заявки в торговом шлюзе.И кстати Matched/
Canceled - это самые что нинаесть бизнес состояни, а системные - этот
свойство Status.
кстати Вашу модель &amp;quot; Бизнес статусы - это
ничего вообще не исполнили, исполнили хоть что-то и слаба богу, мне
повезло я все исполнил.&amp;quot; надо доплнить статусом - непонятно что
произошло, но заявку сняли от греха подальше :).&lt;/p&gt;
&lt;p&gt;в принципе,Мтхаил, можно же еще одно свойсво ввести - бизнес
состояние. зачем ломать старое, которое широко используется?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3132/</id>
    <title type="text">Причина - отделить бизнес состояния от системных. Заявка по сути живет следующий цикл: еще не принят...</title>
    <published>2010-06-16T19:18:00Z</published>
    <updated>2010-06-16T19:18:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Причина - отделить бизнес состояния от системных. Заявка по сути живет
следующий цикл: еще не принята, принята и активна, принята и не
активна. Это системные статусы, диктуемые биржей. Бизнес статусы - это
ничего вообще не исполнили, исполнили хоть что-то и слаба богу, мне
повезло я все исполнил.&lt;/p&gt;
&lt;p&gt;К примеру, если использовать текущий подход, то можно получить заявку,
которая PartiallyMatched и Canceled одновременно. С точки зрения
человеческой логики - это абсурд. С точки зрения биржи - заявка
частично исполнилась, но мы ее сняли.&lt;/p&gt;
&lt;p&gt;Ок, давайте Ваш случай. Где будет новая концепция не удобна?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3131/</id>
    <title type="text">Даже наверно не нужно пункт а) - а то придется в некторых случаях 3 статуса проверять :) </title>
    <published>2010-06-16T18:45:00Z</published>
    <updated>2010-06-16T18:45:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Даже наверно не нужно пункт а) - а то придется в некторых случаях 3
статуса проверять :)&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3130/</id>
    <title type="text">а если необходима разная реакция на снятие заявки и ее исполенние? во тя сейчас делаю арбитражера, м...</title>
    <published>2010-06-16T18:17:00Z</published>
    <updated>2010-06-16T18:17:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;а если необходима разная реакция на снятие заявки и ее исполенние? во
тя сейчас делаю арбитражера, мне именно такая реакция нужна..
Состояние частичное реализации можно сделать 3 способами&lt;/p&gt;
&lt;p&gt;а) еще один State в дополнение к Matched и Canceled - тот же
OrderStates.PartialyMatched
б) метод расширения или свойсво IsPartialyMatched
в) тупо провреить Volume-Balance == Volume.&lt;/p&gt;
&lt;p&gt;Еще раз повторюсь - текущие OrderStates полностью отражают реаьное
состояние заявки в системе. А Done  -  слабая информативность, тока в
любом случае придется проверить - а че именно то Done - сняли или
исполнили?&lt;/p&gt;
&lt;p&gt;А вопрос - почему имеено Вы решили слить два состояния в одно?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3129/</id>
    <title type="text">Минусы текущего: Теряется состояние частичной реализации. В программе надо проверять на два состояни...</title>
    <published>2010-06-16T17:55:00Z</published>
    <updated>2010-06-16T17:55:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Минусы текущего:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Теряется состояние частичной реализации.&lt;/li&gt;
&lt;li&gt;В программе надо проверять на два состояния (Canceled и Matched),
чтобы понять, что заявка уже закрыта.&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3128/</id>
    <title type="text">Зачем это - Canceled и Matched четко отражали реальное состояние заявки в квике - Снята и Исполена, ...</title>
    <published>2010-06-16T17:51:00Z</published>
    <updated>2010-06-16T17:51:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Зачем это - Canceled и Matched четко отражали реальное состояние
заявки в квике - Снята и Исполена, это можно было анализировать и
предпринимать различные действия. А Done это все испротит. А методы
добавить - отличная идея, но зачем же состояния убирать?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3127/</id>
    <title type="text">ай-ай, баба Яга против! это же нахрен летит ручная коррекция работы робота! </title>
    <published>2010-06-16T17:48:00Z</published>
    <updated>2010-06-16T17:48:00Z</updated>
    <author>
      <name>Tauler</name>
      <uri>https://stocksharp.com/users/26822/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;ай-ай, баба Яга против! это же нахрен летит ручная коррекция работы
робота!&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/3126/</id>
    <title type="text">Хочу переделать OrderStates: слить два состояния Cancelled и Matched в одно - Done. И добавить 3 ext...</title>
    <published>2010-06-16T17:45:00Z</published>
    <updated>2010-06-16T17:45:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Хочу переделать OrderStates: слить два состояния Cancelled и Matched в
одно - Done. И добавить 3 extension метода: IsCancelled IsMatched
IsPartiallyFilled.&lt;/p&gt;
&lt;p&gt;Возражения? Предложения?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>