﻿<?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">При добавление значения на график выпадает ошибка</title>
  <id>~/topic/10979/pri-dobavlenie-znacheniya-na-grafik-vypadaet-oshibka/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-13T17:57:01Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=10979" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/49097/</id>
    <title type="text">Сейчас приходится использовать: if (osnValue.IsFormed) и не отрисовывать график вообще пока условие ...</title>
    <published>2019-11-30T20:07:41Z</published>
    <updated>2019-11-30T20:08:00Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Сейчас приходится использовать:  if (osnValue.IsFormed)
и не отрисовывать график вообще пока условие не выполнится.
Иначе получаю ошибку: System.Collections.Generic.KeyNotFoundException: &amp;quot;Данный ключ отсутствует в словаре.&amp;quot;
И багу на графике прикрепил к посту.
Подскажите пожалуйста.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49092/</id>
    <title type="text">Суппер, спасибо!) Чувствую в моем коде есть еще много адских костылей, которых можно исправить тайны...</title>
    <published>2019-11-30T01:19:10Z</published>
    <updated>2019-11-30T01:19:10Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Суппер, спасибо!)
Чувствую в моем коде есть еще много адских костылей, которых можно исправить тайными методами S#&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49083/</id>
    <title type="text">Добрый день Вызывается ли в вашем коде такой метод https://github.com/StockSharp/StockSharp/blob/mas...</title>
    <published>2019-11-29T15:52:02Z</published>
    <updated>2019-11-29T15:52:02Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Вызывается ли в вашем коде такой метод &lt;a href="https://github.com/StockSharp/StockSharp/blob/master/Samples/Chart/SampleChart/MainWindow.xaml.cs#L115" target="_blank"&gt;https://github.com/StockSharp/StockSharp/blob/master/Samples/Chart/SampleChart/MainWindow.xaml.cs#L115&lt;/a&gt; Если нет, то добавьте его пожалуйста. Указывать рендерер для индикатора нужно только он не стандартный и требуется отрисовка более одной линии. Стандартные индикаторы имеют уже свои рендереры.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49082/</id>
    <title type="text">хм, после не хитрых манипуляций, получилось заставить отрисовывать так как задумано, но нужно задава...</title>
    <published>2019-11-29T00:11:58Z</published>
    <updated>2019-11-29T01:08:28Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;хм, после не хитрых манипуляций, получилось заставить отрисовывать так как задумано, но нужно задавать свойство IndicatorPainter.
например            indicatorElement1.IndicatorPainter =new StockSharp.Xaml.Charting.IndicatorPainters.MovingAverageConvergenceDivergenceSignalPainter();
или это я в обходной путь пошел?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/49072/</id>
    <title type="text">Вот я вернулся к этой проблеме, так и не переварив. И так исходные, используется пример SampleConnec...</title>
    <published>2019-11-28T01:31:07Z</published>
    <updated>2019-11-28T23:34:17Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вот я вернулся к этой проблеме, так и не переварив.
