﻿<?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">Систематически не происходит обновление статуса заявки</title>
  <id>~/topic/1840/sistematicheski-ne-proishodit-obnovlenie-statusa-zayavki/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-05T21:22:58Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1840" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/10626/</id>
    <title type="text">Скажите, а можно подписаться на события SmartComWrapper, если программа работает с самим SmartTrader...</title>
    <published>2011-08-25T18:15:05Z</published>
    <updated>2011-08-25T18:15:05Z</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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10622/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Скажите, а можно подписаться на события SmartComWrapper, если программа работает с самим SmartTrader? Они не будут кофликтовать? Т.е. если я буду вызывать connect на SmartTrader, будут ли мне приходить события и по SmartComWrapper и SmartTrader? А то не знаю как лучше организовать проверку&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Конфликта не будет, так как SmartComWrapper является ядром коннектора. Что SmartTrader, что ваш код для него равнозначны.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10622/</id>
    <title type="text"> Так вот в некоторых случаях activeorder висит со статусом None и Balance = 1 хотя заявка уже была и...</title>
    <published>2011-08-25T16:47:04Z</published>
    <updated>2011-08-25T16:47:04Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</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/10596/" 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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10594/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;Так вот в некоторых случаях activeorder висит со статусом None и Balance = 1 хотя заявка уже была исполнена. И это происходит не всегда (примерно в 30% случаях)&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;А что SmartComWrapper говорит в этом случае? Он данные какие-то шлет? Вы должны четко понимать, что если СмартКом ничего не присылает, значит S# и не будет ничего обновлять.&lt;br /&gt;&lt;br /&gt;И да, перезапись старого ордера плохой стиль кодирования. Ведет к багам. Не удивлюсь, если в этом причина и вы смотрите не ту заявку. &lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Скажите, а можно подписаться на события SmartComWrapper, если программа работает с самим SmartTrader? Они не будут кофликтовать? Т.е. если я буду вызывать connect на SmartTrader, будут ли мне приходить события и по SmartComWrapper и SmartTrader? А то не знаю как лучше организовать проверку</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10596/</id>
    <title type="text"> Так вот в некоторых случаях activeorder висит со статусом None и Balance = 1 хотя заявка уже была и...</title>
    <published>2011-08-24T18:45:06Z</published>
    <updated>2011-08-24T18:45:06Z</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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10594/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;Так вот в некоторых случаях activeorder висит со статусом None и Balance = 1 хотя заявка уже была исполнена. И это происходит не всегда (примерно в 30% случаях)&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;А что SmartComWrapper говорит в этом случае? Он данные какие-то шлет? Вы должны четко понимать, что если СмартКом ничего не присылает, значит S# и не будет ничего обновлять.&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/10594/</id>
    <title type="text">Так Order исполнился, поля изменились... Вы не поняли. У меня в один момент времени есть два ордера ...</title>
    <published>2011-08-24T18:05:37Z</published>
    <updated>2011-08-24T18:08:43Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Alexander &lt;a href="https://stocksharp.ru/posts/m/10593/" 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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10592/" 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;Alexander &lt;a href="https://stocksharp.ru/posts/m/10591/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Так Order исполнился, поля изменились...&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Вы не поняли. У меня в один момент времени есть два ордера с одним id и различными статусами(!), при этом то который хранится в trader правильный (тк показывает, что заявка исполнена и это действительно так) а у другого статус неверный.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Я понял.&lt;br /&gt;Очевидно значит что вы не так сохраняете Order. Напишите как сохраняете, как копируете.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Я уже выше написал, но могу написать максимально подробно, если это поможет.&lt;br /&gt;&lt;br /&gt;&lt;br /&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;
Order activeorder;&lt;/pre&gt;
&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;

activeorder = new Order
                {
                    Type = OrderTypes.Limit,
                    Portfolio = _portfolio,
                    Price = sell,
                    Security = _security,
                    Volume = _size,
                    Direction = OrderDirections.Sell,
                };
