﻿<?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</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=forum&amp;page=114</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-16T03:15:30Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=forum&amp;page=114" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/3974/</id>
    <title type="text">Перенос данные от одного инструмента другому</title>
    <published>2013-09-11T05:21:24Z</published>
    <updated>2013-09-11T05:21:24Z</updated>
    <author>
      <name>VoDA</name>
      <uri>https://stocksharp.ru/users/27725/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Вопрос - как программно перенести данные от одного инструмента другому?&lt;/p&gt;
&lt;p&gt;Сделал простейший код, который читает тики из инструментов, генерит свечки и складывает под другим именем.
Все бы хорошо, но при сохранении свечек вылетает ошибка &amp;quot;Инструмент для TimeFrameCandle равен RIZ8@FORTS, а должен быть TESTING@FORTS.&amp;quot; TESTING@FORTS это название тестового инструмента.&lt;/p&gt;
&lt;p&gt;PS делается для создания склеенных свечек по фьючу.&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;            var timeFrame = TimeSpan.FromMinutes(30);

            var tradesSecurity = new Security
                                     {
                                         Id = &amp;quot;RIZ8@FORTS&amp;quot;,
                                         Name = &amp;quot;RIZ8@FORTS&amp;quot;,
                                         Code = &amp;quot;RIZ8@FORTS&amp;quot;,
                                         MinStepPrice = 1,
                                         MinStepSize = 1,
                                         MinPrice = 1,
                                         MaxPrice = 1000000,
                                         ExchangeBoard = ExchangeBoard.Forts,
                                     };
            var candlesSecurity = new Security
                                      {
                                          Id = &amp;quot;TESTING@FORTS&amp;quot;,
                                          Name = &amp;quot;TESTING@FORTS&amp;quot;,
                                          Code = &amp;quot;TESTING@FORTS&amp;quot;,
                                          MinStepPrice = 1,
                                          MinStepSize = 1,
                                          MinPrice = 1,
                                          MaxPrice = 1000000,
                                          ExchangeBoard = ExchangeBoard.Forts,
                                      };

            var tradesRegistry = new StorageRegistry();
            ((LocalMarketDataDrive) tradesRegistry.DefaultDrive).Path = &amp;quot;some path 1&amp;quot;;
            ((LocalMarketDataDrive) tradesRegistry.DefaultDrive).UseAlphabeticPath = true;

            var candlesRegistry = new StorageRegistry();
            ((LocalMarketDataDrive) candlesRegistry.DefaultDrive).Path = &amp;quot;some path 2&amp;quot;;
            ((LocalMarketDataDrive) candlesRegistry.DefaultDrive).UseAlphabeticPath = true;

            var candlesStorage = candlesRegistry.GetCandleStorage(typeof (TimeFrameCandle), candlesSecurity, timeFrame);
            var candleSeries = new CandleSeries(typeof (TimeFrameCandle), candlesSecurity, timeFrame);

            var tradesStorage = tradesRegistry.GetTradeStorage(tradesSecurity);

            var trades = tradesStorage.Load(new DateTime(2008, 11, 01), new DateTime(2008, 11, 05));
            var candles = trades.ToCandles(candleSeries);

            if (candles.Count &amp;gt; 0)
            {
                candlesStorage.Save(candles);
            }
&lt;/code&gt;&lt;/pre&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3973/</id>
    <title type="text">Принципы загрузки данных в Альфа директ</title>
    <published>2013-09-11T04:59:30Z</published>
    <updated>2013-09-11T04:59:30Z</updated>
    <author>
      <name>alun</name>
      <uri>https://stocksharp.ru/users/49773/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">&lt;p&gt;Здравствуйте!&lt;/p&gt;
