楼主: gloriafty
2191 9

紧急求助!关于三日回报率平均值如何编程? [推广有奖]

  • 1关注
  • 1粉丝

本科生

26%

还不是VIP/贵宾

-

威望
0
论坛币
25 个
通用积分
1.0600
学术水平
2 点
热心指数
3 点
信用等级
2 点
经验
480 点
帖子
99
精华
0
在线时间
37 小时
注册时间
2008-4-29
最后登录
2019-8-15

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
本人现正做论文,碰到编程问题,急需各位大侠救助!谢过!
问题是:
文件1,变量仅包括:股票推荐日期rptdt,股票代码stkcd;其中,股票推荐日包括周一至周日中任何一天。例如:如果是周日发布的股票推荐,则取下周一的日回报率为其股票推荐日回报率,加上下周二,及上周五,三天的回报率取平均。其他,以此类推。
文件2,是2000年至今的沪深两市所有股票的日回报率。变量包括:日回报率dreturn,交易日期tradt,股票代码stkcd。
想从文件2中挑出所有与文件1股票代码相同,同时是股票推荐日前后三日的交易日,并求出相应三日回报率的平均值,应该如何编程呀?
再谢!
二维码

扫码加我 拉你入群

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

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

关键词:紧急求助 平均值 急求助 回报率 RETURN 股票推荐 股票代码 平均值 交易日 如何

沙发
crackman 发表于 2010-5-8 10:09:51 |只看作者 |坛友微信交流群
说了那么多
你整一个样本数据集出来吧
不然让人家去找数据集恼火
还不知道数据集是不是和你的说的那样

使用道具

藤椅
gloriafty 发表于 2010-5-8 10:23:11 |只看作者 |坛友微信交流群
楼主,您真好!请见附件中样本

sample.rar

1.27 MB

本附件包括:

  • return.xls
  • stockrecommend.xls

半边街哥哥

使用道具

板凳
gloriafty 发表于 2010-5-8 10:35:13 |只看作者 |坛友微信交流群
弱弱的问一声,您是四川老乡吗?
半边街哥哥

使用道具

报纸
sushe1527 发表于 2010-5-8 10:38:43 |只看作者 |坛友微信交流群
额我语文不好。。

使用道具

地板
gloriafty 发表于 2010-5-8 11:08:09 |只看作者 |坛友微信交流群
呵呵,我语文也不好,就是求文件1中所有股票的推荐日前后三日的平均回报率,只不过要在文件2中先找出文件1中的股票及对应的三个日期,日回报率,再求平均。
半边街哥哥

使用道具

7
sushe1527 发表于 2010-5-8 12:27:46 |只看作者 |坛友微信交流群
建议你自编两个数据文件,数据比较简单的那种,然后手动写出你想要得到的第三个数据文件,这样程序是否正确核对也简单,反正我没有看懂,期待高人

使用道具

8
gloriafty 发表于 2010-5-8 19:02:31 |只看作者 |坛友微信交流群
data stockrecommend;
input  stkcd  $ rptdt yymmdd10.;/
*rptdt是证券公司发布股票推荐的日期*/、
format date yymmdd10.;
cards;
600000 2009-07-16/*weekday=4,表示是星期四/
600000 2009-05-17/*weekday=7,表示是星期天/
;
run;
data stockrecommend;
set stockrecommend;
x=weekday(rptdt);
x1=rptdt;
if x=7 then x2=x1+1;
if x=7 then x3=x1-2;
if x=7 then x4=x1+2;
if x=4 then x2=x1+1;
if x=4 then x3=x1-1;
run;
data  return;
input stkcd $ trddt yymmdd10. drturn;
cards;
600000  2009-07-15  0.002479
600000  2009-07-16  0.033388
600000  2009-07-17  -0.000399
600000  2009-05-18  0.001591
600000  2009-05-19  0.032168
600000  2009-05-15  0.012893
;
run;
data return;
set return;
if stkcd='600000' and trddt=2009-07-16 then aar=mean(x1,x2,x3);
if stkcd='600000' and trddt=2009-05-18  then aar=mean(x2,x3,x4);
run;
半边街哥哥

使用道具

9
Isscaliu 发表于 2010-5-9 07:42:38 |只看作者 |坛友微信交流群
论坛里边已经有好多人问过关于股票return的SAS编程了,最近较忙。没有什么时间详细回应,
在这里就弱弱的回应一下。
关键是用log和lag。log是求回报率。lag是一个滞后数。
详细请参考“using SAS in financial research”的第二章。
论坛里边有!
It was the best of times, it was the worst of times.

使用道具

10
gloriafty 发表于 2010-5-9 17:39:42 |只看作者 |坛友微信交流群
谢谢Isscaliu !
半边街哥哥

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

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

GMT+8, 2024-5-14 01:43