Developing a MIN/MAX indicator.
1 次查看(过去 30 天)
显示 更早的评论
Okay, so I'm attempting to make a min/max indicator.It shows the min & max value over certain periods.
I'm using data from http://www.mathworks.com/matlabcentral/fileexchange/29489-algorithmic-trading-with-matlab-2010s as practice.
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!
3 个评论
采纳的回答
Oleg Komarov
2012-9-9
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')
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Financial Toolbox 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!