﻿<?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=173</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-05-02T22:44:05Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=forum&amp;page=173" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/2657/</id>
    <title type="text">Статус инструмента и восстановление после разрыва связи.</title>
    <published>2012-05-03T06:09:17Z</published>
    <updated>2012-05-03T06:09:17Z</updated>
    <author>
      <name>shumilov</name>
      <uri>https://stocksharp.ru/users/28059/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Здравствуйте! Есть рабочий робот с кодами, программист прекратил поддержку, разбираюсь сам. Робот получает сигналы с сайта и исполняет заявки. Проблем 2. 1. Заявки приходят в любое время, как используя статус инструмента(либо другой способ) пропустить период пром-клиринга Фортс 14.00-14.03 и не пытаться в него выставлять заявки в квик?&lt;br /&gt;2. Если сигнал пришел в момент, когда связь квика с сервером потеряна, то после восстановления соединения, сигнал иногда успевает исполниться, иногда нет. Закономерности не обнаружил. Что необходимо сделать после восстановления связи квика с сервером, перезапустить вывод ДДЕ? StockSharp 4.0.23</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2656/</id>
    <title type="text">NewPositions v4.0.23</title>
    <published>2012-05-02T11:20:45Z</published>
    <updated>2012-05-02T11:20:45Z</updated>
    <author>
      <name>tmt</name>
      <uri>https://stocksharp.ru/users/6032/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Здраствуйте, помогите пожалуйста решить проблемку.&lt;br /&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;pre class="brush:csharp"&gt;
if (MainWindow._position_rim2 != null)
                                {
          if (MainWindow._position_rim2.CurrentValue == 0)
                                          {
                                                  MessageBox.Show(&amp;quot;открываем позицию&amp;quot;);
                                          }
                                }&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;те, сначало проверяем появилась ли информация о позиции rim2, если нет, то следовательно ничего не откроем..&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;pre class="brush:csharp"&gt;
Trader.NewPositions += positions =&amp;gt;
                {
                    if (_position_rim2 == null) { _position_rim2 = positions.FirstOrDefault(p =&amp;gt; p.Security == _rim2); }
                }&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Как можно получить эту информацию без открытия позиции? Помогите пожалуйста!</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2655/</id>
    <title type="text">Важно! Код UUID для подключения коннектора к API OEC!</title>
    <published>2012-05-02T10:46:47Z</published>
    <updated>2012-05-02T10:46:47Z</updated>
    <author>
      <name>Maksim Chertkov</name>
      <uri>https://stocksharp.ru/users/707/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="OpenECry" />
    <content type="html">Наверняка многие из тех кто захочет подключится в первый раз удидят ошибку - Software not permitted. (&amp;quot;Для данного ПО соединение не разрешено&amp;quot;)&lt;br /&gt;Пишу путь решения этой проблемы, без этого коннектор не подключается к тестовому серверу для разработчиков api.openecry.com.&lt;br /&gt;У API OEC есть такая особенность - каждое приложение при подключении к нему должно сообщать свой UUID код, иначе выдается ошибка - Software not permitted.&lt;br /&gt;Даже если вы зарегистрировались в OEC как разработчик и получили логин и пароль - код UUID вам нужно получать отдельно, специальным запросом в службу поддержки по адресу &lt;a href="https://stocksharp.ru/away/?u=AQAAAAAAAACCtRaSKZCgKLf4-0L1omq5sEFvQCd14aPpbPksrA_bxJ71KMzlOwRgB2qAe_fq5uw"&gt;tickets_support@openecry.com&lt;/a&gt;, где на английском надо сообщить свой логин и попросить прислать вам номер UUID. &lt;br /&gt;По получении необходимо залезть в исходник коннектора и либо исправить там в файле OECTrader.cs строку private const string _oecUuid =&amp;quot;ваш код&amp;quot;, либо пойти дальше и сделать его одним из публичных свойств класса OECTrader и прописать уже потом в своей программе (видимо разработчик коннектора был не в курсе и не вывел наружу это нужное свойство. Последнюю версию коннектора на кодеплексе я так и не нашел, может уже исправили, если нет, то оччень желательно это сделать). После всех вышеописанных действий доступ должен заработать.&lt;br /&gt;&lt;br /&gt;Еще сейчас дописал к коннектору функцию получения свечек по инструментам, сейчас в режиме тестирования, как закончу - если еще актуально будет, то выложу обязательно.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2654/</id>
    <title type="text">Ошибка при формированиии списка сделок</title>
    <published>2012-05-01T15:02:52Z</published>
    <updated>2012-05-01T15:02:52Z</updated>
    <author>
      <name>gazrvs_nur</name>
      <uri>https://stocksharp.ru/users/5983/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">Добрый день господа!&lt;br /&gt;&lt;br /&gt;Гидра заработала хорошо, закачал GAZP c Финама за период с 24.04.2011г. по 28.05.2012г.&lt;br /&gt;Однако при попытке отобразить сделки за период больше полгода (например с 01.10.2011г.) заполняет память до 3Гб выдает ошибку, а список сделок соответственно не показывает.&lt;br /&gt;За меньший период все работает отлично.&lt;br /&gt;&lt;br /&gt;Также Гидра освобождает занимаемую память (1-2 Гб) только после закрытия программы, даже при закрытой таблице сделок.&lt;br /&gt;&lt;br /&gt;Это особенность программы или проблема в объеме памяти?&lt;br /&gt;Windows 7 Ultimate, х64, ОЗУ 4Гб.&lt;br /&gt;&lt;br /&gt;Интересно сколько желательно иметь памяти за работы с Гидрой и Stocksharp?&lt;br /&gt;И есть ли способы принудительного освобождения памяти.&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2653/</id>
    <title type="text">История одной стратегий</title>
    <published>2012-04-30T13:14:29Z</published>
    <updated>2012-04-30T13:14:29Z</updated>
    <author>
      <name>Rrider</name>
      <uri>https://stocksharp.ru/users/28488/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">По мотивам ветки: &lt;a href="http://stocksharp.com/forum/361/Torghovyie-roboty-Shagh-1--Tiestirovaniie-torghovoi-sistiemy/
