﻿<?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">Когда работает When</title>
  <id>~/topic/1287/kogda-rabotaet-when/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-14T20:32:41Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1287" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/5113/</id>
    <title type="text">Спасибо. Сам отвечу на свой же вопрос. Этот код заработал надо было добавить. trader.Connect(); при ...</title>
    <published>2010-12-21T08:39:23Z</published>
    <updated>2010-12-21T08:39:23Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Спасибо.&lt;/p&gt;
&lt;p&gt;Сам отвечу на свой же вопрос. Этот код заработал надо было добавить.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;trader.Connect();
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;при этом Quik должен быть присоединён.&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/5111/</id>
    <title type="text">ActionToken - это структура, которая содержит условие и действие. ActionStrategy проверяет коллекцию...</title>
    <published>2010-12-21T08:22:22Z</published>
    <updated>2010-12-21T08:22:22Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;ActionToken - это структура, которая содержит условие и действие. ActionStrategy проверяет коллекцию таких токенов путем вызова условия. Если оно сработало (возвратило true), то вызывается действие. В Вашем случае ActionStrategy отсутствует. Да и смысл писать такое, если можно проще и понятнее.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/5108/</id>
    <title type="text">Приветствую уважаемых Михаила и коллег! Очень нравится реализация ActionToken и метода When (Do, Mak...</title>
    <published>2010-12-21T00:50:01Z</published>
    <updated>2010-12-21T00:50:01Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Приветствую уважаемых  Михаила и коллег!&lt;/p&gt;
&lt;p&gt;Очень  нравится реализация ActionToken и метода When (Do, MakePeriodical и тд). Расскажите поподробней, пжл.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;можно ли их использовать вне стратегий?&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Что нужно для работы When? Реально подключение к Квику? Заполнение каких структур? нужен ли manager стратегий?&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;И почему, например не работает такой код?&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code&gt;
namespace TestWhen
{
    using System;
    using System.Linq;
    using System.Threading;
    using System.Collections.Generic;
    using System.ComponentModel;

    using Ecng.Trading.Algo;
    using Ecng.Trading.Algo.Candles;
    using Ecng.Trading.Algo.Strategies;
    using Ecng.Trading.Algo.Logging;
    using Ecng.Trading.BusinessEntities;
    using Ecng.Trading.Quik;
    using Ecng.Interop;
    using Ecng.Data;
    using Ecng.Common;
    using Ecng.ComponentModel;


    class Program
    {
        private static StrategyManager _manager;

        static void Main(string[] args)
        {
            var trader = new QuikTrader();
            _manager = new StrategyManager(trader);
            var MAS = new ActionStrategy();
            _manager.Register(MAS, new Portfolio(), new Security());
            MAS.When(() =&amp;gt; true).Do(() =&amp;gt; Console.WriteLine(&amp;quot;MASqq&amp;quot;));
            MAS.Start();
            var st = Console.ReadLine();
        }
    }
}


&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Под &amp;quot;не работает&amp;quot;, имеется в виду, почему код этот не выводит &amp;quot;MASqq&amp;quot;&lt;/p&gt;
&lt;p&gt;Спасибо и с уважением!&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>