﻿<?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=129</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-09T07:22:36Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=129" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/4304/</id>
    <title type="text">LinkedListNode  - как уничтожить объект?</title>
    <published>2014-01-21T19:01:13Z</published>
    <updated>2014-01-21T19:01:13Z</updated>
    <author>
      <name>AntonySS</name>
      <uri>https://stocksharp.ru/users/6247/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;Добрый вечер!&lt;/p&gt;
&lt;p&gt;Проводя тестирования, я обнаружил что не могу полностью освободить ресурсы после завершения очередного теста.&lt;/p&gt;
&lt;p&gt;Dump показал, что LinkedListNode&amp;lt;StockSharp.Algo.Candles.Candle&amp;gt; является объектом, который занимает всю память. Исходя из названия объекта я предположил, что он связан с CandleManager и CandleSeries, но мои попытки освободить занятые ресурсы не увенчались успехом.&lt;/p&gt;
&lt;p&gt;Файл тестового проекта, MainWindow.xaml.cs, на базе SampleHistoryTestingParallel, прикреплен. API 4.2.2.2
Спасибо!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4303/</id>
    <title type="text">BTC-E</title>
    <published>2014-01-21T10:46:09Z</published>
    <updated>2014-01-21T10:46:09Z</updated>
    <author>
      <name>darccrow</name>
      <uri>https://stocksharp.ru/users/50707/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">&lt;p&gt;В связи с растущей популярностью биткоинов и тп - хотелось бы узнать - будут ли реализованы коннекторы к btc-e.com? А также китайским-американским аналогам&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4302/</id>
    <title type="text">Вопросы по закачке стаканов из Квик</title>
    <published>2014-01-21T10:23:04Z</published>
    <updated>2014-01-21T10:23:04Z</updated>
    <author>
      <name>konstya_ANE</name>
      <uri>https://stocksharp.ru/users/50145/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">&lt;p&gt;Люди,
Я новичок. Помогите, пожалуйста, найти ответы на следующие вопросы:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Выгружаю стаканы из Квика. При просмотре скачанных данных в Гидре каждому стакану соответствует определенное время с точностью до миллисекунд. Что это за время? Время прихода данных на мой компьютер или время прихода данных на сервер брокера или еще какое-то время? И здесь же следующий вопрос: если мне нужны приемлемо синхронизированные стаканы и тики, то имеет ли смысл закачивать стаканы из Квика и брать тики с других источников (финам, ртс)? Какие еще есть способы получения синхронизированных стаканов и тиков при отсутствии доступа к ордер-логу?&lt;/li&gt;
&lt;li&gt;Стаканы выгружаются полностью. Подскажите, пожалуйста, что нужно сделать, чтобы выгружать только определенное количество уровней стакана (скажем, BBO)? Можно ли быстро преобразовать уже скачанные полные стаканы в &amp;quot;урезанные&amp;quot; стаканы с помощью средств S#?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Спасибо&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4301/</id>
    <title type="text">Повторный вызов IQFeedTrader.StartExport приводит к ошибке</title>
    <published>2014-01-20T17:17:05Z</published>
    <updated>2014-01-20T17:17:05Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="IQFeed" />
    <content type="html">&lt;p&gt;Версия 4.2.1.7.