" title="http://stocksharp.com/forum/361/Torghovyie-roboty-Shagh-1--Tiestirovaniie-torghovoi-sistiemy/
"&gt;http://stocksharp.com/fo...iie-torghovoi-sistiemy/
&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Был немного удивлен увидев практически точное описание стратегий, по которой я торговал последнее время, поэтому решил высказаться.&lt;br /&gt;&lt;br /&gt;Отличная стратегия, отличные результаты, но можно ли этой стратегией реально заработать на рынке? Только если повезет! Давайте посмотрим как это стратегия работает на реальном рынке. Как это сделать? Да очень просто – я вам расскажу. Последние два года я торговал по описанной выше стратегии и готов поделиться результатами.&lt;br /&gt;&lt;br /&gt;Итак,  стратегия была мной разработана в начале 2010 года, протестирована и оптимизирована в программе собственной разработки. Чем отличается от описанной выше? Во первых, лучшие результаты были получены с МА периодом 652 – это количество 5-минутных свечек за 4 дня. Во-вторых, я не ждал локальной коррекции в виде свечи против тренда , а ждал когда Хай и Лой свечи входа был выше Хая и Лоя предыдущей свечи, это в Лонг, в шорт, соответвственно, наборот.  Объем входа был 80% от депо. Стоп на уровне 5% от депо. Количество сделок вдень – не более одной. Закрытие позиции всегда в 23.30. Инструмент – Фьюч на индекс РТС. Торговля руками. &lt;br /&gt;&lt;br /&gt;Торговля стартовала 1 марта 2010 года. Стартовое депо – 355 000 руб. И вот результат реальной торговли по месяцам:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:green"&gt;Март: +24,6%&lt;br /&gt;Апрель: +25,1%&lt;br /&gt;Май: +44,2%&lt;br /&gt;Июнь: +4,5% &lt;/span&gt;&lt;br /&gt;&lt;span style="color:red"&gt;Июль: -28,7%&lt;br /&gt;Август: -19,1%&lt;br /&gt;Сентябрь: -20,5%&lt;br /&gt;Октябрь: -22,3%&lt;br /&gt;Ноябрь: -21,2%&lt;br /&gt;Декабрь: -17,2%&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;20 декабря торговля была остановлена. Итоги: Первые три месяца все было отлично,  в мае счет вырос до 808 000 руб. Потом – как отрезало, 6 месяцев подряд убыточны.  Торговля был остановлена, когда счет упал до 100000. При этом каждый месяц со счета выводилось немного средств, всего было выведено 350000 руб. Заработать удалось всего 100000 руб. Тестовые показатели были значительно лучше. &lt;br /&gt;После этого я взял длительный перерыв для анализа ситуации. Какие выводы я сделал:&lt;br /&gt;&lt;br /&gt;1.	Я торговал руками, а следовательно не всегда следовал своей системе. Иногда были внеплановые сделки, иногда входил не по системе или по системе не входил. Таких внесистемных сделок наверное было около 10-20% от общего числа. Еще экспериментировал с размером стопа, периодический его меняя, пробуя работать с очень маленьким стопом. И еще пробовал переносить сделки через ночь – всегда неудачно.  Но самое обидное, было пару дней, когда я не мог торговать, был занят другими делами, а когда вечером включал терминал – БА!!! Я профукал ударный день, в эту минуту я вспоминал все матерные слова и придумывал новые… &lt;br /&gt;2.	У этой стратегий есть огромный недостаток – она с лекгостью впадает в длинную череду убыточных сделок подряд и с этим надо что-то делать.&lt;br /&gt;&lt;br /&gt;На основании сделанных выводов были приняты следующие решения: &lt;br /&gt;1.	Писать робота! Робот будет соблюдать стратегию и не будет пропускать ударные дни.&lt;br /&gt;2.	А вот что-бы не попадать в длинную череду убыточных сделок, я решил торговать несколькими фьючерсами одновременно, тем более это теперь будет делать робот, его то это не напряжет. Вероятность, что несколько фьючерсов одновременно попадут в череду убыточных сделок значительно меньше. Желательно, конечно, что бы они &amp;#171;ходили&amp;#187; по разному.&lt;br /&gt;Я выбрал несколько фьючерсов и стал их гонять на истории. Получилось неплохо – почти все зарабатывают. Я выбрал для торговли: фьюч на индекс РТС, фьюч на Сбер, фьюч Доллар-рубль и фьюч на Газпром. Газпром показал худшие результаты, но свою копеечку давал и для выравнивания результатов сгодится. Очень хотел взять фьюч Евро-доллар, потому-то &amp;#171;ходит&amp;#187; отлично от других, то так и не смог подобрать к нему ключи, нет стабильного результата, дерганный он. Надо еще отметить, что у каждого фьюча свой характер и некоторые параметры отличаются. Например, у всех фьючей есть ограничение – не более одной сделки в день, а фьючерс на Доллар-рубль в таком ограничении не нуждается.&lt;br /&gt;Осталось написать робота, стратегия простая, поэтому работ был написан на Qpile.&lt;br /&gt;&lt;br /&gt;Попытка номер 2.&lt;br /&gt;&lt;br /&gt;Робот стартовал 12.07.2011. Стартовая сумма 60000 руб. Основное изменение в стратегии, то что теперь все фьючерсы торгуются с переносом позиции через ночь,  кроме Газпрома, он этого не очень любит, опять же диверсификация рисков какая-то…&lt;br /&gt;&lt;br /&gt;Понеслась….&lt;br /&gt;Прошло 10 месяцев… Вам интересен результат? Да пожалуйста, таблица внизу, результат в рублях и в процентах, проценты считались от ГО, а не от депо&lt;br /&gt;&lt;br /&gt;Итог: за 9 месяцев было заработано 111493 руб. или 185% вроде бы и круто, но как же нестабильно… По сути весь результат был сделан в августе и осенью с их жирными ударными днями, в остальное время слив…&lt;br /&gt;&lt;br /&gt;Решение о торговле несколькими инструментами было правильным. Фьюч на Индекс РТС в зимние месяце опять впал в безумную череду убыточных сделок подряд – 41. И если бы не Сбер и Доллар-рубль, был бы глубокий Drawdon. А так хоть в нулях удержались.&lt;br /&gt;Фьюч на Индекс РТС в тестах показывал лучшие результаты, в реалии оказался худшим и единственным, кто дал отрицательный результат за время торговли -14278 руб. Это потребовало отдельного анализа, в январе-феврале цена на фьюч пребывала в замечательном тренде и выросла за два месяца на 35000 пунктов, а мне не удалось взять ни одного трейда, стал анализировать каждый день. И вот что выяснилось – было, как минимиум, три возможности взять цель. Первый раз не хватило 70 пунктов, стоял бы стоп на 70 пунктов дальше цель была бы взята. Второй раз не хватило 5 минут от начало торгов, если бы робот включался в торги не в 11-10, а в 11-15, была бы сделка со взятием цели. И трети случай, и то же 5 минут не хватило- если бы робот торговал до 18-05, а не до 18-00, то тоже была бы сделка со взятием цели. Забавно правда? Рынок всегда знает наши уязвимые места и бьет  туда.&lt;br /&gt;&lt;br /&gt;16.04.2012 торговля была остановлена по причине отрицательного результата за последние 5 месяцев, и абсолютно неадекватного рынка. Ударных дней нет, трендов нет, &amp;#171;хвостатые&amp;#187;дневные свечки. Трендовые стратегий безжалостно &amp;#171;пилятся&amp;#187;.&lt;br /&gt;&lt;br /&gt;Что делать дальше? Честно говоря незнаю. Возможно добавлю в портфель еще пару фьючей, дам роботу немного денег, уменьшу плечо до 50% и пусть он там потихоньку сам с собой колбасится, благо есть пить не просит А сам буду пробовать принципиально новые стратегии.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2652/</id>
    <title type="text">LicenseHelper threw an exception</title>
    <published>2012-04-28T16:32:51Z</published>
    <updated>2012-04-28T16:32:51Z</updated>
    <author>
      <name>FinDirector</name>
      <uri>https://stocksharp.ru/users/473/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Версия dev-ветка, stocksharp-16607.&lt;br /&gt;Создал с помощью LicenseTool файл stocksharp_license.xml (лежит в папке с роботом), на этом же компьютере запускаю бота.&lt;br /&gt;Ошибка:&lt;br /&gt;&lt;br /&gt;+		ex	{&amp;quot;The type initializer for &amp;#39;StockSharp.Algo.Licensing.LicenseHelper&amp;#39; threw an exception.&amp;quot;}	System.Exception {System.TypeInitializationException}</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2651/</id>
    <title type="text">Тысячи операций тестирования стратегии: как лучше сделать?</title>
    <published>2012-04-28T10:01:03Z</published>
    <updated>2012-04-28T10:01:03Z</updated>
    <author>
      <name>Spiritschaser</name>
      <uri>https://stocksharp.ru/users/1927/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">Добрый день!&lt;br /&gt;&lt;br /&gt;Пытаюсь вызвать много-много раз тестирование стратегии для автоматической оптимизации. Получается ерунда, так как каждый вызов отъедает много памяти, всё виснет и тормозит.&lt;br /&gt;&lt;br /&gt;Я правильно понимаю, что лучше самостоятельно реализовать функционал, аналогичный PnL менеджеру и прочему с загрузкой из готовых свечек?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2650/</id>
    <title type="text">Exception в текущей dev - Method not found в candleManager.Start(series);</title>
    <published>2012-04-28T07:47:21Z</published>
    <updated>2012-04-28T07:47:21Z</updated>
    <author>
      <name>gaifredo</name>
      <uri>https://stocksharp.ru/users/28644/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">при попытке запустить проект SampleHistoryTesting&lt;br /&gt;в файле \stocksharp-16607\dev\Samples\Testing\SampleHistoryTesting\MainWindow.xaml.cs&lt;br /&gt;ругается на 134 линию  &lt;br /&gt;&lt;br /&gt;candleManager.Start(series);&lt;br /&gt;&lt;br /&gt;Method not found: &amp;#39;Void Ecng.Collections.BlockingQueue`1.Enqueue(System.__Canon, Boolean)&amp;#39;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;   at StockSharp.Algo.Candles.Compression.RealTimeCandleBuilderSource`1.Start(CandleSeries series, DateTime from, DateTime to)&lt;br /&gt;   at #=qkoSo$d923scmg_sYtLvcgJDGgenyR2OwOQSmOMaWOdRZ_iz0whiNpGkiDBoCJI4r1ryZzLcb1QYa_lyTFt55oA==.#=qNsfZgCjM2t9sSyBJQG6_sA==()&lt;br /&gt;   at StockSharp.Algo.Candles.Compression.CandleBuilder`1.#=qyCTQBMh49yPqF$jNoeQvD0QHp84MWLj$2xKpl5gnhYY=.#=qs8p6GN_7UHa_1rIO$Fi4zA==()&lt;br /&gt;   at StockSharp.Algo.Candles.Compression.CandleBuilder`1.Start(CandleSeries series, DateTime from, DateTime to)&lt;br /&gt;   at StockSharp.Algo.Candles.Compression.TimeFrameCandleBuilder.Start(CandleSeries series, DateTime from, DateTime to)&lt;br /&gt;   at #=qkoSo$d923scmg_sYtLvcgJDGgenyR2OwOQSmOMaWOdRZ_iz0whiNpGkiDBoCJI4r1ryZzLcb1QYa_lyTFt55oA==.#=qNsfZgCjM2t9sSyBJQG6_sA==()&lt;br /&gt;   at StockSharp.Algo.Candles.CandleManager.Start(CandleSeries series, DateTime from, DateTime to)&lt;br /&gt;   at StockSharp.Algo.Candles.CandleHelper.Start(ICandleManager manager, CandleSeries series)&lt;br /&gt;   at SampleHistoryTesting.MainWindow.StartBtn_Click(Object sender, RoutedEventArgs e) in C:\StockSharp\stocksharp-16607\dev\Samples\Testing\SampleHistoryTesting\MainWindow.xaml.cs:line 134&lt;br /&gt;   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)&lt;br /&gt;   at System.Windows.Controls.Button.OnClick()&lt;br /&gt;   at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)&lt;br /&gt;   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)&lt;br /&gt;   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;   at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)&lt;br /&gt;   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)&lt;br /&gt;   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)&lt;br /&gt;   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)&lt;br /&gt;   at System.Windows.Input.InputManager.ProcessStagingArea()&lt;br /&gt;   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)&lt;br /&gt;   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)&lt;br /&gt;   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)&lt;br /&gt;   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)&lt;br /&gt;   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2649/</id>
    <title type="text">Сериализация Ордеров, сделок итд</title>
    <published>2012-04-28T05:26:36Z</published>
    <updated>2012-04-28T05:26:36Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Кто заморачивался? Пробую сделать не особо получается. Если сериализация проходит через&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
            var stream = new FileStream(&amp;quot;file.xml&amp;quot;,FileMode.OpenOrCreate);
            var writer = new DataContractSerializer(typeof (Order));
            writer.WriteObject(stream, order);
            stream.Flush();&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;То обратно как-то не получается. &lt;br /&gt;&lt;br /&gt;Вопрос собственно возник вот почему. Есть такой класс SettingsStorage в котором и предлагается хранить настройки стратегий. А дальше через простой код настройки в файл писать и оттуда читать: &lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;

    var settings = new SettingsStorage();
    settings.SetValue(&amp;quot;UsedVolume&amp;quot;, UsedVolume);
    settings.SetValue(&amp;quot;Ticks&amp;quot;, Ticks);
    settings.SetValue(&amp;quot;Volume&amp;quot;, Volume);
    settings.SetValue(&amp;quot;SpreadVolume&amp;quot;, SpreadVolume);
    new XmlSerializer&amp;lt;SettingsStorage&amp;gt;().Serialize(settings, &amp;quot;marketProfile.xml&amp;quot;);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Вот допустим возникает ситуация когда нужно сохранить 3 сделки, которые в данный момент находятся в процессе защиты по какому-то там алгоритму. Мы будем писать нечто&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;

    var settings = new SettingsStorage();
    settings.SetValue(&amp;quot;Trade1&amp;quot;, MyTrade1); // &amp;lt;--- сохраняем объекты класса MyTrade
    settings.SetValue(&amp;quot;Trade2&amp;quot;, MyTrade2);
    settings.SetValue(&amp;quot;Trade3&amp;quot;, MyTrade3);
    new XmlSerializer&amp;lt;SettingsStorage&amp;gt;().Serialize(settings, &amp;quot;marketProfile.xml&amp;quot;);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Ну и ничего у нас не получится. Выдает исключение и гуляй&lt;br /&gt;&lt;br /&gt;Собственно вопрос состоит в том КАК? Как сериализуются ордера, сделки и прочая ерунда. При этом они должны и обратно собираться в объекты.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2648/</id>
    <title type="text">Программирование функций классами в ООП разрывает мой мозг...</title>
    <published>2012-04-27T18:42:34Z</published>
    <updated>2012-04-27T18:42:34Z</updated>
    <author>
      <name>Spiritschaser</name>
      <uri>https://stocksharp.ru/users/1927/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Пытаюсь сделать из S# стратегии и тест-трейдера фитнес-функцию для оптимизатора из AForge.net.&lt;br /&gt;&lt;br /&gt;Столкнулся с непостижимым для меня противоречием: фитнес-функция в афордже должна быть запрограммирована как класс, в котором реализован интерфейс, и затем алгоритмы мутации и всего такого создают экземпляр этого класса.&lt;br /&gt;&lt;br /&gt;Мое мышление функционального программиста наивно вынесло SimpleHistoryTesting в функцию, которую я не знаю, как вызывать из фитнес-функции.&lt;br /&gt;&lt;br /&gt;Как правильно делать? Извините, что задаю вопросы по для кого-то очевидным вещам, но мне уже плохо, когда я смотрю, как отъедает память тестирование... И у меня нет средств её освободить принудительно.&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2647/</id>
    <title type="text">Вопрос по обработке сделок</title>
    <published>2012-04-27T08:39:17Z</published>
    <updated>2012-04-27T08:39:17Z</updated>
    <author>
      <name>Александр (ПАА)</name>
      <uri>https://stocksharp.ru/users/5968/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Ситуация такая, стратегия отправляет заявки на биржу метод RegisterOrder(Order) и по таймауту или исполнению некого условия снимает через метод Trader.CancelOrder(Order). Учет закрытых позиций и цены происходит при событии появлении новой сделки order.NewTrades() (нужно для работы робота), &lt;br /&gt;По событию снятия заявки .Order.Canceled() или её полного исполнения заявка считается закрытой.&lt;br /&gt;&lt;br /&gt;В каждом событии стоит проверка - если статус заявки Done и количество учтенных роботом позиций равно ОбъемЗаявки - БалансЗаявки. То исключаем её из списка робота, и считаем что закрыта, т.е. робот считает что вся информация по заявке получена. &lt;br /&gt;Учитывается ситуация если сделки пришли позже, чем заявка была снята/исполнена, так же есть обработка события неудачной отмены заявки. Код основательно перерыт и перепроверен.&lt;br /&gt;&lt;br /&gt;Но иногда примерно с одной-двумя из 500 заявок возникает ситуация когда условие проверки выполняется заявка исключается, но Робот учитывает не все сделки прошедшие по заявке. Как вариант может быть такое, что в какой-то момент статус заявки Done, а баланс по ней ещё может изменится?&lt;br /&gt;В чем может быть причина, может сталкивался кто-то? Уже просто не знаю что с этим делать.&lt;br /&gt;Сейчас все работает на тестовом сервере РТС, Forts Plaza - II.&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2646/</id>
    <title type="text">Последняя версия</title>
    <published>2012-04-26T21:01:23Z</published>
    <updated>2012-04-26T21:01:23Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="OpenECry" />
    <content type="html">Теперь будет выкладываться вместе со всеми коннекторами на КодеПлекс. Это позволит избежать путаницы с версиями S#, которые есть на кодеплексе, и которые есть в запароленном архиве (он останется для выкладывания туда исходного кода).&lt;br /&gt;&lt;br /&gt;Коннектор требует особую лицензию (напомню, S# теперь проверяет наличие на компьютере лицензионного файла). Всех, кто участвовал в разработке, добавим на сервере, чтобы получили особые версии лицензий.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2645/</id>
    <title type="text">4.1 WeightedIndexSecurity странности в работе</title>
    <published>2012-04-26T18:54:50Z</published>
    <updated>2012-04-26T18:54:50Z</updated>
    <author>
      <name>Moadip</name>
      <uri>https://stocksharp.ru/users/5973/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">С помощью WeightedIndexSecurity рисую график спреда двух инструментов. ТФ 1мин.&lt;br /&gt;&lt;br /&gt;Подписываюсь у CandleManager на Processing, в обработчик приходят только &amp;quot;целые&amp;quot; свечки.&lt;br /&gt;Это видно по записям в логе - нет повторяющихся записей.&lt;br /&gt;&lt;br /&gt;Это так и должно быть что свечки только целиком приходят? &lt;br /&gt;Т.е. нет возможности чтобы одна свечка перерисовывалась с каждым новым тиком как у обычного Security? Или это баг?&lt;br /&gt;&lt;br /&gt;Плюс приходят не с равным интервалом, а за раз по несколько штук.&lt;br /&gt;&lt;br /&gt;&lt;a href='http://i33.fastpic.ru/big/2012/0426/48/114c16f0df407b39facb20767258be48.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="http://i33.fastpic.ru/big/2012/0426/48/114c16f0df407b39facb20767258be48.png" style='max-width: 600px;' alt=""/&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2644/</id>
    <title type="text">Выполнение RegisterOrder в синхронном режиме</title>
    <published>2012-04-26T17:35:46Z</published>
    <updated>2012-04-26T17:35:46Z</updated>
    <author>
      <name>rtDen</name>
      <uri>https://stocksharp.ru/users/733/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">trader.IsAsyncMode = false;&lt;br /&gt;&lt;br /&gt;Обработчик trader.NewStopOrders:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