&lt;p&gt;У меня следующий вопрос по гидре.&lt;/p&gt;
&lt;p&gt;Загружаю маркет данные из альфа директ.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Не понятно каким образом гидра получает список доступных инструментов. Например у меня открыты котировки, графики и стаканы для разных инструментов.
На сколько я понял на графики гидра вообще не реагирует - этих инструментов просто в гидре нет.
Если в АД открыть стакан то инструмент так же не регистрируются в гидре, пока не добавишь инструмент в &amp;quot;котировки&amp;quot; в АД.
Открытая таблица опционов в АД, судя по всему, действует так же как добавление всех опционов в &amp;quot;котировки&amp;quot; - это несколько упрощает жизнь.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Но почему нельзя просто через кнопку &amp;quot;добавить инструменты&amp;quot; в гидре найти и добавить в гидру инструменты не &amp;quot;открытые&amp;quot; в АД?
Неужели в АД нет полного списка, для получения гидрой и дальнейшего поиска в нем?&lt;/p&gt;
&lt;p&gt;При этом что странно, что для того чтобы гидра начала писать стакан, стакан инструмента в АД открывать не обязательно, достаточно просто добавить инструмент в котировки.&lt;/p&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Тики (сделки) грузятся только в том случае, если в АД открыто окно &amp;quot;сделки&amp;quot; для данного инструмента.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Открывать эти окна в ручную в АД для каждого опциона это сущий ад (простите за каламбур).
Существует ли способ подписки гидры на сделки по инструменту без открытия соотвествующих окон в АД?&lt;/p&gt;
&lt;p&gt;Я понимаю что АД далек от совершенства, но возможно я упускаю какой-то важный не очевидный момент в гидре?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3972/</id>
    <title type="text">Загрузка свечек - пример</title>
    <published>2013-09-11T04:50:07Z</published>
    <updated>2013-09-11T04:50:07Z</updated>
    <author>
      <name>VoDA</name>
      <uri>https://stocksharp.ru/users/27725/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Ответ на тему: &lt;a href="http://stocksharp.com/forum/3962/Rabota-so-StorageRegistry/"&gt;http://stocksharp.com/forum/3962/Rabota-so-StorageRegistry/&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Иван предлагает использовать UseCandlesTimeFrame,пользователь esper предлагает через StorageRegistry.GetCandleStorage. Плюс как правильно вывести все это на график?
Во всех примерах Sample, в том числе и в уроках это все реализуется как-то по разному.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Если нужно только загрузить свечи, то код ниже. Это вариация на тему StorageRegistry.GetCandleStorage.&lt;/p&gt;
&lt;p&gt;Код:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
            // хранилище, через которое будет производиться доступ к тиковой и котировочной базе
            var candlesRegistry = new StorageRegistry();

            // изменяем путь, используемый по умолчанию
            ((LocalMarketDataDrive) candlesRegistry.DefaultDrive).Path = &amp;quot;Some path&amp;quot;;

            // используем алфавитное хранилище
            ((LocalMarketDataDrive) candlesRegistry.DefaultDrive).UseAlphabeticPath = true;

            var candlesStorage = candlesRegistry.GetCandleStorage(typeof (TimeFrameCandle), security, timeFrame);

            return candlesStorage.Load(startTime, endTime); 

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;То, что предлагает Иван требуется для прогона стратегии с эмуляцией торговли по данным свечек.&lt;/p&gt;
&lt;p&gt;Как правильно вывести на график зависит от компонента, которым этот график отрисовывается. Код завалялся где то далеко так что сейчас не покажу [flapper]&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3971/</id>
    <title type="text">с FX на биржу</title>
    <published>2013-09-10T23:53:57Z</published>
    <updated>2013-09-10T23:53:57Z</updated>
    <author>
      <name>loop</name>
      <uri>https://stocksharp.ru/users/49839/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">&lt;p&gt;Я имею примерно годовой опыт работы на Форексе, как ни странно плюсовой, но уже четко понял что простым смертным выйти на настоящий Форекс не дано, это непросто даже для не крупных хэдж-фондов и все прелести типа гигантской ликвидности, больших плечей и торговли в любую сторону не зависимо от статуса трейдера, на самом деле просто фасад для завлечения наивной публики, торгующих случайно и сливающей издержки. А кто не сливает получают статус «токсик» и переводятся на режим издержек с МО в 3-10 раз превышающий заявленный, кроме того много всяких фокусов с отменами сделок по нерыночной цене, отказами исполнения ордера, отрицательные проскальзывания, фиеричные выбросы и тп. В общем больше 2-3 тысяч $ в месяц с 30-ки заработать не дадут.&lt;/p&gt;
