﻿<?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">Ошибка в методе Trader.CandleSeriesProcessing</title>
  <id>~/topic/10236/oshibka-v-metode-trader_candleseriesprocessing/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-27T03:24:54Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=10236" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/46061/</id>
    <title type="text">Добрый день Хранилище StorageRegistry.GetSecurityStorage является устаревшим.</title>
    <published>2018-12-24T20:28:55Z</published>
    <updated>2018-12-24T20:28:55Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день &lt;br /&gt;&lt;br /&gt;Хранилище StorageRegistry.GetSecurityStorage является устаревшим.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/46028/</id>
    <title type="text">А Connector не примет хранилище на базе CSV, как раньше принимал CandleManager? По второму, да у мен...</title>
    <published>2018-12-20T20:27:32Z</published>
    <updated>2018-12-20T20:27:32Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mike144 &lt;a href="https://stocksharp.ru/posts/m/46022/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;А Connector не примет хранилище на базе CSV, как раньше принимал CandleManager? &lt;br /&gt;&lt;br /&gt;По второму, да у меня файл с инструментами instruments.csv (он есть в мини-примере в папке Hystory). &lt;br /&gt;Но там формат другой: RIZ8@FORTS;Future;0;10;;1;RIZ8;;RTS@FORTS;;RUB;; (получается вызовом метода _storage.GetSecurityStorage().Save(security, true))&lt;br /&gt;А в файле, который вы прислали формат: RIZ8@FORTS;RIZ8;RIZ8;;;FORTS;;10;;;0;;;;;;;;;;;;;;;;;;;;; (вроде, в таком формате Hydra сохраняет инструменты)&lt;br /&gt;Объясните, пожалуйста, разницу.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&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/46022/</id>
    <title type="text">А Connector не примет хранилище на базе CSV, как раньше принимал CandleManager? По второму, да у мен...</title>
    <published>2018-12-20T14:28:23Z</published>
    <updated>2018-12-20T14:28:23Z</updated>
    <author>
      <name>Mike144</name>
      <uri>https://stocksharp.ru/users/97391/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">А Connector не примет хранилище на базе CSV, как раньше принимал CandleManager? &lt;br /&gt;&lt;br /&gt;По второму, да у меня файл с инструментами instruments.csv (он есть в мини-примере в папке Hystory). &lt;br /&gt;Но там формат другой: RIZ8@FORTS;Future;0;10;;1;RIZ8;;RTS@FORTS;;RUB;; (получается вызовом метода _storage.GetSecurityStorage().Save(security, true))&lt;br /&gt;А в файле, который вы прислали формат: RIZ8@FORTS;RIZ8;RIZ8;;;FORTS;;10;;;0;;;;;;;;;;;;;;;;;;;;; (вроде, в таком формате Hydra сохраняет инструменты)&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/46020/</id>
    <title type="text">1) Как ранее вам написал, вы использовали хранилище SQLite. Оно требует дополнительных настроек. Хра...</title>
    <published>2018-12-20T13:08:05Z</published>
    <updated>2018-12-20T13:08:05Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">1) Как ранее вам написал, вы использовали хранилище SQLite. Оно требует дополнительных настроек. Хранилище на базе CSV не требует настроек.&lt;br /&gt;2) Видимо у вас откуда то ещё грузится информация об инструментах.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/46014/</id>
    <title type="text">Спасибо! Дайте, пожалуйста, еще пару пояснений по пунктам: 1) Да, добавил путь, Init() и хранилище п...</title>
    <published>2018-12-19T17:35:21Z</published>
    <updated>2018-12-19T17:35:21Z</updated>
    <author>
      <name>Mike144</name>
      <uri>https://stocksharp.ru/users/97391/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Спасибо! Дайте, пожалуйста, еще пару пояснений по пунктам:&lt;br /&gt;1) Да, добавил путь, Init() и хранилище подключилось, свечи пошли. Не совсем понимаю, для чего нужны CsvEntityRegistry и SnapshotRegistry. Ну, и, если приоткроете какие были предпосылки для такого перехода, буду очень признателен.&lt;br /&gt;2) Все работало без этого файла (и работает, после применения пункта 1). Тут тоже не понимаю, зачем он нужен, что делает и точно ли он нужен?&lt;br /&gt;3) Бывает, их путаю[laugh]</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/46013/</id>
    <title type="text">Добрый день 1) Инициализация хранилища теперь выглядит таким образом (в вашем случае использовалось ...</title>
    <published>2018-12-19T16:36:20Z</published>
    <updated>2018-12-19T16:36:20Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день&lt;br /&gt;&lt;br /&gt;1) Инициализация хранилища теперь выглядит таким образом (в вашем случае использовалось хранилище, основанное на SQLite):&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;storage = new StorageRegistry();&lt;br /&gt;                var path = System.IO.Path.GetFullPath(@&amp;quot;C:\Users\KalDarckli\Desktop\Hystory&amp;quot;);&lt;br /&gt;                ((LocalMarketDataDrive)storage.DefaultDrive).Path = path;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;            var er = new CsvEntityRegistry(path);&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;            er.Init();&lt;br /&gt;&lt;br /&gt;                var security = er.Securities.LookupByCode(&amp;quot;RIZ8&amp;quot;).First();&lt;br /&gt;               &lt;br /&gt;                var candles = storage.GetCandleStorage(typeof(TimeFrameCandle), security, TimeSpan.FromTicks(1));&lt;br /&gt;                From_d.Value = candles.Dates.First();&lt;br /&gt;                To_d.Value = candles.Dates.Last();&lt;br /&gt;&lt;br /&gt;                candleSeries = new CandleSeries(typeof(TimeFrameCandle), security, TimeSpan.FromTicks(1));&lt;br /&gt;                &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;            SnapshotRegistry sr = new SnapshotRegistry(path);&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;            sr.Init();&lt;br /&gt;&lt;br /&gt;                connector.InitializeStorage(er, storage, sr);&lt;br /&gt;                connector.CandleSeriesProcessing += Connector_CandleSeriesProcessing;&lt;br /&gt;                connector.SubscribeCandles(candleSeries, (DateTime)From_d.Value, (DateTime)To_d.Value);&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;2) У вас отсуствует файл с мета-информацией по инструментам. Приложен к данному сообщению. Его необходимо записать в директорию, где присутсвует файл instruments.csv&lt;br /&gt;&lt;br /&gt;3) У вас неправильно написано обработчик свечей. Поле CloseVolume опциональное, и заполняется в редких случаях.&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;private void Connector_CandleSeriesProcessing(CandleSeries arg1, Candle candle)&lt;br /&gt;        {&lt;br /&gt;            sum += candle.TotalVolume;&lt;br /&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/46011/</id>
    <title type="text">Проблема: Переход от CandleManager к Connector для работы со свечами. После подписки на новые свечи ...</title>
    <published>2018-12-19T14:00:57Z</published>
    <updated>2018-12-19T14:00:57Z</updated>
    <author>
      <name>Mike144</name>
      <uri>https://stocksharp.ru/users/97391/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Проблема:&lt;br /&gt;&lt;br /&gt;Переход от CandleManager к Connector для работы со свечами.&lt;br /&gt;После подписки на новые свечи Trader.CandleSeriesProcessing += Connector_CandleSeriesProcessing ничего не происходит.&lt;br /&gt;После подключения логирования выловилась ошибка:&lt;br /&gt;&lt;br /&gt;&amp;quot;System.NotImplementedException: Метод или операция не реализована.&lt;br /&gt;в Ecng.Serialization.InMemoryStorage.GetBy[TEntity](SerializationItemCollection by)&lt;br /&gt;в Ecng.Serialization.RelationManyList`1.OnGet(SerializationItemCollection by)&lt;br /&gt;в Ecng.Serialization.RelationManyList`1.Read(SerializationItem by)&lt;br /&gt;в Ecng.Serialization.RelationManyList`1.ReadById(Object id)&lt;br /&gt;в StockSharp.Algo.Storages.StorageHelper.ReadBySecurityId(IStorageEntityList`1 securities, SecurityId securityId)&lt;br /&gt;в StockSharp.Algo.Storages.StorageMessageAdapter.GetSecurity(SecurityId securityId)&lt;br /&gt;в StockSharp.Algo.Storages.StorageMessageAdapter.GetTimeFrameCandleMessageStorage(SecurityId securityId, TimeSpan timeFrame, Boolean allowBuildFromSmallerTimeFrame)&lt;br /&gt;в StockSharp.Algo.Storages.StorageMessageAdapter.LoadMessages(MarketDataMessage msg, Nullable`1 from, Nullable`1 to, Int64 transactionId)&lt;br /&gt;в StockSharp.Algo.Storages.StorageMessageAdapter.ProcessMarketDataRequest(MarketDataMessage msg)&lt;br /&gt;в StockSharp.Algo.Storages.StorageMessageAdapter.SendInMessage(Message message)&lt;br /&gt;в StockSharp.Messages.MessageAdapterWrapper.SendInMessage(Message message)&lt;br /&gt;в StockSharp.Algo.FilteredMarketDepthAdapter.SendInMessage(Message message)&lt;br /&gt;в StockSharp.Algo.Connector.InMessageChannelOnNewOutMessage(Message message)&lt;br /&gt;в StockSharp.Messages.InMemoryMessageChannel.OnNewOut(KeyValuePair`2 item)&lt;br /&gt;в Ecng.Collections.BaseInMemoryChannel`1.&amp;lt;Open&amp;gt;b__16_1()&amp;quot;&lt;br /&gt;_____________________________________________________&lt;br /&gt;&lt;br /&gt;Пробовалось:&lt;br /&gt;&lt;br /&gt;Передать в CandleManager экземпляр коннектора, чтобы получать свечи по-старому. Результат тот же.&lt;br /&gt;Создать реальный коннектор  QuikTrader, с подключением. Безрезультатно.&lt;br /&gt;&lt;br /&gt;API 4.14.15, с форматом свечей и инструментов проблем нет(перечисляются, считаются и тп).&lt;br /&gt;Мини-пример в приложении.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>