private void trader_NewStopOrders(IEnumerable&amp;lt;Order&amp;gt; stopOrders)
{
	...
	AddLog(&amp;quot;New stop orders&amp;quot;, true);
	AddLog(&amp;quot;thread id: &amp;quot; + Thread.CurrentThread.ManagedThreadId.ToString() + &amp;quot; thread name: &amp;quot; + Thread.CurrentThread.Name, true);
	...
}&lt;/pre&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;pre class="brush:csharp"&gt;
private void button1_Click(object sender, EventArgs e)
{
	Order order = CreateStopLimit(1, 151500, 151500, workSecurity, OrderDirections.Sell);
	AddLog(&amp;quot;thread id: &amp;quot; + Thread.CurrentThread.ManagedThreadId.ToString() + &amp;quot; thread name: &amp;quot; + Thread.CurrentThread.Name, true);
	AddLog(&amp;quot;do: &amp;quot; + order.Id.ToString(), true);
	try
	{	
		trader.RegisterOrder(order);
	}
	catch
	{
	}
	AddLog(&amp;quot;posle: &amp;quot; + order.Id.ToString(), true);
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Лог:&lt;br /&gt;22:40:44:62 thread id: 10 thread name: &lt;br /&gt;22:40:44:62 do: 0&lt;br /&gt;22:40:44:320 New stop orders&lt;br /&gt;22:40:44:322 thread id: 10 thread name: &lt;br /&gt;22:40:44:327 posle: 1395021&lt;br /&gt;&lt;br /&gt;Т.е. в trader_NewStopOrders мы попадаем сразу из trader.RegisterOrder(order);&lt;br /&gt;&lt;br /&gt;При выполеннии следующего куска кода из метода, вызываемого из обработчика trader.NewMyTrades&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
AddLog(&amp;quot;thread id: &amp;quot; + Thread.CurrentThread.ManagedThreadId.ToString() + &amp;quot; thread name: &amp;quot; + Thread.CurrentThread.Name, true);
AddLog(&amp;quot;do: &amp;quot; + order.Id.ToString(), true);
try
{
	trader.RegisterOrder(order);
}
	catch (Exception e)
{
	AddLog(&amp;quot;Ошибка: &amp;quot; + e.Message, true);
}
AddLog(&amp;quot;posle: &amp;quot; + order.Id.ToString(), true);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Имеем лог:&lt;br /&gt;&lt;br /&gt;22:39:09:809 thread id: 23 thread name: EventDispatcher thread #мои сделки&lt;br /&gt;22:39:09:809 do: 0&lt;br /&gt;22:39:10:193 posle: 1395020&lt;br /&gt;22:39:10:193 New stop orders&lt;br /&gt;22:39:10:193 thread id: 23 thread name: EventDispatcher thread #мои сделки&lt;br /&gt;&lt;br /&gt;Т.е. в trader_NewStopOrders мы попадаем уже после окончания метода.&lt;br /&gt;&lt;br /&gt;Хотелось бы узнать в каких случаях мы сразу попадем в trader_NewStopOrders, а в каких нет, всегда ли они будут выполняться в том же потоке что и trader.RegisterOrder(order); и т.д. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2643/</id>
    <title type="text">Насколько реально задокументировать закрытый протокол?</title>
    <published>2012-04-26T17:31:07Z</published>
    <updated>2012-04-26T17:31:07Z</updated>
    <author>
      <name>art.tsgnet</name>
      <uri>https://stocksharp.ru/users/6002/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">может у кого уже был опыт работы с закрытыми протоколами&lt;br /&gt;насколько это реально&lt;br /&gt;и каким образом, снифать каждый пакет?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2642/</id>
    <title type="text">Событие _trader.PreProcessDdeData</title>
    <published>2012-04-26T16:15:42Z</published>
    <updated>2012-04-26T16:15:42Z</updated>
    <author>
      <name>art.tsgnet</name>
      <uri>https://stocksharp.ru/users/6002/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Добрый вечер. Если кого-то не затруднит, расскажите подробней про это событие. QuikTrader.PreProcessDdeData&lt;br /&gt;Интересуют параметры, что содержат.&lt;br /&gt;Если я правильно понимаю, то любая (?) информация от квика через DDE проходит через это событие, тогда напрашивается вопрос, что можно с этими данными сделать? посмотреть только, или же изменить как-то?&lt;br /&gt;(если конкретно, то моя цель отсеять лишнюю информацию, а именно ненужные мне сделки, чтобы они не сохранялись в памяти)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2641/</id>
    <title type="text">Синхронизация NewTrades() и CandlesFinished()</title>
    <published>2012-04-26T08:52:10Z</published>
    <updated>2012-04-26T08:52:10Z</updated>
    <author>
      <name>profts</name>
      <uri>https://stocksharp.ru/users/6174/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">обновился до 4.1, переписал тестер, но не пойму как синхронизировать эти события. &lt;br /&gt;&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;

 var storage = new TradingStorage(new InMemoryStorage())
            {
                BasePath = HistoryPath.Text
            };

            _trader = new EmulationTrader(
                new[] { security },
                new[] { portfolio })
            {
                MarketTimeChangedInterval = timeFrame,
                Storage = storage,
                WorkingTime = Exchange.Rts.WorkingTime,
                DaysInMemory = 1,
            };
            
            _trader.DepthGenerators[security] = new TrendMarketDepthGenerator(security)
            {
                Interval = TimeSpan.FromSeconds(2),
            };

            var candleManager = new CandleManager();
            var cbs = new TradeStorageCandleBuilderSource { BasePath = HistoryPath.Text, Storage = storage };

             var _builder = new TimeFrameCandleBuilder();
            _builder.Sources.Add(cbs);

             candleManager.Sources.Add(_builder);
            
            candleseries = new CandleSeries(typeof(TimeFrameCandle), security, timeFrame);
          
            candleManager.Start(candleseries, startTime, stopTime);


&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;в стратегии 2 правила: &lt;br /&gt;&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;

this
                .When(Security.SecurityNewTrades())
                .Do(...);
            this
                      .When(_candleManager.Series.ElementAt(0).CandlesFinished())
                      .Do(...);

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2640/</id>
    <title type="text">Как открыть поток репликации в кастом режиме</title>
    <published>2012-04-26T07:38:02Z</published>
    <updated>2012-04-26T07:38:02Z</updated>
    <author>
      <name>sergun</name>
      <uri>https://stocksharp.ru/users/6139/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">Вижу StreamManager.Streams.. Вижу у стрима ReplicationType. Но вот в какой момент его задать?&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2639/</id>
    <title type="text">глубина стакана. где настраивается?</title>
    <published>2012-04-26T05:56:20Z</published>
    <updated>2012-04-26T05:56:20Z</updated>
    <author>
      <name>Melichron</name>
      <uri>https://stocksharp.ru/users/27597/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Коллеги, здравствуйте.&lt;br /&gt;...может быть я и туплю, но с кем не бывает, поэтому не судите строго.&lt;br /&gt;в квике на ММВБ показывает глубину стакана по 10 уровней в каждую сторону. на RTS-Standart - 20. &lt;br /&gt;а мне нужно больше.&lt;br /&gt;хоть ты тресни не могу найти где настраивается эта фигня (и настраивается ли она вообще?)[cursing] от чего это зависит?&lt;br /&gt;подскажите хоть в какую сторону копать:)&lt;br /&gt;&lt;br /&gt;и еще:&lt;br /&gt;может быть через Stock# можно эту настройку менять?&lt;br /&gt;&lt;br /&gt;заранее спасибо.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2638/</id>
    <title type="text">4.1 LogControl не работает автоскролл</title>
    <published>2012-04-25T18:43:52Z</published>
    <updated>2012-04-25T18:43:52Z</updated>
    <author>
      <name>Moadip</name>
      <uri>https://stocksharp.ru/users/5973/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">При появлении новой записи не происходит прокрутка до нее. Вместо этого происходит прокрутка к первой строке.&lt;br /&gt;&lt;br /&gt;Установка свойства AutoScrollDown в true не помогает(хотя оно судя по описанию и так в true)&lt;br /&gt;&lt;br /&gt;Неплохо было бы добавить автоскролл для других подобных классов&lt;br /&gt;&lt;br /&gt;&lt;b&gt;MonitorWindow&lt;br /&gt;Monitor&lt;br /&gt;LogWindow &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;а также для&lt;br /&gt;&lt;br /&gt;&lt;b&gt;OrderGrid &lt;/b&gt;и &lt;b&gt;TradeGrid&lt;/b&gt;&lt;br /&gt;</content>
  </entry>
</feed>