﻿<?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=community&amp;page=64</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-05-04T20:51:56Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=64" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/4848/</id>
    <title type="text">Руководство по GitHub</title>
    <published>2014-12-25T08:35:51Z</published>
    <updated>2017-06-30T16:39:57Z</updated>
    <author>
      <name>esper</name>
      <uri>https://stocksharp.ru/users/5990/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Исходный код проектов S# Data и S# Studio, а так же общих библиотек S#.API (Algo, Messages, Xaml) и коннекторов (SmartCOM, Transaq, AlfaDirect и т.д.) выложен в открытый доступ на &lt;a target="_blank" href="https://github.com/stocksharp/stocksharp" title="https://github.com/stocksharp/stocksharp"&gt;GitHub&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Скачать последнюю версию исходных кодов и библиотек S# можно несколькими способами:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;В виде отдельного архива.&lt;/b&gt;&lt;br /&gt;Содержимое репозитория в виде архива доступно по &lt;a target="_blank" href="https://github.com/stocksharp/stocksharp/archive/master.zip" title="https://github.com/stocksharp/stocksharp/archive/master.zip"&gt;ссылке&lt;/a&gt;. Так же загрузку можно начать с помощью специальной кнопки показанной на рисунке ниже.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/103343/img_1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/103343/img_1.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;С помощью Visual Studio&lt;/b&gt;&lt;br /&gt;Чтобы скачать содержимое репозитория с помощью VS необходимо выполнить следующие действия:&lt;br /&gt;1. Открыть Team explorer (Командный обозреватель)&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/103344/img_2.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/103344/img_2.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;2. В открывшемся окне в группе Local Git Repositories (Локальные репозитории) необходимо выбрать Clone (Клонировать), указать адрес репозитория (https://github.com/stocksharp/stocksharp) и локальную папку, куда будет выполнено клонирование.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/103345/img_3.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/103345/img_3.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;В дальнейшем для обновления локального репозитория до последней версии необходимо в окне Team explorer открыть вкладку Unsynced commits, далее можно запросить список изменений на сервере с помощью Fetch и скопировать их в локальный репозиторий с помощью Pull.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/103346/img_4.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/103346/img_4.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;С помощью GitHub для Windows&lt;/b&gt;&lt;br /&gt;Инструкцию по установке и настройке GitHub для Windows доступна по &lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAAALvG39sn0IpmwHgS15dMN8rb6ybtZ0UVBRUjkBkhlpYQ" title="http://windows.github.com/"&gt;ссылке&lt;/a&gt; или с помощью специальной кнопки на рисунке ниже.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/103347/img_5.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/103347/img_5.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Для компиляции необходимо установить Actipro версии 11.2.555.0. &lt;em&gt;Лицензия приобретается отдельно каждым&lt;/em&gt;.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8341/</id>
    <title type="text">Отрисовка графика.</title>
    <published>2017-06-28T19:32:15Z</published>
    <updated>2017-06-29T13:40:21Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="графики" />
    <category term="charts" />
    <content type="html">Добрый день! Скажите пожалуйста можно ли сделать так что бы график автоматически прокручивался на последнюю свечу и выравнивался по высоте? То есть вписывался автоматически между верхней и нижней границей.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8296/</id>
    <title type="text">Коннектор BitStamp выдает ошибку, как лечить?	</title>
    <published>2017-06-03T19:48:49Z</published>
    <updated>2017-06-27T23:05:25Z</updated>
    <author>
      <name>Tim</name>
      <uri>https://stocksharp.ru/users/96379/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="BitStamp" />
    <content type="html">Коннектор BitStamp выдает ошибку, как лечить?	&lt;br /&gt;&lt;br /&gt;BitStamp	03.06.2017 19:35:44 +03:00	Error	Newtonsoft.Json.JsonSerializationException: Cannot deserialize the current JSON object (e.g. {&amp;quot;name&amp;quot;:&amp;quot;value&amp;quot;}) into type &amp;#39;System.Collections.Generic.IEnumerable`1[StockSharp.BitStamp.Native.Order]&amp;#39; because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.&lt;br /&gt;To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List&amp;lt;T&amp;gt;) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object.&lt;br /&gt;Path &amp;#39;error&amp;#39;, line 1, position 9.&lt;br /&gt;   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)&lt;br /&gt;   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)&lt;br /&gt;   в Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)&lt;br /&gt;   в Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)&lt;br /&gt;   в Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)&lt;br /&gt;   в #=q1NcBIN88G52kgP0zUsn9cJKJWDWgw_pnmh7jh4orKkjScnGc$aZZaJEcTBVufygO.#=quZGY6lgmvbr$8MxdXdJCwA==[T](Uri #=qC6iC8a89IAE7$H9DGl1zdA==)&lt;br /&gt;   в StockSharp.BitStamp.BitStampMessageAdapter.#=qLnfISuW_dlF8IOsdav_jekg0XdplMvAx_LLIL20be0U=()&lt;br /&gt;   в StockSharp.Messages.MessageAdapter.SendInMessage(Message message)&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8322/</id>
    <title type="text">Hydra, импорт данных со временем с точностью до мксек</title>
    <published>2017-06-13T18:42:17Z</published>
    <updated>2017-06-23T12:53:35Z</updated>
    <author>
      <name>karat</name>
      <uri>https://stocksharp.ru/users/51659/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Пытаюсь импортировать данные Level1 с временными метками с точностью до микросекунд. (формат hh:mm:ss.ffffff)&lt;br /&gt;&lt;br /&gt;При импорте указывают такой же формат (hh:mm:ss.ffffff), потом делаю Предпросмотр, и программа выводит время с точностью до миллисекунд (hh:mm:ss.fff000).&lt;br /&gt;Возможности работать с микросекундами в Hydra нет никакой?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8332/</id>
    <title type="text">Ордер типа TakeProfit выполняется с ошибкой</title>
    <published>2017-06-22T22:24:06Z</published>
    <updated>2017-06-22T22:33:09Z</updated>
    <author>
      <name>ypanfilov</name>
      <uri>https://stocksharp.ru/users/96282/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Приветствую,&lt;br /&gt;при выставлении ордера TakeProfit и его активации(когда рыночная цена пересекает заданную в ордере) все срабатывает корректно. Но при достижении уровня Spread+Offset и отправке на биржу соответствующего лимитного ордера возникает ошибка, что такой идентификатор заявки уже существует. Как следствие обработать этот лимитный ордер в событиях фреймворка не представляется возможным.&lt;br /&gt;&lt;br /&gt;Версия сборки 4.3.18</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8327/</id>
    <title type="text">Частичное исполнение лимитной заявки</title>
    <published>2017-06-19T13:08:18Z</published>
    <updated>2017-06-20T14:18:17Z</updated>
    <author>
      <name>Knup</name>
      <uri>https://stocksharp.ru/users/50721/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="WhenNewTrade" />
    <category term="WhenPartiallyMatched" />
    <category term="лимитная заявка" />
    <category term="частичное исполнение" />
    <content type="html">Добрый день,&lt;br /&gt;&lt;br /&gt;Подскажите, пожалуйста, как на S# корректно реализовать следующий алгоритм: &lt;br /&gt;1) Выставляем лимитную заявку на покупку&lt;br /&gt;2) При каждом частичном исполнении заявки выставляется тейк-профит в виде противоположной лимитной заявки. Тейк-профит должен быть всегда один, т.е. при каждом новом частичном исполнении заявки старый тейк-профит отменяется, новый же с сальдированным большим объёмом - выставляется. И так, пока заявка на покупку полностью не исполнится. Т.е. в итоге после исполнения лимитной заявки на покупку из n лотов должна быть одна противоположная заявка на продажу (тейк-профит) тоже из n лотов.  &lt;br /&gt;&lt;br /&gt;Делаю примерно так через WhenNewTrade: &lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;br /&gt;...&lt;br /&gt;_orderOpen.WhenNewTrade(Connector)&lt;br /&gt;                .Do(o =&amp;gt;&lt;br /&gt;                {&lt;br /&gt;                    // фиксируем набранную позицию&lt;br /&gt;                    _summVolumeOpen += o.Trade.Volume;&lt;br /&gt;                    _summPriceVolumeOpen += _orderdata.OpenPrice * o.Trade.Volume;&lt;br /&gt;&lt;br /&gt;                    // Создать заявку тейк-профит по набранной позиции&lt;br /&gt;                    CreateTakeProfitOrderSell(_summVolumeOpen);&lt;br /&gt;                })&lt;br /&gt;                .Apply(this);&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;        private void CreateTakeProfitOrderSell(decimal curvol)&lt;br /&gt;        {&lt;br /&gt;            lock (_syncObjSafe)&lt;br /&gt;            {&lt;br /&gt;                if (_orderClose != null &amp;amp;&amp;amp; _orderClose.State == OrderStates.Active)&lt;br /&gt;                    CancelOrder(_orderClose);&lt;br /&gt;                &lt;br /&gt;                _orderClose = this.SellAtLimit(_orderdata.ClosePrice, curvol);&lt;br /&gt;                &lt;br /&gt;                ...&lt;br /&gt;&lt;br /&gt;                RegisterOrder(_orderClose);&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Проблема в том, что при исполнении лимитной заявки по частям WhenNewTrade вызывается быстро несколько раз так, что заявка тейк-профит _orderClose не успевает принять состояние Active и поэтому не отменяется. WhenPartiallyMatched, как я понял, тоже не решает проблему - это правило вызывается столько же раз, сколько и WhenNewTrade. В общем, в результате вместо одного тейк-профита у меня выставляется сразу несколько, что неправильно (все заявки кроме последней должны быть отменёнными).  &lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8298/</id>
    <title type="text">Вход в позицию по цене закрытия свечи при использовании готовых свечных данных</title>
    <published>2017-06-05T11:46:51Z</published>
    <updated>2017-06-19T21:27:22Z</updated>
    <author>
      <name>gewinn</name>
      <uri>https://stocksharp.ru/users/98706/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день!&lt;br /&gt;Использую готовые дневные свечи для бектестинга. Заметил, что вход / выход из позиции происходит только на открытии свечи. &lt;br /&gt;Как можно, имея только дневные свечи (если нужно - будут и часовые), входить / выходить из позиций в конце торгового дня? Речь идет о фондовом рынке, совершать сделки хотелось бы с 18 до 18.44 включительно, а не в 10.00. Входить можно грубо, по ClosePrice свечи, но желательно, чтобы &amp;quot;проходил&amp;quot; любой объем.&lt;br /&gt;&lt;br /&gt;Какой путь здесь будет наиболее правильный, если нет тиковых данных и стаканов?&lt;br /&gt;Версия SS последняя на текущий момент.&lt;br /&gt;Спасибо.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8328/</id>
    <title type="text">Нерегулярные обновления стакана</title>
    <published>2017-06-19T13:35:38Z</published>
    <updated>2017-06-19T17:04:44Z</updated>
    <author>
      <name>v3Rtex</name>
      <uri>https://stocksharp.ru/users/62061/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="стакан" />
    <category term="Quik lua" />
    <content type="html">Кто нибудь сталкивался с тем, что события обновления стакана приходят произвольно, когда захотят? (подключен через луа)&lt;br /&gt;Ничто не меняется, даже если насильно заказывать через GetMarketDepth(), приходят старые данные.&lt;br /&gt;В эксель по дде стакан прилетает моментально, неужели это какое то ограничение lua? Или ограничение бесплатной версии?&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8323/</id>
    <title type="text">Отправка новой свечи из коллекции после события(й)</title>
    <published>2017-06-14T13:10:34Z</published>
    <updated>2017-06-16T15:41:33Z</updated>
    <author>
      <name>gewinn</name>
      <uri>https://stocksharp.ru/users/98706/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">В этом вопросе (http://stocksharp.ru/forum/8263/poluchenie-svechnyh-dannyh-iz-soobshshenii/) был получен ответ, как работать со свечками из своей базы данных.&lt;br /&gt;Теперь возникла ситуация, при которой в конце дня подается заявка на сделку и до ее исполнения (прихода всех сделок) наступает новый день. Есть ли возможность &amp;quot;запрашивать&amp;quot; новую свечу, после исполнения всех сделок по заявкам прошедшего дня? (считаем, что у нас супер-ликвидный рынок).&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;...&lt;br /&gt;while (reader.Read())&lt;br /&gt;            {&lt;br /&gt;                candles_sourse.Add(new TimeFrameCandle()&lt;br /&gt;                {&lt;br /&gt;                    Security = security,&lt;br /&gt;                    TimeFrame = TimeSpan.FromMinutes(period),&lt;br /&gt;                    OpenTime = new DateTimeOffset((DateTime)reader&amp;#91;&amp;quot;open_datetime&amp;quot;&amp;#93;, ST.timezone_timespan_hours),&lt;br /&gt;                    OpenPrice = (decimal)(double)reader&amp;#91;&amp;quot;o&amp;quot;&amp;#93;,&lt;br /&gt;                    HighPrice = (decimal)(double)reader&amp;#91;&amp;quot;h&amp;quot;&amp;#93;,&lt;br /&gt;                    LowPrice = (decimal)(double)reader&amp;#91;&amp;quot;l&amp;quot;&amp;#93;,&lt;br /&gt;                    ClosePrice = (decimal)(double)reader&amp;#91;&amp;quot;c&amp;quot;&amp;#93;,&lt;br /&gt;                    TotalVolume = (decimal)(double)reader&amp;#91;&amp;quot;v&amp;quot;&amp;#93;,&lt;br /&gt;                   &amp;#91;b&amp;#93; State = CandleStates.Active&amp;#91;/b&amp;#93;&lt;br /&gt;                });&lt;br /&gt;            }&lt;br /&gt;...&lt;br /&gt;&lt;/div&gt;&lt;/div&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;br /&gt;...&lt;br /&gt;State = CandleStates.Finished&lt;br /&gt;...&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Но в этой ситуации эмуляция просто зависает. &lt;br /&gt;&lt;br /&gt;Пробовал также вызывать у коннектора метод Suspend(), но в этом случае и заявки перестают обрабатываться - из этого состояния коннектор уже не выйдет.&lt;br /&gt;&lt;br /&gt;Т.е. еще раз, чтобы хотелось:&lt;br /&gt;1) Закончился день&lt;br /&gt;2) Если есть заявки - обработали их через события (&amp;lt;order&amp;gt;.WhenNewTrades(...)), новый день не начинается, пока все не обработаны.&lt;br /&gt;3) Получили всех сделки, считая, что рынок крайне ликвиден и в конце дня успеет пройти любой объем&lt;br /&gt;4) &amp;quot;Разрешили&amp;quot; начаться следующему дню (как?)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8308/</id>
    <title type="text">Ошибка подключения Quik LUATransactions в S# Designer</title>
    <published>2017-06-09T19:41:15Z</published>
    <updated>2017-06-14T16:58:04Z</updated>
    <author>
      <name>Evgeny</name>
      <uri>https://stocksharp.ru/users/918/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">При попытке использовать подключение Quik LUA Transactions возникает сообщение об ошибке &amp;quot;Не удалось установить некоторые подключения&amp;quot; и дизайнер показывает, что соединения нет. В логе отображается следующее исключение:&lt;br /&gt;Error	System.InvalidOperationException: Процесс подключения был прервал из-за неожиданного отключения. ---&amp;gt; System.ArgumentOutOfRangeException: Заданный аргумент находится вне диапазона допустимых значений.&lt;br /&gt;Имя параметра: message&lt;br /&gt;   в StockSharp.Algo.Helper.GetBalance(ExecutionMessage message)&lt;br /&gt;   в StockSharp.Algo.Testing.MarketEmulator.SecurityMarketEmulator.MatchOrder(DateTimeOffset time, ExecutionMessage order, ICollection`1 result, Boolean isNewOrder)&lt;br /&gt;   в StockSharp.Algo.Testing.MarketEmulator.SecurityMarketEmulator.AcceptExecution(DateTimeOffset time, ExecutionMessage execution, ICollection`1 result)&lt;br /&gt;   в StockSharp.Algo.Testing.MarketEmulator.SecurityMarketEmulator.Process(Message message, ICollection`1 result)&lt;br /&gt;   в StockSharp.Algo.Testing.MarketEmulator.SendInMessage(Message message)&lt;br /&gt;   в StockSharp.Designer.DesignerConnector.EmulationAdapterWrapper.OnInnerAdapterNewOutMessage(Message message)&lt;br /&gt;   в StockSharp.Messages.MessageAdapter.SendOutMessage(Message message)&lt;br /&gt;   в StockSharp.Algo.BasketMessageAdapter.OnInnerAdapterNewOutMessage(IMessageAdapter innerAdapter, Message message)&lt;br /&gt;   в StockSharp.Algo.BasketMessageAdapter.&amp;lt;&amp;gt;c__DisplayClass47_0.&amp;lt;OnSendInMessage&amp;gt;b__2(Message m)&lt;br /&gt;   в StockSharp.Messages.MessageAdapterWrapper.RaiseNewOutMessage(Message message)&lt;br /&gt;   в StockSharp.Algo.HeartbeatMessageAdapter.OnInnerAdapterNewOutMessage(Message message)&lt;br /&gt;   в StockSharp.Messages.MessageAdapterWrapper.RaiseNewOutMessage(Message message)&lt;br /&gt;   в StockSharp.Algo.SubscriptionMessageAdapter.OnInnerAdapterNewOutMessage(Message message)&lt;br /&gt;   в StockSharp.Messages.MessageAdapter.SendOutMessage(Message message)&lt;br /&gt;   в StockSharp.Fix.FixMessageAdapter.#=qDbeUI47BbTyd8z44ZxBh1kGcvuc2g_0hpf0bFpCPfFE=()&lt;br /&gt;   --- Конец трассировки внутреннего стека исключений ---&lt;br /&gt;&lt;br /&gt;Данные портфелей после этого появляются, но не обновляются.&lt;br /&gt;Данных о позициях вообще нет.&lt;br /&gt;Подскажите, пожалуйста, с чем это может быть связано и как это исправить?&lt;br /&gt;&lt;br /&gt;При этом подключение Quik LUA MarketData подключается без ошибок и нормально получает данные инструментов / тиков и т.д.&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8324/</id>
    <title type="text">Возможный баг с источником данных - Переменная.</title>
    <published>2017-06-14T15:03:46Z</published>
    <updated>2017-06-14T15:04:31Z</updated>
    <author>
      <name>karat</name>
      <uri>https://stocksharp.ru/users/51659/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">1) Имею данные по инструменту Level1 - лучшая покупка и продажа&lt;br /&gt;2) Больше по инструменту ничего не имею&lt;br /&gt;3) Строю график этих данных, фактически строю график спреда.&lt;br /&gt;Накладываю кубики: Переменная[Инструмент] ----&amp;gt; Level1[Лучшая цена покупки]  ----&amp;gt; SMA[1]  ----&amp;gt; Панель графика&lt;br /&gt;Все строит отлично.&lt;br /&gt;&lt;br /&gt;Как только закрываю и открываю программу (или стратегию), пытаюсь ее запустить (стратегию), тут же программа сообщает, что у меня нет данных сделок и предлагает мне их скачать. Естественно запустить ничего не могу.&lt;br /&gt;&lt;br /&gt;По началу просто создавал стратегию заново. Потом стало помогать удаление кубика Переменная и создание нового кубика. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2274/</id>
    <title type="text">QUIK и Verifier. Ошибка &amp;quot;Недостаточное количество колонок в таблице&amp;quot;.</title>
    <published>2011-12-28T06:49:56Z</published>
    <updated>2017-06-11T07:33:14Z</updated>
    <author>
      <name>ATrader</name>
      <uri>https://stocksharp.ru/users/678/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Здравствуйте!&lt;br /&gt;Начинаю работать с S#, всё делаю по мануалу. Настроил таблицы, как написано в инструкции. При проверке Verifier`ом, он выдаёт ошибку: &amp;quot;Таблица заявки. Недостаточное количество колонок в таблице &amp;#39;заявки&amp;#39;. Должно быть не менее 17&amp;quot;. Хотя в мануале перечислено только 16 колонок. Настроил всё в соответствии с мануалом. В чём может быть причина? Как исправить? </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8303/</id>
    <title type="text">Hydra, возможный баг конвертации OL &amp;gt; trade</title>
    <published>2017-06-07T13:18:06Z</published>
    <updated>2017-06-07T13:18:06Z</updated>
    <author>
      <name>karat</name>
      <uri>https://stocksharp.ru/users/51659/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Есть вот такой ордерлог&lt;br /&gt;&lt;a href='https://content.screencast.com/users/Andrey.Beliakov/folders/Jing/media/062ab24f-9d0e-4c8b-af5c-261cd23dffd3/2017-06-07_1315.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://content.screencast.com/users/Andrey.Beliakov/folders/Jing/media/062ab24f-9d0e-4c8b-af5c-261cd23dffd3/2017-06-07_1315.png" style='max-width: 600px;' alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Получаю сделки из него.&lt;br /&gt;Объем сделки не считается. Пустой&lt;br /&gt;&lt;a href='https://content.screencast.com/users/Andrey.Beliakov/folders/Jing/media/40051252-2dcc-4268-bb6f-2ae7a744039c/2017-06-07_1316.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://content.screencast.com/users/Andrey.Beliakov/folders/Jing/media/40051252-2dcc-4268-bb6f-2ae7a744039c/2017-06-07_1316.png" style='max-width: 600px;' alt=""/&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8299/</id>
    <title type="text">Свой dll индикатор в S#Designer </title>
    <published>2017-06-05T11:48:00Z</published>
    <updated>2017-06-07T12:58:19Z</updated>
    <author>
      <name>karat</name>
      <uri>https://stocksharp.ru/users/51659/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый день.&lt;br /&gt;Есть какой нибудь функционал отображения своего индикатора из dll в Дизайнере? &lt;br /&gt;Или надо в ручную отрисовывать из Dll стратегии.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8290/</id>
    <title type="text">Отрисовка элементов, не входящих ни в один индикатор на графике + подписи</title>
    <published>2017-05-30T18:10:48Z</published>
    <updated>2017-06-05T15:19:01Z</updated>
    <author>
      <name>gewinn</name>
      <uri>https://stocksharp.ru/users/98706/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Добрый вечер.&lt;br /&gt;А как можно на графике нарисовать, например, гистограммы, имея массив из пар ключ-значение, где ключ - время (DateTimeOffset), значение - число (decimal).&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;var data = new ChartDrawData();&lt;br /&gt;data&lt;br /&gt;   .Group(&amp;lt;дата&amp;gt;)&lt;br /&gt;      .Add(&amp;lt;элемент на графике&amp;gt;, new DecimalIndicatorValue(&amp;lt;индикатор !!!&amp;gt;, &amp;lt;значение&amp;gt;));&lt;br /&gt;&amp;lt;график&amp;gt;.Draw(data);&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Т.е. задача нарисовать массив или словарь данных, используя простой перебор в цикле.&lt;br /&gt;&lt;br /&gt;Второй момент - как к гистограммам добавить подписи? Например, &amp;quot;написать&amp;quot; значение гистограммы над (или  под) гистограммой.&lt;br /&gt;&lt;br /&gt;Спасибо.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8291/</id>
    <title type="text">HYDRA требует авторизации на сайте</title>
    <published>2017-05-31T10:44:36Z</published>
    <updated>2017-05-31T10:44:36Z</updated>
    <author>
      <name>po_saa</name>
      <uri>https://stocksharp.ru/users/51548/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">При запуске HYDRA требует авторизации на сайте &lt;br /&gt;авторизовался&lt;br /&gt;при вводе логина и пароля выползает ошибка&lt;br /&gt;что ещё нужно сделать для запуска HYDRA?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4630/</id>
    <title type="text">Не запускается lua скрипт</title>
    <published>2014-07-15T20:35:45Z</published>
    <updated>2017-05-30T13:32:14Z</updated>
    <author>
      <name>devruss</name>
      <uri>https://stocksharp.ru/users/50604/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Действовал согласно инструкции, все настройки скрипта дефолтные.&lt;br /&gt;При загрузке скрипта в Квик вылетает следующая ошибка: Unknown error. Possible unhandled exception.&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;

