请选择 进入手机版 | 继续访问电脑版
楼主: 黃河泉
7388 19

[程序分享] 股价同步性/资讯性之程序 [推广有奖]

大师

52%

还不是VIP/贵宾

-

威望
3
论坛币
34526 个
通用积分
55778.0248
学术水平
3537 点
热心指数
3697 点
信用等级
2920 点
经验
308725 点
帖子
14493
精华
12
在线时间
7390 小时
注册时间
2016-7-9
最后登录
2024-3-29

黃河泉 在职认证  发表于 2019-2-14 07:57:57 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
利用 CSMAR 1999-2018 之日资料,有三种产业分类 (ind1,ind2,ind3) 以计算产业加权报酬率,然后针对每一种产业报酬率,每公司、每年跑一条 (约 35,000) 回归。要先 ssc install asreg。
  1. set rmsg on

  2. cd "E:\Indep-R2"

  3. cap log close
  4. log using "log\r2d_ind.log", replace

  5. use "dta\日個股回報率文件.dta", clear
  6. merge m:1 Markettype ymd using "dta\日市場回報率文件.dta", nogen
  7. merge m:1 id using "dta\ind.dta", nogen

  8. /*
  9. gen ri_Dsmvosd = ri*Dsmvosd
  10. rangestat (sum) Dsmvosd ri_Dsmvosd, interval(ymd 0 0) by(ind1) excludeself
  11. gen rind1 = ri_Dsmvosd_sum/Dsmvosd_sum
  12. */

  13. foreach i of varlist ind1 ind2 ind3 {
  14.   bys ymd `i': egen tem1_`i' = total(Dsmvosd)
  15.   gen tem2_`i' = tem1_`i'-Dsmvosd
  16.   bys ymd `i': egen tem3_`i' = total(ri*Dsmvosd)
  17.   gen tem4_`i' = tem3_`i'-ri*Dsmvosd
  18.   gen r`i' = tem4_`i'/tem2_`i'
  19. }

  20. sort id ymd

  21. bys id (year): gen t = _n
  22. xtset id t

  23. ren rm_e rm

  24. foreach v of varlist rm rind1 rind2 rind3 {
  25.   gen L1`v' = L1.`v'
  26. }
  27. /*
  28. gen L1rm = L1.rm
  29. gen L2rm = L2.rm
  30. gen F1rm = F1.rm
  31. gen F2rm = F2.rm
  32. */

  33. // asreg
  34. foreach v of varlist rind1 rind2 rind3 {  
  35.   bys id year: asreg ri rm L1rm `v' L1`v' , fit
  36.   ren _R2 r2d_`v'
  37.   drop _*
  38. }  

  39. ren (r2d_rind1 r2d_rind2 r2d_rind3) (r2d1 r2d2 r2d3)
  40. collapse (mean) r2d1 r2d2 r2d3, by(id year)

  41. save "dta\r2d_ind.dta", replace

  42. log close
复制代码
"每一产业"约需 22 秒。但用 statsby 约需 7.5 个小时,就不要说用 loop (foreach/forvalues) 了。
二维码

扫码加我 拉你入群

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

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

关键词:同步性 forvalues Collapse forvalue Interval

已有 2 人评分学术水平 热心指数 信用等级 收起 理由
金融柯达 + 1 + 1 + 1 精彩帖子
Sunknownay + 3 + 3 + 3 精彩帖子

总评分: 学术水平 + 4  热心指数 + 4  信用等级 + 4   查看全部评分

本帖被以下文库推荐

jxapp_54910 发表于 2019-2-14 10:16:00 |显示全部楼层 |坛友微信交流群
https://bbs.pinggu.org/forum.php?mod=viewthread&tid=6923962&pid=56870608&page=1&extra=#pid56870608我这个帖子贴出了实际例子和数据,能帮我看看吗?谢谢

使用道具

黄SPIRIT 发表于 2019-2-15 23:03:41 |显示全部楼层 |坛友微信交流群
感谢黄老师!还有一个问题,黄老师这条命令ren rm_e rm,rm用的是Cdretwdos [考虑现金红利再投资的综合日市场回报率(流通市值加权平均法)] 吗?

使用道具

黄SPIRIT 发表于 2019-2-15 23:09:03 |显示全部楼层 |坛友微信交流群
补充一下,ri  Dretwd [考虑现金红利再投资的日个股回报率]  Dsmvosd [日个股流通市值]  ,黄老师,您看我的指标对了吗

使用道具

黃河泉 在职认证  发表于 2019-2-16 08:12:49 |显示全部楼层 |坛友微信交流群
黄SPIRIT 发表于 2019-2-15 23:09
补充一下,ri  Dretwd [考虑现金红利再投资的日个股回报率]  Dsmvosd [日个股流通市值]  ,黄老师,您看我的 ...
老实说,对不对我不敢说 (到底应不应该考虑现金红利再投资),我是用 Dretnd,但我相信结果应该不会差太多。

使用道具

黃河泉 在职认证  发表于 2019-2-16 08:13:45 |显示全部楼层 |坛友微信交流群
黄SPIRIT 发表于 2019-2-15 23:03
感谢黄老师!还有一个问题,黄老师这条命令ren rm_e rm,rm用的是Cdretwdos [考虑现金红利再投资的综合日市 ...
我是用 Dre*****os。D r e t m d o s。

使用道具

黄SPIRIT 发表于 2019-2-16 15:03:06 |显示全部楼层 |坛友微信交流群

               st_data():  3900  unable to allocate real <tmp>[3282835,6]
               ASREGNW():     -  function returned error
                 <istmt>:     -  function returned error

[M-2]   error . . . . . . . . . . . . . . . . . . . . . . . . Return code 3900
        out of memory
        Mata is out of memory; the operating system refused to supply
        what Mata requested.  There is no Mata or Stata setting that
        affects this, and so nothing in Mata or Stata to reset in order
        to get more memory.  You must take up the problem with your
        operating system.

是不是我的运行空间太小了。昨晚我试着更改内存,但是系统提示说自动分配。。。。

使用道具

黄SPIRIT 发表于 2019-2-16 16:04:32 |显示全部楼层 |坛友微信交流群
9年的数据就跑不动了

使用道具

黃河泉 在职认证  发表于 2019-2-16 16:37:59 |显示全部楼层 |坛友微信交流群
这我就没办法了!

使用道具

黄SPIRIT 发表于 2019-2-16 21:07:32 |显示全部楼层 |坛友微信交流群
黄老师,您的另一个股价崩盘的rm是直接用GTA数据数据,还是想股价同步性计算加权平均流通市值一样的方法?

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 14:33