&lt;p&gt;Ну и по мере накопления опыта понял что это нормальный этап перехода на взрослые рынки. Я имею в виду фондовую биржу(жи) и всякие другие, где торговля централизована, контролируется и дешевых фокусов гораздо меньше.&lt;/p&gt;
&lt;p&gt;Хотелось бы подискутировать о базисных отличиях Форекса и фондовой бирже в контексте алготрейдинга.&lt;/p&gt;
&lt;p&gt;Как осуществить переход наиболее элегантно, лаконично и эффективно.&lt;/p&gt;
&lt;p&gt;Я понимаю что тема при такой постановке вопроса довольно масштабна, чтобы сузить контекст, предлагаю начать с отличий информационных потоков доступных для анализа.&lt;/p&gt;
&lt;p&gt;Например для Форекса, достоверной информацией, можно считать поток ценовых таймсерий по набору инструментов, квантованных по минуте. То есть имеем на входе пол сотни примерно таймсерий которые могут аргументами некоторой функции вычисляющей вероятность приращения цены в будущем для какого либо одного торгуемого ФИ из тех что входят в неё, или для нескольких. Эта вероятность уже толкуется в торговый приказ. Теоретически доступны и объёмы и тики и даже стакан, но это очень не достоверные виды данных, как минимум зашумлённы, но скорей всего и искажены с недобрыми целями. Короче level2 и объём как данные пока недоступны на форексе.&lt;/p&gt;
&lt;p&gt;Как я понял с биржами таких проблем нет. Хотелось бы ознакомиться с таблицей данных получаемых в реалтайме  для каких инструментов у каких бирж.&lt;/p&gt;
&lt;p&gt;Спасибо.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3970/</id>
    <title type="text">Баги и ответы на вопросы</title>
    <published>2013-09-10T19:50:37Z</published>
    <updated>2013-09-10T19:50:37Z</updated>
    <author>
      <name>Bond</name>
      <uri>https://stocksharp.ru/users/26882/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Уважаемые разработчики, прошу прокомментировать ранее заданные вопросы:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Гидра не клеит фьючерсы. Ошибка:&amp;quot;Инструмент ... имеет нулевой шаг цены&amp;quot;
&lt;a href="http://stocksharp.com/forum/3100/S--Data---biesplatnaia-proghramma-zaghruzki-i-khranieniie-rynochnykh-dannykh/"&gt;http://stocksharp.com/forum/3100/S--Data---biesplatnaia-proghramma-zaghruzki-i-khranieniie-rynochnykh-dannykh/&lt;/a&gt;
&lt;a href="http://stocksharp.com/forum/3929/Poslali-siuda/"&gt;http://stocksharp.com/forum/3929/Poslali-siuda/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;2)Когда будет фикс переполнения памяти при подключении и отключении потока? Мне сообщили, что будет исправлено. Хотелось бы услышать примерные сроки.
&lt;a href="http://stocksharp.com/forum/3904/Kak-chistit--pamiat/"&gt;http://stocksharp.com/forum/3904/Kak-chistit--pamiat/&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3968/</id>
    <title type="text">Вычисляем временные отрезки текущей свечки</title>
    <published>2013-09-10T19:01:32Z</published>
    <updated>2013-09-10T19:01:32Z</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;p&gt;В стратегии из примера есть такой кусок, который бросает ошибку, если еще не началась сессия&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;// вычисляем временные отрезки текущей свечки
