如何用autotrader.com获取股票历史行情数据

404 - 找不到文件或目录。
404 - 找不到文件或目录。
您要查找的资源可能已被删除,已更改名称或者暂时不可用。5732人阅读
R语言(96)
本博文是利用quantmod包中的ETL函数下载Apple,Microsoft,Oracle,Google四家公司全票行情数据,并进行简要分析
quantmodbao包的ETL简介,更多详细内容请查阅帮助文档。
抓去四家公司的全部股票行情数据
new.environment &- new.env()
library(quantmod)
## Loading required package: Defaults
## Loading required package: xts
## Loading required package: zoo
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##& &&&as.Date, as.Date.numeric
## Loading required package: TTR
## Version 0.4-0 included new data defaults.
See ?getSymbols.
getSymbols(c(&AAPL&, &ORCL&, &MSFT&, &GOOG&),
src = &yahoo&, env = new.environment)
##& &&&As of 0.4-0, 'getSymbols' uses env=parent.frame()
##&&auto.assign=TRUE by default.
##&&This&&behavior&&will be&&phased out in
0.5-0&&when the call&&will
##&&default to use auto.assign=FALSE. getOption(&getSymbols.env&)
##&&getOptions(&getSymbols.auto.assign&) are
now checked for alternate defaults
##&&This message is shown once per session
and may be disabled by setting&
##&&options(&getSymbols.warning4.0&=FALSE).
See ?getSymbol for more details
## [1] &AAPL& &ORCL& &MSFT& &GOOG&
# 查看抓取的全量数据情况
str(get(&AAPL&, env = new.environment))
## An 'xts' object on /
containing:
##& &Data: num [1:] 86.3 84 85.8
86 86.5 ...
##&&- attr(*, &dimnames&)=List of 2
##& &..$ : NULL
##& &..$ : chr [1:6] &AAPL.Open& &AAPL.High&
&AAPL.Low& &AAPL.Close& ...
##& &Indexed by objects of class: [Date] TZ:
##& &xts Attributes:&&
## List of 2
##&&$ src& & : chr &yahoo&
##&&$ updated: POSIXct[1:1], format: &
str(get(&ORCL&, env = new.environment))
## An 'xts' object on /
containing:
##& &Data: num [1:] 17.2 17.6 17.6
17.6 17.9 ...
##&&- attr(*, &dimnames&)=List of 2
##& &..$ : NULL
##& &..$ : chr [1:6] &ORCL.Open& &ORCL.High&
&ORCL.Low& &ORCL.Close& ...
##& &Indexed by objects of class: [Date] TZ:
##& &xts Attributes:&&
## List of 2
##&&$ src& & : chr &yahoo&
##&&$ updated: POSIXct[1:1], format: &
str(get(&MSFT&, env = new.environment))
## An 'xts' object on /
containing:
##& &Data: num [1:] 29.9 29.7 29.6
29.6 30 ...
##&&- attr(*, &dimnames&)=List of 2
##& &..$ : NULL
##& &..$ : chr [1:6] &MSFT.Open& &MSFT.High&
&MSFT.Low& &MSFT.Close& ...
##& &Indexed by objects of class: [Date] TZ:
##& &xts Attributes:&&
## List of 2
##&&$ src& & : chr &yahoo&
##&&$ updated: POSIXct[1:1], format: &
str(get(&GOOG&, env = new.environment))
## An 'xts' object on /
containing:
##& &Data: num [1:17, 1:6] 568 561 567 559
##&&- attr(*, &dimnames&)=List of 2
##& &..$ : NULL
##& &..$ : chr [1:6] &GOOG.Open& &GOOG.High&
&GOOG.Low& &GOOG.Close& ...
##& &Indexed by objects of class: [Date] TZ:
##& &xts Attributes:&&
## List of 2
##&&$ src& & : chr &yahoo&
##&&$ updated: POSIXct[1:1], format: &
# 查看四家公司前六情况
head(get(&AAPL&, env = new.environment))
##& && && && &AAPL.Open AAPL.High AAPL.Low
AAPL.Close AAPL.Volume
## & &&&86.29& &&&86.58& & 81.90&
&& &83.80& &
## & &&&84.05& &&&85.95& & 83.82&
&& &85.66& &
## & &&&85.77& &&&86.20& & 84.40&
&& &85.05& &
## & &&&85.96& &&&86.53& & 85.28&
&& &85.47& &
## & &&&86.45& &&&92.98& & 85.15&
&& &92.57& &
## & &&&94.75& &&&97.80& & 93.45&
&& &97.00& &
##& && && && &AAPL.Adjusted
## & && && &80.54
## & && && &82.33
## & && && &81.75
## & && && &82.15
## & && && &88.97
## & && && &93.23
head(get(&ORCL&, env = new.environment))
##& && && && &ORCL.Open ORCL.High ORCL.Low
ORCL.Close ORCL.Volume
## & &&&17.22& &&&17.78& & 17.10&
&& &17.51& &
## & &&&17.55& &&&17.87& & 17.30&
&& &17.68& &
## & &&&17.62& &&&17.76& & 17.44&
&& &17.64& &
## & &&&17.63& &&&17.93& & 17.45&
&& &17.86& &
## & &&&17.93& &&&17.98& & 17.65&
&& &17.82& &
## & &&&17.66& &&&17.80& & 17.55&
&& &17.77& &
##& && && && &ORCL.Adjusted
## & && && &16.66
## & && && &16.82
## & && && &16.78
## & && && &16.99
## & && && &16.95
## & && && &16.90
head(get(&MSFT&, env = new.environment))
##& && && && &MSFT.Open MSFT.High MSFT.Low
MSFT.Close MSFT.Volume
## & &&&29.91& &&&30.25& & 29.40&
&& &29.86& &
## & &&&29.70& &&&29.97& & 29.44&
&& &29.81& &
## & &&&29.63& &&&29.75& & 29.45&
&& &29.64& &
## & &&&29.65& &&&30.10& & 29.53&
&& &29.93& &
## & &&&30.00& &&&30.18& & 29.73&
&& &29.96& &
## & &&&29.80& &&&29.89& & 29.43&
&& &29.66& &
##& && && && &MSFT.Adjusted
## & && && &25.27
## & && && &25.23
## & && && &25.08
## & && && &25.33
## & && && &25.35
## & && && &25.10
head(get(&GOOG&, env = new.environment))
##& && && && &GOOG.Open GOOG.High GOOG.Low
GOOG.Close GOOG.Volume
## & &&&568.0& &&&568.0& & 552.9&
&& &558.5& && & 13100
## & &&&561.2& &&&566.4& & 558.7&
&& &560.0& && & 41100
## & &&&566.9& &&&567.0& & 556.9&
&& &557.0& && & 10800
## & &&&558.7& &&&568.5& & 558.7&
&& &567.2& && &&&7900
## & &&&600.0& &&&604.8& & 562.2&
&& &567.0& && &146700
## & &&&569.9& &&&587.3& & 564.1&
&& &569.7& &&&5085200
##& && && && &GOOG.Adjusted
## & && && &558.5
## & && && &560.0
## & && && &557.0
## & && && &567.2
## & && && &567.0
## & && && &569.7
1)求出Apple公司在3.10的股票总成交量使用
getSymbols(&AAPL&, src = &yahoo&, from = &&,
## [1] &AAPL&
# 查看抓取数据的情况
summary(AAPL)
##& && &Index& && && && &&&AAPL.Open& &&&AAPL.High&
&& &AAPL.Low&&
##&&Min.& &:& &Min.& &:388& &Min.&
&:400& &Min.& &:385&&
##&&1st Qu.:& &1st Qu.:434& &1st
Qu.:438& &1st Qu.:429&&
##&&Median :& &Median :455& &Median
:458& &Median :449&&
##&&Mean& &:& &Mean& &:460& &Mean&
&:464& &Mean& &:454&&
##&&3rd Qu.:& &3rd Qu.:488& &3rd
Qu.:492& &3rd Qu.:484&&
##&&Max.& &:& &Max.& &:554& &Max.&
&:555& &Max.& &:542&&
##& & AAPL.Close& &AAPL.Volume& && & AAPL.Adjusted
##&&Min.& &:390& &Min.& &: 6965200& &Min.&
##&&1st Qu.:432& &1st Qu.:& &1st Qu.:423&&
##&&Median :453& &Median :& &Median
##&&Mean& &:459& &Mean& &:& &Mean&
##&&3rd Qu.:488& &3rd Qu.:& &3rd Qu.:482&&
##&&Max.& &:549& &Max.& &:& &Max.&
# 计算2013年1月到10月的股票总成交量
sum(Vo(AAPL))
## [1] 3.219e+09
2)找出这些股票暴涨暴跌的时间点(例如开盘价或收盘价比前一天涨跌幅度超过2%),通过搜索引擎寻找是什么原因导致这些暴涨暴跌,观察(或用程序分析)数据,看就暴涨暴跌事件是否有可以利用的买卖规律
# 查看AAPL涨跌幅超过2%的情况
AAPL &- Delt(Cl(get(&AAPL&, env = new.environment)))
length(AAPL[which(AAPL & 0.02), ])
## [1] 266
plot(AAPL[which(AAPL & 0.02), ])
# 查看ORCL涨跌幅超过2%的情况
ORCL &- Delt(Cl(get(&ORCL&, env = new.environment)))
length(ORCL[which(ORCL & 0.02), ])
## [1] 209
plot(ORCL[which(ORCL & 0.02), ])
# 查看MSFT涨跌幅超过2%的情况
MSFT &- Delt(Cl(get(&MSFT&, env = new.environment)))
length(MSFT[which(MSFT & 0.02), ])
## [1] 185
plot(MSFT[which(MSFT & 0.02), ])
# 查看GOOG涨跌幅超过2%的情况
GOOG &- Delt(Cl(get(&GOOG&, env = new.environment)))
length(GOOG[which(GOOG & 0.02), ])
plot(GOOG[which(GOOG & 0.02), ])
## Error: missing value where TRUE/FALSE needed
GOOG股票为出现收盘价涨跌幅超过2%的情况(其股票从号统计至今),其他三家股票(从2007年统计至今)的涨跌幅超过2%的情况来看,波动频数与波动浮动较大的均处于2008年、2009年,主要是由于全球经济动荡原因所致。
3)截取一段时间内这四家公司股价数据(注意分红派息除权对股价的影响),用R中的相关性分析判断股价之间的相关性,或者用R基础课程第八周所讲的MIC指标对其进行分析
# 查看能抓取GOOG股票信息的时间段
periodicity(get(&GOOG&, env = new.environment))
## Daily periodicity from
# 故对四家公司的股票抓取时间都统一为从到
getSymbols(c(&AAPL&, &ORCL&, &MSFT&, &GOOG&),
src = &yahoo&, env = new.environment,&
& & from = &&, to = &&)
## [1] &AAPL& &ORCL& &MSFT& &GOOG&
# 将四家公司股票的每天调整价格整理在一个数据框中
m &- cbind(Ad(get(&AAPL&, env = new.environment)),
Ad(get(&ORCL&, env = new.environment)),&
& & Ad(get(&MSFT&, env = new.environment)),
Ad(get(&GOOG&, env = new.environment)))
# 利用corr.test()函数计算四家公司股票的调整价格的相关系数和概率,并画出相关系数图
library(psych)
corr.test(as.data.frame(m))
## Call:corr.test(x = as.data.frame(m))
## Correlation matrix&
##& && && && && &AAPL.Adjusted ORCL.Adjusted
MSFT.Adjusted GOOG.Adjusted
## AAPL.Adjusted& && && & 1.00& && && & 0.51&
&& && & 0.70& && && & 0.71
## ORCL.Adjusted& && && & 0.51& && && & 1.00&
&& && & 0.84& && && & 0.57
## MSFT.Adjusted& && && & 0.70& && && & 0.84&
&& && & 1.00& && && & 0.76
## GOOG.Adjusted& && && & 0.71& && && & 0.57&
&& && & 0.76& && && & 1.00
## Sample Size&
## Probability values (Entries above the diagonal
are adjusted for multiple tests.)&
##& && && && && &AAPL.Adjusted ORCL.Adjusted
MSFT.Adjusted GOOG.Adjusted
## AAPL.Adjusted& && && & 0.00& && && & 0.04&
&& && & 0.01& && && & 0.01
## ORCL.Adjusted& && && & 0.04& && && & 0.00&
&& && & 0.00& && && & 0.04
## MSFT.Adjusted& && && & 0.00& && && & 0.00&
&& && & 0.00& && && & 0.00
## GOOG.Adjusted& && && & 0.00& && && & 0.02&
&& && & 0.00& && && & 0.00
##&&To see confidence intervals of the correlations,
print with the short=FALSE option
library(corrplot)
corrplot.mixed(cor(m), lower = &ellipse&,
upper = &circle&)
从相关系数中容易看出股票ORCL与MSFT间的相关系数达到0.84,属于强相关;APPL与MSFT、GOOG股票间的相关系数也超过0.7,属于明显相关。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:185213次
积分:2464
积分:2464
排名:第14069名
原创:40篇
转载:152篇
评论:29条
(1)(1)(6)(1)(6)(10)(2)(2)(3)(3)(1)(7)(5)(6)(31)(20)(62)(2)(8)(13)

我要回帖

更多关于 autotrader canada 的文章

 

随机推荐