﻿<?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">EmulationTrader.Suspend() - оно работает?</title>
  <id>~/topic/1871/emulationtrader_suspend()---ono-rabotaet/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-24T22:15:54Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1871" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/10892/</id>
    <title type="text">Mikhail Sukhov: Hamper: Может быть я не верно использовал StrategyDebug ???? Я же написал, что пока ...</title>
    <published>2011-09-07T17:19:10Z</published>
    <updated>2011-09-07T17:19:10Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.ru/users/277/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10891)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10888)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;
Может быть я не верно использовал StrategyDebug ????&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Я же написал, что пока не останавливает StrategyDebug мгновенно. И предложил решение с MessageBox&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Аааа... Семен Семенычь! (с) [biggrin]
Теперь я протупился. Т.е. в событиях просто использовать искусственный тормоз...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10891/</id>
    <title type="text">Hamper: Может быть я не верно использовал StrategyDebug ???? Я же написал, что пока не останавливает...</title>
    <published>2011-09-07T16:58:23Z</published>
    <updated>2011-09-07T16:58:23Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10888)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;
Может быть я не верно использовал StrategyDebug ????&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Я же написал, что пока не останавливает StrategyDebug мгновенно. И предложил решение с MessageBox&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10888/</id>
    <title type="text">Mikhail Sukhov: Hamper: Mikhail Sukhov: Вообще-то я имел ввиду что-то типа MessageBox из обработчика...</title>
    <published>2011-09-07T15:59:26Z</published>
    <updated>2011-09-07T15:59:26Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.ru/users/277/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10887)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10886)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10885)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Именно так.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Все меня читаете, но не понимаете.[laugh]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Хммм... Как-то наверное да. Что именно надо сделать? NewTraders дает точно такую же картинку. NewOrders выдает кучу новых ордеров. Я же выше писал, что после того как был сделан trader.Suspend() и после strategy.debug.Break() стратегия и тики все равно работают до конца виртуального дня.&lt;/p&gt;
&lt;p&gt;Может быть я не верно использовал StrategyDebug ????  Но из документации понять, как он работает можно только интуитивно.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10887/</id>
    <title type="text">Hamper: Mikhail Sukhov: Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrde...</title>
    <published>2011-09-07T14:39:05Z</published>
    <updated>2011-09-07T15:58:37Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10886)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10885)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Именно так.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Вы меня читаете, но не понимаете.[laugh]&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10886/</id>
    <title type="text">Mikhail Sukhov: Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTra...</title>
    <published>2011-09-07T10:57:12Z</published>
    <updated>2011-09-07T10:58:04Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.ru/users/277/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10885)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Именно так.&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;trader.StateChanged += () =&amp;gt; {
	this.GuiAsync(() =&amp;gt; {
	LOG.Text += &amp;quot;State: &amp;quot;;
	switch (trader.State){
		case EmulationStates.Started  : LOG.Text += &amp;quot;started \n&amp;quot;; break;
		case EmulationStates.Stopped  : LOG.Text += &amp;quot;stopped \n&amp;quot;; break;
		case EmulationStates.Stopping : LOG.Text += &amp;quot;stopping\n&amp;quot;; break;
		case EmulationStates.Suspended: LOG.Text += &amp;quot;suspend \n&amp;quot;; break;
		default:                        LOG.Text += &amp;quot;unknown \n&amp;quot;; break;
	}
	});

	if (trader.State == EmulationStates.Started){
		// запускаем стратегию когда эмулятор запустился
		strategy.Start();
	}
};

trader.SecuritiesChanged += sc =&amp;gt; {
	this.GuiAsync(() =&amp;gt; {
	LOG.Text += &amp;quot;MT:&amp;quot;+trader.MarketTime.ToLongTimeString()+&amp;quot; &amp;quot;;
	LOG.Text += &amp;quot;Price:&amp;quot;+security.LastTrade.Price+&amp;quot;\n&amp;quot;;
	});
};

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;LOG - это TextBox. Получаем в нем вот что:&lt;/p&gt;
&lt;p&gt;State: started
State: suspend
MT:10:29:59 Price:82,00000
MT:10:30:01 Price:82,19000
MT:10:30:03 Price:82,15000
MT:10:30:03 Price:82,15000
MT:10:30:03 Price:82,19000
MT:10:30:07 Price:82,12000
...  И т.д. до конца виртуального дня. Если потом сделать strategy.debug.Resume(), то получаем то же самое для следующего виртуального дня.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10885/</id>
    <title type="text">Hamper: Mikhail Sukhov: По идее через http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_Strat...</title>
    <published>2011-09-07T09:38:35Z</published>
    <updated>2011-09-07T09:38:57Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10880)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10859)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
