自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 收藏
  • 关注

原创 Python金融风险建模大纲

一、Python基础篇,包括numpy、pandas、matplotlib、scipy等;二、Python应用篇:1、投资学部分;2、金融工程部分;3、风险管理部分;4、机器学习部分。

2020-01-03 22:57:41 6696

原创 (六十七)神经网络——MLP

MLP模型使用sklearn.neural_network.MLPClassifier来实现。模型的复杂程度调节,可以通过修改隐藏层上的节点数、隐藏层的层数、activation的方式和alpha值来完成。

2021-01-04 23:43:06 54007 1

原创 (六十六)支持向量机

SVM可分为SVC和SVR,建模重点是核函数的选择(首选RBF)、核函数参数和正则化参数C的选择,RBF内核的gamma和C一起控制模型的复杂度,数值越大模型越复杂。数据标准化可以提升高斯核SVM的表现。

2020-12-29 18:14:39 1369

原创 (六十五)基于决策树的信用评级

度量决策树结点的"纯度"指标有信息增益、增益率和基尼系数;连续属性划分思路是二分法;决策树分类使用sklearn.tree.DecisionTreeClassifier;graphviz库对决策树可视化;GridSearchCV搜索模型的最优超参数。

2020-12-28 11:32:38 2551 2

原创 (六十四)朴素贝叶斯算法

贝努利朴素贝叶斯适合于二项式分布的数据集,高斯朴素贝叶斯适用于任何连续数值型的数据集,多项式朴素贝叶斯适合非负、离散数值的数据集。使用的类为sklearn.naive_bayes.BernoulliNB,GaussianNB,MultinomialNB。

2020-12-24 13:56:23 1676 1

原创 (六十三)KNN算法

KNN算法的思路是新数据点离谁最近,就和谁属于同一类。可使用KNeighborsClassifier和KNeighborsRegressor进行分类和回归,增大n_neighbors参数可以提高模型得分。

2020-12-23 13:54:47 483

原创 (六十二)基于logistic回归的信用评级和分类模型评估

本文基于汽车贷款案例介绍了逻辑回归的原理和常用的两个函数LogisticRegression和LogisticRegressionCV,以及分类模型通用的评估方法(查准率、查全率、F1值、ROC和AUC等)。

2020-12-21 14:16:56 4482 2

原创 (六十一)线性模型:线性回归、岭回归和套索回归

线性回归难以控制模型的复杂度;如果特征过多且只有一小部分是重要的,那么套索回归更好,alpha降低,欠拟合降低;如果特征不多且每一个都有重要作用,那么就应该使用岭回归,alpha增加,过拟合降低。

2020-12-18 23:41:37 3463

原创 (五十一)时间序列分析二:平稳时间序列分析(ARMA)

本文介绍了给平稳时间序列建立ARMA模型的过程。步骤为平稳性检验→模型定阶→ARMA建模→模型预测→残差白噪声检验,用到的方法主要为statsmodels.api中的各种模块与函数。

2020-06-27 19:20:31 20921 2

原创 (五十)时间序列分析一:效应分解法

本文介绍了时间序列的效应分解方法,主要是对趋势和周期进行建模并预测。用到的库为fbprophet,其只能处理加法效应,如果出现季节效应随着趋势增加(乘法效应),就需要对数据取对数处理再建模。

2020-06-27 12:35:19 2420

原创 (五十七)方差分析与相关分析

单因素方差分析适用于连续变量与一个多分类变量,主要用到的函数为stats.f_oneway();多因素方差分析可以检验多个分类变量与一个连续变量的关系,函数为sm.stats.anova_lm(smf.ols().fit());相关分析可用相关系数corr和散点矩阵图sns.pairplot()。

2020-06-20 12:15:19 8298

原创 (五十六)假设检验(t检验、卡方检验)

对总体均值的单样本t检验用到的函数为sm.stats.DescrStatsW(列).ttest_mean();双样本t检验用于检验两个样本均值的差异是否显著,使用stats.levene()函数和stats.stats.ttest_ind()函数;两个分类变量之间的相关关系可用列联表和卡方检验,函数为pd.crosstab和stats.chi2_contingency()。

2020-06-19 22:54:47 9435 1

原创 量化投资笔记(二)

编写一个简单的策略基本策略:设定好要交易的股票数量stocksnum每天找出市值排名最小的前stocksnum只股票作为要买入的股票若已持有的股票的市值已经不够小而不在要买入的股票中,则卖出这些股票买入要买入的股票,买入金额为当前可用资金的stocksnum分之一。加强策略:希望能实现通过一个变量period控制操作的周期,即每period天进行一次选股并交易。def initialize(context): run_daily(period,time='every_bar')

