关于数据挖掘:数据分享MATLABR基于Copula方法和kmeans聚类的股票选择研究上证A股数据附代码数据

38次阅读

共计 3837 个字符,预计需要花费 10 分钟才能阅读完成。

全文链接:http://tecdat.cn/?p=31733

最近咱们被客户要求撰写对于 Copula 的钻研报告,包含一些图形和统计输入。

Copula 办法是测度金融市场间尾部相关性比拟无效的办法,而且可用于钻研非正态、非线性以及尾部非对称等较简单的相依特色关系

因而,Copula 办法开始逐步代替多元 GARCH 模型的相关性剖析,成为考查金融变量间关系的风行办法,被宽泛地用于市场一体化、风险管理以及期货套期保值的钻研中。

国内外学者对于尾部相关性和 Copula 办法曾经有了深刻的钻研,提出多种 Copula 模型来一直优化尾部相关系数对于不同状况下股票之间相关性的刻画,对于股票的聚类办法也进行了改良和拓展,然而可能联合这些办法对于资产抉择进行钻研的较少。尤其是在面对现今股票市场海量级的股票数据,如何从股票间的尾部相关性开掘到无效信息,失去可能无效躲避危险的资产组合是很少有人钻研的问题。并且大多尾部相干的剖析都只停留在定性的剖析中,并且多是在市场与市场之间,板块与板块之间的相关性剖析,对于股票间定量的相关性钻研还有有余。置信研究成果对于投资者无效的躲避危险,寻求最佳的投资组合有较大的帮忙。

本文联合 Copula 办法和聚类思维对大数量级的股票间尾部相关性进行剖析,帮忙客户构建混合 Copula 模型并计算股票间尾部相关系数,再依据尾部相关系数选用正当高效的聚类办法进行聚类,为投资者抉择投资组合提供无效的倡议。

上证 A 股数据

本文选取上证 A 股数据 查看文末理解数据收费获取形式 ,其数据来源于 wind 数据库。因为工夫距离较长,本文将通过对相关系数进行计算来剖析其之间的相关性,而后再通过聚类分析将其合并来进行钻研。具体步骤如下:

非参数核预计边缘散布

j=1077

aj=median(sy(:,j)); %(j=1(SZGY),2(SZSY),3(SZDC),4(GYSY))

bj=median(abs(sy(:,j)-aj))/0.6745;

hj=1.06*bj*1077^(-1/5);

1,固定函数的参数,抉择权重的初值为:1/ 3。对权重进行预计。

d=cdf('Normal',(sy(n,j)-wj(i))/hj,0,1);

sum=sum+d;

end

2,固定权重为第 1 步的估计值,抉择参数的初值为第上一节的估计值,对函数的参数进行预计。

% 求似然值

%fenbu=xlsread('fenbu.xlsx'); % 读取数据,fenbu=sy;

u=mean(sy);

3,将第 2 步预计失去的参数值作为固定值,权重初值抉择第 1 步的估计值,进行权重预计。

s(j)=s(j)+b(i); % 求似然值

end

end

预计混合 Copula 权重

theta=0.5;
for j=1:1000;

k1(1)=0.2; % 权重初值

k2(1)=0.3 ;

c3(i)=1077^(-1)*k3(j)*fr(i)*(k1(j)*gu(i)+k2(j)*cl(i)+k3(j)*fr(i))^(-1);

k1(j+1)=k1(j+1)+c1(i); %gu(i),cl(i),fr(i)示意三个函数的密度函数

abs(k3(j+1)-k3(j))<=0.000001); % 满足收敛条件是跳出

end

