﻿<?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">Как получить в методе-обработчике правила целевой объект?</title>
  <id>~/topic/2380/kak-poluchit-v-metode-obrabotchike-pravila-tselevoi-obekt/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-21T20:20:07Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2380" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/16211/</id>
    <title type="text">ну я чуток делал подругому) хотя так грамотнее. Спасибо </title>
    <published>2012-02-08T12:09:23Z</published>
    <updated>2012-02-08T12:09:23Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.com/users/6032/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;ну я чуток делал подругому) хотя так грамотнее. Спасибо&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16209/</id>
    <title type="text">Вот так Trader.GetMarketDepth(Security); </title>
    <published>2012-02-08T12:05:48Z</published>
    <updated>2012-02-08T12:05:48Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.com/users/28223/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вот так Trader.GetMarketDepth(Security);&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16206/</id>
    <title type="text">vader: А почему вы не используете класс Strategy ? Я в начале его не использовал, работал через Trad...</title>
    <published>2012-02-08T11:53:03Z</published>
    <updated>2012-02-08T11:53:47Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.com/users/6032/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(16201)" rel="nofollow" target="_blank"&gt;vader&lt;/a&gt;:&lt;/strong&gt;
А почему вы не используете класс Strategy ?
Я в начале его не использовал, работал через Trader, но потом понял что это не удобно.&lt;/p&gt;
&lt;p&gt;Кстати, глядя на ваш код придумал такой способ&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;this.When(StrategyRuleHelper.RegisterFailed(order))
.Do(() =&amp;gt; OnRegisterFailed(order))
.Once();&lt;/p&gt;
&lt;p&gt;private void OnRegisterFailed(Order order)
{
OrderFail orderFail = OrderFails.Where(s =&amp;gt; s.Order.TransactionId == order.TransactionId).First();
}&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt; 
&amp;gt; Правда есть проблема.
&amp;gt; На сколько я помню, в некоторых случаях при неуспешной регистрации заявки её TransactionId остается 0 и в таком случае в списке OrderFails может оказаться несколько OrderFail одинаковых для условия проверки.
&amp;gt; Нужно протестить этот момент.
Да использую) тока я не могу разобраться как стакан там вызвать(примеров нету, где стакан бы использовался в Strategy) так же и с тестированием, кароче чуть поже думаю разберусь

esper, спасибо [smile]
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16203/</id>
    <title type="text">Спасибо. </title>
    <published>2012-02-08T09:19:48Z</published>
    <updated>2012-02-08T09:19:48Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.com/users/28223/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Спасибо.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16202/</id>
    <title type="text">this.When(order.RegisterFailed()) .Do(OnRegisterFailed) .Once(); private void OnRegisterFailed(Order...</title>
    <published>2012-02-08T08:02:51Z</published>
    <updated>2012-02-08T08:02:51Z</updated>
    <author>
      <name>esper</name>
      <uri>https://stocksharp.com/users/5990/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;pre&gt;&lt;code class="language-csharp"&gt;this.When(order.RegisterFailed()) 
                .Do(OnRegisterFailed) 
                .Once(); 
  
private void OnRegisterFailed(OrderFail fail) 
        { 

        } 
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16201/</id>
    <title type="text">А почему вы не используете класс Strategy ? Я в начале его не использовал, работал через Trader, но ...</title>
    <published>2012-02-08T07:43:35Z</published>
    <updated>2012-02-08T07:43:35Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.com/users/28223/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;А почему вы не используете класс Strategy ?
Я в начале его не использовал, работал через Trader, но потом понял что это не удобно.&lt;/p&gt;
&lt;p&gt;Кстати, глядя на ваш код придумал такой способ&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
 this.When(StrategyRuleHelper.RegisterFailed(order))
                .Do(() =&amp;gt; OnRegisterFailed(order))
                .Once();

private void OnRegisterFailed(Order order)
        {
            OrderFail orderFail = OrderFails.Where(s =&amp;gt; s.Order.TransactionId == order.TransactionId).First();
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Правда есть проблема.
На сколько я помню, в некоторых случаях при неуспешной регистрации заявки её TransactionId остается 0 и в таком случае в списке OrderFails может оказаться несколько OrderFail одинаковых для условия проверки.
Нужно протестить этот момент.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16200/</id>
    <title type="text">Ну пока я сам до такого не дошел, если честно [biggrin] но я думаю, что как то так можно сделать Tra...</title>
    <published>2012-02-08T07:19:13Z</published>
    <updated>2012-02-08T07:19:13Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.com/users/6032/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Ну пока я сам до такого не дошел, если честно [biggrin] но я думаю, что как то так можно сделать&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;Trader.OrdersRegisterFailed += OrdersFailed;
{
  foreach (var myOrdersFailed in OrdersFailed)
  {
    var trade = myOrdersFailed;
    //и тут уже искать свою заявку.. например по цене, направлению, бумаге или еще чему
  }
}
&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.com/posts/m/16199/</id>
    <title type="text">Спасибо, но я имел ввиду, если я пользуюсь такой конструкцией this.When(StrategyRuleHelper.RegisterF...</title>
    <published>2012-02-08T06:06:47Z</published>
    <updated>2012-02-08T06:06:47Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.com/users/28223/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Спасибо, но я имел ввиду, если я пользуюсь такой конструкцией&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
 this.When(StrategyRuleHelper.RegisterFailed(order))
                .Do(OnRegisterFailed)
                .Once();

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Как мне получить объект OrderFailed в методе OnRegisterFailed ?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16198/</id>
    <title type="text">// подписываемся на событие о неудачной регистрации заявок Trader.OrdersRegisterFailed += OrdersFail...</title>
    <published>2012-02-08T05:56:59Z</published>
    <updated>2012-02-08T05:56:59Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.com/users/6032/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;pre&gt;&lt;code class="language-csharp"&gt;// подписываемся на событие о неудачной регистрации заявок
Trader.OrdersRegisterFailed += OrdersFailed;
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16197/</id>
    <title type="text">Скажите пожалуйста, Как получить в методе, который вызывается при срабатывании правила(правило, допу...</title>
    <published>2012-02-08T05:44:36Z</published>
    <updated>2012-02-08T05:44:36Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.com/users/28223/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Скажите пожалуйста, Как получить в методе, который вызывается при срабатывании правила(правило, допустим на неуспешную регистрацию заявки) объект OrderFailed ?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>