2020-06-10 10:15:30 966

原创 量化投资笔记(一)

基本格式与下单函数def initialize(context):#初始化函数 run_daily(period,time='every_bar')#运行函数 g.security = '000001.XSHE'#g转换为全局变量def period(context):#周期函数 order(g.security, 100)#下单函数API:即应用程序编程接口,量化平台的函数,在API文档中查阅。下单函数主要有:#按股数下单函数order("000001.XSHE",10

2020-06-10 10:13:22 3157

原创 (五十五)数据查询、整合、清理进阶与数据探索

本文介绍了pandas库下的数据查询、整合与清理进阶方法(按条件读取文件,用between、isin和str.contains条件查询和条件赋值方法)、异常值处理的盖帽法和分箱法以及toad.detector.detect函数探索数据。

2020-06-09 22:48:05 552

原创 (五十四)Merton模型与KMV模型预测违约概率

Merton模型将违约概率与期权定价公式结合,PD=N(-d2);KMV模型在Merton模型的基础上提出了违约距离dd的概念,并且将债务价值改进为违约实施点,期望违约概率EDF=N(-dd),dd是一个很好的相对指标。

2020-05-07 16:15:29 50737 12

原创 (四十二)利率互换与货币互换的定价

利率互换的价值为固定利率债券与浮动利率债券价值之差,注意支付日要找准;求互换的固定利率时要根据利率的期限结构求出远期利率,令互换价值为零求解;货币互换的价值也是根据本国和外国的债券价值之差来确定。

2020-04-21 17:54:47 14026 2

原创 (四十九)随机利率模型

无套利模型的代表是Ho-Lee模型:dr = θ(t)dt + σdw,当θ(t)为常数或0时就退化为model 2或model 1。根据已有零息债券来拟合利率期限结构,进而求出θ(t);均衡模型的代表是Vasicek模型,具有均值复归、波动递减的特点。

2020-04-18 21:51:47 3931

原创 MySQL学习笔记六:表的运算和联结、窗口函数与grouping

可用union (all)对表进行并集运算,交集可用关联子查询;内联结用inner join...on...,外联结用left/right outer join...on...;窗口函数可用于排序和在线聚合函数处理;grouping运算符可自动生成汇总行。

2020-04-17 22:22:18 676

原创 MySQL学习笔记五:函数、谓词和case表达式

函数主要有算术函数、字符串函数、日期函数和转换函数;谓词主要有like、in、between、exist等,子查询可以作为in的参数;case表达式是分支语句,主要结构是case (when...then...) else... end。

2020-04-13 20:44:48 312

原创 MySQL学习笔记四:视图的创建、更新与子查询

创建视图的语句为create view A as select...,视图占用内存少且动态更新;一般来说没有聚合和分组语句时就可以更新视图;子查询是多个select语句的嵌套,标量子查询当做常数用,组内比较时用关联子查询。

2020-04-10 20:30:43 491

原创 MySQL学习笔记三:数据的插入、删除、更新与事务

数据的更新操作:插入默认值,从其他表格复制数据(insert into A select ... from B),数据的删除(delete from A where...),数据的更新(update A set...where...),以及事务的定义和注意事项。

2020-04-09 16:22:17 829

原创 MySQL学习笔记二:聚合、分组与排序

聚合函数主要是计数和统计函数,可以放在select子句、having子句以及order by子句中;group by用于分组,having指定分组条件;对结果排序用order by。注意书写顺序与执行顺序的差异。

2020-04-08 16:22:20 635

原创 MySQL学习笔记一:表的创建与操作、查询基础

表的创建与操作(插入内容、增加和删除列、修改表名等);最基础的查询语句是select (as) from (where),可以为列设置别名、花式查询、写入常数列、删除某列重复值等。

2020-04-06 18:36:33 1042

原创 (五十三)Credit VaR的计算

UL=Credit VaR=WCL-EL,主要思想是二项分布+历史模拟法,适合估计组合中资产不相关的情况下的Credit VaR。注意求集合子集的方法以及df.map函数的使用。

2020-04-04 18:41:09 3892

原创 (四十八)用EWMA和GARCH模型估计波动率和相关系数

EWMA和GARCH模型思路是根据历史波动率和收益率数据预测下一期的波动率,可以通过arch库中的arch_model模块来实现,相关系数的估计也类似。注意多重索引的切片操作。

2020-03-30 15:19:42 19909 8

原创 (四十七)情景分析与压力测试——Stressed VaR

