﻿<?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">возможно некорректная работа SampleSMA v.4.1.6</title>
  <id>~/topic/3191/vozmozhno-nekorrektnaya-rabota-samplesma-v_4_1_6/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-10T02:56:52Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=3191" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/22976/</id>
    <title type="text">Играясь с индикаторами и примером SampleCandles, обнаружил, следующее: Если в методе DrawCandle обра...</title>
    <published>2012-12-16T07:58:54Z</published>
    <updated>2012-12-16T07:58:54Z</updated>
    <author>
      <name>Algonavt</name>
      <uri>https://stocksharp.com/users/639/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Играясь с индикаторами и примером SampleCandles, обнаружил, следующее:
Если в методе DrawCandle обработку делать следующим образом, то средняя просто соединяет цены закрытия свечей:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;this.GuiAsync(() =&amp;gt;
               {

                   var wnd = _chartWindows.TryGetValue(series);

                   var bollingerValue = candle.State == CandleStates.Finished
                       ? new ChartIndicatorValue(_bollingerElement.Indicator, _bollingerElement.Indicator.Process(candle))
                       : null;

                   wnd.Chart.ProcessValues(candle.OpenTime, new Dictionary&amp;lt;IChartElement, object&amp;gt;
                    {
                        { _candlesElement, candle },
                        { _bollingerElement, bollingerValue }
                    });
               });
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Если же код немного модифицировать, то индикатор отображается нормально:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;var wnd = _chartWindows.TryGetValue(series);

            var bollingerValue = candle.State == CandleStates.Finished
            ? new ChartIndicatorValue(_bollingerElement.Indicator, _bollingerElement.Indicator.Process(candle))
            : null;

            this.GuiAsync(() =&amp;gt; wnd.Chart.ProcessValues(candle.OpenTime, new Dictionary&amp;lt;IChartElement, object&amp;gt;
                    {
                        { _candlesElement, candle },
                        { _bollingerElement, bollingerValue }
                    }));
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;С чем это может быть связано? Вроде как проблему решил, но всё равно хочется разобраться, почему проблема возникла.&lt;/p&gt;
&lt;p&gt;PS: в аттаче работающий проект.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22748/</id>
    <title type="text">Спасибо доктор, помогло:) </title>
    <published>2012-11-30T17:53:52Z</published>
    <updated>2012-11-30T17:53:52Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</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/22737/</id>
    <title type="text">Он и должен быть protected. LastValue уже давно нет, смотрите последние версии индикаторов. </title>
    <published>2012-11-30T13:56:59Z</published>
    <updated>2012-11-30T13:56:59Z</updated>
    <author>
      <name>esper</name>
      <uri>https://stocksharp.com/users/5990/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;ol&gt;
&lt;li&gt;Он и должен быть protected.&lt;/li&gt;
&lt;li&gt;LastValue уже давно нет, смотрите последние версии индикаторов.&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22736/</id>
    <title type="text">Спасибо! Но вопрос по Аллигатору по-прежнему остался. Попробовал свой индикатор написать аналогичный...</title>
    <published>2012-11-30T13:28:01Z</published>
    <updated>2012-11-30T13:28:01Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Спасибо! Но вопрос по Аллигатору по-прежнему остался.
Попробовал свой индикатор написать аналогичный аллигатору, но при переопределении метода OnProcess
вот так:
&lt;mark&gt;
public  override decimal OnProcess(IIndicatorValue input)
{
//если кол-во в буфере больше Shift, то первое значение отдали в прошлый раз, удалим его.
if (Buffer.Count &amp;gt; Shift)
Buffer.RemoveAt(0);&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;        var smaResult = _sma.Process(_medianPrice.Process(input));
        if (_sma.IsFormed)
            Buffer.Add(smaResult.GetValue&amp;lt;decimal&amp;gt;());

        return Buffer.Count &amp;gt; Shift ? Buffer[0] : LastValue;
    }&amp;lt;/mark&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;получаю ошибку &amp;lt;Ошибка	1&amp;quot;SampleSMA.WildersAlligator.OnProcess(StockSharp.Algo.Indicators.IIndicatorValue)&amp;quot;: невозможно изменить модификаторы доступа при переопределении унаследованного из &amp;quot;protected&amp;quot; члена &amp;quot;StockSharp.Algo.Indicators.BaseIndicator&lt;decimal&gt;.OnProcess(StockSharp.Algo.Indicators.IIndicatorValue)&amp;quot;&amp;gt;.
