【发布时间】:2014-03-20 21:39:41
【问题描述】:
我正在使用 Stata,个人投资组合中持有的股票有 6 年的每日回报。我想将每日收益汇总为每月投资组合收益。在某些情况下,个人可能在投资组合中持有不止一只股票。我正在努力编写代码来做到这一点。
对于视觉,我的数据如下所示:
我希望结果如下所示:
个人 2 在 1996 年 12 月的投资组合回报计算为:0.3 * 0.0031 + 0.7 * 0.0076 = 0.00625。
我试过collapse这样的命令
collapse Return, by (ID Year Month)
但这并不能提供我在 Excel 中计算出的相同回报。
我能够在使用
的所有日子里获得加权投资组合回报bysort ID year month: egen wt_return = stock_weight * monthly_return
但这给了我每天的回报。然后我的麻烦是将它们汇总为相应月份的一个回报。
至于细节,我想将每月投资组合收益计算为1 + the weighted daily returns的乘积。作为最后的手段,当月的平均回报率可能会起作用。
【问题讨论】:
-
请向我们展示您的尝试。见stackoverflow.com/help/asking
-
糟糕的问题。没有代码;提示时没有改善;假设这里的 Stata 用户都知道这个问题中使用的财务数据的规则。例如,每月回报只是每日回报的平均值,还是其他?看
egen;这是一个很好的主力。 -
你还是不说你是怎么计算的
Monthly Return。 -
您的
egen代码段不可能运行,因为没有egen函数调用。也许egen是generate的拼写错误,但请注意,在这种情况下,by框架对结果没有影响。