﻿<?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">Сообщество. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=212</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-28T05:05:50Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=212" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/2499/</id>
    <title type="text">Стратегия не учитывает сделки по стоп ордерам</title>
    <published>2012-03-16T08:04:24Z</published>
    <updated>2012-03-16T08:04:24Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="AlfaDirect" />
    <content type="html">&lt;p&gt;Создаю простую стратегию на базе Strategy. В ней по окончанию свечи входим в позицию и ставим трейлинг стоп. Что получаем по факту?&lt;/p&gt;
&lt;p&gt;Заявка и сделка для лимитного ордера нормально проходит и в стратегии отображается.
Заявка и сделка для стоп ордера проходит криво и в стратегии НЕ отображается.&lt;/p&gt;
&lt;p&gt;В итоге PositionManager не учитывает изменение позиции по стопу, и она постепенно растет. Хотя по факту она нулевая. PositionManager.Position &amp;gt; 0.&lt;/p&gt;
&lt;p&gt;Похоже сделки для стоп ордеров не учитываются совсем. Странно что раньше не было обнаружено.&lt;/p&gt;
&lt;p&gt;Пожелание - исправить ситуацию :)&lt;/p&gt;
&lt;p&gt;ЗЫ: в коннекторе нет проблем. Все события приходят нормально.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2498/</id>
    <title type="text">Проблема с Coonectom</title>
    <published>2012-03-16T07:42:41Z</published>
    <updated>2012-03-16T07:42:41Z</updated>
    <author>
      <name>AlexBuzaev</name>
      <uri>https://stocksharp.ru/users/468/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">&lt;p&gt;Добрый день, пытаюсь сесть на Вашу библиотеку. Смотрю примеры.
Пример SampleSmart отлично коннектится и работает с моим демосчетом
А пример SampleSmartSMA при нажатии на кнопку Connect выдает следующую ошибку&lt;/p&gt;
&lt;p&gt;System.ComponentModel.Win32Exception (0x80004005): Отказано в доступе&lt;/p&gt;
&lt;p&gt;в System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)&lt;/p&gt;
&lt;p&gt;в System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)&lt;/p&gt;
&lt;p&gt;в System.Diagnostics.Process.Kill()&lt;/p&gt;
&lt;p&gt;в StockSharp.Smart.SmartTrader.KillSmartComProcess()&lt;/p&gt;
&lt;p&gt;в StockSharp.Smart.SmartTrader.OnConnect()&lt;/p&gt;
&lt;p&gt;В чем может быть дело?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2496/</id>
    <title type="text">v4.0.20 Trader.ProcessDataError: System.ArgumentOutOfRangeException</title>
    <published>2012-03-15T18:49:34Z</published>
    <updated>2012-03-15T18:49:34Z</updated>
    <author>
      <name>sda</name>
      <uri>https://stocksharp.ru/users/27731/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Добрый день!&lt;/p&gt;
