R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整

目录

R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整

R 语言特点

R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整


R可以在CRAN(Comprehensive R Archive Network,http://cran.r-project.org)上免费下载。

R 语言特点

  • R 语言环境软件属于 GNU 开源软件,兼容性好、使用免费
  • 语法十分有利于复杂的数学运算
  • 数据类型丰富,包括向量、矩阵、因子、数据集等常用数据结构
  • 代码风格好,可读性强

虽然 R 主要用于统计分析或者开发统计相关的软件,但也有人用作矩阵计算。其分析速度可媲美专用于矩阵计算的自由软件 GNU Octave 和商业软件 MATLAB。

R是一种编程语言,也是统计计算和绘图的环境,它汇集了许多函数,能够提供强大的功能。
R语言软件界面简陋,通常不直接使用,而是用图形界面的Rstudio。

RStudio是免费提供的开源集成开发环境(IDE)。RStudio提供了一个具有很多功能的环境,使R更容易使用,是在终端中使用R的绝佳选择。

RStudio是一款R语言的IDE,R自带的环境操作起来可能不是方便,而Rstudio很好地解决了这个问题,而且它还具有调试、可视化等功能,支持纯R脚本、Rmarkdown (脚本文档混排)、Bookdown (脚本文档混排成书)、Shiny (交互式网络应用)等。

  • 包是R函数、数据、预编译代码以一种定义完善的格式组成的集合。计算机上存储包的目录称为库(library)。函数.libPaths()能够显示库所在的位置, 函数library()则可以显示库中有哪些包。
  • R自带了一系列默认包(包括base、datasets、utils、grDevices、graphics、stats以及methods),它们提供了种类繁多的默认函数和数据集。其他包可通过下载来进行安装。安装好以后,它们必须被载入到会话中才能使用。命令search()可以告诉你哪些包已加载并可使用。
  • 目前有几千个称为包(package)的用户贡献模块可从http://cran.r-project.org/web/packages下载。

R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整

library(quantmod)# 不设置来源则默认从雅虎金融下载;
# 雅虎金融上大量指数品种都以"^"开头
# from,to参数设置读取历史数据的时间段
getSymbols("^GSPC",src="yahoo",from="1994-1-1",to=Sys.Date())
print(head(GSPC));print(tail(GSPC))
print(class(GSPC))
print(is.OHLC(GSPC))
print(is.OHLCV(GSPC))# 对股票进行除权除息调整
# 除权除息对于早期历史数据影响更明显
getSymbols("BIDU", from="2005-01-01", src="yahoo")
head(BIDU)
head(BIDU.a  <- adjustOHLC(BIDU))   # 默认调整方式不使用Adjusted列的数据
head(BIDU.uA <- adjustOHLC(BIDU, use.Adjusted=T)) 

需要从yahoo下载数据,需要注意的是你的电脑能够打开雅虎金融的网站。

https://finance.yahoo.com/

笔者的网络不是很稳定、下载不稳定、有时候能够稳定下载,有时候不行。

网络稳定才可以。

另外,国内可以使用tushare社区提供的数据,该开源API使用python接口。

Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到Python pandas包在金融量化分析中体现出的优势,Tushare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。当然,如果您习惯了用Excel或者关系型数据库做分析,您也可以通过Tushare的数据存储功能,将数据全部保存到本地后进行分析。应一些用户的请求,从0.2.5版本开始,Tushare同时兼容Python 2.x和Python 3.x,对部分代码进行了重构,并优化了一些算法,确保数据获取的高效和稳定。

Tushare -财经数据接口包

安利一个R语言的优秀博主及其CSDN专栏:

博主博客地址

博主R语言专栏地址(R语言从入门到机器学习、持续输出已经超过1000篇文章)

参考:R

R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整相关推荐

  1. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、获取美国10年期债券收益率数据

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.获取美国10年期债券收益率数据 目录 R语言使用quantmod包的getSymbols函数从指定金融数 ...

  2. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、从雅虎金融读取著名港股长江实业的股票数据

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.从雅虎金融读取著名港股长江实业的股票数据 目录 R语言使用quantmod包的getSymbols函数从 ...

  3. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、从雅虎金融读取著名的苹果公司的全部股票数据

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.从雅虎金融读取著名的苹果公司的全部股票数据 目录 R语言使用quantmod包的getSymbols函数 ...

  4. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、美股不使用后缀、其它股票需要使用后缀:大陆沪市使用:“.SS“,深市使用:“.SZ“,香港使用:“.HK

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.美股不使用后缀.其它股票需要使用后缀:大陆沪市使用:".SS",深市使用:" ...

  5. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、对股票进行除权除息调整、设置使用Adjusted列的数据

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.对股票进行除权除息调整.设置使用Adjusted列的数据 目录 R语言使用quantmod包的getSy ...

  6. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、计算除权除息之后的开盘价收盘价收益率和收盘价收益率、保持不变

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.计算除权除息之后的开盘价收盘价收益率和收盘价收益率.保持不变 目录 R语言使用quantmod包的get ...

  7. R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、获取欧元兑美元汇率数据、每次请求只能获取500天以内的数据、多了会报错

    R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据.获取欧元兑美元汇率数据.每次请求只能获取500天以内的数据.多了会报错 目录 R语言使用quantmod ...

  8. R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析、使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标y的关系

    R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析.使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标值y的关 ...

  9. R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵)、使用rotate参数指定进行斜交旋转提取因子、使用fa.diagram函数可视化斜交旋转因子分析、并解读可视化图形

    R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵).使用rotate参数指定进行斜交旋转提取因子.使用fa.diagram函数可视化斜交旋转因子分析.并解读可视化图形 目 ...