压力测试就是要评估压力情景下的损失对金融机构的影响,对于历史情景可以直接用历史模拟法,对于头脑风暴情景可以用蒙特卡洛模拟法,计算出来的Stressed VaR比VaR大,但是也较为主观。

2020-03-28 17:46:40 14102

原创 (四十六)Expected Shortfall & VaR back testing

ES定义为VaR后所有极端值的算术平均,其测度性质比VaR更好;VaR的回测是对VaR模型正确性检验的过程,一般有置信区间和Z统计量两种方法,如果想保守点就用单侧检验,追求有效性用双侧检验。

2020-03-26 16:11:42 9549 6

原创 (四十五)混合法(hybrid approach)计算VaR

Age-Weighted HS只考虑最近的K个数据,对每一个数据设置不同的权重(新数据权重大),类似于概率密度值,然后根据累计概率用HS法算出VaR;Volatility-Weighted HS将之前的收益率根据波动率做了调整,再用HS法计算。

2020-03-22 17:22:08 2557

原创 (四十四)蒙特卡洛模拟法计算VaR

蒙特卡洛模拟计算VaR的思路是,模拟组合中每一个资产在下一个交易日的价格,得到收益率就可以计算组合收益了,重复这个过程多次再按照历史模拟法求VaR即可。

2020-03-18 13:46:58 19210 7

原创 (四十三)参数法与非参数法(历史模拟法)计算VaR

计算VaR的两种常用方法:参数法(正态VaR和对数正态VaR)和非参数法(历史模拟法),主要使用的函数是scipy.stats的求特定分布分位点的函数ppf,以及np.percentile求样本中的分位数。

2020-03-16 11:54:34 26367 6

原创 3月实习笔记(一)

月收益率的计算(百分比收益率和对数收益率)、周收益率的计算、连续最大跌幅的计算。

2020-03-11 18:49:22 643

原创 (四十一)差价组合、差期组合与混合组合期权策略

差价组合主要有牛市差价、熊市差价和蝶式差价等,差期组合应用的最多的是正向差期组合,混合组合主要有跨式、宽跨式、条式和带式等,投资者需要根据自身的预期以及成本要求等来选择。

2020-03-07 08:50:32 9120 1

原创 (四十)备兑看涨与保护看跌期权组合策略

本文介绍了备兑看涨期权策略与保护看跌期权组合策略,都是由单一资产与单一期权的相反头寸构成。注意股票期权净值与点数的换算,以及到期收益与期间收益的区别。

2020-03-05 20:10:18 3864 1

原创 (三十九)期权定价的二叉树法

用二叉树法给期权定价时,难点在于从后往前倒推期权价格的循环结构设计;美式期权需要在循环中嵌入检查是否提前执行的代码;连续红利率仅改变资产的上涨概率。注意np.max、max和np.maximum的使用区别。

2020-03-02 19:58:21 12515 1

原创 (三十八)期权定价的蒙特卡洛模拟方法

介绍了一般蒙特卡洛模拟法如何计算欧式期权价格,以及在此基础上的两种改进方法:对偶变量法和控制变量法。对偶变量法蒙特卡洛模拟的精度和效率都很高,更适合实务中使用。

2020-02-27 18:47:30 16843 3

原创 (三十七)期权的隐含波动率计算与图形

介绍了用牛顿迭代法和二分法计算期权的隐含波动率,理解透思路就容易写出代码;对不同执行价格的期权隐含波动率进行可视化;波动率微笑和偏斜现象出现的重要原因是资产价格不服从BS模型假定的对数正态分布。

2020-02-26 10:36:49 15874 16

原创 (三十六)Delta中性对冲与Delta-Gamma中性对冲

在一个案例的基础上介绍了动态Delta中性对冲与动态Delta-Gamma中性对冲,并用excel做了具体演示,可以发现动态Delta-Gamma中性对冲能最大幅度降低风险。注意不同资产头寸的delta和gamma正负。

2020-02-23 20:07:46 10308

原创 (三十五)相关变量与期权价格的关系、希腊值

相关变量与期权价格的关系中,期权价值与期权波动率和期权期限成正比,反映了时间价值;看涨看跌期权与Rf的关系相反。在5个希腊值中,比较重要的是前4个,其中delta和gamma常常作为对冲指标。

2020-02-22 15:13:09 3156 2

原创 (三十四)期权的盈亏图、平价公式和BS公式

介绍了期权到期收益图的绘制(注意要用numpy.maximum函数)、看涨-看跌期权平价公式的推导及套利、BS期权定价公式的应用(scipy.stats里的norm函数生成累积分布值)。

2020-02-19 17:12:22 11032

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除