第1章 R简介 1
1.1 R是什么 1
1.2交互模式和编写脚本 2
1.3安装R 4
1.4获取帮助 4
1.5包 5
1.5.1标准包 6
1.5.2捐献包和CRAN 6
1.5.3命名空间 6
第2章 与数据打交道 7
2.1简单的算术操作和向量运算 7
2.1.1向量和赋值 7
2.1.2向量运算 8
2.1.3生成正则序列 9
2.1.4逻辑向量 10
2.1.5缺损值 11
2.1.6字符向量 12
2.1.7向量索引:选择和修改一个数据的子集 13
2.2其他重要的数据类型 14
2.2.1数组和矩阵 14
2.2.2列表和数据枢 15
2.2.3类和泛型函数 16
2.2.4 S4类 19
2.3与日期打交道 20
2.4合并数据框 22
2.5从文件中读取数据 22
2.5.1 read.table() 函数 23
2.5.2从Excel文件中读取 24
2.6处理超大数据文件 24
2.6.1用scan()读取数据字段 25
2.6.2利用Unix工具 25
2.6.3用磁盘代替内存 26
2.6.4访问数据库 26
2.7发布系统指令 27
2.8从剪贴板读取数据 28
2.9直接编辑数据 28
2.10例子:从大文件中提取数据 29
第3章 横截面回归 30
3.1最小二乘法 30
3.2从回归中提取统计量 32
3.3异方差 33
3.3.1异方差Breusch-Pagan检验 33
3.3.2异方差(自回归)稳健性协方差矩阵 33
3.4线性假设检验(Wald和F) 33
3.5加权和广义最小二乘法 34
3.6带因子/分组的模型 35
第4章 特殊回归 37
4.1固定/随机效应模型 37
4.1.1固定效应 37
4.1.2随机效应 38
4.2定性响应 39
4.2.1 Logit/Probit 39
4.2.2多项式Logit 39
4.2.3顺序Logit/Probit 40
4.3 Tobit和删失(Censored)回归 40
4.4分位数回归 40
4.5稳健回归-M估计 41
4.6非线性最小二乘法 41
4.7单结构方程的两步回归 42
4.8方程组 42
4.8.1似无关回归 42
4.8.2方程组两步回归 43
4.9例子 43
4.9.1蒙特卡洛(Monte Carlo)模拟 43
4.9.2最大似然估计 44
第5章 时间序列回归 45
5.1差分和滞后 45
5.2滤波 47
5.2.1 Canned AR和MA filters 47
5.2.2手动滤波 48
5.2.3 Hordrick-Prescott滤波 48
5.2.4卡尔曼(Kalman)滤波 48
5.3 ARIMA/ARFIMA 49
5.4 ARCH/GARCH 50
5.4.1基本GARCH—garch() 50
5.4.2高级GARCH—garchFit() 51
5.5相关图 51
5.6预测值 52
5.7时间序列检验 53
5.7.1自相关Durbin-Watson检验 53
5.7.2 自相关Box-Pierce和Breush-Godfrey检验 53
5.7.3单位根Dickey-Fuller检验 53
5.8向量自回归(VAR) 54
5.9谱分析 54
5.9.1傅里叶变换 54
5.9.2窗函数 55
5.9.3周期图 56
5.10小波 60
5.11例子:时间序列分解和预测 64
5.11.1时间序列分解 64
5.11.2时间序列拟合 65
第6章 绘图 67
6.1绘制经验分布 68
6.2等高图 69
6.3添加图例和资料 71
6.4添加箭头、文本和标记 72
6.5多图绘制 72
6.6保存图形 75
6.7添加希腊字母和数学符号 75
6.8其他图形包 76
第7章 统计 77
7.1常见的统计分布 77
7.2检验一个数据集的分布 78
7.3单样本和双样本检验 82
7.4 P值 86
7.5从数据中采样 86
第8章 R中的数学 88
8.1矩阵运算 88
8.1.1矩阵相乘 88
8.1.2线性方程和求逆 89
8.1.3特征值和特征向量 89
8.1.4奇异值分解和行列式 90
8.1.5 最小二乘法拟合和QR分解 90
8.2数值优化 91
8.2.1无约束极小化 91
8.2.2线性约束极小化 92
8.3数值积分 93
第9章 编程 94
9.1编写函数 94
9.1.1一个简单的例子 94
9.1.2定义新的二元操作符 95
9.1.3参数命名和默认值 96
9.1.4.参数 96
9.1.5在函数中赋值 97
9.2循环和避免循环 97
9.3控制 100
9.3.1条件控制:if语句 100
9.3.2循环控制:for循环,repeat和while 100
9.3.3一个例子 101
9.4检测你的程序运行时间 102
9.5调试 103
9.5.1用traceback 显示错误命令 103
9.5.2运用debug一步步排查 104
9.5.3运用trace在函数中插入代码 107
9.5.4通过recover浏览函数调用情况 108
第10章 改变配置 111
第11章 保存你的工作 114
第12章 投资中的数量化技术 117
第13章 估值和选股 119
13.1相对估值模型 120
13.1.1股票价格倍数 120
13.1.2企业价值倍数 121
13.2绝对估值模型 123
13.2.1现金流贴现模型 123
13.2.2红利贴现模型 124
13.2.3股权自由现金流模型 124
13.2.4公司自由现金流模型 125
13.2.5经济增加值(EVA)贴现法 125
13.2.6 现金流量贴现法的指标计算 126
13.3数量化选股 127
13.3.1简介 127
13.3.2基本面(Foundmental)选股 128
13.3.3多因 素 (Multiple-Factor Regression) 模型 131
13.3.4动量反转(Momentum Contrarian)选股 133
13.3.5 GARP模型 134
第14章 资产配置和组合优化 136
14.1战略资产配置 137
14.1.1马科维茨资产配置模型 137
14.1.2均值-LPM资产配置模型 139
14.1.3 VaR约束下的资产配置模型 140
14.1.4基于贝叶斯估计的资产配置模型 141
14.2战术资产配置 142
14.2.1行业轮动策略 143
14.2.2风格轮动策略 144
14.2.3(可转移)Alpha策略 146
14.2.4投资组合保险策略 147
第15章 基于数据挖掘的股票预测 150
15.1神经网络 151
15.2支持向量机 153
15.3小波分析 156
第16章 行为金融指导下的投资策略 157
16.1反向投资策略与动量交易策略 158
16.2捕捉并集中投资策略 159
16.3小盘股策略 160
16.4成本平均策略 162
16.5时间分散化策略 162
16.6设立止损点的交易策略 163
第17章 程序化交易和算法交易 165
17.1程序化交易 166
17.1.1指数套利交易策略 167
17.1.2数量程序交易策略 167
17.1.3动态对冲交易策略 168
17.1.4 配对交易策略 168
17.1.5 久期平均交易策略 169
17.2算法交易 170
17.2.1定义 170
17.2.2主要算法 171
17.3交易成本分析 174
17.4交易模型和模拟 176
第18章 绩效评估技术 178
18.1风险调整收益分析 178
18.1.1夏普比率 179
18.1.2特雷纳指数 179
18.1.3詹森指数 180
18.1.4 M2指数 181
18.1.5 信息比率 182
18.1.6 RAROC指标 182
18.2投资管理人的能力分析 183
18.2.1经验模型 183
18.2.2 T-M和H-M模型 183
18.3业绩持续性分析 185
18.3.1回归系数法 185
18.3.2列联表法 185
18.4超额收益归因分析 187
18.4.1 资产配置超额找益率贡献 187
18.4.2证券选择收益贡献 187
18.4.3行业选择的收益贡献 187
18.4.4行业内个股选择收益贡献 187
18.5基金评价体系 188
18.5.1晨星公司的评级体系 188
18.5.2银河基金业绩评价体系 189
第19章 实践:几个量化投资模拟的例子 191
19.1预备:获取数据 191
19.1.1从网络获取股票数据 191
19.1.2从数据库获取股票数据 192
19.1.3获取和查看上市公司的财务报表 198
19.1.4获取上市公司股息数据 198
19.1.5根据股息调整股票价格 199
19.1.6 获取股票分割数据 199
19.2用LOWESS平滑价格曲线 199
19.3交易前成本分析 203
19.4布林带策略绩效分析 215
19.5海龟交易系统 218
19.6配对交易策略绩效分析 227
19.7数据挖掘预测股票收益 234
第20章 相关程序包参考 251
20.1 TTR 251
20.2 BLOTTER 294
20.3 QUNTSTRAT 314
20.4 PERFORMANCEANALYTICS 344
附录一 R中实现交易模拟的工具链 463
附录二 CRAN任务视图:计量经济学 464
附录三 CRAN任务视图:实证金融学 468
附录四 CRAN任务视图:时间序列分析 472
附录五 CRAN任务视图:机器学习和统计学习 478
参考文献 482