全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5984 3
2012-03-04
悬赏 20 个论坛币 已解决

stock_code

stock_name

dt_jzr

cagr

rtn

000001

深发展A

19911231

10

20

000001

深发展A

19921231

15

-10

000001

深发展A

19931231

20

20

000001

深发展A

19941231

25

-10

000001

深发展A

19951231

30

-20

000001

深发展A

19961231

35

20

000001

深发展A

19971231

40

20

000001

深发展A

19981231

45

20

000001

深发展A

19991231

50

-10

000001

深发展A

20001231

55

20

000001

深发展A

20011231

60

10

000001

深发展A

20021231

65

20

000001

深发展A

20031231

70

20

000001

深发展A

20041231

75

20



筛选复合下列条件的股票

条件1、当年的CAGR>30
条件2、前4年(含当年)的RTN中有2年的不得为负

根据上述条件,筛选出的数据集应该为

000001

深发展A

19971231

40

20

000001

深发展A

19981231

45

20

000001

深发展A

19991231

50

-10

000001

深发展A

20001231

55

20

000001

深发展A

20011231

60

10

000001

深发展A

20021231

65

20

000001

深发展A

20031231

70

20

000001

深发展A

20041231

75

20

最佳答案

小麦芽的简单 查看完整内容

data a; input dt_jzr cagr rtn; cards; 19911231 10 20 19921231 15 -10 19931231 20 20 19941231 25 -10 19951231 30 -20 19961231 35 20 19971231 40 20 19981231 45 20 19991231 50 -10 20001231 55 20 20011231 60 10 20021231 65 20 20031231 70 20 20041231 75 20 ; run; data a; set a; stocl_code="000001"; stock_name="深发展A"; output; stocl_code="000002"; stock_name="BBBBBB"; output; ...
二维码

扫码加我 拉你入群

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

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

全部回复
2012-3-4 19:09:20
data a;
input dt_jzr cagr rtn;
cards;
19911231 10 20
19921231 15 -10
19931231 20 20
19941231 25 -10
19951231 30 -20
19961231 35 20
19971231 40 20
19981231 45 20
19991231 50 -10
20001231 55 20
20011231 60 10
20021231 65 20
20031231 70 20
20041231 75 20
;
run;
data a;
set a;
stocl_code="000001";
stock_name="深发展A";
output;
stocl_code="000002";
stock_name="BBBBBB";
output;
run;

proc sort data=a;by stocl_code dt_jzr;run;

data b;
set a;
by stocl_code dt_jzr;
if first.stocl_code then seq=1;
else seq+1;
if rtn>0 then grp=1;else grp=0;
n1=lag(grp);
n2=lag2(grp);
n3=lag3(grp);
total= grp+n1+n2+n3;
if seq<=3 then total=.;
if cagr>30 and total>=2 then output;
run;
供参考
二维码

扫码加我 拉你入群

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

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

2012-5-24 17:46:40
data a;
input dt_jzr cagr rtn;
cards;
19911231 10 20
19921231 15 -10
19931231 20 20
19941231 25 -10
19951231 30 -20
19961231 35 20
19971231 40 20
19981231 45 20
19991231 50 -10
20001231 55 20
20011231 60 10
20021231 65 20
20031231 70 20
20041231 75 20
;
run;
data a;
set a;
stocl_code="000001";
stock_name="深发展A";
output;
stocl_code="000002";
stock_name="BBBBBB";
output;
run;

proc sort data=a;by stocl_code dt_jzr;run;


本文来自: 人大经济论坛 SAS专版 版,详细出处参考: https://bbs.pinggu.org/forum.php? ... 1&from^^uid=32303
二维码

扫码加我 拉你入群

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

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

2012-5-24 17:47:24
data a;
input dt_jzr cagr rtn;
cards;
19911231 10 20
19921231 15 -10
19931231 20 20
19941231 25 -10
19951231 30 -20
19961231 35 20
19971231 40 20
19981231 45 20
19991231 50 -10
20001231 55 20
20011231 60 10
20021231 65 20
20031231 70 20
20041231 75 20
;
run;
data a1;
set a;
stocl_code="000001";
stock_name="shenzhengfazhanA";
output;
/* stocl_code="000002";*/
/* stock_name="BBBBBB";*/
/* output;*/
run;

proc sort data=a1 out=a2;
by stocl_code dt_jzr;
run;

data b1;
set a2;
if first.stocl_code then n=1;
else n+1;
if n ne 0 then do;
if cagr>30 and (sum(rtn>=0,lag(rtn)>=0,lag2(rtn)>=0,lag3(rtn)>=0)>=2) then output;
end;
if last.stocl_code then n=0;
run;
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群