var bounds = TimeFrame.GetCandleBounds(_series.Security);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ошибка: ```plain
Specified argument was out of the range of valid values.
Parameter name: min&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
Что с этим можно сделать и что он дает?
&lt;/code&gt;&lt;/pre&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3967/</id>
    <title type="text">S# 4.1.18, не приходит OrderRegistered при тестировании в EmulationTrader</title>
    <published>2013-09-10T14:29:26Z</published>
    <updated>2013-09-10T14:29:26Z</updated>
    <author>
      <name>pafnuty</name>
      <uri>https://stocksharp.ru/users/6151/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;Добрый день!
Прошу помощи. У меня здесь даже две проблемы.&lt;/p&gt;
&lt;p&gt;**1.**Просто не приходит OrderRegistered в стратегию:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;   
    protected override void OnStarted()
    {
      //  настраиваем получение данных,
      this.Trader.MarketDepthsChanged += (depths) =&amp;gt;
        {
          depths.ForEach(depth =&amp;gt;
          {
            if (depth.Security.Equals(this.Security))
              ProcessDepth(depth);
          });
        };

      this.OrderRegistered += (order) =&amp;gt;
      {
        Chart_DrawOrder(order);
      };
      this.OrderRegisterFailed += (o) =&amp;gt;
      {
        this._Log.Error(this.Name, &amp;quot;Order registering failed: &amp;quot; + o.Error.ToString());
      };
      this.NewMyTrades += (trades) =&amp;gt;
      {
        trades.ForEach((t) =&amp;gt; Chart_DrawTrade(t.Trade));
      };

      //  workaround
      this.Trader.NewOrders += (orders) =&amp;gt;
        {
          orders.ForEach((o) =&amp;gt; Chart_DrawOrder(o));
        };


      base.OnStarted();
    }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Здесь я получаю MarketDepthsChanged, где в обработчике ProcessDepth() делаю такую заявку:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
      var order = this.CreateOrder(dir, depth.BestPair.MiddlePrice, 1); // (здесь я пробовал цену двигать и вверх, и вниз от MiddlePrice на много пунктов, но ничего не менялось)
      this.RegisterOrder(order);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;После чего я получаю только событие NewMyTrades, а OrderRegistered или OrderRegisterFailed не идут. :-\&lt;/p&gt;
&lt;p&gt;Вместе с тем исправно приходят и другие события, если на них подписаться:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
      strategy.PnLChanged += () =&amp;gt;
      {
        this.GuiAsync(() =&amp;gt; chartCurveItems.Add(new EquityData { Time = strategy.GetMarketTime(), Value = strategy.PnL, }));
      };
      strategy.PositionChanged += () =&amp;gt;
      {
        this.GuiAsync(() =&amp;gt; chartPosItems.Add(new EquityData { Time = strategy.GetMarketTime(), Value = strategy.Position }));
      };

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;В логах видно, что позиция изменяется (все заявки Sell/Buy проходят одинаковый жизненный цикл):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;
...
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Регистрация новой Limit (0x24CBD2A) заявки на Buy с ценой 129650 и объемом 1. 
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Полное исполнение  64190751/0 (0x1934CBE)'. Подписалось на события.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659)'. Подписалось на события.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Подписалось на события.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Новая Buy сделка 1 по цене 129560 на 1 заявки 64190751.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Новая позиция: test account-RIU3@FORTS=1.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659) OR Полное исполнение  64190751/0 (0x1934CBE) OR Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Активация.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Заявка 64190751 больше не активна.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659) OR Полное исполнение  64190751/0 (0x1934CBE) OR Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Удаляется.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659)'. Освободило ресурсы.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Полное исполнение  64190751/0 (0x1934CBE)'. Освободило ресурсы.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Освободило ресурсы.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659) OR Полное исполнение  64190751/0 (0x1934CBE) OR Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Освободило ресурсы.
2013.09.10 17:49:54 (Info) [PriceTimeAverage] 22.08.2013 10:00:28 Правило 'Отмена заявки  64190751/0 (0x1CC1659) OR Полное исполнение  64190751/0 (0x1934CBE) OR Ошибка регистрации заявки  64190751/0 (0x270F9F2)'. Удаление.
...

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;**2.**Если же заявки кидать из дочерней стратегии MarketQuotingStrategy, то постоянно приходит OrderRegisterFailed, где &amp;quot;Элемент с тем же ключом уже был добавлен.&amp;quot;:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;
22.08.2013 10:00:28 Заявка 0 (0x2BFF0FC) не была принята по причине System.ArgumentException: Элемент с тем же ключом уже был добавлен.
   в System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   в System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   в System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   в Ecng.Collections.SynchronizedDictionary`2.Add(TKey key, TValue value)
   в StockSharp.Algo.Slippage.SlippageManager.ReRegistering(Order oldOrder, Order newOrder)
   в StockSharp.Algo.Strategies.Strategy.ReRegisterSlippage(Order oldOrder, Order newOrder)
   в StockSharp.Algo.Strategies.Strategy.#=qbIRUWiEU8CQqWDdjRkfgkvfps6OAx7vD2Kqx82Rxd2I=(Order #=qKmmNADXEA1y6G4xj6oHNDA==, Order #=qRatAMf_6Pq77ALgggiLSJg==)
   в StockSharp.Algo.Strategies.Strategy.#=qnMkTDK$vgFXAHD_jnQqUoemJ0xATFxaqCLg1EscWz7E=(Order #=qDdHQIfKqKsvs3l4L2CQFkw==, Order #=q93_Szosd58yZODoC0qE$DA==, Action`2 #=qILlzwmip4x798LunUOS2Uw==).

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Дочернюю стратегию создаю так:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
      var strategyChild = new MarketQuotingStrategy(dir, 1) { PriceOffset = 10 };
      strategyChild.LogLevel = LogLevels.Error;
      strategyChild.WaitAllTrades = true;
      strategyChild.OrderRegistered += (order) =&amp;gt; { 
        Chart_DrawOrder(order); 
      };
      this.OrderRegisterFailed += (o) =&amp;gt; {
        this._Log.Error(this.Name, &amp;quot;Order registering failed: &amp;quot; + o.Error.ToString());
      };
      strategyChild.NewMyTrades += (trades) =&amp;gt;
      {
        trades.ForEach((t) =&amp;gt; Chart_DrawTrade(t.Trade));
      };

      this.ChildStrategies.Add(strategyChild);    

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Здесь приходят сообщения NewMyTrades и OrderRegisterFailed, и у родительской стратегии приходят PnLChanged и PositionChanged.
OrderRegistered не случается ни разу.
На какой-то предыдущей версии S# этот код работал, но я не помню, на какой именно.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3966/</id>
    <title type="text">Решение проблемы: после обновления версии Stock# библиотека работает некорректно</title>
    <published>2013-09-10T12:58:00Z</published>
    <updated>2013-09-10T12:58:00Z</updated>
    <author>
      <name>pafnuty</name>
      <uri>https://stocksharp.ru/users/6151/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Добрый день!
