我需要“无差异”或“整合”时间序列变量。在当前状态下,它是双重差分的(货币市场,现金回报代理变量是 I(2) 以实现平稳性)。我与其他变量一起模拟了该变量,以从拟合的 copula 生成 100,000 个观察值,因此我没有初始参考值来启动 R 函数中的“无差异”diffinv()函数。
这是一个简化的问题来说明(使用 R):
创建任意原始系列:
undifferenced = c(0.5, -0.1, 0.2, 0.08, -0.02)
区分系列:
differenced = diff(undifferenced)
Output: -0.60 0.30 -0.12 -0.10
尝试“不区分”系列:
diffinv(differenced)
Output: 0.00 -0.60 -0.30 -0.42 -0.52,
这不是原始系列
或者,如果您想删除以0.00进行清理:
diffinv(differenced)[-1]
Output: -0.60 -0.30 -0.42 -0.52,
无论如何都不是原始系列
如果您“以某种方式”先验地知道原始系列的初始值,则输出是正确的:
diffinv(fff, xi = 0.5)
Output: 0.50 -0.10 0.20 0.08 -0.02,
这是原始系列。
在我的模拟中,我无法指定xi.
在这一点上,如果有人有任何正确“无差异”的经验或可以帮助找出问题,我将不胜感激。
顺便说一句,对于非 R 用户,我可以导出数据以在 Excel 中使用。
提前致谢。
@Andy @Glen_b 感谢您的帮助,谢谢。mean我以原始系列的 是一个足够好的代理来初始化函数的借口进行评估diffinv()(在没有实际原始值要初始化的模拟上下文中)。然后假设模拟的差异数据与原始差异数据具有相同的质量。
虽然在初始化时出现了一个问题xi = mean(undifferenced)- 这个标量值适用于较小的一组观察值(~240 obs),但标量不允许diffinv()函数在模拟的 100,000 个观察值系列上运行。R的帮助文件描述xi为“ numeric vector, matrix, or time series containing the initial values for the integrals”。有什么想法或参考吗?没有关于xi向量长度的指导,我认为只需一个标量就足以启动无差异过程。