Here is my full code:
Code: Select all
[RecoverDrawings = false];
if not LastBarOnChart_s then #return;
Inputs:
DomLevels (5),CumTxtPos(6),
UpdateSpeed_seconds(0.1),
TLSize (4), Txtcol(white),
TxTSize (7);
Vars:
AskSum (0),
BidSum (0),
SumBidAskSizes(0);
array :
AskSizeLevel [10](0),BidSizeLevel [10](0);
RecalcLastBarAfter(UpdateSpeed_seconds);
repeat
if not dom_isconnected then
break;
value11 = 0;
value12 = 0;
for value1 = 0 to dom_askscount - 1 begin
value12 = dom_asksize(value1);
AskSizeLevel [value1] = dom_asksize(value1);
if value12 > value11 then value11 = value12;
end;
for value1 = 0 to dom_bidscount - 1 begin
value12 = dom_bidsize(value1);
BidSizeLevel [value1] = dom_bidsize(value1);
if value12 > value11 then value11 = value12;
end;
if 0 >= value11 then
break;
AskSum = array_sum (AskSizeLevel ,0,dom_askscount - 1);
BidSum = array_sum (BidSizeLevel ,0,dom_bidscount -1);
SumBidAskSizes = AskSum+BidSum;
//for value1 = 0 to dom_askscount - 1 begin
if dom_askscount =5 then begin
draw_DOM_CUM(
dom_askprice(1), dom_asksize(1), array_sum (AskSizeLevel ,0,value1),
SumBidAskSizes,value1, value11 ,
red,dom_askscount - 1 = value1,TLSize ,TxTSize,CumTxtPos);
end;
//for value1 = 0 to dom_bidscount - 1 begin
if dom_bidscount =5 then begin
draw_DOM_CUM(
dom_bidprice(1), dom_bidsize(1), array_sum (BidSizeLevel ,0,value1),
SumBidAskSizes,value1, value11 ,
color.dodgerblue,dom_bidscount - 1 = value1,TLSize ,TxTSize,-CumTxtPos);
end;
plot1("OK", "Status", white);
#return;
until(False);
plot1("Level2 data is not avaliable", "Status", red);
RecalcLastBarAfter(25);