﻿<?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">Не приходит событие NewMyTrades в MarketQuotingStrategy</title>
  <id>~/topic/1673/ne-prihodit-sobytie-newmytrades-v-marketquotingstrategy/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-07T15:26:04Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1673" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/9252/</id>
    <title type="text">Mikhail Sukhov: InsiderHSE: Mikhail Sukhov: Можете выкинуть все люгику работы, и прислать пример мне...</title>
    <published>2011-07-01T13:42:28Z</published>
    <updated>2011-07-01T13:42:28Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9248)" 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(9174)" rel="nofollow" target="_blank"&gt;InsiderHSE&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9129)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт?
Сделал.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Нашел проблему. Ситуация следующая. MyMarketQuotingStrategy успешно отработало и было удалено. Сделки приходят чуть с запозданием, поэтому оно то успевало вызвать событие, то нет. Решается проблема так:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;public VolumeDiffStrategy(Security sec)&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt; 
&amp;gt; Пока не знаю, насколько это правильно.
Спасибо, попробую так.
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9248/</id>
    <title type="text">InsiderHSE: Mikhail Sukhov: Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сай...</title>
    <published>2011-07-01T11:10:40Z</published>
    <updated>2011-07-01T11:10:48Z</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(9174)" rel="nofollow" target="_blank"&gt;InsiderHSE&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9129)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт?
Сделал.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Нашел проблему. Ситуация следующая. MyMarketQuotingStrategy успешно отработало и было удалено. Сделки приходят чуть с запозданием, поэтому оно то успевало вызвать событие, то нет. Решается проблема так:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;public VolumeDiffStrategy(Security sec)
{
  this.Security = sec;
  base.RemoveChildStrategies = false;
}
&lt;/code&gt;&lt;/pre&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/9187/</id>
    <title type="text">InsiderHSE: Mikhail Sukhov: Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сай...</title>
    <published>2011-06-28T18:22:32Z</published>
    <updated>2011-06-28T18:22:32Z</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(9174)" rel="nofollow" target="_blank"&gt;InsiderHSE&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9129)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт?
Сделал.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&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/9174/</id>
    <title type="text">Mikhail Sukhov: Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт? Сделал. </title>
    <published>2011-06-28T13:41:59Z</published>
    <updated>2011-06-28T13:41:59Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9129)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт?
Сделал.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9129/</id>
    <title type="text">InsiderHSE: Mikhail Sukhov: Меня в логе напрягает один момент. Сначала он выводит запись от родитель...</title>
    <published>2011-06-24T07:54:31Z</published>
    <updated>2011-06-24T07:54:31Z</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(9125)" rel="nofollow" target="_blank"&gt;InsiderHSE&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9118)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Меня в логе напрягает один момент. Сначала он выводит запись от родительской стратегии, а затем от дочерней. А так быть не может. Потому что родительская подписывается последней строчкой в Action1 (неявно при добавлении в ChildStrategies).
Мхаил, а в какую сторону копать не подскажете? Не знаю, может это поможет, логика работы робота такая - базовая тратегия подписывается на событие новой свечки, и если есть условия на вход, вызывает кастомное событие. Есть кастомное правило, которое подписывается на это событие и активируется по его приходу, именно в тот момент вызывается Action1.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;Можете выкинуть все люгику работы, и прислать пример мне на mika сбк сайт?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9125/</id>
    <title type="text">Mikhail Sukhov: Меня в логе напрягает один момент. Сначала он выводит запись от родительской стратег...</title>
    <published>2011-06-24T06:21:10Z</published>
    <updated>2011-06-24T06:21:10Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(9118)" rel="nofollow" target="_blank"&gt;Mikhail Sukhov&lt;/a&gt;:&lt;/strong&gt;
Меня в логе напрягает один момент. Сначала он выводит запись от родительской стратегии, а затем от дочерней. А так быть не может. Потому что родительская подписывается последней строчкой в Action1 (неявно при добавлении в ChildStrategies).
Мхаил, а в какую сторону копать не подскажете? Не знаю, может это поможет, логика работы робота такая - базовая тратегия подписывается на событие новой свечки, и если есть условия на вход, вызывает кастомное событие. Есть кастомное правило, которое подписывается на это событие и активируется по его приходу, именно в тот момент вызывается Action1.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9118/</id>
    <title type="text">Меня в логе напрягает один момент. Сначала он выводит запись от родительской стратегии, а затем от д...</title>
    <published>2011-06-23T17:20:33Z</published>
    <updated>2011-06-23T17:20:33Z</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;Меня в логе напрягает один момент. Сначала он выводит запись от родительской стратегии, а затем от дочерней. А так быть не может. Потому что родительская подписывается последней строчкой в Action1 (неявно при добавлении в ChildStrategies).&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9111/</id>
    <title type="text">Есть базовая стратегия, которая при срабатывании кастомного правила вызывается Do(Action1): private ...</title>
    <published>2011-06-23T12:28:31Z</published>
    <updated>2011-06-23T12:28:31Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Есть базовая стратегия, которая при срабатывании кастомного правила вызывается Do(Action1):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