最新文章

  1. 卧加加工斜孔怎么计算机械坐标,卧加B轴旋转后坐标怎么计算
  2. linux创建多个子进程,[Linux进程]使用fork函数创建多个子进程
  3. 雅客EXCEL(5)-tab键、同组数据录入、提取重复值、提取身份证号码的出生日期
  4. helm安装postgres_Helm 入门介绍 Kubernetes 上的包管理软件
  5. 阿里云ECS官网域名映射及Tomcat配置调整,最终使用HTTPS和域名直接访问
  6. rest api是什么_一文搞懂什么是RESTful API
  7. 高等代数 北大版 Page 17 推论 证明
  8. 基于内容的图像检索系统设计与实现-java+mysql
  9. python安装apk到手机_安卓手机怎么安装APK文件
  10. 海信android电视直播软件,海信电视如何安装软件?四大方法搞定直播
  11. gwt 测试_GWT应用程序的单元和集成测试
  12. Barcode Reader在45毫秒内实现条码识别
  13. HBase in Practice - 性能、监控及问题解决
  14. 推荐几款公众号写作必备工具
  15. si446使用记录(二):使用WDS3生成头文件
  16. APICloud App开发上手经验分享之模块调用
  17. Java 9 - JShell介绍
  18. 基于诺诺电子发票平台开发开具电子发票
  19. 泛函分析笔记(二)选择公理和佐恩引理
  20. bash shell中的一些基本符号

热门文章

  1. GitHub安装包下载(2020.4.26)
  2. 转载:一篇文章看明白 Android 系统启动时都干了什么
  3. 打造“大国重器”高性能计算,联想与英特尔如何携手点亮数字经济加速度?...
  4. 为什么linux图形引擎那么丑,为什么你的技术文章配图总是那么丑?那是你还没看过这篇教科书般的技术文章配图指南!...
  5. Redis小应用:限时抢购
  6. 全景影像多层级瓦片生成
  7. 关于Socket粘包、半包问题的解决方法
  8. java程序从键盘输入十个整数存入数组a中_并编程实现:_2.用指针方式编写程序:从键盘输入10个整数,并存入数组,要求将10个书中的最大数与第一个输入的数交...
  9. 使用 Leaflet.js 创建地图的入门指南
  10. 虚拟机玩转 Veritas NetBackup(NBU)之 Linux 配置 NBU 客户端