﻿<?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=250</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-17T05:03:19Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=250" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/1702/</id>
    <title type="text">Hydra, РТС, ошибки при импорте, некорректный минимальный шаг цены</title>
    <published>2011-06-30T17:59:16Z</published>
    <updated>2011-06-30T17:59:16Z</updated>
    <author>
      <name>Church</name>
      <uri>https://stocksharp.ru/users/459/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">Гидра проработала нормально до 30.05.2006, затем начали появляться сообщения о неправильном размере минимального шага цены, сначала по межбанковским ставкам (1 вместо 0.01), затем и по другим инструментам. С 2007 их стало слишком много, каждый раз через настройки инструмента менять уже очень долго.&lt;br /&gt;&lt;br /&gt;Насколько я понимаю, Гидра ставит дефолтно minStepSize = 1 по всем инструментам с РТС, либо в спецификациях с РТС что-то перепутано.&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:plain"&gt;
RTS 21:53:11.5214566 Стартовал.
RTS 21:53:14.5006270 Загружено 22988 сделок.
RTS 21:53:14.5036272 Первая сделка 8390994 для ESZ6@RTS за 15.09.2006 10:30:07.
RTS 21:53:14.5036272 Последняя сделка 348261 для GZ31000L6@RTS за 15.09.2006 17:21:36.
RTS 21:53:14.5876320 Для инструмента &amp;#39;ESZ6@RTS&amp;#39; загружено 11704 сделок.
RTS 21:53:14.6296344 Для инструмента &amp;#39;GZZ6@RTS&amp;#39; загружено 4258 сделок.
RTS 21:53:14.6576360 Для инструмента &amp;#39;LKZ6@RTS&amp;#39; загружено 1670 сделок.
RTS 21:53:14.6776371 Для инструмента &amp;#39;GDZ6@RTS&amp;#39; загружено 510 сделок.
RTS 21:53:14.7236398 Для инструмента &amp;#39;RIZ6@RTS&amp;#39; загружено 3689 сделок.
RTS 21:53:14.7456410 Для инструмента &amp;#39;GMZ6@RTS&amp;#39; загружено 121 сделок.
RTS 21:53:14.7676423 Для инструмента &amp;#39;SNZ6@RTS&amp;#39; загружено 51 сделок.
RTS 21:53:14.7896435 Для инструмента &amp;#39;URZ6@RTS&amp;#39; загружено 13 сделок.
RTS 21:53:14.8196453 Для инструмента &amp;#39;RIH7@RTS&amp;#39; загружено 126 сделок.
RTS 21:53:14.8456467 Для инструмента &amp;#39;SBZ6@RTS&amp;#39; загружено 53 сделок.
RTS 21:53:14.8676480 Для инструмента &amp;#39;GZH7@RTS&amp;#39; загружено 6 сделок.
RTS 21:53:14.8896493 Для инструмента &amp;#39;ESH7@RTS&amp;#39; загружено 40 сделок.
RTS 21:53:14.9126506 Для инструмента &amp;#39;RTZ6@RTS&amp;#39; загружено 56 сделок.
RTS 21:53:14.9346518 Для инструмента &amp;#39;SiZ6@RTS&amp;#39; загружено 54 сделок.
RTS 21:53:14.9566531 Для инструмента &amp;#39;MIH7@RTS&amp;#39; загружено 1 сделок.
RTS 21:53:14.9806545 Для инструмента &amp;#39;URV6@RTS&amp;#39; загружено 4 сделок.
RTS 21:53:14.9836546 System.ArgumentException: Минимальный шаг цены 1 не соответствует самой цене 593,1.
Имя параметра: minStepSize
   в #=qIWfWlhw8RkSIH1hJKE9hpLzXwt0wcyiS1sVxIv4HTlroAtkOyFRmQBhFANDMRk6n.#=q_QDSIzdyHvtuUtG5mgCxRA==(List`1 #=qy7LxZJSiAKhu6Fqvz4hacg==, Decimal #=qa9PY5r001wn8QWl97acXdA==, Decimal #=qjzEwHooeKp4vnmGh1FLozw==, Decimal #=qDhaTlL36mnyLC3iPIfvOYw==)
   в #=qAsSUFYFYYjZ8VL0S4QA2PdVH4JJl$PAkIPt74SjBx2IyPkMiRTcXYUWVcsynWYqZ.#=qDBfn57Umo2cBYfbWsbXjrw==(List`1 #=qMgq2B_9a8l6miz03RBuOzg==, IEnumerable`1 #=qK0xQtGLYr6rRuAs1iphUIg==, DateTime #=qYmRCQh_B5CKT3GEenrNG_Q==, IDictionary`2 #=q1KPkk4NwCLdPUCG46Ltecg==)
   в #=qIWfWlhw8RkSIH1hJKE9hpLzXwt0wcyiS1sVxIv4HTlroAtkOyFRmQBhFANDMRk6n.#=q54RqIsUOL1IfVw0jfmwFiQ==(DateTime #=qzDwP_hkdf4uzQCztq_tWSw==, IEnumerable`1 #=q3MvdPmybJ$L6Sxotf_1tGQ==, Boolean #=qx3BRK4fPqcqRSHpStwBKvQ==)
   в #=qIWfWlhw8RkSIH1hJKE9hpLzXwt0wcyiS1sVxIv4HTlroAtkOyFRmQBhFANDMRk6n.Save(IEnumerable`1 #=qhEjUdssBMl5FjwH9p_28hw==)
   в StockSharp.Hydra.Worker.&amp;lt;Download&amp;gt;b__10(IMarketDataSource source) в E:\StockSharpReleases\StockSharp_3.2.2\Sources\Hydra\Hydra\Worker.cs:строка 138&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Есть ли какой-нибудь способ это исправить/автоматизировать правки minStepSize?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1701/</id>
    <title type="text">S# и получение тиков</title>
    <published>2011-06-30T16:40:23Z</published>
    <updated>2011-06-30T16:40:23Z</updated>
    <author>
      <name>kdim3</name>
      <uri>https://stocksharp.ru/users/28250/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Добрый день, вопрос как проверить всели тики получает S# из QUIK, я вот столкнулся с проблемой что из таблицы всех сделок очень большой процент потери данных при передачи новых данных по DDE (90% потерь) когда пытался сделать свой DDE сервер?&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAAAJcKzrSUf-fEuXRPnn2hXnamvVaZ7ZsgTnahMPAe5J8UZ7wM46bzPkM51EyX0nzK4" title="http://www.quik.ru/forum/iwr/74280/74280/"&gt;http://www.quik.ru/forum/iwr/74280/74280/&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1700/</id>
    <title type="text">Безопасность</title>
    <published>2011-06-30T12:19:22Z</published>
    <updated>2011-06-30T12:19:22Z</updated>
    <author>
      <name>Church</name>
      <uri>https://stocksharp.ru/users/459/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Господа разработчики,&lt;br /&gt;&lt;br /&gt;Пожалуйста, не поймите меня неправильно, и не сочтите этот вопрос за неблагодарность. Я не могу не спросить. &lt;br /&gt;&lt;br /&gt;Как я могу быть уверен, что закрытая часть S# не содержит malware?&lt;br /&gt;&lt;br /&gt;Я прекрасно понимаю, что самый простой ответ - &amp;quot;не нравится - не ешьте&amp;quot;, но буду крайне признателен, если вы не ограничитесь только им.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1699/</id>
    <title type="text">События в стратегии</title>
    <published>2011-06-30T12:13:42Z</published>
    <updated>2011-06-30T12:13:42Z</updated>
    <author>
      <name>romanick</name>
      <uri>https://stocksharp.ru/users/28047/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Добрый день!&lt;br /&gt;Решил разобраться с событийной моделью и заткнулся на первой же проблеме.&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;
