﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/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-04-08T02:26:23Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=3412" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/24156/</id>
    <title type="text">Тогда наши действия вполне линейны и определенны. Ага. Только бессмысленны. Потому что заявки с таки...</title>
    <published>2013-02-21T18:23:33Z</published>
    <updated>2013-02-21T18:23:33Z</updated>
    <author>
      <name>gramp</name>
      <uri>https://stocksharp.com/users/6335/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;VassilSanych &lt;a href="https://stocksharp.com/posts/m/24154/" 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;ra81 &lt;a href="https://stocksharp.com/posts/m/24152/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Тогда наши действия вполне линейны и определенны.&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;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;в любом случае мы работаем со снэпшотом, вопрос лишь в частоте его получения - кому-то важны микросекунды, кому-то минуты )</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/24154/</id>
    <title type="text">Тогда наши действия вполне линейны и определенны. Ага. Только бессмысленны. Потому что заявки с таки...</title>
    <published>2013-02-21T18:12:55Z</published>
    <updated>2013-02-21T18:12:55Z</updated>
    <author>
      <name>VassilSanych</name>
      <uri>https://stocksharp.com/users/6491/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ra81 &lt;a href="https://stocksharp.com/posts/m/24152/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Тогда наши действия вполне линейны и определенны.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Ага. Только бессмысленны. Потому что заявки с таким статусом уже нет. &lt;br /&gt;Информация снэпшота имеет смысл только для логирования.&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.com/posts/m/24152/</id>
    <title type="text">и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении. Зачем работать...</title>
    <published>2013-02-21T14:09:37Z</published>
    <updated>2013-02-21T14:09:37Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.com/users/16581/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;VassilSanych &lt;a href="https://stocksharp.com/posts/m/24151/" 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;ra81 &lt;a href="https://stocksharp.com/posts/m/24150/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Зачем работать с устаревшей заявкой? Может лучше предусмотреть её изменчивость?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Тут есть два варианта развития событий. Либо мы вводим кучу неопределенностей типо: ордер может измениться пока мы его обрабатываем, котировка может измениться между двумя нашими действиями, да еще дофига чего. Либо мы работаем с неким снимком на конкретный момент времени. Тогда наши действия вполне линейны и определенны. А уж чтобы не работать с устаревшими данными просто наращиваем мощность железа и все. Что выгоднее? Думаю вариант два выгоднее. Он линеен, легко прослеживается, легко масштабируется. &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.com/posts/m/24151/</id>
    <title type="text">и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении. Зачем работать...</title>
    <published>2013-02-21T13:53:26Z</published>
    <updated>2013-02-21T13:53:26Z</updated>
    <author>
      <name>VassilSanych</name>
      <uri>https://stocksharp.com/users/6491/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ra81 &lt;a href="https://stocksharp.com/posts/m/24150/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении.&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.com/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.com/users/16581/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Ну вот если дублировать хотябы ордера и в событии посылать дубль а не оригинал, и дубль будет неизменен на всем протяжении. после обработки события подписчиками дубль будет умирать. Это позволит избегать проблемы изменения ордера между событием и обработкой события, если ордер падает в очередь. Если не юзать дубли, добавится еще одна неявная фигня о которой никто не пишет но которую надо иметь ввиду. В общем еще одна сложность.&lt;br /&gt;&lt;br /&gt;Сделки например дублировать нет смысла они неизменны. Ну и так далее.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/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.com/users/6491/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Идеального решения нет.&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.com/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.com/users/16581/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Добрый день.&lt;br /&gt;&lt;br /&gt;Обращаюсь прежде всего к разработчикам, ну и к опытным специалистам по части алго. Есть такая проблема сейчас: когда пришел ордер событие вызывает обработчики, ну и все что на них висит поочереди отрабатывает. Если где происходит затык, мы получаем висяк всей системы.&lt;br /&gt;Михаил уже было обмолвился что в стратегию будет заходить очередь всех событий в один поток. Это хорошее решение. Но там мне никто не ответил, поэтому задаю более развернутый вопрос здесь. Как будет это реализовано? Сделать очередь я и щас могу без проблем, но известно что между событием по ордеру и началом обработки может произойти изменение статуса ордера. Отсюда когда мы начнем ордер обрабатывать, получим уже другой статус и обработаем его. Но в очереди событий будет лежать еще одно событие с таким же статусом ордера. Это как-то плохо и нехорошо. Как планируется решить вопрос? Нет ли смысла начать дублировать объекты которые могут меняться при передаче в стратегии итд?? Если делать очереди то как-то тут надо обходить эту проблему.&lt;br /&gt;Дублировать ордера (и другие объекты которые могут меняться) я могу и сам, но тогда скорее всего придется доработать Clone методы.&lt;br /&gt;&lt;br /&gt;В общем как видится решение текущей проблемы с локами через очереди? Какую архитектуру нужно сделать? Как избежать подвешивания всего и вся если один из потребителей загнется?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>