﻿<?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/2091/kotirovanie-ne-srabatyvaet/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-25T11:52:24Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=2091" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/13127/</id>
    <title type="text">sergey.masyura: RegisterTimeFrameCandles надо вызывать один раз при старте, либо до старта стратегии...</title>
    <published>2011-11-08T12:05:50Z</published>
    <updated>2011-11-08T12:11:46Z</updated>
    <author>
      <name>pehas</name>
      <uri>https://stocksharp.ru/users/340/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(13077)" rel="nofollow" target="_blank"&gt;sergey.masyura&lt;/a&gt;:&lt;/strong&gt;
RegisterTimeFrameCandles надо вызывать один раз при старте, либо до старта стратегии. В таком виде при повторной регистрации сразу же получите исключение, что данный тайм-фрейм уже зарегистрирован по данному инструменту, соотвественно тестирование нагнется.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;В моем примере регистрация происходит только один раз при первом вызове события QuotesChanged. Так что ошибки не будет. Но получается все равно не красиво. А если вызывать RegisterTimeFrameCandles только один раз вне этого события, то почему-то стратегия видит свечи, но при обработке свечи метод this.Security.GetMarketPrice(Direction) возвращает 0, соответственно при регистрации лимитного ордера вылетает exception&lt;/p&gt;
&lt;p&gt;Сейчас уже не вспомню, возможно вызывал registerTimeFrameCandles после инициализации стратегии. Могло ли это быть проблемой из за которой this.Security.GetMarketPrice(Direction) возвращал 0?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/13077/</id>
    <title type="text">pehas: Разобрался вроде. Проблема была в том, что на момент обработки свечей, стакан не был подгруже...</title>
    <published>2011-11-07T23:32:32Z</published>
    <updated>2011-11-07T23:32:32Z</updated>
    <author>
      <name>Sergey Masyura</name>
      <uri>https://stocksharp.ru/users/701/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(13076)" rel="nofollow" target="_blank"&gt;pehas&lt;/a&gt;:&lt;/strong&gt;
Разобрался вроде. Проблема была в том, что на момент обработки свечей, стакан не был подгружен. Заработало, как только стал регистрировать свечи по событию обновления стакана&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code&gt;        CandleToken CMToken = null;
        this._trader.QuotesChanged += depths =&amp;gt;
        {
            if (CMToken == null &amp;amp;&amp;amp; depths.FirstOrDefault(d =&amp;gt; d.Security == security) != null)
                CMToken = this._cm.RegisterTimeFrameCandles(security, this._timeFrame);
        };
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt; 
&amp;gt; Однако, непонятно, как стратегия может не видеть стакан, если она уже видит свечи?

RegisterTimeFrameCandles надо вызывать один раз при старте, либо до старта стратегии. В таком виде при повторной регистрации сразу же получите исключение, что данный тайм-фрейм уже зарегистрирован по данному инструменту, соотвественно тестирование нагнется.
&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/13076/</id>
    <title type="text">Разобрался вроде. Проблема была в том, что на момент обработки свечей, стакан не был подгружен. Зара...</title>
    <published>2011-11-07T22:15:19Z</published>
    <updated>2011-11-07T22:16:47Z</updated>
    <author>
      <name>pehas</name>
      <uri>https://stocksharp.ru/users/340/</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;
            CandleToken CMToken = null;
            this._trader.QuotesChanged += depths =&amp;gt;
            {
                if (CMToken == null &amp;amp;&amp;amp; depths.FirstOrDefault(d =&amp;gt; d.Security == security) != null)
                    CMToken = this._cm.RegisterTimeFrameCandles(security, this._timeFrame);
            };

&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/13006/</id>
    <title type="text">Использую EmulationTrader. Генерирую стакан и сделки. Стратегия выставляет заявки при пробое ценовог...</title>
    <published>2011-11-05T15:03:45Z</published>
    <updated>2011-11-05T15:05:29Z</updated>
    <author>
      <name>pehas</name>
      <uri>https://stocksharp.ru/users/340/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Использую EmulationTrader.
