源自:https://bbs.pinggu.org/thread-3622067-1-1.html
基础准备1:
##  strptime的一些实例:用于时间字符串的转换
dates <- c("02/27/92", "02/27/92", "01/14/92", "02/28/92", "02/01/92")
times <- c("23:03:20", "22:29:56", "01:03:30", "18:21:03", "16:56:26")
x <- paste(dates, times)
strptime(x, "%m/%d/%y %H:%M:%S")
#  The answer
# [1] "1992-02-27 23:03:20" "1992-02-27 22:29:56"
# [3] "1992-01-14 01:03:30" "1992-02-28 18:21:03"
# [5] "1992-02-01 16:56:26"
strptime(c("2006-01-08 10:07:52", "2006-08-07 19:33:02"),"%Y-%m-%d %H:%M:%S")
#  以上得到了相同的结果
# [1] "2006-01-08 10:07:52" "2006-08-07 19:33:02"
strptime(c("2006:01:08 10:07:52", "2006:08:07 19:33:02"),"%Y:%m:%d %H:%M:%S")
# [1] "2006-01-08 10:07:52" "2006-08-07 19:33:02"
strptime(c("06:01:08 10:07:52", "06:08:07 19:33:02"),"%y:%m:%d %H:%M:%S")
#  [1] "2006-01-08 10:07:52" "2006-08-07 19:33:02"
strptime(c("06?01?08 10:07:52", "98?08?07 19:33:02"),"%y?%m?%d %H:%M:%S")
#  [1] "2006-01-08 10:07:52" "1998-08-07 19:33:02"
##################################################################
##################################################################
基础准备2
#  as.POSIXlt用于得到区域的日期时间或者把时间撮数据转成POSIXlt类别
Sys.time()
#  [1] "2015-03-20 12:57:38 CST"
as.POSIXlt(Sys.time(), "EST" ) 
#  "2015-03-19 23:57:59 EST"
as.POSIXlt(Sys.time(), "GMT")
#  [1] "2015-03-20 04:58:08 GMT"
as.POSIXlt(Sys.time(), "America/New_York") 
#  [1] "2015-03-20 01:00:04 EDT"
z <- 1472562988
as.POSIXct(z, origin = "1960-01-01")   
#  [1] "2006-08-30 21:16:28 CST"
as.POSIXlt(strptime(c("06?01?08 10:07:52", "98?08?07 19:33:02"),"%y?%m?%d %H:%M:%S"))
#  [1] "2006-01-08 10:07:52" "1998-08-07 19:33:02"
##################################################################
##################################################################
实例
数据:
本帖隐藏的内容
##################################################################
##################################################################
#  代码实例
rm(list=ls())
setwd("D:/MyDriversRoad/R_files12")
#  设定我自己的R语言工作目录
#  下面有数据
Data<-read.csv(file='HS300_240minuete.csv', header=TRUE, col.names=c("Date","Tick"))
#  查看数据
View(Data)
Data$Date<-as.POSIXlt(strptime(Data$Date,"%Y/%m/%d %H:%M"))
#  注意举例中的数据没有分钟(Seconds)
#  获取对数收益率(Log Return)
#  LogReturn(t)=log(Stock(t)/Stock(t-1))=log(Stock(t))-log(Stock(t-1))
logtick<-diff(log(Data$Tick))
#  获取标准化的对数收益率(对数据进行标准化)
logtick <- (logtick-mean(logtick))/sd(logtick)
#  seq制造等差数列:以floor(min(logtick))为初值,以ceiling(max(logtick))为终值,0.01为间隔
x <- seq(floor(min(logtick)), ceiling(max(logtick)), by=0.01)
#  画图
par(family='serif')
#  density(logtick)得到对数收益率的核密度,log="y"意味着y轴进行对数化
plot(density(logtick), log="y", xlab="", ylab="", axes=FALSE, main="Log Scale")
#  dnorm(x)求得的是x正态分布的密度
lines(x,dnorm(x), lty=2)
#  一个是实际的收益密度,一个是理论的收益密度,lty代表线型
legend("topleft", legend=c("Empirical","Theoretical"), lty=c(1,2))
#  此目的在于比较股票的对数收益率是否能够拟合正态分布
#  或者说股票的对数收益率是否服从正态分布
 
# 此目的在于比较股票的对数收益率是否能够拟合正态分布
# 或者说股票的对数收益率是否服从正态分布