Возможно, кому-то будет полезен мой опыт.&lt;/p&gt;
&lt;p&gt;После перехода на S# 4.1.18, а потом отката на прежнюю версию S# мой тестер на истории (использует EmulationTrader) вдруг ни с чего сломался: перестала вообще подгружаться история.&lt;/p&gt;
&lt;p&gt;Я покопался и обнаружил каталог **c:\Documents and Settings...\Local Settings\Application Data\assembly**, где лежат закэшированные библиотеки StockSharp разных версий. После очистки кэша все встало на место.&lt;/p&gt;
&lt;p&gt;Почистить кэш можно:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;руками (просто удалить папку &lt;strong&gt;...\assembly\dl3&lt;/strong&gt;)&lt;/li&gt;
&lt;li&gt;gacutil /cdl  (у меня утилита gacutil.exe доступна через окружение командной строки VS 2010: &lt;strong&gt;Menu Start -&amp;gt; Visual Studio 2010 -&amp;gt; Visual Studio Tools -&amp;gt; VS 2010 Command Prompt&lt;/strong&gt;)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;em&gt;(На stackoverflow говорят, что с этим кэшем связаны и другие баги в продуктах на .NET, в т.ч. в софте Microsoft-а.)&lt;/em&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3965/</id>
    <title type="text">Собеседование в компании &amp;quot;Московская биржа&amp;quot;</title>
    <published>2013-09-09T13:10:17Z</published>
    <updated>2013-09-09T13:10:17Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">&lt;p&gt;Наткнулся на забавный пост &lt;a href="http://rsdn.ru/forum/job/5280887.flat" rel="nofollow" target="_blank"&gt;http://rsdn.ru/forum/job/5280887.flat&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Количество людей аргументировалось &amp;quot;разными&amp;quot; вакансиями.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Это пять!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3964/</id>
    <title type="text">Режим T+2</title>
    <published>2013-09-09T08:18:52Z</published>
    <updated>2013-09-09T08:18:52Z</updated>
    <author>
      <name>Brusianskii</name>
      <uri>https://stocksharp.ru/users/16733/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">&lt;p&gt;Здравствуйте!
