﻿<?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">stocksharp. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=stocksharp&amp;type=forum&amp;page=14</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-07T04:11:22Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=stocksharp&amp;type=forum&amp;page=14" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/4634/</id>
    <title type="text">API 4.2.8. Ошибка при чтении сделок из хранилища</title>
    <published>2014-07-17T14:07:07Z</published>
    <updated>2014-07-17T14:07:07Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;
System.NotSupportedException: Дробный объем не поддерживается.
   at #=q7hbTCONvIO4muPuc2eMrnaMieTHfWWwAqKMgNtaGvW0rMY4sOXFfNR53eoGxLVfcrl_efCSw291uSuOv6cNuRg==.#=qh5FLVCQ5dIRJc0BphWDyM0m_BBjh$nReKXvfuc9o5go=[T](BitArrayReader #=qHCKz9fHxXoknhhWwNqSJSg==, #=qek3V_aKLd71R0$hcSuVtT7ZCVQB71cVJlM93QvvrAA6blcWdRdJogknlwwv7sX0E #=qI$GePiDpmN0KYiz6EeUdTQ==)
   at #=q7hbTCONvIO4muPuc2eMrnbBm4ev$cPQy5X$dmJ8XYnfADUufPeSVMuvDEz3nh_1$.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qMxJoFFjaxj2cUZSg6sTgZQ==)
   at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at StorageResave.Resavers.TradeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\TradeResaver.cs:line 49&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Маркет данные со сделками прилагаю. Инструмент: FEES@TQNL, дата: 04.04.2013, записано через Смартком.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4633/</id>
    <title type="text">Работа с несколькими квиками</title>
    <published>2014-07-17T14:02:38Z</published>
    <updated>2014-07-17T14:02:38Z</updated>
    <author>
      <name>beast</name>
      <uri>https://stocksharp.ru/users/50008/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Всем доброго времени суток!&lt;br /&gt;Я совсем недавно начал изучать S# API и столкнулся с проблемой недостаточного описания в документации.&lt;br /&gt;Если разработчики S# API читают этот пост, то примите, пожалуйста, какие-нибудь меры для того, чтобы рядовой программист, не знакомый с вашим API, изучив вашу документацию и примеры, смог самостоятельно написать приложение без прохождения обучения и обращения на форум.&lt;br /&gt;В данный момент я не разобрался с тем, каким образом работать с несколькими квиками.&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;


1) В папку с программой необходимо поместить два файла TRANS2QUIK.dll (пример работает с 2-мя Quik-ами). Например, один будет иметь оригинальное название, а второй будет переименован TRANS2QUIK_2.dll. Это обязательное требование работы с несколькими Quik-ами из одной программы: один Quik - одна dll. 

2) После этого, идет создание нескольких QuikTrader. Через свойство QuikTrader.DdeServer передается уникальное имя для DDE сервера, а через QuikTrader.DllName путь к TRANS2QUIK.dll:

var quikTrader1 = new QuikTrader { Path = path1, DdeServer = &amp;quot;quik1&amp;quot; };
var quikTrader2 = new QuikTrader { Path = path2, DdeServer = &amp;quot;quik2&amp;quot;, DllName = @&amp;quot;TRANS2QUIK_2.dll&amp;quot; };

// если вторая dll находится в другой папке, то можно создать шлюз, указав путь к dll 
// var quikTrader2 = new QuikTrader { Path = path2, DdeServer = &amp;quot;quik2&amp;quot;, DllName = @&amp;quot;Folder1\TRANS2QUIK_2.dll&amp;quot; };


