﻿<?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/3030/ne-rabotaet-ehmulyator/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-21T11:10:47Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=3030" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/21646/</id>
    <title type="text">Перетестировал на сегодняшнем транке. Стаканы работают Исполнение заявок при использовании генератор...</title>
    <published>2012-10-02T16:00:41Z</published>
    <updated>2012-10-02T16:00:41Z</updated>
    <author>
      <name>Sergey Sokolov</name>
      <uri>https://stocksharp.com/users/6014/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Перетестировал на сегодняшнем транке.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Стаканы работают&lt;/li&gt;
&lt;li&gt;Исполнение заявок при использовании генератора стаканов TrendMarketDepthGenerator до сих пор работает не совсем так как должно бы, на мой взгляд. Даже при самых нереалистично-благоприятных настройках (MaxSpreadStepCount=MinSpreadStepCount=1, MinVolume=100) среднее проскальзывание около 60 пунктов на РИ для эмуляции рыночных ордеров лимитными с заведомо худшей ценой (проскальзывание считается как средняя разница между последней сделкой в момент отправки заявки и ценой исполнения ордера). Переписывался с Михаилом на эту тему, он посоветовал пару обходных решений, но пока еще не протестировал.&lt;/li&gt;
&lt;li&gt;Расчет PnL похож на правду.&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/21556/</id>
    <title type="text">Проблема с генерацией стаканов ушла. Если использовать UseMarketDepth=true, то вроде тестирование ра...</title>
    <published>2012-09-27T12:29:47Z</published>
    <updated>2012-09-27T12:29:47Z</updated>
    <author>
      <name>Sergey Sokolov</name>
      <uri>https://stocksharp.com/users/6014/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Проблема с генерацией стаканов ушла.
Если использовать UseMarketDepth=true, то вроде тестирование работает нормально. PnL тоже на первый взгляд считается корректно.
Протестировать остальные перечисленные в первом посте проблемы + протестировать работу с UseMarketDepth=false пока не могу, код в переходном состоянии. Как смогу, напишу.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/21547/</id>
    <title type="text">Проблема с последней версией на codeplex ушла? </title>
    <published>2012-09-27T08:46:19Z</published>
    <updated>2012-09-27T08:46:19Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Проблема с последней версией на codeplex ушла?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/21485/</id>
    <title type="text">ProcessDataError: System.ArgumentException: node at StockSharp.Algo.Testing.MarketEmulator.#=qsDZKrW...</title>
    <published>2012-09-24T13:18:45Z</published>
    <updated>2012-09-24T13:18:45Z</updated>
    <author>
      <name>Sergey Sokolov</name>
      <uri>https://stocksharp.com/users/6014/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;ProcessDataError: System.ArgumentException: node
at StockSharp.Algo.Testing.MarketEmulator.#=qsDZKrWdiDpmLBDPZ$6rbRA==(#=q3udKpCOalDAG9i_Fiaji7GyIRzsiGf0m_bQcxngCAvhnp31RRWCAfTLkvbAzkIqH #=qgEJD6KXip0EN0NL2tPleyA==)
at #=q3udKpCOalDAG9i_Fiaji7GyIRzsiGf0m_bQcxngCAvhnp31RRWCAfTLkvbAzkIqH.Emulate(MarketEmulator #=qLJs1r8OnbZIsuPt7wHYPBA==)
at StockSharp.Algo.Testing.MarketEmulator.Emulate(Message msg)&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/21484/</id>
    <title type="text">Sergey Sokolov: Стаканов и Security.BestBid/Ask нет при любом UseMarketDepth, но при UseMarketDepth=...</title>
    <published>2012-09-24T13:16:41Z</published>
    <updated>2012-09-24T13:16:41Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(21482)" rel="nofollow" target="_blank"&gt;Sergey Sokolov&lt;/a&gt;:&lt;/strong&gt;
Стаканов и Security.BestBid/Ask нет при любом UseMarketDepth, но при UseMarketDepth=true в ProcessDataError приходит огромное количество исключений вида ArgumentException(&amp;quot;node&amp;quot;)&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.com/posts/m/21482/</id>
    <title type="text">StockSharp взят с trunk rev 19463 При попытке тестирования стратегии на истории возникли слеюующие п...</title>
    <published>2012-09-24T13:13:39Z</published>
    <updated>2012-09-24T13:15:57Z</updated>
    <author>
      <name>Sergey Sokolov</name>
      <uri>https://stocksharp.com/users/6014/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;StockSharp взят с trunk rev 19463&lt;/p&gt;
&lt;p&gt;При попытке тестирования стратегии на истории возникли слеюующие проблемы:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Не генерируются стаканы (есть только история сделок). Вот как регистрирую генератор:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
_trader = new EmulationTrader(new[] {security}, new[] {portfolio}) {
    MarketTimeChangedInterval = TimeSpan.FromSeconds(1),
    StorageRegistry = storageRegistry,
    UseMarketDepth = true,
    //UseMarketDepth = false,
};

_trader.RegisterMarketDepth(new TrendMarketDepthGenerator(security) {
    GenerateDepthOnEachTrade = true,
    Interval = TimeSpan.FromSeconds(1),
    MaxSpreadStepCount = 10,
    UseTradeVolume = true
});

_trader.Connect();
_trader.StartExport();

_trader.RegisterTrades(security);
_trader.RegisterMarketDepth(security);
_trader.RegisterSecurity(security);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Стаканов и Security.BestBid/Ask нет при любом UseMarketDepth, но при UseMarketDepth=true в ProcessDataError приходит огромное количество исключений вида ArgumentException(&amp;quot;node&amp;quot;)&lt;/p&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Исполнение заявок.&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Самая первая заявка, посланная в эмулятор после старта, даже если она успешно исполняется, после завершения не возвращает информацию о трейдах (_order.GetTrades().Any()==false)&lt;/li&gt;
&lt;li&gt;Лимитные заявки по цене (LastTrade.Price + проскальзывание) исполняются всегда по самой худшей цене, а если проскальзывание небольшое, то исполняются не всегда (хотя это наверно нормально)&lt;/li&gt;
&lt;li&gt;Заявки order.Type = OrderTypes.Market исполняются так же как и лимитники, а если установить цену в 0, то вообще не исполняются.&lt;/li&gt;
&lt;li&gt;Неисполненная заявка некоторое время висит в эмуляторе в активном состоянии а затем автоматически отменяется (видимо на границе сессий в 18:45), причем выставление order.ExpiryDate = DateTime.MaxValue не помогает.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Неверный расчет PnL. Для RIU2 размер шага 5, стоимость шага 3.1. С такими параметрами при позиции в 5 контрактов и изменении цены примерно на 5000 пунктов, PnL изменился почти на 30000.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Если кто знает, на какой из последних версий стаканы/заявки работают корректно, просьба написать.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>