﻿<?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">EmulationTrader.Suspend() - оно работает?</title>
  <id>~/topic/1871/emulationtrader_suspend()---ono-rabotaet/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-05T23:18:41Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=1871" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/10892/</id>
    <title type="text">Может быть я не верно использовал StrategyDebug ???? Я же написал, что пока не останавливает Strateg...</title>
    <published>2011-09-07T17:19:10Z</published>
    <updated>2011-09-07T17:19:10Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.com/users/277/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10891/" 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;Hamper &lt;a href="https://stocksharp.com/posts/m/10888/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Может быть я не верно использовал StrategyDebug ????&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Я же написал, что пока не останавливает StrategyDebug мгновенно. И предложил решение с MessageBox&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Аааа... Семен Семенычь! (с) [biggrin] &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/10891/</id>
    <title type="text">Может быть я не верно использовал StrategyDebug ???? Я же написал, что пока не останавливает Strateg...</title>
    <published>2011-09-07T16:58:23Z</published>
    <updated>2011-09-07T16:58:23Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Hamper &lt;a href="https://stocksharp.com/posts/m/10888/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Может быть я не верно использовал StrategyDebug ????&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Я же написал, что пока не останавливает StrategyDebug мгновенно. И предложил решение с MessageBox</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10888/</id>
    <title type="text">Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on. И...</title>
    <published>2011-09-07T15:59:26Z</published>
    <updated>2011-09-07T15:59:26Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.com/users/277/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10887/" 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;Hamper &lt;a href="https://stocksharp.com/posts/m/10886/" 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;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10885/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&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;Все меня читаете, но не понимаете.[laugh] &lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Хммм... Как-то наверное да. Что именно надо сделать? NewTraders дает точно такую же картинку. NewOrders выдает кучу новых ордеров. Я же выше писал, что после того как был сделан trader.Suspend() и после strategy.debug.Break() стратегия и тики все равно работают до конца виртуального дня.&lt;br /&gt;&lt;br /&gt;Может быть я не верно использовал StrategyDebug ????  Но из документации понять, как он работает можно только интуитивно.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10887/</id>
    <title type="text">Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on. И...</title>
    <published>2011-09-07T14:39:05Z</published>
    <updated>2011-09-07T15:58:37Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Hamper &lt;a href="https://stocksharp.com/posts/m/10886/" 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;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10885/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&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;Вы меня читаете, но не понимаете.[laugh]</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10886/</id>
    <title type="text">Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on. И...</title>
    <published>2011-09-07T10:57:12Z</published>
    <updated>2011-09-07T10:58:04Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.com/users/277/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10885/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Именно так.&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush: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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;LOG - это TextBox. Получаем в нем вот что:&lt;br /&gt;&lt;br /&gt;State: started &lt;br /&gt;State: suspend &lt;br /&gt;MT:10:29:59 Price:82,00000&lt;br /&gt;MT:10:30:01 Price:82,19000&lt;br /&gt;MT:10:30:03 Price:82,15000&lt;br /&gt;MT:10:30:03 Price:82,15000&lt;br /&gt;MT:10:30:03 Price:82,19000&lt;br /&gt;MT:10:30:07 Price:82,12000&lt;br /&gt;...  И т.д. до конца виртуального дня. Если потом сделать strategy.debug.Resume(), то получаем то же самое для следующего виртуального дня.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10885/</id>
    <title type="text"> По идее через http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm Но вы прав...</title>
    <published>2011-09-07T09:38:35Z</published>
    <updated>2011-09-07T09:38:57Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Hamper &lt;a href="https://stocksharp.com/posts/m/10880/" 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;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10859/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;По идее через &lt;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm " title="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm "&gt;http://stocksharp.com/do...sting_StrategyDebug.htm &lt;/a&gt;Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что &lt;b&gt;пока только из кода стратегии&lt;/b&gt;. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Нет, Михаил, не летит этот самолет [confused] &lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Вообще-то я имел ввиду что-то типа MessageBox из обработчика событий NewOrder NewTrader and so on.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10880/</id>
    <title type="text"> По идее через http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm Но вы прав...</title>
    <published>2011-09-07T00:03:52Z</published>
    <updated>2011-09-07T00:03:52Z</updated>
    <author>
      <name>Hamper</name>
      <uri>https://stocksharp.com/users/277/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.com/posts/m/10859/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;По идее через &lt;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm " title="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm "&gt;http://stocksharp.com/do...sting_StrategyDebug.htm &lt;/a&gt;Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что пока только из кода стратегии. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Нет, Михаил, не летит этот самолет [confused] &lt;br /&gt;&lt;br /&gt;В класс SmaStrategy добавил переменную:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
public StrategyDebug debug;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Создаю стратегию:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush: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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Стратегия стартует, при первом же событии OnProcess срабатывает debug, trader докладывает о том, что у него состояние Suspended и... И работа продолжается как ни в чем не бывало - тики тикают, стратегия запускается и обрабатывается, в логах сделки и прочее...&lt;br /&gt;&lt;br /&gt;Кстати статус trader изменяется один (!) раз. Добавлял явный debug.Break() в событие стратегии OnProcess - картинка не меняется. Происходит suspend, тики протикивают до конца виртуального дня и только после этого останавливаются.&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/10859/</id>
    <title type="text"> Подскажите, как все таки остановить эмуляцию и потом ее продолжить с места остановки? По идее через...</title>
    <published>2011-09-06T11:47:01Z</published>
    <updated>2011-09-06T11:47:01Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Hamper &lt;a href="https://stocksharp.com/posts/m/10846/" class="quote_nav"&gt;&lt;/a&gt;&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;a href="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm " title="http://stocksharp.com/doc/html/T_StockSharp_Algo_Testing_StrategyDebug.htm "&gt;http://stocksharp.com/do...sting_StrategyDebug.htm &lt;/a&gt;Но вы правильно сказали, что эмуляция не сразу останавливается. Нужно пофиксить. Так что пока только из кода стратегии. Тестирование идет в одном потоке, так что проблем остановить его в нужном событие думаю не составит.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/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.com/users/277/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Мне необходимо написать тестирование так, чтобы исторические данные выдавались либо с определенной задержкой между тиками, либо при срабатывании сигнала на покупку/продажу тестирование приостанавливалось и потом возобнавлялось бы при нажатии кнопки. Фактически хочется сделать некий &amp;quot;мультик&amp;quot;, чтобы показать как и где сработала стратегия и визуально оценить этот момент.&lt;br /&gt;&lt;br /&gt;Попытался вызвать метод EmulationTrader.Suspend()  Срабатывает событие EmulationTrader.StateChanged, но при этом тики продолжают тикать. Т.е. фактически остановки эмуляции не происходит. Останавливается только после достижения конца виртуального дня.&lt;br /&gt;&lt;br /&gt;Подскажите, как все таки остановить эмуляцию и потом ее продолжить с места остановки?&lt;br /&gt;&lt;br /&gt;PS: Эксперименты проводил на том примере, который дан в дистрибутиве - SampleHistoryTesting&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>