По идее через &lt;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm"&gt;http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm&lt;/a&gt; Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что &lt;strong&gt;пока только из кода стратегии&lt;/strong&gt;. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Нет, Михаил, не летит этот самолет [confused]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10880/</id>
    <title type="text">Mikhail Sukhov: По идее через http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug...</title>
    <published>2011-09-07T00:03:52Z</published>
    <updated>2011-09-07T00:03:52Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.ru/users/277/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10859)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
По идее через &lt;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm"&gt;http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm&lt;/a&gt; Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что пока только из кода стратегии. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Нет, Михаил, не летит этот самолет [confused]&lt;/p&gt;
&lt;p&gt;В класс SmaStrategy добавил переменную:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;public StrategyDebug debug;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Создаю стратегию:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;// создаем торговую стратегию, скользящие средние на 80 5-минуток и 10 5-минуток
strategy = new SmaStrategy(candleManager, new SimpleMovingAverage(80), new SimpleMovingAverage(10), timeFrame){
	Volume    = 1,
	Portfolio = portfolio,
	Security  = security,
	Trader    = trader,
	debug     = StrategyDebug.Get(trader)
};
strategy.debug.BreakOnNewTrade = true;
strategy.debug.BreakOnTime = new DateTime(2011, 8, 30, 10, 0, 10);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Стратегия стартует, при первом же событии OnProcess срабатывает debug, trader докладывает о том, что у него состояние Suspended и... И работа продолжается как ни в чем не бывало - тики тикают, стратегия запускается и обрабатывается, в логах сделки и прочее...&lt;/p&gt;
&lt;p&gt;Кстати статус trader изменяется один (!) раз. Добавлял явный debug.Break() в событие стратегии OnProcess - картинка не меняется. Происходит suspend, тики протикивают до конца виртуального дня и только после этого останавливаются.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10859/</id>
    <title type="text">Hamper: Подскажите, как все таки остановить эмуляцию и потом ее продолжить с места остановки? По иде...</title>
    <published>2011-09-06T11:47:01Z</published>
    <updated>2011-09-06T11:47:01Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(10846)" rel="nofollow" target="_blank"&gt;Hamper&lt;/a&gt;:&lt;/strong&gt;
Подскажите, как все таки остановить эмуляцию и потом ее продолжить с места остановки?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;По идее через &lt;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm"&gt;http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm&lt;/a&gt; Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что пока только из кода стратегии. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/10846/</id>
    <title type="text">Мне необходимо написать тестирование так, чтобы исторические данные выдавались либо с определенной з...</title>
    <published>2011-09-06T04:44:52Z</published>
    <updated>2011-09-06T04:44:52Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.ru/users/277/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Мне необходимо написать тестирование так, чтобы исторические данные выдавались либо с определенной задержкой между тиками, либо при срабатывании сигнала на покупку/продажу тестирование приостанавливалось и потом возобнавлялось бы при нажатии кнопки. Фактически хочется сделать некий &amp;quot;мультик&amp;quot;, чтобы показать как и где сработала стратегия и визуально оценить этот момент.&lt;/p&gt;
&lt;p&gt;Попытался вызвать метод EmulationTrader.Suspend()  Срабатывает событие EmulationTrader.StateChanged, но при этом тики продолжают тикать. Т.е. фактически остановки эмуляции не происходит. Останавливается только после достижения конца виртуального дня.&lt;/p&gt;
&lt;p&gt;Подскажите, как все таки остановить эмуляцию и потом ее продолжить с места остановки?&lt;/p&gt;
&lt;p&gt;PS: Эксперименты проводил на том примере, который дан в дистрибутиве - SampleHistoryTesting&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>