﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">ArgumentNullExeption при вызове GetTimeFrameCandles</title>
  <id>~/topic/2589/argumentnullexeption-pri-vyzove-gettimeframecandles/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-04T16:08:06Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2589" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/18918/</id>
    <title type="text">Проблема решилась после иной спецификации Security. Не хватало свойства Exchange. Определил так, и с...</title>
    <published>2012-05-07T18:17:15Z</published>
    <updated>2012-05-07T18:17:15Z</updated>
    <author>
      <name>Chicot</name>
      <uri>https://stocksharp.com/users/693/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Проблема решилась после иной спецификации Security. Не хватало свойства Exchange.&lt;br /&gt;&lt;br /&gt;Определил так, и свечки стали создаваться.&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
var security = new Security {
                Id = &amp;quot;GAZP@EQNE&amp;quot;,
                MinStepSize = 0.01m,
                Exchange = Exchange.Micex
            };&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18818/</id>
    <title type="text">Подскажите, пожалуйста, как можно получить коллекцию свечек из хранилища. Версия 4.0.22. Пробовал та...</title>
    <published>2012-05-02T23:19:50Z</published>
    <updated>2012-05-02T23:19:50Z</updated>
    <author>
      <name>Chicot</name>
      <uri>https://stocksharp.com/users/693/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Подскажите, пожалуйста, как можно получить коллекцию свечек из хранилища. &lt;br /&gt;&lt;br /&gt;Версия 4.0.22.&lt;br /&gt;&lt;br /&gt;Пробовал так&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
TradingStorage storage = new TradingStorage(new InMemoryStorage());
storage.BasePath = @&amp;quot;e:\Hydra DB&amp;quot;;

IMarketDataStorage&amp;lt;TimeFrameCandle&amp;gt; candleStorage = storage.GetCandleStorage&amp;lt;TimeFrameCandle,TimeSpan&amp;gt;(security, TimeSpan.FromMinutes(5));
IEnumerable&amp;lt;TimeFrameCandle&amp;gt; candles = candleStorage.Load(new DateTime(2012, 3, 1), new DateTime(2012, 3, 31));&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;А еще так.&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
IMarketDataStorage&amp;lt;Trade&amp;gt; tradeStorage = storage.GetTradeStorage(security);
IEnumerable&amp;lt;Trade&amp;gt; deals = tradeStorage.Load(new DateTime(2012, 3, 1), new DateTime(2012, 3, 31));

var candleManager = new CandleManager();
candleManager.Sources.Add(new CandleBuilder(new RawConvertableCandleBuilderSource&amp;lt;Trade&amp;gt;(deals)) { IsSyncRegister = true });
candleManager.Register(typeof(TimeFrameCandle), security, TimeSpan.FromHours(1));
var candles = candleManager.GetTimeFrameCandles(security, TimeSpan.FromHours(1));&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Так и так candles получается пустым.&lt;br /&gt;Почитал форум, но решить вопрос не удалось.&lt;br /&gt;&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18383/</id>
    <title type="text">Получилось! Спасибо) Хранилище свечек получилось, но оно пустое, видимо где-то что-то еще не так( Я ...</title>
    <published>2012-04-18T19:32:20Z</published>
    <updated>2012-04-18T19:32:20Z</updated>
    <author>
      <name>Loiso</name>
      <uri>https://stocksharp.com/users/5934/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Получилось! Спасибо) &lt;br /&gt;Хранилище свечек получилось, но оно пустое, видимо где-то что-то еще не так( Я пробовал создать свечки из сохраненной истории.&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
    
class Program
    {
        static void Main()
        {
            
            // создаем тестовый инструмент, на котором будет производится тестирование
            var security = new Security
            {
                Id = &amp;quot;SBER@EQBR&amp;quot;, 
                Code = &amp;quot;SBER&amp;quot;,
                Name = &amp;quot;SBER-4.04&amp;quot;,
                MinStepSize = 0.01m,
                MinStepPrice = 0.01m,
                Exchange = Exchange.Test,
            };

            // тестовый портфель
            var portfolio = new Portfolio
            {
                Name = &amp;quot;test account&amp;quot;,
                //BeginAmount = 100000,
            };

            // хранилище, через которое будет производиться доступ к тиковой и котировочной базе
            var storage = new TradingStorage(new InMemoryStorage())
            {
                BasePath = &amp;quot;C:/&amp;quot;
            };

            var _trader = new EmulationTrader(
                new[] { security },
                new[] { portfolio })
            {
                MarketTimeChangedInterval = TimeSpan.FromHours(1),
                Storage = storage,
                WorkingTime = Exchange.Rts.WorkingTime,
                DaysInMemory = 6,
            };
            
            CandleManager candleManager = new CandleManager(_trader);
            var builder = new CandleBuilder(new TradeCandleBuilderSource(_trader) { IsSyncProcess = true });
            candleManager.Sources.Add(builder);

            candleManager.RegisterTimeFrameCandles(security, TimeSpan.FromHours(1));
            
            var candles = candleManager.GetTimeFrameCandles(security, TimeSpan.FromHours(1));
           
            foreach (var x in candles)
            {
                Console.WriteLine(x.ClosePrice);
            }

            Console.WriteLine(&amp;quot;Ok&amp;quot;);
            Console.ReadKey();
            
        }
    }
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18203/</id>
    <title type="text">При попытке создать часовые свечки Вы их не создаете, а пытаетесь взять. Из справки: Получить все св...</title>
    <published>2012-04-13T07:20:21Z</published>
    <updated>2012-04-13T07:20:21Z</updated>
    <author>
      <name>Moadip</name>
      <uri>https://stocksharp.com/users/5973/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Loiso &lt;a href="https://stocksharp.com/posts/m/18191/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;При попытке создать часовые свечки&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Вы их не создаете, а пытаетесь взять.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Из справки:&lt;/b&gt; Получить все свечки по инструменту и тайм-фрейму&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
GetTimeFrameCandles(Security, TimeSpan)&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Прежде чем их взять, нужно зарегестрировать нужную группировку свечек. Это в 4.0&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
candleManager.RegisterTimeFrameCandles(security, TimeSpan.FromHours(1));&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;В 4.1&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
series = new CandleSeries(typeof(TimeFrameCandle), security, TimeSpan.FromHours(1));
candleManager.Start(series);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18191/</id>
    <title type="text">При попытке создать часовые свечки на строчке var candles = candleManager.GetTimeFrameCandles(securi...</title>
    <published>2012-04-12T20:07:42Z</published>
    <updated>2012-04-12T20:07:42Z</updated>
    <author>
      <name>Loiso</name>
      <uri>https://stocksharp.com/users/5934/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">При попытке создать часовые свечки на строчке&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
var candles = candleManager.GetTimeFrameCandles(security, TimeSpan.FromHours(1));&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;выдает ошибку &amp;quot;ArgumentNullExeption не обработано. Значение не может быть неопределенным, значение параметра Key&amp;quot;&lt;br /&gt;security и candleManager не null, заданы. Параметра key я ни в одном из используемых классов не нашел. Подскажите, что может быть не так?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>