_trader.RegisterOrder(activeorder);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Затем когда у меня в _trader происходит событие NewTrades и я решаю что заявку надо передвинуть я делаю следующее:&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;

// блокирую нитку
mut.WaitOne();
if ((activeOrder.State == OrderStates.Active || activeOrder.State == OrderStates.None) &amp;amp;&amp;amp; (activeorder.Balance &amp;gt; 0))
    activeorder = _trader.ReRegisterOrder(activeorder , sell, activeorder .Balance);
mut.ReleaseMutex();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Так вот в некоторых случаях activeorder висит со статусом None и Balance = 1 хотя заявка уже была исполнена. И это происходит не всегда (примерно в 30% случаях)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;зы по OrdersChanged приходит обновление Balance == 0 по заявке но в той заявке, которая сохраняется у меня (activeorder) ничего не меняется (в некоторых случаях)</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10592/</id>
    <title type="text">Так Order исполнился, поля изменились... Вы не поняли. У меня в один момент времени есть два ордера ...</title>
    <published>2011-08-24T17:53:10Z</published>
    <updated>2011-08-24T17:56:45Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Alexander &lt;a href="https://stocksharp.ru/posts/m/10591/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Так Order исполнился, поля изменились...&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Вы не поняли. У меня в один момент времени есть два ордера с одним id и различными статусами(!), при этом то который хранится в trader правильный (тк показывает, что заявка исполнена и это действительно так) а у другого статус неверный.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;p.s. Прикрутил апдейт подвисших заявок на основе orders в trader, посмотрим может так заработает</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10593/</id>
    <title type="text">Так Order исполнился, поля изменились... Вы не поняли. У меня в один момент времени есть два ордера ...</title>
    <published>2011-08-24T17:56:41Z</published>
    <updated>2011-08-24T17:56:41Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Ortn &lt;a href="https://stocksharp.ru/posts/m/10592/" 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;Alexander &lt;a href="https://stocksharp.ru/posts/m/10591/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Так Order исполнился, поля изменились...&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Вы не поняли. У меня в один момент времени есть два ордера с одним id и различными статусами(!), при этом то который хранится в trader правильный (тк показывает, что заявка исполнена и это действительно так) а у другого статус неверный.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Я понял.&lt;br /&gt;Очевидно значит что вы не так сохраняете Order. Напишите как сохраняете, как копируете.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10591/</id>
    <title type="text">Так Order исполнился, поля изменились...</title>
    <published>2011-08-24T17:45:10Z</published>
    <updated>2011-08-24T17:45:10Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Так Order исполнился, поля изменились...</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10590/</id>
    <title type="text">В общем, ситуация такая: У моего Order (который я сохраняю) следующие поля: Balance 1 Latency {00:00...</title>
    <published>2011-08-24T17:21:26Z</published>
    <updated>2011-08-24T17:21:26Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">В общем, ситуация такая:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;У моего Order (который я сохраняю) следующие поля:&lt;br /&gt;&lt;br /&gt;Balance	1&lt;br /&gt;Latency	{00:00:00}&lt;br /&gt;Id	0&lt;br /&gt;State	None&lt;br /&gt;&lt;br /&gt;В ExtensionInfo одна запись:&lt;br /&gt;&lt;br /&gt;&amp;quot;OrderSmartId&amp;quot; &amp;quot;711872**&amp;quot; (номер заявки)&lt;br /&gt;&lt;br /&gt;НО! В самом trader (если смотреть в Order.trader) в массиве orders значится следующий Order&lt;br /&gt;&lt;br /&gt;Balance	0&lt;br /&gt;Latency	{00:00:00.1796921}&lt;br /&gt;State	Done&lt;br /&gt;Status	Accepted&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;В ExtensionInfo следующая запись:&lt;br /&gt;&lt;br /&gt;&amp;quot;OrderSmartId&amp;quot;	&amp;quot;711872**&amp;quot; (номер тот же)&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/10587/</id>
    <title type="text">в) При этом старый order я нигде не сохраняю, а пишу поверх новый. Может быть еще и в этом причина, ...</title>
    <published>2011-08-24T16:17:13Z</published>
    <updated>2011-08-24T16:17:13Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</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/10583/" 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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10560/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;в) При этом старый order я нигде не сохраняю, а пишу поверх новый.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Может быть еще и в этом причина, но лучше отследите события через SmartComWrapper&lt;/div&gt;&lt;/div&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/10583/</id>
    <title type="text">в) При этом старый order я нигде не сохраняю, а пишу поверх новый. Может быть еще и в этом причина, ...</title>
    <published>2011-08-24T14:20:19Z</published>
    <updated>2011-08-24T14:20:19Z</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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10560/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;в) При этом старый order я нигде не сохраняю, а пишу поверх новый.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Может быть еще и в этом причина, но лучше отследите события через SmartComWrapper</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10582/</id>
    <title type="text">Столкнулся с проблемой, когда заявка в stocksharp висит со статусом None, хотя реально она уже была ...</title>
    <published>2011-08-24T14:18:40Z</published>
    <updated>2011-08-24T14:18:40Z</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;Ortn &lt;a href="https://stocksharp.ru/posts/m/10559/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Столкнулся с проблемой, когда заявка в stocksharp висит со статусом None, хотя реально она уже была исполнена (видно в SmartX), происходит не с каждой заявкой, но с очень многими. Как можно отследить причину подобного явления? Версия SmartCom последняя (пробовал переустановить - не помогло). Версия S# 3.2.5&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://stocksharp.com/doc/html/535227b6-0338-44c9-9a9b-9baf9bab10b4.htm" title="http://stocksharp.com/doc/html/535227b6-0338-44c9-9a9b-9baf9bab10b4.htm"&gt;http://stocksharp.com/do...c9-9a9b-9baf9bab10b4.htm&lt;/a&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10560/</id>
    <title type="text">Логика работы программы такая 1. Создаю SmartTrader 2. Подписываюсь на получение сделок (NewTrades) ...</title>
    <published>2011-08-23T18:15:38Z</published>
    <updated>2011-08-23T18:15:38Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Логика работы программы такая&lt;br /&gt;&lt;br /&gt;1. Создаю SmartTrader&lt;br /&gt;2. Подписываюсь на получение сделок (NewTrades) и делаю connect&lt;br /&gt;3. Когда приходит новая сделка в той же нитке создаю Order (если он не был создан или старый Order отработал), или если есть активный ордер я его двигаю. Двигаю я его следующим образом:&lt;br /&gt;  а) Беру старый Order (в коде называется order)&lt;br /&gt;  б) Вызываю order = _trader.ReRegisterOrder(order, updatedprice, order.Balance);&lt;br /&gt;  в) При этом старый order я нигде не сохраняю, а пишу поверх новый.&lt;br /&gt;&lt;br /&gt;Т.к. я торгую на ФОРТС и количество контрактов в Order не меняется, то должен сработать moveorder (который поддерживается на бирже) верно? У меня такое ощущение что именно при перемещении Order происходит такая проблема. Завтра попробую проверить, но если то, как я это сейчас делаю в принципе не правильно, скажите мне об этом. Благодарю за потраченное время!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;p.s. У подвисшей заявки есть в extensioninfo smartid, по которому я вижу, что заявка была уже давно исполнена, но при этом status == None, как так?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10559/</id>
    <title type="text">Столкнулся с проблемой, когда заявка в stocksharp висит со статусом None, хотя реально она уже была ...</title>
    <published>2011-08-23T17:06:27Z</published>
    <updated>2011-08-23T17:06:27Z</updated>
    <author>
      <name>Ortn</name>
      <uri>https://stocksharp.ru/users/27613/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Столкнулся с проблемой, когда заявка в stocksharp висит со статусом None, хотя реально она уже была исполнена (видно в SmartX), происходит не с каждой заявкой, но с очень многими. Как можно отследить причину подобного явления? Версия SmartCom последняя (пробовал переустановить - не помогло). Версия S# 3.2.5</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>