﻿<?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">[3.0.14] Перерегистрация заявок Smart</title>
  <id>~/topic/1434/3_0_14-pereregistratsiya-zayavok-smart/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-10T04:23:25Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1434" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/6867/</id>
    <title type="text">Greene-nsk: S# 3.0.19 А можно ITrader.ReRegisterOrder сделать асинхронным? Перерегистрирую заявку дл...</title>
    <published>2011-03-18T15:48:07Z</published>
    <updated>2011-03-18T15:48:07Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6864)" rel="nofollow" target="_blank"&gt;Greene-nsk&lt;/a&gt;:&lt;/strong&gt;
S# 3.0.19&lt;/p&gt;
&lt;p&gt;А можно ITrader.ReRegisterOrder сделать асинхронным? Перерегистрирую заявку для forts:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;        if (_Order.State == OrderStates.Active)
        {
        _Order = base.ReRegisterOrder(_Order, GetBestPrice, GetNewVolume, _Order.Security.Exchange == Exchange.Rts);
        }
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;В момент вызова функция жутко подвисает на несколько секунд.
Причем, по какой-то причине виснет весь интерфейс, хотя я вроде в отдельном потоке запускаю.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Проще сделать ручками. А виснет из-за того, что скорее всего неправильно модель взаимодействия потоков и ГУИ потока сделана.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6864/</id>
    <title type="text">S# 3.0.19 А можно ITrader.ReRegisterOrder сделать асинхронным? Перерегистрирую заявку для forts: if ...</title>
    <published>2011-03-18T14:46:58Z</published>
    <updated>2011-03-18T14:49:37Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;S# 3.0.19&lt;/p&gt;
&lt;p&gt;А можно ITrader.ReRegisterOrder сделать асинхронным? Перерегистрирую заявку для forts:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;        if (_Order.State == OrderStates.Active)
        {
        _Order = base.ReRegisterOrder(_Order, GetBestPrice, GetNewVolume, _Order.Security.Exchange == Exchange.Rts);
        }
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;В момент вызова функция жутко подвисает на несколько секунд.
Причем, по какой-то причине виснет весь интерфейс, хотя я вроде в отдельном потоке запускаю.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6737/</id>
    <title type="text">Mikhail Sukhov: pyhta4og: OrderMoveFailed(cookie,ordId,reason) OrderReRegisterFailed(id) - нет cooki...</title>
    <published>2011-03-16T10:25:13Z</published>
    <updated>2011-03-16T10:25:13Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6715)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6713)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
OrderMoveFailed(cookie,ordId,reason)                   OrderReRegisterFailed(id) - нет cookie и reason
OrderMoveSucceded(cookie,ordId)                        OrderReRegistered(id) - нет cookie
OrderCancelFailed(id)                                  OrderCancelFailed(id)
OrderCancelSucceded(id)                                OrderCancelled(id)
UpdateOrder(portf,symb,StOrder_State,...)              OrderChanged(portf,symb,StOrder_State,...)&lt;/p&gt;
&lt;p&gt;То в некоторых методах нет cookie плюс нет reason в OrderReRegisterFailed&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Новая версия СмартКом? У меня не такая сигнатура.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;снимается. я смотрел по документации на СмартКом, она не совпадает с реальностью&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6715/</id>
    <title type="text">pyhta4og: OrderMoveFailed(cookie,ordId,reason) OrderReRegisterFailed(id) - нет cookie и reason Order...</title>
    <published>2011-03-15T19:13:58Z</published>
    <updated>2011-03-15T19:13:58Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6713)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
OrderMoveFailed(cookie,ordId,reason)                   OrderReRegisterFailed(id) - нет cookie и reason
OrderMoveSucceded(cookie,ordId)                        OrderReRegistered(id) - нет cookie
OrderCancelFailed(id)                                  OrderCancelFailed(id)
OrderCancelSucceded(id)                                OrderCancelled(id)
UpdateOrder(portf,symb,StOrder_State,...)              OrderChanged(portf,symb,StOrder_State,...)&lt;/p&gt;
&lt;p&gt;То в некоторых методах нет cookie плюс нет reason в OrderReRegisterFailed&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Новая версия СмартКом? У меня не такая сигнатура.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6713/</id>
    <title type="text">Есть некие отличия. Если предположить что мэппинг таков: SmartCOM S# OrderFailed(cookie,id,reason) O...</title>
    <published>2011-03-15T16:16:55Z</published>
    <updated>2011-03-15T16:16:55Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Есть некие отличия. Если предположить что мэппинг таков:&lt;/p&gt;