l=length(k1') % 收敛时的步骤数目

k1(l),k2(l),k3(l) % 收敛时的后果

预计混合 Copula 模型的函数参数

%b=b(0); % 参数初值

for j=1:1000; % 运算步骤

h1(i)=k1*gu_p(i)*gu(i)/(gu_m(i)*(k1*gu(i)+k2*cl(i)+k3*fr(i)));

s1=s1+h1(i); %gu_p 是 Gumbel 密度函数,gu_m 是 Gumbel 的密度函数
n=13;d=array(0 dim=c(13 13))  
for(i in 1:(n-1)){d[i i]=1  
  for(j in (i+1):n){clayton.cop=claytonCopula(3 dim=2);clayton.cop  
    u=pobs(b);u
    

生成随机数


M=0.247060*G'+0.441831*C'+0.311109*F'; % 生成混合 Copula 随机数

计算每个不同类时的 k-means 聚类后果, 并计算平均偏差, 且画出图形

for c = 2:8

  [idx,ctrs] = kmeans(M,c);


点击题目查阅往期内容

用 COPULA 模型进行蒙特卡洛 (MONTE CARLO) 模仿和拟合股票收益数据分析

左右滑动查看更多

01

02

03

04

[aic,bic] = aicbic([logL1;logL2;logL3;logL4],

当聚类数目为 7 时的 k-means 聚类

c=7;

  [idx,ctrs] = kmeans(M,c);

X=M

plot(X(idx==1,1),X(idx==1,2),'r.','MarkerSize',12)

上尾

hold on

plot(X(idx==4,1),X(idx==4,2),'b.','MarkerSize',12)

hold on

plot(X(idx==5,1),X(idx==5,2),'b.','MarkerSize',12)

hold on

plot(X(idx==6,1),X(idx==6,2),'b.','MarkerSize',12)

hold on

plot(X(idx==7,1),X(idx==7,2),'b.','MarkerSize',12)

hold on

plot(X(idx==8,1),X(idx==8,2),'b.','MarkerSize',12)

hold on

 plot(ctrs(:,1),ctrs(:,2),'kx',...

Average square within cluster

library(cluster)  
agn1=aes(delta method="average");agn1
plot(x with.ss")  
lines(x with.ss lty=2)

下尾

Average square within cluster

输入上尾和下尾相关系数

本文将 Copula 办法利用到股票市场的相干剖析中,以上证 A 股数据作为钻研对象,基于 Copula 办法构建了对不同投资组合的危险和收益的预测模型;其次,将聚类思维利用到股票抉择中,将抉择进去的股票进行聚类分析,得出各个聚类后果。本文不仅思考了股票之间的相干关系,还思考了它们之间的相关性。

输入股票类别

数据获取

在公众号后盾回复“ a 股数 **** 据”,可收费获取残缺数据。



点击文末 “浏览原文”

获取全文残缺代码数据资料。

本文选自《MATLAB、R 基于 Copula 办法和 k -means 聚类的股票抉择钻研上证 A 股数据》。

点击题目查阅往期内容

用 COPULA 模型进行蒙特卡洛 (MONTE CARLO) 模仿和拟合股票收益数据分析 \
Copula 算法建模相依性剖析股票收益率工夫序列案例 \
Copula 预计边缘散布模仿收益率计算投资组合危险价值 VaR 与冀望损失 ES\
MATLAB 用 COPULA 模型进行蒙特卡洛 (MONTE CARLO) 模仿和拟合股票收益数据分析 \
R 语言多元 Copula GARCH 模型工夫序列预测 \
python 中的 copula:Frank、Clayton 和 Gumbel copula 模型预计与可视化 \
R 语言中的 copula GARCH 模型拟合工夫序列并模仿剖析 \
matlab 应用 Copula 仿真优化市场危险数据 VaR 剖析 \
R 语言多元 Copula GARCH 模型工夫序列预测 \
R 语言 Copula 函数股市相关性建模:模仿 Random Walk(随机游走)\
R 语言实现 Copula 算法建模依赖性案例剖析报告 \
R 语言 ARMA-GARCH-COPULA 模型和金融工夫序列案例 \
R 语言基于 copula 的贝叶斯分层混合模型的诊断准确性钻研 \
R 语言 COPULA 和金融工夫序列案例 \
matlab 应用 Copula 仿真优化市场危险数据 VaR 剖析 \
matlab 应用 Copula 仿真优化市场危险 \
R 语言多元 CopulaGARCH 模型工夫序列预测 \
R 语言 Copula 的贝叶斯非参数 MCMC 预计 \
R 语言 COPULAS 和金融工夫序列 R 语言乘法 GARCH 模型对高频交易数据进行波动性预测 \
R 语言 GARCH-DCC 模型和 DCC(MVT)建模预计 \
Python 应用 GARCH,EGARCH,GJR-GARCH 模型和蒙特卡洛模仿进行股价预测 \
R 语言工夫序列 GARCH 模型剖析股市稳定率 \
R 语言 ARMA-EGARCH 模型、集成预测算法对 SPX 理论稳定率进行预测 \
matlab 实现 MCMC 的马尔可夫转换 ARMA – GARCH 模型预计 \
Python 应用 GARCH,EGARCH,GJR-GARCH 模型和蒙特卡洛模仿进行股价预测 \
应用 R 语言对 S&P500 股票指数进行 ARIMA + GARCH 交易策略 \
R 语言用多元 ARMA,GARCH ,EWMA, ETS, 随机稳定率 SV 模型对金融工夫序列数据建模 \
R 语言股票市场指数:ARMA-GARCH 模型和对数收益率数据探索性剖析 \
R 语言多元 Copula GARCH 模型工夫序列预测 \
R 语言应用多元 AR-GARCH 模型掂量市场危险 \
R 语言中的工夫序列分析模型:ARIMA-ARCH / GARCH 模型剖析股票价格 \
R 语言用 Garch 模型和回归模型对股票价格剖析 \
GARCH(1,1),MA 以及历史模拟法的 VaR 比拟 \
matlab 预计 arma garch 条件均值和方差模型 \
R 语言 ARMA-GARCH-COPULA 模型和金融工夫序列案例

正文完
 0