В связи с введением нового режима не приходят акции. Где их взять теперь? В каком потоке?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3963/</id>
    <title type="text">Подскажите, что за ошибка такая...</title>
    <published>2013-09-09T07:22:22Z</published>
    <updated>2013-09-09T07:22:22Z</updated>
    <author>
      <name>casper-ss</name>
      <uri>https://stocksharp.ru/users/26936/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Когда подключаюсь к роутеру Плазы первый раз, все нормально, принудительно отключаю, и обратно пытаюсь подключиться, выскакивает такая ощибка...Ума не приложу в чем дело тут...&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3962/</id>
    <title type="text">Работа со StorageRegistry</title>
    <published>2013-09-09T07:22:05Z</published>
    <updated>2013-09-09T07:22:05Z</updated>
    <author>
      <name>Bond</name>
      <uri>https://stocksharp.ru/users/26882/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Добрый день! Разъясните, пожалуйста, как работать со свечами из хранилища. В ниже указанном коде идет работа с тиковыми данными? А как обратиться к данным с сформиррванными свечами разного таймфрейма?&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
// хранилище, через которое будет производиться доступ к тиковой и котировочной базе 
var storageRegistry = new StorageRegistry();

// изменяем путь, используемый по умолчанию
((LocalMarketDataDrive)storageRegistry.DefaultDrive).Path = HistoryPath.Text;

// используем алфавитное хранилище
((LocalMarketDataDrive) storageRegistry.DefaultDrive).UseAlphabeticPath = true;

&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
Печать
// создаем тестовый инструмент, на котором будет производится тестирование 
var security = new Security
{
    Id = &amp;quot;RIZ2@FORTS&amp;quot;, // по идентификатору инструмента будет искаться папка с историческими маркет данными
    Code = &amp;quot;RIZ2&amp;quot;,
    Name = &amp;quot;RTS-12.12&amp;quot;,
    MinStepSize = 10,
    MinStepPrice = 2,
    ExchangeBoard = ExchangeBoard.Forts,
}

// тестовый портфель 
var portfolio = new Portfolio { Name = &amp;quot;test account&amp;quot;, BeginValue = 1000000m };

&lt;/code&gt;&lt;/pre&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3961/</id>
    <title type="text">Снимаются заявки в 18:45</title>
    <published>2013-09-09T05:55:13Z</published>
    <updated>2013-09-09T05:55:13Z</updated>
    <author>
      <name>Pantov</name>
      <uri>https://stocksharp.ru/users/98/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;EmulationTrader снимает заявки в 18:45
значение ордера:  ExpiryDate = DateTime.MaxValue&lt;/p&gt;
&lt;p&gt;Как отменить отмену заявок?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3960/</id>
    <title type="text">Свечи построенные на тиковых данных</title>
    <published>2013-09-07T08:13:34Z</published>
    <updated>2013-09-07T08:13:34Z</updated>
    <author>
      <name>vfvf425</name>
      <uri>https://stocksharp.ru/users/49817/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Studio" />
    <content type="html">&lt;p&gt;Как заставить программу тестировать и работать на свечах которые построены на тиковых данных, к примеру свеча == 100 сделок. В гидре сформировал такие свечи, а вот как заставить в студии применяться именно эти свечи, ну не как. Ай нид хэлп&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3958/</id>
    <title type="text">Sync</title>
    <published>2013-09-05T15:51:28Z</published>
    <updated>2013-09-05T15:51:28Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.ru/users/451/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Почему возникает ошибка при компиляции (до этого красным ничего не подчёркивается), когда я добавляю к правилу .Sync(_locker) инициализированный как&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;private readonly SyncObject _locker = new SyncObject();
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;А в итоге:
&lt;em&gt;Error	1	The type 'Wintellect.PowerCollections.CollectionBase`1&amp;lt;T0&amp;gt;' is defined in an assembly that is not referenced. You must add a reference to assembly 'PowerCollections, Version=1.0.2224.30206, Culture=neutral, PublicKeyToken=8d05ee679e87a45f'.&lt;/em&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3957/</id>
    <title type="text">Метаданные инструментов</title>
    <published>2013-09-04T06:39:19Z</published>
    <updated>2013-09-04T06:39:19Z</updated>
    <author>
      <name>VoDA</name>
      <uri>https://stocksharp.ru/users/27725/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">&lt;p&gt;Каждый инструмент имеет свои характеристики - шаг цены, размер шага цены и т.п. И данные в bin формате жмутся с учетом этого. Плюс корректное обратное чтение возможно только если настройки сохранения и загрузки совпали. Если не совпали, то возможны артефакты.&lt;/p&gt;
