How to get certain data

I have data of stock daily returns but I just use data of 21 days before the last trading day of a month. I already have a logical matrix of whether a date is a last trading date of a month but I dont know how to create a matrix of returns of only 21 days before it. Please help me.

 Accepted Answer

Let's say you have a logical vector, logicalLastDaysVector, of when a day is the last day of the month. Then just extract going back to 1 more than the last day of the prior month:
lastDayIndexes = find(logicalLastDaysVector);
for k = 2 : length(lastDayIndexes)
% Get the index of the first day of the month.
firstDay = lastDayIndexes(k-1) + 1;
% Get the index of the last day of the month
lastDay = lastDayIndexes(k);
% Extract all the days from first to last, inclusive.
thisMonth = stockReturns(firstDay:lastDay);
% Now do something with this data.....
end

More Answers (0)

Categories

Find more on Financial Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!