[16.07.2014 00:31:37] StockSharp.Logging, Version=4.2.8.0, Culture=neutral, PublicKeyToken=null: System.NotSupportedException: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See ÷ñÒ448603852êÖ0õæ÷http://go.microsoft.com/fwlink/?LinkId=155569 ÷ñÒ448603852êÖ1õæ÷for more information.
   at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence)
   at System.Reflection.Assembly.LoadFile(String path)
   at CurrentDomain_AssemblyResolve(Object sender, ResolveEventArgs args)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;По предложенной ссылке зашел, но ничего не понял, что я могу в данном случае настроить</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8199/</id>
    <title type="text">Нестабильная работа stocksharp - quik(lua)</title>
    <published>2017-04-05T18:35:23Z</published>
    <updated>2017-05-30T12:58:54Z</updated>
    <author>
      <name>Oleg</name>
      <uri>https://stocksharp.ru/users/98402/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <category term="Quik" />
    <category term="Lua" />
    <content type="html">При подключении к квику через lua коннектор примерно в 50% случаев возникают ошибки, которые препятствуют дальнейшей работе, например после них могут не приходить инструменты через событие OnNewSecurity.&lt;br /&gt;Ошибки следующие:&lt;br /&gt;Это самая частая-&lt;br /&gt;2017-04-05 10:00:01,938 ERROR Connector Out channel thread. OrderMaker.Robot - Сообщение 0 типа AN не было корректно обработано FIX сервером. Причина () .&lt;br /&gt;System.InvalidOperationException: Сообщение 0 типа AN не было корректно обработано FIX сервером. Причина () .&lt;br /&gt;2017-04-05 10:00:01,942 ERROR Connector Out channel thread. OrderMaker.Robot - Сообщение 0 типа AF не было корректно обработано FIX сервером. Причина () .&lt;br /&gt;System.InvalidOperationException: Сообщение 0 типа AF не было корректно обработано FIX сервером. Причина () .&lt;br /&gt;&lt;br /&gt;А вот эта реже:&lt;br /&gt;2017-03-31 10:00:03,167 ERROR Connector Out channel thread. OrderMaker.Robot - Ошибка получение маркет-даты. Код &amp;#39;0&amp;#39;, текст &amp;#39;An item with the same key has already been added.&amp;#39;.&lt;br /&gt;System.InvalidOperationException: Ошибка получение маркет-даты. Код &amp;#39;0&amp;#39;, текст &amp;#39;An item with the same key has already been added.&amp;#39;.&lt;br /&gt;&lt;br /&gt;БКС Quik 7.2.2.3&lt;br /&gt;StockSharp 4.3.19.4&lt;br /&gt;&lt;br /&gt;Есть догадки в чем может быть причина? Проблема плавающая, иногда есть иногда нет. Помогает простой перезапуск приложения.&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/8281/</id>
    <title type="text">Не понимаю работу метода FinamHistorySource.Refresh</title>
    <published>2017-05-24T17:53:22Z</published>
    <updated>2017-05-30T12:54:11Z</updated>
    <author>
      <name>Дмитрий_</name>
      <uri>https://stocksharp.ru/users/62269/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="C#" />
    <content type="html">Здравствуйте. &lt;br /&gt;&lt;br /&gt;Его описание:&lt;br /&gt;&lt;a href="http://doc.stocksharp.ru/html/M_StockSharp_Algo_History_Russian_Finam_FinamHistorySource_Refresh.htm
