楼主: 黃河泉
11870 12

[程序分享] 怎样用股票月收益率计算年收益率,是从每年的五月份到次年四月份 [推广有奖]

大师

53%

还不是VIP/贵宾

-

威望
3
论坛币
34049 个
通用积分
56695.5476
学术水平
3551 点
热心指数
3712 点
信用等级
2932 点
经验
308898 点
帖子
14545
精华
12
在线时间
7426 小时
注册时间
2016-7-9
最后登录
2025-12-9

楼主
黃河泉 在职认证  发表于 2017-6-12 17:25:22 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
可試試
  1. // Noncalendar years: http://www.stata-journal.com/sjpdf.html?articlenum=st0394
  2. * Example generated by -dataex-. To install: ssc install dataex
  3. clear
  4. input int id str10 Date double RET
  5. 14593 "1998/01/30"                 .395
  6. 14593 "1998/02/27"                  .29
  7. 14593 "1998/03/31"                 .164
  8. 14593 "1998/04/30"                -.005
  9. 14593 "1998/05/29"                -.027
  10. 14593 "1998/06/30"                 .077
  11. 14593 "1998/07/31"   .20700000000000002
  12. 14593 "1998/08/31"                -.099
  13. 14593 "1998/09/30"                 .222
  14. 14593 "1998/10/30" -.026000000000000002
  15. 14593 "1998/11/30"                 -.14
  16. 14593 "1998/12/31"   .28200000000000003
  17. 14593 "1999/01/29"                 .006
  18. 14593 "1999/02/26"                -.155
  19. 14593 "1999/03/31"                 .032
  20. 14593 "1999/04/30"                  .28
  21. 14593 "1999/05/28"                -.042
  22. 14593 "1999/06/30"  .051000000000000004
  23. 14593 "1999/07/30"                 .202
  24. 14593 "1999/08/31"   .17200000000000001
  25. 14593 "1999/09/30"                 -.03
  26. 14593 "1999/10/29"                 .266
  27. 14593 "1999/11/30"                 .222
  28. 14593 "1999/12/31"                  .05
  29. 14593 "2000/01/31"  .009000000000000001
  30. 14593 "2000/02/29"                 .105
  31. 14593 "2000/03/31"                 .185
  32. 14593 "2000/04/28"  -.08700000000000001
  33. 14593 "2000/05/31"                -.323
  34. 14593 "2000/06/30"                 .247
  35. 14593 "2000/07/31"                 -.03
  36. 14593 "2000/08/31"                 .199
  37. 14593 "2000/09/29"                -.577
  38. 14593 "2000/10/31"                 -.24
  39. 14593 "2000/11/30"                -.157
  40. 14593 "2000/12/29"                -.098
  41. end

  42. * convert to monthly date
  43. gen mdate = mofd(daily(Date,"YMD"))
  44. format %tm mdate
  45. isid id mdate, sort

  46. // from May to April
  47. gen FY = year(dofm(mofd(daily(Date, "YMD")) - 4))

  48. * no product function in Stata, sum logs instead
  49. gen double lret = log(1+RET)
  50. rangestat (sum) lret (count) lret, interval(mdate -11 0) by(id FY)
  51. gen wanted = exp(lret_sum) - 1 if lret_count == 12
  52. list Date FY wanted, sepby(FY)
复制代码


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:年收益率 收益率 generated generate Interval 收益率

本帖被以下文库推荐

沙发
小米模式之再高 学生认证  发表于 2017-6-12 19:50:18
怎样用股票月收益率计算年收益率,是从每年的五月份到次年四月份

藤椅
cyllwt 学生认证  发表于 2017-6-12 20:07:38
能不能用循环来做?

板凳
夏目贵志 发表于 2017-6-13 07:18:49
cyllwt 发表于 2017-6-12 20:07
能不能用循环来做?
并没有什么重复步骤,为什么要需要循环?

报纸
zabbyy 发表于 2017-6-13 08:14:57
加权平均  好吗

地板
阿璇2016 发表于 2017-6-14 17:16:57
写的我好多语句看不懂,赶紧去翻书了。。谢谢大神们

7
阿璇2016 发表于 2017-6-14 17:21:43
mofd(ed) the em monthly date (months since 1960m1) containing date ed

这个mofd函数是什么意思,看不懂

8
黃河泉 在职认证  发表于 2017-6-14 17:25:47
阿璇2016 发表于 2017-6-14 17:21
mofd(ed) the em monthly date (months since 1960m1) containing date ed

这个mofd函数是什么意思,看不 ...
请 help datetime 并参考
  1.             | To:
  2.        From:       |     weekly       monthly      quarterly
  3.        ------------+------------------------------------------
  4.        date        |     tw=wofd(td)  tm=mofd(td)  tq=qofd(td)
  5.        -------------------------------------------------------
复制代码

9
mbygzh 发表于 2017-7-18 15:28:00
mark一个 以后有可能会用到~

10
abcabc123 发表于 2018-3-23 13:34:16
不错,收起来!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-6 21:44