&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Что за файл TRANS2QUIK.dll? В папке квика его нет, в папке References в S# API этого файла тоже нет. В примере, который демонстрирует работу с несколькими квиками (StockSharp_4.2.3.14\Samples\Quik\SampleFewQuiks) этого файла тоже нет.&lt;br /&gt;&lt;br /&gt;Допустим, этот файл есть. Куда его нужно копировать? Варианты:&lt;br /&gt;- в корень проекта Visual Studio, где лежит файл типа Microsoft Visual Studio Solution;&lt;br /&gt;- в папку, где код робота и папки bin и obj;&lt;br /&gt;- в папку, где лежит исполняемый файл робота (bin\Debug);&lt;br /&gt;- в папку с квиком.&lt;br /&gt;&lt;br /&gt;Нужно ли этот файл добавлять в свойствах проекта в разделе &amp;quot;References&amp;quot;?&lt;br /&gt;&lt;br /&gt;Какое правило указания пути к этому файлу? В примере написано @&amp;quot;TRANS2QUIK_2.dll&amp;quot;. Это значит, что этот файл лежит там же, где и exe-шник? Ещё в примере написано @&amp;quot;Folder1\TRANS2QUIK_2.dll&amp;quot;. Это означает, что файл лежит в папке, а папка там же, где и exe-шник? А если этот файл на другом диске, то как нужно это прописывать?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Разъясните мне, пожалуйста, эти вопросы.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4632/</id>
    <title type="text">API 4.2.3.13. Ошибка при чтении стаканов из хранилища</title>
    <published>2014-07-16T20:57:06Z</published>
    <updated>2014-07-16T20:57:06Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;