&lt;p&gt;SmartCOM                                                S#
OrderFailed(cookie,id,reason)                          OrderFailed(cookie,id,reason)
OrderSucceded(сookie,ordid)                            NewOrder(cookie,ordid)
OrderMoveFailed(cookie,ordId,reason)                   OrderReRegisterFailed(id) - нет cookie и reason
OrderMoveSucceded(cookie,ordId)                        OrderReRegistered(id) - нет cookie
OrderCancelFailed(id)                                  OrderCancelFailed(id)
OrderCancelSucceded(id)                                OrderCancelled(id)
UpdateOrder(portf,symb,StOrder_State,...)              OrderChanged(portf,symb,StOrder_State,...)&lt;/p&gt;
&lt;p&gt;То в некоторых методах нет cookie плюс нет reason в OrderReRegisterFailed&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6709/</id>
    <title type="text">pyhta4og: В целом же конечно лучше сделать мэппинг 1-в-1 всех событий смарта со всеми параметрами во...</title>
    <published>2011-03-15T15:29:07Z</published>
    <updated>2011-03-15T15:29:07Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6708)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
В целом же конечно лучше сделать мэппинг 1-в-1 всех событий смарта со всеми параметрами во враппере.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Так а он и есть 1 в 1. Только названия чуть другие.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6708/</id>
    <title type="text">С рефлекшн это идея. Попробовал вот так StServer srv = typeof(SmartComWrapper).GetField(&amp;quot;#=qjxaeJ7mH...</title>
    <published>2011-03-15T15:24:40Z</published>
    <updated>2011-03-15T15:24:40Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;С рефлекшн это идея. Попробовал вот так&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
StServer srv = typeof(SmartComWrapper).GetField(&amp;quot;#=qjxaeJ7mH$ELRDDBxcDAGzw==&amp;quot;, System.Reflection.BindingFlags.Instance|System.Reflection.BindingFlags.NonPublic).GetValue(st.Wrapper) as StServer;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;и вроде получил что-то;). Попробую потрейсить.&lt;/p&gt;
&lt;p&gt;В целом же конечно лучше сделать мэппинг 1-в-1 всех событий смарта со всеми параметрами во враппере.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6704/</id>
    <title type="text">pyhta4og: При тестировании на демосчете приходит ТОЛЬКО OrderChanged! Судя по сигнатуре OrderChanged...</title>
    <published>2011-03-15T14:53:08Z</published>
    <updated>2011-03-15T15:00:36Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6697)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
При тестировании на демосчете приходит ТОЛЬКО OrderChanged!
Судя по сигнатуре OrderChanged мэпит SmartCOM2.UpdateOrder(), хотя параметры в SmartComWrapper и не документированы.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Хорошее замечание. Сейчас исправим.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6697)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Чтобы разобраться со своей проблемой (После ReRegisterOrder заявка остается в состоянии None) я хотел бы писать лог событий SmartCOM. Например, есть надежда что возможно приходит SmartCOM2.OrderMoveFailed.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;И это добавлю.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6697)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Во-первых, в SmartCOMWrapper нет однозначного соответствия между public-событиями и событиями SmartCOM2&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ок, укажу в документации, из какого SmartCOM2 события вызывается данное S# событие.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6697)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Во-вторых, кроме OrderChanged ничего не приходит. Это или баг в S#, или SmartCOM ничего не шлет.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Баг, это мое 6-ое чувство. Но все равно выше написанное исправлю на будущее. upd: Событие OrderReRegisterFailed&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6697)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Возможно ли или вывести в public StServer в SmartComWrapper?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Если я вынесу, то тогда придется во всех роботах ссылку делать на Interop.StXXX.dll, что не очень красивый дизайн. Если так сильно нужно, просто сделайте через Reflection. Код нужен?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6697/</id>
    <title type="text">Автор: pyhta4og Перейти к цитате [3.0.14] При перерегистрации новый Order может остаться в состоянии...</title>
    <published>2011-03-15T14:00:11Z</published>
    <updated>2011-03-15T14:00:11Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Автор: pyhta4og Перейти к цитате
