﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Trades.Last().Order.IsMatched()</title>
  <id>~/topic/2027/trades_last()_order_ismatched()/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-07T17:03:04Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=2027" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/12819/</id>
    <title type="text">А вот этот код работать будет? for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++) { base.ChildStra...</title>
    <published>2011-10-27T17:27:48Z</published>
    <updated>2016-08-16T00:03:46Z</updated>
    <author>
      <name>Евгений</name>
      <uri>https://stocksharp.ru/users/6070/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/12735/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;andy_baka_ &lt;a href="https://stocksharp.ru/posts/m/12697/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;А вот этот код работать будет? &lt;br /&gt;&lt;br /&gt;for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++)                &lt;br /&gt;{&lt;br /&gt;    base.ChildStrategies[i].Stop();&lt;br /&gt;    AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None,  &amp;quot;Стратегия - {0} остановлена&amp;quot;, i));                &lt;br /&gt;}&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Стратегия через Stop не сразу останавливается. Она ждет окончания активных правил. Так что Stop в данном случае - это некий сигнал о том, что начинай останавливаться.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;А о каких правилах идет речь? В моем примере дополнительных правил никаких нет. И вот я &lt;a href="http://stocksharp.com/forum/1527/Oshibka-zashchitnykh-stratieghii---kolliektsiia-kotirovok-pusta/?page=4" title="http://stocksharp.com/forum/1527/Oshibka-zashchitnykh-stratieghii---kolliektsiia-kotirovok-pusta/?page=4"&gt;спрашивал&lt;/a&gt; уже, так как все таки узнать - остановилась стратегия или нет?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12838/</id>
    <title type="text">коллеги, имхо все проще - Александр Муханчиков же сказал, что не поддерживается. Значит, сие действо...</title>
    <published>2011-10-28T12:27:44Z</published>
    <updated>2011-10-28T12:27:44Z</updated>
    <author>
      <name>andy_baka_</name>
      <uri>https://stocksharp.ru/users/646/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">коллеги, имхо все проще - Александр Муханчиков же сказал, что [] не поддерживается. Значит, сие действо возможно сделать примерно так:&lt;br /&gt;&lt;br /&gt;foreach (var _tmp_child_strategy in ChildStrategies)&lt;br /&gt;            {&lt;br /&gt;                _strg_list.Add((StopLossStrategy)_tmp_child_strategy);&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;            if (_strg_list.Count &amp;gt; 0)&lt;br /&gt;            {&lt;br /&gt;                for (int i = 0; i &amp;lt; _strg_list.Count; i++)&lt;br /&gt;                {&lt;br /&gt;                    _strg_list[i].Stop();&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;все нормально работает. </content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12735/</id>
    <title type="text">А вот этот код работать будет? for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++) { base.ChildStra...</title>
    <published>2011-10-26T12:51:59Z</published>
    <updated>2011-10-26T12:51:59Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;andy_baka_ &lt;a href="https://stocksharp.ru/posts/m/12697/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;А вот этот код работать будет? &lt;br /&gt;&lt;br /&gt;for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++)                &lt;br /&gt;{&lt;br /&gt;    base.ChildStrategies[i].Stop();&lt;br /&gt;    AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None,  &amp;quot;Стратегия - {0} остановлена&amp;quot;, i));                &lt;br /&gt;}&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Стратегия через Stop не сразу останавливается. Она ждет окончания активных правил. Так что Stop в данном случае - это некий сигнал о том, что начинай останавливаться.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12697/</id>
    <title type="text">А вот этот код работать будет? for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++) { base.ChildStra...</title>
    <published>2011-10-25T18:03:47Z</published>
    <updated>2011-10-25T18:03:47Z</updated>
    <author>
      <name>andy_baka_</name>
      <uri>https://stocksharp.ru/users/646/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">А вот этот код работать будет? &lt;br /&gt;&lt;br /&gt;for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++)                &lt;br /&gt;{&lt;br /&gt;    base.ChildStrategies[i].Stop();&lt;br /&gt;    AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None,  &amp;quot;Стратегия - {0} остановлена&amp;quot;, i));                &lt;br /&gt;}</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12619/</id>
    <title type="text">IsMatched проверяет Order.Balance и Order.State. Если Balance == 0, значит заявка исполнена полность...</title>
    <published>2011-10-23T10:39:23Z</published>
    <updated>2011-10-23T10:39:23Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">IsMatched проверяет Order.Balance и Order.State. Если Balance == 0, значит заявка исполнена полностью. То, что заявка обновляется раньше появления сделок - специфика интернет трейдинга (все данные идут в своих потоках и это начинается аж от самой биржи). Если вы хотите проверять исполненность заявки по сделкам, то вам нужен свой IsMatched.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12487/</id>
    <title type="text">Я что-то неправильно делаю?</title>
    <published>2011-10-18T15:37:09Z</published>
    <updated>2011-10-18T15:37:09Z</updated>
    <author>
      <name>Евгений</name>
      <uri>https://stocksharp.ru/users/6070/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Я что-то неправильно делаю?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/12435/</id>
    <title type="text">Есть такой лог: 18:00:01.502 | | IS | Регистрация заявки - цена 142620, направление Sell, объем 6 18...</title>
    <published>2011-10-17T15:57:47Z</published>
    <updated>2011-10-17T16:03:19Z</updated>
    <author>
      <name>Евгений</name>
      <uri>https://stocksharp.ru/users/6070/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Есть такой лог:&lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;18:00:01.502 |            | IS              | Регистрация заявки - цена 142620, направление Sell, объем 6&lt;br /&gt;18:00:01.596 |            | QuikTrader      | RegisterOrder: TransactionId=39458443, Id=0, Price=142620, Balance=6, Security=RIZ1@RTS, State=None &lt;br /&gt;18:00:03.830 |            | IS              | Новая Sell сделка 38929366 по цене 144145 на 1 заявки 39458443.&lt;br /&gt;18:00:03.862 |            | IS              | Прошла сделка по цене 144145, объём 1, направление Sell.&lt;br /&gt;&lt;span class="highlight"&gt;18:00:03.862 |            | IS              | Заявка исполнена полностью: True, Направление последней заявки Sell.&lt;/span&gt;&lt;br /&gt;18:00:03.862 |            | IS              | Смена направления на Buy&lt;br /&gt;18:00:03.830 |            | QuikTrader      | New order: TransactionId=39458443, Id=989376247, Price=142620, Balance=0, Security=RIZ1@RTS, State=Done &lt;br /&gt;18:00:03.877 |            | IS              | Новая Sell сделка 38929365 по цене 144145 на 1 заявки 39458443.&lt;br /&gt;18:00:03.924 |            | IS              | Новая Sell сделка 38929367 по цене 144140 на 4 заявки 39458443.&lt;br /&gt;18:00:03.924 |            | IS              | Прошла сделка по цене 144140, объём 4, направление Sell.&lt;br /&gt;18:00:03.924 |            | IS              | Заявка исполнена полностью: True, Направление последней заявки Sell.&lt;br /&gt;18:00:03.924 |            | IS              | Смена направления на Buy&lt;br /&gt;18:00:03.971 |            | IS              | Прошла сделка по цене 144145, объём 1, направление Sell.&lt;br /&gt;18:00:03.971 |            | IS              | Заявка исполнена полностью: True, Направление последней заявки Sell.&lt;br /&gt;18:00:03.971 |            | IS              | Смена направления на Buy&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;И такой код:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
 private void OnNewMyTrades(IEnumerable&amp;lt;MyTrade&amp;gt; trades)
        {

            foreach (var trade in trades)
            {
                AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None, &amp;quot;Прошла сделка по цене {0}, объём {1}, направление {2}.&amp;quot;,
                       trade.Trade.Price, trade.Trade.Volume, trade.Order.Direction));
            }

            AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None, &amp;quot;Заявка исполнена полностью: {0}, Направление последней заявки {1}.&amp;quot;,
                      trades.Last().Order.IsMatched(), trades.Last().Order.Direction));

            // смотрим последнюю сделку, следующая должна быть противоположная
            if (trades.Last().Order.IsMatched() &amp;amp;&amp;amp; trades.Last().Order.Direction == OrderDirections.Buy)
            {
                CurrentDirection = OrderDirections.Sell;
                AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None,  &amp;quot;Смена направления на {0}&amp;quot;,  OrderDirections.Sell));

            }
            else if (trades.Last().Order.IsMatched() &amp;amp;&amp;amp; trades.Last().Order.Direction == OrderDirections.Sell)
            {
                CurrentDirection = OrderDirections.Buy;
                 AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None, &amp;quot;Смена направления на {0}&amp;quot;,  OrderDirections.Buy));

                for (int i = 0; i &amp;lt; base.ChildStrategies.Count; i++)
                {
                  
                    base.ChildStrategies[i].Stop();
                   
                    AddLog(new LogMessage(this, DateTime.Now, ErrorTypes.None,  &amp;quot;Стратегия - {0} остановлена&amp;quot;, i));
                }
                return;
            }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Почему после сделки с объемом 1, выставленная заявка на объем 6, считается исполненной?&lt;br /&gt;&lt;br /&gt;А в этом логе наоборот, после последней сделки выводит, что заявка не исполнена&lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;15:44:56.893 |            | TPS             | Регистрация новой заявки на Sell с ценой 145800 и объемом 6.&lt;br /&gt;15:44:56.909 |            | QuikTrader      | RegisterOrder: TransactionId=39458442, Id=0, Price=145800, Balance=6, Security=RIZ1@RTS, State=None &lt;br /&gt;15:44:56.955 |            | TPS             | Заявка 39458442 на Sell отправлена с ценой 145800 объемом 6.&lt;br /&gt;15:44:57.330 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:57.612 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:58.065 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:58.205 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:58.424 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:58.862 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:58.862 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:59.080 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:59.190 | Warning    | TPS             | Заявка 39458442 не имеет состояния.&lt;br /&gt;15:44:59.393 |            | QuikTrader      | New order: TransactionId=39458442, Id=988400383, Price=145800, Balance=6, Security=RIZ1@RTS, State=Active &lt;br /&gt;15:44:59.877 |            | IS              | Новая Sell сделка 38842987 по цене 145800 на 3 заявки 39458442.&lt;br /&gt;15:44:59.924 |            | IS              | Прошла сделка по цене 145800, объём 3, направление Sell.&lt;br /&gt;15:44:59.924 |            | IS              | Заявка исполнена полностью: False, Направление последней заявки Sell.&lt;br /&gt;15:44:59.924 |            | BS              | Новая Sell сделка 38842987 по цене 145800 на 3 заявки 39458442.&lt;br /&gt;15:44:59.924 |            | BS              | Новая Sell сделка 38842987 по цене 145800 на 3 заявки 39458442.&lt;br /&gt;15:44:59.924 |            | TPS             | Новая Sell сделка 38842987 по цене 145800 на 3 заявки 39458442.&lt;br /&gt;15:45:00.065 |            | IS              | Новая Sell сделка 38842992 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.065 |            | IS              | Прошла сделка по цене 145800, объём 1, направление Sell.&lt;br /&gt;15:45:00.065 |            | IS              | Заявка исполнена полностью: False, Направление последней заявки Sell.&lt;br /&gt;15:45:00.065 |            | BS              | Новая Sell сделка 38842992 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.065 |            | BS              | Новая Sell сделка 38842992 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.065 |            | TPS             | Новая Sell сделка 38842992 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.377 |            | TPS             | Позиция изменилась на -3.&lt;br /&gt;15:45:00.393 |            | TPS             | Позиция изменилась на -4.&lt;br /&gt;15:45:00.518 |            | IS              | Новая Sell сделка 38842995 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.518 |            | IS              | Прошла сделка по цене 145800, объём 1, направление Sell.&lt;br /&gt;15:45:00.518 |            | IS              | Заявка исполнена полностью: False, Направление последней заявки Sell.&lt;br /&gt;15:45:00.518 |            | BS              | Новая Sell сделка 38842995 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.518 |            | BS              | Новая Sell сделка 38842995 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.518 |            | TPS             | Новая Sell сделка 38842995 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.549 |            | TPS             | Позиция изменилась на -5.&lt;br /&gt;15:45:00.721 |            | IS              | Новая Sell сделка 38843002 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.721 |            | IS              | Прошла сделка по цене 145800, объём 1, направление Sell.&lt;br /&gt;&lt;span class="highlight"&gt;15:45:00.721 |            | IS              | Заявка исполнена полностью: False, Направление последней заявки Sell.&lt;/span&gt;&lt;br /&gt;15:45:00.721 |            | BS              | Новая Sell сделка 38843002 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.721 |            | BS              | Новая Sell сделка 38843002 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.721 |            | TPS             | Новая Sell сделка 38843002 по цене 145800 на 1 заявки 39458442.&lt;br /&gt;15:45:00.737 |            | TPS             | Позиция изменилась на -6.&lt;br /&gt;15:45:00.737 |            | TPS             | Заканчиваем котирование с неисполненным объемом равный 0.&lt;br /&gt;15:45:00.768 |            | BS              | Стратегия останавливается.&lt;br /&gt;15:45:00.784 |            | BS              | Стратегия останавливается.&lt;br /&gt;15:45:00.799 |            | TPS             | Стратегия останавливается.&lt;br /&gt;15:45:00.799 |            | TPS             | Заканчиваем котирование с неисполненным объемом равный 0.&lt;br /&gt;15:45:00.830 |            | TPS             | Заканчиваем котирование с неисполненным объемом равный 0.&lt;br /&gt;15:45:00.955 |            | BS              | Стратегия остановлена.&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>