Why log returns in MatLab are different from log returns in Excel?

조회 수: 7 (최근 30일)
Hello, I'm completely stuck with return calculation in matlab. I have three different lines of code that deliver me the same return numbers in MatLab (final is a matrix of prices):
1. pret=NaN(size(final,1), size(final,2));
pret(:,1)=final(:,1);
for i=2:size(final,1);
pret(i,2:end)=log(final(i,2:end))-log(final(i-1,2:end));
end
2. pret=NaN(size(final,1), size(final,2));
pret(:,1)=final(:,1);
for i=2:size(final,1);
pret(i,2:end)=log(final(i,2:end)./final(i-1,2:end));
end
3.[ret]=price2ret(final);
When I check the results in Excel by putting the formula like: =LOG(B2/B1), I have completely different numbers. Does anyone know why is that?
Addition: even log of the same number is a different number in MatLab and Excel, why?

채택된 답변

Geoff Hayes
Geoff Hayes 2016년 5월 15일
편집: Geoff Hayes 2016년 5월 15일
Ekaterina - the MATLAB log function corresponds to the natural logarithm with base e (~2.718281828459...). The EXCEL log defaults to a base of 10.
In MATLAB, try using the log10 function instead.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by