[3.0.14]
При перерегистрации новый Order может остаться в состоянии None навечно.&lt;/p&gt;
&lt;p&gt;В СмартКом нужно такие вещи проверять с купе с событиями SmartComWrapper. Он четко сможет показать, ошибка в S# или в SmartCom. Данные нужны такие: точное время, номер заявки, номер транзакции, номер смарта (только в SmartComWrapper), номер куки (только в SmartComWrapper).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;[3.0.16]
Подписался на
SmartComWrapper.OrderReRegisterFailed,
.OrderReRegistered,
.OrderCancelled,
.OrderCancelFailed,
.OrderFailed
и
.OrderChanged&lt;/p&gt;
&lt;p&gt;При тестировании на демосчете приходит ТОЛЬКО OrderChanged!
Судя по сигнатуре OrderChanged мэпит SmartCOM2.UpdateOrder(), хотя параметры в SmartComWrapper и не документированы.&lt;/p&gt;
&lt;p&gt;Чтобы разобраться со своей проблемой (После ReRegisterOrder заявка остается в состоянии None) я хотел бы писать лог событий SmartCOM. Например, есть надежда что возможно приходит SmartCOM2.OrderMoveFailed.&lt;/p&gt;
&lt;p&gt;Однако это нельзя сейчас сделать.&lt;/p&gt;
&lt;p&gt;Во-первых, в SmartCOMWrapper нет однозначного соответствия между public-событиями и событиями SmartCOM2, а cсылка на StServer - private. и напрямую не подпишешься.&lt;/p&gt;
&lt;p&gt;Во-вторых, кроме OrderChanged ничего не приходит. Это или баг в S#, или SmartCOM ничего не шлет.&lt;/p&gt;
&lt;p&gt;Возможно ли или вывести в public StServer в SmartComWrapper?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6597/</id>
    <title type="text">Mikhail Sukhov: pyhta4og: Сценарий 1 29.24 Послал регистрацию заявки sell 194620@1 TransactionID=716...</title>
    <published>2011-03-11T08:24:55Z</published>
    <updated>2011-03-11T08:24:55Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6594)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Сценарий 1&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;29.24 Послал регистрацию заявки sell 194620@1 TransactionID=71653170&lt;/li&gt;
&lt;li&gt;29.32 Пришел OrdersChanged на Active&lt;/li&gt;
&lt;li&gt;29.43 Пришел NewOrder (уже странно, сначала статус потом что ордер зарегистрирован)&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;А как это проверяете?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Багу нашел.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6594)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Отправляет ли S# MoveOrder для только измененного объема?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;В SmartTrader MoveOrder вызывается всегда в методе ReRegisterOrder.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Изменил поведение. Теперь только для тех, у кого Security.Exchange == RTS.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6594/</id>
    <title type="text">pyhta4og: [3.0.14] При перерегистрации новый Order может остаться в состоянии None навечно. В СмартК...</title>
    <published>2011-03-11T07:24:45Z</published>
    <updated>2011-03-11T07:24:56Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
[3.0.14]
При перерегистрации новый Order может остаться в состоянии None навечно.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;В СмартКом нужно такие вещи проверять с купе с событиями SmartComWrapper. Он четко сможет показать, ошибка в S# или в SmartCom. Данные нужны такие: точное время, номер заявки, номер транзакции, номер смарта (только в SmartComWrapper), номер куки (только в SmartComWrapper).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Сценарий 1&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;29.24 Послал регистрацию заявки sell 194620@1 TransactionID=71653170&lt;/li&gt;
&lt;li&gt;29.32 Пришел OrdersChanged на Active&lt;/li&gt;
&lt;li&gt;29.43 Пришел NewOrder (уже странно, сначала статус потом что ордер зарегистрирован)&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;А как это проверяете?&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Отправляет ли S# MoveOrder для только измененного объема?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;В SmartTrader MoveOrder вызывается всегда в методе ReRegisterOrder.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Пусть перерегистрируем заявку1. Актуальная информация о ней - что она Active.
Запрос на перереристрацию уходит. Новая заявка Заявка2. За то время пока он идет по перерегистрируемой заявке1 случается полный филл. К нам приходит Done по заявке1. А вот по заявке2 никакого Fail не придет в этом случае. Она так и останется в состоянии None.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Не проверял.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(6568)" rel="nofollow" target="_blank"&gt;pyhta4og&lt;/a&gt;:&lt;/strong&gt;
Плюс такой вопрос. точнее несколько.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Правильно ли я понимаю, что OrdersChanged, NewMyTrade и PositionsChanged все асинхронные и могут прийти в любом порядке?&lt;/li&gt;
&lt;li&gt;Из этого следует проблема, что к моменту OrderChanged на Done информация в PositionManager.Position может еще не обновится. Правильно ли я понимаю что она обновляется по NewMyTrade?&lt;/li&gt;
&lt;li&gt;Правильно ли что PositionsChanged берет инфу о позиции напрямую из Смарта а не из пересчета по NewMyTrade?&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;OrdersChanged + NewMyTrade синхронизируются между собой (сделки обновляют Order.Balance и Order.State если баланс стал равен 0). PositionsChanged - полностью независим (могу наврать, но это вроде от биржи тянется).&lt;/li&gt;
&lt;li&gt;Да, обновляется по NewMyTrade.&lt;/li&gt;
&lt;li&gt;Правильно.&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/6568/</id>
    <title type="text">[3.0.14] При перерегистрации новый Order может остаться в состоянии None навечно. Сценарий 1 29.24 П...</title>
    <published>2011-03-10T18:05:49Z</published>
    <updated>2011-03-10T18:05:49Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;[3.0.14]&lt;/p&gt;
