////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Код: Выделить всё
function Initialize()
{
IndicatorName = "DBObC_Histogram";
AddInput("Inp", Inputs.Candle);
AddParameter("Period_HL", 1,1);
AddParameter("Period_CO", 1,1);
PriceStudy = false;
AddSeries("Upper", DrawAs.Histogram, Color.Blue,false); //хай лоу
AddSeries("Lower", DrawAs.Histogram, Color.Red,false);
AddSeries("HL",DrawAs.Histogram,Color.Blue ,AxisType.ZeroBased);
AddSeries("Op", DrawAs.Histogram , Color.Blue,false); //откр.закр.
AddSeries("Cl", DrawAs.Histogram , Color.Red,false);
AddSeries("CO", DrawAs.Histogram , Color.Red,AxisType.ZeroBased);
}
function Evaluate()
{
var open = Input.Open[0]; //откр.закр.
var close = Input.Close[0];
var high = Input.High[0]; //хай лоу
var low = Input.Low[0];
if ( CurrentIndex >= 0 )
{
int i = 0;
for (i = 1; i < Period_HL; i++)
high = Math.Max(Input.High[i], high);
for (i = 1; i < Period_HL; i++)
low =Math.Min(Input.Low[i], low) ;
for (i = 1; i < Period_CO; i++)
open = Math.Max(Input.Open[i], open);
for (i = 1; i < Period_CO; i++)
close = Math.Min(Input.Close[i], close);
Upper = high;
Lower = 0;
HL=(high-low)/2;
Cl=close;
Op=open ;
CO=((Op-Cl)*Period_CO)/2;
if (CO<=0 )
CO=(CO*-1)*Period_CO;
}
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2 линия
Код: Выделить всё
function Initialize()
{
IndicatorName = "DBObC_Line";
AddInput("Inp", Inputs.Candle);
AddParameter("Period_HL", 1,1);
AddParameter("Period_CO", 1,1);
PriceStudy = false;
AddSeries("Upper", DrawAs.Histogram, Color.Blue,false); //хай лоу
AddSeries("Lower", DrawAs.Histogram, Color.Red,false);
AddSeries("HL",DrawAs.Line,Color.Blue ,AxisType.ZeroBased);
AddSeries("Op", DrawAs.Histogram , Color.Blue,false); //откр.закр.
AddSeries("Cl", DrawAs.Histogram , Color.Red,false);
AddSeries("CO", DrawAs.Histogram , Color.Red,AxisType.ZeroBased);
}
function Evaluate()
{
var open = Input.Open[0]; //откр.закр.
var close = Input.Close[0];
var high = Input.High[0]; //хай лоу
var low = Input.Low[0];
if ( CurrentIndex >= 0 )
{
int i = 0;
for (i = 1; i < Period_HL; i++)
high = Math.Max(Input.High[i], high);
for (i = 1; i < Period_HL; i++)
low =Math.Min(Input.Low[i], low) ;
for (i = 1; i < Period_CO;i++)
open = Math.Max(Input.Open[i], open);
for (i = 1; i < Period_CO; i++)
close = Math.Min(Input.Close[i], close);
Upper = high;
Lower = 0;
HL=(high-low)/2;
Cl=close;
Op=open ;
CO=((Op-Cl)*Period_CO)/2;
if (CO<=0 )
CO=(CO*-1)*Period_CO;
}
}
}