Ошибка при следующей последовательности вызовов:
Trader.Connect
Trader.StartExport
Trader.StopExport
Trader.Disconnect
Trader.Connect
Trader.StartExport&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;2014-01-20 21:11:47,523 [27] ERROR - 21:11:47.035 | IQFeedTrader    | System.ArgumentException: An item with the same key has already been added.
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Ecng.Collections.SynchronizedDictionary`2.Add(TKey key, TValue value)
   at StockSharp.IQFeed.IQFeedMarketDataMessageAdapter.#=qouHhsEezmUC3MKYF3ngsLw==(IEnumerable`1 #=qVvRWVdDqq0p80K9Ix20fyw==)
   at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)
   at #=q9FPF0V0WkH658cRc8MdcwVfSZupYdyoGnX2dnVqLCsUmYjjYODd_WHl09qmk$iMR.#=qS9LtQroJlgXAyFaIzFtUkw==()
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Полный лог::::spoiler&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;2014-01-20 21:11:01,380 [ 6] INFO  - Подключение
2014-01-20 21:11:01,476 [27] INFO  - 00:00:00.000 | IQFeedTrader    | Connect
2014-01-20 21:11:02,973 [27] INFO  - 00:00:00.000 | IQFeedTrader    | RCM: Connecting PrevState = -1 CurrState = -1.
2014-01-20 21:11:03,180 [ 6] INFO  - Запуск экспорта
2014-01-20 21:11:03,473 [22] INFO  - 21:11:02.618 | IQFeedTrader    | StartExport
2014-01-20 21:11:03,473 [22] INFO  - 21:11:03.193 | LookupFeed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:03,473 [22] INFO  - 21:11:03.194 | Level1Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:03,473 [22] INFO  - 21:11:03.198 | Level1Feed      | Request: S,SELECT UPDATE FIELDS,Symbol,Exchange ID,Open Interest,Open,High,Low,Close,Bid,Bid TimeMS,Bid Size,Ask,Ask TimeMS,Ask Size,TickID,Last Trade Date,Last TimeMS,Last,Last Size,Total Volume,Number of Trades Today,VWAP,Decimal Precision,Market Open,Message Contents
2014-01-20 21:11:03,473 [22] INFO  - 21:11:03.198 | Level2Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:03,473 [22] INFO  - 21:11:03.202 | LookupFeed      | Request: SLM
2014-01-20 21:11:03,473 [22] ERROR - 21:11:03.219 | IQFeedTrader    | System.InvalidOperationException: Account not authorized for Level II
2014-01-20 21:11:03,475 [22] INFO  - 21:11:03.237 | LookupFeed      | Request: SST
2014-01-20 21:11:04,712 [ 6] INFO  - Остановка экспорта
2014-01-20 21:11:04,975 [27] INFO  - 12:11:04.000 | IQFeedTrader    | RCM: Trader ConnectionState = Connected CurrState = Connected PrevState = -1
2014-01-20 21:11:04,975 [27] INFO  - 12:11:04.000 | IQFeedTrader    | StopExport
2014-01-20 21:11:05,732 [ 6] INFO  - Отсоединение
2014-01-20 21:11:05,977 [22] INFO  - 21:11:05.231 | IQFeedTrader    | Disconnect
2014-01-20 21:11:05,977 [22] INFO  - 21:11:05.231 | IQFeedTrader    | RCM: Disconnecting PrevState = -1 CurrState = Connected.
2014-01-20 21:11:40,758 [22] INFO  - Подключение
2014-01-20 21:11:44,420 [ 6] INFO  - 21:11:05.733 | IQFeedTrader    | Connect
2014-01-20 21:11:44,420 [ 6] INFO  - 21:11:05.733 | IQFeedTrader    | RCM: Connecting PrevState = -1 CurrState = Disconnecting.
2014-01-20 21:11:45,906 [22] INFO  - Запуск экспорта
2014-01-20 21:11:47,522 [27] INFO  - 21:11:43.923 | IQFeedTrader    | StartExport
2014-01-20 21:11:47,522 [27] INFO  - 21:11:47.023 | LookupFeed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:47,522 [27] INFO  - 21:11:47.025 | Level1Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:47,522 [27] INFO  - 21:11:47.025 | Level1Feed      | Request: S,SELECT UPDATE FIELDS,Symbol,Exchange ID,Open Interest,Open,High,Low,Close,Bid,Bid TimeMS,Bid Size,Ask,Ask TimeMS,Ask Size,TickID,Last Trade Date,Last TimeMS,Last,Last Size,Total Volume,Number of Trades Today,VWAP,Decimal Precision,Market Open,Message Contents
2014-01-20 21:11:47,522 [27] INFO  - 21:11:47.027 | Level2Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 21:11:47,522 [27] INFO  - 21:11:47.027 | LookupFeed      | Request: SLM
2014-01-20 21:11:47,522 [27] ERROR - 21:11:47.028 | IQFeedTrader    | System.InvalidOperationException: Account not authorized for Level II
2014-01-20 21:11:47,523 [27] ERROR - 21:11:47.035 | IQFeedTrader    | System.ArgumentException: An item with the same key has already been added.
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Ecng.Collections.SynchronizedDictionary`2.Add(TKey key, TValue value)
   at StockSharp.IQFeed.IQFeedMarketDataMessageAdapter.#=qouHhsEezmUC3MKYF3ngsLw==(IEnumerable`1 #=qVvRWVdDqq0p80K9Ix20fyw==)
   at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)
   at #=q9FPF0V0WkH658cRc8MdcwVfSZupYdyoGnX2dnVqLCsUmYjjYODd_WHl09qmk$iMR.#=qS9LtQroJlgXAyFaIzFtUkw==()
2014-01-20 21:11:48,023 [31] INFO  - 12:11:47.000 | IQFeedTrader    | RCM: Trader ConnectionState = Connected CurrState = Connected PrevState = -1
&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4300/</id>
    <title type="text">Account not authorized for Level II</title>
    <published>2014-01-20T16:35:02Z</published>
    <updated>2014-01-20T16:35:02Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="IQFeed" />
    <content type="html">&lt;p&gt;Версия 4.2.1.7. После старта экспорта получаю такую ошибку. Лог: :::spoiler&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-plain"&gt;2014-01-20 20:31:43,192 [25] INFO  - 00:00:00.000 | IQFeedTrader    | Connect
