主要内容

在金融中使用时间表

此示例演示如何使用时间表从模拟的每日库存数据可视化和计算每周统计数据。

步骤1。加载数据。

此示例的数据位于MAT文件中SimulatedStock.mat,加载以下内容:

  • 与收盘股价相对应的日期,TMW_日期

  • 开盘价,TMW_开放

  • 股票价格的每日高点,TMW_高

  • 股价的日低点,TMW_LOW

  • 关闭股票价格,TMW_CLOSE, TMW_CLOSE_MISSING

  • 每日交易量,TMW_VOLUME

  • 表中的数据,TMW_TB

负载SimulatedStock.matTMW_ *

步骤2。创建时间表。

在时间表中,您可以使用金融时间序列而不是向量时间表,你可以很容易地追踪日期。您可以根据日期操作数据系列,因为时间表对象跟踪时间序列的管理。

使用MATLAB®时间表函数创建一个时间表或者,您可以使用MATLAB转换函数表2可计量把一张桌子转换成一张时刻表。在本例中,是时间表TMW_TT由表构造,仅用于说明目的。在创建时间表对象,则可以使用描述领域时间表对象存储有关时间表的元信息。

从向量输入创建一个时间表TMW=时间表(TMW_打开、TMW_高、TMW_低、TMW_关闭、TMW_缺失、TMW_音量、,...“变化无常”,{“开放式”,“高”,“低”,“关闭”,“体积”},“RowTimes”,TMW_日期);%将表格转换成时间表TMW_TT = table2timetable (TMW_TB,“RowTimes”,TMW_日期);TMW.Properties.Description=“模拟股票数据。”;TMW.属性
ans=TimetableProperties及其属性:Description:'模拟股票数据。'UserData:[]维度名称:{'Time''VariableNames:{'Open''High''Low''Close''Volume'}VariableDescriptions:{}VariableUnits:{}VariableContinuity:[]行时:[1000x1 datetime]开始时间:2012年9月4日采样器:NaN时间步:NaN CustomProperties:未设置自定义属性。使用addprop和rmprop修改CustomProperties。

步骤3。计算基础数据统计,填补缺失数据。

使用MATLAB总结命令功能查看设备的基本统计信息时间表数据通过查看每个变量的摘要,可以识别缺少的值。然后可以使用MATLAB填充物缺失函数通过指定填充方法来填充时间表中缺失的数据。

summaryTMW =总结(TMW);summaryTMW。关
ans =结构体字段:大小:[1000 1]类型:'double'说明:''单位:''连续性:[]最小值:83.4200中间值:116.7500最大值:162.1100努姆化:3
TMW = fillmissing (TMW,“线性”);summaryTMW=摘要(TMW);summaryTMW.Close
ans =结构体字段:大小:[1000 1]类型:'double'说明:''单位:''连续性:[]最小值:83.4200中间值:116.7050最大值:162.1100 NUMMISING:0
summaryTMW。时间
ans =结构体字段:Size: [1000 1] Type: 'datetime' Min: 04- 9 -2012 Median: 31- 8 -2014 Max: 24- 8 -2016 NumMissing: 0 TimeStep: NaN

步骤4。可视化数据。

要可视化时间表数据,可以使用财务图表功能,例如高低movavg.对于本例,移动平均值信息绘制在同一图表上,用于高低提供完整的可视化。要获得2014年的股票表现,请使用MATLABtimerange方法的行时间表. 要可视化技术指标,如移动平均收敛-分歧(MACD),请通过时间表对象进macd用于分析的函数。

指数= timerange (datetime (“2014年1月1日”,“区域设置”,“恩,我们”)、日期时间(“2014年12月31日”,“区域设置”,“恩,我们”),“关闭”);高低(TMW(指数:);保持ema15=movavg(TMW(:,“关闭”),“指数型”,15); ema25=movavg(TMW(:,“关闭”),“指数型”25);ema15 = ema15(指数);ema25 = ema25(指数);情节(ema15.Time ema15.Close,“r”);绘图(ema25.Time,ema25.Close,‘g’);持有传奇(“价格”,“15天EMA”,“二十五天的教育津贴”)标题(“TMW的高低图”)

图中包含一个轴对象。标题为TMW高低图的轴对象包含3个line类型的对象。这些对象代表价格、15日均线、25日均线。

[macdLine, signalLine] = macd(TMW(:,));“关闭”)); 绘图(macdLine.Time,macdLine.Close);持有情节(signalLine.Time signalLine.Close);持有标题(“TMW MACD”)传奇(“MACD线”,信号线的)