private void Action1()
        {
            Debug.WriteLine(DateTime.Now.ToLongTimeString() + &amp;quot; - Запускаем действие&amp;quot;);
            var order = _signalDirection == OrderDirections.Buy ? base.BuyAt(Security.LastTrade.Price) : base.SellAt(Security.LastTrade.Price);
            var qstr = new MyMarketQuotingStrategy(order, 0m.Pips(order.Security), (0m).Pips(order.Security)) { PriceType = MarketPriceTypes.Middle, MaxErrorCount = 1 };
            
			qstr.NewMyTrades += t =&amp;gt;
			{
				MyTrade tr = t.FirstOrDefault();
				Debug.WriteLine(&amp;quot;Котирование: Пришла новая сделка - &amp;quot; + DateTime.Now.ToLongTimeString() + &amp;quot;   &amp;quot; + tr.ToString());
			};
			this.ChildStrategies.Add(qstr);

        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;код MyMarketQuotingStrategy приведен выше.
Сама базовая стратегия вызывается следующим образом:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
private void LounchStrat()
        {

            var cm = new CandleManager(Trader);
            var cf = new VolumeTimeFrameCandleFactory();
            cm.UnRegisterCandleFactory&amp;lt;TimeFrameCandle&amp;gt;();
            cm.RegisterCandleFactory(cf);

            var strategy = new VolumeDiffStrategy(Security, SignalSecurity, 18000, (-5.08).Percents(), 0.03.Percents(), 0.03.Percents())
            {
            	Volume = 1,
            	Portfolio = Portfolio_FORTS,
            	Trader = this.Trader,
            	IsShortEnabled = true,
            	CandleManager = cm,
            };

        	cm.RegisterCandles&amp;lt;TimeFrameCandle, TimeSpan&amp;gt;(SignalSecurity, TimeSpan.FromSeconds(25));
            if (!Trader.Terminal.IsQuotesOpened(Security)) Trader.Terminal.OpenQuotes(Security);
            Trader.RegisterQuotes(Security);

			strategy.NewMyTrades += t =&amp;gt;
			{
				MyTrade tr = t.FirstOrDefault();
				Debug.WriteLine(&amp;quot;Базовая стратегия: Пришла новая сделка - &amp;quot; + DateTime.Now.ToLongTimeString() + &amp;quot;   &amp;quot; + tr.ToString());
			};

            var fileLogger = new FileStrategyLogger(&amp;quot;log.txt&amp;quot;);
            fileLogger.Strategies.Add(strategy);
            strategy.Start();
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Вывод дебаггера (после первой сделки все события вызвались, потом нет):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;
16:19:25 - вызван OnRunning
16:19:38 - Запускаем действие
Базовая стратегия: Пришла новая сделка - 16:19:40   StockSharp.BusinessEntities.MyTrade
Котирование: Пришла новая сделка - 16:19:40   StockSharp.BusinessEntities.MyTrade
Котирование внутри: Пришла новая сделка - 16:19:40   StockSharp.BusinessEntities.MyTrade
The thread '&amp;lt;No Name&amp;gt;' (0xc90) has exited with code 0 (0x0).
16:20:00 - Запускаем действие
Базовая стратегия: Пришла новая сделка - 16:20:01   StockSharp.BusinessEntities.MyTrade
16:20:29 - Запускаем действие
Базовая стратегия: Пришла новая сделка - 16:20:34   StockSharp.BusinessEntities.MyTrade

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;лог:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;
VDS 23.06.2011 16:19:26.313 Стратегия запущена.
VDS 23.06.2011 16:19:38.359 [MMQS] Стратегия запущена.
VDS 23.06.2011 16:19:38.566 [MMQS] Регистрация новой заявки на Buy с ценой 9622 и объемом 1.
VDS 23.06.2011 16:19:38.577 [MMQS] Заявка 58736846 на Buy отправлена с ценой 9622 объемом 1.
VDS 23.06.2011 16:19:38.678 [MMQS] Заявка 58736846 не имеет состояния.
VDS 23.06.2011 16:19:40.297 [MMQS] Цена текущей 9622 и лучшей 9621.
VDS 23.06.2011 16:19:40.297 [MMQS] Котирование заявки 58736846 на Buy с ценой 9622 объемом 1.
VDS 23.06.2011 16:19:40.301 [MMQS] Перекотирование зарегистрировано для заявки 58736847 на Buy с ценой 9621 объемом 1.
VDS 23.06.2011 16:19:40.336 [MMQS] Позиция изменилась на 1.
VDS 23.06.2011 16:19:40.336 [MMQS] Заканчиваем котирование с неисполненным объемом равный 0.
VDS 23.06.2011 16:19:40.336 [MMQS] Стратегия останавливается.
VDS 23.06.2011 16:19:40.340 [MMQS] Стратегия остановлена.
VDS 23.06.2011 16:20:00.823 [MMQS] Стратегия запущена.
VDS 23.06.2011 16:20:00.889 [MMQS] Регистрация новой заявки на Buy с ценой 9618 и объемом 1.
VDS 23.06.2011 16:20:00.889 [MMQS] Заявка 58736848 на Buy отправлена с ценой 9618 объемом 1.
VDS 23.06.2011 16:20:01.091 [MMQS] Заявка 58736848 не имеет состояния.
VDS 23.06.2011 16:20:01.659 [MMQS] Позиция изменилась на 1.
VDS 23.06.2011 16:20:01.659 [MMQS] Заканчиваем котирование с неисполненным объемом равный 0.
VDS 23.06.2011 16:20:01.659 [MMQS] Стратегия останавливается.
VDS 23.06.2011 16:20:01.659 [MMQS] Стратегия остановлена.
VDS 23.06.2011 16:20:30.155 [MMQS] Стратегия запущена.
VDS 23.06.2011 16:20:30.302 [MMQS] Регистрация новой заявки на Buy с ценой 9619 и объемом 1.
VDS 23.06.2011 16:20:30.302 [MMQS] Заявка 58736849 на Buy отправлена с ценой 9619 объемом 1.
VDS 23.06.2011 16:20:34.764 [MMQS] Позиция изменилась на 1.
VDS 23.06.2011 16:20:34.764 [MMQS] Заканчиваем котирование с неисполненным объемом равный 0.
VDS 23.06.2011 16:20:34.764 [MMQS] Стратегия останавливается.
VDS 23.06.2011 16:20:34.764 [MMQS] Стратегия остановлена.

&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/9095/</id>
    <title type="text">InsiderHSE: Версия 3.2.2, проблема осталась. Использую следующий код Событие не приходит. Молный лог...</title>
    <published>2011-06-22T20:27:51Z</published>
    <updated>2011-06-22T20:27:51Z</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(9088)" rel="nofollow" target="_blank"&gt;InsiderHSE&lt;/a&gt;:&lt;/strong&gt;
Версия 3.2.2, проблема осталась.
Использую следующий код&lt;/p&gt;
&lt;p&gt;Событие не приходит.&lt;/p&gt;
&lt;/blockquote&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/9088/</id>
    <title type="text">Версия 3.2.2, проблема осталась. Использую следующий код class MyMarketQuotingStrategy : MarketQuoti...</title>
    <published>2011-06-22T17:53:49Z</published>
    <updated>2011-06-22T17:53:49Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Версия 3.2.2, проблема осталась.
Использую следующий код&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
class MyMarketQuotingStrategy : MarketQuotingStrategy
    {
        public MyMarketQuotingStrategy(Order order, Unit betsPriceOffset, Unit priceOffset) : base(order, betsPriceOffset, priceOffset) { }

		protected override void OnRunned()
		{
			base.NewMyTrades += t =&amp;gt;
			{
				MyTrade tr = t.FirstOrDefault();
				Debug.WriteLine(&amp;quot;Котирование внутри: Пришла новая сделка - &amp;quot; + DateTime.Now.ToLongTimeString() + &amp;quot;   &amp;quot; + tr.ToString());
			};
			base.OnRunned();
		}
    }

&lt;/code&gt;&lt;/pre&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/8980/</id>
    <title type="text">сабж. Причем по родительской стратегии событие приходит. Я так понимаю, стратегия успевает остановит...</title>
    <published>2011-06-17T13:40:23Z</published>
    <updated>2011-06-17T13:40:23Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;сабж. Причем по родительской стратегии событие приходит. Я так понимаю, стратегия успевает остановиться перед вызовом этого события. Это так задумано или баг?&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt; var strategy = new MyStrategy(Security)
            {
            	Volume = 1,
            	Portfolio = Portfolio_FORTS,
            	Trader = this.Trader,
            };

			strategy.NewMyTrades += t =&amp;gt;
			{
				MyTrade tr = t.FirstOrDefault();
				Debug.WriteLine(&amp;quot;Родительская стратегия: Пришла новая сделка - &amp;quot; + DateTime.Now.ToLongTimeString() + &amp;quot;   &amp;quot; + tr.ToString());
			};

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;В коде стратеги при получении сигнала прописываю:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
var order = base.BuyAt(Security.LastTrade.Price);
var qstr = new MyMarketQuotingStrategy(order, 0m.Pips(order.Security), 0m.Pips(order.Security)) { PriceType = MarketPriceTypes.Middle, MaxErrorCount = 1 };
	qstr.NewMyTrades += t =&amp;gt;
	{
		MyTrade tr = t.FirstOrDefault();
		Debug.WriteLine(&amp;quot;Котирование: Пришла новая сделка - &amp;quot; + DateTime.Now.ToLongTimeString() + &amp;quot;   &amp;quot; + tr.ToString());
	};
base.ChildStrategies.Add(qstr);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Получаю:
Родительская стратегия: Пришла новая сделка - 17:07:56   StockSharp.BusinessEntities.MyTrade
Родительская стратегия: Пришла новая сделка - 17:08:17   StockSharp.BusinessEntities.MyTrade&lt;/p&gt;
&lt;p&gt;Причем иногда сделка по котированию все-таки приходит, иногда с третьего раза, бывает позже.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>