﻿<?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">Дублирование ордеров в ядре S#</title>
  <id>~/topic/3412/dublirovanie-orderov-v-yadre-s/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-22T20:35:15Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=3412" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/24156/</id>
    <title type="text">VassilSanych: ra81: Тогда наши действия вполне линейны и определенны. Ага. Только бессмысленны. Пото...</title>
    <published>2013-02-21T18:23:33Z</published>
    <updated>2013-02-21T18:23:33Z</updated>
    <author>
      <name>gramp</name>
      <uri>https://stocksharp.ru/users/6335/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24154)" rel="nofollow" target="_blank"&gt;VassilSanych&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24152)" rel="nofollow" target="_blank"&gt;ra81&lt;/a&gt;:&lt;/strong&gt;
Тогда наши действия вполне линейны и определенны.
Ага. Только бессмысленны. Потому что заявки с таким статусом уже нет.
Информация снэпшота имеет смысл только для логирования.
Для торговли важно нынешнее состояние, а не то, как замечательно и логично мы обрабатываем состояние заявки, которое было пару секунд назад.&lt;/p&gt;
&lt;/blockquote&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/24154/</id>
    <title type="text">ra81: Тогда наши действия вполне линейны и определенны. Ага. Только бессмысленны. Потому что заявки ...</title>
    <published>2013-02-21T18:12:55Z</published>
    <updated>2013-02-21T18:12:55Z</updated>
    <author>
      <name>VassilSanych</name>
      <uri>https://stocksharp.ru/users/6491/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24152)" rel="nofollow" target="_blank"&gt;ra81&lt;/a&gt;:&lt;/strong&gt;
Тогда наши действия вполне линейны и определенны.
Ага. Только бессмысленны. Потому что заявки с таким статусом уже нет.
Информация снэпшота имеет смысл только для логирования.
Для торговли важно нынешнее состояние, а не то, как замечательно и логично мы обрабатываем состояние заявки, которое было пару секунд назад.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/24152/</id>
    <title type="text">VassilSanych: ra81: и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяж...</title>
    <published>2013-02-21T14:09:37Z</published>
    <updated>2013-02-21T14:09:37Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24151)" rel="nofollow" target="_blank"&gt;VassilSanych&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24150)" rel="nofollow" target="_blank"&gt;ra81&lt;/a&gt;:&lt;/strong&gt;
и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении.
Зачем работать с устаревшей заявкой? Может лучше предусмотреть её изменчивость?
Тут есть два варианта развития событий. Либо мы вводим кучу неопределенностей типо: ордер может измениться пока мы его обрабатываем, котировка может измениться между двумя нашими действиями, да еще дофига чего. Либо мы работаем с неким снимком на конкретный момент времени. Тогда наши действия вполне линейны и определенны. А уж чтобы не работать с устаревшими данными просто наращиваем мощность железа и все. Что выгоднее? Думаю вариант два выгоднее. Он линеен, легко прослеживается, легко масштабируется.&lt;/p&gt;
&lt;/blockquote&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/24151/</id>
    <title type="text">ra81: и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении. Зачем ра...</title>
    <published>2013-02-21T13:53:26Z</published>
    <updated>2013-02-21T13:53:26Z</updated>
    <author>
      <name>VassilSanych</name>
      <uri>https://stocksharp.ru/users/6491/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(24150)" rel="nofollow" target="_blank"&gt;ra81&lt;/a&gt;:&lt;/strong&gt;
и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении.
Зачем работать с устаревшей заявкой? Может лучше предусмотреть её изменчивость?&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/24150/</id>
    <title type="text">Ну вот если дублировать хотябы ордера и в событии посылать дубль а не оригинал, и дубль будет неизме...</title>
    <published>2013-02-21T11:30:47Z</published>
    <updated>2013-02-21T11:30:47Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Ну вот если дублировать хотябы ордера и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении. после обработки события подписчиками дубль будет умирать. Это позволит избегать проблемы изменения ордера между событием и обработкой события, если ордер падает в очередь. Если не юзать дубли, добавится еще одна неявная фигня о которой никто не пишет но которую надо иметь ввиду. В общем еще одна сложность.&lt;/p&gt;
&lt;p&gt;Сделки например дублировать нет смысла они неизменны. Ну и так далее.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/24145/</id>
    <title type="text">Идеального решения нет. Очередь событий в одном потоке позволяет быть уверенным, что обработка не бу...</title>
    <published>2013-02-21T08:49:02Z</published>
    <updated>2013-02-21T08:49:02Z</updated>
    <author>
      <name>VassilSanych</name>
      <uri>https://stocksharp.ru/users/6491/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Идеального решения нет.
Очередь событий в одном потоке позволяет быть уверенным, что обработка не будет лочиться по пути к стратегии, и что при тестировании всё будет происходить в правильной последовательности и с хорошей производительностью. Многопоточность в этом случае (как сейчас) даёт излишний оверхед на контроль потоков и дополнительные проблемы синхронизации.
Асинхронность реальных событий никто не отменяет: как было запаздывание реагирования, так и будет.
Затыки с производительностью и проблемы распараллеливания собственной стратегии предлагаю решать разработчику стратегии.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/24143/</id>
    <title type="text">Добрый день. Обращаюсь прежде всего к разработчикам, ну и к опытным специалистам по части алго. Есть...</title>
    <published>2013-02-21T08:11:07Z</published>
    <updated>2013-02-21T08:11:07Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день.&lt;/p&gt;
&lt;p&gt;Обращаюсь прежде всего к разработчикам, ну и к опытным специалистам по части алго. Есть такая проблема сейчас: когда пришел ордер событие вызывает обработчики, ну и все что на них висит поочереди отрабатывает. Если где происходит затык, мы получаем висяк всей системы.
Михаил уже было обмолвился что в стратегию будет заходить очередь всех событий в один поток. Это хорошее решение. Но там мне никто не ответил, поэтому задаю более развернутый вопрос здесь. Как будет это реализовано? Сделать очередь я и щас могу без проблем, но известно что между событием по ордеру и началом обработки может произойти изменение статуса ордера. Отсюда когда мы начнем ордер обрабатывать, получим уже другой статус и обработаем его. Но в очереди событий будет лежать еще одно событие с таким же статусом ордера. Это как-то плохо и нехорошо. Как планируется решить вопрос? Нет ли смысла начать дублировать объекты которые могут меняться при передаче в стратегии итд?? Если делать очереди то как-то тут надо обходить эту проблему.
Дублировать ордера (и другие объекты которые могут меняться) я могу и сам, но тогда скорее всего придется доработать Clone методы.&lt;/p&gt;
&lt;p&gt;В общем как видится решение текущей проблемы с локами через очереди? Какую архитектуру нужно сделать? Как избежать подвешивания всего и вся если один из потребителей загнется?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>