﻿<?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">HistoryEmulationConnector для двух инструментов</title>
  <id>~/topic/8368/historyemulationconnector-dlya-dvuh-instrumentov/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-19T06:09:41Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=8368" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/40349/</id>
    <title type="text">ок </title>
    <published>2017-07-12T13:52:42Z</published>
    <updated>2017-07-12T13:52:42Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</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/40337/</id>
    <title type="text">Поля в candleseries Снимок.PNG Код пришлю на почту info@stocksharp.com, т.к. он содержит алгоритмы, ...</title>
    <published>2017-07-11T19:57:56Z</published>
    <updated>2017-07-11T19:57:56Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Поля в candleseries
&lt;img src="/file/104572/Снимок.PNG" alt="Снимок.PNG" /&gt;&lt;/p&gt;
&lt;p&gt;Код пришлю на почту info@stocksharp.com, т.к. он содержит алгоритмы, которые у вас находятся не в открытом доступе&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40334/</id>
    <title type="text">Весь код пришлите... </title>
    <published>2017-07-11T19:10:39Z</published>
    <updated>2017-07-11T19:10:39Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</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/40333/</id>
    <title type="text">Ошибка когда вы серию создаете... Проверьте все ли поля в candleseries инициализированы... </title>
    <published>2017-07-11T19:09:12Z</published>
    <updated>2017-07-11T19:09:12Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Ошибка когда вы серию создаете... Проверьте все ли поля в candleseries инициализированы...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40331/</id>
    <title type="text">Возможно, я что-то путаю с созданием коннектора var connector = new HistoryEmulationConnector(sec, n...</title>
    <published>2017-07-11T18:53:56Z</published>
    <updated>2017-07-11T18:53:56Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p portfolio=""&gt;Возможно, я что-то путаю с созданием коннектора
var connector = new HistoryEmulationConnector(sec, new[] )
{
EmulationAdapter =
{
Emulator =
{
Settings =
{
// match order if historical price touched our limit order price.
// It is terned off, and price should go through limit order price level
// (more &amp;quot;severe&amp;quot; test mode)
MatchOnTouch = false,
}
}
},&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;                CreateDepthFromOrdersLog = emulationInfo.IsUseOrderLog,
                CreateTradesFromOrdersLog = emulationInfo.IsUseOrderLog,

                HistoryMessageAdapter =
                {
                    StorageRegistry = storageRegistry,

					// set history range
					StartDate = startTime,
                    StopDate = stopTime,

                    OrderLogMarketDepthBuilders =
                    {
                        //{
                        //    secId,
                        //    LocalizedStrings.ActiveLanguage == Languages.Russian
                        //        ? (IOrderLogMarketDepthBuilder)new PlazaOrderLogMarketDepthBuilder(secId)
                        //        : new ItchOrderLogMarketDepthBuilder(secId)
                        //}
                    }
                },

                // set market time freq as time frame
                MarketTimeChangedInterval = timeFrame,
            };
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Пример создания взят из gitHub
Данный для одного инструмента работает, для 2-х - нет&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40329/</id>
    <title type="text">Снимок1.PNGСнимок2.PNG var sec = new List { security1, security2 }; var connector = new HistoryEmula...</title>
    <published>2017-07-10T20:00:40Z</published>
    <updated>2017-07-10T20:00:40Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;&lt;img src="/file/104569/Снимок1.PNG" alt="Снимок1.PNG" /&gt;&lt;img src="/file/104570/Снимок2.PNG" alt="Снимок2.PNG" /&gt;&lt;/p&gt;
&lt;p portfolio=""&gt;var sec = new List&amp;lt;Security&amp;gt; { security1, security2 };
var connector = new HistoryEmulationConnector(sec, new[] )
var seriesSecurity1 = new CandleSeries(typeof(TimeFrameCandle), security1, timeFrame)
{
BuildCandlesMode = emulationInfo.UsedCandleTimeFrame == null ? BuildCandlesModes.Build : BuildCandlesModes.Load
};&lt;/p&gt;
&lt;p portfolio=""&gt;Причём, если использовать только security1, где
var sec = new List&amp;lt;Security&amp;gt; { security1/*, security2 */};
var connector = new HistoryEmulationConnector(sec, new[] )
или только security2
var sec = new List&amp;lt;Security&amp;gt; { /*security1, */security2 };
var connector = new HistoryEmulationConnector(sec, new[] ) то исключения не возникает.&lt;/p&gt;
&lt;p&gt;Покажите пример кода, где успешно запускается
candleManager.Start(series),
в котором
var candleManager = new CandleManager((Connector)connector); где connector создан для двух и более инструментов.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40315/</id>
    <title type="text">Ищите какое знание Вы не присвоили... Исключение внимательно посмотрите, может там &amp;quot;нулевое&amp;quot; свойств...</title>
    <published>2017-07-10T13:23:06Z</published>
    <updated>2017-07-10T13:23:06Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Ищите какое знание Вы не присвоили... Исключение внимательно посмотрите, может там &amp;quot;нулевое&amp;quot; свойство упоминается... Может в инструменте площадку не присвоили...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40302/</id>
    <title type="text">И var sec = new Security[] { security1, security2 }; и var sec = new List { security1, security2 }; ...</title>
    <published>2017-07-07T14:25:09Z</published>
    <updated>2017-07-07T14:25:09Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p portfolio=""&gt;И
var sec = new Security[] { security1, security2 };
и
var sec = new List&amp;lt;Security&amp;gt; { security1, security2 };
var connector = new HistoryEmulationConnector(sec, new[] )
выдаёт всё тоже исключение.&lt;/p&gt;
&lt;p&gt;&amp;quot;Просто передаете список :List&amp;lt;Security&amp;gt; или массив Security[] инструментов&amp;quot; - покажите пример кодом, пожалуйста&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40301/</id>
    <title type="text">Просто передаете список :List или массив Security[] инструментов... </title>
    <published>2017-07-07T13:11:32Z</published>
    <updated>2017-07-07T13:11:32Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Просто передаете список :List&lt;Security&gt; или массив Security[] инструментов...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40296/</id>
    <title type="text">var connector = new HistoryEmulationConnector(new List { security1, security2 }, new[] ) или var con...</title>
    <published>2017-07-06T16:30:31Z</published>
    <updated>2017-07-06T16:30:31Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p portfolio=""&gt;var connector = new HistoryEmulationConnector(new List&amp;lt;Security&amp;gt; { security1, security2 }, new[] )
или
var connector = new HistoryEmulationConnector(new[] { security1, security2 }, new[] ) в методе
candleManager.Start(seriesSecurity1); появляется исключение (An exception of type 'System.ArgumentException' occurred in StockSharp.Algo.dll but was not handled in user code Additional information: Серия TimeFrameCandle_SBER@TQBR_00-01-00 не была остановлена.)&lt;/p&gt;
&lt;p security1="" portfolio=""&gt;var connector = new HistoryEmulationConnector(new[] , new[] ) работает.&lt;/p&gt;
&lt;p&gt;Как правильно передать в конструктор HistoryEmulationConnector список инструментов?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40295/</id>
    <title type="text">В конструктор HistoryEmulationConnector передаете список инструментов... Создаете CandleSeries для к...</title>
    <published>2017-07-06T15:07:27Z</published>
    <updated>2017-07-06T15:07:27Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;В конструктор HistoryEmulationConnector передаете список инструментов... Создаете CandleSeries для каждого инструмента. Вызываете метод CandleManager.Start(series) для каждой серии..&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/40293/</id>
    <title type="text">Здравствуйте. Как правильно создать HistoryEmulationConnector для двух инструментов, если candleMana...</title>
    <published>2017-07-05T19:17:58Z</published>
    <updated>2017-07-05T19:27:21Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.com/users/62269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Здравствуйте.
Как правильно создать HistoryEmulationConnector для двух инструментов, если candleManager.Start(this ICandleManager manager, CandleSeries series) только для одного инструмента
var security1 = new Security
{
Id = &amp;quot;SBER@TQBR&amp;quot;,
Code = &amp;quot;SBER&amp;quot;,
Board = _exchangeInfoProvider.GetOrCreateBoard(&amp;quot;TQBR&amp;quot;)
};
var candleManager = new CandleManager((Connector)connector);&lt;/p&gt;
&lt;p&gt;var seriesSecurity1 = new CandleSeries(typeof(TimeFrameCandle), security1, timeFrame)
{
BuildCandlesMode = emulationInfo.UsedCandleTimeFrame == null ? BuildCandlesModes.Build : BuildCandlesModes.Load
};&lt;/p&gt;
&lt;p&gt;var portfolio = new Portfolio
{
Name = &amp;quot;Test Arbitrage Account&amp;quot;,
BeginValue = 1000000,
};&lt;/p&gt;
&lt;p portfolio=""&gt;var connector = new HistoryEmulationConnector(new[] { security1, security2 }, new[] )
{
EmulationAdapter =
{
Emulator =
{
Settings =
{
// match order if historical price touched our limit order price.
// It is terned off, and price should go through limit order price level
// (more &amp;quot;severe&amp;quot; test mode)
MatchOnTouch = false,
}
}
},&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;                CreateDepthFromOrdersLog = emulationInfo.IsUseOrderLog,
                CreateTradesFromOrdersLog = emulationInfo.IsUseOrderLog,

                HistoryMessageAdapter =
                {
                    StorageRegistry = storageRegistry,

					// set history range
					StartDate = startTime,
                    StopDate = stopTime,

                    OrderLogMarketDepthBuilders =
                    {
                        //{
                        //    secId,
                        //    LocalizedStrings.ActiveLanguage == Languages.Russian
                        //        ? (IOrderLogMarketDepthBuilder)new PlazaOrderLogMarketDepthBuilder(secId)
                        //        : new ItchOrderLogMarketDepthBuilder(secId)
                        //}
                    }
                },

                // set market time freq as time frame
                MarketTimeChangedInterval = timeFrame,
            };
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;candleManager.Start(seriesSecurity1); - исключение (An exception of type 'System.ArgumentException' occurred in StockSharp.Algo.dll but was not handled in user code&lt;/p&gt;
&lt;p&gt;Additional information: Серия TimeFrameCandle_SBER@TQBR_00-01-00 не была остановлена.)&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>