После того, как мы изучили основную структуру данных Wealth-Lab в виде DataSeries, пришла пора узнать - как можно получить доступ к этим данным в конкретный момент времени. Сделать это, конечно если знать как, очень просто.
Как: получить доступ к информации конкретного бара
Используйте индикатор в виде квадратных скобок [] для доступа к единичному значению массива DataSeries. Для этого поставьте в квадратные скобки номер конкретного бара. Мы уже рассматривали такой случай, когда говорили об основных рядак, таких как Close, Volume и т.п.
Пример (как выполнить пример приведенного кода)...
Следующий пример покажет Вам, как получить самое последнее значение ряда средних цен, который мы с Вами уже создавали в предыдущем примере.
protected override void Execute() { DataSeries avgPrice = (High + Low) / 2; avgPrice.Description = "Средняя цена"; PlotSeries(PricePane, avgPrice, Color.Blue, WealthLab.LineStyle.Solid, 1); int lastBarNumber = Bars.Count - 1; double lastAvg = avgPrice[lastBarNumber]; DrawLabel(PricePane, "Значение средней цены на последнем баре = " + lastAvg, Color.Black); }
Рассмотрим еще один пример.
Пример (как выполнить пример приведенного кода)...
Изучать технические индикаторы мы будем позже, однако уже сейчас мы укажем на то, что часто удобно получить доступ к значениям индикатора на конкретном баре непосредственно с помощью метода класса DataSeries. Именно такой случай рассмотрен в этом примере. Это простейшая проверка, которая определяет не является ли значение 14-ти периодичного RSI меньше 30 и если это действительно так, создает алерт на покупку одного контракта.
protected override void Execute() { int bar = Bars.Count - 1; if (RSI.Series(Close, 14)[bar] < 30) BuyAtMarket(bar + 1); }
На сегодня все. В следующий раз более подробно рассмотрим, как наполнить значениями самостоятельно созданные ряды данных DataSeries.
[...] Как получить доступ к единичному значению DataSeries Главная Symbol Info – подробная информация о [...]
[...] [...]