evge писал(а):Пример как окрасить (на всех барах)
Нужное условие отбора нужных для отрисовки баров можно добавить в код.
Добрый вечер!
Подскажите, пож-та, как решить проблему. В продолжение заданного здесь вопроса и выложенного Вами кода, я дописываю условие "раскраски" бара, если Дельта больше ил меньше какого-то порогового значения. Однако получается, что график масштабируется таким образом, чтобы на шкалу справа могло попасть значение Дельты. К примеру, если у инструмента сам график в зоне 2000-2400, но Дельта = 100, то весь график масштабируется в диапазон 100-2400.
UPD:
Кажется удалось решить, добавил сюда false
AddSeries("Delta", DrawAs.Custom, Color.Transparent,
false);
Код:
Код: Выделить всё
function Initialize()
{
IndicatorName = "BarColor2";
PriceStudy = true;
AddInput("Input", Inputs.Candle, 1, true, "");
AddSeries("Delta", DrawAs.Custom, Color.Transparent, false);
AddSeries("O", DrawAs.Custom, Color.Transparent);
AddSeries("C", DrawAs.Custom, Color.Transparent);
AddSeries("H", DrawAs.Custom, Color.Transparent);
AddSeries("L", DrawAs.Custom, Color.Transparent);
}
function Evaluate()
{
var I = Input;
O = I.Open[0];
C = I.Close[0];
H = I.High[0];
L = I.Low[0];
// Delta (Дельта) - разница между объемом сделок покупателей и продавцов
Delta = Input.VolumeAsk[0] - Input.VolumeBid[0];
if (Delta >= 4000 )
H.DrawHistogram(L, Color.Transparent, LineStyles.Solid, 1, Color.Green, 20);
if (Delta <= -4000 )
L.DrawHistogram(H, Color.Transparent, LineStyles.Solid, 1, Color.Red, 20);
}