MATLAB: Developing a MIN/MAX indicator.

algorithm tradingfinanceindicatorMATLABtrading

Okay, so I'm attempting to make a min/max indicator.It shows the min & max value over certain periods.
i.e. (Obviously this example is offset slightly. Ignore that.)
So far this is what I've come up with(focusing just on the max):
importfile('BundDaily.xls')
period = 14;
maxp = floor(length(High) / period);
startscale = 1;
endscale = 14;
fp = max(High(startscale:endscale,:));
for i=startscale:endscale:maxp
B(i) = fp;
startscale = (startscale + period);
endscale = (endscale + period);
plot(B, 'r') , hold on
end
This is the result:
Methinks the problem is either:
  • How I'm using the max function.
  • Problem with the for loop.
  • Perhaps I need to somehow use a movavg?
  • All of the above!? haha
I'm new to Matlab(clearly) so any help would be much appreciated. Thank-you in advance!

Best Answer

Plotting on Close with window size 14.
importfile('BundDaily.xls')
period = 14;
n = numel(Close);
% Run moving max
mClose = NaN(n,1);
for ii = 1:length(Close)-period
mClose(period+ii) = max(Close(ii:ii+period-1));
end
% Zoom the graph to see the candles
candle(High,Low,Close,Open)
hold on
plot(mClose,'r')