&lt;p&gt;При перерегистрации новый Order может остаться в состоянии None навечно.&lt;/p&gt;
&lt;p&gt;Сценарий 1&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;29.24 Послал регистрацию заявки sell 194620@1 TransactionID=71653170&lt;/li&gt;
&lt;li&gt;29.32 Пришел OrdersChanged на Active&lt;/li&gt;
&lt;li&gt;29.43 Пришел NewOrder (уже странно, сначала статус потом что ордер зарегистрирован)&lt;/li&gt;
&lt;li&gt;29.98 Пришел OrdersChanged на Active&lt;/li&gt;
&lt;li&gt;30.40 Посылаем ReRegisterOrder на sell 194620@2. Т.е. меняется только объем. Получаем TransID=71653170&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;После этого 10 секунд никаких событий. А ожидается что 71653170 придет Done V=1,B=1, а 71653170 придет OrdersChanged=Active.&lt;/p&gt;
&lt;p&gt;Отправляет ли S# MoveOrder для только измененного объема?&lt;/p&gt;
&lt;p&gt;В качестве дополнения еще один формат лога;)
Легенда:
A=REG        call RegisterOrder
A=MYTRADE    event NewMyTrade
A=STATE      event OrdersChanged
A=POSCHG     event PositionsChanged
TID=TransactionID, ID = Order.ID (или Trade.ID), V=Volume, B=Balance.
POS=позиция возвращаема PositionManager. PrevID=ID перерегистрируемого ордера.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
T=2011031020012924,A=REG,ID=0,TID=71653170,DIR=Sell,P=194620,V=1,B=1,STATE=None,STATUS=,POS=0
T=2011031020012932,A=MYTRADE,ID=13313305,OID=378434295,TID=71653169,DIR=Buy,P=194580,V=1,OP=194580,OV=1,OB=0,STATE=Done
T=2011031020012932,A=STATE,ID=0,TID=71653170,DIR=Sell,P=194620,V=1,B=1,STATE=Active,STATUS=ReceiveByServer
T=2011031020012943,A=ORD,ID=378434509,TID=71653170,DIR=Sell,P=194620,V=1,B=1,STATE=Active,STATUS=Accepted
T=2011031020012946,A=POSCHG,ID=2011031020012946,P=RIH1,V=1
T=2011031020012990,A=POSCHG,ID=2011031020012990,P=RIH1,V=1
T=2011031020012998,A=STATE,ID=378434509,TID=71653170,DIR=Sell,P=194620,V=1,B=1,STATE=Active,STATUS=Accepted
T=2011031020013040,A=REREG,ID=0,TID=71653171,PrevID=378434509,DIR=Sell,P=194620,V=2,B=2,STATE=None,STATUS=,POS=1

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Сценарий 2. Лога нет, но суть такая.&lt;/p&gt;
&lt;p&gt;Пусть перерегистрируем заявку1. Актуальная информация о ней - что она Active.
Запрос на перереристрацию уходит. Новая заявка Заявка2. За то время пока он идет по перерегистрируемой заявке1 случается полный филл. К нам приходит Done по заявке1. А вот по заявке2 никакого Fail не придет в этом случае. Она так и останется в состоянии None.&lt;/p&gt;
&lt;p&gt;Плюс такой вопрос. точнее несколько.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Правильно ли я понимаю, что OrdersChanged, NewMyTrade и PositionsChanged все асинхронные и могут прийти в любом порядке?&lt;/li&gt;
&lt;li&gt;Из этого следует проблема, что к моменту OrderChanged на Done информация в PositionManager.Position может еще не обновится. Правильно ли я понимаю что она обновляется по NewMyTrade?&lt;/li&gt;
&lt;li&gt;Правильно ли что PositionsChanged берет инфу о позиции напрямую из Смарта а не из пересчета по NewMyTrade?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;С уважением.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>