&lt;p&gt;Не знаю, куда правильно постить информацию о багах, опубликую здесь.&lt;/p&gt;
&lt;p&gt;Подключаюсь к торговой системе посредством SmartTrader'а.&lt;/p&gt;
&lt;p&gt;Сегодня на вечернем клиринге с моего счета списали мартовские опционы вне денег. Эти операции отдаются со стороны торговой системы как сделки с нулевым orderTransactionId. В результате при получении сделок возникает exception:&lt;/p&gt;
&lt;p&gt;15.03.2012 21:21:32 err Trader.ProcessDataError: System.ArgumentOutOfRangeException: Номер транзакции должен быть отличен от нуля.
Parameter name: orderTransactionId
Actual value was 0.
at StockSharp.Algo.BaseTrader.AddMyTrade(Security security, Int64 orderId, Int64 orderTransactionId, Int64 tradeId, Func&lt;code&gt;2 createTrade, Action&lt;/code&gt;1 initMyTrade)
at StockSharp.Smart.SmartTrader.#=qfzSH89$Mv8Ofzu2y$3js_kysbq$NiANKIBBTSpnvTGs=.#=q4mbFJ60V1bPbFeGAvyC1ibxEquGFFRHMAVcij6R3Spg=(Security #=qxrfNJbw0xpwzUWGXMStJHw==)
at StockSharp.Algo.BaseTrader.GetSecurity(String id, Func&lt;code&gt;2 createSecurity, Action&lt;/code&gt;1 changeSecurity, String nativeSecurityId)
at StockSharp.Algo.BaseTrader.GetSecurity(String id, Action&lt;code&gt;1 changeSecurity, String nativeSecurityId) at StockSharp.Smart.SmartTrader.#=qwRaN51iZmc1S0J9GUiteXg==(Int32 #=qcKJ3I5IWFH9VGLCcFIxLWQ==, Int32 #=qd_HFLT8KhQdYPYrriX3Z0w==, String #=qA26HfIyr1Hp1awyY$ScCNw==, String #=q4kT6hRtHz0cB30gzvW2Uow==, String #=qxsnZ7xnxtOVt_x2Uv9kPPQ==, String #=q7F54ujMZTFZrOrnYJVfk4g==, Int32 #=qtR35YFeUwJZKl7$1hymQrw==, Int32 #=qLReP$4l4o5IgcNxSE8j0Vw==, Decimal #=qrciuxaDj5NbwitmG7x6PgQ==, Decimal #=qf54825kg7L9SdT_qlB4SKg==, String #=qtQxI15g5cUMatZ_YBKWP9w==, String #=q4MEPte6Q5ZnUsivjDz2KOQ==, Nullable&lt;/code&gt;1 #=qekZ0Fn305HW0Pt3gP6Gk0Q==, Decimal #=qrrUBO3JMgQ6dy_R0YmVzQuFxkjDU6Vy_S_1hGd0cj2w=, Decimal #=qdaiuwzZ5XwfDPHIrdJ59ew==)
at Ecng.Common.DelegateHelper.SafeInvoke[T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15](Action`15 handler, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15)
at StockSharp.Smart.SmartComWrapper.#=qfzSH89$Mv8Ofzu2y$3js_qgdS7SCdhEpMj2tiPnQ2bQ=.#=qD19bRnre6gLZZNWHAbtsdbqqmA2tHEYXwNn2tuxYMQk=()
at StockSharp.Algo.BaseTrader.ProcessEvents(Action handler)&lt;/p&gt;
&lt;p&gt;Upd. По этой ненорме создал тикет на codeplex:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://stocksharp.codeplex.com/workitem/952" rel="nofollow" target="_blank"&gt;http://stocksharp.codeplex.com/workitem/952&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2493/</id>
    <title type="text">PlazaTrader для украинской биржи</title>
    <published>2012-03-15T16:57:18Z</published>
    <updated>2012-03-15T16:57:18Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">&lt;p&gt;Есть заинтересованные в переводе PlazaTrader для украинской биржи?&lt;/p&gt;
&lt;p&gt;Просьба отписаться в данной теме кому это действительно нужно и кто планирует этим пользоваться.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Все кто заинтересован в Plaza коннекторе для УБ - стучитесь в скайп (amukhanchikov).&lt;/strong&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2487/</id>
    <title type="text">Событие при изменении Order.State</title>
    <published>2012-03-15T10:38:50Z</published>
    <updated>2012-03-15T10:38:50Z</updated>
    <author>
      <name>maximv20</name>
      <uri>https://stocksharp.ru/users/28027/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Можно ли отследить изменения конкретно Order.State (а не вообще какой-то информации по ордеру)? У меня например приходит 2 OnOrderChanged с изменяющися CancelTime. Я же хочу отслеживать только Order.State. Как правильно это делать?&lt;/p&gt;
&lt;p&gt;14:01:05.577 |            | PlazaTrader     | RegisterOrder: TransactionId=50327216, Id=0, Price=174030, Balance=1, Security=RIH2@RTS, State=None
14:01:05.662 |            | PlazaTrader     | New order: TransactionId=50327216, Id=2722005545, Price=174030, Balance=1, Security=RIH2@RTS, State=Active
14:01:05.686 |            | POStrategy      | OnOrderChanged: TID=50327216; ID=2722005545; ST=Active/-; L=84; Buy 1/1@174030 RIH2@RTS;
14:01:05.687 |            | POStrategy      | OnOrderChanged: cancel
14:01:05.687 |            | PlazaTrader     | CancelOrder: TransactionId=50327216, Id=2722005545, Price=174030, Balance=1, Security=RIH2@RTS, State=Active
14:01:05.831 |            | POStrategy      | OnOrderChanged: TID=50327216; ID=2722005545; ST=Done/-; L=84; Buy 1/1@174030 RIH2@RTS; CT=2012-03-15 14:01:05.831;
14:01:05.909 |            | POStrategy      | OnOrderChanged: TID=50327216; ID=2722005545; ST=Done/-; L=84; Buy 1/1@174030 RIH2@RTS; CT=2012-03-15 14:01:05.788;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2486/</id>
    <title type="text">стратегия не увидела свою заявку и сделку</title>
    <published>2012-03-15T10:27:20Z</published>
    <updated>2012-03-15T10:27:20Z</updated>
    <author>
      <name>Serg</name>
      <uri>https://stocksharp.ru/users/484/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">&lt;p&gt;Ситуация следуйщая:
тестирую стратегию уже дня 3. Было совершено очень много сделок и вот впервые столкнулся с такой ситуацией.
При старте стратегии подписываюсь на правила и регестрирую заявку&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
this.When(Order1.Matched()).Do(() =&amp;gt;
{
  if (Order2.TransactionId == 0)
     this.RegisterOrder(Order2);
}).Once();

this.When(Order2.Matched()).Do(() =&amp;gt;
{
  if (Order3.TransactionId == 0)
     this.RegisterOrder(Order3);
}).Once();

this.RegisterOrder(Order1);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Заявка 1 встала исполнилась, выставилась 2я также исполнилась потом 3я. Все отработало как часы. Но... заметил что в логе нет информации о 1ой сделке. Решил перейти в режим отладки посмотреть что не так. И тут я обнаружил что стратегия вообще  не знает что она выставляла первую заявку. Тоесть в Orders ее нет, есть только 2я и 3я. И в MyTrades также нет сделки по 1вой заявке  но есть по 2й и 3й. Решил заглянуть в Trader.Orders и Trader.MyTrades, здесь все ок, все заявки и сделки наместе. Сталкивался ли кто-то с подобного рода проблемой. В чем может быть причина. Куда рыть где искать?
Quik, S# 4.0.19
Спасибо.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2485/</id>
    <title type="text">Не приходит OnOrderChanged</title>
    <published>2012-03-15T10:22:54Z</published>
    <updated>2012-03-15T10:22:54Z</updated>
    <author>
      <name>maximv20</name>
      <uri>https://stocksharp.ru/users/28027/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">&lt;p&gt;codeplex 15452 немного модифицировнный (другие не пробовал). не приходит OnOrderChanged&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2484/</id>
    <title type="text">Вопрос по выставлению заявок</title>
    <published>2012-03-15T10:08:01Z</published>
    <updated>2012-03-15T10:08:01Z</updated>
    <author>
      <name>Daenur</name>
      <uri>https://stocksharp.ru/users/28118/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">&lt;p&gt;Ситуация простая - хочу купить/продать по рынку и прикрыть позицию стопом. Для примера использую акции сбера.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Вариант №1&lt;/strong&gt;
Покупаю по рынку обычным способом (с помощью маркет-заявки или лимитной заявки с большим отступом по цене), все ок. Тут же подписываюсь на событие исполнения заявки. Хочу получать событие один единственный раз, когда заявка исполнилась полностью.&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
this.When(this.mainOrder.Matched().Do(OnMainOrderMatched).Once());

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Все хорошо, заявка попала в систему, исполнилась, попадаем в OnMainOrderMatched. Здесь я хочу получить среднюю цену исполнения заявки, чтобы от этого уровня поставить стоп-лосс.&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
decimal averagePrice = this.mainOrder.GetAveragePrice();

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;К сожалению, averagePrice остается всегда равной нулю. В КВИКе аналогичный подход дает правильный результат, averagePrice равен цене исполнения заявки.&lt;/p&gt;
&lt;p&gt;Ок, раз так не получается, можно проверить, когда заявка исполнилась и все ее поля стали заполнены. Подписываюсь на правило, отслеживающее появление новых сделок по заявке&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
this.When(mainOrder.NewTrades()).Do(OnNewOrderTrades).Once();

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;далее в OnNewOrderTrades&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
if ((this.mainOrder != null) &amp;amp;&amp;amp; (this.mainOrder.Id == myTrades.Last().Order.Id))
{
	OnMainOrderMatched();
}

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Тогда в OnMainOrderMatched уже имеем averagePrice соответствующую действительности.&lt;/p&gt;
&lt;p&gt;Но данный подход меня смущает тем, что ловить событие Once не правильно, поскольку заявка может исполниться частями. А Periodical - тогда надо городить сложную логику для стопов с учетом исполнения заявки по частям.&lt;/p&gt;
&lt;p&gt;Переходим к &lt;strong&gt;Варианту №2&lt;/strong&gt;
Благодаря разработчикам S# существует более простой способ выставления заявок и прикрытия их стопами, через котирование и дочерние стратегии. Но сразу же наталкиваюсь на проблему с выставлением рыночной заявки через котирование - у заявки отбрасывается дробная часть и заявка появляется в системе по 101.00 или по 102.00, хотя реальная цена колеблется в этом промежутке с сотыми долями.
Это происходит и у меня, и в проекте-примере.&lt;/p&gt;
&lt;p&gt;Возникает вопрос - кто как справляется с данной задачей в СмартКОМе?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2482/</id>
    <title type="text">Обновился, появилась ошибка</title>
    <published>2012-03-14T12:37:58Z</published>
    <updated>2012-03-14T12:37:58Z</updated>
    <author>
      <name>Daenur</name>
      <uri>https://stocksharp.ru/users/28118/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Обновился до последней версии (скачал все исходники, работаю с папкой trunk, которая, я так понимаю, и есть 4.0.22). Теперь в момент появления новой свечи возникает непонятная ошибка, которую не получается никак перехватить. Breakpoint'ы поставил везде где только можно, но ошибка выскакивает до перехвата любым из них.&lt;/p&gt;
&lt;p&gt;Мой краткий лог работы программы:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;
16:09:40 :  Запуск программы...

16:09:40 :  Создается стратегия.

16:09:47 :  Соединение.

16:09:50 :  StartExport

16:09:56 :  Выбор бумаги: RIH2@RTS

16:09:56 :  InitCandleManager()

16:10:15 :  Старт стратегии.

16:10:16 :  Стратегия запущена.

16:10:16 :  OnStarting

16:11:00 :  System.ArgumentNullException: Значение не может быть неопределенным.
   в System.Threading.Monitor.ReliableEnter(Object obj, Boolean&amp;amp; lockTaken)
   в System.Threading.Monitor.Enter(Object obj, Boolean&amp;amp; lockTaken)
   в StockSharp.Algo.Strategies.Strategy.#=qDeeaXVr7bQMyGhdBQLZyNg==(IStrategyRule #=qQoHSZZke5rtcuq2cM3YF6g==, Func`1 #=qjae_76DdiE$FGmntCIo7_g==)

16:11:00 :  System.ArgumentNullException: Значение не может быть неопределенным.
   в System.Threading.Monitor.ReliableEnter(Object obj, Boolean&amp;amp; lockTaken)
   в System.Threading.Monitor.Enter(Object obj, Boolean&amp;amp; lockTaken)
   в StockSharp.Algo.Strategies.Strategy.#=qDeeaXVr7bQMyGhdBQLZyNg==(IStrategyRule #=qQoHSZZke5rtcuq2cM3YF6g==, Func`1 #=qjae_76DdiE$FGmntCIo7_g==)

16:11:00 :  Стратегия останавливается.

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;СмартКОМ или КВИК, фьюч или акция - значение не имеет. На предыдущей версии, которая у меня была (вроде 4.0.16) проблем не было. Мой код при переходе на новую версию не менялся.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2481/</id>
    <title type="text">EquityManager.NewEquityData не срабатывает в реальной торговле</title>
    <published>2012-03-14T07:02:44Z</published>
    <updated>2012-03-14T07:02:44Z</updated>
    <author>
      <name>Supervisor</name>
      <uri>https://stocksharp.ru/users/27975/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;S# 4.0.21
EquityManager хорошо работает на тестировании, но вот захотел чтобы он на реале рисовал прямо во время торговли график доходности - а оказалось что событие не вызывается в этом случае.
Проверял на ситуации когда стратегия запущена, но ничего не делает (по идее должна рисоваться прямая линия без изменений).
В чем может быть причина?
EquityManager.Interval = Timeframe попробовал, безрезультатно&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2480/</id>
    <title type="text">Что же это такое - свечки формируются строго с 10:00 до 18:45!</title>
    <published>2012-03-13T19:27:25Z</published>
    <updated>2012-03-13T19:27:25Z</updated>
    <author>
      <name>Spiritschaser</name>
      <uri>https://stocksharp.ru/users/1927/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">&lt;p&gt;Вот, кручу и ковыряю CandleManager и так и сяк. В таблице сделок в квике данные с 4 утра до 23 вечера, а S# мне даёт свечки вот только в рабочее время...&lt;/p&gt;
&lt;p&gt;Где искать?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2477/</id>
    <title type="text">4.0.21 не закачиваются сделки/стаканы</title>
    <published>2012-03-12T10:38:13Z</published>
    <updated>2012-03-12T10:38:13Z</updated>
    <author>
      <name>dharma</name>
      <uri>https://stocksharp.ru/users/6446/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">&lt;p&gt;Включил источник  финам, добавил инструменты VTBR@EQNL и VTBR1@finam.
После того как нажимаю &amp;quot;старт&amp;quot; счетчик времени растет, а количество сделок и стаканов остается 0.
OC windows7&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2476/</id>
    <title type="text">MonitorWindow</title>
    <published>2012-03-12T03:46:15Z</published>
    <updated>2012-03-12T03:46:15Z</updated>
    <author>
      <name>exarh</name>
      <uri>https://stocksharp.ru/users/28305/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <content type="html">&lt;p&gt;Здравствуйте. Нельзя ли в MonitorWindow применять какой-нибудь другой компонент списка сообщений, ато используемый немного тормозно? Вывод десятка сообщений где-то секунду занимает. А так как коннекторы бывают весьма разговорчивы, то быстро в окно набиваются несколько тысяч записей и оно начинает просто тормозить. Может быть какой-нибудь Grid использовать.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2475/</id>
    <title type="text">Лишняя сделка при котировании</title>
    <published>2012-03-12T03:30:49Z</published>
    <updated>2012-03-12T03:30:49Z</updated>
    <author>
      <name>kurt</name>
      <uri>https://stocksharp.ru/users/27652/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">&lt;p&gt;Версия 4.0.21. Произошёл такой случай. На одном из котирований:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;                var strategy = new MarketQuotingStrategy(OrderDirections.Buy, 1);
                strategy.PriceType = MarketPriceTypes.Middle;
                base.ChildStrategies.Add(strategy);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;вместо покупки 1 контракта, как должно было быть, купились 2 контракта. Причём второй контракт появился только в квике (две сделки в таблице &amp;quot;Мои сделки&amp;quot; и &amp;quot;Текущая чистая позиция&amp;quot;=2), а стратегия его не увидела: PositionManager.Position = 1. Ниже приведен лог-файл, жёлтым выделил то место, где как раз и появляется лишний контракт (Стратегия котирования зафиксировала сделку-покупку и зачем-то тут же отправила ещё заявку на покупку, и только после этого закончила свою работу. Почему так?).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;18:14:33.824 18:14:33.824 9982пп ЗАПУСКАЮ КОТИРОВАНИЕ Buy Open  Pos= 0, CntOnProc= 3844, 2787, 0
18:14:33.826 Стратегия запущена. CntOnProc= 3844, 2787, 0
18:14:33.826 Котирование на Buy объема 1. CntOnProc= 3845, 2788, 0
18:14:33.826 Цена текущей NULL и лучшей 9984. CntOnProc= 3845, 2788, 0
18:14:33.826 Лучший бид 9983 и лучший аск 9985. CntOnProc= 3845, 2788, 0
18:14:33.826 Регистрация новой заявки на Buy с ценой 9984 и объемом 1. CntOnProc= 3845, 2788, 0
18:14:33.826 Заявка 54528375 на Buy отправлена с ценой 9984 объемом 1. CntOnProc= 3845, 2788, 0
18:14:33.826 Заявка 54528375 в процессе регистрации. CntOnProc= 3845, 2788, 0
18:14:33.836 Заявка 54528375 в процессе регистрации. CntOnProc= 3845, 2788, 0
18:14:33.836 Заявка 54528375 в процессе регистрации. CntOnProc= 3845, 2788, 0
18:14:33.901 Заявка 54528375 принята биржей. CntOnProc= 3845, 2788, 0
18:14:33.901 Цена текущей 9984 и лучшей 9982. CntOnProc= 3845, 2788, 0
18:14:33.901 Лучший бид 9982 и лучший аск 9983. CntOnProc= 3845, 2788, 0
18:14:33.901 Котирование заявки 54528375 на Buy с ценой 9984 объемом 1. CntOnProc= 3845, 2788, 0
18:14:33.901 Перекотирование зарегистрировано для заявки 54528376 на Buy с ценой 9982 объемом 1. CntOnProc= 3845, 2788, 0
18:14:33.945 Заявка 54528376 в процессе перерегистрации. CntOnProc= 3846, 2789, 0
18:14:33.947 Заявка 54528376 в процессе перерегистрации. CntOnProc= 3846, 2789, 0
18:14:33.947 Заявка 54528376 в процессе перерегистрации. CntOnProc= 3846, 2789, 0
18:14:34.153 Заявка 54528376 не была принята по причине System.InvalidOperationException: Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=54528376; CLASSCODE=SPBFUT; SECCODE=SRH2; MODE=0; FIRST_ORDER_NUMBER=7013399505; FIRST_ORDER_NEW_PRICE=9982; FIRST_ORDER_NEW_QUANTITY=1;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] &amp;quot;Не найдена заявка для перестановки.&amp;quot;.' по передвинутым заявкам.. CntOnProc= 3846, 2789, 0
18:14:34.154 Заявка 54528376 не принята биржей по причине 'Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=54528376; CLASSCODE=SPBFUT; SECCODE=SRH2; MODE=0; FIRST_ORDER_NUMBER=7013399505; FIRST_ORDER_NEW_PRICE=9982; FIRST_ORDER_NEW_QUANTITY=1;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] &amp;quot;Не найдена заявка для перестановки.&amp;quot;.' по передвинутым заявкам.'. CntOnProc= 3846, 2789, 0
18:14:34.157 Новая Buy сделка 517627504 по цене 9984 на 1 заявки 54528375. CntOnProc= 3846, 2789, 0
18:14:34.157 Новая Buy сделка 517627504 по цене 9984 на 1 заявки 54528375. CntOnProc= 3847, 2790, 0
18:14:34.157 Новая позиция 1. CntOnProc= 3847, 2790, 0
18:14:34.157 18:14:34.157 9983пп OnPositionChanged              Pos= 1, CntOnProc= 3847, 2790, 0
&amp;lt;mark&amp;gt;18:14:34.158 Цена текущей NULL и лучшей 9983. CntOnProc= 3847, 2790, 0
18:14:34.158 Лучший бид 9982 и лучший аск 9984. CntOnProc= 3847, 2790, 0
18:14:34.158 Регистрация новой заявки на Buy с ценой 9983 и объемом 1. CntOnProc= 3847, 2790, 0
18:14:34.158 Заявка 54528377 на Buy отправлена с ценой 9983 объемом 1. CntOnProc= 3847, 2790, 0&amp;lt;/mark&amp;gt;
18:14:34.159 Новая позиция 1. CntOnProc= 3847, 2790, 0
18:14:34.159 Позиция изменилась на 1. Оставшийся объем 0. CntOnProc= 3847, 2790, 0
18:14:34.159 Заканчиваем котирование. CntOnProc= 3847, 2790, 0
18:14:34.159 Стратегия останавливается. CntOnProc= 3847, 2790, 0
18:14:34.160 Стратегия остановлена. CntOnProc= 3847, 2790, 0&lt;/p&gt;
&lt;/blockquote&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2474/</id>
    <title type="text">System.InvalidOperationException в SampleConsole</title>
    <published>2012-03-11T17:45:22Z</published>
    <updated>2012-03-11T17:45:22Z</updated>
    <author>
      <name>Android</name>
      <uri>https://stocksharp.ru/users/6255/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">&lt;p&gt;Доброго времени суток!&lt;/p&gt;
