﻿<?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">Как получить в методе-обработчике правила целевой объект?</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-04-30T09:35:00Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=2380" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/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.ru/users/6032/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">ну я чуток делал подругому) хотя так грамотнее. Спасибо</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/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.ru/users/28223/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Вот так Trader.GetMarketDepth(Security);</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/16206/</id>
    <title type="text">А почему вы не используете класс Strategy ? Я в начале его не использовал, работал через Trader, но ...</title>
    <published>2012-02-08T11:53:03Z</published>
    <updated>2012-02-08T11:53:47Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.ru/users/6032/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;vader &lt;a href="https://stocksharp.ru/posts/m/16201/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;А почему вы не используете класс Strategy ?&lt;br /&gt;Я в начале его не использовал, работал через Trader, но потом понял что это не удобно.&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;pre class="brush: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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Правда есть проблема.&lt;br /&gt;На сколько я помню, в некоторых случаях при неуспешной регистрации заявки её TransactionId остается 0 и в таком случае в списке OrderFails может оказаться несколько OrderFail одинаковых для условия проверки.&lt;br /&gt;Нужно протестить этот момент.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Да использую) тока я не могу разобраться как стакан там вызвать(примеров нету, где стакан бы использовался в Strategy) так же и с тестированием, кароче чуть поже думаю разберусь&lt;br /&gt;&lt;br /&gt;esper, спасибо [smile]</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/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.ru/users/28223/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Спасибо.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/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.ru/users/5990/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
this.When(order.RegisterFailed()) 
                .Do(OnRegisterFailed) 
                .Once(); 
  
private void OnRegisterFailed(OrderFail fail) 
        { 

        } &lt;/pre&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/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.ru/users/28223/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">А почему вы не используете класс Strategy ?&lt;br /&gt;Я в начале его не использовал, работал через Trader, но потом понял что это не удобно.&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;pre class="brush: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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Правда есть проблема.&lt;br /&gt;На сколько я помню, в некоторых случаях при неуспешной регистрации заявки её TransactionId остается 0 и в таком случае в списке OrderFails может оказаться несколько OrderFail одинаковых для условия проверки.&lt;br /&gt;Нужно протестить этот момент.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/16200/</id>
    <title type="text">Ну пока я сам до такого не дошел, если честно но я думаю, что как то так можно сделать Trader.Orders...</title>
    <published>2012-02-08T07:19:13Z</published>
    <updated>2012-02-08T07:19:13Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.ru/users/6032/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Ну пока я сам до такого не дошел, если честно [biggrin] но я думаю, что как то так можно сделать&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
Trader.OrdersRegisterFailed += OrdersFailed;
{
  foreach (var myOrdersFailed in OrdersFailed)
  {
    var trade = myOrdersFailed;
    //и тут уже искать свою заявку.. например по цене, направлению, бумаге или еще чему
  }
}&lt;/pre&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/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.ru/users/28223/</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;&lt;pre class="brush:csharp"&gt;

 this.When(StrategyRuleHelper.RegisterFailed(order))
                .Do(OnRegisterFailed)
                .Once();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Как мне получить объект OrderFailed в методе OnRegisterFailed ?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/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.ru/users/6032/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
// подписываемся на событие о неудачной регистрации заявок
Trader.OrdersRegisterFailed += OrdersFailed;&lt;/pre&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/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.ru/users/28223/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Скажите пожалуйста, Как получить в методе, который вызывается при срабатывании правила(правило, допустим на неуспешную регистрацию заявки) объект OrderFailed ?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>