图中包含一个轴对象。标题为MACD的TMW轴对象包含2个line类型的对象。这些对象表示MACD线、信号线。

步骤5.创建每周收益率和波动率系列。

要从每日股票价格计算每周回报,必须从每日到每周对数据频率重新采样。使用时间表时,请使用MATLAB函数调整时间使同步用各种汇总方法计算每周统计数据。若要调整时间表数据以时间矢量为基础,请使用调整时间和使用使同步有多个时间表。

weeklyOpen =调整时间(TMW (:,“开放式”),“周”,“firstvalue”);周高=重定时(TMW(:,“高”),“周”,“马克斯”);weeklyLow =调整时间(TMW (:,“低”),“周”,“敏”);周循环=重定时(TMW(:,“关闭”),“周”,“lastvalue”);weeklyTMW=[weeklyOpen,weeklyHigh,weeklyLow,weeklyClose];weeklyTMW=同步(weeklyTMW,TMW:,“体积”),“周”,“和”);头(weeklyTMW)
ans =8×5时间表时间开高开低收量___________ ______ ______ ______ ______ __________ 02- 9- 2012 100 102.38 98.45 99.51 2.7277 e+07 09- 9- 2012 99.72 101.55 96.52 97.52 2.8518e+07 16- 9- 2012 97.35 97.52 92.6 93.73 2.9151e+07 23- 9- 2012 93.55 98.03 92.25 97.35 3.179e+07 30- 9- 2012 97.3 103.15 96.68 99.66 3.3761e+07 07- 10 -2012 99.76 106.61 98.7104.23 3.1299e+07 14-Oct-2012 104.54 109.75 100.55 103.77 3.1534e+07 21-Oct-2012 103.84 104.32 96.95 97.41 3.1706e+07

对a中的条目进行计算时间表,使用MATLABrowfun函数将函数应用于每周频率时间表的每一行。

returnFunc = @(open,high,low,close,volume) log(close) - log(open); / /打开weeklyReturn = rowfun (returnFunc weeklyTMW,“OutputVariableNames”,{“返回”});weeklyStd=重定时(TMW(:,“关闭”),“周”, @std);weeklyStd.Properties.VariableNames {“关闭”} =“波动性”;weeklyTMW = [weeklyReturn、weeklyStd weeklyTMW]
weeklyTMW =208×7时间表时间回报波动率开高开低收量___________ ___________ __________ ______ ______ ______ ______ __________ 02- 9- 2012 0.59386 100 102.38 98.45 99.51 2.7279e+07 09- 9- 2012 -0.022309 0.63563 99.72 101.55 96.52 97.52 2.8518e+07 16- 9- 2012 -0.037894 0.93927 97.35 97.52 92.6 93.73 2.9151e+07 23- 9- 2012 0.039817 2.015693.55 98.03 92.25 97.35 3.1706e+07 - 10 -2012 0.023965 1.1014 97.3 103.15 96.68 99.66 3.3761e+07 07- 10 -2012 0.043833 1.3114 99.76 106.61 98.7 104.23 3.1299e+07 14- 10 -2012 -0.0073929 1.8097 104.54 109.75 100.55 103.77 3.1534e+07 21- 10 -2012 0.063922 2.1603 103.84 104.32 96.95 97.41 3.1706e+07 28- 10 -2012 -0.028309 0.9815 97.45 99.1 92.58 94.731.9866e+07 04- 11- 2012 - 0.077244 2.4854 94.39 103.98 93.84 101.97 3.0624e+07 18- 11- 2012 0.022823 0.55896 102.23 105.27 101.24 104.59 2.5803e+07 25- 11- 2012 -0.012789 1.337 104.66 106.02 100.85 103.33 3.1402e+07 02- 12 -2012 -0.043801 0.2783 103.37 103.37 97.69 98.94 3.2136e+0709- 12 -2012 0.063475 1.9826 99.02 99.09 91.34 92.93 3.4447e+07

另见

||||||||||||

相关的话题