|
楼主

楼主 |
发表于 2010-12-29 12:51:08
|
只看该作者
求助!!!! 作业题
1. 不用SAS函数,用宏%a(n,p)计算二项分布的概率分布和累计概率(k=1,2……,n)。 。
2. 找出股价连续多日相等的情况待分析。
股价每天的上下波动,一般来说会导致第二天的收盘价与第一天不相同,但也有仍有可能经过了涨跌之后,第二天的收盘价仍与第一天相等。这种情况不太常见,所以对于连续两天以上收盘价相等的股票,很有可能是数据源的记录有误。例如:
最新股票代码 日期 收盘价
… …
000032 2005-07-25 4.46
000066 2005-07-05 7.79
000066 2005-07-06 7.79
000066 2005-07-07 7.79
000078 2005-07-29 3.26
000403 2005-07-19 2.89
000403 2005-07-20 2.89
000403 2005-07-21 2.89
000416 2005-07-20 4.42
000517 2005-07-08 3.33
000547 2005-07-26 5.09
所以,需要将其从数据库中找出来,形成新的数据库,为与其他数据源的数据相比较做好准备。创建新的数据集,统计每只股票相同收盘价的观测值与相应的重复次数。
创建样本数据集:
data example1(label='找出收盘价相同的股票');
input Stkcd $ Date: Clpr ;
informat Stkcd $6. Date yymmdd10. Clpr 8.2 ;
format Stkcd $6. Date yymmdd10. Clpr 8.2 ;
label
Stkcd='最新股票代码|Stock Code'
Date='日期|Date'
Clpr='收盘价|Close Price';
cards;
000032 2005-07-25 4.46
000066 2005-07-05 7.79
000066 2005-07-06 7.79
000066 2005-07-07 7.79
000078 2005-07-29 3.26
000403 2005-07-19 2.89
000403 2005-07-20 2.89
000403 2005-07-21 2.89
000416 2005-07-20 4.42
000517 2005-07-08 3.33
000547 2005-07-26 5.09
000557 2005-07-12 0.86
000557 2005-07-13 0.86
000557 2005-07-14 0.86
000584 2005-07-13 3.69
000616 2005-07-05 2.99
000665 2005-07-25 2.52
000701 2005-07-26 5.22
000739 2005-07-08 3.05
000778 2005-07-07 6.16
000778 2005-07-08 6.16
000778 2005-07-11 6.16
000789 2005-07-08 2.13
000803 2005-07-01 11.50
000803 2005-07-04 11.50
000803 2005-07-05 11.50
000803 2005-07-06 11.50
000803 2005-07-14 11.50
000803 2005-07-15 11.50
000803 2005-07-27 11.50
000803 2005-07-28 11.50
000821 2005-07-26 2.59
000831 2005-07-12 2.43
000831 2005-07-13 2.43
000831 2005-07-14 2.43
000876 2005-07-04 6.28
000911 2005-07-20 3.50
000932 2005-07-05 3.84
000932 2005-07-06 3.84
000932 2005-07-07 3.84
000932 2005-07-08 3.84
000932 2005-07-11 3.84
000951 2005-07-13 7.18
000982 2005-07-29 2.24
000993 2005-07-26 2.94
000993 2005-07-27 2.94
000993 2005-07-28 2.94
002016 2005-07-07 6.69
002016 2005-07-18 6.50
002016 2005-07-19 6.50
002016 2005-07-20 6.50
002047 2005-07-07 8.48
200017 2005-07-05 0.50
200017 2005-07-06 0.50
200017 2005-07-07 0.50
200017 2005-07-12 0.50
200017 2005-07-13 0.50
200018 2005-07-04 1.50
200018 2005-07-05 1.50
200018 2005-07-06 1.50
200018 2005-07-07 1.50
200026 2005-07-01 1.71
200026 2005-07-04 1.71
200026 2005-07-13 1.71
200026 2005-07-14 1.71
200030 2005-07-27 0.48
200030 2005-07-28 0.48
200030 2005-07-29 0.48
200054 2005-07-08 1.35
200054 2005-07-11 1.35
200054 2005-07-12 1.35
200152 2005-07-27 1.61
200512 2005-07-12 1.20
200512 2005-07-13 1.20
200512 2005-07-14 1.20
200512 2005-07-15 1.20
200570 2005-07-12 1.77
200570 2005-07-13 1.77
200570 2005-07-14 1.77
200613 2005-07-26 0.33
200613 2005-07-27 0.33
200613 2005-07-28 0.33
200613 2005-07-29 0.33
200986 2005-07-18 1.90
200992 2005-07-18 0.59
200992 2005-07-19 0.59
200992 2005-07-26 0.59
200992 2005-07-27 0.59
200992 2005-07-28 0.59
200992 2005-07-29 0.59
600009 2005-07-15 16.58
600009 2005-07-18 16.58
600009 2005-07-19 16.58
600022 2005-07-04 5.22
600022 2005-07-05 5.22
600022 2005-07-06 5.22
600035 2005-07-28 3.00
600074 2005-07-27 2.66
600104 2005-07-08 4.48
600119 2005-07-07 2.58
600119 2005-07-08 2.58
600119 2005-07-22 2.58
600119 2005-07-25 2.58
600135 2005-07-11 2.99
600168 2005-07-19 2.69
600168 2005-07-20 2.69
600168 2005-07-21 2.69
600170 2005-07-13 4.13
600201 2005-07-01 3.95
600213 2005-07-12 1.82
600213 2005-07-13 1.82
600213 2005-07-14 1.82
600233 2005-07-15 3.03
600234 2005-07-18 1.27
600234 2005-07-19 1.27
600234 2005-07-20 1.27
600251 2005-07-18 4.39
600251 2005-07-19 4.39
600251 2005-07-20 4.39
600266 2005-07-11 5.90
600275 2005-07-04 2.03
600275 2005-07-05 2.03
600275 2005-07-06 2.03
600296 2005-07-27 3.88
600328 2005-07-20 4.78
600350 2005-07-12 4.50
600350 2005-07-13 4.50
600350 2005-07-20 4.50
600350 2005-07-21 4.50
600356 2005-07-22 6.40
600356 2005-07-25 6.40
600356 2005-07-28 6.40
600356 2005-07-29 6.40
600365 2005-07-11 3.74
600396 2005-07-28 4.80
600399 2005-07-07 3.90
600399 2005-07-08 3.90
600420 2005-07-18 7.40
600420 2005-07-19 7.40
600420 2005-07-20 7.40
600420 2005-07-21 7.40
600444 2005-07-01 5.85
600486 2005-07-04 6.98
600520 2005-07-21 3.43
600555 2005-07-28 2.80
600587 2005-07-08 4.22
600616 2005-07-19 9.19
600626 2005-07-19 2.28
600626 2005-07-20 2.28
600626 2005-07-21 2.28
600649 2005-07-19 4.78
600681 2005-07-12 1.01
600711 2005-07-29 5.45
600740 2005-07-25 7.08
600771 2005-07-15 3.97
600777 2005-07-01 3.00
600777 2005-07-04 3.00
600802 2005-07-06 2.08
600828 2005-07-07 3.09
600828 2005-07-08 3.09
600828 2005-07-11 3.09
600832 2005-07-05 13.39
600863 2005-07-05 3.50
600893 2005-07-01 3.32
600893 2005-07-04 3.32
600893 2005-07-05 3.32
600894 2005-07-04 2.22
600988 2005-07-14 3.83
900925 2005-07-04 0.37
900955 2005-07-12 0.32
900955 2005-07-13 0.32
900955 2005-07-14 0.32
900957 2005-07-20 0.11
;
run;
3. 将同一个公司的A,B股合并。
在处理公司信息表的时候,通常我们会遇到数据源将同一公司的A,B股分开处理,并写成两条观测的情形。如公司代码为C000002的股票,在这里是以两条记录的形式记录下了该公司发行了A股和B股的情况,在公司信息表中,需要将其整合成一条信息,并分别以A,B股的名称和形式来表示。而且有的公司先发行A股,有的公司却是先发行B股,这也是需要注意的问题。
原始样式:
公司代码 日期 公司中文名称 股票代码 股票名称 股票类型
… … … …
C000001 2005-05-18 深圳发展银行股份有限公司 000001 深发展A A
C000002 2000-08-15 万科企业股份有限公司 000002 万科A A
C000002 2005-06-21 万科企业股份有限公司 200002 万科B B
C000003 2000-08-29 金田实业(集团)股份有限公司 200003 PT金田B B
C000003 2004-04-30 金田实业(集团)股份有限公司 000003 PT金田A A
C000004 2005-07-09 深圳中国农大科技股份有限公司 000004 国农科技 A
C000005 2005-05-27 深圳世纪星源股份有限公司 000005 ST星源 A
C000006 2005-05-19 深圳市振业(集团)股份有限公司 000006 深振业A A
C000007 2005-07-30 深圳市赛格达声股份有限公司 000007 深达声A A
C000008 2005-05-21 广东宝利来投资股份有限公司 000008 宝利来 A
… … … …
最终需要形成的样式:
公司代码 日期 公司中文名称 股票代码 A股名称 A股股
票代码 B股名称 B股股
票代码
… … … …
C000001 2005-05-18 深圳发展银行股份有限公司 000001 深发展A A
C000002 2005-06-21 万科企业股份有限公司 200002 万科A A 万科B B
C000003 2004-04-30 金田实业(集团)股份有限公司 000003 PT金田A A PT金田B B
C000004 2005-07-09 深圳中国农大科技股份有限公司 000004 国农科技 A
C000005 2005-05-27 深圳世纪星源股份有限公司 000005 ST星源 A
C000006 2005-05-19 深圳市振业(集团)股份有限公司 000006 深振业A A
C000007 2005-07-30 深圳市赛格达声股份有限公司 000007 深达声A A
C000008 2005-05-21 广东宝利来投资股份有限公司 000008 宝利来 A
C000009 2005-07-01 中国宝安集团股份有限公司 000009 深宝安A A
C000010 2005-07-22 深圳市华新股份有限公司 000010 深华新 A
C000011 2005-06-29 深圳市物业(发展)集团股份有限公司 000011 深物业A A 深物业B B
… … … …
创建样本数据集
data example3 (label='例3:同一个公司A,B股合成一条记录例子');
input comcd $10. Date: yymmdd10. Comchnm:$100. stkcd:$6. stknm:$12. stktype:$1.;
format Date yymmdd10.;
label
Comcd="公司代码|Company Code"
Date="日期|Date"
Comchnm="公司中文全称|Company's Chinese Name - Header"
Stkcd="股票代码|Stock Code "
Stknm="股票名称|Stock Name "
stktype="股票类型|Stocktype";
cards;
C000001 2005-06-18 深圳发展银行股份有限公司 000001 深发展A A
C000002 2000-08-15 万科企业股份有限公司 000002 万科A A
C000002 2005-06-21 万科企业股份有限公司 200002 万科B B
C000003 2000-08-29 金田实业(集团)股份有限公司 000003 PT金田A A
C000003 2004-04-30 金田实业(集团)股份有限公司 200003 PT金田B B
C000004 2005-07-09 深圳中国农大科技股份有限公司 000004 国农科技 A
C000005 2005-05-27 深圳世纪星源股份有限公司 000005 ST星源 A
C000006 2005-05-19 深圳市振业(集团)股份有限公司 000006 深振业A A
C000007 2005-07-30 深圳市赛格达声股份有限公司 000007 深达声A A
C000008 2005-05-21 广东宝利来投资股份有限公司 000008 宝利来 A
C000009 2005-07-01 中国宝安集团股份有限公司 000009 深宝安A A
C000010 2005-07-22 深圳市华新股份有限公司 000010 深华新 A
C000011 2000-08-25 深圳市物业(发展)集团股份有限公司 200011 深物业B B
C000011 2005-06-29 深圳市物业(发展)集团股份有限公司 000011 深物业A A
C000012 2000-07-11 中国南玻集团股份有限公司(南玻集团) 000012 南玻A A
C000012 2005-05-20 中国南玻集团股份有限公司 200012 南玻B B
C000013 2000-08-05 深圳石化工业集团股份有限公司 200013 *ST石化B B
C000013 2004-07-17 深圳石化工业集团股份有限公司 000013 *ST石化A A
C000014 2004-03-30 沙河实业股份有限公司 000014 沙河股份 A
C000015 2000-08-14 深圳中浩(集团)股份有限公司 000015 PT中浩A A
C000015 2004-04-29 深圳中浩(集团)股份有限公司 200015 PT中浩B B
C000016 2000-08-22 康佳集团股份有限公司 000016 深康佳A A
C000016 2005-07-01 康佳集团股份有限公司 200016 深康佳B B
C000017 2000-08-15 深圳中华自行车(集团)股份有限公司 200017 *ST中华B B
C000017 2004-04-21 深圳中华自行车(集团)股份有限公司 000017 *ST中华A A
C000018 2000-08-24 深圳中冠纺织印染股份有限公司 000018 深中冠A A
C000018 2004-04-20 深圳中冠纺织印染股份有限公司 200018 深中冠B B
C000019 2000-08-11 深圳市深宝实业股份有限公司 000019 深深宝A A
C000019 2005-05-27 深圳市深宝实业股份有限公司 200019 深深宝B B
C000020 2000-08-02 深圳华发电子股份有限公司 000020 *ST华发A A
C000020 2005-05-31 深圳华发电子股份有限公司 200020 *ST华发B B
C000021 2005-07-19 深圳长城开发科技股份有限公司 000021 深科技A A
C000022 2000-08-22 深圳赤湾港航股份有限公司 000022 深赤湾A A
C000022 2005-06-29 深圳赤湾港航股份有限公司 200022 深赤湾B B
C000023 2005-05-11 深圳市天地(集团)股份有限公司 000023 深天地A A
C000024 2000-08-21 招商局蛇口控股股份有限公司 200024 招商局B B
C000024 2004-05-18 招商局地产控股股份有限公司 000024 招商地产 A
C000025 2000-08-23 深圳市特力(集团)股份有限公司 000025 ST特力A A
C000025 2005-06-04 深圳市特力(集团)股份有限公司 200025 ST特力B B
C000026 2000-08-10 深圳市飞亚达(集团)股份有限公司 000026 飞亚达A A
C000026 2004-10-09 深圳市飞亚达(集团)股份有限公司 200026 飞亚达B B
C000027 2004-09-18 深圳能源投资股份有限公司 000027 深能源A A
C000028 2000-09-02 深圳市益力矿泉水股份有限公司 000028 一致药业 A
C000028 2005-05-28 深圳一致药业股份有限公司 200028 一致B B
C000029 2000-08-25 深圳经济特区房地产(集团)股份有限公司 000029 深深房A A
C000029 2004-04-30 深圳经济特区房地产(集团)股份有限公司 200029 深深房B B
C000030 2000-08-15 深圳市莱英达集团股份有限公司 000030 ST盛润A A
C000030 2005-05-25 广东盛润集团股份有限公司 200030 ST盛润B B
C000031 2005-07-05 深圳市宝恒(集团)股份有限公司 000031 深宝恒A A
C000032 2005-05-28 深圳市桑达实业股份有限公司 000032 深桑达A A
C000033 2005-07-09 深圳新都酒店股份有限公司 000033 新都酒店 A
C000034 2005-06-25 深圳市深信泰丰(集团)股份有限公司 000034 ST深泰 A
C000035 2005-03-11 中国科健股份有限公司 000035 *ST科健 A
C000036 2005-06-01 华联控股股份有限公司 000036 华联控股 A
C000037 2000-08-10 深圳南山热电股份有限公司 000037 深南电A A
C000037 2005-04-16 深圳南山热电股份有限公司 200037 深南电B B
C000038 2005-07-09 深圳大通实业股份有限公司 000038 深大通A A
C000039 2000-08-19 中国国际海运集装箱(集团)股份有限公司 000039 中集集团 A
C000039 2005-04-18 中国国际海运集装箱(集团)股份有限公司 200039 中集B B
C000040 2005-05-24 深圳市鸿基(集团)股份有限公司 000040 深鸿基A A
;
run;
4. 滚动计算波动率程序。利用某股票(如000898)的日回报数据,计算该股票每天由前半年数据得到的回报样本方差、标准差。比如, 2006-01-04的样本方差与标准差由2005-07-01到2005-12-31的回报数据算出、类似再算出2006-01-05的等。
/* 期望为简单平均;波动率存储在数据集VAR中,如果采用期望期为0, 其算法非常简单,可参考金融计算与建模14章习题 */ |
|