" title="http://doc.stocksharp.ru/html/M_StockSharp_Algo_History_Russian_Finam_FinamHistorySource_Refresh.htm
"&gt;http://doc.stocksharp.ru...storySource_Refresh.htm
&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;int step = 0;&lt;br /&gt;Security security = new Security { Id = &amp;quot;SBER@TQBR&amp;quot;, Board = ExchangeBoard.Micex };&lt;br /&gt;При вызове метода FinamHistorySource.Refresh(securityStorage, security, s =&amp;gt; { isCanceled = UpdateLoadingProgressBar(s, security, ++step); }, () =&amp;gt; isCanceled); всегда загружается 14787 инструментов, что занимает приличное время.&lt;br /&gt;1) Как правильно использовать параметр criteria&lt;br /&gt;(Тип: StockSharp.BusinessEntities.Security Инструмент, поля которого будут использоваться в качестве фильтра.),&lt;br /&gt;чтобы загружался только нужный security?&lt;br /&gt;2) Какой параметр criteria использовать для групповой загрузки инструментов (например: GAZP@TQBS, SBER@TQBS и SBERP@TQBS)?&lt;br /&gt;&lt;br /&gt;3) Если правильно понимаю логику метода:&lt;br /&gt;Допустим&lt;br /&gt;Security security = new Security { Board = ExchangeBoard.Spb};&lt;br /&gt;и FinamHistorySource.Refresh(securityStorage, security, s =&amp;gt; { isCanceled = UpdateLoadingProgressBar(s, security, ++step); }, () =&amp;gt; isCanceled); то перебор (поиск) инструментов будет только среди бумаг, где ExchangeBoard = Spb? На практике, всё равно грузит все 14787 инструментов.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/363/</id>
    <title type="text">Tорговые роботы. Full Orders Log.</title>
    <published>2012-03-13T14:36:51Z</published>
    <updated>2017-05-29T11:56:08Z</updated>
    <author>
      <name>StockSharp</name>
      <uri>https://stocksharp.ru/users/341/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <category term="Торговые роботы" />
    <category term="Статьи" />
    <category term="OrderLog" />
    <category term="Ордер лог" />
    <content type="html">Здравствуйте. В этой статье мы расскажем Вам, что такое Full orders log, как он выглядит, для чего используется, и какую интересную информацию можно в нем увидеть. Начнем с определения и общих понятий и свойств. После этого поговорим о том, как можно использовать ордер лог для создания торговых роботов.&lt;br /&gt;Full orders log (в статье будем использовать сокращение FOL) — это список всех заявок с полной информацией по каждой заявке. Еще его называют анонимным ордер логом (анонимная рыночная информация), т.к. из всей информации о заявке в нем не доступен только номер счета клиента, пославшую эту заявку. Как вы понимаете, эта информация конфиденциальна. Ордер лог, это самый глубокий и детальный уровень информации, который доступен трейдеру. &lt;br /&gt;&lt;b&gt;&lt;br /&gt;Полный список полей таблицы orders_log&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Поле Тип Описание&lt;br /&gt;&lt;br /&gt;replID i8 Служебное поле подсистемы репликации&lt;br /&gt;&lt;br /&gt;replRev i8 Служебное поле подсистемы репликации&lt;br /&gt;&lt;br /&gt;replAct i8 Служебное поле подсистемы репликации&lt;br /&gt;&lt;br /&gt;id_ord i8 Номер заявки&lt;br /&gt;&lt;br /&gt;sess_id i4 Идентификатор торговой сессии&lt;br /&gt;&lt;br /&gt;client_code c7 Код клиента&lt;br /&gt;&lt;br /&gt;moment t Время изменения состояния заявки&lt;br /&gt;&lt;br /&gt;status i4 Статус заявки&lt;br /&gt;&lt;br /&gt;action i1 Действие с заявкой&lt;br /&gt;&lt;br /&gt;isin_id i4 Уникальный числовой идентификатор инструмента&lt;br /&gt;&lt;br /&gt;dir i1 Направление&lt;br /&gt;&lt;br /&gt;price d16.5 Цена&lt;br /&gt;&lt;br /&gt;amount i4 Количество в операции&lt;br /&gt;&lt;br /&gt;amount_rest i4 Оставшееся количество в заявке&lt;br /&gt;&lt;br /&gt;comment c20 Комментарий трейдера&lt;br /&gt;&lt;br /&gt;hedge i1 Признак хеджевой заявки&lt;br /&gt;&lt;br /&gt;trust i1 Признак заявки доверительного управления&lt;br /&gt;&lt;br /&gt;ext_id i4 Внешний номер&lt;br /&gt;&lt;br /&gt;login_from c20 Логин пользователя, поставившего заявку&lt;br /&gt;&lt;br /&gt;broker_to c7 Код FORTS фирмы-адресата внесистемной заявки&lt;br /&gt;&lt;br /&gt;broker_to_rts c7 Код RTS фирмы-адресата внесистемной заявки&lt;br /&gt;&lt;br /&gt;date_exp t Дата истечения заявки&lt;br /&gt;&lt;br /&gt;id_ord1 i8 Номер первой заявки&lt;br /&gt;&lt;br /&gt;broker_from_rts c7 Код РТС клиента — владельца заявки&lt;br /&gt;&lt;br /&gt;id_deal i8 Идентификатор сделки по данной записи журнала заявок&lt;br /&gt;&lt;br /&gt;deal_price d16.5 Цена заключенной сделки&lt;br /&gt;&lt;br /&gt;local_stamp t Локальное время пользователя&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Онлайн данные по full_orders_log можно получать через шлюз Plaza2. До 17 февраля 2012 года по Plaza2 была доступна информация только по рынку ФОРТС, с 17 февраля Биржа ММВБ – РТС  начала трансляцию анонимной рыночной информации по Валютному рынку и Фондовому рынку в секторе Основной рынок.&lt;br /&gt;Таким образом, через шлюз Plaza II будет доступна информация  по следующим рынкам:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Cрочный рынок FORTS&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Фондовый рынок в Секторе рынка Standard&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Валютный рынок в режиме РТС Money &lt;br /&gt;&lt;br /&gt;&lt;li&gt;Фондовый рынок в Секторе Основной рынок&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Сохранять ордер лог, обрабатывать и создавать торговых роботов на его основе, вы можете с помощью библиотеки StockSharp. 11 марта StockSharp был сертифицирован биржей РТС для работы с Plaza II.&lt;br /&gt;&lt;br /&gt;Файл с сохраненными данными FOL выглядит примерно следующим образом. Вид из FAR&amp;#39;a. &lt;br /&gt;Tорговые роботы. Full Orders Log Рис.1&lt;br /&gt; &lt;a href='https://stocksharp.ru/file/101757/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/101757/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-1.png?size=800x800" alt="роботы" title="роботы" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Формат данных может немного различаться, зависит от настроек программы, через которую вы его получаете, которая может трансформировать данные, для приведения их к более удобному виду. Например, в изначальном варианте инструменты обозначаются с помощью isin_id i4 Уникальный числовой идентификатор инструмента (8й столбец на картинке) Помимо ордер лога, по шлюзу Plaza2 передается и другая информация, среди которой fut_sess_contents, где мы можем посмотреть соответствие  числовых идентификаторов названию контактов. Например, isin_id = 242176 будет соответствовать контракту RIH2. Таким образом, мы можем преобразовывать вид данных. В этой статье Вы столкнетесь с картинками, где они будут немного различаться.&lt;br /&gt;&lt;br /&gt;Из всего перечня передаваемых данных я бы выделил следующие столбцы. Далее я дам им свои названия, которыми буду пользоваться в дальнейшем.&lt;br /&gt;&lt;br /&gt;Symbol – название инструмента = isin_id  &lt;br /&gt;&lt;br /&gt;Type – покупка/продажа = dir &lt;br /&gt;&lt;br /&gt;ID - уникальный номер заявки = id_ord  &lt;br /&gt;&lt;br /&gt;Moment - время изменения состояния заявки  = moment &lt;br /&gt;&lt;br /&gt;Volume – количество лотов = amount&lt;br /&gt;&lt;br /&gt;Price – цены по которой выставляли заявку = price&lt;br /&gt;&lt;br /&gt;Action Действие с заявкой  - выставление  1/удаление  0 /сделка 2 = action &lt;br /&gt;&lt;br /&gt;ID_Deal - уникальный номер сделки = id_deal&lt;br /&gt;&lt;br /&gt;Price_Deal – цена по которой прошла сделка = deal_price&lt;br /&gt;&lt;br /&gt;В отформатированном виде ордер лог будет выглядеть примерно так.&lt;br /&gt;Tорговые роботы. Full Orders Log Рис.2&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/101746/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-2.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/101746/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-2.png?size=800x800" alt="роботы2" title="роботы2" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Как хранить и обрабатывать FOL&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;На данный момент (2012 год), файл с ордер логом с данными по всем инструментам срочного рынка весит порядка 4-5 гигабайт за один торговый день.  По инструменту RTSi, порядка 1 гигабайта за один день. В одном дне RTSi содержится порядка 8-10 млн строк, из них сделок 600-800 тысяч строк.&lt;br /&gt;1 гигабайт или 9млн строк за день, довольно внушительный объем данных. Поэтому появляется вопрос, как лучше работать с таким объемом данных? По сути, оредр лог представляет собой базу данных, поэтому для его обработки и хранения можно использовать программы для создания и хранения БД. С помощью языка SQL мы можем обрабатывать данные, выводить нужные нам информация и производить расчеты.  SQL проще чем C#, т.к. имеет узкую специализацию, поэтому его легче освоить, но использовать его для других целей проблематично.  Писать робота нужно на C#, для вспомогательных целей при работе с ордер логом использовать SQL.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Торговые роботы на основе ордер лога.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Как уже было сказано, создавать торговых роботов на основе ордер лог можно с помощью stocksharp. &lt;br /&gt;Plaza2 + FOL дают высокую скорость и все необходимые данные для создания и работы высокочастотных роботов. Тут и добавить больше нечего, бери да делай. Если же говорить о тестировании высокочастотных роботов на истории, то нам необходимы стаканы и все сделки. И стаканы и сделки можно сохранять отдельно от FOL через другие каналы. Но, стаканы и сделки не синхронизированы, т.е. мы можем получить такую ситуацию, когда те или другие данные пришли с запаздыванием, в итоге сделка будет относиться к стакану, который был несколькими секундами ранее или позднее. Например, при стакане с офером на 160 600 проходит сделка на покупку 160 700. Ордер лог может избавить нас от такой проблемы, с его помощью можно получить синхронизированный со сделками стакан.&lt;br /&gt;Еще такой момент по тестированию. Если вы захотите ознакомиться с FOL, вы можете скачать месяц бесплатной истории на сайте РТС. На Рис.2 как раз пример исторических данных с сайта РТС. Там вы можете увидеть момент времени, когда заявка пришла в систему, но! Когда заявка пришла к вам на компьютер, там не показано. Нам же, для формирования стаканов, нужно знать какими пачками и в какое время мы получали данные. Поэтому, когда мы сохраняем информацию на домашних компьютерах, дополнительно появляется метка времени, когда заявки дошли до нас.&lt;br /&gt;&lt;br /&gt;Tорговые роботы. Full Orders Log Рис. 3  &lt;br /&gt;Добавлена метка с временем получения данных на компьютер&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/101747/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-3.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/101747/%D0%BE%D1%80%D0%B4%D0%B5%D1%80-%D0%BB%D0%BE%D0%B3-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B0-3.png?size=800x800" alt="роботы3" title="роботы3" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;На сайте РТС, история ордер лога за один год по всем инструментам стоит 5000$. Если вам интересно это направление, стоит задуматься о сохранении истории уже с сегодняшнего дня, чтобы потом не тратить деньги на покупку. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Манипулирование биржевым стаканом: Торговые роботы или …?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Понимание рыночного механизма потока заявок может дать нам ответ на многие вопросы, правда после которых, может появиться еще больше количество вопросов. В сети лежит ролик “Манипулирование ценой в биржевом стакане”.  В ролике показано, как трейдер выставляет заявку на покупку по цене лучшего офера в стакане. Как только он нажимает на ОК, оффер исчезает из стакана. Инсайдер (трейдер-блогер) объясняет такое поведение действиями торговых роботов.&lt;br /&gt;Цитата:  “Вы же наверняка часто видели, как кидая заявку на продажу по рынку, цена уходит назад и Ваша заявка удовлетворяется по цене ниже пунктов на 50, чем та цена, которую Вы видели секунду назад и цена сразу же возвращается назад на 50 пунктов вверх.&lt;br /&gt; &lt;br /&gt; … &lt;em&gt;Они видят благодаря РТС все Ваши манипуляции с заявкой и используют свои быстрые каналы связи с серверами биржи, чтобы откусить чуток от Вашего ордера.”&lt;br /&gt;С точки зрения ордер лога, такого быть не может и торговые роботы не могут реагировать на такую заявку. Среагировать на поступившую заявку, мы можем после того, как к нам пришли данные из плазы. Это самый быстрый, легально возможный способ.  Данные, пришедшие из плазы, это уже история, свершившееся событие. Значит, если мы кинули заявку по цене офера, то она обязана исполниться. Или, этот офер должен быть снят до того момента, когда наша заявка на покупку пришла в систему.  Единственное объяснение, которое приходит мне в голову такое:  брокер делает искусственную задержку и передает информацию о том, что идет заявка. После этого робот брокера отзывает свою заявку или делает другие нужные действия, после чего заявку клиента посылают  на рынок.  Достаточно задержать заявку на полсекунды, чтобы проводить такие махинации, что естественно незаконно. В законе о проф. участниках указанно, что в случае конфликта интересов брокера и клиента, брокер обязан отдавать приоритет клиенту.  Так это происходит в действительности  или нет, мы не знаем.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ордер лог представляется интересным инструментом для анализа рыночной ситуации. Огромное количество интересных возможностей, о которых мы не сказали или даже не знаем. Если у вас есть вопросы, или нужна помощь по ордер логу, можете написать на почту &lt;a href="mailto:info@stocksharp.com"&gt;info@stocksharp.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;StockSharp Торговые роботы</content>
  </entry>
</feed>