И так исходные, используется пример SampleConnection из ночной сборки апи за ноябрь.
я модифицировал класс ChartWindow (файл класса прилагаю)так ,что бы он отрисовывал индикатор MACD signal.
Но или я не понял ваше объяснение или что то не работает.
Получаю ошибку на методе draw: Указанный метод не поддерживается.
из трасировки видно ,что косяк тут:
at StockSharp.Algo.Indicators.ComplexIndicatorValue.GetValue()
Полная:&lt;/p&gt;
&lt;div class="spoiler"&gt;&lt;p&gt;System.NotSupportedException
HResult=0x80131515
Сообщение = Указанный метод не поддерживается.
Источник = StockSharp.Algo
Трассировка стека:
at StockSharp.Algo.Indicators.ComplexIndicatorValue.GetValue()
at StockSharp.Xaml.Charting.IndicatorPainters.BaseChartIndicatorPainter&lt;code&gt;1.#=zk9036Ro=(IList&lt;/code&gt;1 #=zFsAlfBA=, Int32 #=zPyNoDzM=)
at StockSharp.Xaml.Charting.IndicatorPainters.BaseChartIndicatorPainter&lt;code&gt;1.#=zP5ntCAXu3kc4HQPuH7ljQwM=.#=zydjJIQlML2tuONAbmw==(Int32 #=zycFec1E=) at System.Linq.Enumerable.WhereSelectEnumerableIterator&lt;/code&gt;2.MoveNext()
at System.Linq.Enumerable.&lt;CastIterator&gt;d__97&lt;code&gt;1.MoveNext() at System.Linq.Enumerable.&amp;lt;CastIterator&amp;gt;d__97&lt;/code&gt;1.MoveNext()
at #=zAuXtmwo_UFdzWVVSiImlM63HcRIkO9Rk3i2tbosrvzDDD1nU_YsPK9gA62La.#=z8SGlJVg=[TX1](IEnumerableEx&lt;code&gt;1 #=z8Cqh5Eg=) at StockSharp.Xaml.Charting.IndicatorPainters.BaseChartIndicatorPainter&lt;/code&gt;1.DrawValues(IList&lt;code&gt;1 vals, IChartElement element) at StockSharp.Xaml.Charting.IndicatorPainters.BaseChartIndicatorPainter&lt;/code&gt;1.Draw(ChartDrawData data)
at #=zx24ajpn1eHsuu_VYWsSDObVHmCQkPa79lI0bsVbZ4_TXnui8LBYeXlVxIZKi.#=zQMvP4FWk4J6y(ChartDrawData #=zVByD5Xs=)
at #=zx24ajpn1eHsuu_VYWsSDObVHmCQkPa79lI0bsVbZ4_TXnui8LBYeXlVxIZKi.#=z8SGlJVg=(ChartDrawData #=zVByD5Xs=)
at StockSharp.Xaml.Charting.Chart.#=zgPLuF158PsVf.#=z8SGlJVg=(ChartDrawData #=zVByD5Xs=)
at SampleConnection.ChartWindow.ProcessNewCandle(CandleSeries series, Candle candle) in E:\Users\Ghost-mo\Desktop\проджекты\Сергей\API_4.4.17_ru (1)\Samples\Connectors\SampleConnection\ChartWindow.xaml.cs:line 71
at StockSharp.Algo.Connector.ProcessCandleMessage(CandleMessage message)
at StockSharp.Algo.Connector.OnProcessMessage(Message message)&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Прошу посмотреть)&lt;/p&gt;
&lt;p&gt;Можно конечно руками разбить МАКД сигнал на составляющие, но это сложно в коде и плюс на графике все равно не будет его имени, если в элементе не указывать индикатор.
.Add(indicatorElement1, ((ComplexIndicatorValue)osnValue).InnerValues.ToArray()[0].Value)
.Add(indicatorElement2, ((ComplexIndicatorValue)osnValue).InnerValues.ToArray()[1].Value);&lt;/p&gt;
&lt;p&gt;Так же прошу передать кому то подумать, что куда то в индикатор запихнуть всякие рекомендованные нюансы их отрисовки: в зоне свеч, или в отдельной зоне,  DrawStyle = ChartIndicatorDrawStyles.Histogram и прочее
Спасибо.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48446/</id>
    <title type="text">Пришлите пожалуйста проект, воспроизводящий вашу проблему. </title>
    <published>2019-09-17T17:26:55Z</published>
    <updated>2019-09-17T17:26:55Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Пришлите пожалуйста проект, воспроизводящий вашу проблему.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48445/</id>
    <title type="text">ну у меня выпадала ошибка: &amp;quot;Получен новый индикатор без предварительного вызова Reset().&amp;quot; Но я разоб...</title>
    <published>2019-09-17T14:40:55Z</published>
    <updated>2019-09-17T14:40:55Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;ну у меня выпадала ошибка: &amp;quot;Получен новый индикатор без предварительного вызова Reset().&amp;quot;
