利用R语言打造量化分析平台
利用R语言打造量化分析平台
具体利用quantmod包实现对股票的量化分析
1.#1.API读取在线行情
2.#加载quantmod包
3.if(!require(quantmod)){
4. install.packages("quantmod")
5.}
6.#获取股票行情指数
7.Quote=function(code){
8. index=match(code,universes)
9. temp=lapply(universes,get)
10. return(temp[[index]])
11.}
12.#基本配置
13.universes<<-c("000001.SZ","QIHU","MOMO")#以陌陌,360,A股的平安银行为例
14.from="2015-01-04"#开始时间
15.to=Sys.Date()#结束时间设为当前日期
16.src="yahoo"#来源雅虎财经
17.
18.#行情加载
19.quantmod::getSymbols(universes,from=from,to=to,src=src)
20.
21.#绘制行情信息
22.quantmod::chartSeries(Quote("MOMO"),up.col='red',dn.col='green',TA="addVo();addADX();addMACD();addSMA(n=10);addBBands(n=14,sd=2,draw=\"bands\")")
1.#2.利用CSV读取离线行情
2.#以平安银行为例
3.#加载zoo时间序列包
4.library(zoo)
5.library(quantmod)
6.#配置文件路径
7.filePath='/home/KANO/Rfile/temp.csv'
8.#读取CSV并转化时间格式
9.csv<-read.csv(filePath,header=TRUE,sep=",")
10.csv$LZ_GPA_QUOTE_TCLOSE<-as.POSIXct(as.character(csv$LZ_GPA_QUOTE_TCLOSE),tz="",format="%Y%m%d")
11.#转化为zoo类型
12.temp=read.zoo(csv)
13.#转化为xts类型
14.payh=as.xts(temp[,1]);colnames(payh)="Close"
15.#绘图
16.chartSeries(payh,name="000001.SZ")
17.#添加MACD曲线
18.addMACD()
1.#3.quantmod包指标函数名(使用只需要运行下列函数就能添加相关曲线)
2.#威尔斯怀尔德移动方向指标
3.addADX()
4.#真实波幅
5.addATR()
6.#布林通道
7.addBBands()
8.#布林带宽
9.addBBands()
10.#百分比布林带
11.addBBands()
12.#顺势指标
13.addCCI()
14.#资金流动
15.addCMF()
16.#钱德动量指标
17.addCMO()
18.#双指数移动平均
19.addDEMA()
20.#离势价格偏离指数
21.addDPO()
22.#指数平滑移动平均线
23.addEMA()
24.#价格信封
25.addEnvelope()
26.#指数量权移动平均线
27.addEVWMA()
28.#期权期货到期
29.addExpiry()
30.#异同平均线
31.addMACD()
32.#动量
33.addMomentum()
34.#变动率
35.addROC()
36.#相对强弱指数
37.addRSI()
38.#转折点信号
39.addSAR()
40.#简单移动平均线
41.addSMA()
42.#随机动量指数
43.addSMI()
44.#三重平滑振荡指数
45.addTRIX()
46.#成交量
47.addVo()
48.#加权移动平均法
49.addWMA()
50.#零延迟指数移动平均线
51.addZLEMA()
利用R语言打造量化分析平台的更多相关文章
- R语言重要数据集分析研究——需要整理分析阐明理念
1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标 ...
- R语言- 实验报告 - 利用R语言脚本与Java相互调用
一. 实训内容 利用R语言对Java项目程序进行调用,本实验包括利用R语言对java的.java文件进行编译和执行输出. 在Java中调用R语言程序.本实验通过eclipse编写Java程序的方式,调 ...
- linux下利用elk+redis 搭建日志分析平台教程
linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...
- 利用R语言进行交互数据可视化(转)
上周在中国R语言大会北京会场上,给大家分享了如何利用R语言交互数据可视化.现场同学对这块内容颇有兴趣,故今天把一些常用的交互可视化的R包搬出来与大家分享. rCharts包 说起R语言的交互包,第一个 ...
- 利用R语言制作出漂亮的交互数据可视化
利用R语言制作出漂亮的交互数据可视化 利用R语言也可以制作出漂亮的交互数据可视化,下面和大家分享一些常用的交互可视化的R包. rCharts包 说起R语言的交互包,第一个想到的应该就是rCharts包 ...
- R语言重要数据集分析研究——R语言数据集的字段含义
R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...
- R语言做相关性分析
衡量随机变量相关性的方法主要有三种:pearson相关系数,spearman相关系数,kendall相关系数: 1. pearson相关系数,亦即皮尔逊相关系数 pearson相关系数用来 ...
- R语言重要数据集分析研究—— 数据集本身的分析技巧
数据集本身的分析技巧 作者:王立敏 文章来源:网络 1.数据集 数据集,又称为资料集.数据集合或资料集合,是一种由数据所组成的集合. Data set(或dat ...
- R语言-离职率分析
案例:员工流失是困扰企业的关键因素之一,在这次的分析中我将分析以下内容: 对一些重要变量进行可视化及探索分析,收入,晋升,满意度,绩效,是否加班等方面进行单变量分析 分析员工流失的因素,探索各个变量的 ...
随机推荐
- 测试工具:insure++
CSDN资源:http://www.csdn.net/tag/insure%252B%252B 安装. 1,简介:http://baike.baidu.com/link?url=bCcoWd3xi07 ...
- 设计模式--委托模式C++实现
原文章地址:http://www.cnblogs.com/zplutor/archive/2011/09/17/2179756.html [委托模式 C++实现] 我对.Net的委托模型印象很深刻,使 ...
- GDAL的安装和配置(编译proj.4)
1.下载地址 http://trac.osgeo.org/gdal/wiki/DownloadSource 下面是两个版本: http://pan.baidu.com/s/1bntuXER (1.1 ...
- android ellipsize 属性详解
TextView中内容过长时添加省略号的属性,即ellipsize 用法如下: 在XML文件中设置: android:ellipsize = "end" //省略号在结尾 andr ...
- Android Fragment(碎片)的使用
简介 在Android中Fragment为一种可以嵌入活动中的UI片段.能让程序更加合理地利用大屏幕的空间. 使用方法 1.我们首先新建的一个onefragment.xml文件. <?xml v ...
- 在右键添加Cmder here选项,添加启动Cmder的快捷键
右键菜单添加“Cmder here” 打开cmder,在其中输入: cmder /register user 或 cmder /register all 即可 设置启动cmder的快捷键 右键 C ...
- Android下EditText中的字体不统一问题
Android下EditText中的字体不统一问题 好久没写,今天心情好略记下解决的某bug 在一个登录界面有帐号和密码两个EditText,但是却发现两个EditText的hint的英文字体不同,看 ...
- Visual Studio 2015 Update 3 RC 候选预览版粗来了
.Net 基金会 http://www.dotnetfoundation.org/ 更新的真快,刚打完2的补丁包,3就粗来了............ https://www.visualstudio. ...
- Go语言语法汇总
最近看了看GoLang,把Go语言的语法总结了一下,做个快速参考 数据类型 var varName type,var var1,var2… type,var varName type = Value, ...
- hdu 5093 Battle ships 匈牙利 很巧妙的建图思路
//这题逼我把匈牙利学了 之前一直很勤快敲网络流 而且不以为耻反以为荣 解:首先按行扫描编号,如果在同一块中(即可以相互攻击),那么将其标为相同的数组,对列也做同样的操作. 然后扫描整张图,如果行编号 ...