楼主: 天斯吾下
3942 2

[编程问题求助] 如何生成按照市值加权的平均股价? [推广有奖]

  • 7关注
  • 4粉丝

已卖:11份资源

副教授

53%

还不是VIP/贵宾

-

威望
0
论坛币
1176 个
通用积分
87.5911
学术水平
8 点
热心指数
14 点
信用等级
7 点
经验
92 点
帖子
443
精华
0
在线时间
713 小时
注册时间
2013-3-6
最后登录
2021-7-19

楼主
天斯吾下 学生认证  发表于 2015-11-7 11:56:22 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
附件里面有两家中国上市公司的历史收盘价和市值。week是时间变量,我想按照这两家公司的市值进行加权,生成一个新变量,即市值加权的平均股价。week要从1开始,虽然这两家公司的历史价格都是从300多周才开始,之前的缺漏都算作零。我自己也想了一部分代码,但是还是不知道怎么实现这个功能。
  1. egen company=group(ISINnumber)
  2. gen averagePrice=.
  3. sum company
  4. local c=r(max)
  5. gen PM=Aprice*Amarketvalue


  6. forvalues i=1/1303 {

  7. forvalues n=1/`c'{



  8. local PMprice`n'`i'=PM if company==`n' & week==`i'
  9. }
  10. }
复制代码




二维码

扫码加我 拉你入群

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

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

关键词:forvalues forvalue company average compan 如何

example.zip
下载链接: https://bbs.pinggu.org/a-1910604.html

19.86 KB

本附件包括:

  • example.dta

沙发
夏目贵志 发表于 2015-11-8 00:41:29
也许可以参考一下summarize的帮助文件help summarize
summarize是可以使用weight的。help weight说了如何设置weight。
最理想的情况下,把这个和by结合起来用,不用自己写循环就能算出每个公司的值。
只是一个思路。希望有帮助。

藤椅
天斯吾下 学生认证  发表于 2015-11-14 19:20:39
夏目贵志 发表于 2015-11-8 00:41
也许可以参考一下summarize的帮助文件help summarize
summarize是可以使用weight的。help weight说了如何设 ...
https://bbs.pinggu.org/thread-2223357-1-1.html 这个方法可以解决。 sum 用weight 要先对weight做处理,处理成所有weight加起来等于1

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

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