Ken’s DailyHLCloud
#
# TD Ameritrade IP Company, Inc. (c) 2011-2018
#
input aggregationPeriod = AggregationPeriod.DAY;
input length = 2;
input displace = -1;
input showOnlyLastPeriod = no;
plot DailyHigh;
plot DailyLow;
if showOnlyLastPeriod and !IsNaN(close(period = aggregationPeriod)[-1]) {
DailyHigh = Double.NaN;
DailyLow = Double.NaN;
} else {
DailyHigh = Highest(high(period = aggregationPeriod)[-displace], length);
DailyLow = Lowest(low(period = aggregationPeriod)[-displace], length);
}
DailyHigh.SetDefaultColor(GetColor(4));
DailyHigh.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
DailyLow.SetDefaultColor(GetColor(4));
DailyLow.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
AddCloud(DailyHigh,DailyLow);
#Def Down;
#Def Upper;
#Def Lower;
#if Low < DailyLow then {Down = 1;} else {
#if High > DailyHigh then {Down = 0;} else {Down = Down;}}
#if Down ==1 then {upper = DailyLow; Lower = DailyHigh;}
#else {Upper = DailyHigh; Lower = DailyLow;}
#AddCloud(Upper,Lower);