利用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语言打造量化分析平台的更多相关文章

  1. R语言重要数据集分析研究——需要整理分析阐明理念

    1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标 ...

  2. R语言- 实验报告 - 利用R语言脚本与Java相互调用

    一. 实训内容 利用R语言对Java项目程序进行调用,本实验包括利用R语言对java的.java文件进行编译和执行输出. 在Java中调用R语言程序.本实验通过eclipse编写Java程序的方式,调 ...

  3. linux下利用elk+redis 搭建日志分析平台教程

    linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm   elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...

  4. 利用R语言进行交互数据可视化(转)

    上周在中国R语言大会北京会场上,给大家分享了如何利用R语言交互数据可视化.现场同学对这块内容颇有兴趣,故今天把一些常用的交互可视化的R包搬出来与大家分享. rCharts包 说起R语言的交互包,第一个 ...

  5. 利用R语言制作出漂亮的交互数据可视化

    利用R语言制作出漂亮的交互数据可视化 利用R语言也可以制作出漂亮的交互数据可视化,下面和大家分享一些常用的交互可视化的R包. rCharts包 说起R语言的交互包,第一个想到的应该就是rCharts包 ...

  6. R语言重要数据集分析研究——R语言数据集的字段含义

    R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...

  7. R语言做相关性分析

    衡量随机变量相关性的方法主要有三种:pearson相关系数,spearman相关系数,kendall相关系数: 1.       pearson相关系数,亦即皮尔逊相关系数 pearson相关系数用来 ...

  8. R语言重要数据集分析研究——  数据集本身的分析技巧

    数据集本身的分析技巧           作者:王立敏           文章来源:网络 1.数据集 数据集,又称为资料集.数据集合或资料集合,是一种由数据所组成的集合. Data set(或dat ...

  9. R语言-离职率分析

    案例:员工流失是困扰企业的关键因素之一,在这次的分析中我将分析以下内容: 对一些重要变量进行可视化及探索分析,收入,晋升,满意度,绩效,是否加班等方面进行单变量分析 分析员工流失的因素,探索各个变量的 ...

随机推荐

  1. OCMOCM

    14年,OCM考试费12000 15年,考试费19800 对于我来说,1,2年之后是否换工作还是个未知数 在本单位考这个貌似没什么用处,工资也不会突然就涨很多 跳槽的话,专门做数据库感觉压力还挺大 年 ...

  2. MySql高效分页SQL

    public string GetQuerySql(ITSPAreaQueryModel model, object state = null) { ); sqlBuilder.AppendForma ...

  3. PHP基础之 file_get_contents() 函数

    定义和用法 file_get_contents() 函数把整个文件读入一个字符串中. 和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串. file_get ...

  4. Java转换

    1.如何将字符串String转化为整数int  int i = Integer.parseInt(str);   int i = Integer.valueOf(my_str).intValue(); ...

  5. Go语言中怎样判断数据类型_不懂的木匠_新浪博客

    要判断数据类型,可以用Go的空接口: 建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型 func t(i interface{}) {  //函数t有一个参数i  switch i ...

  6. weblogic上部署应用程序

    weblogic上部署应用程序有三种方法: 一:修改配置文件config.xml在文件中加入如下代码片段: <app-deployment> <name>FAB</nam ...

  7. js禁止中文输入 最简洁的【禁止输入中文】

    方法一:禁止中文输入法 <input type="text"  > 方法二:禁止黏贴,禁止拖拽,禁止中文输入法! 这种方法是最强的禁止 中文输入 <input t ...

  8. ZOJ问题--hdu3788

    ZOJ问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  9. SQL Server 影响dbcc checkdb的 8 种因素

    第一种: 数据库的大小. 第二种: IO系统的速度. 第三种: 当前CPU的负荷. 第四种: 当前数据库的并发修改量.因为并发修改量越大维护数据库快照的成本就越高,dbcc 的过程中要创建快照,所以. ...

  10. Vector, ArrayList, Array

    JAVA新手在使用JAVA的时候大概都会遇到这个问题: JAVA中的Array, ArrayList, Vector, List, LinkedList有什么样的区别?尤其是Vector, Array ...