При попытке смены модификатора на &amp;quot;protected&amp;quot; получаю
&amp;lt;Ошибка	1:Имя &amp;quot;LastValue&amp;quot; отсутствует в текущем контексте&amp;gt;. Если закрыть &amp;quot;LastValue&amp;quot;, то компилится, но работать правильно естественно не будет.
Прям замкнутый круг какой-то.[confused]
Подскажите как правильно переопределить OnProcess, чтоб на Public не ругался и &amp;quot;LastValue&amp;quot; увидел???&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22733/</id>
    <title type="text">Поправил на кодеплексе. </title>
    <published>2012-11-30T06:40:36Z</published>
    <updated>2012-11-30T06:40:36Z</updated>
    <author>
      <name>esper</name>
      <uri>https://stocksharp.com/users/5990/</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/22731/</id>
    <title type="text">Кладу рисунки повторно, что-то загрузились с ошибкой. </title>
    <published>2012-11-29T22:13:35Z</published>
    <updated>2012-11-29T22:13:35Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</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/22730/</id>
    <title type="text">В хелпе код вывода написан и он работает, а схема вывода, представленная в примере SampleSMA работае...</title>
    <published>2012-11-29T22:09:00Z</published>
    <updated>2012-11-29T22:09:00Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;В хелпе код вывода написан и он работает, а схема вывода, представленная в примере SampleSMA работает неправильно на реале.
А причина полагаю в том, что переменная series объявлена как локальная в private void StartClick(object sender, RoutedEventArgs e).
Надобно её в private класса MainWindow записать. С этим вроде всё.
Вот ещё попутно вопрос-заметка. Похоже индикатор Аллигатор считается неверно. На графике (на одних и тех же данных) в визуале (рисунок 1) он один, а
на графике в квике (рисунок 2) он совсем другой. Причем график квик совпадает с графиком в AmiBrocker.
Ошибка в построении (а возможно и в вычислении) следующая:
Челюсть аллигатора не может отображаться с 6-й свечи. Ей для расчета нужно 13 и сдвинуть её надо на 8.
Следовательно, отражаться она будет только с 22 свечи. Аналогично для зубов и губ. На картинке из квика аллигатор такой потому что данные идут с 4-х утра.
И ещё вопрос. Какой способ расчета скользящих средних применяется в Аллигаторе в стокшарпе: простая, сглаженная, экспоненциальная или по уайлдерсу??&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22728/</id>
    <title type="text">Semen7: Значения индикатор высчитывает, но как-то странно. Например для первой поступившей свечки 80...</title>
    <published>2012-11-29T19:52:16Z</published>
    <updated>2012-11-29T19:52:16Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(22726)" rel="nofollow" target="_blank"&gt;Semen7&lt;/a&gt;:&lt;/strong&gt;
Значения индикатор высчитывает, но как-то странно. Например для первой поступившей свечки 80-ти периодное скользящее среднее
выдает значение для вывода на график. Но как?&lt;/p&gt;
&lt;/blockquote&gt;
&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/22726/</id>
    <title type="text">Значения индикатор высчитывает, но как-то странно. Например для первой поступившей свечки 80-ти пери...</title>
    <published>2012-11-29T19:17:54Z</published>
    <updated>2012-11-29T19:17:54Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Значения индикатор высчитывает, но как-то странно. Например для первой поступившей свечки 80-ти периодное скользящее среднее
выдает значение для вывода на график. Но как? Если ему минимум надо 80 свечек для вычисления первого значения.
Вычисленное значение совпадает с ценой закрытия свечки. И так для все остальных свечек. Такое ощущение, что все уже сформированные свечки,
которые индикатор проглотил, он не воспринимает,а считает только по текущей.
Может важно, свойство индикатора IsFormed после вычисления всегда == false.
Пробовал примеры, которые в хелпе стокшарпа. Всё для реала работает. А в этом примере почему-то такое непонятное происходит.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22723/</id>
    <title type="text">Semen7: Эксепшены вроде не появлялись, а что именно в отладчике смотреть? Реальные значения индикато...</title>
    <published>2012-11-29T16:20:48Z</published>
    <updated>2012-11-29T16:20:48Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(22717)" rel="nofollow" target="_blank"&gt;Semen7&lt;/a&gt;:&lt;/strong&gt;
