﻿<?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">Объединение исторических и текущих свечек</title>
  <id>~/topic/1498/obedinenie-istoricheskih-i-tekushshih-svechek/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-05-05T15:15:30Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1498" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/15443/</id>
    <title type="text">Спасибо, буду разбираться. Со Смартом вообще довольно много проблем, но нужно под него сделать. :(</title>
    <published>2012-01-06T17:35:27Z</published>
    <updated>2012-01-06T17:35:27Z</updated>
    <author>
      <name>Daenur</name>
      <uri>https://stocksharp.ru/users/28118/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Спасибо, буду разбираться.&lt;br /&gt;&lt;br /&gt;Со Смартом вообще довольно много проблем, но нужно под него сделать. :(</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/15389/</id>
    <title type="text">Если последняя версия S#, то там сейчас есть SmartCandleSource для удобной работы с CandleManager. Э...</title>
    <published>2012-01-04T11:09:20Z</published>
    <updated>2012-01-04T11:09:20Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Если последняя версия S#, то там сейчас есть SmartCandleSource для удобной работы с CandleManager. Это во-первых. А во-вторых, история у СмартКом не важнецкая. Лучше искать альтернативные источники.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/15387/</id>
    <title type="text">Возрожу эту тему. Объединяю историю с реалтаймом. // Подписка на события ((SmartTrader)this.trader)....</title>
    <published>2012-01-04T10:05:52Z</published>
    <updated>2012-01-04T11:07:13Z</updated>
    <author>
      <name>Daenur</name>
      <uri>https://stocksharp.ru/users/28118/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <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;
// Подписка на события
((SmartTrader)this.trader).NewHistoryCandles += (token, candles) =&amp;gt; this.historyCandles.SyncDo(col =&amp;gt;
{
	// Сохраняем исторические бары
	this.historyCandles.AddRange(candles);
	// Отрисовываем исторические бары
	chartWindow.DrawCandles(token, candles);
});

candleManager.CandlesStarted += DrawRealTimeCandles;
candleManager.CandlesChanged += DrawRealTimeCandles;
candleManager.CandlesFinished += DrawRealTimeCandles;

// Собственно забираю историю
TimeSpan ts = new TimeSpan(currentTimeFrame.Hours * 100, currentTimeFrame.Minutes * 100, currentTimeFrame.Seconds * 100);
Range&amp;lt;DateTime&amp;gt; range = new Range&amp;lt;DateTime&amp;gt;((DateTime.Now - ts), DateTime.Now);
((SmartTrader)trader).RegisterHistoryCandles(this.SelectedSecurity, this.currentTimeFrame, range);
this.lastHistoryCandle = this.currentTimeFrame.GetCandleBounds(this.trader).Min;

// Дальнейшая отрисовка реал-тайм
public void DrawRealTimeCandles(CandleToken token, IEnumerable&amp;lt;Candle&amp;gt; candles)
{
	this.GuiAsync(() =&amp;gt;
	{
		IEnumerable&amp;lt;Candle&amp;gt; realTimeCandles = candles;

		// Для SmartCOM выводим только те свечки, которые не были отрисованы как исторические
		if (this.rbSmart.IsChecked == true)
			realTimeCandles = candles.Where(c =&amp;gt; c.Time &amp;gt; this.lastHistoryCandle);

		chartWindow.DrawCandles(token, realTimeCandles);
	});
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;История забирается нормально, реалтайм тоже без проблем идет. Единственная и довольно неприятная проблема - бар, на котором происходит соединение. Он, вроде как и из истории не берется полноценным, и из реалтайма. В результате бар, на котором произошло подключение, не совпадает с реальностью. Есть какие-нибудь способы получить его правильно, чтобы как в КВИКе было, где все нормально? Кто как решает эту проблему?&lt;br /&gt;&lt;br /&gt;ЗЫ. Самое интересное, что похожей проблемой грешат RightEdge и OpenQuant на разных источниках данных. Но тут-то у нас все в руках, вопрос только - как? [blush]</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/7334/</id>
    <title type="text">Приветствую! Долго пытался разобраться самостоятельно, но так и не нашел ответов. Задача состоит в с...</title>
    <published>2011-04-07T10:25:42Z</published>
    <updated>2011-04-07T10:25:42Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;morincer &lt;a href="https://stocksharp.ru/posts/m/7330/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Приветствую!&lt;br /&gt;&lt;br /&gt;Долго пытался разобраться самостоятельно, но так и не нашел ответов.&lt;br /&gt;Задача состоит в следующем: необходимо получить &amp;quot;ленту&amp;quot; пятимянутных свечек - от текущего момента (после подключения) до, допустим, минус две недели назад. &lt;br /&gt;Собственно, вопросы:&lt;br /&gt;1) Если вызвать RegisterHistoryData и слушать NewHistoryCandle - как узнать, что я получил все свечки в заданном диапазоне?&lt;br /&gt;2) В документации сказано, что RegisterHistoryData получает свечки за &lt;b&gt;предыдущие&lt;/b&gt; торговые сессии. Как тогда получить данные за текущую сессию (предполагаю, что подключился в середине торгового дня и нужно получить свечки более ранние)? &lt;br /&gt;3) И последнее, но не в последнюю очередь - адаптация решения первых двух вопросов к тестированию на исторических данных - как? &lt;br /&gt;&lt;br /&gt;Зараннее спасибо!&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;1. Эфристически.[smile] &lt;br /&gt;2. Попробуйте за текущую сессию.&lt;br /&gt;3. Тестирование идет на основе тиковых данных.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/7330/</id>
    <title type="text">Приветствую! Долго пытался разобраться самостоятельно, но так и не нашел ответов. Задача состоит в с...</title>
    <published>2011-04-07T09:47:14Z</published>
    <updated>2011-04-07T09:47:14Z</updated>
    <author>
      <name>morincer</name>
      <uri>https://stocksharp.ru/users/28225/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Приветствую!&lt;br /&gt;&lt;br /&gt;Долго пытался разобраться самостоятельно, но так и не нашел ответов.&lt;br /&gt;Задача состоит в следующем: необходимо получить &amp;quot;ленту&amp;quot; пятимянутных свечек - от текущего момента (после подключения) до, допустим, минус две недели назад. &lt;br /&gt;Собственно, вопросы:&lt;br /&gt;1) Если вызвать RegisterHistoryData и слушать NewHistoryCandle - как узнать, что я получил все свечки в заданном диапазоне?&lt;br /&gt;2) В документации сказано, что RegisterHistoryData получает свечки за &lt;b&gt;предыдущие&lt;/b&gt; торговые сессии. Как тогда получить данные за текущую сессию (предполагаю, что подключился в середине торгового дня и нужно получить свечки более ранние)? &lt;br /&gt;3) И последнее, но не в последнюю очередь - адаптация решения первых двух вопросов к тестированию на исторических данных - как? &lt;br /&gt;&lt;br /&gt;Зараннее спасибо!</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>