System.NullReferenceException: Object reference not set to an instance of an object.
   at #=qdzUcc9G60rgLTpsRTwxQ57YkCj478_CGUf$i7e2bziym3HhGvYsJyun$ZEW9aZov.#=q6NsT3Yd6_Fbp9iPLS_THbw==(#=qnIZTzlrlnBDxMJO30NWwBtKceweJUgowii86VFk7klw= #=qnkUtzGIMfUU3RS$v2q38Sg==)
   at #=q01Bhsf3pAS4Q8bWs6PW8tKB_LG3QlqCFD95DaqBJBGTy4j2kqg6sujFB3kNsfmYD6o0Wgp$VClsui8ShWH51QA==.#=qnIZTzlrlnBDxMJO30NWwBtKceweJUgowii86VFk7klw=.MoveNext()
   at MoreLinq.MoreEnumerable.&amp;lt;BatchImpl&amp;gt;d__68`2.MoveNext()
   at StorageResave.Resavers.MarketDepthResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\MarketDepthResaver.cs:line 75&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;Маркет данные со стаканом прилагаю. Инструмент: FEES@TQNL, дата: 04.04.2013, записано через Смартком.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4627/</id>
    <title type="text">API 4.2.6.0. Ошибки при чтении изменений инструментов</title>
    <published>2014-07-15T07:22:39Z</published>
    <updated>2014-07-15T07:22:39Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Хранилище записывалось разными версиями S# API с конца 2012 г через SmartCom. Изменения инструментов за некоторые даты из хранилищ не читаются. Решил перегнать те изменения инструментов что читаются в новое хранилище. Для информации разработчикам библиотеки привожу ошибки, которые появляются при чтении: &lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;
                &amp;quot;Поле для кода 0 не найдено&amp;quot;,
                &amp;quot;Неизвестное изменение инструмента&amp;quot;,
                &amp;quot;Value was either too large or too small for an Int32&amp;quot;,
                &amp;quot;Specified argument was out of the range of valid values&amp;quot;,
                &amp;quot;Decimal byte array constructor requires an array of length four containing valid decimal bytes&amp;quot;,&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;Полную информацию об ошибке со стекттрейсом прилагаю к сообщению</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4626/</id>
    <title type="text">API 4.2.6.0. Проблема при конвертации хранилища</title>
    <published>2014-07-14T15:59:59Z</published>
    <updated>2014-07-14T15:59:59Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Пробую пересохранить изменения по инструментам, которые были записаны разными версиями API через SmartCOM. В некоторые дни в хранилище отсутствует информация о шаге цены. В результате получаю ошибку &amp;quot;Минимальный шаг цены 0,01 инструмента не соответствует самой цене&amp;quot;. Что сделать чтобы пересохранить записанные ранее данные?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4622/</id>
    <title type="text">API 4.2.4.0 - Пропало свойство  Connector в классе SecurityPicker</title>
    <published>2014-07-14T10:02:34Z</published>
    <updated>2014-07-14T10:02:34Z</updated>
    <author>
      <name>JaguarFX</name>
      <uri>https://stocksharp.ru/users/49779/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">На новой версии API 4.2.4.0 пропало свойство  Connector в классе SecurityPicker,&lt;br /&gt;и соответственно в старом коде появляется ошибка:&lt;br /&gt;&amp;quot;StockSharp.Xaml.SecurityPicker&amp;quot; не содержит определение для &amp;quot;Connector&amp;quot;. Не удалось найти метод  расширения &amp;quot;Connector&amp;quot;, принимающий первый аргумент типа &amp;quot;StockSharp.Xaml.SecurityPicker&amp;quot;  (пропущена директива using или ссылка на сборку?)....&amp;quot;&lt;br /&gt;&lt;br /&gt;Соответственно данный код пришлось закомментить для обеспечения непрерывности работы робота,&lt;br /&gt;но теперь естественно окно выбора инструмента не отображает возможные инструменты.&lt;br /&gt;&lt;br /&gt;Прошу подсказать как теперь для объекта класса SecurityPicker необходимо указывать подключение к терминалу?	</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4621/</id>
    <title type="text">API 4.2.5 SampleHistoryTesting не работает с дочерними стратегиями</title>
    <published>2014-07-14T08:24:46Z</published>
    <updated>2014-07-14T08:24:46Z</updated>
    <author>
      <name>Andrii</name>
      <uri>https://stocksharp.ru/users/27996/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Тестирование на истории не работает при создании дочерних стратегия:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SmaStrategy.cs:&lt;/b&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;
				if (!SafeGetConnector().RegisteredMarketDepths.Contains(Security))
				{
					// регистрируем псевдо-маркетную заявку - лимитная заявка с ценой гарантирующей немедленное исполнение.
					RegisterOrder(this.CreateOrder(direction, Security.GetMarketPrice(direction), volume));
				}
				else
				{
					// переворачиваем позицию через котирование
					var strategy = new MarketQuotingStrategy(direction, volume)
					{
						WaitAllTrades = true,
					};
					ChildStrategies.Add(strategy);
				}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;
!SafeGetConnector().RegisteredMarketDepths.Contains(Security)&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;если Strategy класс инкапсулирует в себя коннектор в свойстве Connector,&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;
Connector.RegisteredMarketDepths.Contains(Security)&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;
					var strategy = new MarketQuotingStrategy(direction, volume)
					{
						WaitAllTrades = true,
					};
					ChildStrategies.Add(strategy);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;создается дочерняя стратегия, но результат работы отсутствует/никакой&lt;br /&gt;&lt;br /&gt;&lt;a href='http://i.imgur.com/PFZnQB1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="http://i.imgur.com/PFZnQB1.png" style='max-width: 600px;' alt="Strategy results" title="Strategy results" /&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4619/</id>
    <title type="text">API 4.2.4.0. Скорость чтения стаканов из хранилища</title>
    <published>2014-07-12T10:00:28Z</published>
    <updated>2014-07-12T10:00:28Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Скорость загрузки стаканов из хранилища стала существенно медленнее на новой версии.&lt;br /&gt;&lt;br /&gt;4.2.3.13: Время на исполнение: 00:00:01.0192103&lt;br /&gt;4.2.4.0 : Время на исполнение: 00:00:32.7287738&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;
using StockSharp.Algo.Storages;
using StockSharp.BusinessEntities;
using System;
using System.IO;
 
class Program
{
    static void Main(string[] args)
    {
        var storageRegistry = new StorageRegistry();
        var defaultDrive = (LocalMarketDataDrive)storageRegistry.DefaultDrive;
        defaultDrive.Path = Path.GetFullPath(@&amp;quot;D:\AlgoTrading\MarketData\Storage\PlazaForts&amp;quot;);
        var security = new Security() { Id = &amp;quot;RIU4@FORTS&amp;quot; };
        var marketDepthStorage = storageRegistry.GetMarketDepthStorage(security, defaultDrive);
        var date = new DateTime(2014, 07, 9);
        var start = DateTime.Now;
        foreach (var depth in marketDepthStorage.Load(date)) { }
        Console.WriteLine(&amp;quot;Время на исполнение: {0}&amp;quot;, DateTime.Now - start);
    }
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Итого медленнее в 32 раза.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4616/</id>
    <title type="text">Не срабатывает событие SessionStateChanged</title>
    <published>2014-07-11T20:02:04Z</published>
    <updated>2014-07-11T20:02:04Z</updated>
    <author>
      <name>Валентин Лебедев</name>
      <uri>https://stocksharp.ru/users/50045/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Проверял на квике. Все запущено, свечки идут, график рисуется, и как только сессия закончилась в 23-50 по идее должно было сработать событие Trader.SessionStateChanged (стоял брейкпоинт), но этого не произошло.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4613/</id>
    <title type="text">System.OutOfMemoryException</title>
    <published>2014-07-11T12:13:13Z</published>
    <updated>2014-07-11T12:13:13Z</updated>
    <author>
      <name>devruss</name>
      <uri>https://stocksharp.ru/users/50604/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Проблема следующая, на бэктесте тиковых данных месяца на 3 (т.е. полностью один фьючерсный контракт от экспирации до экспирации) очень часто вылетает ошибка System.OutOfMemoryException&lt;br /&gt;Вылетает на разных timestamps, стэктрейс приводит в обработку индикаторов (тоже разных). Если сразу перезапустить бэктест, то ошибка пропадает и бэктест завершается удачно. Бывает надо раза по 2 перезапускать. &lt;br /&gt;&lt;br /&gt;Вопрос: что может быть причиной данной ошибки и как ее вылавливать? &lt;br /&gt;(я не программер, так что может вопрос простой и известный - тогда киньте ссылку на решение пожалуйста)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4612/</id>
    <title type="text">API 4.2.4.0 Не выставляются заявки по некоторым инструментам FORTS</title>
    <published>2014-07-11T09:07:44Z</published>
    <updated>2014-07-11T09:07:44Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.ru/users/38961/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">API 4.2.4.0 выдает ошибку при выставлении заявки по инструменту  EuU4.&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:plain"&gt;
StockSharp.Quik.Native.ApiException: Код ошибки Failed Сообщение  Указанный инструмент не найден: &amp;quot;EUU4&amp;quot;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;В 4.2.3.4 все работает нормально.&lt;br /&gt;&lt;br /&gt;Косяк скорее всего в том что Security.Code идет в верхнем регистре в новой версии. В старой идет нормально EuU4.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4609/</id>
    <title type="text">API 4.2.4.0. Скорость чтения SecurityChange из хранилища</title>
    <published>2014-07-11T06:12:53Z</published>
    <updated>2014-07-11T06:12:53Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Стала медленнее примерно в 6 раз. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4606/</id>
    <title type="text">Странный баг в AttachOrder и во время торговли в S# 4.2.3.4</title>
    <published>2014-07-08T19:13:55Z</published>
    <updated>2014-07-08T19:13:55Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.ru/users/38961/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Наткнулся на странный баг при загрузке ордеров с помощью AttachOrder, а также при добавлении новых ордеров в стратегию во время торговли.&lt;br /&gt;&lt;br /&gt;При добавлении новых ордеров к стратегии исчезают все предыдущие ордера из Orders, если между временем последнего добавленного ордера и предыдущими больше 36 часов.&lt;br /&gt;&lt;br /&gt;То есть, например, добавляю из файла 10 ордеров со сделками среднесрочной стратегии. В MyTrades оказываются все сделки, но в Orders только последние два ордера.&lt;br /&gt;&lt;br /&gt;Соответственно при последующем сохранении состояния сохраняются только 2 ордера с его сделками и информация теряется.&lt;br /&gt;&lt;br /&gt;Причем, если загружать ордера в обратной последовательности от новых к старым, то все ордера остаются в Orders.&lt;br /&gt;&lt;br /&gt;[confused] </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4600/</id>
    <title type="text">API 4.2.3.20. Сообщения, содержащие несколько изменений, не поддерживаются</title>
    <published>2014-07-02T20:54:44Z</published>
    <updated>2014-07-02T20:54:44Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <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;
securityChangeStorage.Load(date)&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;Ошибка: &lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;
2014-07-03 00:29:31,308 [ 1] ERROR - Ошибка при вызове команды RunCommand
System.InvalidOperationException: Сообщения, содержащие несколько изменений, не поддерживаются.
   at StockSharp.Algo.MessageConverterHelper.#=qeHZAjjyJSizS7DWSSkA9a6AgUWw5pHJ3Vzpmjo0krho=.#=qs_x3M4HZqKjvPIxxH9L9sw==(#=qa_$8GPQnXx_HCyesBm8V9g== #=q4rpWxVZhVjoZ8i$hSpBONA==)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.OrderedEnumerable`1.&amp;lt;GetEnumerator&amp;gt;d__0.MoveNext()
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
   at AlgoTrading.NewModel.Strategies.StrategyA.HistoryMdvBuilder.GetSecurityChangesFromMyStorage(DateTime date)&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4598/</id>
    <title type="text">Hydra  4.2.3.15  Свечи из тиков</title>
    <published>2014-07-01T17:07:28Z</published>
    <updated>2014-07-01T17:07:28Z</updated>
    <author>
      <name>wednesday</name>
      <uri>https://stocksharp.ru/users/38935/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Доброго дня.&lt;br /&gt; Не могу разобраться почему при использовании тиковых данных скачанных с помощью Гидры версии 4.2.3.15  не формируются свечи в SampleHistoryTest на тиках(S# 4.2.3.14), но при этом если загрузить те же данные с помощью Гидры 4.1.1.19 все прекрасно работает (само собой тест так же отлично работает на History Data(из Downloads S# Api 4.2.3.14)). Буду благодарна за помощь :) &lt;br /&gt;  </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4595/</id>
    <title type="text">Тестирование в версии 4.2.3.14, проблема</title>
    <published>2014-06-30T12:13:34Z</published>
    <updated>2014-06-30T12:13:34Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Камрады, стал мигрировать с 4.2.2.16 на 4.2.3.14 - код, ессно, перестал пахать.&lt;br /&gt;&lt;br /&gt;Ниже mainWindow. Буду признателен, если кто ткнёт мну носом в то, где у мну косяк - не происходит отработка ни стратегии (не вызывается ProcessCandle), ни отрисовка индикаторов.&lt;br /&gt;Где у мну руки из опы?&lt;br /&gt;&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;


        private void ConnectClick(object sender, RoutedEventArgs e)
        {
            if (Path.Text.IsEmpty())
            {
                MessageBox.Show(this, &amp;quot;Путь не выбран.&amp;quot;);
                return;
            }

            var storageRegistry = new StorageRegistry
			{
				// изменяем путь, используемый по умолчанию
				DefaultDrive = new LocalMarketDataDrive(Path.Text)
			};

            var secCode = &amp;quot;RIU4&amp;quot;;
			var board = ExchangeBoard.GetOrCreateBoard(&amp;quot;Forts&amp;quot;);

            var security = new Security
            {
                Id = &amp;quot;RIU4@FORTS&amp;quot;, // по идентификатору инструмента будет искаться папка с историческими маркет данными
                Code = secCode,
                PriceStep = 10,
                StepPrice = 2,
                MinPrice = 10,
                MaxPrice = 1000000,
                MarginBuy = 10000, // задаем ГО
                MarginSell = 10000,
                Board = ExchangeBoard.Forts,
            };

            var portfolio = new Portfolio
            {
                Name = &amp;quot;TEST&amp;quot;,
                BeginValue = 500000m,
                CurrentValue = 500000m,
                Board = ExchangeBoard.GetBoard(instruments.First().strategyParams.exchange),
            };

            realTimeTradeEmulation = new HistoryEmulationConnector(new List&amp;lt;Security&amp;gt;() { security }, new List&amp;lt;Portfolio&amp;gt;() { portfolio } , storageRegistry)
            {
                MarketEmulator =
                {
                    Settings =
                    {
                        UseCandlesTimeFrame = System.TimeSpan.Zero,
                        MatchOnTouch = true,
                    }
                },
                StorageRegistry = storageRegistry,
            };

            realTimeTradeEmulation.NewSecurities += securities =&amp;gt;
            {
                if (securities.All(s =&amp;gt; s != security))
                    return;

                realTimeTradeEmulation.RegisterSecurity(security);
                realTimeTradeEmulation.RegisterTrades(security);
                realTimeTradeEmulation.RegisterPortfolio(portfolio);

                realTimeTradeEmulation.RegisterMarketDepth(security);
                realTimeTradeEmulation.RegisterMarketDepth(new TrendMarketDepthGenerator(realTimeTradeEmulation.GetSecurityId(security))
                {
                    Interval = TimeSpan.FromMilliseconds(30),
                    MaxAsksDepth = 10,
                    MaxBidsDepth = 10,
                    UseTradeVolume = true,
                    MaxVolume = 100,
                    MinSpreadStepCount = 2,  // минимальный генерируемый спред - 2 минимальных шага цены
                    MaxSpreadStepCount = 2, // не генерировать спрэд между лучшим бид и аск больше чем 5 минимальных шагов цены - нужно чтобы при генерации из свечей не получалось слишком широкого спреда.
                    MaxPriceStepCount = 2	// максимальное количество шагов между ценами,
                });
            };

            realTimeTradeEmulation.NewPortfolios += myPortfolios =&amp;gt; this.GuiAsync(() =&amp;gt; _portfolios.Portfolios.AddRange(myPortfolios));
            realTimeTradeEmulation.NewStopOrders += stopOrders =&amp;gt; this.GuiAsync(() =&amp;gt; _orders.Orders.AddRange(stopOrders));
            realTimeTradeEmulation.NewOrders += orders =&amp;gt; this.GuiAsync(() =&amp;gt; _orders.Orders.AddRange(orders));

            realTimeTradeEmulation.NewMyTrades += trades =&amp;gt; this.GuiAsync(() =&amp;gt;
            {
                instruments.ForEach(elem =&amp;gt;
                {
                    if (elem.isFormed)
                    {
                        var currentElemTrades = trades.Where(t =&amp;gt; elem.strategy.Orders.Any(o =&amp;gt; o == t.Order));
                        this.GuiAsync(() =&amp;gt; _trades.Trades.AddRange(currentElemTrades));

                        currentElemTrades.ToList().ForEach(strategyTrade =&amp;gt;
                        {
                            var tradeTime = elem.strategy.lastWorkedCandle == null ? strategyTrade.Order.Time : elem.strategy.lastWorkedCandle.OpenTime;
                            this.GuiAsync(() =&amp;gt; elem.chart.ProcessValues(tradeTime, new Dictionary&amp;lt;IChartElement, object&amp;gt; { { elem.tradesIndicator, strategyTrade } }));
                        });
                    }
                });
            });

            realTimeTradeEmulation.StateChanged += (oldState, newState) =&amp;gt;
            {
                if (realTimeTradeEmulation.State == EmulationStates.Stopped)
                {
                    this.GuiAsync(() =&amp;gt;
                    {
                        if (realTimeTradeEmulation.IsFinished)
                            MessageBox.Show(&amp;quot;Закончено&amp;quot;);
                        else
                            MessageBox.Show(&amp;quot;Отменено&amp;quot;);
                    });
                }
                else if (realTimeTradeEmulation.State == EmulationStates.Started)
                {
                    realtimeCandleManager.Processing += (s, candle) =&amp;gt;
                    {
                        if (candle.State == CandleStates.Finished)
                            _buffer.Add(candle);
                    };

                    realtimeCandleManager.Start(instruments.First().series);
                    instruments.First().strategy.Start();
                }
            };

            realTimeTradeEmulation.Connect();
            realTimeTradeEmulation.StartExport();

            realtimeCandleManager = new CandleManager(realTimeTradeEmulation);

            CreateStrategyFromInstrument(security, instruments.First().strategyParams, instruments.First(), portfolio);

            realTimeTradeEmulation.Start(From, To);
        }

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&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;

        private void CreateStrategyFromInstrument(Security currentSecurity, StrategyParameters currentParams, InstrumentDescription instrument, Portfolio portfolio)
        {
            instrument.portfolio = portfolio;

            realTimeTradeEmulation.TransactionAdapter.SendInMessage(instrument.portfolio.ToMessage());
            realTimeTradeEmulation.TransactionAdapter.SendInMessage(new PortfolioChangeMessage
            {
                PortfolioName = instrument.portfolio.Name
            }.Add(PositionChangeTypes.BeginValue, instrument.portfolio.BeginValue));

            instrument.series = new CandleSeries(typeof(RangeCandle), currentSecurity, new Unit((decimal)instrument.strategyParams.candleSize));
            instrument.strategy = new StockBotStrategy(instrument.series, currentParams)
            {
                Volume = 1,
                Security = currentSecurity,
                Portfolio = instrument.portfolio,
                Connector = realTimeTradeEmulation,
            };

            instrument.strategy.Log += OnLog;

            TabItem addedItem;
            stockCharts.Items.Add(addedItem = new TabItem() { Header = currentParams.name, Content = new Chart() });

            instrument.chart = (Chart)addedItem.Content;

            if (((Chart)addedItem.Content).Areas.IsEmpty())
                ((Chart)addedItem.Content).Areas.Add(new ChartArea());

            instrument.area = ((Chart)addedItem.Content).Areas.Last();
               
            instrument.area.Elements.Add(instrument.candleElem = new ChartCandleElement());            

            #region new filters

            instrument.area.Elements.Add(instrument.kalmanExt = new ChartIndicatorElement()
                                        {
                                            Indicator = (IIndicator)instrument.strategy.kalmanSeries,
                                            Title = &amp;quot;Фильтр Калмана&amp;quot;,
                                            Color = Colors.Black,
                                        });

            instrument.area.Elements.Add(instrument.bBandUpExt = new ChartIndicatorElement()
                                        {
                                            Indicator = (IIndicator)instrument.strategy.upperBandExt,
                                            Title = &amp;quot;Верхняя линия Боллинджера&amp;quot;,
                                            Color = Colors.Blue,
                                        });

            instrument.area.Elements.Add(instrument.bBandDownExt = new ChartIndicatorElement()
                                        {
                                            Indicator = (IIndicator)instrument.strategy.lowerBandExt,
                                            Title = &amp;quot;Нижняя линия Боллинджера&amp;quot;,
                                            Color = Colors.Blue,
                                        });

            instrument.area.Elements.Add(instrument.tradesIndicator = new ChartTradeElement()
                                        {
                                            BuyColor = Colors.Green,
                                            SellColor = Colors.Red,
                                            IsLegend = true,
                                        });

            #endregion            

            ((TabItem)(stockCharts.Items.GetItemAt(0))).Focus();

            instrument.strategy.strategyTimeStarting = DateTime.Now;
            instrument.isFormed = true;
        }

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Заранее признателен, уже замучился искать, почему у меня историческая эмуляшка не отрабатывает...</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4593/</id>
    <title type="text">Bug: После AttachOrder не работает order.GetTrades()</title>
    <published>2014-06-27T15:01:20Z</published>
    <updated>2014-06-27T15:01:20Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.ru/users/38961/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">После успешной загрузки ордеров с помощью AttachOrder (появляются ордера в Orders и сделки в MyTrades) не работает order.GetTrades() для подгруженных ордеров.&lt;br /&gt;Приходится использовать MyTrades.Filter(order)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4590/</id>
    <title type="text">Отличия в новой версии 4.2.3.14!!!!!!!</title>
    <published>2014-06-25T15:30:18Z</published>
    <updated>2014-06-25T15:30:18Z</updated>
    <author>
      <name>molasar</name>
      <uri>https://stocksharp.ru/users/16583/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Где можно посмотреть отличия новой версии от предыдущих?????&lt;br /&gt;Запускаю старый проект в новой версии выдает:&lt;br /&gt;&lt;br /&gt;1. StockSharp.BusinessEntities.Order&amp;quot; не содержит определение для &amp;quot;Trader&amp;quot;&lt;br /&gt;2. OrderDirections&amp;quot; не существует в текущем контексте.&lt;br /&gt;&lt;br /&gt;Код:&lt;br /&gt;var order = new Order&lt;br /&gt;                {&lt;br /&gt;                    Trader = _trader,&lt;br /&gt;                    Portfolio = (Portfolio)Portfolios.SelectedItem,&lt;br /&gt;                    Security = (Security)Securitites.SelectedItem,&lt;br /&gt;                    Volume = VolumeValue,&lt;br /&gt;                    Price = Last_Trade_Price2,&lt;br /&gt;                    Direction = OrderDirections.Buy&lt;br /&gt;                };&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Очень прошу ответить!!!!</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4589/</id>
    <title type="text">Обновление библиотек</title>
    <published>2014-06-25T14:29:01Z</published>
    <updated>2014-06-25T14:29:01Z</updated>
    <author>
      <name>molasar</name>
      <uri>https://stocksharp.ru/users/16583/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Добрый день!&lt;br /&gt;&lt;br /&gt;В июне 2014 года вышла новая версия StockSharp.&lt;br /&gt;Как правильно обновить старые файлы с библиотеками на новые в проекте?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Антон.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4586/</id>
    <title type="text">Ошибка при попытке сохранить ордера и сделки с помощью SettingsStorage</title>
    <published>2014-06-24T09:26:30Z</published>
    <updated>2014-06-24T09:26:30Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.ru/users/38961/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Нужно сохранять ордера и сделки для среднесрочной стратегии&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;

            storage = new SettingsStorage();
            
            var orderDictionary = new Dictionary&amp;lt;Order, IEnumerable&amp;lt;MyTrade&amp;gt;&amp;gt;();
            foreach (var order in Orders)
            {
                orderDictionary.Add(order, order.GetTrades());
            }
            if (storage.ContainsKey(&amp;quot;Orders&amp;quot;))
                storage[&amp;quot;Orders&amp;quot;] = orderDictionary;
            else
                storage.Add(&amp;quot;Orders&amp;quot;, orderDictionary);

            var xmlSerializer = new XmlSerializer&amp;lt;SettingsStorage&amp;gt;();
            xmlSerializer.Serialize(storage, Name + &amp;quot;_settings.xml&amp;quot;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;xmlSerializer.Serialize выбрасывает Exception&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:plain"&gt;
&amp;quot;Resolution of the dependency failed, type = \&amp;quot;Ecng.Serialization.IStorage\&amp;quot;, name = \&amp;quot;(none)\&amp;quot;.\r\n
Exception occurred while: while resolving.\r\n
Exception is: InvalidOperationException - The current type, Ecng.Serialization.IStorage, is an interface and cannot be constructed. Are you missing a type mapping?\r\n
-----------------------------------------------\r\n
At the time of the exception, the container was:\r\n
\r\n
Resolving Ecng.Serialization.IStorage,(none)\r\n&amp;quot;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Exeption snaphsot: &lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAACpWq9JR7T9Gim7RYcovatg8gAyFLhw6aw0YdIapBzETQ" title="http://i.imgur.com/cIwbBMA.png
"&gt;http://i.imgur.com/cIwbBMA.png
&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Данный способ подсмотрел вот тут: &lt;a href="http://stocksharp.com/posts/m/26336/
" title="http://stocksharp.com/posts/m/26336/
"&gt;http://stocksharp.com/posts/m/26336/
&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Подскажите, пожалуйста, как с этим справиться?</content>
  </entry>
</feed>