2014-01-20 20:31:44,187 [26] INFO  - 00:00:00.000 | IQFeedTrader    | RCM: Connecting PrevState = -1 CurrState = -1.
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.089 | IQFeedTrader    | StartExport
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.663 | LookupFeed      | Request: S,SET PROTOCOL,5.0
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.664 | Level1Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.668 | Level1Feed      | Request: S,SELECT UPDATE FIELDS,Symbol,Exchange ID,Open Interest,Open,High,Low,Close,Bid,Bid TimeMS,Bid Size,Ask,Ask TimeMS,Ask Size,TickID,Last Trade Date,Last TimeMS,Last,Last Size,Total Volume,Number of Trades Today,VWAP,Decimal Precision,Market Open,Message Contents
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.669 | Level2Feed      | Request: S,SET PROTOCOL,5.0
2014-01-20 20:31:44,688 [26] INFO  - 20:31:44.673 | LookupFeed      | Request: SLM
2014-01-20 20:31:45,190 [ 8] ERROR - 20:31:44.689 | IQFeedTrader    | System.InvalidOperationException: Account not authorized for Level II
2014-01-20 20:31:45,191 [ 8] INFO  - 20:31:44.711 | LookupFeed      | Request: SST
2014-01-20 20:31:46,692 [ 8] INFO  - 11:31:46.000 | IQFeedTrader    | RCM: Trader ConnectionState = Connected CurrState = Connected PrevState = -1
&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4299/</id>
    <title type="text">Запуск примеров без компонентов Actipro</title>
    <published>2014-01-20T15:46:12Z</published>
    <updated>2014-01-20T15:46:12Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="IQFeed" />
    <content type="html">&lt;p&gt;Версия 4.2.2.2. Для запуска примеров требуются компоненты Actipro. Без компонентов запустить не получается.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4298/</id>
    <title type="text">Работа в S# - специалист технической поддержки</title>
    <published>2014-01-20T11:04:58Z</published>
    <updated>2014-01-20T11:04:58Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Работа" />
    <content type="html">&lt;p&gt;Требуется человек для оказания технической поддержки по продуктам S# в Skupe чате.&lt;/p&gt;
&lt;p&gt;Оплата достойная!&lt;/p&gt;
&lt;p&gt;Пишите valentin@stockharp.com, но лучше в скайп compaqster&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4297/</id>
    <title type="text">Адаптивный CandleManager</title>
    <published>2014-01-20T10:27:44Z</published>
    <updated>2014-01-20T10:27:44Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Собственно, сабж. Можно ли в текущей реализации CandleManager'а лапками менять параметры генерации свечей (например,для RangeCandle или RenkoCandle - высоту) без пересоздания оного? Может, у кого есть примеры или какие собственные наработки, кои не жалко - поделитесь, плз.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4296/</id>
    <title type="text">Вопрос по генерации стаканов и закрытию позиции</title>
    <published>2014-01-19T22:46:58Z</published>
    <updated>2014-01-19T22:46:58Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;Собственно, хотелось бы понять причину рваных графиков - резких скачков на графике при отсутствии больших позиций по инструменту. Судите сами по скринам - RIH4_SampleSMA1.jpg, RIH4_MyStrategy1.jpg, RIH4_MyStrategy2.jpg, RIH4_MyStrategy4.jpg.&lt;/p&gt;
&lt;p&gt;Код трендгенератора для SampleSMA (того примера, что выложил в вопросе про бесконечное перевыставление заявки):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;

                ((MessageAdapter)connector.MarketDataAdapter).MarketTimeChangedInterval = TimeSpan.FromMilliseconds(5);//timeFrame;

				((ILogSource)connector).LogLevel = DebugLogCheckBox.IsChecked == true ? LogLevels.Debug : LogLevels.Info;

				logManager.Sources.Add(connector);

				connector.NewSecurities += securities =&amp;gt;
				{
					//подписываемся на получение данных после получения инструмента

					if (securities.All(s =&amp;gt; s != security))
						return;

//						// если история по стаканам отсутствует, но стаканы необходимы для стратегии,
						// то их можно сгенерировать на основании цен последних сделок или свечек.
						connector.RegisterMarketDepth(new TrendMarketDepthGenerator(connector.GetSecurityId(security))
						{
							Interval = TimeSpan.FromMilliseconds(5), //TimeSpan.FromSeconds(1), // стакан для инструмента в истории обновляется раз в секунду
							MaxAsksDepth = 1,
							MaxBidsDepth = 1,
							UseTradeVolume = true,
							MaxVolume = 1,
							MinSpreadStepCount = 2,  // минимальный генерируемый спред - 2 минимальных шага цены
							MaxSpreadStepCount = 5, // не генерировать спрэд между лучшим бид и аск больше чем 5 минимальных шагов цены - нужно чтобы при генерации из свечей не получалось слишком широкого спреда.
						});
}


