❶ R语言怎么把股票日收盘价转换成对数收益率
知道一系列收盘价向量X,length=1000,求对数收益率的R语言代码
acf(int[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
log return')
Box.test(int[,2], lag = 5, type = "Ljung-Box")
Box.test(int[,2], lag = 10, type = "Ljung-Box")
Box.test(int.l[,2], lag = 5, type = "Ljung-Box")
Box.test(int.l[,2], lag = 10, type = "Ljung-Box")
运行结错误办
> int <- read.table("d-intc7208.txt", head=T)
错误于file(file, "rt") : 打链结
外: 警告信息:
In file(file, "rt") :
打文件'd-intc7208.txt': No such file or directory
+ acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
错误: 意外符号 in:
"
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int"
> log return')
错误: 意外符号 in "log return"
❷ 什么是BP神经网络
误差反向传播(Error Back Propagation, BP)算法
1、BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。
1)正向传播:输入样本->输入层->各隐层(处理)->输出层
注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程)
2)误差反向传播:输出误差(某种形式)->隐层(逐层)->输入层
其主要目的是通过将输出误差反传,将误差分摊给各层所有单元,从而获得各层单元的误差信号,进而修正各单元的权值(其过程,是一个权值调整的过程)。
注2:权值调整的过程,也就是网络的学习训练过程(学习也就是这么的由来,权值调整)。
2、BP算法实现步骤(软件):
1)初始化
2)输入训练样本对,计算各层输出
3)计算网络输出误差
4)计算各层误差信号
5)调整各层权值
6)检查网络总误差是否达到精度要求
满足,则训练结束;不满足,则返回步骤2)
3、多层感知器(基于BP算法)的主要能力:
1)非线性映射:足够多样本->学习训练
能学习和存储大量输入-输出模式映射关系。只要能提供足够多的样本模式对供BP网络进行学习训练,它便能完成由n维输入空间到m维输出空间的非线性映射。
2)泛化:输入新样本(训练时未有)->完成正确的输入、输出映射
3)容错:个别样本误差不能左右对权矩阵的调整
4、标准BP算法的缺陷:
1)易形成局部极小(属贪婪算法,局部最优)而得不到全局最优;
2)训练次数多使得学习效率低下,收敛速度慢(需做大量运算);
3)隐节点的选取缺乏理论支持;
4)训练时学习新样本有遗忘旧样本趋势。
注3:改进算法—增加动量项、自适应调整学习速率(这个似乎不错)及引入陡度因子
❸ 如何用R 语言 建立 股票价格的时间序列
在下想用R语言对股票价格进行时间序列分析。
问题出在第一步,如何将股票价格转换为时间序列。
我想用的语句是 pri <- ts (data, start=(), frequency= )
但是我不知道frequency 项该如何填?
因为股票的交易日是一周五天的。 那么这个frequency 该如何设置呢?
我知道通常frequency= 12 为月度数据,frequency= 4 为季度数据,frequency= 1 为年度数据 但日数据怎么写我就不知道了
初学R语言,还望各位大侠多多帮助。
❹ arima模型python 怎么看平稳性
时间序列分析(一) 如何判断序列是否平稳
序列平稳不平稳,一般采用两种方法:
第一种:看图法
图是指时序图,例如(eviews画滴):
分析:什么样的图不平稳,先说下什么是平稳,平稳就是围绕着一个常数上下波动。
看看上面这个图,很明显的增长趋势,不平稳。
第二种:自相关系数和偏相关系数
还以上面的序列为例:用eviews得到自相关和偏相关图,Q统计量和伴随概率。
分析:判断平稳与否的话,用自相关图和偏相关图就可以了。
平稳的序列的自相关图和偏相关图不是拖尾就是截尾。截尾就是在某阶之后,系数都为 0 ,怎么理解呢,看上面偏相关的图,当阶数为 1 的时候,系数值还是很大, 0.914. 二阶长的时候突然就变成了 0.050. 后面的值都很小,认为是趋于 0 ,这种状况就是截尾。再就是拖尾,拖尾就是有一个衰减的趋势,但是不都为 0 。
自相关图既不是拖尾也不是截尾。以上的图的自相关是一个三角对称的形式,这种趋势是单调趋势的典型图形。
下面是通过自相关的其他功能
如果自相关是拖尾,偏相关截尾,则用 AR 算法
如果自相关截尾,偏相关拖尾,则用 MA 算法
如果自相关和偏相关都是拖尾,则用 ARMA 算法, ARIMA 是 ARMA 算法的扩展版,用法类似 。
不平稳,怎么办?
答案是差分
还是上面那个序列,两种方法都证明他是不靠谱的,不平稳的。确定不平稳后,依次进行1阶、2阶、3阶...差分,直到平稳位置。先来个一阶差分,上图。
从图上看,一阶差分的效果不错,看着是平稳的。
❺ 知道一系列收盘价向量X,length=1000,求对数收益率的R语言代码
acf(int[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
log return')
Box.test(int[,2], lag = 5, type = "Ljung-Box")
Box.test(int[,2], lag = 10, type = "Ljung-Box")
Box.test(int.l[,2], lag = 5, type = "Ljung-Box")
Box.test(int.l[,2], lag = 10, type = "Ljung-Box")
运行结错误办
> int <- read.table("d-intc7208.txt", head=T)
错误于file(file, "rt") : 打链结
外: 警告信息:
In file(file, "rt") :
打文件'd-intc7208.txt': No such file or directory
+ acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
错误: 意外符号 in:
"
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int"
> log return')
错误: 意外符号 in "log return"
❻ 几何布朗运动
问题一:几何布朗运动的均值函数怎么求 设布朗运动为B(t),布朗运动本身是正态分布,而且满足分布~N(0,t).几何布朗运动是W(t)=exp(B(t));这是一个很好的线性对应关系.所以均值就是(如图)
解这个简单的积分,就得到均值:exp(t/2) 顺便方差也求了吧:exp(2t)-exp(t)
问题二:请问如何用R语言做大量次数的几何布朗运动的模拟(参数μ,σ已知) 10分 这上网搜应该搜的到吧,比如这篇文章
股票价格行为关于几何布朗运动的模拟--基于中国上证综指的实证研究
,照着几何布朗运动的公式直接写代码应该就行了吧,代码逻辑都很清晰。
下面是照着这片文章模拟一次的代码,模拟多次的话,外面再套个循环应该就行了。然后再根据均方误差(一般用这个做准则的多)来挑最好的。
话说你的数据最好别是分钟或者3s切片数据,不然R这速度和内存够呛。
N 问题三:研究衍生品的时候为什么用几何布朗运动来模拟股票价格的运行轨迹 其实很简单,GBM(至少在一定程度上)符合人们对市场的观察。例如,直观的说,股票的价格看起来很像随机游走,再例如,股票价格不会为负,这样起码GBM比普通的布朗运动合适,因为后者是可以为负的。
再稍微复杂一点,对收益率做测试( S(t)/S(t-1) - 1)做测试,发现,哎居然还基本是个正态分布。收益率是正态的,股价就是GBM模型
总之,就是大家做了很多统计测试,发现假设成GBM还能很好的逼近真实数值,比较接近事实。所以就用这个。
其实将精确的数学模型应用到金融的时间非常短。最早是1952年的Markowitz portfolio selection. 那个其实就是一个简单的优化问题。后来的CAPM APT等诸多模型,也仅仅研究的是一系列证券,他们之间回报、收益率以及其他影响因素关系,没有涉及到对股价运动的描述。
第一次提出将股价是GBM应用在严格模型的是black-scholes model 。在这个模型中提出了若干个假设,其中一个就是股价是GBM的。
问题四:如何确定几何布朗运动模型中的参数 几何布朗运动只是模型,是 exp{Bt }这样的形式。你用模型什么事是关键,确定参数,在英文中叫calibration.
如果你是用 geometric brownian motion 去模型options, 这样的东西,是关系你的模型本身,比如black-scholes模型,关于它的参数calibration,这样的技术其实已经很完备,经典的金融数学教科书上都有的,其主要是根据市场上option的价格反推出模型的参数的。