Генерирую стакан и сделки. Стратегия выставляет заявки при пробое ценового канала
Если заявка выставляется через котирование, то генерируется тонна заявок, которые затем снимаются.&lt;/p&gt;
&lt;details&gt;&lt;summary&gt;...
TS              | 01.09.2009 00:00:00.000 |            | Стратегия запущена.
MQS             | 01.09.2009 00:34:59.990 | Внимание   | Заявка 60480894 не имеет состояния.
MQS             | 01.09.2009 00:34:59.990 |            | Заявка 60480894 на Sell отправлена с ценой 1500 объемом 1.
EmulationTrader | 01.09.2009 00:34:59.990 |            | RegisterOrder: TransactionId=60480894, Id=4, Price=1500, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:34:59.990 |            | Регистрация новой заявки на Sell с ценой 1500 и объемом 1.
MQS             | 01.09.2009 00:34:59.990 |            | Отмена заявки 60480893 прошло успешно.
MQS             | 01.09.2009 00:29:59.990 |            | Отмена заявки 60480893.
EmulationTrader | 01.09.2009 00:29:59.990 |            | CancelOrder: TransactionId=60480893, Id=3, Price=1495, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:29:59.990 |            | Котирование заявки 60480893 на Sell с ценой 1495 объемом 1.
MQS             | 01.09.2009 00:29:59.990 |            | Лучший бид 1420 и лучший аск 1465.
MQS             | 01.09.2009 00:29:59.990 |            | Цена текущей 1495 и лучшей 1465.
MQS             | 01.09.2009 00:24:59.990 |            | Обработка Limit заявки 60480893 на Sell с номером 3.
TS              | 01.09.2009 00:24:59.990 |            | Обработка Limit заявки 60480893 на Sell с номером 3.
EmulationTrader | 01.09.2009 00:24:59.990 |            | New order: TransactionId=60480893, Id=3, Price=1495, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:19:59.990 | Внимание   | Заявка 60480893 не имеет состояния.
MQS             | 01.09.2009 00:19:59.990 |            | Заявка 60480893 на Sell отправлена с ценой 1495 объемом 1.
EmulationTrader | 01.09.2009 00:19:59.990 |            | RegisterOrder: TransactionId=60480893, Id=3, Price=1495, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:19:59.990 |            | Регистрация новой заявки на Sell с ценой 1495 и объемом 1.
MQS             | 01.09.2009 00:19:59.990 |            | Отмена заявки 60480892 прошло успешно.
MQS             | 01.09.2009 00:14:59.990 |            | Отмена заявки 60480892.
EmulationTrader | 01.09.2009 00:14:59.990 |            | CancelOrder: TransactionId=60480892, Id=2, Price=1460, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:14:59.990 |            | Котирование заявки 60480892 на Sell с ценой 1460 объемом 1.
MQS             | 01.09.2009 00:14:59.990 |            | Лучший бид 1455 и лучший аск 1495.
MQS             | 01.09.2009 00:14:59.990 |            | Цена текущей 1460 и лучшей 1495.
MQS             | 01.09.2009 00:14:59.990 |            | Обработка Limit заявки 60480892 на Sell с номером 2.
TS              | 01.09.2009 00:14:59.990 |            | Обработка Limit заявки 60480892 на Sell с номером 2.
EmulationTrader | 01.09.2009 00:14:59.990 |            | New order: TransactionId=60480892, Id=2, Price=1460, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:09:59.990 | Внимание   | Заявка 60480892 не имеет состояния.
MQS             | 01.09.2009 00:09:59.990 |            | Заявка 60480892 на Sell отправлена с ценой 1460 объемом 1.
EmulationTrader | 01.09.2009 00:09:59.990 |            | RegisterOrder: TransactionId=60480892, Id=2, Price=1460, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:09:59.990 |            | Регистрация новой заявки на Sell с ценой 1460 и объемом 1.
MQS             | 01.09.2009 00:09:59.990 |            | Отмена заявки 60480891 прошло успешно.
MQS             | 01.09.2009 00:04:59.990 |            | Отмена заявки 60480891.
EmulationTrader | 01.09.2009 00:04:59.990 |            | CancelOrder: TransactionId=60480891, Id=1, Price=1450, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 01.09.2009 00:04:59.990 |            | Котирование заявки 60480891 на Sell с ценой 1450 объемом 1.
MQS             | 01.09.2009 00:04:59.990 |            | Лучший бид 1445 и лучший аск 1460.
MQS             | 01.09.2009 00:04:59.990 |            | Цена текущей 1450 и лучшей 1460.
MQS             | 01.09.2009 00:04:59.990 |            | Обработка Limit заявки 60480891 на Sell с номером 1.
TS              | 01.09.2009 00:04:59.990 |            | Обработка Limit заявки 60480891 на Sell с номером 1.
EmulationTrader | 01.09.2009 00:04:59.990 |            | New order: TransactionId=60480891, Id=1, Price=1450, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 31.08.2009 23:59:59.990 |            | Заявка 60480891 на Sell отправлена с ценой 1450 объемом 1.
EmulationTrader | 31.08.2009 23:59:59.990 |            | RegisterOrder: TransactionId=60480891, Id=1, Price=1450, Balance=1, Security=UXZ1@FUTUX, State=Done
MQS             | 31.08.2009 23:59:59.990 |            | Регистрация новой заявки на Sell с ценой 1450 и объемом 1.
MQS             | 01.09.2009 00:25:00.000 |            | Стратегия запущена.
TS              | 01.09.2009 00:25:00.000 |            | Пробой канала (6) Sell Время: 01.09.2009 0:25:00&lt;/summary&gt;
&lt;div class="История"&gt;&lt;p&gt;Если выставлять заявки через RegisterOrder(order),&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
var order = this.CreateOrder(Direction, this.Security.GetMarketPrice(Direction), 1);
this.RegisterOrder(order);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;то вылетает exception на строке с this.RegisterOrder(order);
&amp;quot;Цена лимитной заявки не может быть равной 0.&amp;quot;&lt;/p&gt;
&lt;p&gt;В чем может быть проблема??&lt;/p&gt;
&lt;/details&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>