Текст выводить индикаторы не умеют на данный момент.
Решить можно выводом в отдельную область и отображением последнего значения.
вот так:
Код: Выделить всё
function Initialize()
{
// Определение параметров индикатора
IndicatorName = "PriceChannel4";
AddInput("Input", Inputs.Candle);
AddParameter("Period", 50, 1);
PriceStudy = true;
AddSeries("ChannelWidth", DrawAs.Histogram, Color.Black, true, Axes.New);
AddSeries("Upper", DrawAs.Line, Color.Blue);
AddSeries("Lower", DrawAs.Line, Color.Red);
AddGlobalVariable("Uppers", Types.DoubleList);
AddGlobalVariable("Lowers", Types.DoubleList);
}
function Evaluate()
{
// AlfaDirect. 2015.
// Верхняя линия "Upper" - максимальная цена за Period
// Нижняя линия "Lower" - минимальная цена за Period
// evge 28.03.2021 https://alfadirect4.ru
// добавлено отображение ширины канала в отдельной области
var high = Input.High[0];
var low = Input.Low[0];
Uppers.Add(high);
Lowers.Add(low);
if ( CurrentIndex > Period )
{
Uppers.RemoveAt(0);
for (var i = 0; i < Uppers.Count-1; i++)
high = Math.Max(Uppers[i], high);
Lowers.RemoveAt(0);
for (var i = 0; i < Lowers.Count-1; i++)
low = Math.Min(Lowers[i], low);
}
Upper = high;
Lower = low;
ChannelWidth = high - low;
}