﻿<?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">HydraServer - получение списка инструментов</title>
  <id>~/topic/8442/hydraserver---poluchenie-spiska-instrumentov/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-24T09:43:08Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=8442" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/40560/</id>
    <title type="text">Да, спасибо, обновление API помогло. Теперь действительно 4 параметра и пример из справки компилируе...</title>
    <published>2017-08-01T14:11:42Z</published>
    <updated>2017-08-01T14:11:42Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Да, спасибо, обновление API помогло.&lt;br /&gt;Теперь действительно 4 параметра и пример из справки компилируется и работает!</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40547/</id>
    <title type="text">На версии 4.3.25 у меня все работает как описано в документации. Полный код using System; using Syst...</title>
    <published>2017-07-31T16:30:31Z</published>
    <updated>2017-07-31T16:30:31Z</updated>
    <author>
      <name>Иван З.</name>
      <uri>https://stocksharp.ru/users/6502/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">На версии 4.3.25 у меня все работает как описано в документации. Полный код&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_2eaf13088b474592a82cfd4f4d22d6d9');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_2eaf13088b474592a82cfd4f4d22d6d9' style='display:none'&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Security;&lt;br /&gt;using Ecng.Common;&lt;br /&gt;using StockSharp.Algo.History.Hydra;&lt;br /&gt;using StockSharp.Algo.Storages;&lt;br /&gt;using StockSharp.BusinessEntities;&lt;br /&gt;&lt;br /&gt;namespace GttSecurity&lt;br /&gt;{&lt;br /&gt;    class Program&lt;br /&gt;    {&lt;br /&gt;        static void Main(string[] args)&lt;br /&gt;        {&lt;br /&gt;            var storageRegistry = new StorageRegistry();&lt;br /&gt;            var client = new RemoteStorageClient(new InMemoryExchangeInfoProvider(), new Uri(&amp;quot;net.tcp://localhost:8000&amp;quot;))&lt;br /&gt;            {&lt;br /&gt;                Credentials = { AutoLogon = true, Email = &amp;quot;hydra_user&amp;quot;, Password = &amp;quot;qwerty&amp;quot;.To&amp;lt;SecureString&amp;gt;() },&lt;br /&gt;            };&lt;br /&gt;&lt;br /&gt;            //Get all Securities&lt;br /&gt;            client.Refresh(storageRegistry.GetSecurityStorage(), new Security(), s =&amp;gt; { }, () =&amp;gt; false);&lt;br /&gt;            var allSecurity = storageRegistry.GetSecurityStorage().Lookup(new Security());&lt;br /&gt;&lt;br /&gt;            foreach (var secc in allSecurity)&lt;br /&gt;            {&lt;br /&gt;                Console.Write(secc + &amp;quot;; &amp;quot;);&lt;br /&gt;            }&lt;br /&gt;            Console.WriteLine();&lt;br /&gt;            Console.ReadLine();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;1) В первый раз он получает инструменты достаточно долго, если у вас много инструментов то может занять минут 5 или больше. При последующих подключениях практически сразу. Если у вас в гидре &lt;b&gt;периодически &lt;/b&gt;появляется сообщение &lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;HydraServer	07/31/2017 23:19:34 +10:00	Info	Сессия 484f979e-6806-4d6e-84d5-52f1da98ba10. Получение инструментов.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Все хорошо, просто подождите еще минут 5, вы на правильном пути.&lt;br /&gt;2) Возможно у вас старая версия API или Гидры.&lt;br /&gt;3) Вы не настроили Гидру. В примере документации подключение к локальному юзеру. Как настроить описано тут &lt;a href="http://doc.stocksharp.ru/html/7d845e99-6bde-437e-b7f4-059be0438894.htm " title="http://doc.stocksharp.ru/html/7d845e99-6bde-437e-b7f4-059be0438894.htm "&gt;http://doc.stocksharp.ru...e-b7f4-059be0438894.htm &lt;/a&gt;&lt;br /&gt;У меня 4 параметра тоже, от куда вы взяли 5...</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40544/</id>
    <title type="text">В документации 4 параметра, так как в последнем релизе их 4. Обновите API. </title>
    <published>2017-07-31T12:41:33Z</published>
    <updated>2017-07-31T12:41:33Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">В документации 4 параметра, так как в последнем релизе их 4. Обновите API.&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/40521/</id>
    <title type="text">Да, занимаемся.</title>
    <published>2017-07-28T12:17:54Z</published>
    <updated>2017-07-28T12:17:54Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Да, занимаемся.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40520/</id>
    <title type="text">Добрый день! Решением моего вопроса кто-нибудь занимается?</title>
    <published>2017-07-28T10:44:14Z</published>
    <updated>2017-07-28T10:44:14Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день!&lt;br /&gt;Решением моего вопроса кто-нибудь занимается?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40507/</id>
    <title type="text">Разумеется выводится, я специально сделал этот вывод, чтобы показать, что инструмент существует. НО!...</title>
    <published>2017-07-26T13:05:13Z</published>
    <updated>2017-07-26T13:05:13Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Разумеется выводится, я специально сделал этот вывод, чтобы показать, что инструмент существует.&lt;br /&gt;НО! Это вывод через переменную типа RemoteStorageClient, которая предназначена только для коннекта и с которой нельзя дальше работать.&lt;br /&gt;А вот через переменную типа StorageRegistry ничего не выводится. Хотя именно она предназначена для дальнейшей работы с данными.&lt;br /&gt;&lt;br /&gt;Пожалуйста покажите, как мне получить список инструментов через StorageRegistry.&lt;br /&gt;Как мне их поместить в переменную allSecurity?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40505/</id>
    <title type="text">У вас выводится 1 инструмент.</title>
    <published>2017-07-26T12:39:36Z</published>
    <updated>2017-07-26T12:39:36Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">У вас выводится 1 инструмент.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40503/</id>
    <title type="text">Спасибо, но, к сожалению, все равно не работает. Вот полный код программы: using System; using Stock...</title>
    <published>2017-07-25T19:47:44Z</published>
    <updated>2017-07-25T19:47:44Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Спасибо, но, к сожалению, все равно не работает.&lt;br /&gt;Вот полный код программы:&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_0718c469a64348b19cb6ba1cc4c80fca');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_0718c469a64348b19cb6ba1cc4c80fca' style='display:none'&gt;using System;&lt;br /&gt;using StockSharp.BusinessEntities;&lt;br /&gt;using Ecng.Common;&lt;br /&gt;using StockSharp.Algo.History.Hydra;&lt;br /&gt;using StockSharp.Algo.Storages;&lt;br /&gt;using System.Security;&lt;br /&gt;using StockSharp.Messages;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;&lt;br /&gt;namespace ConsoleWorkWithHydra&lt;br /&gt;{&lt;br /&gt;    class Program&lt;br /&gt;    {&lt;br /&gt;        static void Main(string[] args)&lt;br /&gt;        {&lt;br /&gt;            //Подключение к Гидре&lt;br /&gt;            var client = new RemoteStorageClient(new Uri(&amp;quot;net.tcp://localhost:8000&amp;quot;))&lt;br /&gt;            {&lt;br /&gt;                Credentials = { AutoLogon = true, Email = &amp;quot;hydra_user&amp;quot;, Password = &amp;quot;qwerty&amp;quot;.To&amp;lt;SecureString&amp;gt;() },&lt;br /&gt;            };&lt;br /&gt;&lt;br /&gt;            //получение всех инструментов&lt;br /&gt;            var imnis = new InMemoryNativeIdStorage();&lt;br /&gt;            var storageRegistry = new StorageRegistry();&lt;br /&gt;            client.Refresh(&lt;br /&gt;                storageRegistry.GetSecurityStorage(),&lt;br /&gt;                imnis,&lt;br /&gt;                new Security(),&lt;br /&gt;                s =&amp;gt; Console.WriteLine(s.Id),&lt;br /&gt;                () =&amp;gt; false);&lt;br /&gt;            var allSecurity = storageRegistry.GetSecurityStorage().Lookup(new Security());&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;            //проверка, что инструменты все-таки есть&lt;br /&gt;            Console.WriteLine(&amp;quot;============================&amp;quot;);&lt;br /&gt;            var securityIds = new List&amp;lt;SecurityId&amp;gt;(client.AvailableSecurities);&lt;br /&gt;            foreach (var item in securityIds)&lt;br /&gt;            {&lt;br /&gt;                Console.WriteLine(item.SecurityCode + &amp;quot;@&amp;quot; + item.BoardCode);&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            Console.ReadKey();&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&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/40501/</id>
    <title type="text">var imnis = new InMemoryNativeIdStorage(); //не понимаю, что это такое, но переменную данного типа н...</title>
    <published>2017-07-25T15:53:02Z</published>
    <updated>2017-07-25T15:53:02Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;var imnis = new InMemoryNativeIdStorage(); //не понимаю, что это такое, но переменную данного типа надо передать, чтобы программа скомпилировалась&lt;br /&gt;var storageRegistry = new StorageRegistry();&lt;br /&gt;client.Refresh(&lt;br /&gt;storageRegistry.GetSecurityStorage(),&lt;br /&gt;imnis,&lt;br /&gt;new Security(),&lt;br /&gt;s =&amp;gt; Console.WriteLine(s.Id),&lt;br /&gt;() =&amp;gt; false);&lt;br /&gt;var allSecurity = storageRegistry.GetSecurityStorage().Lookup(new Security());&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40500/</id>
    <title type="text">Я не понимаю, что это значит и как его отслеживать. Можно работающий пример?</title>
    <published>2017-07-25T13:25:24Z</published>
    <updated>2017-07-25T13:25:24Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Я не понимаю, что это значит и как его отслеживать.&lt;br /&gt;Можно работающий пример?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40499/</id>
    <title type="text">Отслеживайте обработчик s =&amp;gt; { }</title>
    <published>2017-07-25T13:15:19Z</published>
    <updated>2017-07-25T13:15:19Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Отслеживайте обработчик s =&amp;gt; { }</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40498/</id>
    <title type="text">В логе Гидры ошибок нет: Создание для юзера..., Поиск инструментов, Получение инструментов.</title>
    <published>2017-07-25T12:21:30Z</published>
    <updated>2017-07-25T12:22:23Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">В логе Гидры ошибок нет:&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/40496/</id>
    <title type="text">В Гидре при этом что-то пишется в лог? Есть ли ошибки на клиентской стороне?</title>
    <published>2017-07-25T11:48:37Z</published>
    <updated>2017-07-25T11:48:37Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">В Гидре при этом что-то пишется в лог? Есть ли ошибки на клиентской стороне?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/40487/</id>
    <title type="text">Добрый день! Не получается получить список инструментов из Гидры через HydraServer. Пример, взятый и...</title>
    <published>2017-07-24T19:54:03Z</published>
    <updated>2017-07-24T19:54:03Z</updated>
    <author>
      <name>Simen</name>
      <uri>https://stocksharp.ru/users/96216/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день!&lt;br /&gt;&lt;br /&gt;Не получается получить список инструментов из Гидры через HydraServer.&lt;br /&gt;Пример, взятый из официальной документации (&lt;a href="http://doc.stocksharp.ru/html/f143c9e7-d5a6-4464-9b01-18117183cc7a.htm" title="http://doc.stocksharp.ru/html/f143c9e7-d5a6-4464-9b01-18117183cc7a.htm"&gt;http://doc.stocksharp.ru/html/f...64-9b01-18117183cc7a.htm&lt;/a&gt;) &lt;b&gt;не работает&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;br /&gt;var storageRegistry = new StorageRegistry();&lt;br /&gt;client.Refresh(storageRegistry.GetSecurityStorage(), new Security(), s =&amp;gt; { }, () =&amp;gt; false);&lt;br /&gt;var allSecurity = storageRegistry.GetSecurityStorage().Lookup(new Security());&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;А именно: в примере не совпадает количество параметров, которое реальное требуется в &lt;b&gt;client.Refresh&lt;/b&gt;. В примере их 4, а нужно 5.&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;br /&gt;            var imnis = new InMemoryNativeIdStorage(); //не понимаю, что это такое, но переменную данного типа надо передать, чтобы программа скомпилировалась&lt;br /&gt;            var storageRegistry = new StorageRegistry();&lt;br /&gt;            client.Refresh(&lt;br /&gt;                storageRegistry.GetSecurityStorage(),&lt;br /&gt;                imnis,&lt;br /&gt;                new Security(),&lt;br /&gt;                s =&amp;gt; { },&lt;br /&gt;                () =&amp;gt; false);&lt;br /&gt;            var allSecurity = storageRegistry.GetSecurityStorage().Lookup(new Security());&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Этот код тоже не работает - в allSecurity ничего не передается (0 элементов),&lt;br /&gt;хотя в &lt;b&gt;client.AvailableSecurities&lt;/b&gt; есть элементы, и я могу их получить так&lt;br /&gt;var securityIds = new List&amp;lt;SecurityId&amp;gt;(client.AvailableSecurities);&lt;br /&gt;&lt;br /&gt;Подскажите пожалуйста, как все-таки получить все инструменты из Гидры?&lt;br /&gt;Спасибо!</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>