cumprod 11 period return,and require nan number in no more than 2.

1 Ansicht (letzte 30 Tage)
HAOLUN TIAN
HAOLUN TIAN am 3 Jul. 2019
Kommentiert: jeffrey francis am 30 Jul. 2019
Hello,
I am calculate the momentun return for 16383 stocks. My data is 611*16383. I have those stock 611 month return. some stocks missing the monthly return.
I try to calculat those stocks 12 month momentum return.
for i = 12;611
idx = returndata(i-11:i-1,:);
A= cumprod(1+idx)
momreturn(i-11,:)=A(end,:)
end
it requied a minimum of nine available monthly returns durning the 11-month measurement. otherwise, the momreturn data are considered missing.
how should i make sure prior 11 month return at least 9 avaliable data?
for example: when calculat a stock t=200 momentum return,if the returndata of this stock durning t=189 to t=199 only have 5 available data, the momentum of this stock in t=200 should be nan.
thanks for your time XD

Antworten (1)

Ganesh Regoti
Ganesh Regoti am 30 Jul. 2019
After the calculation of cumulative product use isnan function to check count of the valid data.
count = sum (isnan(A(end,: )));
if (count >2)
%data must be missing;
else
momreturn(i-11,: ) = A(end,: );
end
Hope this helps!

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by