public class RobotStrategy : Strategy&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;
protected override void OnRunning()
{
// подписываемся на события
this.When(this.Error())
.Do(OnSysError)
.MakePeriodical();
...
}

void OnSysError()
{
   // какая ошибка???
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Нигде в документации ничего не написано как обрабатывать ошибки. Примера тоже нет.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1698/</id>
    <title type="text">Уведомления приходят через сутки</title>
    <published>2011-06-30T11:06:41Z</published>
    <updated>2011-06-30T11:06:41Z</updated>
    <author>
      <name>Evgeny_K</name>
      <uri>https://stocksharp.ru/users/436/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Уведомления от форума о добавлении нового сообщения в тему приходят ко мне на почту примерно через сутки. Почта на GMail.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1697/</id>
    <title type="text">MarketQuotingStrategy и MaxErrorCount</title>
    <published>2011-06-30T09:18:34Z</published>
    <updated>2011-06-30T09:18:34Z</updated>
    <author>
      <name>InsiderHSE</name>
      <uri>https://stocksharp.ru/users/6099/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Стратегия котирования продает/покупает на один контракт больше, чем нужно. Судя по логам, когда заявка для перестановки не находится (она уже исполнилась), стратегия генерит новую заявку. Как по задумке делать так, чтобы она останавливалась в этом случае, или в идеале подождала какое-то время чтобы посмотреть, не придет ли сделка? Сейчас MaxErrorCount не получается установить в 0, и после получения ошибки стратегия не останавливается, а покупает/продает еще один контракт.&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;

VDS 30.06.2011 12:46:38.937 [MMQS] Стратегия запущена.
VDS 30.06.2011 12:46:39.096 [MMQS] Регистрация новой заявки на Buy с ценой 10019 и объемом 1.
VDS 30.06.2011 12:46:39.107 [MMQS] Заявка 45957856 на Buy отправлена с ценой 10019 объемом 1.
VDS 30.06.2011 12:46:39.208 [MMQS] Заявка 45957856 не имеет состояния.
VDS 30.06.2011 12:46:39.627 [MMQS] Цена текущей 10019 и лучшей 10020.
VDS 30.06.2011 12:46:39.627 [MMQS] Котирование заявки 45957856 на Buy с ценой 10019 объемом 1.
VDS 30.06.2011 12:46:39.632 [MMQS] Перекотирование зарегистрировано для заявки 45957857 на Buy с ценой 10020 объемом 1.
VDS 30.06.2011 12:46:39.632 [MMQS] Заявка 45957857 не имеет состояния.
VDS 30.06.2011 12:46:39.633 [MMQS] Заявка 45957857 не имеет состояния.
VDS 30.06.2011 12:46:39.857 [MMQS] Котируемая заявка 45957857 не принята биржей по причине &amp;#39;Сервер для транзакции &amp;#39;ACTION=MOVE_ORDERS; TRANS_ID=45957857; CLASSCODE=SPBFUT; SECCODE=SRU1; MODE=0; FIRST_ORDER_NUMBER=4279294399; FIRST_ORDER_NEW_PRICE=10020; FIRST_ORDER_NEW_QUANTITY=1;&amp;#39; вернул неправильное сообщение &amp;#39;Ошибка перестановки заявок. [FORTS] &amp;quot;Не найдена заявка для перестановки.&amp;quot;.&amp;#39; по передвинутым заявкам.&amp;#39;.
VDS 30.06.2011 12:46:39.857 [MMQS] Регистрация новой заявки на Buy с ценой 10020 и объемом 1.
VDS 30.06.2011 12:46:39.859 [MMQS] Заявка 45957858 на Buy отправлена с ценой 10020 объемом 1.
VDS 30.06.2011 12:46:39.859 [MMQS] Заканчиваем котирование с неисполненным объемом равный 0.
VDS 30.06.2011 12:46:39.860 [MMQS] Стратегия останавливается.
VDS 30.06.2011 12:46:39.863 [MMQS] Позиция изменилась на 1.
VDS 30.06.2011 12:46:39.863 [MMQS] Заканчиваем котирование с неисполненным объемом равный 0.
VDS 30.06.2011 12:46:39.864 [MMQS] Стратегия остановлена.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1696/</id>
    <title type="text">Работа с  TradingStorage</title>
    <published>2011-06-29T08:44:59Z</published>
    <updated>2011-06-29T08:44:59Z</updated>
    <author>
      <name>rafael</name>
      <uri>https://stocksharp.ru/users/28215/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Не подскажете, как реализовать сохранение массива  ObservableCollection&amp;lt;Security&amp;gt; _securities на диске с помощью TradingStorage?&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1695/</id>
    <title type="text">Новый форум - Индикаторы</title>
    <published>2011-06-28T21:04:24Z</published>
    <updated>2011-06-28T21:04:24Z</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;a href="http://stocksharp.com/forum/yaf_topics18_Indikatory.aspx " title="http://stocksharp.com/forum/yaf_topics18_Indikatory.aspx "&gt;http://stocksharp.com/fo...opics18_Indikatory.aspx &lt;/a&gt;Обсуждаем как идюки в целом, так и их разработку на &lt;a target="_blank" rel="nofollow" href="http://stocksharp.codeplex.com" title="http://stocksharp.codeplex.com"&gt;http://stocksharp.codeplex.com&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1694/</id>
    <title type="text">SampleHistoryTesting: сколько памяти и времени надо?</title>
    <published>2011-06-28T19:24:16Z</published>
    <updated>2011-06-28T19:24:16Z</updated>
    <author>
      <name>Evgeny_K</name>
      <uri>https://stocksharp.ru/users/436/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">Запустил пример SampleHistoryTesting на данных из дистрибутива библиотеки &lt;a href="https://stocksharp.ru/away/?u=AQAAAAAAAAD9p6h47zVqvsrwGKu2jWLezV50ECTXTbj0bGMjhEENow"&gt;RIU9@RTS.zip&lt;/a&gt;. Оперативки у меня 2Гб. Посмотрел по индикатору ресурсов: до запуска программы было свободно около 1.5 Гб. После запуска программа постепенно забирала все больше памяти. Когда памяти осталось менее 10% (примерно через 15 минут) операционная система попросила программу остановить. Причем, судя по индикатору, программа успела пройти около трети исторических данных. Возникает вопрос: сколько оперативки нужно, чтобы тест прошел до конца? &lt;br /&gt;&lt;br /&gt;И еще вопрос: сколько времени у вас занимает выполнение этого теста? &lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1693/</id>
    <title type="text">Подскажите где взять тики для тестирования на исторических данных</title>
    <published>2011-06-28T19:11:07Z</published>
    <updated>2011-06-28T19:11:07Z</updated>
    <author>
      <name>FiNick</name>
      <uri>https://stocksharp.ru/users/6053/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">Нужны данные для тестирования высокочастотных стратегий, тики с точностью до миллисекунд плюс состояние стакана. Я так понимаю Гидра + Финам не подходит, там точность до секунд.&lt;br /&gt;Можно ли такие данные нахаляву найти (а если платно, то где?) или надо самому эти данные накапливать?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1692/</id>
    <title type="text">Не вызывается OnProcess</title>
    <published>2011-06-28T16:56:26Z</published>
    <updated>2011-06-28T16:56:26Z</updated>
    <author>
      <name>freewayrider</name>
      <uri>https://stocksharp.ru/users/27653/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="AlfaDirect" />
    <content type="html">Добрый день!&lt;br /&gt;Тренируюсь на простой стратегии но вот что-то работать код не желает.&lt;br /&gt;событие onrunning стреляет а дальше тишина, onprocess вообще не вызывается.&lt;br /&gt;старт и стоп работают&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;
public class SmaStrategy : TimeFrameStrategy
	{
		private readonly CandleManager _candleManager;
		//private bool _isShortLessThenLong;
		private DateTime _nextTime;
		public SmaStrategy(CandleManager _candleManager, Security _security, int P1, int P2, int P3, int P4, TimeSpan _timeFrame) : base(_timeFrame)
		{
            //конструктор
            this.Security = _security;
            this.TimeFrame = _timeFrame;
        }

		protected override void OnRunning()
		{
            // заполняем массив данных первоначальными значениями
			

            //вычисляем параметр nextTime
            _nextTime = base.TimeFrame.GetCandleBounds(base.Trader).Max;
			Logger.Info(&amp;quot;start NT &amp;quot; + _nextTime);
            return;
		}

		protected override StrategyProcessResults OnProcess()
		{
            this.Volume = this.Volume + 1;
            // если наша стратегия в процессе остановки
			if (base.ProcessState == StrategyProcessStates.Stopping)
			{
				// отменяем активные заявки
                Logger.Info(&amp;quot;stopping...&amp;quot;);
                base.CancelActiveOrders();
				// так как все активные заявки гарантированно были отменены, то возвращаем StrategyProcessResults.Stop
				return StrategyProcessResults.Stop;
			}
			// событие обработки торговой стратегии вызвалось впервый раз, что раньше, чем окончания текущей 5-минутки.
			if (base.Trader.MarketTime &amp;lt; _nextTime)
			{
				// возвращаем StrategyProcessResults.Continue, так как наш алгоритм еще не закончил свою работу, а просто ожидает следующего вызова.
                return StrategyProcessResults.Continue;
			}
			// получаем сформированную свечку
            var candle = _candleManager.GetTimeFrameCandle(this.Security,this.TimeFrame, DateTime.Now);
			// если свечки не существует (не было ни одной сделке в тайм-фрейме), то ждем окончания следующей свечки.
			if (candle == null)
			{
                Logger.Info(&amp;quot;candle=null&amp;quot;);
                // если прошло больше 10 секунд с момента окончания свечки, а она так и не появилась,
				// значит сделок в прошедшей 5-минутке не было, и переходим на следующую свечку
				if ((base.Trader.MarketTime - _nextTime) &amp;gt; TimeSpan.FromSeconds(10))
					_nextTime += base.TimeFrame;
				return StrategyProcessResults.Continue;
			}
			_nextTime = _nextTime + this.TimeFrame;
            Logger.Info(&amp;quot;NT &amp;quot; + _nextTime);
            Logger.Info(&amp;quot;Расчет!&amp;quot;);
			return StrategyProcessResults.Continue;
		}
	}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1691/</id>
    <title type="text">Ошибки компиляции SampleHistoryTesting</title>
    <published>2011-06-28T12:32:22Z</published>
    <updated>2011-06-28T12:32:22Z</updated>
    <author>
      <name>Evgeny_K</name>
      <uri>https://stocksharp.ru/users/436/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">Решил начать изучение S# c примера SampleHistoryTesting из библиотеки. Хочу его откомпилировать, запустить на исполнение. Щелкнул 2 раза на файле \stocksharp\Sources\SampleHistoryTesting\SampleHistoryTesting.csproj. Открылся проект в среде разработки Visual C#. Выбрал из меню Debug -&amp;gt; Start debugging. На этапе сборки (build) появились 2 ошибки:&lt;br /&gt;---------------------&lt;br /&gt;Error 1: No overload for method &amp;#39;GetMarketPrice&amp;#39; takes &amp;#39;1&amp;#39; arguments	&lt;br /&gt;File: C:\projects-data\asset_management\trading\stocksharp\Sources\SampleHistoryTesting\SmaStrategy.cs&lt;br /&gt;Line: 89&lt;br /&gt;Column:	45&lt;br /&gt;Project: SampleHistoryTesting&lt;br /&gt;&lt;br /&gt;Error 2: &amp;#39;StockSharp.Algo.Logging.FileStrategyLogger&amp;#39; does not contain a constructor that takes &amp;#39;1&amp;#39; arguments&lt;br /&gt;File: C:\projects-data\asset_management\trading\stocksharp\Sources\SampleHistoryTesting\MainWindow.xaml.cs	&lt;br /&gt;Line: 145&lt;br /&gt;Column: 14&lt;br /&gt;Project: SampleHistoryTesting&lt;br /&gt;---------------------&lt;br /&gt;Наверно библиотеку не подключил? Если &amp;quot;да&amp;quot;, то как подключить? Расскажите пожалуйста, как исправить ошибки?&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1690/</id>
    <title type="text">InvalidOperationException on CancelActiveOrders</title>
    <published>2011-06-24T09:48:41Z</published>
    <updated>2011-06-24T09:48:41Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">S# 3.2.2&lt;br /&gt;OnRunning стратегии отработал, затем через некоторое время стратгия остаавливается по команде Stop().&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;        protected override void OnStopping()&lt;br /&gt;        {&lt;br /&gt;            // останавливаем стратегию&lt;br /&gt;            CancelActiveOrders();&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;выдает ошибку:&lt;br /&gt;&lt;br /&gt;[OpenWealth.StockSharpStuff.TraderIface.TraderProcessDataError] ERROR: Ошибка обработки данных System.InvalidOperationException: Необходимо вначале зарегистрировать стратегию.&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.#=qO9f8aq1kTjeDFVJ76l8Ghgpmk4d54yx23bUoYKQ4zgQ=()&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.#=qbY1VLf1ndhw1ySbYMFFlMk1EBwFfhhlXVwDlmPPrm5I=(SynchronizedSet`1 #=qsOHYLLNTyTTAzbf249xKnQ==)&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.CancelActiveOrders()&lt;br /&gt;   в OpenWealth.StockSharpStuff.StrategyProcessOrder.OnStopping() в D:\home\work\MTS\OpenWealth\StockSharpStuff\StrategyProcessOrder.cs:строка 73&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.#=qF80M91vO$wL4Q_hdDt07aGyTnplCad9glUG6su24s3s=(StrategyProcessStates #=qVD6DbfnzbeUZEh8lM7LurA==)&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.Stop()&lt;br /&gt;   в OpenWealth.StockSharpStuff.StrategyProcessOrder.OnNewMyTrades(IEnumerable`1 trades) в D:\home\work\MTS\OpenWealth\StockSharpStuff\StrategyProcessOrder.cs:строка 123&lt;br /&gt;   в System.Action`1.Invoke(T obj)&lt;br /&gt;   в Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.#=qgTG_0$KM5Yg7McUPQs2zcQ==(IEnumerable`1 #=qjh$R2RcFpRScAswJOGzF1w==)&lt;br /&gt;   в StockSharp.Algo.Strategies.Strategy.#=q9bsewFz4W$PBHfAM0ZMdCA==(IEnumerable`1 #=qtkaQTMTL0qEP7i9xTaCc3w==)&lt;br /&gt;   в System.Action`1.Invoke(T obj)&lt;br /&gt;   в Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)&lt;br /&gt;   в StockSharp.Algo.BaseTrader.#=qCShKTbqJTVmmfu48SmdzkIqhq_f$ljv1HDBVbsnofCQ=.#=qoxhUX87tcowE4b51IGMQCg==(IEnumerable`1 #=qhBbuGOwsDBAEQciofJ5UXg==)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1689/</id>
    <title type="text">переход на 3.2.2, OnProcess отсутствует</title>
    <published>2011-06-24T06:30:06Z</published>
    <updated>2011-06-24T06:30:06Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Не могу догадаться.. Подскажите, пожалуйста.&lt;br /&gt;&lt;br /&gt;У меня на версии 3.1.10 были стратегии ActionStrategy и для них вызывался &lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;br /&gt;        protected override StrategyProcessResults OnProcess()&lt;br /&gt;        {&lt;br /&gt;            // если стратегия в процессе остановки;&lt;br /&gt;            if (ProcessState == StrategyProcessStates.Stopping)&lt;br /&gt;            {&lt;br /&gt;                ...&lt;br /&gt;                return StrategyProcessResults.Stop;&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Сейчас этого метода нет. Что делать? Как по задумке сейчас надо отписываться от событий и т.п. при остановке стратегии?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1688/</id>
    <title type="text">База стаканов</title>
    <published>2011-06-23T15:48:00Z</published>
    <updated>2011-06-23T15:48:00Z</updated>
    <author>
      <name>vslaykovsky</name>
      <uri>https://stocksharp.ru/users/28159/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Добрый день. &lt;br /&gt;&lt;br /&gt;Кто-нибудь может поделиться базой стаканов, сохраненных в Гидре? &lt;br /&gt;Можно небезвозмездно. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1687/</id>
    <title type="text">Стратегия некорректно вычисляет текущую позицию</title>
    <published>2011-06-23T07:33:42Z</published>
    <updated>2011-06-23T07:33:42Z</updated>
    <author>
      <name>Alex Ander</name>
      <uri>https://stocksharp.ru/users/710/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Стратегия корректно работает, но иногда некорректно вычисляет текущую позицию.&lt;br /&gt;Иногда сбивается через несколько часов работы, иногда (крайне редко) - уже на первой сделке.&lt;br /&gt;Ордер выставляется, сделка совершается, подсчет PnL идет верно, а позиция - нулевая (реже - удвоенная).&lt;br /&gt;&lt;br /&gt;Используется QuikTrader. Дочерних стратегий нет. В работу PnLManager и PositionManager не вмешивался.&lt;br /&gt;&lt;br /&gt;Stock# 3.1.10.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1686/</id>
    <title type="text">[FIXED] TakeProfitStrategy отправляет неправильный ордер</title>
    <published>2011-06-23T07:18:48Z</published>
    <updated>2011-06-23T07:18:48Z</updated>
    <author>
      <name>President</name>
      <uri>https://stocksharp.ru/users/510/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Разобравшись с &lt;a href="http://stocksharp.com/forum/1684/-BUG--BatchStrategy---Value-cannot-be-null--Parameter-name--security/
" title="http://stocksharp.com/forum/1684/-BUG--BatchStrategy---Value-cannot-be-null--Parameter-name--security/
"&gt;http://stocksharp.com/fo...rameter-name--security/
&lt;/a&gt;&lt;br /&gt;наткнулся на другую проблему:&lt;br /&gt;&lt;br /&gt;var takeProfit = new TakeProfitStrategy(t, this.TakeProfitThreshold);&lt;br /&gt;&lt;br /&gt;в момент срабатывания посылает в QUIK заявку с Price = this.TakeProfitThreshold что существенно ниже лимитов рынка и заявка отвергается:&lt;br /&gt;&lt;br /&gt;23.06.2011 11:11:00.667 [BS] [BS] [SLS] System.ArgumentException: Транзакции &amp;#39;ACCOUNT=SPBFUT00al8; CLIENT_CODE=S#; TRANS_ID=40036888; CLASSCODE=SPBFUT; SECCODE=LKU1; QUANTITY=1; OPERATION=B; TYPE=L; ACTION=NEW_ORDER; PRICE=6;&amp;#39; не была зарегистрирована. Причина &amp;#39;Ошибка создания заявки. [FORTS] &amp;quot;Цена сделки вне лимита&amp;quot;.&amp;#39;.&lt;br /&gt;Parameter name: transactionTxt&lt;br /&gt;   at #=q3C5AM$iq8NbweFUGFWK_sU7Vcw7Z$U4vlB2Hc50kdH4=.#=qLgL84qMEfuN5KhECfgmmVtmEjdZHFTZu$WkBCYieTcI=(String #=qgclQ_YrKOL8W24OU8dAXtQ==, OrderStatus&amp;amp; #=q_xaMqAhWgI5tV2SZaQTgUw==, UInt32&amp;amp; #=q9f$NCAgNEA2P_dgSYQX4ag==, Int64&amp;amp; #=qwVmYFYP0ooLLxsTPLQePQg==, String&amp;amp; #=qR6gf_ntTXrn2yuZ9RSMZLQ==)&lt;br /&gt;   at StockSharp.Quik.QuikTrader.#=q4vcoB7VlrVy4GatAp8_nMJ6AYLGi58dOpiGwxMBn6UQ=(Order #=qbn0ghccP_Nk8KrwPARMMqA==, TransactionBuilder #=qxOobaox1SG$xe4kqR2_8ZA==)&lt;br /&gt;   at StockSharp.Quik.QuikTrader.OnRegisterOrder(Order order)&lt;br /&gt;   at StockSharp.Algo.BaseTrader.RegisterOrder(Order order)&lt;br /&gt;   at StockSharp.Algo.Strategies.Strategy.RegisterOrder(Order order)&lt;br /&gt;   at StockSharp.Algo.Strategies.QuotingStrategy.#=qFNjSJ7N1u5acr$1keu3nHg==()&lt;br /&gt;   at StockSharp.Algo.Strategies.QuotingStrategy.#=qeubD$wKedi$ApPCf6cLO3rlmhGW$ZeerQHKTqhIth$w=.#=qEsRZe$IDBR8A0j$0apLQ$Q==()&lt;br /&gt;   at StockSharp.Algo.Strategies.StrategyRule.#=qm8VBf4GDpEbeabai3WtCE_YuhOxfkovbmj6wDnrDrR0=.#=q0OgKPN9vlMKZZIjBhTnAcw==(Object #=q0xxkRlvbFaZQkdN1O3pBCA==)&lt;br /&gt;   at StockSharp.Algo.Strategies.StrategyRule.#=qwurDVpnPEgnquLK$nRLn9OHeSuX4XtP79q8cEhLyYMI=.#=qTxwzPP4CbQG2ITMlWDV$_nA93xIudHPYiyO3YFbU4x4=()&lt;br /&gt;   at StockSharp.Algo.Strategies.Strategy.#=qIHDBOzkYlc1Ka0H4Q5rQnQ==(StrategyRule #=qsRkj9dGU3TX31YwcXiQefQ==, Action #=qREJnLkxJR0fsGiLETZNSBg==)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Environment: S# v3.2.2, QUIK</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1685/</id>
    <title type="text">Ошибки в 3.2.X</title>
    <published>2011-06-22T17:24:39Z</published>
    <updated>2011-06-22T17:24:39Z</updated>
    <author>
      <name>Roman0</name>
      <uri>https://stocksharp.ru/users/6034/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Похоже в версии 3.2.2 в Security.BestBid\BestAsk Volume и Price поменялись местами</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1684/</id>
    <title type="text">[BUG] BatchStrategy - Value cannot be null. Parameter name: security</title>
    <published>2011-06-22T16:22:45Z</published>
    <updated>2011-06-22T16:22:45Z</updated>
    <author>
      <name>President</name>
      <uri>https://stocksharp.ru/users/510/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">пытаюсь использовать TakeProfitStrategy и StopLossStrategy.&lt;br /&gt;ловлю событие OnNewTrades и для трейдов которые принадлежат стратегии вызываю метод:&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 CoverTrades(IEnumerable&amp;lt;MyTrade&amp;gt; trades)
		{
			var batch = new BatchStrategy(BatchFinishModes.All); // { IsParallel = true };

			// для каждой сделки добавляем для защиты по пакетной стратегии
			foreach (MyTrade t in trades)
			{
				var s = new BatchStrategy(BatchFinishModes.First);

				var takeProfit = new TakeProfitStrategy(t, this.TakeProfitThreshold);
				//takeProfit.BestPriceOffset = 0m.Pips(t.Order.Security);
				//takeProfit.PriceOffset = 0m.Pips(t.Order.Security);
				//takeProfit.MaxErrorCount = 2;
				//takeProfit.UseMarketQuoting = true; 
				
				var stopLoss = new StopLossStrategy(t, this.StopLossThreshold);
				//stopLoss.BestPriceOffset = 0m.Pips(t.Order.Security);
				//stopLoss.PriceOffset = 0m.Pips(t.Order.Security);
				//stopLoss.MaxErrorCount = 2;
				//stopLoss.UseMarketQuoting = true;

				this.AddInfoLog(&amp;quot;Trade is protected. trade price was: {0}&amp;quot;, t.Trade.Price);

				s.ChildStrategies.Add(takeProfit);
				s.ChildStrategies.Add(stopLoss);
				batch.ChildStrategies.Add(s);
			}

			this.ChildStrategies.Add(batch);
		}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;в последней строчке возникает эксепшн:&lt;br /&gt;		Message	&amp;quot;Value cannot be null.\r\nParameter name: security&amp;quot;	string&lt;br /&gt;		StackTrace	&amp;quot;   at StockSharp.Algo.Strategies.StrategyRuleConditionHelper.#=q5t20hZ5NhMsnLhhoVmupPA==..ctor(Security #=qyOMCKzzXfCVNZ_GTO6s6Mw==)\r\n   at StockSharp.Algo.Strategies.StrategyRuleConditionHelper.#=qE_i7$K1H6gPzl54YI1f60g22aN8KJNIzpQoV8M31CwU=..ctor(Security #=qZ_BCqXMY5Y$FSVkvqc$gSQ==)\r\n   at StockSharp.Algo.Strategies.StrategyRuleConditionHelper.MarketDepthChanged(Security security)\r\n   at StockSharp.Algo.Strategies.QuotingStrategy.OnRunning()\r\n   at StockSharp.Algo.Strategies.Strategy.#=qF80M91vO$wL4Q_hdDt07aGyTnplCad9glUG6su24s3s=(StrategyProcessStates #=qVD6DbfnzbeUZEh8lM7LurA==)\r\n   at StockSharp.Algo.Strategies.Strategy.#=qXB1Yax1xNzLXbDjRPCi7tCznkY9B4AmNwgAE8teNSnbLKOZ7pea69ymbJ6ftrBi8(Strategy #=qrdDj0efX3T7$tYfaMwHvSQ==)\r\n   at Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)\r\n   at StockSharp.Algo.Strategies.Strategy.#=q3VsDgMm8EXknr4XwbQrzykk558DdB7AhrA0MenkIG4mOslFGa0jsUnoLXmPep_w$(IStrategyChildStrategyList #=qc8MS2wPBl0aYmiPlK7OPpw==)\r\n   at Ecng.Collections.CollectionHelper.SyncDo[TCollection](TCollection collection, Action`1 action)\r\n   at StockSharp.Algo.Strategies.Strategy.#=qqFxvsG_qDTMVCsiaiuO627TvkpI1QdJuWpQNBvO9AJ4=()\r\n   at StockSharp.Algo.Strategies.Strategy.#=qF80M91vO$wL4Q_hdDt07aGyTnplCad9glUG6su24s3s=(StrategyProcessStates #=qVD6DbfnzbeUZEh8lM7LurA==)\r\n   at StockSharp.Algo.Strategies.Strategy.#=qXB1Yax1xNzLXbDjRPCi7tCznkY9B4AmNwgAE8teNSnbLKOZ7pea69ymbJ6ftrBi8(Strategy #=qrdDj0efX3T7$tYfaMwHvSQ==)\r\n   at Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)\r\n   at StockSharp.Algo.Strategies.Strategy.#=q3VsDgMm8EXknr4XwbQrzykk558DdB7AhrA0MenkIG4mOslFGa0jsUnoLXmPep_w$(IStrategyChildStrategyList #=qc8MS2wPBl0aYmiPlK7OPpw==)\r\n   at Ecng.Collections.CollectionHelper.SyncDo[TCollection](TCollection collection, Action`1 action)\r\n   at StockSharp.Algo.Strategies.Strategy.#=qqFxvsG_qDTMVCsiaiuO627TvkpI1QdJuWpQNBvO9AJ4=()\r\n   at StockSharp.Algo.Strategies.Strategy.#=qF80M91vO$wL4Q_hdDt07aGyTnplCad9glUG6su24s3s=(StrategyProcessStates #=qVD6DbfnzbeUZEh8lM7LurA==)\r\n   at StockSharp.Algo.Strategies.Strategy.#=qsJWnJ8ZS9kSeAG1NqJcSp94tYPTlnBSEn47C45iDRy4=.OnAdding(Strategy #=qqSQo0oCIzWI6DLEPymMnJw==)\r\n   at Ecng.Collections.BaseCollection`1.Add(T item)\r\n   at Ecng.Collections.SynchronizedCollection`1.Add(T item)\r\n   at MyTrading.StrategiesLib.LimitStatArb.CoverTrades(IEnumerable`1 trades) in C:\\MyProjects\\MyTrading\\StrategiesLib\\LimitStatArb.cs:line 69\r\n   at MyTrading.StrategiesLib.LimitStatArb.Trader_NewMyTrades(IEnumerable`1 trades) in C:\\MyProjects\\MyTrading\\StrategiesLib\\LimitStatArb.cs:line 37\r\n   at System.Action`1.Invoke(T obj)\r\n   at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)\r\n   at StockSharp.Algo.Testing.RealTimeEmulationTrader`1.#=qhrvZySd33X_Q1SUCxf9oHwTQM__bQsMfo6Ro$Vha9u8=(IEnumerable`1 #=q4cgjILI8t5UOKN9_Pe_4AA==)\r\n   at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)\r\n   at StockSharp.Algo.Testing.MarketEmulator.RaiseNewMyTrades(IEnumerable`1 trades)\r\n   at StockSharp.Algo.Testing.MarketEmulator.#=qEs$l0LvYhUYco3GGJLa5Eg==(Order #=qyVorZok67K51uOTgGrDkZg==, Int32 #=qBpUMVYqCJzL6R934ZM7bfw==, Decimal #=q5IDE$gbf5rRP8Otn1c4lGg==)\r\n   at StockSharp.Algo.Testing.MarketEmulator.#=q09JR5JSudo6W2SF8rRogNaemQQj9SvO8f6qfU4UJ6X0=(MarketDepth #=qkR4xVruXydpTJT6goOjVUA==, Order #=qOLTChJHz0$_wWdGKO8a6bg==, Quote #=qc62acyKRiEqBWmUljTXhkw==, Boolean #=qYlKiojNUC81EB4Oszvgf62Y9Z_OzVquViVi0HzEnfNk=)\r\n   at StockSharp.Algo.Testing.MarketEmulator.#=qY7ZKrEE2PZZbw_nJENCeJITZxF4l1pc9UH2JbVicIcI=(Order #=qsv6eKFrooFYED5AtXg3W5Q==, MarketDepth #=qrb3r5_EyE_lzdjYf1MQESQ==)\r\n   at StockSharp.Algo.Testing.MarketEmulator.#=qeAmKRIl9XhEvkcdH_dOhbg==(SynchronizedDictionary`2 #=q41csUsfkEwhy5_L12UKUFw==)\r\n   at Ecng.Collections.CollectionHelper.SyncDo[TCollection](TCollection collection, Action`1 action)\r\n   at StockSharp.Algo.Testing.MarketEmulator.Emulate()\r\n   at StockSharp.Algo.Testing.MarketEmulator.UpdateQuotes(IEnumerable`1 marketDepths)\r\n   at StockSharp.Algo.Testing.RealTimeEmulationTrader`1.#=qMpi1M1KJMzur45zCCnhMeb0RCRP7LJozIcjoJQn_TZE=(IEnumerable`1 #=qK1FO3nQWTP8MUVNFADz9nA==)\r\n   at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)\r\n   at StockSharp.Algo.BaseTrader.#=qCShKTbqJTVmmfu48SmdzkIqhq_f$ljv1HDBVbsnofCQ=.#=qoxhUX87tcowE4b51IGMQCg==(IEnumerable`1 #=qhBbuGOwsDBAEQciofJ5UXg==)&amp;quot;	string&lt;br /&gt;&lt;br /&gt;PS. возможно это как-то связано с &lt;a href="http://stocksharp.com/forum/1683/TraderHelper-ShrinkPrice---Instrumient-imieiet-nulievoi-shagh-tsieny/ " title="http://stocksharp.com/forum/1683/TraderHelper-ShrinkPrice---Instrumient-imieiet-nulievoi-shagh-tsieny/ "&gt;http://stocksharp.com/fo...-nulievoi-shagh-tsieny/ &lt;/a&gt;?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1683/</id>
    <title type="text">[SOLVED] TraderHelper.ShrinkPrice -&amp;gt; Инструмент имеет нулевой шаг цены</title>
    <published>2011-06-22T15:29:21Z</published>
    <updated>2011-06-22T15:29:21Z</updated>
    <author>
      <name>President</name>
      <uri>https://stocksharp.ru/users/510/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">В версии 3.2 кусок кода выполнялся нормально:&lt;br /&gt;TraderHelper.ShrinkPrice(security, price);&lt;br /&gt;&lt;br /&gt;а в версии 3.2.2 выдает исключение:&lt;br /&gt;&amp;quot;Инструмент имеет нулевой шаг цены.&lt;br /&gt;Parameter name: security&amp;quot;&lt;br /&gt;&lt;br /&gt;и под дебаггером видно что: MinPrice = 0, MinStepPrice=null, MinStepSize=0&lt;br /&gt;в Quik в таблице &amp;quot;Инструменты&amp;quot; &amp;quot;Шаг цены&amp;quot; = 1 (инструмент - LKU1@RTS)</content>
  </entry>
</feed>