&lt;p&gt;Предложение - организовать хранение метаданных инструментов в самом хранилище. Гидра при сохранении вносит мета-данные, а S#.API при чтении пользуется этими мета-данными.&lt;/p&gt;
&lt;p&gt;Как идея?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3956/</id>
    <title type="text">CancelActiveOrders</title>
    <published>2013-09-04T05:25:06Z</published>
    <updated>2013-09-04T05:25:06Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.ru/users/451/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Не пойму почему функция CancelActiveOrders() периодически выбрасывает исключение &lt;em&gt;An unhandled exception of type 'System.StackOverflowException' occurred in System.dll&lt;/em&gt;, даже заключённая в блок try.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3955/</id>
    <title type="text">MarketRuleHelper.WhenNewMyTrades не рабтает</title>
    <published>2013-09-03T17:27:42Z</published>
    <updated>2013-09-03T17:27:42Z</updated>
    <author>
      <name>risty</name>
      <uri>https://stocksharp.ru/users/6257/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Доброго времени суток!
S# 4.1.18.0
По какой то причине правило MarketRuleHelper.WhenNewMyTrades то срабатывает то нет.
Раньше пользовался strategy.EnableRulesLog для включения логирования. При переходе на 4.1.18.0 EnableRulesLog не обнаружил (
Вопросы:
Только у меня проблемы с правилом WhenNewMyTrades?
Как щас лучше всего логировать и дебажить работу правил ?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3954/</id>
    <title type="text">У кого-нибудь работает переподключение?</title>
    <published>2013-09-03T12:22:44Z</published>
    <updated>2013-09-03T12:22:44Z</updated>
    <author>
      <name>Lipot</name>
      <uri>https://stocksharp.ru/users/16767/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">&lt;p&gt;Интересно это только у меня при потере интернета (кабель из компа вытащил) и восстановлении (обратно подсоединил) не происходит переподключение?&lt;/p&gt;
&lt;p&gt;Основные строки кода, связанные с переподклбючением:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
// Включаем lrpcq
Trader.UseLocalProtocol = true;

...

// Иициализируем механизм переподключения (будет автоматически соединяться каждые 60 секунд, если шлюз потеряется связь с сервером)
Trader.ReConnectionSettings.ConnectionSettings.Interval = TimeSpan.FromSeconds(60);

// Переподключение при разрыве 
Trader.ReConnectionSettings.ConnectionSettings.ReAttemptCount = -1;

// Подписываемся на событие успешного восстановления соединения
Trader.ReConnectionSettings.ConnectionSettings.Restored += () =&amp;gt; this.GuiAsync(() =&amp;gt; MessageBox.Show(this, &amp;quot;Соединение восстановлено.&amp;quot;));

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;А также, если пытаюсь ручками переподключиться ругается, что не остановлены потоки.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/3953/</id>
    <title type="text">Гидра и Ртс</title>
    <published>2013-09-03T12:16:08Z</published>
    <updated>2013-09-03T12:16:08Z</updated>
    <author>
      <name>VoDA</name>
      <uri>https://stocksharp.ru/users/27725/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">&lt;p&gt;Гидра - похоже на минорный баг, который уже правили.&lt;/p&gt;
&lt;p&gt;Загрузка данных от РТС управляется через начальная дата.
При загрузке данных дата увеличивается, но при перезапуске Гидры дата теряется и загрузка идет с нуля.&lt;/p&gt;
&lt;p&gt;Был бы доступ к репке сам поправил, так - сообщаю :)&lt;/p&gt;
</content>
  </entry>
</feed>