Получение N значение из индикатора(ошибка).~/topic/3682/poluchenie-n-znachenie-iz-indikatora(oshibka)_/Copyright @ StockSharp Platform LLC 2010 - 20242024-03-29T15:48:19Zhttps://stocksharp.ru/images/logo.pnghttps://stocksharp.ru/posts/m/25863/Доброго дня! Прошу пояснить, почему в этом коде пытаюсь получить значение индикатора под индексом i,...2013-05-11T09:11:18Z2013-06-23T15:07:57ZUsilaDobryhttps://stocksharp.ru/users/28825/info@stocksharp.ruДоброго дня!<br />Прошу пояснить, почему в этом коде пытаюсь получить значение индикатора под индексом i, в ответ на строке<br />var sarValue1 = _parabolic.GetValue(i); выпадает ошибка - "Индикатор Parabolic SAR не содержит необходимое количество значений.".<br />Например, проверяю по F10 в контейнере 179 значений, i=179, надо получить значение индикатора под индексом 179, выпадает такая ошибка... Контейнер - это своего рода массив значений индикатора? или нет...<br />И свечку по индексу i-1 не находит... Но, если есть 179 значений индикатора, то значит есть 179 свечек, иначе как появились значения индикатора...?<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
var i = _parabolic.Container.Count;
while (i != 0)
{
var sarValue1 = _parabolic.GetValue(i);
var sarValue2 = _parabolic.GetValue(i - 1);
Candle candleValue = _candleSeries.GetCandle<TimeFrameCandle>(i - 1);
if (sarValue2 > candleValue.HighPrice && sarValue1 < candleValue.HighPrice)
{
_referenceLevelsUp.Add(sarValue2);
if (_referenceLevelsUp.Count > 2)
_referenceLevelsUp.RemoveAt(0);
}
i--;
}</pre>
</div></div>Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/25864/Контейнер - это своего рода массив значений индикатора? или нет... Контейнер индикатора - это некий ...2013-05-11T11:24:23Z2013-05-11T11:24:23ZIvanBhttps://stocksharp.ru/users/26984/info@stocksharp.ru<div class="quote"><span class="quotetitle">UsilaDobry <a href="https://stocksharp.ru/posts/m/25863/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">Контейнер - это своего рода массив значений индикатора? или нет...<br /></div></div><br />Контейнер индикатора - это некий ящик со значениями, и инструментами(методами) для работы с ними.<br /><div class="quote"><span class="quotetitle">UsilaDobry <a href="https://stocksharp.ru/posts/m/25863/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">И свечку по индексу i-1 не находит... Но, если есть 179 значений индикатора, то значит есть 179 свечек, иначе как появились значения индикатора...?<br /></div></div><br />Если в контейнере 179 элементов. то индекс последнего 178. т.к. индексация принята с нуля в C#.<br />Нужно убрать строку<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
var sarValue1 = _parabolic.GetValue(i);</pre>
</div></div><br />и выполнить, посмотреть что будет с выполнением строки<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
var sarValue2 = _parabolic.GetValue(i - 1); </pre>
</div></div><br />Copyright @ StockSharp Platform LLC 2010 - 2024