&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Код из моего тестера (я уже шаманил с параметрами по-всякому):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
                            ((MessageAdapter)trader.MarketDataAdapter).MarketTimeChangedInterval = TimeSpan.FromMilliseconds(5);

                            ((ILogSource)trader).LogLevel = LogLevels.Info;
                            logManager.Sources.Add(trader);

                            trader.RegisterMarketDepth(new TrendMarketDepthGenerator(trader.GetSecurityId(security))
                            {
                                Interval = TimeSpan.FromMilliseconds(5),
                                MaxAsksDepth = 20,
                                MaxBidsDepth = 20,
                                UseTradeVolume = true,
                                MaxVolume = 10,
                                MinSpreadStepCount = 1,
                                MaxSpreadStepCount = 1,
                                GenerateDepthOnEachTrade = true,     
                                MaxGenerations = 1000000,
                                MinVolume = 5,
                                RandomArrayLength = 1000000,
                                
                            });

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Дополнительный вопрос - почему стратегия не выходит из позиции, хотя после 18:35 оную я закрываю принудительно кодом:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
            if ((candle.CloseTime &amp;gt;= candle.CloseTime.Date + new TimeSpan(10, 00, 00) &amp;amp;&amp;amp; candle.CloseTime &amp;lt;= candle.CloseTime.Date + new TimeSpan(10, 15, 00)) || (candle.CloseTime &amp;gt;= candle.CloseTime.Date + new TimeSpan(18, 35, 00)))
            {
                CancelActiveOrders();

                SuspendRules();

                if (Position != 0)
                {
                    var orderDirection = Position &amp;lt; 0 ? OrderDirections.Buy : OrderDirections.Sell;
                    var orderPrice = Position &amp;lt; 0 ? Security.BestAsk.Price + Security.MinStepSize * pricePieces : Security.BestBid.Price - Security.MinStepSize * pricePieces; 

                    var newOrder = this.CreateOrder(orderDirection, orderPrice, Math.Abs(Position));

                    RegisterOrder(newOrder);
                }

                ResumeRules();

                earlierCandle = candle;

                return;
            }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;P.S. Свечи - RencoCandle.&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
var series = new CandleSeries(typeof(RenkoCandle), security, new Unit(50m));

&lt;/code&gt;&lt;/pre&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4295/</id>
    <title type="text">Вывод стакана в режиме эмуляции</title>
    <published>2014-01-19T18:11:28Z</published>
    <updated>2014-01-19T18:11:28Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Вечер добрый, камрады. Как можно было бы посмотреть, что генерирует TrendMarketDepthGenerator в качестве стаканов?&lt;/p&gt;
&lt;p&gt;Заранее спасибо.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4294/</id>
    <title type="text">Меняется Id компьютера</title>
    <published>2014-01-19T11:33:31Z</published>
    <updated>2014-01-19T11:33:31Z</updated>
    <author>
      <name>Architectus</name>
      <uri>https://stocksharp.ru/users/6333/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Была у меня 1 лицензия. Еще с прошлого года. При попытке запуска примеров из уроков возникла ошибка &amp;quot;Лицензия xxx содержит неправильный идентификатор компьютера yyy вместо yyy'&amp;quot;. Я обратился к Валентину Мирошниченко. Решили с ним сгенерировать новую лицензию. Я сгенерировал, все стало ок.&lt;/p&gt;
&lt;p&gt;И вот сегодня опять ошибка &amp;quot;Лицензия xxx содержит неправильный идентификатор компьютера yyy вместо yyy'&amp;quot;. Id компьютера опять новый, и не совпадает с 2-мя прошлыми.&lt;/p&gt;
&lt;p&gt;Почему Id опять изменился и что делать с лицензией? Конфигурация компьютера не менялась. Я перенастраивал роутер, но сам ПК нет. Может были обновления Windows. Но ведь не должно же все слетать при малейшем изменении системы.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4293/</id>
    <title type="text">Нужны разъяснения по получению текущей рыночной цены</title>
    <published>2014-01-19T10:35:17Z</published>
    <updated>2014-01-19T10:35:17Z</updated>
    <author>
      <name>Yakovlev</name>
      <uri>https://stocksharp.ru/users/50657/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Здравствуйте уважаемые форумчане.
