Main Content

ret2tick

将收益序列转换为价格序列

说明

示例

[TickSeries,TickTimes] = ret2tick(Data) 根据 NASSET 项资产的初始价格和 NUMOBS 个收益观测值计算价格。

示例

[TickSeries,TickTimes] = ret2tick(___,Name,Value) 添加了可选的名称-值对组参量。

示例

全部折叠

根据三个增量收益观测值计算一年里两支股票的价格涨幅。

RetSeries = [0.10 0.12
             0.05 0.04
            -0.05 0.05];

RetIntervals = [182 
                 91
                 92];

StartTime = datetime('18-Dec-2000','Locale','en_US');

[TickSeries,TickTimes] = ret2tick(RetSeries,'ReturnIntervals',RetIntervals,... 
    'StartTime',StartTime)
TickSeries = 4×2

    1.0000    1.0000
    1.1000    1.1200
    1.1550    1.1648
    1.0973    1.2230

TickTimes = 4x1 datetime
   18-Dec-2000
   18-Jun-2001
   17-Sep-2001
   18-Dec-2001

给定在第一、第二、第三和第四季度观察到的两支股票的周期性收益,使用 timetable 输入将价格序列转换为收益序列。

RetSeries = [0.10 0.12
             0.05 0.04
            -0.05 0.05];

RetTimes = datetime({'6/18/2001','9/17/2001','12/18/2001'},'InputFormat','MM/dd/uuuu','Locale','en_US');
RetSeries = array2timetable(RetSeries,'RowTimes',RetTimes);
StartTime = datetime('12/18/2000','InputFormat','MM/dd/uuuu','Locale','en_US');


[TickSeries,TickTimes] = ret2tick(RetSeries,'StartTime',StartTime)
TickSeries=4×2 timetable
       Time        RetSeries1    RetSeries2
    ___________    __________    __________

    18-Dec-2000           1             1  
    18-Jun-2001         1.1          1.12  
    17-Sep-2001       1.155        1.1648  
    18-Dec-2001      1.0973         1.223  

TickTimes = 4x1 datetime
   18-Dec-2000
   18-Jun-2001
   17-Sep-2001
   18-Dec-2001

输入参数

全部折叠

资产收益数据,指定为 NUMOBS×NASSETS 矩阵、tabletimetable。收益未按连续价格观测值之间的时间增量进行归一化。

数据类型: double | table | timetable

名称-值参数

Name1=Value1,...,NameN=ValueN 形式指定可选参量对组,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须显示在其他参量的后面,但参量对的顺序不重要。

在 R2021a 之前,请使用逗号分隔每个名称和值,并将 Name 用引号引起来。

示例: [TickSeries,TickTimes] = ret2tick(RetSeries,'StartTime',StartTime)

每项资产的初始价格,指定为逗号分隔的对组,其中包括 'StartPrice' 和一个表示每项资产初始价格的 NASSETS×1 向量,或者应用于所有资产的单个标量初始价格。

数据类型: double

价格之间的收益间隔,指定为逗号分隔的对组,其中包括 'ReturnIntervals' 和一个应用于所有收益的标量收益间隔,或者一个连续收益之间长度为 NUMOBS 的向量收益间隔。ReturnIntervals 定义为:

ReturnIntervals(t) = TickTimes(t) - TickTimes(t-1).

注意

如果 Data 是时间表类型,则忽略 ReturnIntervals

数据类型: double

应用于所有资产价格序列的第一个观测值的开始时间,指定为以逗号分隔的对组,其中包括 'StartTime' 和一个标量字符串、字符向量、双精度值或日期时间。

注意

如果 ReturnIntervals 是持续时间或日历持续时间值,则StartTime 的默认值是 datetime('today')

如果 Data 是时间表,并且未指定 StartTime,则不报告第一个周期内产生的资产价格。

数据类型: double | string | char | datetime

将资产收益转换为价格的方法,指定为逗号分隔的对组,其中包含 'Method' 和一个指示将资产价格转换为收益的方法的字符串或字符向量。

如果方法是 'Simple',则使用简单周期性收益:

TTickSeries(t) = TickSeries(t-1)*(1 + ReturnSeries(t)).

如果方法是 'Continuous',则使用连续收益:

TickSeries(t) = TickSeries(t-1)*exp(ReturnSeries(t)).

数据类型: char | string

输出参量

全部折叠

资产价格的时间序列数组,以 NUMBOBS+1×NASSETS 资产价格时间序列形式返回,该时间序列与输入 Data 具有相同类型(矩阵、表或时间表)。第一行包含最早的价格,最后一行包含最新的价格。一行中所有列的价格假定为同一时间的价格,并且每列都是单个资产的价格序列。

TickSeries 中价格相关联的观测时间,以长度为 NUMBOBS+1 的列向量形式返回,该列向量是与 TickSeries 中的价格相关联的单调递增观测时间。初始时间为 StartTime。对于矩阵和表类型的 Data,顺序观测值之间的间隔为 ReturnIntervals 中指定的增量;对于时间表类型的 Data,顺序观测值之间的间隔从 Data 中的时间和日期来推断得出。

扩展功能

版本历史记录

在 R2006a 之前推出

全部展开