﻿<?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">[normal] параллельная дочерняя стратегия не параллельна</title>
  <id>~/topic/1357/normal-parallelnaya-dochernyaya-strategiya-ne-parallelna/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-13T16:23:10Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1357" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/6977/</id>
    <title type="text"> Проблема в том, что я не могу дождаться остановки. Она происходит только после того, как OnProcess(...</title>
    <published>2011-03-23T14:26:05Z</published>
    <updated>2011-03-23T14:26: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;Greene-nsk &lt;a href="https://stocksharp.ru/posts/m/5875/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;Проблема в том, что я не могу дождаться остановки. Она происходит только после того, как OnProcess() главной стратегии отработает до конца. Это ошибка или по дизайну так задумано? Как можно эту ситуацию обойти?&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.ru/posts/m/5875/</id>
    <title type="text">Очень понравилась идея с дочерними стратегиями и достаточно элегантная реализация. Спасибо, Михаил. ...</title>
    <published>2011-02-11T14:47:41Z</published>
    <updated>2011-02-11T14:54:39Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Очень понравилась идея с дочерними стратегиями  и достаточно элегантная реализация. Спасибо, Михаил.&lt;br /&gt;&lt;br /&gt;Наткнулся на небольшую проблему. Есть стратегия, производная от TimeFrameStrategy. В ней создаются две зависимые дочерние стратегии, которые помечаются как параллельные:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;br /&gt;protected override StrategyProcessResults OnProcess()&lt;br /&gt;{&lt;br /&gt;            // для каждого алерта добавляем по пакетной стратегии&lt;br /&gt;            strategy_parent = new BatchStrategy(BatchFinishModes.First) { IsParallel = true };&lt;br /&gt;&lt;br /&gt;            foreach (Alert alert in alerts)&lt;br /&gt;            {&lt;br /&gt;                var strategy_for_alert = new RegisterAlertToSmartStrategy(alert);&lt;br /&gt;                strategy_for_alert.IsParallel = true;&lt;br /&gt;                strategy_parent.ChildStrategies.Add(strategy_for_alert);&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            base.ChildStrategies.Add(strategy_parent);&lt;br /&gt;}&lt;br /&gt;-----------------------&lt;br /&gt;&lt;br /&gt;class RegisterAlertToSmartStrategy : ActionStrategy&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&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;br /&gt;        protected override StrategyProcessResults OnProcess()&lt;br /&gt;        {&lt;br /&gt;            ...&lt;br /&gt;            strategy_parent.Stop();&lt;br /&gt;            &amp;lt;дожидаемся остановки стратегии&amp;gt;&lt;br /&gt;            &amp;lt;дальнейшие действия&amp;gt;&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Проблема в том, что я не могу дождаться остановки. Она происходит только после того, как OnProcess() главной стратегии отработает до конца. Это ошибка или по дизайну так задумано? Как можно эту ситуацию обойти?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>