Итак сразу приступлю к вопросу:
Элементарно - беру пример из теста SampleConsole, меняю с trader.NewMyTrades += myTrades на _trader.NewTrades += myTrades =&amp;gt;, поскольку мне просто нужно получать последнюю рыночную цену инструмента по которой в случае выставления ордера - он точно немедленно будет удовлетворен. Все в режиме Debug
соединение проходит нормально, все таблицы экспортируються (визуально идет перебор окон в квике), так как инструмент и портфель программа находит. Но сами события то где? Где привычная обработка и привязка евентов. Сколько я ни пытался дождаться чего нибудь в блоке
trader.NewMyTrades += myTrades =&amp;gt;
&lt;span style="font-size:24pt"&gt;{
foreach (var myTrade in myTrades)
{
var trade = myTrade.Trade;
Console.WriteLine(&amp;quot;Сделка {0} по цене {1} по бумаге {2} по объему {3} в {4}.&amp;quot;, trade.Id, trade.Price, trade.Security.Code, trade.Volume, trade.Time);
}
};&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Все стоит как вкопанное, смотрю в квик на инструменты - там постоянно мигают строки то красным то зеленым, а где эти события в программе передаються и как их обрабатывать? То же самое и с стратегиями, при старте явно указываем инструменту когда реагировать и куда идти, но все молчит. Что может быть?&lt;/p&gt;
&lt;p&gt;ПС. Почему бы не реализовать классическую схему привычную всем: object.event += eventHandler(eventArgs)? Зачем засовывать код обработчика внутрь кода обработки другого события? Или я что-то не понял в концепции системы...
Прошу поясните моменты.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4292/</id>
    <title type="text">Свойства свечи</title>
    <published>2014-01-19T03:48:23Z</published>
    <updated>2014-01-19T03:48:23Z</updated>
    <author>
      <name>towace</name>
      <uri>https://stocksharp.ru/users/6501/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Приветствую, при сохранение(storagecandle.Save) свечей свойства HighTime и LowTime  не сохраняются, где можно задать сохранение нужных мне свойств? или это баг?&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4291/</id>
    <title type="text">Вопрос про бесконечное перевыставление заявки</title>
    <published>2014-01-19T00:03:20Z</published>
    <updated>2014-01-19T00:03:20Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;|Приостановка правил. _rulesSuspendCount 1.
