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); 
}