﻿<?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">Снова ActionStrategy в 2.5.2</title>
  <id>~/topic/1227/snova-actionstrategy-v-2_5_2/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-27T06:48:08Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1227" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/4689/</id>
    <title type="text"> Можете сами проверить весь код выше. Я и смотрю, сначала идет регистрация, а затем изменение интерв...</title>
    <published>2010-11-19T07:44:03Z</published>
    <updated>2010-11-19T07:44:03Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&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;&lt;br /&gt;Спасибо и с уважением! </content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4687/</id>
    <title type="text"> Можете сами проверить весь код выше. Я и смотрю, сначала идет регистрация, а затем изменение интерв...</title>
    <published>2010-11-19T07:32:44Z</published>
    <updated>2010-11-19T07:32:44Z</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;ustas&lt;/span&gt;&lt;div class="innerquote"&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.ru/posts/m/4684/</id>
    <title type="text">Вообщем я совсем запутался. Основное условие - интервал не меняется динамически. Только перед регист...</title>
    <published>2010-11-18T21:44:32Z</published>
    <updated>2010-11-18T21:44:32Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;Вообщем я совсем запутался.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&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;br /&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;span class="highlight"&gt;_strat.Interval = TimeSpan.FromSeconds(0.10);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;        private static void TryCreateStrategy()&lt;br /&gt;        {&lt;br /&gt;                _strat = new TestStrategy() { Volume=1};&lt;br /&gt;                _strat.Log += OnLog;&lt;br /&gt;                _strat.PropertyChanged += OnStrategyPropertyChanged;&lt;br /&gt;                _manager.Register(_strat, _port, _sec);&lt;br /&gt;                _strat.Interval = TimeSpan.FromSeconds(0.10);&lt;br /&gt;                _strat.I = 0;&lt;br /&gt;                _strat.Start();&lt;br /&gt;                var logger = new FileStrategyLogger(&amp;quot;mylog.txt&amp;quot;);&lt;br /&gt;               logger.Strategies.Add(_strat);&lt;br /&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Я хочу чтобы интервал был 0.1 секунды. Но он после некоторой работы снова сбивается на 1 сек. Можете сами проверить весь код выше.&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/4683/</id>
    <title type="text">Вообщем я совсем запутался. Основное условие - интервал не меняется динамически. Только перед регист...</title>
    <published>2010-11-18T20:50:56Z</published>
    <updated>2010-11-18T20:50:56Z</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;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;Вообщем я совсем запутался.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&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;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.ru/posts/m/4679/</id>
    <title type="text">Вообщем я совсем запутался. Основное условие - интервал не меняется динамически. Только перед регист...</title>
    <published>2010-11-18T18:40:56Z</published>
    <updated>2010-11-18T18:40:56Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;Вообщем я совсем запутался.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&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;br /&gt;Спасибо и с уважением! </content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4669/</id>
    <title type="text">Вообщем я совсем запутался. Основное условие - интервал не меняется динамически. Только перед регист...</title>
    <published>2010-11-18T14:52:59Z</published>
    <updated>2010-11-18T14:52:59Z</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;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;Вообщем я совсем запутался.&lt;br /&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.ru/posts/m/4656/</id>
    <title type="text">Вообщем я совсем запутался. Сейчас в вечерку снова вывод работает только раз в секунду. Хотя пару ча...</title>
    <published>2010-11-17T19:33:00Z</published>
    <updated>2010-11-17T19:34:19Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Вообщем я совсем запутался.&lt;br /&gt;&lt;br /&gt;Сейчас в вечерку снова вывод работает только раз в секунду. Хотя пару часов назад точно работал по заданному интервалу с таким Вот OnProcess&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; base.OnProcess();&lt;br /&gt; Console.WriteLine(&amp;quot;++++++++++++++++++++++++++++++++++++++++++++++++++++++++&amp;quot; + DateTime.Now.TimeOfDay);&lt;br /&gt; return StrategyProcessResults.Continue;&lt;br /&gt;} &lt;br /&gt;&lt;/div&gt;&lt;/div&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.ru/posts/m/4649/</id>
    <title type="text"> А как это проверялось? выводом из стратегии When( () =&amp;gt; true ). Do(() =&amp;gt; { Console.WriteLine(&amp;quot;Работ...</title>
    <published>2010-11-17T17:01:40Z</published>
    <updated>2010-11-17T17:01:40Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&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;When( () =&amp;gt; true ).&lt;br /&gt; Do(() =&amp;gt; {&lt;br /&gt; Console.WriteLine(&amp;quot;Работает &amp;quot;+DateTime.Now.TimeOfDay);&lt;br /&gt;         		}).&lt;br /&gt;            MakePeriodical(); &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;да, а если вставить в OnProcess&lt;br /&gt;            Console.WriteLine(DateTime.Now.TimeOfDay);&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.ru/posts/m/4648/</id>
    <title type="text"> А как это проверялось? выводом из стратегии When( () =&amp;gt; true ). Do(() =&amp;gt; { Console.WriteLine(&amp;quot;Работ...</title>
    <published>2010-11-17T16:47:06Z</published>
    <updated>2010-11-17T16:47:53Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov&lt;/span&gt;&lt;div class="innerquote"&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;When( () =&amp;gt; true ).&lt;br /&gt; Do(() =&amp;gt; {&lt;br /&gt; Console.WriteLine(&amp;quot;Работает &amp;quot;+DateTime.Now.TimeOfDay);&lt;br /&gt;         		}).&lt;br /&gt;            MakePeriodical(); &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.ru/posts/m/4646/</id>
    <title type="text">Почему интервал стратегии не поменялся? Спасибо и с уважением! А как это проверялось? </title>
    <published>2010-11-17T16:40:21Z</published>
    <updated>2010-11-17T16:40:21Z</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;ustas&lt;/span&gt;&lt;div class="innerquote"&gt;Почему  интервал стратегии не поменялся?&lt;br /&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.ru/posts/m/4644/</id>
    <title type="text">Спасибо, коллеги. Да, я тупанул, согласен. Но вопрос на первый вопрос остаётся открытым. - Почему ин...</title>
    <published>2010-11-17T16:24:27Z</published>
    <updated>2010-11-17T16:24:57Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</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.ru/posts/m/4640/</id>
    <title type="text">А если сделать вот так то все работает protected override StrategyProcessResults OnProcess() { base....</title>
    <published>2010-11-17T11:53:14Z</published>
    <updated>2010-11-17T11:53:14Z</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;Serg&lt;/span&gt;&lt;div class="innerquote"&gt;А если сделать вот так то все работает&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;protected override StrategyProcessResults OnProcess()&lt;br /&gt;{&lt;br /&gt;    base.OnProcess();&lt;br /&gt;    return StrategyProcessResults.Continue;&lt;br /&gt;} &lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;В первом случае Вы полностью переопределяете логику ActionStrategy (собственно никто не отслеживает условия и не вызывает действия).</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4637/</id>
    <title type="text">А если сделать вот так то все работает protected override StrategyProcessResults OnProcess() { base....</title>
    <published>2010-11-17T11:37:37Z</published>
    <updated>2010-11-17T11:37:37Z</updated>
    <author>
      <name>Serg</name>
      <uri>https://stocksharp.ru/users/484/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">А если сделать вот так то все работает&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;protected override StrategyProcessResults OnProcess()&lt;br /&gt;{&lt;br /&gt;    base.OnProcess();&lt;br /&gt;    return StrategyProcessResults.Continue;&lt;br /&gt;} &lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4626/</id>
    <title type="text">Добрый день уважаемым Михаилу и коллегам. Остаются вопросы по работе ActionStrategy в 2.5.2 Вот прос...</title>
    <published>2010-11-16T13:50:48Z</published>
    <updated>2010-11-16T13:50:48Z</updated>
    <author>
      <name>ustas</name>
      <uri>https://stocksharp.ru/users/27611/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день уважаемым Михаилу и коллегам.&lt;br /&gt;&lt;br /&gt;Остаются вопросы по работе ActionStrategy в 2.5.2&lt;br /&gt;&lt;br /&gt;Вот простой пример (ниже), который работает как и ожидается - т.е. просто переодически выводит&lt;br /&gt;слово &amp;quot;Работает&amp;quot; плюс текущее время &lt;br /&gt;&lt;br /&gt;Но, есть два вопрса&lt;br /&gt;1. Судя по выводу When отрабатывает раз в секунду а не за Interval стратегии который я пытался установить (см. в  TryCreateStrategy    &lt;br /&gt;  _strat.Interval = TimeSpan.FromSeconds(0.10);)&lt;br /&gt;&lt;br /&gt;2. Если в стратегии переписать OnProcess,  например так&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;              return StrategyProcessResults.Continue;&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;br /&gt;Спасибо и с уважением!&lt;br /&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;namespace test&lt;br /&gt;{&lt;br /&gt;    using System;&lt;br /&gt;    using System.Linq;&lt;br /&gt;    using System.Threading;&lt;br /&gt;    using System.Collections.Generic;&lt;br /&gt;    using System.ComponentModel;&lt;br /&gt;  &lt;br /&gt;    using Ecng.Trading.Algo;&lt;br /&gt;    using Ecng.Trading.Algo.Candles;&lt;br /&gt;    using Ecng.Trading.Algo.Strategies;&lt;br /&gt;    using Ecng.Trading.Algo.Logging;&lt;br /&gt;    using Ecng.Trading.BusinessEntities;&lt;br /&gt;    using Ecng.Trading.Quik;&lt;br /&gt;    using Ecng.Interop;&lt;br /&gt;    using Ecng.Data;&lt;br /&gt;    using Ecng.Common;&lt;br /&gt;    using Ecng.ComponentModel;&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;    public class Program&lt;br /&gt;    {&lt;br /&gt;        private static TestStrategy _strat;&lt;br /&gt;        private static StrategyManager _manager;&lt;br /&gt;        private static Portfolio _port;&lt;br /&gt;        private static Security _sec;&lt;br /&gt;        private static QuikTrader _trader;&lt;br /&gt;        private static void OnLog(Strategy strategy, StrategyErrorStates errorState, string message)&lt;br /&gt;        {&lt;br /&gt;            // если стратегия вывела не просто сообщение, то вывести на экран.&lt;br /&gt;            //            if (errorState != StrategyErrorStates.None)&lt;br /&gt;            Console.WriteLine(message);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;       &lt;br /&gt;        private static void TryCreateStrategy()&lt;br /&gt;        {&lt;br /&gt;                _strat = new TestStrategy() { Volume=1};&lt;br /&gt;                _strat.Log += OnLog;&lt;br /&gt;                _strat.PropertyChanged += OnStrategyPropertyChanged;&lt;br /&gt;                _manager.Register(_strat, _port, _sec);&lt;br /&gt;                _strat.Interval = TimeSpan.FromSeconds(0.10);&lt;br /&gt;                _strat.I = 0;&lt;br /&gt;                _strat.Start();&lt;br /&gt;                var logger = new FileStrategyLogger(&amp;quot;mylog.txt&amp;quot;);&lt;br /&gt;               logger.Strategies.Add(_strat);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        static void Main()&lt;br /&gt;        {           &lt;br /&gt;                     using (var waitHandle = new ManualResetEvent(false))&lt;br /&gt;                {&lt;br /&gt;       &lt;br /&gt;                _trader = new QuikTrader();&lt;br /&gt;                _trader.Connect();&lt;br /&gt;&lt;br /&gt;                _trader.NewPortfolios += portfolios =&amp;gt;&lt;br /&gt;                {&lt;br /&gt;                    if (_port == null)&lt;br /&gt;                    {&lt;br /&gt;                        _port = portfolios.FirstOrDefault();&lt;br /&gt;&lt;br /&gt;                        if (_port != null)&lt;br /&gt;                        {&lt;br /&gt;                            Console.WriteLine(&amp;quot;Портфель {0} появился.&amp;quot;, _port.Name);                        &lt;br /&gt;                                waitHandle.Set();&lt;br /&gt;                        }&lt;br /&gt;                    }&lt;br /&gt;                };&lt;br /&gt;&lt;br /&gt;                _manager = new StrategyManager(_trader);&lt;br /&gt;&lt;br /&gt;                _trader.NewSecurities += securities =&amp;gt;&lt;br /&gt;                {&lt;br /&gt;                    if (_sec == null)&lt;br /&gt;                    {&lt;br /&gt;                        _sec = securities.FirstOrDefault(sec =&amp;gt; sec.Code == &amp;quot;SRZ0&amp;quot;);&lt;br /&gt;                        if (_sec != null)&lt;br /&gt;                        {&lt;br /&gt;                            Console.WriteLine(_sec.Code+&amp;quot; появился&amp;quot;);&lt;br /&gt;                            waitHandle.Set();&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;                    }&lt;br /&gt;                 };&lt;br /&gt;&lt;br /&gt;                waitHandle.WaitOne();&lt;br /&gt;&lt;br /&gt;                _trader.IsAsyncMode = true;&lt;br /&gt;                _trader.Terminal.StartDde(new&amp;#91;&amp;#93; { _trader.SecuritiesTable }); &lt;br /&gt;                &lt;br /&gt;&lt;br /&gt;                _trader.Connected += () =&amp;gt;&lt;br /&gt;                {&lt;br /&gt;&lt;br /&gt;                    Console.WriteLine(&amp;quot;Connected&amp;quot;);&lt;br /&gt;                    waitHandle.Set();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                };&lt;br /&gt;&lt;br /&gt;                waitHandle.WaitOne();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                TryCreateStrategy();&lt;br /&gt;                        Console.WriteLine(&amp;quot;Чтобы закончить, нажмите любую кнопку...&amp;quot;);&lt;br /&gt;                        Console.Read();&lt;br /&gt;&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        static private void OnStrategyPropertyChanged(object sender, PropertyChangedEventArgs e)&lt;br /&gt;        {&lt;br /&gt;            Console.WriteLine(&amp;quot;process state: &amp;quot; + _strat.ProcessState);&lt;br /&gt;            Console.WriteLine(&amp;quot;PnL: &amp;quot; + _strat.PnLManager.PnL);&lt;br /&gt;            Console.WriteLine(&amp;quot;slippage: &amp;quot; + _strat.SlippageManager.Slippage);&lt;br /&gt;            Console.WriteLine(&amp;quot;Position: &amp;quot; + _strat.PositionManager.Position);&lt;br /&gt;            Console.WriteLine(&amp;quot;Latency: &amp;quot; + _strat.LatencyManager.Latency);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private static void OnError(Exception error)&lt;br /&gt;        {&lt;br /&gt;            Console.BackgroundColor = ConsoleColor.White;&lt;br /&gt;            Console.ForegroundColor = ConsoleColor.Red;&lt;br /&gt;            Console.WriteLine(error);&lt;br /&gt;            //           Console.Read();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;       class TestStrategy : ActionStrategy&lt;br /&gt;    {&lt;br /&gt;        &lt;br /&gt;        private int i=0;&lt;br /&gt;     &lt;br /&gt;        public int I&lt;br /&gt;        {&lt;br /&gt;            get { return i; }&lt;br /&gt;            set&lt;br /&gt;            {&lt;br /&gt;                i = value;&lt;br /&gt;                When(     () =&amp;gt; true ).&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;Do(() =&amp;gt; {&lt;br /&gt;                Console.WriteLine(&amp;quot;Работает &amp;quot;+DateTime.Now.TimeOfDay);&lt;br /&gt;                    &lt;br /&gt;                 &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}).&lt;br /&gt;            MakePeriodical(); &lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        &lt;br /&gt;        //не работает если раскомментировать OnProcess&lt;br /&gt;/*&lt;br /&gt;  protected override StrategyProcessResults OnProcess()&lt;br /&gt;        {&lt;br /&gt;  &lt;br /&gt;            return StrategyProcessResults.Continue;&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;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>