Но я разобрался, это было из-за того, что в отрисовке графика пока не готова сигнальная линия, я использовал общую индикатор macd а надо было ema.&lt;/p&gt;
&lt;p&gt;Вот у меня и вопрос как правильно на график вывести macd с учетом не готовности индикатора&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48440/</id>
    <title type="text">Пожалуйста укажите текст ошибки. </title>
    <published>2019-09-17T13:23:05Z</published>
    <updated>2019-09-17T13:23:05Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.com/users/97869/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Пожалуйста укажите текст ошибки.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48425/</id>
    <title type="text">И еще раз здравствуйте, помогите пожалуйста. Не совсем понимаю почему возникает ошибка. А вы можете ...</title>
    <published>2019-09-15T23:12:09Z</published>
    <updated>2019-09-16T22:13:12Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;И еще раз здравствуйте, помогите пожалуйста.
Не совсем понимаю почему возникает ошибка.
А вы можете поделиться ПРАВИЛЬНЫМ примером рисования графика по комплексному индикатору, ну например macd.&lt;/p&gt;
&lt;p&gt;Без явного объявления в ChartIndicatorElement. В другом посте говорили:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(47486)" rel="nofollow" target="_blank"&gt;Support&lt;/a&gt;:&lt;/strong&gt;
Добрый день
График в легенде показывает параметры индикатора.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Я добавляю на график элемент:
charts[N].AddElement(charts[N].Areas[0], strategy.ChartIndiElement,strategy._series, strategy.Indicator);
ChartIndiElement[0]- пустой ChartIndicatorElement.&lt;/p&gt;
&lt;p&gt;И подгружаю данные для отрисовки как то совсем извращенно:
osnValue -значение индикатора макд.Process(candle);&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
if (osnValue is ComplexIndicatorValue)
                        {
                            if (osnValue.IsFormed)
                            {
                                foreach (var indv in ((ComplexIndicatorValue)osnValue).InnerValues)//перебор по составной части результата
                                {
                                   drZnach.Add(indv.Value);//для других расчетов дополнительно запоминаю
                                    try
                                    {
                                      tData.Add(charts[(int)typeuslovia].Areas[1].Elements[drZnach.Count - 1], drZnach.Last());//в доп область добавляю.
                                    }
                                    catch (Exception ee)
                                    {
                                        //   MessageBox.Show(&amp;quot;Что то пошло не так: &amp;quot;+ee,&amp;quot;Ошибка&amp;quot;);
                                    }
                                }
                           else особый извращенный код для отрисовки графиков пока не сформировались графики.

&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48364/</id>
    <title type="text">Кажется проблема была в том, что я не в ту Area или ChartIndiElement передавал\привязывал данные </title>
    <published>2019-09-06T15:30:17Z</published>
    <updated>2019-09-06T15:30:17Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Кажется проблема была в том, что я не в ту Area  или ChartIndiElement передавал\привязывал данные&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/48350/</id>
    <title type="text">Добрый день. Пока индикаторы не сформированы я их не рисую. При старте стратегии и прогрузке и прори...</title>
    <published>2019-09-05T15:56:11Z</published>
    <updated>2019-09-05T15:56:11Z</updated>
    <author>
      <name>ghost-mo</name>
      <uri>https://stocksharp.com/users/94687/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день.
Пока индикаторы не сформированы я их не рисую.
При старте стратегии и прогрузке и прорисовке графиков. Например при использовании Macd при попытке добавить на график данные (свечку, трэйды и индикатор ) выскакивает ошибка:
&amp;quot;Получен новый индикатор без предварительного вызова Reset().&amp;quot;
Хотя я пробовал при старте стратегии добавить по каждому индикатору Reset()
Подскажете в чем может быть проблема, код наверное нужен? Постараюсь вырезать суть&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>