&lt;p&gt;В примере SampleConsole, версия 4.0.20, при запуске под отладчиком, всегда вылетает исключение:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Первый этап обработки исключения типа &amp;quot;System.InvalidOperationException&amp;quot; в приложении StockSharp.Quik.dll&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Происходит это при прохождении отладчиком строк(что странно- может вылететь как при прохождении первой из них, так и при прохождении последней):&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;					```csharp
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;trader.StartExport(new[] {trader.SecuritiesTable, trader.MyTradesTable, trader.EquityPositionsTable,
trader.EquityPortfoliosTable, trader.OrdersTable});
//
// дожидаемся появления портфеля и инструмента
//
waitHandle.WaitOne();&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;					// 0.1% от изменения цены
					const decimal delta = 0.001m;

					// запоминаем первоначальное значение середины спреда
					var firstMid = _lkoh.BestPair.SpreadPrice / 2; 
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;
В общем, посоветуйте, пожалуйста, как с этим бороться, так как я робота делаю на основе данного примера. :)

&lt;/code&gt;&lt;/pre&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2473/</id>
    <title type="text">DeltaHedgeStrategy осуществление хеджирование по нескольким пакетным стратегиям :D</title>
    <published>2012-03-11T17:13:43Z</published>
    <updated>2012-03-11T17:13:43Z</updated>
    <author>
      <name>hurricane</name>
      <uri>https://stocksharp.ru/users/5988/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">&lt;p&gt;Александр! Михаил! :D&lt;/p&gt;
&lt;p&gt;Решил попробовать встроенный механизм дельта-хеджирования реализованный в платформе Stock#&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
public DeltaHedgeStrategy(
	Strategy tradingStrategy
)

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Стратегия, содержащая в себе дочерние стратегии, которые торгуют по отдельному страйку&lt;/p&gt;
&lt;p&gt;А к примеру мне нужно осуществлять дельта-хеджирование не по одной пакетной стратегии, а по нескольким!&lt;/p&gt;
&lt;p&gt;Есть к примеру 3  пакетных стратегии в которые упакованы алгоритмы котирования, и я их запускаю в различное время!
И мне нужно осуществлять механизм дельта-хеджирования по ним всем! Т.е. передать в DeltaHedgeStrategy не одну пакетную стратегию
а 3 пакетные стратегии (N - пакетных стратегий)
Есть ли такая возможность? Было бы здорово :D&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2472/</id>
    <title type="text">OrderFails &amp;amp; Orders в Strategy</title>
    <published>2012-03-11T08:42:44Z</published>
    <updated>2012-03-11T08:42:44Z</updated>
    <author>
      <name>Serg</name>
      <uri>https://stocksharp.ru/users/484/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Приветствую. Подскажите плиз что должно происходить во время ошибки регистрации заявки.
Возникает непонятная для меня ситуация. При регистрации заявки в логе вижу сообщение типа &amp;quot;Заявка 41664289 не была принята по причине StockSharp.Quik.ApiException: Код ошибки Failed Сообщение Обработка кросс-заявок блокирована..&amp;quot;. QuikTrader говорит &amp;quot;RegisterOrder: TransactionId=41664289, Id=0, Price=155115, Balance=1, Security=RIH2@RTS, State=None&amp;quot;
И все заявки как-будто и небыло) В Strategy.Orders она не попадает и в Strategy.OrderFails также пустота.&lt;/p&gt;
&lt;p&gt;Есть еще один очень странный нюанс. Кросс сделки как таковой быть не может, так как в момент регистрации заявки, встречных по направлению к регистрируемой просто нет. Но эт видимо косяк демосервера квик.&lt;/p&gt;
&lt;p&gt;update: да и еще заметил что после остановки стратегии ее Trader становиться null. Так и должно быть?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2471/</id>
    <title type="text">OnWriteMessage и WriteMessage</title>
    <published>2012-03-11T04:24:01Z</published>
    <updated>2012-03-11T04:24:01Z</updated>
    <author>
      <name>BigBen</name>
      <uri>https://stocksharp.ru/users/6302/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Привет!
В классе LogListener существуют два метода OnWriteMessage и WriteMessage.
Объясните, плиз, зачем они дублируют друг друга, и в каких случаях их нужно использовать?
Спасибо.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2470/</id>
    <title type="text">Общее предложение по бумаге в примере Sample</title>
    <published>2012-03-10T13:51:05Z</published>
    <updated>2012-03-10T13:51:05Z</updated>
    <author>
      <name>almer</name>
      <uri>https://stocksharp.ru/users/6336/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">&lt;p&gt;Здравствуйте, помогите разобраться новичку.
В пример Sample в Инструменты рашил добавить поле общее предложение.&lt;/p&gt;
&lt;p&gt;В MainWindow добавил такую строчку:&lt;/p&gt;
&lt;p&gt;Trader.SecuritiesTable.Columns.Add(DdeSecurityColumns.AsksVolume);&lt;/p&gt;
&lt;p&gt;А в SecuritiesWindow.xaml
добавил: &amp;lt;EcngTradingXaml:ExtensionInfoConverter x:Key=&amp;quot;extInfoConverter&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p Binding="" Path=".," Converter="{StaticResource" extInfoConverter=""&gt;а также:
&amp;lt;GridViewColumn Width=&amp;quot;150&amp;quot; Header=&amp;quot;Сумм.предложение&amp;quot; DisplayMemberBinding=&amp;quot;, ConverterParameter=AsksVolume}&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;Запускаю программу, выводит в поле Суммарное предложение значение при запуске, и больше не обновляется.
Что нужно сделать, чтобы это суммарное предложение все время обновлялось(т.е. постоянно показывало такое же текущее значение суммарного предложения как в  Quik)?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2469/</id>
    <title type="text">Тестирование на истории 4.0.21 вход по рынку всегда по худшей цене.</title>
    <published>2012-03-10T07:16:48Z</published>
    <updated>2012-03-10T07:16:48Z</updated>
    <author>
      <name>Moadip</name>
      <uri>https://stocksharp.ru/users/5973/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;Перешел на 4.0.21, запускаю тест на истории и наблюдаю &lt;strong&gt;радикально&lt;/strong&gt;отличающийся график эквити.
Перебрал несколько прошлых сборок: 4.0.17, 4.0.18, 4.0.19, 4.0.20 график примерно одинаковый.&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;&lt;img src="http://i29.fastpic.ru/big/2012/0310/6b/e1f01a24ae8e34d89ee73d67c53aa56b.png" alt="" /&gt;&lt;img src="http://i32.fastpic.ru/big/2012/0310/b0/1bc10e9199a35c0aba00ad16a1903fb0.png" alt="" /&gt;
&lt;img src="http://i31.fastpic.ru/big/2012/0310/ca/8fcddd2ebec09c5a58282e93587c74ca.png" alt="" /&gt;&lt;img src="http://i31.fastpic.ru/big/2012/0310/a9/f00b7adef8bb4e09aa295b8b1bfda9a9.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;и текущая&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;&lt;img src="http://i30.fastpic.ru/big/2012/0310/59/87252efe7966c2099cd28f9b5a42fb59.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;
Ну все думаю, накрылся мой грааль.&lt;/p&gt;
&lt;p&gt;Запускаю тестовые примеры 4.0.20 и 4.0.21 графики примерно одинаковые(для ускорения тестирования период взят 1месяц)&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;&lt;img src="http://i28.fastpic.ru/big/2012/0310/1f/6ff8e370f5141d2cdc2dff84cd364c1f.png" alt="" /&gt;
&lt;img src="http://i32.fastpic.ru/big/2012/0310/0b/dc45544179d50ec2cbd6a735ba248e0b.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Ковыряние в своем коде результатов не дало.
Причина нашлась после изучения отчетов.
При сравнении аналогичных входов на 4.0.20 и 4.0.21 вход &lt;strong&gt;всегда&lt;/strong&gt;был примерно на 100п. хуже.
Почему 100п, у меня стояло проскальзывание в 100п.&lt;/p&gt;
&lt;p&gt;Меняю в тестовых примерах вход с помощью котирования&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;	
	// если произошло пересечение
	if (_isShortLessThenLong != isShortLessThenLong)
	{
		// если короткая меньше чем длинная, то продажа, иначе, покупка.
		var direction = isShortLessThenLong ? OrderDirections.Sell : OrderDirections.Buy;

 		// создаем заявку
                var order = this.CreateOrder(direction, Security.GetMarketPrice(direction), Volume);

		// регистрируем заявку (обычным способом - лимитированной заявкой)
		// RegisterOrder(order);

		// регистрируем заявку (через котирование)
		var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
		ChildStrategies.Add(strategy);

		// запоминаем текущее положение относительно друг друга
		_isShortLessThenLong = isShortLessThenLong;
	}

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;на вход по рынку с проскальзыванием&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
	// если произошло пересечение
	if (_isShortLessThenLong != isShortLessThenLong)
	{
		// если короткая меньше чем длинная, то продажа, иначе, покупка.
		var direction = isShortLessThenLong ? OrderDirections.Sell : OrderDirections.Buy;

                
                var slip = Security.MinStepSize * 20;//проскальзование 100п.
                var price = isShortLessThenLong
	                    ? Security.GetMarketPrice(direction) - slip
		            : Security.GetMarketPrice(direction) + slip;
                

		// создаем заявку
                var order = this.CreateOrder(direction, price, Volume);

		// регистрируем заявку (обычным способом - лимитированной заявкой)
		RegisterOrder(order);

		// регистрируем заявку (через котирование)
		//var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
		//ChildStrategies.Add(strategy);

		// запоминаем текущее положение относительно друг друга
		_isShortLessThenLong = isShortLessThenLong;
	}

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Картинка примерно не изменилась.&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;&lt;img src="http://i32.fastpic.ru/big/2012/0310/8e/50eb20dc9c18c8db66e90d6304ce758e.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Ок, ставлю проскальзывание в &lt;strong&gt;10 000&lt;/strong&gt;п.&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;&lt;img src="http://i30.fastpic.ru/big/2012/0310/b9/4d827eabe8da91fe487ebcbcdcfa5cb9.png" alt="" /&gt;
&lt;img src="http://i30.fastpic.ru/big/2012/0310/0d/ff28697a51bc938ee6a9c6f49d5dd40d.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Т.е. вход по рынку происходит не по лучшей возможной цене, а по худшей и с максимальным проскальзыванием.&lt;/strong&gt;&lt;/p&gt;
</content>
  </entry>
</feed>