2013/12/18 16:50:35.000|       |SBS_RIH4@FORTS_test account1|Регистрация новой Limit (0x2A1B2DE) заявки на Sell с ценой 141800.000000000 и объемом 1.
2013/12/18 16:50:35.000|       |HistoryEmulationConnector|RegisterOrder: 0/0 Продажа Цена=141800.000000000 Объем=1 Сост=None Бал=0
2013/12/18 16:50:35.000|       |HistoryEmulationConnector|New order: 13712394/0 Продажа Цена=141800.000000000 Объем=1 Сост=Pending Бал=1
2013/12/18 16:50:35.000|       |SBS_RIH4@FORTS_test account1|Возобновление правил. _rulesSuspendCount 0.
2014/01/19 03:50:07.448|       |#=qXLcyz4GZfjcuGFPYxXhmRaXexDK4lQNQbPTx$SCysd0=|Заявка 13712394 зарегистрирована.
2014/01/19 03:50:07.448|       |#=qXLcyz4GZfjcuGFPYxXhmRaXexDK4lQNQbPTx$SCysd0=|Заявка 13712394. Исполнение объема 1 по цене 141960.000000000.
2014/01/19 03:50:07.448|       |#=qXLcyz4GZfjcuGFPYxXhmRaXexDK4lQNQbPTx$SCysd0=|Заявка 13712394 полностью исполнена.
2014/01/19 03:50:07.448|       |#=qXLcyz4GZfjcuGFPYxXhmRaXexDK4lQNQbPTx$SCysd0=|Сделка 73 заявки 13712394 P=13712394 V=141960.000000000.
2013/12/18 16:50:35.000|       |HistoryEmulationConnector|Order changed: 13712394/74 Продажа Цена=141800.000000000 Объем=1 Сост=Done Бал=0
2013/12/18 16:50:35.000|       |SBS_RIH4@FORTS_test account1|Новая позиция: test account1-RIH4@FORTS=-1.
2013/12/18 16:50:35.000|       |SBS_RIH4@FORTS_test account1|Заявка 13712394 больше не активна.
2013/12/18 16:50:35.000|       |SBS_RIH4@FORTS_test account1|Новая Sell сделка 73 по цене 141960.000000000 на 1 заявки 13712394.
2013/12/18 16:50:35.000|       |SLS_RIH4@FORTS_test account1|Стратегия запущена. [0,1]. Позиция при старте 0.
2013/12/18 16:50:35.000|       |SLS_RIH4@FORTS_test account1|Защита сделки 73 заявки 13712394.
2013/12/18 16:50:35.000|       |SLS_RIH4@FORTS_test account1|Котирование на Buy объема 1.
2013/12/18 16:50:35.000|       |SLS_RIH4@FORTS_test account1|Приостановка правил. _rulesSuspendCount 1.
2013/12/18 16:50:35.000|       |SLS_RIH4@FORTS_test account1|Возобновление правил. _rulesSuspendCount 0.
2013/12/18 16:50:39.000|       |SLS_RIH4@FORTS_test account1|Защита активирована.
2013/12/18 16:50:39.000|       |SLS_RIH4@FORTS_test account1|Цена текущей NULL и лучшей 169990.
2013/12/18 16:50:39.000|       |SLS_RIH4@FORTS_test account1|Лучший бид 142010.000000000 и лучший аск 142030.000000000.
2013/12/18 16:50:39.000|       |SLS_RIH4@FORTS_test account1|Регистрация новой Limit (0x28C893F) заявки на Buy с ценой 169990 и объемом 1. SLS 73
2013/12/18 16:50:39.000|       |HistoryEmulationConnector|RegisterOrder: 0/0 Покупка Цена=169990 Объем=1 Сост=None Бал=0
2013/12/18 16:50:39.000|       |HistoryEmulationConnector|New order: 13712395/0 Покупка Цена=169990 Объем=1 Сост=Pending Бал=1
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.
2013/12/18 16:50:39.000|Warning|SLS_RIH4@FORTS_test account1|Заявка 13712395 в процессе регистрации.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Собственно, локализовал одну из проблем.&lt;/p&gt;
&lt;p&gt;Код активации стоп-лоса (трейлинг-стопа) такой (в курилке писал уже):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
        private void OnNewOrderTrades(IEnumerable&amp;lt;MyTrade&amp;gt; myTrades)
        {
            var protectiveStrategies = myTrades.Select(t =&amp;gt;
            {
                var newStrategyFromTrade = new StopLossStrategy(t, new Unit(TraderHelper.ShrinkPrice(t.Trade.Security, stopLossParameter * (decimal)currentParams.candleSize))) { IsTrailing = true, UseQuoting = false, PriceOffset = (decimal)currentParams.candleSize*3, DisposeOnStop = true, ProtectiveVolume = t.Trade.Volume, MaxRegisterFailCount = 5, };

                return newStrategyFromTrade;
            });

            foreach(var s in protectiveStrategies)
                ChildStrategies.Add(s);

            base.OnNewMyTrades(myTrades);
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Вхожу в рынок и формирую правило на активацию стопа следующим образом:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
                            CancelActiveOrders();

                            SuspendRules();

                            if (Position != 0)
                            {
                                var orderDirection = Position &amp;lt; 0 ? OrderDirections.Buy : OrderDirections.Sell;
                                var orderPrice = Position &amp;lt; 0 ? Security.BestAsk.Price + Security.MinStepSize * pricePieces : Security.BestBid.Price - Security.MinStepSize * pricePieces;

                                var newOrder = this.CreateOrder(orderDirection, orderPrice, Math.Abs(Position));

                                RegisterOrder(newOrder);
                            }
                            

                            var newOrderDirection = isNewEntranceSignalUp == true ? OrderDirections.Buy : OrderDirections.Sell;
                            var newOrderPrice = isNewEntranceSignalUp == true ? Security.BestAsk.Price + Security.MinStepSize * pricePieces : Security.BestBid.Price - Security.MinStepSize * pricePieces;  

                            var newPositionToOpen = this.CreateOrder(newOrderDirection, newOrderPrice, 1);
                            newPositionToOpen.WhenMatched().Do(() =&amp;gt; newPositionToOpen.WhenNewTrades().Do(OnNewOrderTrades).Apply(this)).Apply(this);

                            RegisterOrder(newPositionToOpen);
                            
                            ResumeRules();

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Где у меня гармонь? Или это проблемы в библиотеке (что менее вероятно)?&lt;/p&gt;
&lt;p&gt;Спасибо.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4290/</id>
    <title type="text">Вопрос по организации стопов</title>
    <published>2014-01-18T23:41:07Z</published>
    <updated>2014-01-18T23:41:07Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Т.к. у меня периодически на новой версии (4.2.x) библиотеки возникают проблемы (кросс-сделки, приводящие к бесконечному перевыставлению заявки), подскажите, камрады, верно ли я прописываю код регистрации нового трейлинг-стопа?&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
                            var newPositionToOpen = this.CreateOrder(newOrderDirection, newOrderPrice, 1);
                            newPositionToOpen.WhenMatched().Do(() =&amp;gt; newPositionToOpen.WhenNewTrades().Do(OnNewOrderTrades).Apply(this)).Apply(this);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;где&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
        private void OnNewOrderTrades(IEnumerable&amp;lt;MyTrade&amp;gt; myTrades)
        {
            var protectiveStrategies = myTrades.Select(t =&amp;gt;
            {
                var newStrategyFromTrade = new StopLossStrategy(t, new Unit(TraderHelper.ShrinkPrice(t.Trade.Security, stopLossParameter * (decimal)currentParams.candleSize))) { IsTrailing = true, UseQuoting = false, PriceOffset = (decimal)currentParams.candleSize*3, DisposeOnStop = true, ProtectiveVolume = t.Trade.Volume, MaxRegisterFailCount = 5, };

                return newStrategyFromTrade;
            });

            foreach(var s in protectiveStrategies)
                ChildStrategies.Add(s);

            base.OnNewMyTrades(myTrades);
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Мне кажется, что где-то здесь у мну ошибка - мб кто поможет нубу да прокомментирует?&lt;/p&gt;
&lt;p&gt;Пасиба.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4289/</id>
    <title type="text">Проблема с лицензией</title>
    <published>2014-01-17T13:51:07Z</published>
    <updated>2014-01-17T13:51:07Z</updated>
    <author>
      <name>SlashHammer</name>
      <uri>https://stocksharp.ru/users/50360/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;В какой-то момент времени получаю такую ошибку:
&lt;img src="http://content.screencast.com/users/SlashHammer/folders/Snagit/media/b3ec1eee-d504-4d76-9e03-6346d33da61d/01.17.2014-15.36.png" alt="" /&gt;
так понимаю что в идентификаторе компьютера в конце МАС-адресс сетевушки. Почему-то проверка лицензии в какой-то момент начинает видеть несуществующую сетевуху, вот ipconfig -aal :
&lt;img src="http://content.screencast.com/users/SlashHammer/folders/Snagit/media/9ce9b0d6-c9f8-461a-a833-037316ae9c9a/01.17.2014-15.41.png" alt="" /&gt;
а вот утилита LicenseTool:
&lt;img src="http://content.screencast.com/users/SlashHammer/folders/Snagit/media/2e61f850-f119-4f5e-b13f-a4349c084c83/01.17.2014-15.43.png" alt="" /&gt;
которая так же видит непонятно какой МАС.
После перезагрузки компа всё опять работает, лицензия верная, но ненадолго.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4288/</id>
    <title type="text">Скорость проведения тестов,  4.2.2.2</title>
    <published>2014-01-17T13:05:36Z</published>
    <updated>2014-01-17T13:05:36Z</updated>
    <author>
      <name>Rebelion</name>
      <uri>https://stocksharp.ru/users/28840/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">&lt;p&gt;Господа! Камрады!&lt;/p&gt;
&lt;p&gt;Сейчас мигрировал на версию библиотеки 4.2.2.2. Внёс правки, касаемые кода (кстати, в хелпе неплохо бы поменять trader на connector в примерах тестов, но не суть). Так, вот, код, работавший в 4.1.19.1 примерно 10-15 минут на 1 день тестов сейчас стал работать ну очень долго. Особых &amp;quot;новшеств&amp;quot; от себя не вносил - лишь такие:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
                            trader.RegisterMarketDepth(new TrendMarketDepthGenerator(trader.GetSecurityId(security))
                            {
                                Interval = TimeSpan.FromMilliseconds(1),
                                MaxAsksDepth = 10,
                                MaxBidsDepth = 10,
                                UseTradeVolume = true,
                                MaxVolume = 10,
                                MinSpreadStepCount = 1,
                                MaxSpreadStepCount = 1,
                            });

&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
                            var trader = new HistoryEmulationConnector(new[] { security }, new[] { portfolio })
                            {
                               StorageRegistry = storageRegistry,

                                MarketEmulator =
                                {
                                    Settings = { UseMarketDepth = true, SyncDepthToTrades = true, FillOnTouch = true, }
                                }
                            };

&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
((MessageAdapter)trader.MarketDataAdapter).MarketTimeChangedInterval = TimeSpan.FromMilliseconds(1);

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Подскажите, плз, 2 вещи.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Я один такой неудачник или же у всех скорость снизилась?&lt;/li&gt;
&lt;li&gt;В чём сакральный смысл параметров Interval и MarketTimeChangedInterval?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Да, ещё памяти стало приложение кушать раз в 5-6 больше так. В какую сторону копать?&lt;/p&gt;
&lt;p&gt;Заранее спасибо!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4287/</id>
    <title type="text">Доделки Графика. Платно!</title>
    <published>2014-01-17T12:50:32Z</published>
    <updated>2014-01-17T12:50:32Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <content type="html">&lt;p&gt;Всем привет.&lt;/p&gt;
&lt;p&gt;Есть предложение взимать плату за апгрейд графика. Написали фича реквест? Пожалуйста, 1000р в кассу.&lt;/p&gt;
&lt;p&gt;Шутка.[rolleyes]&lt;/p&gt;
&lt;p&gt;У кого есть желание поковырять график, и доделать хотелки с форума? Мы сейчас другими вещами заняты. Поэтому, у кого есть желание и способности (уметь программировать, понимать xaml), то можно дать доступ к Xaml и оплатить работу. И деньги получите, и фишки свои сделаете.&lt;/p&gt;
&lt;p&gt;Пишите сюда или стучитесь в скайп, сразу с представлением о своем опыте.&lt;/p&gt;
&lt;p&gt;Идеально, если вы являетесь профессиональным фрилансером, и готовы работать на длительный период.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:36pt"&gt;Текущие задачи&lt;/span&gt;&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Автозум при выборе заявок или сделок (во внешней компоненте, например, в таблице).&lt;/li&gt;
&lt;li&gt;Передвижение мышкой стрелок с заявками. Событие об изменении заявки с целью последующей перерегистрации по новой цене.&lt;/li&gt;
&lt;li&gt;Удаление мышкой индикаторов на графике.&lt;/li&gt;
&lt;li&gt;Добавление индикаторов через контекстное меню.&lt;/li&gt;
&lt;li&gt;Изменение свойств индикатора через контекстное меню.&lt;/li&gt;
&lt;li&gt;Пример для наглядной работы с графиком.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/posts/m/29156/"&gt;Overview&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4286/</id>
    <title type="text">Несколько осей на графике</title>
    <published>2014-01-17T11:46:30Z</published>
    <updated>2014-01-17T11:46:30Z</updated>
    <author>
      <name>longtrades</name>
      <uri>https://stocksharp.ru/users/6094/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <content type="html">&lt;p&gt;Колеги , посмотрите пожалуйста что не так в моем коде , хочу на график выводить и цену, сделки и PnL . Вижу только цену:&lt;/p&gt;
&lt;p&gt;версия 4.2.2.2:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
        public PnLChartWindow()
        {
            this.InitializeComponent();

            _area = new ChartArea();
            Curve.Areas.Add(_area);
            Curve.IsAutoScroll = true;
            _area.XAxises[0].AutoRange = true;
          
            _area.YAxises.Add(new ChartAxis()
            {
                Id = &amp;quot;Y1&amp;quot;,
                AxisAlignment = ChartAxisAlignment.Left
            });


            _PriceElem = new ChartIndicatorElement
            {
                Indicator = new SimpleMovingAverage(),
                Title = &amp;quot;Price&amp;quot;,
                Color = Colors.Black,
                YAxisId = &amp;quot;Y&amp;quot;,
                XAxisId = &amp;quot;X&amp;quot;
            };
            _area.Elements.Add(_PriceElem);

            _tradeElem = new ChartTradeElement()
                {
                    YAxisId = &amp;quot;Y&amp;quot;,
                    XAxisId = &amp;quot;X&amp;quot;
                };
            _area.Elements.Add(_tradeElem);

            _PnLElem = new ChartIndicatorElement
            {
                Indicator = new SimpleMovingAverage(),
                Title = &amp;quot;PnL&amp;quot;,
                Color = Colors.Green,
                YAxisId = &amp;quot;Y1&amp;quot;,
                XAxisId = &amp;quot;X&amp;quot;
            };

            _area.Elements.Add(_PnLElem);
        

            // и подписываемся на событие изменения времени, чтобы обновить ProgressBar
            Connector.NewTrades +=  DrawTrade;
            Connector.NewMyTrades += DrawMyTrade;



        }


        private void DrawTrade(IEnumerable&amp;lt;Trade&amp;gt; trades)
        {

            this.GuiAsync(() =&amp;gt; Curve.ProcessValues(Herd.Security.LastTrade.Time, new Dictionary&amp;lt;IChartElement, object&amp;gt;
                {
                    { _PriceElem,  new ChartIndicatorValue(_PriceElem.Indicator, Price) { IsFormed = true } },
                     {_PnLElem, new ChartIndicatorValue(_PnLElem.Indicator, RUB_P_L) { IsFormed = true }},
                }));

        }

        private void DrawMyTrade(IEnumerable&amp;lt;MyTrade&amp;gt; trades)
        {
            
            foreach (var trade in trades)
            {
                this.GuiAsync(() =&amp;gt; Curve.ProcessValues(trade.Trade.Time , new Dictionary&amp;lt;IChartElement, object&amp;gt;
                {
                    {_tradeElem, trade}
                }));
            }
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;причем если без привязки к осям то все графики видно , но некрасиво , нужно для  PnL привязку к другой оси Y.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/4285/</id>
    <title type="text">Свойство Latency стакана</title>
    <published>2014-01-17T05:05:04Z</published>
    <updated>2014-01-17T05:05:04Z</updated>
    <author>
      <name>FireSpirit</name>
      <uri>https://stocksharp.ru/users/364/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;p&gt;Добрый день
Продолжаю тему начатою в подфоруме урока 2 S#.
Начало&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;FireSpirit wrote: Приветствую. Помогите, пжл, кто может. Уже два часа бьюсь, над тем чтобы получить корректно значение Latency, показывающую. любая переменная, принимающая значение задержки обновления стакана, например (var ltn = marketdepth.Latency) равна нулю. В чем ошибка???
Другие задания данного урока сделал без проблем, а с этим стопорюсь. Спасибо за ранее.
P.S. уважаемый администратор форума, если я не туда написал, то прошу сильно не пинать.
Ответ
IvanB wrote: Все вопросы по урокам обсуждаются в соответствующем разделе
stocksharp.com/forum/tags/Обучение/&lt;/p&gt;
&lt;p&gt;В Вашем случае надо убедиться что стакан приходит. Если используете Quik, то закройте в терминале Quik соответствующий стакан (или все стаканы) и повторите запуск Вашей программы.
Проверьте, что стакан приходит, через точку останова.
Через оригинальный проект урока значение Latency удается получить?
Собственно, продолжение...
Убедился, стакан приходит. Убедился также через точку останову.  Через оригинальный проект Latency также не удалось получить. А точнее, было получено одно значение, сразу после запуска стакана, а следующие значения Latency были по нулям.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
  </entry>
</feed>