필터 지우기
필터 지우기

Data formatting - Volatility and return columns.

조회 수: 2 (최근 30일)
Andrew Czeizler
Andrew Czeizler 2019년 3월 20일
댓글: Andrew Czeizler 2019년 3월 21일
Hi All,
I need some help building a datase of financial data to use in experiments.
I need the daily and return and daily volatility of columns of symbols i download.
First attempt is below. The loop works but I'm not sure how proceed with creating columns of daily
return and volatility.
Many thanks,
Best,
Andrew
symbols = {'^GSPC', 'DAX', '^N225', 'GLD', 'QQQ'};
for i = 1:length(symbols)
symbols{i} = table2timetable(F_Alphavantage('time_series_daily_adjusted', 'symbol',...
symbols{i}, 'outputsize', 'full'));
end
TT= synchronize(symbols{1}, symbols{2}, symbols{3}, symbols{4}, symbols{5})
TT = rmmissing(TT)
returnFunc = @(open,high,low,close,volume) (close) - (open);
weeklyReturn = rowfun(returnFunc,symbols{1},'OutputVariableNames',{'Return'});
weeklyStd = retime(symbols{1}(:,'Close'));
weeklyStd.Properties.VariableNames{'Close'} = 'Volatility';
  댓글 수: 1
Andrew Czeizler
Andrew Czeizler 2019년 3월 21일
I have an update on my attempt to add volatility and return column. Still dont know how to get seperate tables for each symbol with the return and volatility column.
Any help would be very much appreciated.
Best,
Andrew
symbols = {'^GSPC', 'DAX', '^N225', 'GLD', 'QQQ'};
for i = 1:length(symbols)
symbols{i} = table2timetable(F_Alphavantage('time_series_daily_adjusted', 'symbol',...
symbols{i}, 'outputsize', 'full'));
end
returnFunc = @(open,high,low,close,volume) log(close) - log(open);
for i=1:length(symbols)
weeklyOpen{i} = retime(symbols{i}(:,'Open'),'daily','firstvalue');
weeklyHigh{i} = retime(symbols{i}(:,'High'),'daily','max');
weeklyLow{i} = retime(symbols{i}(:,'Low'),'daily','min');
weeklyClose{i} = retime(symbols{i}(:,'Close'),'daily','lastvalue');
weeklyTMW{i} = [weeklyOpen,weeklyHigh,weeklyLow,weeklyClose];
weeklyTMW{i} = synchronize(weeklyTMW,symbols{i}(:,'Volume'),'daily','sum');
weeklyReturn{i} = rowfun(returnFunc,weeklyTMW,'OutputVariableNames',{'Return'});
weeklyStd{i} = retime(symbols{i}(:,'Close'),'daily',@std);
weeklyStd.Properties.VariableNames{'Close'} = 'Volatility';
weeklyTMW{i} = [weeklyReturn,weeklyStd,weeklyTMW];
end

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by