用R分析虚拟币大盘
授人以渔不如教人编程 - "老子"
惊觉好久没有炫耀最牛的R语言了,貌似没有继续学习的样子。。。其实我一直都在暗中学习哦。虚拟币大盘这么跌宕起伏这么乱,当然要R才行哦。今天就简单介绍几行小程序,让你乱中取静,心情自然凉,凉飕飕又一夏,夏日的啥么茶。。。
那同学们我们开始吧。
首先简单装两个函数包,“BatchGetSymbols” 和 “TTR”,前者是从雅虎财经直接抓股票价格数据的,后者是算统计平均之流的。这两个包都有若干个相依存的函数包,让它们装就是了。
install.packages(c("BatchGetSymbols","TTR"))
嗯,先抓个比特币的价格来看看,然后画个两个星期的价格平滑曲线:
"# set ticker"
"# 莱特币是 c('LTC-USD'), 然后 以太币是 c('ETH-USD')"
ticker.symb <- c('BTC-USD')
"# 抓个一年的美刀价格吧"
N.day <- 365
first.date <- Sys.Date() - N.day
last.date <- Sys.Date()
l.out <- BatchGetSymbols(tickers = ticker.symb,
first.date = first.date, last.date = last.date,
cache.folder = file.path(tempdir(), 'BGS_Cache') ) # cache in tempdir()
date.vec <- as.Date(l.out$df.tickers$ref.date)
avg.price.vec <- (l.out$df.tickers$price.open + l.out$df.tickers$price.close)/2
"# 两星期平均线, SMA = smoothing moving average"
MA.2wk.avg.vec <- SMA(avg.price.vec, n = 2*7)
plot(date.vec, avg.price.vec, type = "l",
xlab = "", ylab = "price", xaxt = "n", log = "y", main = ticker.symb)
axis.Date(1, at = seq(min(date.vec),
max(date.vec)+2, "months"),
las = 2, format = "%m-%d/%y")
lines(date.vec, MA.2wk.avg.vec, col = "red", lwd = 2)
legend("topleft",c("price","2-week MA"),
col = c("black", "red"), lwd = c(1, 2))
只改一个变量,重跑一遍以太币
ticker.symb <- c('ETH-USD')
接着看看莱特币
ticker.symb <- c('LTC-USD')
当当当~ 有没有觉得一下子虚拟币的大局都清晰了呢?
(不用谢)
你那里天气如何?才子,才女,你参加月旦评了吗?这可是我们中文区最大的活动之一啊。如果不想再收到我的留言,请回复“取消”。