Эксепшены вроде не появлялись, а что именно в отладчике смотреть?&lt;/p&gt;
&lt;/blockquote&gt;
&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/22717/</id>
    <title type="text">Когда отключаешь код загрузки истории, получается тоже самое. На всякий случай привожу отключаемый к...</title>
    <published>2012-11-29T10:42:41Z</published>
    <updated>2012-11-29T10:42:41Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Когда отключаешь код загрузки истории, получается тоже самое. На всякий случай привожу отключаемый код (вдруш чаво лишнего закоментил).
/*IEnumerable&lt;Candle&gt; candles = CultureInfo.InvariantCulture.DoInCulture(() =&amp;gt; File.ReadAllLines(&amp;quot;LKOH_history.txt&amp;quot;).Select(line =&amp;gt;
{
var parts = line.Split(',');
var time = (parts[0] + parts[1]).ToDateTime(&amp;quot;yyyyMMddHHmmss&amp;quot;);
return (Candle)new TimeFrameCandle
{
OpenPrice = parts[2].To&lt;decimal&gt;(),
HighPrice = parts[3].To&lt;decimal&gt;(),
LowPrice = parts[4].To&lt;decimal&gt;(),
ClosePrice = parts[5].To&lt;decimal&gt;(),
TimeFrame = _timeFrame,
OpenTime = time,
CloseTime = time + _timeFrame,
TotalVolume = parts[6].To&lt;decimal&gt;(),
Security = _lkoh,
State = CandleStates.Finished,
};
}).ToArray());&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;			var lastCandleTime = default(DateTime);

			// начинаем вычислять скользящие средние
			foreach (var candle in candles)
			{
				ProcessCandle(candle);
				lastCandleTime = candle.OpenTime;
			}![](null)*/
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;/*var bounds = _timeFrame.GetCandleBounds(series.Security);&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;			candles = _candleManager.Container.GetCandles(series, new Range&amp;lt;DateTime&amp;gt;(lastCandleTime + _timeFrame, bounds.Min));

			foreach (var candle in candles)
			{
				ProcessCandle(candle);
			}*/
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;На рисунке пример того, что получается при отключении истории. Вроде бы он должен рисовать две скользящие средние
с длиной 80 и 10 для реальных данных. А на деле получается рисует непонятно чего.
Эксепшены вроде не появлялись, а что именно в отладчике смотреть?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22715/</id>
    <title type="text">Algonavt: Вчера на примере SampleSMA получил то же самое. Интересно узнать мнение разработчиков по э...</title>
    <published>2012-11-29T09:39:44Z</published>
    <updated>2012-11-29T09:39:44Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(22710)" rel="nofollow" target="_blank"&gt;Algonavt&lt;/a&gt;:&lt;/strong&gt;
Вчера на примере SampleSMA получил то же самое. Интересно узнать мнение разработчиков по этому поводу - бага это или где-то в самом примере недоработка.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Может потому что разница м/у историей и реалом 3 месяца? А что отладчик говорит? Или пример тоже обфусцирован?[cool]&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22710/</id>
    <title type="text">Вчера на примере SampleSMA получил то же самое. Интересно узнать мнение разработчиков по этому повод...</title>
    <published>2012-11-29T07:51:48Z</published>
    <updated>2012-11-29T07:51:48Z</updated>
    <author>
      <name>Algonavt</name>
      <uri>https://stocksharp.com/users/639/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вчера на примере SampleSMA получил то же самое. Интересно узнать мнение разработчиков по этому поводу - бага это или где-то в самом примере недоработка.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/22701/</id>
    <title type="text">Всем здравствуйте! Только начинаю разбираться в stockslash и столкнулся со следующим. Пример SampleS...</title>
    <published>2012-11-28T12:39:40Z</published>
    <updated>2012-11-28T12:39:40Z</updated>
    <author>
      <name>Semen7</name>
      <uri>https://stocksharp.com/users/6533/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Всем здравствуйте!
Только начинаю разбираться в stockslash и столкнулся со следующим.
Пример SampleSMA в версии 4.1.6 то-ли некорректно работает, то-ли ...
Чудесно компилируется, запускается, отрисовывает исторические данные по &amp;quot;LKOH&amp;quot; (которые идут в комплекте вместе с данным примером)
и скользящие средние для них. Но как только переходит на реальное время, все скользящие средние начинают вычисляться некорректно,
становятся фактически одной линией, которая проходит по закрытию свечей. Причём на изменение параметров
скользящей средней при отрисовке реальных данных не реагирует, что Length = 10, что 30, разницы никакой. Может подскажет кто, в чём дело?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>