There has already 2 years passed by while Binary.com-is-Rebranding-to-Deriv.com, Here I summarized some previous research papers in Binary.com → Deriv.com and continue from this high-frequency-trading.
if(!suppressPackageStartupMessages(require('BBmisc'))) {
install.packages('BBmisc', dependencies = TRUE, INSTALL_opts = '--no-lock')
}
suppressPackageStartupMessages(require('BBmisc'))
# suppressPackageStartupMessages(require('rmsfuns'))
pkgs <- c('devtools', 'knitr', 'kableExtra', 'tint', 'dygraphs',
'devtools','readr', 'lubridate', 'data.table', 'reprex',
'feather', 'purrr', 'quantmod', 'tidyquant', 'plotly',
'tibbletime', 'furrr', 'flyingfox', 'tidyr', 'jsonlite',
'timetk', 'plyr', 'dplyr', 'stringr', 'magrittr', 'tdplyr',
'tidyverse', 'memoise', 'htmltools', 'formattable', 'rbokeh',
'dash', 'dashCoreComponents', 'dashHtmlComponents', 'dtplyr', ##https://dashr.plotly.com
'zoo', 'forecast', 'seasonal', 'seasonalview', 'rjson',
'rugarch', 'rmgarch', 'mfGARCH', 'sparklyr', 'jcolors',
'microbenchmark', 'dendextend', 'lhmetools', 'ggthemr',
'stringr', 'pacman', 'profmem', 'DescTools', 'ggthemes',
'htmltools', 'echarts4r', 'viridis', 'hrbrthemes',
'fable', 'fabletools')
# https://github.com/mpiktas/midasr
# https://github.com/onnokleen/mfGARCH
# devtools::install_github("business-science/tibbletime")
# devtools::install_github("DavisVaughan/furrr")
suppressAll(lib(pkgs))
# load_pkg(pkgs)
funs <- c('uv_fx.R', 'opt_arma.R', 'multi_seasons.R',
'filterFX.R', 'filter_spec.R', 'mv_fx.R',
'task_progress.R', 'read_umodels.R', 'convertOHLC.R')
l_ply(funs, function(x) source(paste0('./function/', x)))
# spark_install()
# if(FALSE) {
# Not run due to side-effects
# spark_home_set()
# }
# sc <- spark_connect(master = 'local')
#spark_install()
#sc <- spark_connect(master = 'local')
.cl = FALSE
Sys.setenv(TZ = 'Asia/Tokyo')
## options(knitr.table.format = 'html') will set all kableExtra tables to be 'html', otherwise need to set the parameter on every single table.
options(warn = -1, knitr.table.format = 'html')#, digits.secs = 6)
## https://stackoverflow.com/questions/39417003/long-vectors-not-supported-yet-error-in-rmd-but-not-in-r-script
knitr::opts_chunk$set(cache = TRUE, warning = FALSE,
message = FALSE, cache.lazy = FALSE)
## https://www.researchgate.net/post/How_to_solve_Error_cannot_allocate_vector_of_size_12_Gb_in_R
memory.size() ### Checking your memory size
## [1] 430.35
memory.limit() ## Checking the set limit
## [1] 16274
#memory.size(size=500000)
memory.limit(size=56000) ### expanding your memory _ here it goes beyond to your actually memory. This 56000 is proposed for 64Bit.
## [1] 56000
rm(pkgs, funs)
By refer to GARCH模型中的ARIMA(p,d,q)参数最优化 and binary.com Interview Question I - Comparison of Univariate GARCH Models, we know Fractional Intergrated GJR-GARCH is the best fit model. This paper we compare the MIDAS, GARCH-MIDAS and Levy Process models. Here I also test another high frequency trading model mcmcsGARCH. These paper might consider as comparison interday trading before start the high frequency trading via Real Time FXCM.
High Frequency Financial Time Series Prediction - Machine Learning Approach introduce multilayer modelling for high-frequency-trading. binary.com Interview Question I - Tick-Data-HiLo For Daily Trading (Blooper) tried to use Hi-Lo daily dataset for modelling but failed. The paper recommend to use complete itraday dataset.
I noticed that buying early in the morning, around 5am eastern time, tends to give lower prices and selling around 10pm eastern time gives you the highest prices. The wording is weird but i want to know your opinions on how time of day affects the bitcoin trading market. Thank you.
Source : Time of day affects trading prices
From above quotes, we can know the seasonality of price trend daily, weekly, monthly or annually etc. MIDAS and mcsGARCH are the models designate for high frequency trading.
A Comparison of GARCH-class Models and MIDAS Regression with Application in Volatility Prediction and Value at Risk Estimation compares GARCH, eGARCH and MIDAS 3 models with normal and student distribution with matrix. The author concludes that the MIDAS model is the most accurate in volatility prediction but there is inconclusive for VaR 1% and 5%.
Note that there does not seem to be an option to use SARMA models in the “rugarch” package, so you will have to let the “S” part go. But if there is a seasonal pattern (and that is quite likely when it comes to tourist arrivals), you will have to account for it somehow. Consider using exogenous seasonal variables (dummies or Fourier terms) in the conditional mean model via the argument external.regressors inside the argument mean.model in function ugarchspec. Alternatively, note that a SARMA model corresponds to a restricted ARMA model. An approximation of SARMA could thus be an ARMA with the appropriate lag order but without the SARMA-specific parameter restrictions (since those might not be available in “rugarch”).
The quotes above describe about the seasonal factors onto the model which is similar with MIDAS model, kindly refer to Fitting ARIMA-GARCH model using “rugarch” package.
Due to the dataset gather via getSymbols('JPY=X', src='av', api.key=api, periodicity='intraday')
is tidied but only 100 observations. Moreover I cannot select the time period from few years ago, therefore here I omit it and use the intraday data gather from real-time-fxcm/data/USDJPY/
from Y2015W1
to Y2018W27
, due to the dataset is tick-data-base and more than 1 million observation per file (per week) and there has 4 years dataset where. Here I need to backtest day-by-day. There will be spent a long time to do.
cr_code <- c('AUDUSD=X', 'EURUSD=X', 'GBPUSD=X', 'CHF=X', 'CAD=X', 'CNY=X', 'JPY=X')
names(cr_code) <- c('AUDUSD', 'EURUSD', 'GBPUSD', 'USDCHF', 'USDCAD', 'USDCNY', 'USDJPY')
# names(cr_code) <- c('USDAUD', 'USDEUR', 'USDGBP', 'USDCHF', 'USDCAD', 'USDCNY', 'USDJPY')
dtr <- str_extract_all(getwd(), '.*/', '')[1]
dtr1 <- paste0(dtr, 'real-time-fxcm/data/')
## Read presaved FXCM data.
# mbase <- sapply(names(cr_code), function(x) readRDS(paste0('./data/', x, '.rds')) %>% na.omit)
fls <- sapply(names(cr_code), function(x) {
dtr1 <- paste0(dtr1, x)
list.files(dtr1, pattern = '^Y[0-9]{4}W[0-9]{1,2}.rds$') %>%
str_replace_all('.rds', '')
})
fls[lengths(fls) == 0] <- NA_character_
fls[is.na(fls)] <- NULL
# AUDUSD <- sapply(fls[[1]], read_rds)
# EURUSD <- sapply(fls[[2]], read_rds)
# GBPUSD <- sapply(fls[[3]], read_rds)
# USDCHF <- sapply(fls[[4]], read_rds)
# USDCAD <- sapply(fls[[5]], read_rds)
# USDCNY <- sapply(fls[[6]], read_rds)
# mbase <- llply(as.list(fls[[7]]), read_rds) #185 files where 1 files contains 1 million observation.
## Here I take USDJPY as example...
dtr1s <- paste0(dtr1, names(fls[length(fls)]))
fs <- list.files(dtr1s, pattern = '^Y[0-9]{4}W[0-9]{1,2}.rds$') %>%
str_replace_all('.rds', '')
# eval(parse(text = paste0(fs, "<- readRDS('", fls[[7]], "') %>% as_tibble")))
t.unit <- c('seconds', 'minutes', 'hours', 'days', 'weeks', 'months', 'quarters', 'quarters')
## https://www.alphavantage.co/
## https://www.alphavantage.co/support/#api-key
# api = 'UL7EPVVEGDVC3TXC'
# getSymbols('JPY=X', src='av', api.key=api, periodicity='intraday')
binary.com Interview Question I - Multivariate GARCH Models concludes that the multivariate will be more accurate but due to save time, here I only use univariate for models comparison.
Due to high volume of dataset, here I only use USDJPY
since the variance is higher than the rest of currencies.
## Read raw dataset.
#Y2015W1 <- read_rds(paste0(dtr1, '/', fls[[7]][1], '.rds')) %>% as_tibble
eval(parse(text = paste0(fs[1], "<- readRDS('", dtr1, "/",
names(fls[length(fls)]), '/', fls[length(fls)][[1]][1],
".rds') %>% as_tibble")))
## raw dataset
Y2015W1
## # A tibble: 1,775,999 x 3
## DateTime Bid Ask
## <fct> <dbl> <dbl>
## 1 01/04/2015 22:00:00.165 120. 121.
## 2 01/04/2015 22:00:00.197 120. 121.
## 3 01/04/2015 22:00:00.401 120. 121.
## 4 01/04/2015 22:00:00.712 120. 121.
## 5 01/04/2015 22:00:00.742 120. 121.
## 6 01/04/2015 22:00:00.786 120. 121.
## 7 01/04/2015 22:00:00.920 120. 121.
## 8 01/04/2015 22:00:00.926 120. 121.
## 9 01/04/2015 22:00:01.253 120. 121.
## 10 01/04/2015 22:00:01.259 120. 121.
## # ... with 1,775,989 more rows
Above table shows the raw tick-dataset (shows price fluctuation in mili-seconds). As we know that the variance in unit mili-second
is almost 0. Therefore I refer to High Frequency GARCH: The multiplicative component GARCH (mcsGARCH) model and use 1 minute as 1 time unit, convert from univariate ask
and univariate bid
to be OHLC dataset.
For example, the
taylor
data set from theforecast
package contains half-hourly electricity demand data from England and Wales over about 3 months in 2000. It was defined astaylor <- msts(x, seasonal.periods=c(48,336)
.
Source Seasonal periods
A Review of Literature on Time Zone Difference and Trade study about trading across timezone and different country, if the timezone difference will affect the trading.
I would like to use R for time series analysis. I want to make a time-series model and use functions from the packages timeDate and forecast. I have intraday data in the CET time zone (15 minutes data, 4 data points per hour). On March 31st daylight savings time is implemented and I am missing 4 data points of the 96 that I usually have. On October 28th I have 4 data points too many as time is switched back. For my time series model I always need 96 data points, as otherwise the intraday seasonality gets messed up. Do you have any experiences with this? Do you know an R function or a package that would be of help to automat such data handling - something elegant? Thank you!
I had a similar problem with hydrological data from a sensor. My timestamps were in UTC+1 (CET) and did not switch to daylight saving time (UTC+2, CEST). As I didn’t want my data to be one hour off (which would be the case if UTC were used) I took the %z conversion specification of strptime. In ?strptime you’ll find:
%z
Signed offset in hours and minutes from UTC, so -0800 is 8 hours behind UTC. For example: In 2012, the switch from Standard Time to DST occured on 2012-03-25, so there is no 02:00 on this day. If you try to convert “2012-03-25 02:00:00” to a POSIXct-Object,
## https://stackoverflow.com/questions/29202021/r-how-to-extract-dates-from-a-time-series
getTStime <- function(ats){
start <- start(ats)
end <- end(ats)
time <- list()
time[[1]] <- start
m <- 2
while(!(identical(start, end))){
start[2] <- start[2] + 1
if (start[2]==1441){ #mins per day
start[1] <- start[1] + 1
start[2] <- 1
}
time[[m]] <- start
m <- m + 1
}
return(time)
}
## https://stackoverflow.com/questions/13865172/handling-data-on-the-days-when-we-switch-to-daylight-savings-time-and-back-in-r
#> as.POSIXct("2012-03-25 02:00:00", tz="Europe/Vienna")
#[1] "2012-03-25 CET"
#
## you don't get an error or a warning, you just get date without the time (this behavior is documented).
## Using `format = "%z"` gives the desired result:
#
#> as.POSIXct("2012-03-25 02:00:00 +0100", format="%F %T %z", tz="Europe/Vienna")
#[1] "2012-03-25 03:00:00 CEST"
## function
as.POSIXct.no.dst <- function (
x, tz = '', format='%Y-%m-%d %H:%M', offset='+0100', ...) {
x <- paste(x, offset)
format <- paste(format, '%z')
res <- as.POSIXct(x, tz, format=format, ...)
return(res)
}
Source : Handling data on the days when we switch to daylight savings time and back in R
Why is this xts frequency always 1? talk about the frequency of xts
dataset and we need to use zoo
to convert it.
So far, we have considered relatively simple seasonal patterns such as quarterly and monthly data. However, higher frequency time series often exhibit more complicated seasonal patterns. For example, daily data may have a weekly pattern as well as an annual pattern. Hourly data usually has three types of seasonality: a daily pattern, a weekly pattern, and an annual pattern. Even weekly data can be challenging to forecast as it typically has an annual pattern with seasonal period of
365.25/7≈52.179
on average. … The top panel of Figure 11.1 shows the number of retail banking call arrivals per 5-minute interval between 7:00am and 9:05pm each weekday over a 33 week period. The bottom panel shows the first three weeks of the same time series. There is a strong daily seasonal pattern with frequency 169 (there are 169 5-minute intervals per day), and a weak weekly seasonal pattern with frequency169 × 5 = 845
. (Call volumes on Mondays tend to be higher than the rest of the week.) If a longer series of data were available, we may also have observed an annual seasonal pattern.
Source : 11.1 Complex seasonality
## Convert the univariate price to be OHLC price in `minutes` unit.
Y2015W1_min1 <- Y2015W1 %>%
convertOHLC(combine = TRUE, trade = FALSE, .unit = t.unit[2]) %>%
bind_rows #combined `ask/bid` price
Y2015W1_min1
## # A tibble: 7,200 x 9
## index BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-01-05 00:01:00 120. 121. 120. 121. 121. 121. 121.
## 2 2015-01-05 00:02:00 121. 121. 120. 121. 121. 121. 121.
## 3 2015-01-05 00:03:00 121. 121. 121. 121. 121. 121. 121.
## 4 2015-01-05 00:04:00 121. 121. 121. 121. 121. 121. 121.
## 5 2015-01-05 00:05:00 121. 121. 120. 121. 121. 121. 121.
## 6 2015-01-05 00:06:00 121. 121. 120. 120. 121. 121. 121.
## 7 2015-01-05 00:07:00 120. 121. 120. 121. 121. 121. 120.
## 8 2015-01-05 00:08:00 121. 121. 121. 121. 121. 121. 121.
## 9 2015-01-05 00:09:00 121. 121. 121. 121. 121. 121. 121.
## 10 2015-01-05 00:10:00 121. 121. 121. 121. 121. 121. 121.
## # ... with 7,190 more rows, and 1 more variable: AskClose <dbl>
#suppressWarnings(Y2015W1 <- tbl %>%
# dplyr::select(date, close) %>% tk_xts %>%
# auto.arima(seasonal = FALSE))
## Count the observation in order to model seasonal frequency model.
Y2015W1_min1 %>%
dplyr::select(index) %>%
ddply(.(date(index)), summarise, n = length(index)) %>%
as_tibble
## # A tibble: 6 x 2
## `date(index)` n
## <date> <int>
## 1 2015-01-05 1439
## 2 2015-01-06 1440
## 3 2015-01-07 1440
## 4 2015-01-08 1440
## 5 2015-01-09 1440
## 6 2015-01-10 1
Kindly refer to section Seasonal Data or Seasonal periods to know the seasonality dataset. High Frequency GARCH: The multiplicative component GARCH (mcsGARCH) model use the dataset start from 00:01:00
but not 00:00:00
, therefore above dataset shows the last observation will be the start of next day.
# tsz <- llply(fls[[7]], function(x) {
# y <- read_rds(x) %>%
# convertOHLC(combine = TRUE, trade = FALSE, .unit = t.unit[2]) %>%
# bind_rows %>%
# dplyr::filter(index == head(index, 1) |
# index == tail(index, 1)) %>%
# dplyr::mutate(diff = difftime(index, lag(index, 1), units = 'mins'))
# }) %>% bind_rows %>% as_tibble %>% arrange(index)
# saveRDS(tsz, 'C:/Users/scibr/Documents/GitHub/scibrokes/real-time-fxcm/data/USDJPY/tsz.rds')
## The daylight saving convertion in not tally.
tsz <- read_rds(paste0(dtr1s, '/tsz.rds')) %>%
dplyr::filter(index >= ymd_hms('2015-01-05 00:00:00', tz = 'Europe/Athens'))
tsz
## # A tibble: 368 x 10
## index AskOpen AskHigh AskLow AskClose BidOpen BidHigh BidLow
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-01-05 00:01:00 121. 121. 121. 121. 120. 121. 120.
## 2 2015-01-10 00:00:00 119. 119. 119. 119. 118. 118. 118.
## 3 2015-01-12 00:01:00 118. 118. 118. 118. 118. 118. 118.
## 4 2015-01-16 23:57:00 117. 118. 117. 118. 117. 118. 117.
## 5 2015-01-19 00:01:00 117. 118. 117. 117. 117. 117. 117.
## 6 2015-01-23 23:59:00 118. 118. 118. 118. 118. 118. 118.
## 7 2015-01-26 00:01:00 118. 118. 118. 118. 118. 118. 117.
## 8 2015-01-30 23:59:00 118. 118. 118. 118. 117. 118. 117.
## 9 2015-02-02 00:01:00 117. 117. 117. 117. 117. 117. 117.
## 10 2015-02-07 00:00:00 119. 119. 119. 119. 119. 119. 119.
## # ... with 358 more rows, and 2 more variables: BidClose <dbl>, diff <drtn>
## count the frequency of weekly observation.
tsz %>% dplyr::count(diff) %>%
kable(caption = 'Count data point') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
diff | n |
---|---|
1228 mins | 1 |
1276 mins | 1 |
1657 mins | 1 |
2407 mins | 1 |
2449 mins | 1 |
2650 mins | 1 |
2834 mins | 1 |
3777 mins | 1 |
5251 mins | 1 |
5395 mins | 1 |
5495 mins | 1 |
5521 mins | 1 |
5522 mins | 1 |
5620 mins | 1 |
5638 mins | 2 |
5763 mins | 2 |
6355 mins | 1 |
6831 mins | 1 |
6896 mins | 1 |
7180 mins | 1 |
7181 mins | 1 |
7187 mins | 1 |
7190 mins | 1 |
7192 mins | 1 |
7193 mins | 1 |
7194 mins | 7 |
7195 mins | 8 |
7196 mins | 9 |
7197 mins | 8 |
7198 mins | 41 |
7199 mins | 84 |
NA mins | 184 |
## missing observation.
tsz %>% dplyr::filter(diff <= 6000)
## # A tibble: 18 x 10
## index AskOpen AskHigh AskLow AskClose BidOpen BidHigh BidLow
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-12-24 20:02:00 120. 120. 120. 120. 120. 120. 120.
## 2 2015-12-31 20:03:00 120. 120. 120. 120. 120. 120. 120.
## 3 2016-02-03 14:58:00 119. 119. 119. 119. 119. 119. 119.
## 4 2016-04-14 15:34:00 109. 109. 109. 109. 109. 109. 109.
## 5 2016-04-19 23:15:00 109. 109. 109. 109. 109. 109. 109.
## 6 2016-05-03 16:08:00 106. 106. 106. 106. 106. 106. 106.
## 7 2016-11-17 21:41:00 110. 110. 110. 110. 110. 110. 110.
## 8 2016-12-30 23:59:00 117. 117. 117. 117. 117. 117. 117.
## 9 2017-01-06 23:59:00 117. 117. 117. 117. 117. 117. 117.
## 10 2017-04-17 20:31:00 109. 109. 109. 109. 109. 109. 109.
## 11 2017-04-25 16:53:00 111. 111. 111. 111. 111. 111. 111.
## 12 2017-05-15 21:18:00 114. 114. 114. 114. 114. 114. 114.
## 13 2017-05-23 20:12:00 112. 112. 112. 112. 112. 112. 112.
## 14 2017-06-29 19:37:00 112. 112. 112. 112. 112. 112. 112.
## 15 2017-08-08 03:39:00 111. 111. 111. 111. 111. 111. 111.
## 16 2017-12-29 23:58:00 113. 113. 113. 113. 113. 113. 113.
## 17 2018-01-06 01:00:00 113. 113. 113. 113. 113. 113. 113.
## 18 2018-01-06 01:00:00 113. 113. 113. 113. 113. 113. 113.
## # ... with 2 more variables: BidClose <dbl>, diff <drtn>
## https://stackoverflow.com/questions/34454947/why-is-this-xts-frequency-always-1
## https://www.stat.berkeley.edu/~s133/dates.html
## https://stackoverflow.com/questions/45070078/convert-forecast-time-produced-by-arima-into-standard-date-time
#How to extract below index to datetime
#Y2015W1 %>% tk_ts(end = c(1440, 7200), frequency = 1440) %>% attributes %>% .$index %>% as.POSIXct(tz = 'UTC', origin = '1970-01-01') %>% force_tz(tz = 'Europe/Athens')
Y2015W1_min1 %>%
tk_ts(end = c(3, 7200), frequency = 1440) %>%
.[,1:ncol(.)] %>%
head #1440 * 5 = 7200
## Time Series:
## Start = c(3, 1)
## End = c(3, 6)
## Frequency = 1440
## BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow AskClose
## 3.000000 120.474 120.542 120.442 120.502 120.534 120.638 120.520 120.608
## 3.000694 120.524 120.570 120.484 120.538 120.592 120.671 120.566 120.610
## 3.001389 120.568 120.588 120.533 120.568 120.624 120.678 120.588 120.612
## 3.002083 120.570 120.606 120.508 120.539 120.614 120.708 120.566 120.668
## 3.002778 120.544 120.594 120.472 120.576 120.668 120.714 120.506 120.598
## 3.003472 120.572 120.576 120.492 120.497 120.598 120.629 120.506 120.605
Y2015W1_min1 %>%
head %>%
zooreg(frequency = 1440)
## index BidOpen BidHigh BidLow BidClose AskOpen AskHigh
## 1(1) 2015-01-05 00:01:00 120.474 120.542 120.442 120.502 120.534 120.638
## 1(2) 2015-01-05 00:02:00 120.524 120.570 120.484 120.538 120.592 120.671
## 1(3) 2015-01-05 00:03:00 120.568 120.588 120.533 120.568 120.624 120.678
## 1(4) 2015-01-05 00:04:00 120.570 120.606 120.508 120.539 120.614 120.708
## 1(5) 2015-01-05 00:05:00 120.544 120.594 120.472 120.576 120.668 120.714
## 1(6) 2015-01-05 00:06:00 120.572 120.576 120.492 120.497 120.598 120.629
## AskLow AskClose
## 1(1) 120.520 120.608
## 1(2) 120.566 120.610
## 1(3) 120.588 120.612
## 1(4) 120.566 120.668
## 1(5) 120.506 120.598
## 1(6) 120.506 120.605
#Y2015W1_min1 %>% tk_ts(end = c(1440, 7200), frequency = 1440) %>% index %>% as.POSIXct(tz = 'UTC', origin = '1970-01-01')
## https://stats.stackexchange.com/questions/144158/daily-time-series-analysis
## http://manishbarnwal.com/blog/2017/05/03/time_series_and_forecasting_using_R/
#How to extract below index to datetime
#Y2015W1_min1 %>% msts(seasonal.periods=c(1440, 7200)) %>% .[,1] %>% as.numeric %>% as.POSIXct(tz = 'UTC', origin = '1970-01-01') %>% force_tz(tz = 'Europe/Athens')
Y2015W1_min1 %>%
head %>%
msts(seasonal.periods=c(1440, 7200))
## Multi-Seasonal Time Series:
## Start: 1 1
## Seasonal Periods: 1440 7200
## Data:
## index BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow
## [1,] 1420383660 120.474 120.542 120.442 120.502 120.534 120.638 120.520
## [2,] 1420383720 120.524 120.570 120.484 120.538 120.592 120.671 120.566
## [3,] 1420383780 120.568 120.588 120.533 120.568 120.624 120.678 120.588
## [4,] 1420383840 120.570 120.606 120.508 120.539 120.614 120.708 120.566
## [5,] 1420383900 120.544 120.594 120.472 120.576 120.668 120.714 120.506
## [6,] 1420383960 120.572 120.576 120.492 120.497 120.598 120.629 120.506
## AskClose
## [1,] 120.608
## [2,] 120.610
## [3,] 120.612
## [4,] 120.668
## [5,] 120.598
## [6,] 120.605
ts()
only can build a year-month seasonal dataset, otherwise need to decimal numeric to figure out what date within a month accordingly. msts()
will be more user friendly which is modelling intra-and-inter seasonal dataset. Now I convert all dataset again from UTC
to UTC+2
to be a constant weekly seasonal dataset. Due to the trading day is 5 days and 2 rest days, therefore I set a weekly seasonal period instead of daily.
2018 Time Zones - UTC shows that has no change in No changes, UTC all of the period from 2010 to 2019.
From the Wikipedia UTC page: UTC does not change with a change of seasons, but local time or civil time may change if a time zone jurisdiction observes daylight saving time or summer time. For example, UTC is 5 hours ahead of local time on the east coast of the United States during winter, but 4 hours ahead during summer. In other words, when a time zone observes DST, its offset from UTC changes when there’s a DST transition, but that’s that time zone observing DST, not UTC. Without knowing much about PHP time zone handling, it seems strange to me that you can specify “with DST” or “without DST” in a conversion - the time zones themselves specify when DST kicks in… it shouldn’t have to be something you specify yourself.
Source : Does UTC observe daylight saving time?
Due to the Handling Data for Daylight-Saving and Non-Daylight-Saving for HFT provides the solution for the timezone issue.UTC
timezone has no daylight saving issue, therefore the initial trading time will be a problem where I need to cope with.
## -------- eval=FALSE --------------
## Now I simply tidy all datasets and save it prior to start the statistical modelling.
llply(fls[[7]], function(x) {
mbase <- read_rds(x) %>% as_tibble
## Convert the univariate price to be OHLC price in `minutes` unit.
mbase %<>% convertOHLC(.unit = t.unit[2], combine = TRUE) %>%
bind_rows #combined `ask/bid` price
y <- x %>% str_replace_all('.rds$', '_tick-to-min1.rds')
saveRDS(mbase, y)
cat(y, 'saved!\n')
})
Due to fxcm/MarketData updated and provides 1 minute, 1 hour, 1 day datasets recently, here I directly download 1 minute dataset and tidy it.
time is based on EST, because our server is in New Jersey USA. it is 5:00PM at the end of the day, which is shown in GMT as 21:00 day light saving or 22:00 without day light saving.
Source : Inconsistency of trading date time #1
From above quote, we can know even the EST
converted to UTC
will not be 00:00:00
, therefore I refer to Handling data on the days when we switch to daylight savings time and back in R as my solution as UTC+2
(daylight saving UTC+3
) will get the desired result.
cr_code <- c('EURUSD=X', 'GBPUSD=X', 'CHF=X', 'CAD=X', 'JPY=X')
names(cr_code) <- c('EURUSD', 'GBPUSD', 'USDCHF', 'USDCAD', 'USDJPY')
fls1 <- llply(names(cr_code), function(x) {
fls <- list.files(paste0(dtr1, x), pattern = '^Y[0-9]{4}W[0-9]{1,2}_m1.rds$')
if (length(fls) > 0) paste0(dtr1, x, '/', fls)
})
names(fls1) <- names(cr_code)
dtr1s <- paste0(dtr1, names(fls1[length(fls1)]))
fs1 <- list.files(dtr1s, pattern = '^Y[0-9]{4}W[0-9]{1,2}_m1.rds$') %>%
str_replace_all('.rds', '')
## Read raw dataset.
# eval(parse(text = paste0(fs, "<- read_rds('", fls[[7]], "')")))
## Read raw dataset.
eval(parse(text = paste0(fs1[1], "<- read_rds('", fls1[[5]][1], "') %>% as_tibble")))
## raw dataset
Y2015W1_m1
## # A tibble: 7,200 x 9
## DateTime BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow AskClose
## <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 01/04/2015 2~ 120. 121. 120. 121. 121. 121. 121. 121.
## 2 01/04/2015 2~ 121. 121. 120. 121. 121. 121. 121. 121.
## 3 01/04/2015 2~ 121. 121. 121. 121. 121. 121. 121. 121.
## 4 01/04/2015 2~ 121. 121. 121. 121. 121. 121. 121. 121.
## 5 01/04/2015 2~ 121. 121. 120. 121. 121. 121. 121. 121.
## 6 01/04/2015 2~ 121. 121. 120. 120. 121. 121. 121. 121.
## 7 01/04/2015 2~ 120. 121. 120. 121. 121. 121. 120. 121.
## 8 01/04/2015 2~ 121. 121. 121. 121. 121. 121. 121. 121.
## 9 01/04/2015 2~ 121. 121. 121. 121. 121. 121. 121. 121.
## 10 01/04/2015 2~ 121. 121. 121. 121. 121. 121. 121. 121.
## # ... with 7,190 more rows
Now I try to validate the daylight saving date.
# tsz2 <- llply(fls1[[5]], function(x) {
# y <- read_rds(x) %>% dplyr::filter(DateTime == head(DateTime, 1)|
# DateTime == tail(DateTime, 1)) %>%
# dplyr::mutate(DateTime = DateTime %>% mdy_hms %>%
# .POSIXct(tz = 'Europe/Athens'),
# diff = difftime(DateTime, lag(DateTime, 1), units = 'mins'))
#
# nch <- y$DateTime[1] %>% substr(nchar(.)+2, nchar(.)+3)
# y %<>% dplyr::mutate(
# nch = nch, DateTime = if_else(
# nch == '23', DateTime + hours(1), DateTime)) %>%
# dplyr::select(-nch)
# }) %>% bind_rows %>% as_tibble %>% arrange(DateTime)
# saveRDS(tsz2, 'C:/Users/scibr/Documents/GitHub/scibrokes/real-time-fxcm/data/USDJPY/tsz2.rds')
## The daylight saving convertion in not tally.
tsz2 <- read_rds(paste0(dtr1s, '/tsz2.rds')) %>%
dplyr::rename(index = DateTime) %>%
dplyr::filter(index >= ymd_hms('2015-01-05 00:01:00', tz = 'Europe/Athens'))
tsz2
## # A tibble: 365 x 10
## index BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-01-09 23:59:00 119. 119. 118. 118. 119. 119. 119.
## 2 2015-01-12 00:00:00 118. 118. 118. 118. 118. 118. 118.
## 3 2015-01-16 23:56:00 117. 118. 117. 118. 117. 118. 117.
## 4 2015-01-19 00:00:00 117. 117. 117. 117. 117. 118. 117.
## 5 2015-01-23 23:58:00 118. 118. 118. 118. 118. 118. 118.
## 6 2015-01-26 00:00:00 118. 118. 117. 118. 118. 118. 118.
## 7 2015-01-30 23:58:00 117. 118. 117. 118. 118. 118. 118.
## 8 2015-02-02 00:00:00 117. 117. 117. 117. 117. 117. 117.
## 9 2015-02-06 23:59:00 119. 119. 119. 119. 119. 119. 119.
## 10 2015-02-09 00:00:00 119. 119. 119 119. 119. 119. 119.
## # ... with 355 more rows, and 2 more variables: AskClose <dbl>, diff <drtn>
## count the frequency of weekly observation.
tsz2 %>% dplyr::count(diff) %>%
kable(caption = 'Count data point') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
diff | n |
---|---|
5395 mins | 1 |
5521 mins | 1 |
5522 mins | 1 |
5638 mins | 2 |
5759 mins | 1 |
7180 mins | 1 |
7187 mins | 1 |
7190 mins | 1 |
7192 mins | 1 |
7193 mins | 1 |
7194 mins | 7 |
7195 mins | 10 |
7196 mins | 13 |
7197 mins | 10 |
7198 mins | 47 |
7199 mins | 85 |
NA mins | 182 |
## missing observation.
tsz2 %>% dplyr::filter(diff <= 6000)
## # A tibble: 6 x 10
## index BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-12-24 20:01:00 120. 120. 120. 120. 120. 120. 120.
## 2 2015-12-31 20:02:00 120. 120. 120. 120. 120. 120. 120.
## 3 2016-12-30 23:58:00 117. 117. 117. 117. 117. 117. 117.
## 4 2017-01-06 23:58:00 117. 117. 117. 117. 117. 117. 117.
## 5 2017-12-29 23:57:00 113. 113. 113. 113. 113. 113. 113.
## 6 2018-01-05 23:59:00 113. 113. 113. 113. 113. 113. 113.
## # ... with 2 more variables: AskClose <dbl>, diff <drtn>
From above tables, we can know the daylight saving detection and datetime
auto convertion is not tally. Here I united all intial observation started from 00:01:00
.
binary.com 面试试题 I - 单变量数据缺失值管理 and binary.com面试试题 I - 单变量数据缺失值管理 II compares the missing values dataset and refill the missing value with imputeTS::na.seadec()
:
The papers concludes that the imputeTS::na.seadec(algorithm = 'interpolation')
or imputeTS::na.seadec(algorithm = 'kalman')
repaired dataset no matter how much of portion of missing value is workable since the MSE and bias is very low. The Amelia::amelia
is accurate and the bias and imprecision is small compare to imputeTS::sea.dec
when the portion of missing value is small. The papers compare tick-data-to-1min-data and also 1min-data where both datasets gather from FXCM. It is very weird that the tidyr::fill
and na.locf
both are not too accurate. However, in this paper I use tidy::fill()
method to fill the missing value, it will similar with kalman filter
method since it will filled up the missing value ascending to fill up with direction down until the bottom of the dataset and then fill up with direction up by descending to fill up initial missing value or top. It will not occured standard error bias like open or close price higher than highest price or lower than lowest price. Moreover, the filled price will not bias a lot from the trend as time goes by.
## tick-data to minute 1 dataset
#tsz <- read_rds('C:/Users/scibr/Documents/GitHub/scibrokes/real-time-fxcm/data/USDJPY/tsz.rds')
tsz %>% dplyr::count(diff) %>%
kable(caption = 'Count data point') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
diff | n |
---|---|
1228 mins | 1 |
1276 mins | 1 |
1657 mins | 1 |
2407 mins | 1 |
2449 mins | 1 |
2650 mins | 1 |
2834 mins | 1 |
3777 mins | 1 |
5251 mins | 1 |
5395 mins | 1 |
5495 mins | 1 |
5521 mins | 1 |
5522 mins | 1 |
5620 mins | 1 |
5638 mins | 2 |
5763 mins | 2 |
6355 mins | 1 |
6831 mins | 1 |
6896 mins | 1 |
7180 mins | 1 |
7181 mins | 1 |
7187 mins | 1 |
7190 mins | 1 |
7192 mins | 1 |
7193 mins | 1 |
7194 mins | 7 |
7195 mins | 8 |
7196 mins | 9 |
7197 mins | 8 |
7198 mins | 41 |
7199 mins | 84 |
NA mins | 184 |
## minute 1 dataset
#tsz2 <- read_rds('C:/Users/scibr/Documents/GitHub/scibrokes/real-time-fxcm/data/USDJPY/tsz2.rds')
tsz2 %>% dplyr::count(diff) %>%
kable(caption = 'Count data point') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
diff | n |
---|---|
5395 mins | 1 |
5521 mins | 1 |
5522 mins | 1 |
5638 mins | 2 |
5759 mins | 1 |
7180 mins | 1 |
7187 mins | 1 |
7190 mins | 1 |
7192 mins | 1 |
7193 mins | 1 |
7194 mins | 7 |
7195 mins | 10 |
7196 mins | 13 |
7197 mins | 10 |
7198 mins | 47 |
7199 mins | 85 |
NA mins | 182 |
Above tables show both datasets are incompleted. However, when I tried to check the Y2017W20
and Y2017W20_m1
, the tick-dataset only start from 2017-05-15
until 2017-05-17
but the m1-dataset from 2017-05-15
until 2017-05-19
. Kindly refer to below comparison.
mean(tsz$diff, na.rm=TRUE)
## Time difference of 6886.853 mins
mean(tsz2$diff, na.rm=TRUE)
## Time difference of 7144.601 mins
From above comparison, we know the dataset of 1min
is better compelete than tick-to-1min
dataset.
#left_join(tsz[c(1, ncol(tsz))], tsz2[c(1, ncol(tsz2))])
right_join(tsz[c(1, ncol(tsz))], tsz2[c(1, ncol(tsz2))])
## # A tibble: 365 x 2
## index diff
## <dttm> <drtn>
## 1 2015-01-09 23:59:00 7199 mins
## 2 2015-01-12 00:00:00 NA mins
## 3 2015-01-16 23:56:00 7196 mins
## 4 2015-01-19 00:00:00 NA mins
## 5 2015-01-23 23:58:00 7198 mins
## 6 2015-01-26 00:00:00 NA mins
## 7 2015-01-30 23:58:00 7198 mins
## 8 2015-02-02 00:00:00 NA mins
## 9 2015-02-06 23:59:00 7199 mins
## 10 2015-02-09 00:00:00 NA mins
## # ... with 355 more rows
Here I compare the mean and get to know the downloaded min1 dataset from FXCM is better than downloaded tick-dataset (converted to min1) from FXCM.
# -------- eval=FALSE -----------
## tick-data to min-1 dataset
data_tm1 <- llply(fls[[7]], function(x) {
y <- read_rds(x) %>%
convertOHLC(combine = TRUE)
yw <- x %>%
str_extract_all('Y[0-9]{4}W[0-9]{1,2}') %>%
str_split_fixed('[A-Z]{1}', 3) %>%
.[,-1]
y %<>% dplyr::mutate(
year = as.numeric(yw[1]), week = as.numeric(yw[2]), .)
}) %>%
bind_rows %>%
as_tibble %>%
arrange(index)
## min-1 dataset
data_m1 <- llply(fls1[[5]], function(x) {
y <- read_rds(x) %>%
dplyr::rename(index = DateTime) %>%
dplyr::mutate(index = index %>% mdy_hms %>%
.POSIXct(tz = 'Europe/Athens') %>%
force_tz())
yw <- x %>% str_extract_all('Y[0-9]{4}W[0-9]{1,2}') %>%
str_split_fixed('[A-Z]{1}', 3) %>% .[,-1]
nch <- y$index[1] %>% substr(nchar(.)+2, nchar(.)+3)
y %<>% dplyr::mutate(
year = as.numeric(yw[1]), week = as.numeric(yw[2]),
nch = nch, index = if_else(
nch == '23', index + hours(1), index)) %>%
dplyr::select(-nch)
}) %>%
bind_rows %>%
as_tibble %>%
arrange(index)
# -------- eval=FALSE -----------
#dtm <- seq(ymd_hms('2015-01-01 00:00:00'), ymd_hms('2017-08-31 00:00:00'), by = 'minutes')
#dtm <- seq(from = ymd('2015-01-05'), to = ymd('2018-07-07'), by = 'weeks')
dtm <- data_tm1 %>%
dplyr::select(index, year ,week) %>%
dplyr::mutate(index = date(index)) %>%
ddply(.(year, week), head, 1) %>%
.[-nrow(.),]
## create a seq of datetime to complete the data point.
dttm <- llply(1:nrow(dtm), function(i) {
x1 <- dtm$index[i] %>%
as.POSIXct %>%
with_tz(tz = 'UTC') %>%
force_tz()
#x2 <- x1 + days(4) + hours(23) + minutes(59)
x2 <- x1 + days(5)
data_frame(index = seq.POSIXt(from = x1 + minutes(1), to = x2, by = '1 min'),
year = dtm[i,2], week = dtm[i,3])
}) %>%
bind_rows %>%
as_tibble
Above chunk created a sequence of datetime
.
## merge dataset
data_m1 <- left_join(dttm, data_m1) %>%
as_tibble %>%
unique %>%
arrange(index)
data_tm1 <- left_join(dttm, data_tm1) %>%
as_tibble %>%
unique %>%
arrange(index)
## https://stackoverflow.com/questions/43212308/na-locf-using-group-by-from-dplyr
## https://stackoverflow.com/questions/233401., eval.expr = TRUE) :
Scanner error: mapping values50/replace-missing-values-na-with-most-recent-non-na-by-group
## https://stackoverflow.com/questions/40040834/replace-na-with-previous-or-next-value-by-group-using-dplyr/40041172
## https://stackoverflow.com/questions/47242643/na-at-the-end-of-column-using-na-locf-function
## https://stackoverflow.com/questions/49578085/na-locf-function-is-changing-data-frame-values-from-int-to-char-in-r
## https://stackoverflow.com/questions/13616965/how-to-fill-nas-with-locf-by-factors-in-data-frame-split-by-country
## https://stackoverflow.com/questions/23340150/replace-missing-values-na-with-most-recent-non-na-by-group
# data_m1 %>%
# group_by(index, week) %>%
# dplyr::mutate_all(funs(na.locf(., na.rm = FALSE)))
# data_m1 %>% split(data_m1$index) %>%
# llply(function(x) {
# na.locf(na.locf(x), fromLast = TRUE)
# }) %>% do.call(rbind, .)
# data_m1 %<>% ddply(.(index, week), na_locf) %>% as_tibble
#> data_m1 %>% anyNA
#[1] FALSE
data_m1 %<>%
ddply(.(year, week), function(x) {
x %>% fill(year, week, BidOpen, BidHigh, BidLow, BidClose,
AskOpen, AskHigh, AskLow, AskClose) %>% #default direction down
fill(year, week, BidOpen, BidHigh, BidLow, BidClose,
AskOpen, AskHigh, AskLow, AskClose, .direction = 'up')
}) %>%
as_tibble
data_tm1 %<>%
ddply(.(year, week), function(x) {
x %>% fill(year, week, BidOpen, BidHigh, BidLow, BidClose,
AskOpen, AskHigh, AskLow, AskClose) %>% #default direction down
fill(year, week, BidOpen, BidHigh, BidLow, BidClose,
AskOpen, AskHigh, AskLow, AskClose, .direction = 'up')
}) %>%
as_tibble
#> data_m1 %>% anyNA
#[1] TRUE
#> data_m1 %>% filter_all(any_vars(is.na(.)))
## A tibble: 7,200 x 11
# index year week BidOpen BidHigh BidLow BidClose AskOpen AskHigh AskLow AskClose
# <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
# 1 2018-01-02 00:01:00 2017 53 NA NA NA NA NA NA NA NA
# 2 2018-01-02 00:02:00 2017 53 NA NA NA NA NA NA NA NA
# 3 2018-01-02 00:03:00 2017 53 NA NA NA NA NA NA NA NA
# 4 2018-01-02 00:04:00 2017 53 NA NA NA NA NA NA NA NA
# 5 2018-01-02 00:05:00 2017 53 NA NA NA NA NA NA NA NA
# 6 2018-01-02 00:06:00 2017 53 NA NA NA NA NA NA NA NA
# 7 2018-01-02 00:07:00 2017 53 NA NA NA NA NA NA NA NA
# 8 2018-01-02 00:08:00 2017 53 NA NA NA NA NA NA NA NA
# 9 2018-01-02 00:09:00 2017 53 NA NA NA NA NA NA NA NA
#10 2018-01-02 00:10:00 2017 53 NA NA NA NA NA NA NA NA
## ... with 7,190 more rows
#> data_tm1 %>% anyNA
#[1] FALSE
#> data_tm1 %>% filter_all(any_vars(is.na(.)))
## A tibble: 0 x 11
## ... with 11 variables: index <dttm>, year <dbl>, week <dbl>, AskOpen <dbl>, AskHigh <dbl>, AskLow <dbl>,
## AskClose <dbl>, BidOpen <dbl>, BidHigh <dbl>, BidLow <dbl>, BidClose <dbl>
saveRDS(data_m1, paste0(dtr1, '/data_m1.rds'))
saveRDS(data_tm1, paste0(dtr1, '/data_tm1.rds'))
I don’t use the data.table
and feather
because of the storage concerns. Kindly refer to [问答] 对大数据如何用R高效处理和[问答] 对大数据如何用R高效处理.
Finally, I filled-up the NA
section of data_m1
and data_tm1
and eventually filled up by tidyr::fill
function.
Due to the files preload all before simulate the statistical modelling will occupy the space. Here I directly read the files and simulate the algorithmic prediction in following sections.
rm(list = ls()[grep('i|j|tz|nch|yw|dtm|dttm|form|data|Y2015W|tsz|tsz2|dc', ls())])
cr_code <- c('AUDUSD=X', 'EURUSD=X', 'GBPUSD=X', 'CHF=X', 'CAD=X', 'CNY=X', 'JPY=X')
names(cr_code) <- c('AUDUSD', 'EURUSD', 'GBPUSD', 'USDCHF', 'USDCAD', 'USDCNY', 'USDJPY')
data_m1 <- read_rds(paste0(dtr1s, '/data_m1.rds'))
tb1 <- data_m1 %>% ddply(.(year, week), head, 1) %>%
kbl('html', caption = 'Weekly Initial Data Point', escape = FALSE) %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
tb1
index | year | week | BidOpen | BidHigh | BidLow | BidClose | AskOpen | AskHigh | AskLow | AskClose |
---|---|---|---|---|---|---|---|---|---|---|
2015-01-05 00:01:00 | 2015 | 1 | 120.502 | 120.570 | 120.484 | 120.538 | 120.608 | 120.671 | 120.566 | 120.610 |
2015-01-12 00:01:00 | 2015 | 2 | 118.222 | 118.280 | 118.214 | 118.262 | 118.276 | 118.312 | 118.258 | 118.282 |
2015-01-19 00:01:00 | 2015 | 3 | 117.442 | 117.442 | 117.402 | 117.432 | 117.478 | 117.550 | 117.478 | 117.512 |
2015-01-26 00:01:00 | 2015 | 4 | 117.500 | 117.504 | 117.467 | 117.482 | 117.508 | 117.524 | 117.502 | 117.507 |
2015-02-02 00:01:00 | 2015 | 5 | 116.979 | 117.048 | 116.971 | 117.046 | 117.011 | 117.067 | 116.983 | 117.065 |
2015-02-09 00:01:00 | 2015 | 6 | 119.028 | 119.046 | 119.000 | 119.046 | 119.081 | 119.150 | 119.042 | 119.052 |
2015-02-16 00:01:00 | 2015 | 7 | 118.562 | 118.628 | 118.544 | 118.628 | 118.587 | 118.649 | 118.548 | 118.646 |
2015-02-23 00:01:00 | 2015 | 8 | 119.094 | 119.094 | 119.061 | 119.061 | 119.149 | 119.149 | 119.109 | 119.109 |
2015-03-02 00:01:00 | 2015 | 9 | 119.688 | 119.716 | 119.673 | 119.716 | 119.760 | 119.764 | 119.714 | 119.748 |
2015-03-09 00:01:00 | 2015 | 10 | 120.800 | 120.836 | 120.800 | 120.836 | 120.920 | 120.920 | 120.889 | 120.889 |
2015-03-16 00:01:00 | 2015 | 11 | 121.374 | 121.382 | 121.346 | 121.346 | 121.430 | 121.436 | 121.410 | 121.410 |
2015-03-23 00:01:00 | 2015 | 12 | 119.884 | 119.894 | 119.868 | 119.890 | 119.900 | 119.902 | 119.897 | 119.898 |
2015-03-30 00:01:00 | 2015 | 13 | 119.216 | 119.220 | 119.203 | 119.203 | 119.247 | 119.253 | 119.230 | 119.230 |
2015-04-06 00:01:00 | 2015 | 14 | 118.845 | 118.845 | 118.839 | 118.839 | 118.915 | 118.951 | 118.915 | 118.943 |
2015-04-13 00:01:00 | 2015 | 15 | 120.299 | 120.311 | 120.299 | 120.311 | 120.385 | 120.386 | 120.368 | 120.368 |
2015-04-20 00:01:00 | 2015 | 16 | 118.985 | 118.993 | 118.985 | 118.993 | 119.014 | 119.047 | 119.014 | 119.047 |
2015-04-27 00:01:00 | 2015 | 17 | 118.864 | 118.877 | 118.864 | 118.876 | 118.906 | 118.906 | 118.903 | 118.903 |
2015-05-04 00:01:00 | 2015 | 18 | 120.227 | 120.227 | 120.226 | 120.226 | 120.242 | 120.242 | 120.242 | 120.242 |
2015-05-11 00:01:00 | 2015 | 19 | 119.652 | 119.688 | 119.644 | 119.658 | 119.684 | 119.731 | 119.676 | 119.719 |
2015-05-18 00:01:00 | 2015 | 20 | 119.214 | 119.255 | 119.214 | 119.255 | 119.308 | 119.314 | 119.308 | 119.312 |
2015-05-25 00:01:00 | 2015 | 21 | 121.494 | 121.494 | 121.488 | 121.488 | 121.516 | 121.516 | 121.512 | 121.512 |
2015-06-01 00:01:00 | 2015 | 22 | 124.076 | 124.084 | 124.072 | 124.072 | 124.100 | 124.106 | 124.094 | 124.096 |
2015-06-08 00:01:00 | 2015 | 23 | 125.578 | 125.588 | 125.566 | 125.568 | 125.598 | 125.610 | 125.590 | 125.590 |
2015-06-15 00:01:00 | 2015 | 24 | 123.174 | 123.174 | 123.130 | 123.159 | 123.276 | 123.276 | 123.186 | 123.189 |
2015-06-22 00:01:00 | 2015 | 25 | 122.955 | 122.957 | 122.922 | 122.922 | 122.968 | 122.968 | 122.936 | 122.936 |
2015-06-29 00:01:00 | 2015 | 26 | 122.728 | 122.736 | 122.667 | 122.707 | 122.740 | 122.806 | 122.692 | 122.740 |
2015-07-06 00:01:00 | 2015 | 27 | 121.968 | 122.004 | 121.951 | 121.986 | 121.992 | 122.128 | 121.978 | 122.002 |
2015-07-13 00:01:00 | 2015 | 28 | 122.218 | 122.224 | 122.178 | 122.204 | 122.332 | 122.332 | 122.206 | 122.286 |
2015-07-20 00:01:00 | 2015 | 29 | 124.044 | 124.044 | 124.036 | 124.036 | 124.058 | 124.058 | 124.048 | 124.048 |
2015-07-27 00:01:00 | 2015 | 30 | 123.728 | 123.760 | 123.726 | 123.760 | 123.800 | 123.830 | 123.770 | 123.830 |
2015-08-03 00:01:00 | 2015 | 31 | 123.850 | 123.860 | 123.850 | 123.860 | 123.904 | 123.906 | 123.904 | 123.906 |
2015-08-10 00:01:00 | 2015 | 32 | 124.140 | 124.140 | 124.127 | 124.127 | 124.204 | 124.204 | 124.204 | 124.204 |
2015-08-17 00:01:00 | 2015 | 33 | 124.228 | 124.268 | 124.228 | 124.255 | 124.356 | 124.372 | 124.352 | 124.363 |
2015-08-24 00:01:00 | 2015 | 34 | 121.882 | 121.894 | 121.882 | 121.890 | 121.902 | 121.920 | 121.902 | 121.918 |
2015-08-31 00:01:00 | 2015 | 35 | 121.576 | 121.622 | 121.576 | 121.616 | 121.682 | 121.686 | 121.624 | 121.632 |
2015-09-07 00:01:00 | 2015 | 36 | 118.864 | 118.906 | 118.864 | 118.874 | 118.918 | 118.926 | 118.914 | 118.918 |
2015-09-14 00:01:00 | 2015 | 37 | 120.488 | 120.489 | 120.472 | 120.472 | 120.602 | 120.603 | 120.596 | 120.596 |
2015-09-21 00:01:00 | 2015 | 38 | 120.104 | 120.112 | 120.102 | 120.102 | 120.136 | 120.144 | 120.134 | 120.136 |
2015-09-28 00:01:00 | 2015 | 39 | 120.510 | 120.510 | 120.502 | 120.502 | 120.536 | 120.543 | 120.536 | 120.543 |
2015-10-05 00:01:00 | 2015 | 40 | 119.982 | 119.987 | 119.968 | 119.986 | 120.008 | 120.072 | 120.008 | 120.070 |
2015-10-12 00:01:00 | 2015 | 41 | 120.166 | 120.166 | 120.162 | 120.164 | 120.199 | 120.202 | 120.194 | 120.199 |
2015-10-19 00:01:00 | 2015 | 42 | 119.351 | 119.351 | 119.346 | 119.346 | 119.429 | 119.434 | 119.429 | 119.434 |
2015-10-26 00:01:00 | 2015 | 43 | 121.450 | 121.468 | 121.448 | 121.454 | 121.518 | 121.520 | 121.470 | 121.470 |
2015-11-02 00:01:00 | 2015 | 44 | 120.450 | 120.462 | 120.392 | 120.396 | 120.479 | 120.483 | 120.402 | 120.430 |
2015-11-09 00:01:00 | 2015 | 45 | 123.254 | 123.302 | 123.254 | 123.302 | 123.362 | 123.362 | 123.319 | 123.319 |
2015-11-16 00:01:00 | 2015 | 46 | 122.286 | 122.310 | 122.280 | 122.293 | 122.299 | 122.350 | 122.295 | 122.301 |
2015-11-23 00:01:00 | 2015 | 47 | 122.801 | 122.821 | 122.801 | 122.816 | 122.920 | 122.925 | 122.919 | 122.924 |
2015-11-30 00:01:00 | 2015 | 48 | 122.810 | 122.811 | 122.810 | 122.811 | 122.829 | 122.830 | 122.829 | 122.830 |
2015-12-07 00:01:00 | 2015 | 49 | 123.191 | 123.191 | 123.190 | 123.190 | 123.240 | 123.240 | 123.239 | 123.239 |
2015-12-14 00:01:00 | 2015 | 50 | 121.138 | 121.147 | 120.965 | 121.100 | 121.158 | 121.158 | 121.045 | 121.110 |
2015-12-21 00:01:00 | 2015 | 51 | 121.226 | 121.226 | 121.226 | 121.226 | 121.258 | 121.260 | 121.258 | 121.260 |
2015-12-28 00:01:00 | 2015 | 52 | 120.230 | 120.270 | 120.216 | 120.223 | 120.328 | 120.330 | 120.260 | 120.328 |
2016-01-04 00:01:00 | 2016 | 1 | 120.199 | 120.205 | 120.199 | 120.205 | 120.241 | 120.241 | 120.234 | 120.235 |
2016-01-11 00:01:00 | 2016 | 2 | 117.139 | 117.164 | 117.131 | 117.164 | 117.158 | 117.228 | 117.145 | 117.200 |
2016-01-18 00:01:00 | 2016 | 3 | 116.699 | 116.834 | 116.682 | 116.828 | 116.752 | 116.882 | 116.750 | 116.872 |
2016-01-25 00:01:00 | 2016 | 4 | 118.620 | 118.689 | 118.620 | 118.689 | 118.701 | 118.780 | 118.700 | 118.707 |
2016-02-01 00:01:00 | 2016 | 5 | 121.298 | 121.298 | 121.198 | 121.258 | 121.325 | 121.325 | 121.244 | 121.277 |
2016-02-08 00:01:00 | 2016 | 6 | 116.779 | 116.799 | 116.779 | 116.799 | 116.877 | 116.899 | 116.877 | 116.899 |
2016-02-15 00:01:00 | 2016 | 7 | 113.382 | 113.382 | 113.376 | 113.382 | 113.418 | 113.419 | 113.418 | 113.418 |
2016-02-22 00:01:00 | 2016 | 8 | 112.558 | 112.560 | 112.536 | 112.536 | 112.618 | 112.624 | 112.616 | 112.624 |
2016-02-29 00:01:00 | 2016 | 9 | 113.942 | 113.948 | 113.940 | 113.946 | 113.994 | 113.999 | 113.992 | 113.998 |
2016-03-07 00:01:00 | 2016 | 10 | 113.918 | 113.918 | 113.913 | 113.913 | 113.982 | 113.982 | 113.982 | 113.982 |
2016-03-14 00:01:00 | 2016 | 11 | 113.935 | 113.936 | 113.924 | 113.924 | 113.962 | 113.968 | 113.956 | 113.958 |
2016-03-21 00:01:00 | 2016 | 12 | 111.518 | 111.518 | 111.512 | 111.512 | 111.612 | 111.612 | 111.602 | 111.602 |
2016-03-28 00:01:00 | 2016 | 13 | 113.156 | 113.156 | 113.149 | 113.149 | 113.234 | 113.240 | 113.234 | 113.240 |
2016-04-04 00:01:00 | 2016 | 14 | 111.590 | 111.594 | 111.590 | 111.590 | 111.658 | 111.662 | 111.658 | 111.660 |
2016-04-11 00:01:00 | 2016 | 15 | 107.932 | 107.992 | 107.932 | 107.992 | 108.006 | 108.066 | 108.006 | 108.020 |
2016-04-18 00:01:00 | 2016 | 16 | 108.173 | 108.220 | 108.173 | 108.188 | 108.252 | 108.284 | 108.252 | 108.274 |
2016-04-25 00:01:00 | 2016 | 17 | 111.846 | 111.848 | 111.844 | 111.848 | 111.882 | 111.892 | 111.882 | 111.892 |
2016-05-02 00:01:00 | 2016 | 18 | 106.230 | 106.254 | 106.216 | 106.244 | 106.274 | 106.310 | 106.273 | 106.280 |
2016-05-09 00:01:00 | 2016 | 19 | 107.068 | 107.068 | 107.066 | 107.067 | 107.106 | 107.108 | 107.106 | 107.108 |
2016-05-16 00:01:00 | 2016 | 20 | 108.592 | 108.595 | 108.589 | 108.595 | 108.654 | 108.674 | 108.654 | 108.670 |
2016-05-23 00:01:00 | 2016 | 21 | 110.138 | 110.138 | 110.134 | 110.136 | 110.176 | 110.176 | 110.172 | 110.172 |
2016-05-30 00:01:00 | 2016 | 22 | 110.414 | 110.428 | 110.410 | 110.428 | 110.432 | 110.456 | 110.432 | 110.451 |
2016-06-06 00:01:00 | 2016 | 23 | 106.549 | 106.555 | 106.547 | 106.555 | 106.575 | 106.575 | 106.573 | 106.575 |
2016-06-13 00:01:00 | 2016 | 24 | 106.800 | 106.833 | 106.796 | 106.812 | 106.890 | 106.892 | 106.884 | 106.884 |
2016-06-20 00:01:00 | 2016 | 25 | 104.681 | 104.692 | 104.657 | 104.671 | 104.739 | 104.744 | 104.723 | 104.743 |
2016-06-27 00:01:00 | 2016 | 26 | 101.519 | 101.521 | 101.510 | 101.519 | 101.539 | 101.550 | 101.527 | 101.546 |
2016-07-04 00:01:00 | 2016 | 27 | 102.594 | 102.598 | 102.594 | 102.598 | 102.636 | 102.647 | 102.634 | 102.647 |
2016-07-11 00:01:00 | 2016 | 28 | 100.589 | 100.590 | 100.589 | 100.590 | 100.653 | 100.653 | 100.653 | 100.653 |
2016-07-18 00:01:00 | 2016 | 29 | 105.333 | 105.342 | 105.331 | 105.342 | 105.369 | 105.369 | 105.368 | 105.368 |
2016-07-25 00:01:00 | 2016 | 30 | 106.116 | 106.129 | 106.089 | 106.089 | 106.180 | 106.186 | 106.175 | 106.176 |
2016-08-01 00:01:00 | 2016 | 31 | 102.284 | 102.284 | 102.205 | 102.234 | 102.376 | 102.376 | 102.274 | 102.284 |
2016-08-08 00:01:00 | 2016 | 32 | 101.937 | 101.946 | 101.937 | 101.944 | 101.996 | 102.012 | 101.964 | 102.012 |
2016-08-15 00:01:00 | 2016 | 33 | 101.115 | 101.124 | 101.115 | 101.124 | 101.157 | 101.206 | 101.157 | 101.206 |
2016-08-22 00:01:00 | 2016 | 34 | 100.748 | 100.748 | 100.746 | 100.748 | 100.811 | 100.811 | 100.784 | 100.784 |
2016-08-29 00:01:00 | 2016 | 35 | 102.039 | 102.096 | 102.026 | 102.076 | 102.116 | 102.122 | 102.052 | 102.102 |
2016-09-05 00:01:00 | 2016 | 36 | 104.078 | 104.084 | 104.078 | 104.078 | 104.146 | 104.146 | 104.146 | 104.146 |
2016-09-12 00:01:00 | 2016 | 37 | 102.552 | 102.588 | 102.552 | 102.571 | 102.650 | 102.651 | 102.650 | 102.651 |
2016-09-19 00:01:00 | 2016 | 38 | 102.148 | 102.178 | 102.148 | 102.178 | 102.246 | 102.266 | 102.204 | 102.220 |
2016-09-26 00:01:00 | 2016 | 39 | 101.029 | 101.059 | 101.029 | 101.038 | 101.079 | 101.135 | 101.079 | 101.132 |
2016-10-03 00:01:00 | 2016 | 40 | 101.196 | 101.198 | 101.194 | 101.198 | 101.276 | 101.284 | 101.276 | 101.284 |
2016-10-10 00:01:00 | 2016 | 41 | 103.292 | 103.296 | 103.242 | 103.252 | 103.374 | 103.374 | 103.299 | 103.299 |
2016-10-17 00:01:00 | 2016 | 42 | 104.327 | 104.327 | 104.317 | 104.326 | 104.340 | 104.344 | 104.340 | 104.340 |
2016-10-24 00:01:00 | 2016 | 43 | 103.816 | 103.820 | 103.816 | 103.820 | 103.873 | 103.873 | 103.873 | 103.873 |
2016-10-31 00:01:00 | 2016 | 44 | 104.404 | 104.412 | 104.401 | 104.411 | 104.502 | 104.502 | 104.489 | 104.493 |
2016-11-07 00:01:00 | 2016 | 45 | 104.033 | 104.033 | 103.769 | 103.769 | 104.117 | 104.117 | 103.829 | 103.829 |
2016-11-14 00:01:00 | 2016 | 46 | 106.848 | 106.848 | 106.767 | 106.812 | 106.880 | 106.880 | 106.792 | 106.822 |
2016-11-21 00:01:00 | 2016 | 47 | 110.898 | 110.980 | 110.898 | 110.958 | 110.982 | 110.995 | 110.980 | 110.986 |
2016-11-28 00:01:00 | 2016 | 48 | 112.798 | 112.872 | 112.798 | 112.872 | 112.872 | 112.902 | 112.872 | 112.902 |
2016-12-05 00:01:00 | 2016 | 49 | 113.223 | 113.248 | 113.176 | 113.182 | 113.372 | 113.372 | 113.186 | 113.196 |
2016-12-12 00:01:00 | 2016 | 50 | 115.403 | 115.412 | 115.403 | 115.408 | 115.452 | 115.452 | 115.437 | 115.452 |
2016-12-19 00:01:00 | 2016 | 51 | 117.948 | 117.948 | 117.948 | 117.948 | 117.972 | 117.972 | 117.956 | 117.972 |
2016-12-27 00:01:00 | 2016 | 52 | 117.242 | 117.242 | 117.189 | 117.195 | 117.322 | 117.322 | 117.195 | 117.198 |
2017-01-03 00:01:00 | 2017 | 1 | 116.978 | 117.523 | 116.978 | 117.454 | 117.076 | 117.528 | 117.076 | 117.453 |
2017-01-09 00:01:00 | 2017 | 2 | 117.009 | 117.009 | 117.002 | 117.002 | 117.031 | 117.031 | 117.012 | 117.012 |
2017-01-16 00:01:00 | 2017 | 3 | 114.299 | 114.378 | 114.299 | 114.309 | 114.381 | 114.392 | 114.381 | 114.391 |
2017-01-23 00:01:00 | 2017 | 4 | 114.354 | 114.364 | 114.338 | 114.348 | 114.400 | 114.430 | 114.392 | 114.420 |
2017-01-30 00:01:00 | 2017 | 5 | 114.760 | 114.800 | 114.760 | 114.784 | 114.790 | 114.820 | 114.784 | 114.820 |
2017-02-06 00:01:00 | 2017 | 6 | 112.442 | 112.455 | 112.440 | 112.444 | 112.520 | 112.520 | 112.480 | 112.480 |
2017-02-13 00:01:00 | 2017 | 7 | 113.545 | 113.545 | 113.530 | 113.530 | 113.625 | 113.625 | 113.625 | 113.625 |
2017-02-20 00:01:00 | 2017 | 8 | 112.864 | 112.882 | 112.864 | 112.879 | 112.903 | 112.908 | 112.903 | 112.908 |
2017-02-27 00:01:00 | 2017 | 9 | 112.108 | 112.125 | 112.108 | 112.125 | 112.192 | 112.205 | 112.192 | 112.204 |
2017-03-06 00:01:00 | 2017 | 10 | 113.855 | 113.894 | 113.855 | 113.894 | 113.903 | 113.916 | 113.903 | 113.913 |
2017-03-13 00:01:00 | 2017 | 11 | 114.725 | 114.725 | 114.689 | 114.707 | 114.784 | 114.787 | 114.743 | 114.784 |
2017-03-20 00:01:00 | 2017 | 12 | 112.656 | 112.681 | 112.656 | 112.673 | 112.749 | 112.757 | 112.749 | 112.757 |
2017-03-27 00:01:00 | 2017 | 13 | 110.861 | 110.893 | 110.815 | 110.893 | 110.917 | 110.975 | 110.898 | 110.935 |
2017-04-03 00:01:00 | 2017 | 14 | 111.414 | 111.414 | 111.329 | 111.329 | 111.503 | 111.503 | 111.418 | 111.418 |
2017-04-10 00:01:00 | 2017 | 15 | 111.029 | 111.066 | 111.015 | 111.018 | 111.118 | 111.118 | 111.081 | 111.081 |
2017-04-17 00:01:00 | 2017 | 16 | 108.691 | 108.741 | 108.691 | 108.741 | 108.790 | 108.830 | 108.790 | 108.830 |
2017-04-24 00:01:00 | 2017 | 17 | 110.518 | 110.518 | 110.394 | 110.457 | 110.729 | 110.729 | 110.502 | 110.516 |
2017-05-01 00:01:00 | 2017 | 18 | 111.240 | 111.330 | 111.240 | 111.330 | 111.334 | 111.394 | 111.334 | 111.389 |
2017-05-08 00:01:00 | 2017 | 19 | 112.931 | 112.949 | 112.922 | 112.946 | 113.004 | 113.022 | 112.980 | 112.984 |
2017-05-15 00:01:00 | 2017 | 20 | 113.124 | 113.171 | 113.124 | 113.170 | 113.205 | 113.205 | 113.194 | 113.194 |
2017-05-22 00:01:00 | 2017 | 21 | 110.985 | 111.050 | 110.985 | 111.047 | 111.084 | 111.084 | 111.069 | 111.069 |
2017-05-29 00:01:00 | 2017 | 22 | 111.178 | 111.210 | 111.178 | 111.210 | 111.277 | 111.309 | 111.277 | 111.309 |
2017-06-05 00:01:00 | 2017 | 23 | 110.352 | 110.391 | 110.352 | 110.391 | 110.396 | 110.483 | 110.396 | 110.480 |
2017-06-12 00:01:00 | 2017 | 24 | 110.309 | 110.309 | 110.291 | 110.304 | 110.342 | 110.342 | 110.333 | 110.333 |
2017-06-19 00:01:00 | 2017 | 25 | 110.881 | 110.881 | 110.878 | 110.878 | 110.945 | 110.945 | 110.922 | 110.924 |
2017-06-26 00:01:00 | 2017 | 26 | 111.186 | 111.186 | 111.178 | 111.184 | 111.256 | 111.256 | 111.235 | 111.235 |
2017-07-03 00:01:00 | 2017 | 27 | 112.098 | 112.125 | 112.085 | 112.125 | 112.122 | 112.179 | 112.122 | 112.176 |
2017-07-10 00:01:00 | 2017 | 28 | 113.863 | 113.899 | 113.863 | 113.899 | 113.897 | 113.918 | 113.897 | 113.918 |
2017-07-17 00:01:00 | 2017 | 29 | 112.452 | 112.480 | 112.452 | 112.480 | 112.485 | 112.515 | 112.485 | 112.504 |
2017-07-24 00:01:00 | 2017 | 30 | 111.106 | 111.106 | 111.097 | 111.106 | 111.138 | 111.138 | 111.133 | 111.133 |
2017-07-31 00:01:00 | 2017 | 31 | 110.653 | 110.653 | 110.636 | 110.636 | 110.677 | 110.677 | 110.668 | 110.668 |
2017-08-07 00:01:00 | 2017 | 32 | 110.697 | 110.702 | 110.686 | 110.702 | 110.727 | 110.745 | 110.726 | 110.738 |
2017-08-14 00:01:00 | 2017 | 33 | 109.153 | 109.153 | 109.153 | 109.153 | 109.187 | 109.187 | 109.184 | 109.184 |
2017-08-21 00:01:00 | 2017 | 34 | 109.313 | 109.346 | 109.313 | 109.346 | 109.347 | 109.377 | 109.347 | 109.377 |
2017-08-28 00:01:00 | 2017 | 35 | 109.154 | 109.176 | 109.154 | 109.176 | 109.223 | 109.223 | 109.206 | 109.206 |
2017-09-04 00:01:00 | 2017 | 36 | 109.532 | 109.556 | 109.528 | 109.532 | 109.558 | 109.592 | 109.554 | 109.566 |
2017-09-11 00:01:00 | 2017 | 37 | 108.196 | 108.196 | 108.188 | 108.190 | 108.212 | 108.246 | 108.206 | 108.230 |
2017-09-18 00:01:00 | 2017 | 38 | 111.042 | 111.060 | 111.040 | 111.060 | 111.094 | 111.094 | 111.094 | 111.094 |
2017-09-25 00:01:00 | 2017 | 39 | 112.146 | 112.161 | 112.146 | 112.148 | 112.202 | 112.202 | 112.178 | 112.182 |
2017-10-02 00:01:00 | 2017 | 40 | 112.538 | 112.538 | 112.538 | 112.538 | 112.606 | 112.608 | 112.606 | 112.608 |
2017-10-09 00:01:00 | 2017 | 41 | 112.570 | 112.570 | 112.550 | 112.569 | 112.622 | 112.622 | 112.600 | 112.600 |
2017-10-16 00:01:00 | 2017 | 42 | 111.748 | 111.786 | 111.748 | 111.784 | 111.782 | 111.806 | 111.782 | 111.800 |
2017-10-23 00:01:00 | 2017 | 43 | 113.868 | 113.872 | 113.844 | 113.846 | 113.896 | 113.896 | 113.878 | 113.878 |
2017-10-30 00:01:00 | 2017 | 44 | 113.718 | 113.723 | 113.718 | 113.723 | 113.746 | 113.746 | 113.741 | 113.741 |
2017-11-06 00:01:00 | 2017 | 45 | 114.001 | 114.015 | 114.001 | 114.015 | 114.049 | 114.049 | 114.035 | 114.048 |
2017-11-13 00:01:00 | 2017 | 46 | 113.492 | 113.538 | 113.492 | 113.494 | 113.572 | 113.574 | 113.544 | 113.546 |
2017-11-20 00:01:00 | 2017 | 47 | 112.120 | 112.120 | 112.119 | 112.119 | 112.168 | 112.168 | 112.167 | 112.167 |
2017-11-27 00:01:00 | 2017 | 48 | 111.500 | 111.501 | 111.500 | 111.500 | 111.548 | 111.549 | 111.548 | 111.548 |
2017-12-04 00:01:00 | 2017 | 49 | 112.776 | 112.778 | 112.707 | 112.726 | 112.792 | 112.800 | 112.750 | 112.774 |
2017-12-11 00:01:00 | 2017 | 50 | 113.526 | 113.528 | 113.526 | 113.528 | 113.566 | 113.566 | 113.562 | 113.562 |
2017-12-18 00:01:00 | 2017 | 51 | 112.714 | 112.717 | 112.714 | 112.717 | 112.734 | 112.734 | 112.734 | 112.734 |
2017-12-26 00:01:00 | 2017 | 52 | 113.265 | 113.287 | 113.265 | 113.287 | 113.343 | 113.343 | 113.287 | 113.289 |
2018-01-02 00:01:00 | 2017 | 53 | NA | NA | NA | NA | NA | NA | NA | NA |
2018-01-02 00:01:00 | 2018 | 1 | 112.596 | 112.601 | 112.596 | 112.601 | 112.650 | 112.658 | 112.650 | 112.658 |
2018-01-08 00:01:00 | 2018 | 2 | 113.116 | 113.121 | 113.116 | 113.121 | 113.152 | 113.152 | 113.150 | 113.152 |
2018-01-15 00:01:00 | 2018 | 3 | 111.075 | 111.082 | 111.075 | 111.081 | 111.113 | 111.113 | 111.104 | 111.104 |
2018-01-22 00:01:00 | 2018 | 4 | 110.543 | 110.543 | 110.517 | 110.517 | 110.602 | 110.602 | 110.570 | 110.570 |
2018-01-29 00:01:00 | 2018 | 5 | 108.685 | 108.700 | 108.684 | 108.693 | 108.733 | 108.746 | 108.732 | 108.732 |
2018-02-05 00:01:00 | 2018 | 6 | 110.200 | 110.206 | 110.172 | 110.172 | 110.248 | 110.248 | 110.228 | 110.232 |
2018-02-12 00:01:00 | 2018 | 7 | 108.858 | 108.862 | 108.832 | 108.836 | 108.896 | 108.898 | 108.858 | 108.858 |
2018-02-19 00:01:00 | 2018 | 8 | 106.328 | 106.328 | 106.298 | 106.304 | 106.382 | 106.382 | 106.348 | 106.348 |
2018-02-26 00:01:00 | 2018 | 9 | 107.106 | 107.116 | 107.092 | 107.092 | 107.132 | 107.132 | 107.114 | 107.114 |
2018-03-05 00:01:00 | 2018 | 10 | 105.500 | 105.500 | 105.494 | 105.496 | 105.554 | 105.556 | 105.552 | 105.552 |
2018-03-12 00:01:00 | 2018 | 11 | 106.635 | 106.642 | 106.635 | 106.642 | 106.673 | 106.680 | 106.673 | 106.680 |
2018-03-19 00:01:00 | 2018 | 12 | 105.915 | 105.917 | 105.904 | 105.915 | 105.926 | 105.949 | 105.916 | 105.942 |
2018-03-26 00:01:00 | 2018 | 13 | 104.641 | 104.642 | 104.640 | 104.642 | 104.694 | 104.695 | 104.678 | 104.695 |
2018-04-02 00:01:00 | 2018 | 14 | 106.260 | 106.260 | 106.237 | 106.237 | 106.312 | 106.312 | 106.273 | 106.274 |
2018-04-09 00:01:00 | 2018 | 15 | 106.937 | 106.944 | 106.937 | 106.944 | 106.989 | 106.992 | 106.989 | 106.992 |
2018-04-16 00:01:00 | 2018 | 16 | 107.338 | 107.470 | 107.338 | 107.462 | 107.385 | 107.525 | 107.385 | 107.510 |
2018-04-23 00:01:00 | 2018 | 17 | 107.766 | 107.770 | 107.762 | 107.770 | 107.816 | 107.816 | 107.816 | 107.816 |
2018-04-30 00:01:00 | 2018 | 18 | 109.055 | 109.066 | 109.020 | 109.066 | 109.083 | 109.091 | 109.046 | 109.089 |
2018-05-07 00:01:00 | 2018 | 19 | 109.109 | 109.109 | 109.108 | 109.108 | 109.127 | 109.127 | 109.126 | 109.126 |
2018-05-14 00:01:00 | 2018 | 20 | 109.384 | 109.384 | 109.335 | 109.346 | 109.443 | 109.443 | 109.389 | 109.394 |
2018-05-21 00:01:00 | 2018 | 21 | 110.869 | 110.900 | 110.866 | 110.866 | 110.897 | 110.917 | 110.894 | 110.909 |
2018-05-28 00:01:00 | 2018 | 22 | 109.738 | 109.746 | 109.702 | 109.740 | 109.750 | 109.762 | 109.745 | 109.760 |
2018-06-04 00:01:00 | 2018 | 23 | 109.454 | 109.454 | 109.450 | 109.450 | 109.480 | 109.480 | 109.456 | 109.456 |
2018-06-11 00:01:00 | 2018 | 24 | 109.284 | 109.296 | 109.284 | 109.292 | 109.324 | 109.350 | 109.324 | 109.350 |
2018-06-18 00:01:00 | 2018 | 25 | 110.665 | 110.676 | 110.665 | 110.665 | 110.700 | 110.719 | 110.700 | 110.718 |
2018-06-25 00:01:00 | 2018 | 26 | 109.841 | 109.847 | 109.841 | 109.847 | 109.889 | 109.895 | 109.884 | 109.895 |
2018-07-02 00:01:00 | 2018 | 27 | 110.680 | 110.680 | 110.667 | 110.667 | 110.720 | 110.726 | 110.720 | 110.726 |
tb2 <- data_m1 %>% ddply(.(year, week), tail, 1) %>%
kbl('html', caption = 'Weekly Final Data Point', escape = FALSE) %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
tb2
index | year | week | BidOpen | BidHigh | BidLow | BidClose | AskOpen | AskHigh | AskLow | AskClose |
---|---|---|---|---|---|---|---|---|---|---|
2015-01-10 | 2015 | 1 | 118.522 | 118.522 | 118.495 | 118.495 | 118.556 | 118.601 | 118.556 | 118.601 |
2015-01-17 | 2015 | 2 | 117.462 | 117.554 | 117.461 | 117.548 | 117.490 | 117.669 | 117.482 | 117.669 |
2015-01-24 | 2015 | 3 | 117.724 | 117.770 | 117.714 | 117.732 | 117.834 | 117.836 | 117.796 | 117.816 |
2015-01-31 | 2015 | 4 | 117.493 | 117.534 | 117.438 | 117.528 | 117.548 | 117.614 | 117.548 | 117.576 |
2015-02-07 | 2015 | 5 | 119.134 | 119.134 | 119.090 | 119.090 | 119.158 | 119.222 | 119.158 | 119.222 |
2015-02-14 | 2015 | 6 | 118.719 | 118.719 | 118.696 | 118.696 | 118.919 | 118.944 | 118.919 | 118.944 |
2015-02-21 | 2015 | 7 | 119.050 | 119.056 | 118.966 | 119.010 | 119.098 | 119.116 | 119.036 | 119.042 |
2015-02-28 | 2015 | 8 | 119.596 | 119.636 | 119.576 | 119.576 | 119.620 | 119.710 | 119.618 | 119.704 |
2015-03-07 | 2015 | 9 | 120.784 | 120.784 | 120.708 | 120.708 | 120.804 | 120.885 | 120.804 | 120.885 |
2015-03-14 | 2015 | 10 | 121.426 | 121.428 | 121.350 | 121.416 | 121.448 | 121.496 | 121.388 | 121.458 |
2015-03-21 | 2015 | 11 | 120.048 | 120.052 | 120.008 | 120.018 | 120.072 | 120.100 | 120.056 | 120.068 |
2015-03-28 | 2015 | 12 | 119.112 | 119.112 | 119.109 | 119.109 | 119.150 | 119.171 | 119.150 | 119.171 |
2015-04-04 | 2015 | 13 | 118.929 | 118.929 | 118.928 | 118.928 | 119.016 | 119.041 | 119.016 | 119.041 |
2015-04-11 | 2015 | 14 | 120.170 | 120.174 | 120.170 | 120.174 | 120.206 | 120.261 | 120.206 | 120.261 |
2015-04-18 | 2015 | 15 | 118.889 | 118.897 | 118.889 | 118.897 | 118.971 | 118.978 | 118.971 | 118.978 |
2015-04-25 | 2015 | 16 | 118.906 | 118.930 | 118.906 | 118.926 | 118.974 | 119.020 | 118.974 | 119.015 |
2015-05-02 | 2015 | 17 | 120.202 | 120.202 | 120.171 | 120.171 | 120.256 | 120.256 | 120.251 | 120.251 |
2015-05-09 | 2015 | 18 | 119.754 | 119.771 | 119.754 | 119.771 | 119.806 | 119.870 | 119.806 | 119.870 |
2015-05-16 | 2015 | 19 | 119.366 | 119.366 | 119.352 | 119.359 | 119.418 | 119.467 | 119.418 | 119.450 |
2015-05-23 | 2015 | 20 | 121.544 | 121.544 | 121.500 | 121.500 | 121.576 | 121.591 | 121.576 | 121.581 |
2015-05-30 | 2015 | 21 | 124.130 | 124.130 | 124.112 | 124.112 | 124.154 | 124.191 | 124.154 | 124.191 |
2015-06-06 | 2015 | 22 | 125.577 | 125.588 | 125.575 | 125.576 | 125.638 | 125.667 | 125.638 | 125.655 |
2015-06-13 | 2015 | 23 | 123.359 | 123.359 | 123.349 | 123.349 | 123.446 | 123.471 | 123.446 | 123.471 |
2015-06-20 | 2015 | 24 | 122.672 | 122.672 | 122.632 | 122.632 | 122.724 | 122.725 | 122.711 | 122.711 |
2015-06-27 | 2015 | 25 | 123.884 | 123.884 | 123.809 | 123.809 | 123.912 | 123.926 | 123.901 | 123.901 |
2015-07-04 | 2015 | 26 | 122.854 | 122.854 | 122.799 | 122.799 | 122.914 | 122.934 | 122.888 | 122.901 |
2015-07-11 | 2015 | 27 | 122.721 | 122.844 | 122.654 | 122.792 | 122.780 | 122.893 | 122.780 | 122.893 |
2015-07-18 | 2015 | 28 | 124.075 | 124.088 | 124.020 | 124.054 | 124.103 | 124.126 | 124.070 | 124.078 |
2015-07-25 | 2015 | 29 | 123.800 | 123.800 | 123.769 | 123.769 | 123.832 | 123.856 | 123.832 | 123.848 |
2015-08-01 | 2015 | 30 | 123.875 | 123.875 | 123.836 | 123.836 | 123.944 | 123.944 | 123.944 | 123.944 |
2015-08-08 | 2015 | 31 | 124.211 | 124.213 | 124.202 | 124.202 | 124.228 | 124.233 | 124.224 | 124.224 |
2015-08-15 | 2015 | 32 | 124.315 | 124.316 | 124.314 | 124.314 | 124.337 | 124.340 | 124.337 | 124.340 |
2015-08-22 | 2015 | 33 | 122.052 | 122.052 | 122.023 | 122.023 | 122.064 | 122.106 | 122.064 | 122.106 |
2015-08-29 | 2015 | 34 | 121.736 | 121.736 | 121.682 | 121.696 | 121.750 | 121.788 | 121.750 | 121.775 |
2015-09-05 | 2015 | 35 | 119.030 | 119.030 | 119.009 | 119.026 | 119.036 | 119.055 | 119.029 | 119.055 |
2015-09-12 | 2015 | 36 | 120.582 | 120.582 | 120.574 | 120.574 | 120.595 | 120.595 | 120.587 | 120.587 |
2015-09-19 | 2015 | 37 | 119.942 | 119.959 | 119.919 | 119.955 | 119.991 | 120.046 | 119.991 | 120.036 |
2015-09-26 | 2015 | 38 | 120.574 | 120.574 | 120.544 | 120.544 | 120.610 | 120.645 | 120.610 | 120.623 |
2015-10-03 | 2015 | 39 | 119.860 | 119.875 | 119.860 | 119.875 | 119.945 | 119.954 | 119.945 | 119.954 |
2015-10-10 | 2015 | 40 | 120.208 | 120.208 | 120.189 | 120.189 | 120.244 | 120.278 | 120.244 | 120.278 |
2015-10-17 | 2015 | 41 | 119.436 | 119.436 | 119.407 | 119.407 | 119.476 | 119.498 | 119.476 | 119.489 |
2015-10-24 | 2015 | 42 | 121.422 | 121.422 | 121.419 | 121.419 | 121.498 | 121.501 | 121.498 | 121.501 |
2015-10-31 | 2015 | 43 | 120.594 | 120.594 | 120.584 | 120.584 | 120.630 | 120.666 | 120.630 | 120.666 |
2015-11-07 | 2015 | 44 | 123.128 | 123.169 | 123.117 | 123.119 | 123.199 | 123.226 | 123.199 | 123.226 |
2015-11-14 | 2015 | 45 | 122.576 | 122.579 | 122.564 | 122.579 | 122.655 | 122.658 | 122.646 | 122.658 |
2015-11-21 | 2015 | 46 | 122.768 | 122.768 | 122.752 | 122.752 | 122.810 | 122.831 | 122.810 | 122.831 |
2015-11-28 | 2015 | 47 | 122.722 | 122.812 | 122.722 | 122.812 | 122.849 | 122.894 | 122.849 | 122.888 |
2015-12-05 | 2015 | 48 | 123.113 | 123.113 | 123.088 | 123.088 | 123.128 | 123.144 | 123.126 | 123.126 |
2015-12-12 | 2015 | 49 | 120.950 | 120.956 | 120.929 | 120.929 | 120.988 | 121.001 | 120.988 | 120.990 |
2015-12-19 | 2015 | 50 | 121.138 | 121.138 | 121.099 | 121.099 | 121.176 | 121.193 | 121.176 | 121.181 |
2015-12-26 | 2015 | 51 | 120.273 | 120.274 | 120.269 | 120.269 | 120.281 | 120.281 | 120.279 | 120.279 |
2016-01-02 | 2015 | 52 | 120.206 | 120.222 | 120.184 | 120.191 | 120.212 | 120.237 | 120.212 | 120.225 |
2016-01-09 | 2016 | 1 | 117.226 | 117.226 | 117.198 | 117.201 | 117.281 | 117.291 | 117.281 | 117.283 |
2016-01-16 | 2016 | 2 | 116.969 | 116.969 | 116.954 | 116.954 | 117.070 | 117.071 | 117.070 | 117.071 |
2016-01-23 | 2016 | 3 | 118.760 | 118.760 | 118.737 | 118.744 | 118.788 | 118.826 | 118.788 | 118.826 |
2016-01-30 | 2016 | 4 | 121.115 | 121.120 | 121.030 | 121.119 | 121.135 | 121.140 | 121.110 | 121.139 |
2016-02-06 | 2016 | 5 | 116.824 | 116.824 | 116.791 | 116.798 | 116.870 | 116.918 | 116.838 | 116.840 |
2016-02-13 | 2016 | 6 | 113.200 | 113.208 | 113.144 | 113.170 | 113.221 | 113.276 | 113.200 | 113.248 |
2016-02-20 | 2016 | 7 | 112.551 | 112.556 | 112.539 | 112.539 | 112.581 | 112.596 | 112.562 | 112.596 |
2016-02-27 | 2016 | 8 | 113.962 | 113.964 | 113.959 | 113.964 | 113.991 | 113.994 | 113.991 | 113.994 |
2016-03-05 | 2016 | 9 | 113.757 | 113.774 | 113.740 | 113.774 | 113.776 | 113.834 | 113.774 | 113.820 |
2016-03-12 | 2016 | 10 | 113.814 | 113.846 | 113.788 | 113.790 | 113.845 | 113.878 | 113.834 | 113.876 |
2016-03-19 | 2016 | 11 | 111.532 | 111.544 | 111.516 | 111.542 | 111.561 | 111.592 | 111.548 | 111.582 |
2016-03-26 | 2016 | 12 | 113.016 | 113.029 | 113.016 | 113.029 | 113.110 | 113.118 | 113.110 | 113.118 |
2016-04-02 | 2016 | 13 | 111.600 | 111.600 | 111.599 | 111.599 | 111.638 | 111.666 | 111.638 | 111.666 |
2016-04-09 | 2016 | 14 | 108.062 | 108.062 | 108.020 | 108.048 | 108.102 | 108.116 | 108.102 | 108.104 |
2016-04-16 | 2016 | 15 | 108.776 | 108.776 | 108.738 | 108.744 | 108.790 | 108.798 | 108.774 | 108.780 |
2016-04-23 | 2016 | 16 | 111.791 | 111.804 | 111.780 | 111.788 | 111.818 | 111.842 | 111.798 | 111.804 |
2016-04-30 | 2016 | 17 | 106.314 | 106.338 | 106.283 | 106.283 | 106.369 | 106.392 | 106.332 | 106.376 |
2016-05-07 | 2016 | 18 | 107.049 | 107.110 | 107.031 | 107.100 | 107.124 | 107.144 | 107.084 | 107.116 |
2016-05-14 | 2016 | 19 | 108.634 | 108.634 | 108.601 | 108.601 | 108.654 | 108.690 | 108.654 | 108.689 |
2016-05-21 | 2016 | 20 | 110.126 | 110.146 | 110.084 | 110.098 | 110.156 | 110.176 | 110.140 | 110.174 |
2016-05-28 | 2016 | 21 | 110.220 | 110.220 | 110.187 | 110.187 | 110.256 | 110.284 | 110.256 | 110.284 |
2016-06-04 | 2016 | 22 | 106.536 | 106.544 | 106.506 | 106.538 | 106.554 | 106.598 | 106.546 | 106.554 |
2016-06-11 | 2016 | 23 | 106.922 | 106.924 | 106.912 | 106.916 | 106.952 | 106.958 | 106.946 | 106.950 |
2016-06-18 | 2016 | 24 | 104.111 | 104.111 | 104.069 | 104.083 | 104.207 | 104.207 | 104.166 | 104.166 |
2016-06-25 | 2016 | 25 | 102.149 | 102.199 | 102.149 | 102.199 | 102.371 | 102.441 | 102.371 | 102.441 |
2016-07-02 | 2016 | 26 | 102.551 | 102.551 | 102.464 | 102.464 | 102.562 | 102.562 | 102.528 | 102.530 |
2016-07-09 | 2016 | 27 | 100.569 | 100.569 | 100.569 | 100.569 | 100.592 | 100.611 | 100.592 | 100.611 |
2016-07-16 | 2016 | 28 | 104.839 | 104.839 | 104.784 | 104.804 | 104.902 | 104.919 | 104.848 | 104.898 |
2016-07-23 | 2016 | 29 | 106.030 | 106.030 | 105.999 | 106.012 | 106.084 | 106.110 | 106.076 | 106.090 |
2016-07-30 | 2016 | 30 | 102.024 | 102.024 | 102.010 | 102.010 | 102.100 | 102.100 | 102.080 | 102.080 |
2016-08-06 | 2016 | 31 | 101.819 | 101.819 | 101.784 | 101.792 | 101.856 | 101.882 | 101.848 | 101.872 |
2016-08-13 | 2016 | 32 | 101.266 | 101.268 | 101.266 | 101.268 | 101.346 | 101.348 | 101.346 | 101.348 |
2016-08-20 | 2016 | 33 | 100.174 | 100.187 | 100.174 | 100.174 | 100.239 | 100.245 | 100.239 | 100.245 |
2016-08-27 | 2016 | 34 | 101.820 | 101.820 | 101.759 | 101.759 | 101.857 | 101.857 | 101.856 | 101.856 |
2016-09-03 | 2016 | 35 | 103.980 | 104.016 | 103.874 | 103.874 | 104.051 | 104.051 | 103.967 | 103.967 |
2016-09-10 | 2016 | 36 | 102.690 | 102.690 | 102.644 | 102.644 | 102.731 | 102.731 | 102.726 | 102.726 |
2016-09-17 | 2016 | 37 | 102.259 | 102.259 | 102.234 | 102.244 | 102.285 | 102.328 | 102.285 | 102.316 |
2016-09-24 | 2016 | 38 | 100.987 | 100.987 | 100.987 | 100.987 | 101.046 | 101.081 | 101.046 | 101.081 |
2016-10-01 | 2016 | 39 | 101.269 | 101.279 | 101.269 | 101.279 | 101.360 | 101.372 | 101.360 | 101.372 |
2016-10-08 | 2016 | 40 | 102.887 | 102.896 | 102.877 | 102.896 | 102.906 | 102.948 | 102.900 | 102.948 |
2016-10-15 | 2016 | 41 | 104.178 | 104.183 | 104.178 | 104.183 | 104.217 | 104.218 | 104.217 | 104.218 |
2016-10-22 | 2016 | 42 | 103.820 | 103.824 | 103.820 | 103.822 | 103.836 | 103.875 | 103.836 | 103.838 |
2016-10-29 | 2016 | 43 | 104.710 | 104.710 | 104.665 | 104.665 | 104.720 | 104.755 | 104.720 | 104.755 |
2016-11-05 | 2016 | 44 | 103.072 | 103.099 | 103.049 | 103.099 | 103.124 | 103.149 | 103.124 | 103.146 |
2016-11-12 | 2016 | 45 | 106.615 | 106.638 | 106.590 | 106.590 | 106.658 | 106.659 | 106.647 | 106.652 |
2016-11-19 | 2016 | 46 | 110.922 | 110.922 | 110.859 | 110.859 | 110.934 | 110.951 | 110.920 | 110.951 |
2016-11-26 | 2016 | 47 | 112.942 | 113.204 | 112.942 | 113.163 | 113.040 | 113.258 | 113.040 | 113.254 |
2016-12-03 | 2016 | 48 | 113.489 | 113.489 | 113.489 | 113.489 | 113.532 | 113.551 | 113.532 | 113.551 |
2016-12-10 | 2016 | 49 | 115.177 | 115.177 | 115.159 | 115.159 | 115.238 | 115.242 | 115.238 | 115.242 |
2016-12-17 | 2016 | 50 | 117.990 | 117.990 | 117.905 | 117.905 | 118.009 | 118.011 | 117.972 | 117.976 |
2016-12-24 | 2016 | 51 | 117.277 | 117.277 | 117.238 | 117.242 | 117.372 | 117.372 | 117.314 | 117.322 |
2017-01-01 | 2016 | 52 | 116.994 | 117.004 | 116.978 | 116.978 | 117.083 | 117.096 | 117.076 | 117.076 |
2017-01-08 | 2017 | 1 | 116.928 | 116.928 | 116.899 | 116.899 | 116.944 | 116.958 | 116.941 | 116.947 |
2017-01-14 | 2017 | 2 | 114.447 | 114.506 | 114.427 | 114.427 | 114.511 | 114.536 | 114.511 | 114.518 |
2017-01-21 | 2017 | 3 | 114.569 | 114.569 | 114.569 | 114.569 | 114.640 | 114.665 | 114.640 | 114.665 |
2017-01-28 | 2017 | 4 | 115.060 | 115.076 | 115.059 | 115.068 | 115.110 | 115.126 | 115.102 | 115.120 |
2017-02-04 | 2017 | 5 | 112.564 | 112.570 | 112.542 | 112.552 | 112.572 | 112.606 | 112.568 | 112.581 |
2017-02-11 | 2017 | 6 | 113.212 | 113.243 | 113.202 | 113.222 | 113.279 | 113.317 | 113.275 | 113.308 |
2017-02-18 | 2017 | 7 | 112.885 | 112.900 | 112.878 | 112.896 | 112.899 | 112.922 | 112.899 | 112.916 |
2017-02-25 | 2017 | 8 | 112.130 | 112.164 | 112.103 | 112.145 | 112.190 | 112.219 | 112.187 | 112.193 |
2017-03-04 | 2017 | 9 | 114.013 | 114.034 | 113.995 | 114.023 | 114.057 | 114.104 | 114.057 | 114.061 |
2017-03-11 | 2017 | 10 | 114.799 | 114.813 | 114.763 | 114.778 | 114.876 | 114.883 | 114.828 | 114.836 |
2017-03-18 | 2017 | 11 | 112.702 | 112.710 | 112.678 | 112.682 | 112.738 | 112.763 | 112.719 | 112.733 |
2017-03-25 | 2017 | 12 | 111.248 | 111.314 | 111.222 | 111.312 | 111.291 | 111.366 | 111.273 | 111.357 |
2017-04-01 | 2017 | 13 | 111.372 | 111.378 | 111.346 | 111.363 | 111.401 | 111.419 | 111.397 | 111.408 |
2017-04-08 | 2017 | 14 | 111.085 | 111.085 | 111.054 | 111.054 | 111.118 | 111.139 | 111.118 | 111.139 |
2017-04-15 | 2017 | 15 | 108.585 | 108.592 | 108.560 | 108.565 | 108.681 | 108.687 | 108.629 | 108.641 |
2017-04-22 | 2017 | 16 | 109.008 | 109.008 | 108.951 | 108.951 | 109.084 | 109.084 | 109.049 | 109.049 |
2017-04-29 | 2017 | 17 | 111.512 | 111.512 | 111.510 | 111.510 | 111.537 | 111.537 | 111.537 | 111.537 |
2017-05-06 | 2017 | 18 | 112.687 | 112.687 | 112.618 | 112.638 | 112.776 | 112.776 | 112.701 | 112.728 |
2017-05-13 | 2017 | 19 | 113.335 | 113.335 | 113.335 | 113.335 | 113.360 | 113.362 | 113.360 | 113.362 |
2017-05-20 | 2017 | 20 | 111.271 | 111.271 | 111.241 | 111.262 | 111.293 | 111.300 | 111.280 | 111.281 |
2017-05-27 | 2017 | 21 | 111.312 | 111.320 | 111.304 | 111.309 | 111.336 | 111.345 | 111.323 | 111.323 |
2017-06-03 | 2017 | 22 | 110.428 | 110.460 | 110.422 | 110.438 | 110.441 | 110.468 | 110.439 | 110.453 |
2017-06-10 | 2017 | 23 | 110.321 | 110.321 | 110.316 | 110.316 | 110.334 | 110.351 | 110.334 | 110.351 |
2017-06-17 | 2017 | 24 | 110.864 | 110.869 | 110.861 | 110.865 | 110.881 | 110.892 | 110.878 | 110.882 |
2017-06-24 | 2017 | 25 | 111.284 | 111.290 | 111.283 | 111.290 | 111.298 | 111.307 | 111.298 | 111.307 |
2017-07-01 | 2017 | 26 | 112.399 | 112.399 | 112.376 | 112.376 | 112.430 | 112.450 | 112.430 | 112.450 |
2017-07-08 | 2017 | 27 | 113.904 | 113.904 | 113.900 | 113.904 | 113.922 | 113.922 | 113.917 | 113.921 |
2017-07-15 | 2017 | 28 | 112.527 | 112.527 | 112.515 | 112.515 | 112.544 | 112.557 | 112.544 | 112.557 |
2017-07-22 | 2017 | 29 | 111.134 | 111.134 | 111.115 | 111.121 | 111.147 | 111.148 | 111.133 | 111.134 |
2017-07-29 | 2017 | 30 | 110.698 | 110.705 | 110.680 | 110.699 | 110.710 | 110.726 | 110.709 | 110.710 |
2017-08-05 | 2017 | 31 | 110.677 | 110.684 | 110.675 | 110.682 | 110.692 | 110.698 | 110.688 | 110.696 |
2017-08-12 | 2017 | 32 | 109.149 | 109.172 | 109.147 | 109.172 | 109.162 | 109.215 | 109.159 | 109.193 |
2017-08-19 | 2017 | 33 | 109.189 | 109.201 | 109.169 | 109.199 | 109.207 | 109.221 | 109.203 | 109.212 |
2017-08-26 | 2017 | 34 | 109.322 | 109.322 | 109.320 | 109.322 | 109.364 | 109.364 | 109.362 | 109.364 |
2017-09-02 | 2017 | 35 | 110.234 | 110.236 | 110.228 | 110.228 | 110.276 | 110.282 | 110.276 | 110.280 |
2017-09-09 | 2017 | 36 | 107.838 | 107.838 | 107.832 | 107.836 | 107.860 | 107.864 | 107.856 | 107.858 |
2017-09-16 | 2017 | 37 | 110.828 | 110.830 | 110.828 | 110.830 | 110.860 | 110.862 | 110.860 | 110.862 |
2017-09-23 | 2017 | 38 | 111.992 | 111.992 | 111.990 | 111.990 | 112.000 | 112.000 | 112.000 | 112.000 |
2017-09-30 | 2017 | 39 | 112.499 | 112.499 | 112.460 | 112.464 | 112.529 | 112.562 | 112.524 | 112.562 |
2017-10-07 | 2017 | 40 | 112.606 | 112.608 | 112.600 | 112.600 | 112.682 | 112.686 | 112.682 | 112.686 |
2017-10-14 | 2017 | 41 | 111.834 | 111.834 | 111.826 | 111.826 | 111.876 | 111.880 | 111.876 | 111.878 |
2017-10-21 | 2017 | 42 | 113.516 | 113.518 | 113.503 | 113.508 | 113.536 | 113.557 | 113.534 | 113.551 |
2017-10-28 | 2017 | 43 | 113.660 | 113.662 | 113.635 | 113.635 | 113.704 | 113.715 | 113.702 | 113.715 |
2017-11-04 | 2017 | 44 | 114.048 | 114.048 | 114.042 | 114.042 | 114.087 | 114.091 | 114.085 | 114.085 |
2017-11-11 | 2017 | 45 | 113.522 | 113.522 | 113.505 | 113.505 | 113.542 | 113.564 | 113.542 | 113.548 |
2017-11-18 | 2017 | 46 | 112.130 | 112.142 | 112.085 | 112.085 | 112.166 | 112.188 | 112.150 | 112.164 |
2017-11-25 | 2017 | 47 | 111.502 | 111.502 | 111.492 | 111.501 | 111.545 | 111.545 | 111.535 | 111.544 |
2017-12-02 | 2017 | 48 | 112.164 | 112.164 | 112.162 | 112.164 | 112.216 | 112.216 | 112.216 | 112.216 |
2017-12-09 | 2017 | 49 | 113.464 | 113.466 | 113.444 | 113.448 | 113.474 | 113.504 | 113.474 | 113.498 |
2017-12-16 | 2017 | 50 | 112.584 | 112.590 | 112.578 | 112.581 | 112.654 | 112.660 | 112.648 | 112.657 |
2017-12-23 | 2017 | 51 | 113.254 | 113.265 | 113.254 | 113.265 | 113.328 | 113.343 | 113.328 | 113.343 |
2017-12-31 | 2017 | 52 | 112.660 | 112.660 | 112.643 | 112.651 | 112.700 | 112.729 | 112.700 | 112.729 |
2018-01-07 | 2017 | 53 | NA | NA | NA | NA | NA | NA | NA | NA |
2018-01-07 | 2018 | 1 | 113.032 | 113.032 | 113.018 | 113.018 | 113.092 | 113.100 | 113.090 | 113.098 |
2018-01-13 | 2018 | 2 | 111.002 | 111.006 | 110.988 | 110.996 | 111.044 | 111.060 | 111.026 | 111.052 |
2018-01-20 | 2018 | 3 | 110.814 | 110.814 | 110.814 | 110.814 | 110.856 | 110.856 | 110.854 | 110.854 |
2018-01-27 | 2018 | 4 | 108.624 | 108.626 | 108.589 | 108.589 | 108.634 | 108.648 | 108.632 | 108.632 |
2018-02-03 | 2018 | 5 | 110.153 | 110.153 | 110.152 | 110.152 | 110.195 | 110.195 | 110.195 | 110.195 |
2018-02-10 | 2018 | 6 | 108.780 | 108.780 | 108.768 | 108.770 | 108.812 | 108.824 | 108.812 | 108.824 |
2018-02-17 | 2018 | 7 | 106.300 | 106.300 | 106.272 | 106.272 | 106.312 | 106.325 | 106.303 | 106.315 |
2018-02-24 | 2018 | 8 | 106.863 | 106.863 | 106.858 | 106.858 | 106.919 | 106.919 | 106.914 | 106.914 |
2018-03-03 | 2018 | 9 | 105.722 | 105.722 | 105.696 | 105.712 | 105.730 | 105.762 | 105.730 | 105.757 |
2018-03-10 | 2018 | 10 | 106.807 | 106.818 | 106.807 | 106.814 | 106.850 | 106.850 | 106.822 | 106.822 |
2018-03-17 | 2018 | 11 | 105.964 | 105.966 | 105.953 | 105.953 | 106.001 | 106.007 | 106.001 | 106.007 |
2018-03-24 | 2018 | 12 | 104.728 | 104.730 | 104.708 | 104.712 | 104.744 | 104.766 | 104.742 | 104.766 |
2018-03-31 | 2018 | 13 | 106.261 | 106.261 | 106.258 | 106.260 | 106.312 | 106.312 | 106.312 | 106.312 |
2018-04-07 | 2018 | 14 | 106.926 | 106.926 | 106.913 | 106.915 | 106.950 | 106.962 | 106.950 | 106.962 |
2018-04-14 | 2018 | 15 | 107.334 | 107.338 | 107.334 | 107.338 | 107.377 | 107.385 | 107.377 | 107.385 |
2018-04-21 | 2018 | 16 | 107.628 | 107.628 | 107.616 | 107.616 | 107.656 | 107.674 | 107.656 | 107.674 |
2018-04-28 | 2018 | 17 | 109.042 | 109.046 | 109.022 | 109.022 | 109.074 | 109.088 | 109.064 | 109.080 |
2018-05-05 | 2018 | 18 | 109.055 | 109.059 | 109.055 | 109.056 | 109.098 | 109.105 | 109.098 | 109.105 |
2018-05-12 | 2018 | 19 | 109.360 | 109.360 | 109.358 | 109.358 | 109.412 | 109.412 | 109.410 | 109.410 |
2018-05-19 | 2018 | 20 | 110.746 | 110.746 | 110.730 | 110.736 | 110.760 | 110.789 | 110.760 | 110.783 |
2018-05-26 | 2018 | 21 | 109.378 | 109.380 | 109.362 | 109.362 | 109.398 | 109.409 | 109.398 | 109.409 |
2018-06-02 | 2018 | 22 | 109.514 | 109.514 | 109.488 | 109.488 | 109.524 | 109.548 | 109.524 | 109.535 |
2018-06-09 | 2018 | 23 | 109.511 | 109.536 | 109.507 | 109.509 | 109.554 | 109.558 | 109.550 | 109.554 |
2018-06-16 | 2018 | 24 | 110.644 | 110.650 | 110.644 | 110.644 | 110.687 | 110.692 | 110.687 | 110.691 |
2018-06-23 | 2018 | 25 | 109.982 | 109.984 | 109.976 | 109.976 | 109.992 | 109.994 | 109.984 | 109.984 |
2018-06-30 | 2018 | 26 | 110.678 | 110.678 | 110.666 | 110.666 | 110.698 | 110.708 | 110.698 | 110.708 |
2018-07-07 | 2018 | 27 | 110.450 | 110.454 | 110.446 | 110.449 | 110.477 | 110.499 | 110.477 | 110.499 |
## Tidy dataset for modelling.
data_m1 %<>%
dplyr::mutate(open = (BidOpen + AskOpen)/2, close = (BidClose + AskClose)/2) %>%
dplyr::rename(high = BidHigh, low = AskLow) %>% #use bid price for sell.
dplyr::select(index, open, high, low, close) # and ask price for buy.
Here I try to check if the filled dataset bias or not. Due to above I used open = (BidOpen + AskOpen)/2
, high = BidHigh
, low = AskLow
and close = (BidClose + AskClose)/2
1. There will probably have bias.
tb3 <- data_m1 %>% dplyr::mutate(
bias.open = if_else(open>high|open<low, 1, 0),
bias.high = if_else(high<open|high<low|high<close, 1, 0),
bias.low = if_else(low>open|low>high|low>close, 1, 0),
bias.close = if_else(close>high|close<low, 1, 0)) %>%
dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)# %>%
# kable(caption = 'Bias Imputation') %>%
# kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
# scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
tb3
## # A tibble: 709,076 x 9
## index open high low close bias.open bias.high bias.low
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-01-05 00:01:00 121. 121. 121. 121. 1 1 1
## 2 2015-01-05 00:02:00 121. 121. 121. 121. 1 1 1
## 3 2015-01-05 00:04:00 121. 121. 121. 121. 1 1 0
## 4 2015-01-05 00:05:00 121. 121. 121. 121. 1 1 0
## 5 2015-01-05 00:09:00 121. 121. 121. 121. 0 0 1
## 6 2015-01-05 00:10:00 121. 121. 121. 121. 1 1 1
## 7 2015-01-05 00:11:00 121. 121. 121. 121. 1 1 1
## 8 2015-01-05 00:12:00 121. 121. 121. 121. 1 1 1
## 9 2015-01-05 00:13:00 121. 121. 121. 121. 1 1 1
## 10 2015-01-05 00:14:00 121. 121. 121. 121. 0 0 1
## # ... with 709,066 more rows, and 1 more variable: bias.close <dbl>
# -------- eval=FALSE -----------
## Below prove that the dataset has no any bias or error.
> read_rds(paste0(dtr1, '/data_m1.rds')) %>% dplyr::mutate(
+ open = BidOpen, high = BidHigh, low = BidLow, close = BidClose,
+ bias.open = if_else(open>high|open<low, 1, 0),
+ bias.high = if_else(high<open|high<low|high<close, 1, 0),
+ bias.low = if_else(low>open|low>high|low>close, 1, 0),
+ bias.close = if_else(close>high|close<low, 1, 0)) %>%
+ dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)
# A tibble: 0 x 19
# ... with 19 variables: index <dttm>, year <dbl>, week <dbl>, BidOpen <dbl>, BidHigh <dbl>, BidLow <dbl>,
# BidClose <dbl>, AskOpen <dbl>, AskHigh <dbl>, AskLow <dbl>, AskClose <dbl>, open <dbl>, high <dbl>, low <dbl>,
# close <dbl>, bias.open <dbl>, bias.high <dbl>, bias.low <dbl>, bias.close <dbl>
> read_rds(paste0(dtr, '/data_tm1.rds')) %>% dplyr::mutate(
+ open = BidOpen, high = BidHigh, low = BidLow, close = BidClose,
+ bias.open = if_else(open>high|open<low, 1, 0),
+ bias.high = if_else(high<open|high<low|high<close, 1, 0),
+ bias.low = if_else(low>open|low>high|low>close, 1, 0),
+ bias.close = if_else(close>high|close<low, 1, 0)) %>%
+ dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)
# A tibble: 0 x 19
# ... with 19 variables: index <dttm>, year <dbl>, week <dbl>, AskOpen <dbl>, AskHigh <dbl>, AskLow <dbl>,
# AskClose <dbl>, BidOpen <dbl>, BidHigh <dbl>, BidLow <dbl>, BidClose <dbl>, open <dbl>, high <dbl>, low <dbl>,
# close <dbl>, bias.open <dbl>, bias.high <dbl>, bias.low <dbl>, bias.close <dbl>
> read_rds(paste0(dtr1, '/data_m1.rds')) %>% dplyr::mutate(
+ open = AskOpen, high = AskHigh, low = AskLow, close = AskClose,
+ bias.open = if_else(open>high|open<low, 1, 0),
+ bias.high = if_else(high<open|high<low|high<close, 1, 0),
+ bias.low = if_else(low>open|low>high|low>close, 1, 0),
+ bias.close = if_else(close>high|close<low, 1, 0)) %>%
+ dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)
# A tibble: 0 x 19
# ... with 19 variables: index <dttm>, year <dbl>, week <dbl>, BidOpen <dbl>, BidHigh <dbl>, BidLow <dbl>,
# BidClose <dbl>, AskOpen <dbl>, AskHigh <dbl>, AskLow <dbl>, AskClose <dbl>, open <dbl>, high <dbl>, low <dbl>,
# close <dbl>, bias.open <dbl>, bias.high <dbl>, bias.low <dbl>, bias.close <dbl>
> read_rds(dtr1, paste0('/data_tm1.rds')) %>% dplyr::mutate(
+ open = AskOpen, high = AskHigh, low = AskLow, close = AskClose,
+ bias.open = if_else(open>high|open<low, 1, 0),
+ bias.high = if_else(high<open|high<low|high<close, 1, 0),
+ bias.low = if_else(low>open|low>high|low>close, 1, 0),
+ bias.close = if_else(close>high|close<low, 1, 0)) %>%
+ dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)
# A tibble: 0 x 19
# ... with 19 variables: index <dttm>, year <dbl>, week <dbl>, AskOpen <dbl>, AskHigh <dbl>, AskLow <dbl>,
# AskClose <dbl>, BidOpen <dbl>, BidHigh <dbl>, BidLow <dbl>, BidClose <dbl>, open <dbl>, high <dbl>, low <dbl>,
# close <dbl>, bias.open <dbl>, bias.high <dbl>, bias.low <dbl>, bias.close <dbl>
I initially try to use bid
for high and ask
for low in order to produce a better prediction price for buy and sell. However, I use the mean value of OHLC all prices for this paper to avoid the statistical error/bias.
Due to 1min
dataset is better than (more complete) tickdata-to-1min
, here I use the 1min
dataset.
if(!exists('data_m1')) {
data_m1 <- read_rds(paste0(dtr1s, '/data_m1.rds'))
}
if(names(data_m1) %>% str_detect('Bid|Ask') %>% any()) {
data_m1 %<>%
dplyr::mutate(open = (BidOpen + AskOpen)/2,
high = (BidHigh + AskHigh)/2,
low = (BidLow + AskLow)/2,
close = (BidClose + AskClose)/2) %>%
dplyr::select(index, open, high, low, close)
}
tb4 <- data_m1 %>% dplyr::mutate(
bias.open = if_else(open>high|open<low, 1, 0),
bias.high = if_else(high<open|high<low|high<close, 1, 0),
bias.low = if_else(low>open|low>high|low>close, 1, 0),
bias.close = if_else(close>high|close<low, 1, 0)) %>%
dplyr::filter(bias.open==1|bias.high==1|bias.low==1|bias.close==1)# %>%
# kable(caption = 'Bias Imputation') %>%
# kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
# scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
tb4
## # A tibble: 709,076 x 9
## index open high low close bias.open bias.high bias.low
## <dttm> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2015-01-05 00:01:00 121. 121. 121. 121. 1 1 1
## 2 2015-01-05 00:02:00 121. 121. 121. 121. 1 1 1
## 3 2015-01-05 00:04:00 121. 121. 121. 121. 1 1 0
## 4 2015-01-05 00:05:00 121. 121. 121. 121. 1 1 0
## 5 2015-01-05 00:09:00 121. 121. 121. 121. 0 0 1
## 6 2015-01-05 00:10:00 121. 121. 121. 121. 1 1 1
## 7 2015-01-05 00:11:00 121. 121. 121. 121. 1 1 1
## 8 2015-01-05 00:12:00 121. 121. 121. 121. 1 1 1
## 9 2015-01-05 00:13:00 121. 121. 121. 121. 1 1 1
## 10 2015-01-05 00:14:00 121. 121. 121. 121. 0 0 1
## # ... with 709,066 more rows, and 1 more variable: bias.close <dbl>
//<script type="text/javascript" src="//cdn.datacamp.com/dcl-react.js.gz"></script>
Source : DataCamp Light
You are feel free to surf Online Coding Platform Example for R, Python and also Shell.
Below articles introduce TBATS models tbats()
and Dynamic harmonic regression with multiple seasonal periods auto.arima()
. Here I also includes ts()
, MIDAS midasr()
, GARCH-MIDAS, mcsGARCH and Levy Process for this research.
Progress Function
task_progress <- function(mbase, timeID0 = NULL, scs = 60, .pattern = '^mts|^sets', .loops = TRUE) {
## ------------- 定时查询进度 ----------------------
## 每分钟自动查询与更新以上模拟预测汇价进度(储存文件量)。
require('magrittr')
require('tibble')
if(!is.data.frame(class(mbase))) {
mbase %<>% data.frame
}
if (.loops == TRUE) {
while(1) {
cat('Current Tokyo Time :', as.character(now('Asia/Tokyo')), '\n\n')
y = as_date(mbase$index) %>%
unique
y <- y[weekdays(y) != 'Saturday'] #filter and omit the weekly last price which is 12:00am on saturday
datee = y
if(is.null(timeID0)) {
timeID0 = y[1]
} else if (is.Date(timeID0)) {
timeID0 = as_date(timeID0)
} else {
timeID0 = as_date(mbase$index) %>%
unique
}
y = y[y >= timeID0]
x = list.files(paste0('./data/fx/USDJPY/'), pattern = .pattern) %>%
str_replace_all('.rds', '') %>%
str_replace_all('.201', '_201') %>%
str_split_fixed('_', '2') %>%
as_tibble %>%
dplyr::rename('Model' = 'V1', 'Date' = 'V2') %>%
dplyr::mutate(Model = factor(Model), Date = as_date(Date))
x = join(tibble(Date = datee), x) %>%
as_tibble
x %<>% na.omit
x %<>% dplyr::mutate(binary = if_else(is.na(Model), 0, 1)) %>%
spread(Model, binary)
z <- ldply(x[,-1], function(zz) {
na.omit(zz) %>% length }) %>%
dplyr::rename(x = V1) %>%
dplyr::mutate(n = length(y), progress = percent(x/n))
print(z)
prg = sum(z$x)/sum(z$n)
cat('\n================', as.character(percent(prg)), '================\n\n')
if (prg == 1) break #倘若进度达到100%就停止更新。
Sys.sleep(scs) #以上ldply()耗时3~5秒,而休息时间60秒。
}
} else {
cat('Current Tokyo Time :', as.character(now('Asia/Tokyo')), '\n\n')
y = as_date(mbase$index) %>%
unique
datee = y
if(is.null(timeID0)) {
timeID0 = y[1]
} else if (is.Date(timeID0)) {
timeID0 = as_date(timeID0)
} else {
timeID0 = as_date(mbase$index) %>%
unique
}
y = y[y >= timeID0]
x = list.files(paste0('./data/fx/USDJPY/'), pattern = .pattern) %>%
str_replace_all('.rds', '') %>%
str_replace_all('.201', '_201') %>%
str_split_fixed('_', '2') %>%
as_tibble %>%
dplyr::rename('Model' = 'V1', 'Date' = 'V2') %>%
dplyr::mutate(Model = factor(Model), Date = as_date(Date))
x = join(tibble(Date = datee), x) %>%
as_tibble
x %<>% na.omit
x %<>% dplyr::mutate(binary = if_else(is.na(Model), 0, 1)) %>%
spread(Model, binary)
z <- ldply(x[,-1], function(zz) {
na.omit(zz) %>% length }) %>%
dplyr::rename(x = V1) %>%
dplyr::mutate(n = length(y), progress = percent(x/n))
print(z)
prg = sum(z$x)/sum(z$n)
cat('\n================', as.character(percent(prg)), '================\n\n')
}
}
ts()
The forecast.ets()
will automatically use the optimal ets()
which is similar theory with auto.arima()
.
I set the length of dataset as weekly but the frequency set as 1440 minutes (per day).
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 1440) %>%
forecast(h = 1440) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.wk.1440.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.wk.1440.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as monthly but the frequency set as 1440 minutes (per day). Initial forecast will be based on weekly dataset and then accumulated date-by-date until a monthly dataset.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 1440) %>%
forecast(h=1440) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.mo.1440.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.mo.1440.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as quarterly but the frequency set as 1440 minutes (per day). Initial forecast will be based on weekly dataset and then accumulated date-by-date until a quarterly dataset.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 1440) %>%
forecast(h=1440) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.qt.1440.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.qt.1440.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as yearly but the frequency set as 1440 minutes (per day). Initial forecast will be based on weekly dataset and then accumulated date-by-date until a yearly dataset.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>% tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% years(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 1440) %>%
forecast(h=1440) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.yr.1440.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.yr.1440.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as weekly but the frequency set as 7200 minutes (per week).
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 7200)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-05')] #2015-01-11
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 7200) %>%
forecast(h = 7200) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(5), by = 'min')
##sqe[regexpr('Saturday|Sunday', weekdays(sqe)) == -1]
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 7200)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.wk.7200.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.wk.7200.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as monthly but the frequency set as 7200 minutes (per week).
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 7200)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-05')] #2015-01-11
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 7200) %>%
forecast(h = 7200) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(5), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 7200)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.mo.7200.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.mo.7200.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as quarterly but the frequency set as 7200 minutes (per week).
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 7200)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-05')] #2015-01-11
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(3) + days(5), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 7200) %>%
forecast(h = 7200) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + weeks(1), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 7200)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.qt.7200.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.qt.7200.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
I set the length of dataset as yearly but the frequency set as 7200 minutes (per week).
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 7200)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-05')] #2015-01-11
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% years(1) + seconds(59), '/', dt + seconds(59))]
sets <- smp %>%
tk_ts(frequency = 7200) %>%
forecast(h = 7200) %>%
llply(tk_tbl)
if(is.double(sets$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(5), by = 'min')
sets$forecast$index <- sq
} else {
sets$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 7200)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.yr.7200.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.yr.7200.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
auto.arima()
ask about why there has noP,D,Q
.auto.arima()
from forecast package ask the question which is what I am trying to know (normal arima model only get (p,d,q)
but not (P,D,Q)
). The answer is do NOT set both approximation
and stepwise
to FALSE
.auto.arima
ask about how to model a force-seasonal-ARIMA. The topic talk about the D
parameter in auto.arima
which governs seasonal differencing. The example shows that D=1
will get a smaller AIC/BIC figures than default D=NULL
.auto.arima
drop my seasonality component when stepwise=FALSE
and approximation=FALSE
ask about why the stepwise=FALSE
and approximation=FALSE
got the better AIC than default model. The answer describe that normally max.order=5
where we can get a better truly seasonal model, just increase the max.order=10
. There is not too much gained using approximation=FALSE
. What that does is force it to evaluate the likelihood more accurately for each model, but the approximation is quite good and much faster, so is usually acceptable.auto.arima()
? ask about what is the meaning of a$arma
and somebody answer the help page in auto.arima()
has descibe that a$arma
is (p, q, P, Q, s, d, D)
.auto.arima
fails to capture seasonality simulate an annual dataset with set trace=TRUE
, stepwise=FALSE
and D=1
but didn’t provides the answer to get optimal P,D,Q
.auto.arima()
able get the best model, however does not provides the answer how to get the optimal P,D,Q
instead of only p,d,q
.ndiffs()
sometimes give the different resukt than best model, describe the a$arma
. More generally, the order (d)
is the next to last element; the seasonal order (D)
is the last. So a$arma[length(a$arma)-1]
is the order d and a$arma[length(a$arma)]
is the seasonal order.auto.arima()
? describe the help page in auto.arima()
has descibe that a$arma
is (p, q, P, Q, d, D)
.a$arma[c(1, 6, 2, 3, 7, 4, 5)]
from an auto.arima()
.xreg
for seasonal model.auto.arima()
.seasonal period
where the author of forecast
package provides a details and concise answer.auto.arima
Warns NaNs
Produced on Std Error suggested set stepwise=FALSE
and approximation=FALSE
is better model.If you look at the help file of auto.arima and navigate to the section “Value”, you are directed to the help file of arima function and there you find the following (under the section “Value”) regarding the arma slot: A compact form of the specification, as a vector giving the number of AR, MA, seasonal AR and seasonal MA coefficients, plus the period and the number of non-seasonal and seasonal differences. That is what the seven elements you reported correspond to. In your case, you have a non-seasonal
ARIMA(1,2,0)
.
Source : How to read p,d and q of auto.arima()
? (which is 1 among the reference link above.)
So far, we have restricted our attention to non-seasonal data and non-seasonal ARIMA models. However, ARIMA models are also capable of modelling a wide range of seasonal data. A seasonal ARIMA model is formed by including additional seasonal terms in the ARIMA models we have seen so far. It is written as follows:
ARIMA | \(\underbrace{(p, d, q)}\) | \(\underbrace{(P, D, Q)_{m}}\) |
---|---|---|
↑ | ↑ | |
Non-seasonal part of the model | Seasonal part of the model |
where m = number of observations per year
. We use uppercase notation for the seasonal parts of the model, and lowercase notation for the non-seasonal parts of the model.
The seasonal part of the model consists of terms that are similar to the non-seasonal components of the model, but involve backshifts of the seasonal period. For example, an \(ARIMA(1,1,1)(1,1,1)_{4}\) model (without a constant) is for quarterly data (m = 4), and can be written as
\[(1 - {\color{Red}\phi_{1}}B)~(1 - {\color{Red}\Phi_{1}}B^{4}) (1 - B) (1 - B^{4})y_{t} = (1 + {\color{Red}\theta_{1}}B)~ (1 + {\color{Red}\Theta_{1}}B^{4})\varepsilon_{t}\]
The additional seasonal terms are simply multiplied by the non-seasonal terms.
auto.arima(euretail, stepwise=FALSE, approximation=FALSE)
is better than auto.arima(euretail)
.
The
auto.arima()
function usesnsdiffs()
to determine D (the number of seasonal differences to use), andndiffs()
to determine d (the number of ordinary differences to use). The selection of the other model parameters(p, q, P and Q)
are all determined by minimizing the AICc, as with non-seasonal ARIMA models.
Source : 8.9 Seasonal ARIMA models (which is 1 among the reference link above.)
Above 8.5 Non-seasonal ARIMA models reference link describe the auto.arima()
and the default setting is seasonal=TRUE
where it will automatically model3 .
The default arguments are designed for rapid estimation of models for many time series. If you are analysing just one time series, and can afford to take some more time, it is recommended that you set stepwise=FALSE and approximation=FALSE. Non-stepwise selection can be slow, especially for seasonal data. The stepwise algorithm outlined in Hyndman & Khandakar (2008) is used except that the default method for selecting seasonal differences is now based on an estimate of seasonal strength (Wang, Smith & Hyndman, 2006) rather than the Canova-Hansen test. There are also some other minor variations to the algorithm described in Hyndman and Khandakar (2008).
Source : help section of auto.arima()
.
ARIMA(2,1,1)(1,0,0)[12]
is seasonal ARIMA.[12]
stands for number of periods in season, i.e. months in year in this case.(1,0,0)
stands for seasonal part of model. Take a look at this.
Source : extract ARIMA specificaiton (which is 1 among the reference link above.)
You can force a seasonal model by setting
D=1
, althoughauto.arima()
runs for quite some time with forced seasonality. (Note that the information criteria are not comparable between the original and the differenced series.) \[ \begin{array}{l,l,l} &\text{Training} & \text{Test}\\ \mathrm{ARIMA}(2,1,1) & 5.729 & 7.657\\ \mathrm{SARIMA}(1,1,0)_{52}\text{ with drift} & 6.481 & 7.390\\ \text{3 harmonics, }\mathrm{ARIMA}(2,1,0) & 5.578 & 5.151\\ \text{4 harmonics, }\mathrm{ARIMA}(2,1,1) & 5.219 & 5.188 \end{array} \]
Source : Seasonality not taken account of in auto.arima()
(which is 1 among the reference link above.)
The problem with fitting seasonal ARIMA to daily data is that the “seasonal component” may only operate on the weekends or maybe just the weekdays thus overall there is a non-significnat “seasonal component”. Now what you have to do is to augment your data set with 6 dummies representing the days of the week and perhaps monthly indicators to represent annual effects. Now consider incorporating events such as holidays and include any lead, contemoraneous or lag effect around these known variables. No there may be unusual values (pulses) or level shifts or local time trends in the data. Furthermore the day-of-the-week effects may have changed over time e.g. there was no Saturday effect for the first 20 weeks but a Saturday effect for the last 50 weeks.If you wish to post tour daily data I will give it a try and maybe other readers of the list might also contribute their analysis to help guide you through this.
Source : Auto.arima with daily data: how to capture seasonality/periodicity?
auto.arima()
compares few models and concludes that the harmonics ARIMA is the best fit model.a$arma[c(1, 6, 2, 3, 7, 4, 5)]
is \((p,d,q)(P,D,Q)_{s}\).forecast
package.seasonal period
while the author of forecast
package provides Seasonal periods where describe very details on the seasonal period
parameters determination.forecast
package answered salests <- ts(data,start=2010,frequency=7)
and modArima <- auto.arima(salests)
for weekly seasonality determination.Improved auto.arima() The
auto.arima()
function is widely used for automatically selecting ARIMA models. It works quite well, except that selection of \(D\), the order of seasonal differencing, has always been poor. Up until now, the default has been to use the Canova-Hansen test to select \(D\). Because the CH test has a null hypothesis of deterministic seasonality based on dummy variables, the function will often select \(D=0\). So I’ve now switched to using the OCSB test for selecting \(D\) which has a null hypothesis involving a seasonal difference, so it is much more likely to choose \(D=1\) than previously. I’ve done extensive testing of the forecasts obtained under the two methods, and the OCSB test leads to better forecasts. Hence it is now the default. This means that the function may return a different ARIMA model than previously when the data are seasonal. A separate function for selecting the seasonal order has also been made visible. So you can now callnsdiffs()
to find the recommended number of seasonal differences without calling auto.arima(). There is also andiffs()
function for selecting the number of first differences. Withinauto.arima()
,nsdiffs()
is called first to select \(D\), and thenndiffs()
is applied todiff(x,D)
if \(D > 0\) or to \(x\) if \(D=0\).
Double-seasonal Holt-Winters The new dshw() function implements Taylor’s (2003) double-seasonal Holt-Winters method. This allows for two levels of seasonality. For example, with hourly data, there is often a daily period of 24 and a weekly period of 168. These are modelled separately in the
dshw()
function.
I am planning some major new functionality to extend this to the various types of complex seasonality discussed in my recent JASA paper. Hopefully that will be ready in the next few weeks – I have a research assistant working on the new code.
Source : Major changes to the forecast package
xreg
).xreg
argument in auto.arima()
in R? [closed] using xreg
for multivariate modelling.stl()
library(forecast)
# create some artifical data
modelfitsample <- data.frame(Customer_Visit=rpois(49,3000),Weekday=rep(1:7,7),
Christmas=c(rep(0,40),1,rep(0,8)),Day=1:49)
# Create matrix of numeric predictors
xreg <- cbind(Weekday=model.matrix(~as.factor(modelfitsample$Weekday)),
Day=modelfitsample$Day,
Christmas=modelfitsample$Christmas)
# Remove intercept
xreg <- xreg[,-1]
# Rename columns
colnames(xreg) <- c("Mon","Tue","Wed","Thu","Fri","Sat","Day","Christmas")
# Variable to be modelled
visits <- ts(modelfitsample$Customer_Visit, frequency=7)
# Find ARIMAX model
modArima <- auto.arima(visits, xreg=xreg)
Source : How to setup xreg
argument in auto.arima()
in R? [closed]
library(forecast)
ts_ <- ts(PaulsData$Temperature, frequency = 1)
msts_ <- msts(ts_, c(7,30,365))
fit <- auto.arima(ts_, seasonal=F, xreg=fourier(msts_, K=c(3,5,10))) # i,j,k
ts_ <- data_m1$close %>%
ts()
mts_ <- data_m1 %>%
msts(seasonal.periods = c(1440, 7200), start = index(.)[1])
fit1 <- auto.arima(ts_, seasonal = FALSE, xreg=fourier(mts_, K=c(3,5,10)))
fit2 <- auto.arima(ts_, seasonal = FALSE, xreg=mts_)
fit3 <- auto.arima(ts_, D = 1, xreg=mts_)
## https://stackoverflow.com/questions/12161984/how-to-elegantly-convert-datetime-from-decimal-to-d-m-y-hms
## https://stackoverflow.com/questions/17738746/r-putting-time-series-with-frequency-of-20-min-into-the-function-stl
## https://stats.stackexchange.com/questions/120806/frequency-value-for-seconds-minutes-intervals-data-in-r
## http://manishbarnwal.com/blog/2017/05/03/time_series_and_forecasting_using_R/
smp %>%
tk_ts(start = index(index)[1], frequency = c(1440, 7200)) %>%
forecast %>%
llply(tk_tbl)
ts()
Here I use ts()
for seasonal data modeling and set auto.arima(D = 1, seasonal = TRUE)
as sarima model, sarimax models will be modeled in next paper.
auto.arima()
I set the length of dataset as nested seasonal dataset as weekly (1 week = 5 trading days = 7200 minutes) and daily (1 trading day = 1440 minutes).
# --------- eval=FALSE ---------
# sample, not run
> suppressWarnings(Y2015W1 %>%
tk_xts %>%
to.daily %>%
Cl %>%
opt_arma(arma=TRUE))
Using column `index` for date_var.
p d q P D Q s
0 0 0 0 0 0 1
# --------- eval=FALSE ---------
# eval(parse(text = paste0(fs, "<- read_rds('", fls[[7]], "') %>% as_tibble")))
# sample, not run
sarima <- list()
for(i in (1:length(fs))) {
smp <- data_m1 %>% tk_xts(silent = TRUE)
timeID <- c(index(smp), xts::last(index(smp)) + minutes(1)) %>%
.[. > force_tz(ymd_hms('2015-01-05 00:00:00 EET'))]
if (dt %in% timeID) {
smp <- smp[paste0(dt, '/', dt %m+% weeks(1) - seconds(59))]
sarima[[i]] <- tryCatch({llply(price_type, function(y) {
df = auto.arima(smp, parallel=FALSE, num.cores = 2)
df = data.frame(Date = index(df$latestPrice[1]),
Type = paste0(names(df$latestPrice), '.', y),
df$latestPrice, df$forecastPrice, t(df$AIC))
names(df)[4] %<>% str_replace_all('1', 'T+1')
df
}) %>% as_tibble %>% bind_rows}, error = function(e) NULL)
if (!dir.exists(paste0('data/fx/', names(sarima[[i]])[3])))
dir.create(paste0('data/fx/', names(sarima[[i]])[3]))
saveRDS(sarima[[i]], paste0(
'data/fx/', names(sarima[[i]])[3], '/sarima.',
unique(sarima[[i]]$Date), '.rds'))
cat(paste0(
'data/fx/', names(sarima[[i]])[3], '/sarima.',
unique(sarima[[i]]$Date), '.rds saved!\n'))
}
}
# --------- eval=FALSE ---------
# sample, not run
smp <- data_m1 %>% tk_xts(silent = TRUE)
timeID <- c(index(smp), xts::last(index(smp)) + minutes(1)) %>%
.[. > force_tz(ymd_hms('2015-01-05 00:00:00 EET'))]
dt <- timeID[1]
smp <- smp[paste0(dt, '/', dt %m+% weeks(1) - seconds(59))]
smp %>% tk_ts %>% forecast %>% llply(tk_tbl)
mts <- multi_seasons(smp)
aar <- multi_seasons(smp, auto_arima=TRUE)
Below Arima()
and auto.arima()
functions prove that auto.arima()
is better model since it auto adjust the best arima(p,d,q)
values.
# --------- eval=FALSE ---------
# sample, not run
> n <- 2000
> m <- 200
> y <- ts(rnorm(n) + (1:n)%%100/30, f=m)
> library(forecast)
> fit <- Arima(y, order=c(2,0,1), xreg=fourier(y, K=4))
> fit
Series: y
Regression with ARIMA(2,0,1) errors
Coefficients:
ar1 ar2 ma1 intercept S1-200 C1-200 S2-200 C2-200 S3-200 C3-200 S4-200
0.3846 0.0649 -0.2794 1.6168 0.0354 0.0308 -1.0026 -0.0222 0.0677 -0.0163 -0.5295
s.e. 0.1588 0.0324 0.1584 0.0320 0.0453 0.0452 0.0452 0.0451 0.0450 0.0450 0.0448
C4-200
0.0059
s.e. 0.0447
sigma^2 estimated as 1.204: log likelihood=-3017.65
AIC=6061.3 AICc=6061.49 BIC=6134.11
> fit2 <- auto.arima(y, seasonal=FALSE, xreg=fourier(y, K=4))
> fit2
Series: y
Regression with ARIMA(1,0,2) errors
Coefficients:
ar1 ma1 ma2 intercept S1-200 C1-200 S2-200 C2-200 S3-200 C3-200 S4-200
0.4605 -0.3566 0.0605 1.6168 0.0354 0.0309 -1.0026 -0.0222 0.0677 -0.0164 -0.5296
s.e. 0.1319 0.1322 0.0297 0.0319 0.0451 0.0451 0.0450 0.0450 0.0449 0.0449 0.0447
C4-200
0.0057
s.e. 0.0447
sigma^2 estimated as 1.204: log likelihood=-3017.44
AIC=6060.87 AICc=6061.06 BIC=6133.69
> fit$aic
[1] 6061.302
> fit2$aic
[1] 6060.873
Modeling
# --------- eval=FALSE ---------
# measure as sample take from next chunk
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
dt <- timeID[1]
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
sarimats <- smp %>%
tk_ts(frequency = 1440)
##
fit_ts <- auto.arima(Op(sarimats), D = 1)#, trace = TRUE)
saveRDS(fit_ts, 'data/fx/USDJPY/sarima_ts_sample.rds')
##
fr_ts <- forecast(fit_ts, h = 1440)
saveRDS(fr_ts, 'data/fx/USDJPY/sarima_frts_sample.rds')
##
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
fr_ts.sample <- as_tibble(data.frame(index = sq, fr_ts)) %>%
dplyr::select(index, Point.Forecast)
dt.sample <- dplyr::filter(data_m1, index %in% fr_ts.sample$index) %>%
dplyr::select(index, open)
fr_ts.sample <- join(dt.sample, fr_ts.sample) %>%
as_tibble %>%
dplyr::rename(sarima_ts = Point.Forecast)
if(!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(fr_ts.sample, paste0('data/fx/USDJPY/fr_ts.sample.wk.1440.',
as_date(fr_ts.sample$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/fr_ts.sample.wk.1440.',
as_date(fr_ts.sample$index[1]), '.rds saved!\n'))
Due to above model consume few hours, here I can only use a sample to compare the accuracy.
# --------- eval=FALSE ---------
#Not run
#sq <- seq(1 , length(data_m1$index), by = 1440)
#sets <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
sarimats <- smp %>%
tk_ts(frequency = 1440)
#https://stackoverflow.com/a/37046276/3806250 #auto.arima(x, D = 1)
#https://stackoverflow.com/a/37400899/3806250 #auto.arima(x, seasonal = TRUE)
sarimats <- llply(., function(x) {
auto.arima(x, D = 1) %>% #, trace = TRUE) %>%
forecast(h = 1440)
}) %>%
llply(tk_tbl)
## ----------------------------------------
## Not yet test run
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
dtf <- as_tibble(data.frame(index = sq, sarimats)) %>%
dplyr::select(index, Point.Forecast)
dts <- dplyr::filter(data_m1, index %in% dtf$index) %>%
dplyr::select(index, open)
dtf <- join(dt.sample, dtf) %>%
as_tibble
if(!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(dtf, paste0('data/fx/USDJPY/sarima_ts.wk.1440.',
as_date(dtf$index[1]), '.rds'))
cat(paste0('data/fx/USDJPY/sarima_ts.wk.1440.',
as_date(dtf$index[1]), '.rds saved!\n'))
## ----------------------------------------
}
ts()
I set the length of dataset as 3 level nested seasonal dataset as monthly (), weekly (1 week = 5 trading days = 7200 minutes) and daily (1 trading day = 1440 minutes).
ts()
I set the length of dataset as 3 level nested seasonal dataset as monthly (1 year = ), weekly (1 week = 5 trading days = 7200 minutes) and daily (1 trading day = 1440 minutes).
msts()
Modeling
# --------- eval=FALSE ---------
# measure as sample take from next chunk
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
dt <- timeID[1]
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
## Dataset has 7200 observations which is 7200 mins per week
## due to not enough data to run, here I set as 60 mins and 1440 mins, therefore it can loop 5 days.
#mts <- smp %>%
# msts(seasonal.periods = c(1440, 7200))
sarimamsts <- smp %>%
msts(seasonal.periods = c(60, 1440))
##
fit_msts <- auto.arima(Op(sarimamsts), D = 1)#, trace = TRUE)
saveRDS(fit_msts, 'data/fx/USDJPY/sarima_msts_sample.rds')
##
fr_msts <- forecast(fit_msts, h = 1440)
saveRDS(fr_msts, 'data/fx/USDJPY/sarima_frmsts_sample.rds')
##
##
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
fr_msts.sample <- data.frame(index = sq, fr_msts) %>%
dplyr::select(index, Point.Forecast) %>% as_tibble
rownames(fr_msts.sample) <- NULL
dt.sample <- dplyr::filter(data_m1, index %in% fr_msts.sample$index) %>%
dplyr::select(index, open)
fr_msts.sample <- join(dt.sample, fr_msts.sample) %>%
as_tibble %>%
dplyr::rename(sarima_msts = Point.Forecast)
if(!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(fr_msts.sample, paste0('data/fx/USDJPY/fr_msts.sample.wk.1440.',
as_date(fr_msts.sample$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/fr_msts.sample.wk.1440.',
as_date(fr_msts.sample$index[1]), '.rds saved!\n'))
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
sarimamsts <- smp %>%
msts(seasonal.periods = c(1440, 7200))
sarimamsts <- llply(1:ncol(sarimamsts), function(i) {
y <- sarimamsts[,i] %>%
auto.arima(D = 1) %>%
forecast(h = 1440) %>%
as_tibble
#names(y)[1] <- names(smp)[i]
#names(y)[2:ncol(y)] <- paste0(names(y)[1], '.', names(y)[2:ncol(y)])
#names(y)[1] <- paste0(names(smp)[i], '.Point.Forecast')
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
bind_cols %>%
as_tibble
sarimamsts <- sarimamsts[c('open.Point.Forecast', 'high.Point.Forecast', 'low.Point.Forecast', 'close.Point.Forecast',
'open.Lo.80', 'open.Hi.80', 'open.Lo.95', 'open.Hi.95',
'high.Lo.80', 'high.Hi.80', 'high.Lo.95', 'high.Hi.95',
'low.Lo.80', 'low.Hi.80', 'low.Lo.95', 'low.Hi.95',
'close.Lo.80', 'close.Hi.80', 'close.Lo.95', 'close.Hi.95')]
#sarimamsts[str_detect(names(sarimamsts), 'Model.|Period.')] <- NULL
## ----------------------------------------
## Not yet test run if(is.numeric(index(sarimamsts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(sarimamsts) / length(sq)
sarimamsts <- cbind(index = rep(sq, n), sarimamsts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#sarimamsts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sarimamsts, paste0('data/fx/USDJPY/sarimamsts.sample.dy.wk.',
as_date(sarimamsts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sarimamsts.sample.dy.wk.',
as_date(sarimamsts$index[1]), '.rds saved!\n'))
## ----------------------------------------
}
Due to above model consume few hours, here I can only use a sample to compare the accuracy.
forecast::tbats()
tbats
talk about the model tbats
.tbats
model produce lower RMSE and better than BATS
model.# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
#names(y)[1] <- names(smp)[i]
#names(y)[2:ncol(y)] <- paste0(names(y)[1], '.', names(y)[2:ncol(y)])
#names(y)[1] <- paste0(names(smp)[i], '.Point.Forecast')
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
bind_cols %>%
as_tibble
mts <- mts[c('open.Point.Forecast', 'high.Point.Forecast', 'low.Point.Forecast', 'close.Point.Forecast',
'open.Lo.80', 'open.Hi.80', 'open.Lo.95', 'open.Hi.95',
'high.Lo.80', 'high.Hi.80', 'high.Lo.95', 'high.Hi.95',
'low.Lo.80', 'low.Hi.80', 'low.Lo.95', 'low.Hi.95',
'close.Lo.80', 'close.Hi.80', 'close.Lo.95', 'close.Hi.95')]
#mts[str_detect(names(mts), 'Model.|Period.')] <- NULL
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.wk.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.wk.',
as_date(mts$index[1]), '.rds saved!\n'))
}
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(1) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200, nrow(smp)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.mo'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
join_all %>%
as_tibble
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.wk.mo.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.wk.mo.',
as_date(mts$index[1]), '.rds saved!\n'))
}
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200, nrow(smp)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.qt'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
join_all %>%
as_tibble
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.wk.qt.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.wk.qt.',
as_date(mts$index[1]), '.rds saved!\n'))
}
Due to heavily calculation and based on the comparison section proved that 2 levels (or layers) nested model more effective than 3 levels (or layers) models, here I skip above model.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% years(1) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200, nrow(smp)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.yr'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
join_all %>%
as_tibble
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.wk.yr.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.wk.yr.',
as_date(mts$index[1]), '.rds saved!\n'))
}
Due to heavily calculation and based on the comparison section proved that 2 levels (or layers) nested model more effective than 3 levels (or layers) models, here I skip above model.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
##https://robjhyndman.com/hyndsight/seasonal-periods/
yr1 <- smp[paste0(dt %m-% years(1) + seconds(59), '/', dt + seconds(59))]
qt1 <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200, nrow(qt1), nrow(yr1)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.qt.yr'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
join_all %>%
as_tibble
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.wk.qt.yr.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.wk.qt.yr.',
as_date(mts$index[1]), '.rds saved!\n'))
}
Due to heavily calculation and based on the comparison section proved that 2 levels (or layers) nested model more effective than 3 levels (or layers) models, here I skip above model.
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, nrow(smp)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.qt'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
}) %>%
bind_cols %>%
as_tibble
mts <- mts[c('open.Point.Forecast', 'high.Point.Forecast', 'low.Point.Forecast', 'close.Point.Forecast',
'open.Lo.80', 'open.Hi.80', 'open.Lo.95', 'open.Hi.95',
'high.Lo.80', 'high.Hi.80', 'high.Lo.95', 'high.Hi.95',
'low.Lo.80', 'low.Hi.80', 'low.Lo.95', 'low.Hi.95',
'close.Lo.80', 'close.Hi.80', 'close.Lo.95', 'close.Hi.95')]
#mts[str_detect(names(mts), 'Model.|Period.')] <- NULL
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.qt.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.qt.',
as_date(mts$index[1]), '.rds saved!\n'))
}
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% years(1) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, nrow(smp)))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>%
bind_rows %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.yr'), type = case_when(
!is.na(open) ~ 'open',
!is.na(high) ~ 'high',
!is.na(low) ~ 'low',
!is.na(close) ~ 'close')) %>%
dlply(.(type, Period), function(x) {
x %<>% dplyr::rename(open.Point.Forecast = open,
high.Point.Forecast = high,
low.Point.Forecast = low,
close.Point.Forecast = close)
names(x)[str_detect(names(x), '80|95')] <- paste0(x$type[1], '.', names(x)[str_detect(names(x), '80|95')])
x[colSums(!is.na(x)) > 0] %<>%
data.frame %>%
as_tibble %>%
dplyr::select(-type)
#x[c(ncol(x), ncol(x)-1, x[1:(ncol(x)-2)])] #Due to xts format attr, there will be not in order.
}) %>%
bind_cols %>%
as_tibble
mts <- mts[c('open.Point.Forecast', 'high.Point.Forecast', 'low.Point.Forecast', 'close.Point.Forecast',
'open.Lo.80', 'open.Hi.80', 'open.Lo.95', 'open.Hi.95',
'high.Lo.80', 'high.Hi.80', 'high.Lo.95', 'high.Hi.95',
'low.Lo.80', 'low.Hi.80', 'low.Lo.95', 'low.Hi.95',
'close.Lo.80', 'close.Hi.80', 'close.Lo.95', 'close.Hi.95')]
#mts[str_detect(names(mts), 'Model.|Period.')] <- NULL
if(is.numeric(index(mts)[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
n <- nrow(mts) / length(sq)
mts <- cbind(index = rep(sq, n), mts) %>%
as_tibble
} else {
stop('index of dataset does not assign.')
#mts$forecast$index <- data_m1$index[
#(which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1):(
# which(data_m1$index == smp %>%
# index %>%
# xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(mts, paste0('data/fx/USDJPY/mts.dy.yr.',
as_date(mts$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/mts.dy.yr.',
as_date(mts$index[1]), '.rds saved!\n'))
}
seasonal_m1 <- read_rds('data/fx/USDJPY/seasonal_m1.rds')
yr_2018 <- data.table(seasonal_m1)[as_date(index) > as_date('2017-12-31')]
dy.qt_dy.yr_2018 <- yr_2018[Model == 'tbats' & Period %in% c('dy.qt', 'dy.yr')]
Based on the comparison section proved that daily (1440 mins) nested model more effective than weekly (7200 mins) nested models, here I skip above model.
Based on the comparison section proved that daily (1440 mins) nested model more effective than weekly (7200 mins) nested models, here I skip above model.
Based on the comparison section proved that daily (1440 mins) nested model more effective than weekly (7200 mins) nested models, here I skip above model.
Based on the comparison section proved that daily (1440 mins) nested model more effective than weekly (7200 mins) nested models, here I skip above model.
## Due to notice there have bias on `qt` and `yr` models after 2 years 2020 from 2018... might probably due to different reasons.
## mts.dy.wk.
ffl <- list.files('data/fx/USDJPY', pattern = 'mts.dy.wk.[0-9]{4}')
smp <- llply(ffl, function(x) {
read_rds(paste0('data/fx/USDJPY/', x))
})
smp_wk <- smp %>%
bind_rows()
smp_wk %<>%
.[c('index', 'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast', 'close.Point.Forecast')]
smp_wk <- join(data_m1, smp_wk)
smp_wk %<>%
tibble %>%
na.omit
## mts.dy.wk.mo
ffl <- list.files('data/fx/USDJPY', pattern = 'mts.dy.wk.mo.[0-9]{4}')
smp <- llply(ffl, function(x) {
read_rds(paste0('data/fx/USDJPY/', x))
})
smp_wk.mo <- smp %>%
bind_rows()
smp_wk.mo %<>%
.[c('index', 'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast', 'close.Point.Forecast')]
smp_wk.mo <- join(data_m1, smp_wk.mo)
smp_wk.mo %<>%
tibble %>%
na.omit
## mts.dy.qt.
ffl <- list.files('data/fx/USDJPY', pattern = 'mts.dy.qt.[0-9]{4}')
smp <- llply(ffl, function(x) {
read_rds(paste0('data/fx/USDJPY/', x))
})
smp_qt <- smp %>%
bind_rows()
smp_qt %<>%
.[c('index', 'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast', 'close.Point.Forecast')]
smp_qt <- join(data_m1, smp_qt)
smp_qt %<>%
tibble %>%
na.omit
## mts.dy.yr.
ffl <- list.files('data/fx/USDJPY', pattern = 'mts.dy.yr.[0-9]{4}')
smp <- llply(ffl, function(x) {
read_rds(paste0('data/fx/USDJPY/', x))
})
smp_yr <- smp %>%
bind_rows()
smp_yr %<>%
.[c('index', 'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast', 'close.Point.Forecast')]
smp_yr <- join(data_m1, smp_yr)
smp_yr %<>%
tibble %>%
na.omit
rm(ffl, smp)
## trace and check the bias
smp_wkc <- smp_wk %>%
ddply(.(date = as_date(index)), summarise,
MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
n = length(index)) %>%
as_tibble
smp_wkc <- data.frame(model = factor('mts.dy.wk'), smp_wkc) %>%
tibble
smp_wk.moc <- smp_wk.mo %>%
ddply(.(date = as_date(index)), summarise,
MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
n = length(index)) %>%
as_tibble
smp_wk.moc <- data.frame(model = factor('mts.dy.wk.mo'), smp_wk.moc) %>%
tibble
smp_qtc <- smp_qt %>%
ddply(.(date = as_date(index)), summarise,
MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
n = length(index)) %>%
as_tibble
smp_qtc <- data.frame(model = factor('mts.dy.qt'), smp_qtc) %>%
tibble
smp_yrc <- smp_yr %>%
ddply(.(date = as_date(index)), summarise,
MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
n = length(index)) %>%
as_tibble
smp_yrc <- data.frame(model = factor('mts.dy.yr'), smp_yrc) %>%
tibble
smpp <- list(smp_wkc, smp_wk.moc, smp_qtc, smp_yrc) %>%
bind_rows
MSE.open <- smpp %>%
dplyr::select(date, model, MSE.open, n) %>%
spread(model, MSE.open) %>%
na.omit %>%
dplyr::mutate(mean = rowMeans(
select(., mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr)))
MSE.high <- smpp %>%
dplyr::select(date, model, MSE.high, n) %>%
spread(model, MSE.high) %>%
na.omit %>%
dplyr::mutate(mean = rowMeans(
select(., mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr)))
MSE.low <- smpp %>%
dplyr::select(date, model, MSE.low, n) %>%
spread(model, MSE.low) %>%
na.omit %>%
dplyr::mutate(mean = rowMeans(
select(., mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr)))
MSE.close <- smpp %>%
dplyr::select(date, model, MSE.close, n) %>%
spread(model, MSE.close) %>%
na.omit %>%
dplyr::mutate(mean = rowMeans(
select(., mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr)))
select(MSE.open, c(mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr, mean)) %>% colMeans
# mts.dy.wk mts.dy.wk.mo mts.dy.qt mts.dy.yr mean
# 0.2931847 0.3066926 0.6637179 3.0892483 1.0882109
select(MSE.high, c(mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr, mean)) %>% colMeans
# mts.dy.wk mts.dy.wk.mo mts.dy.qt mts.dy.yr mean
# 0.2824914 0.3044910 0.6679225 3.1030069 1.0894780
select(MSE.low, c(mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr, mean)) %>% colMeans
# mts.dy.wk mts.dy.wk.mo mts.dy.qt mts.dy.yr mean
# 0.2798276 0.3028962 0.6615109 3.0781766 1.0806028
select(MSE.close, c(mts.dy.wk, mts.dy.wk.mo, mts.dy.qt, mts.dy.yr, mean)) %>% colMeans
# mts.dy.wk mts.dy.wk.mo mts.dy.qt mts.dy.yr mean
# 0.2997343 0.2947651 0.6627861 3.0969951 1.0885702
> list(smp_wkc, smp_wk.moc, smp_qtc, smp_yrc) %>%
l_ply(function(x) length(x$n), .print = TRUE)
[1] 1084
[1] 1076
[1] 1084
[1] 1084
chk1 <- MSE.open %>%
dplyr::mutate(
diff1 = abs(mts.dy.wk - mean),
diff2 = abs(mts.dy.wk.mo - mean),
diff3 = abs(mts.dy.qt - mean),
diff4 = abs(mts.dy.yr - mean)) %>%
dplyr::mutate_if(is.numeric, round, 4) %>%
data.frame
chk1a <- chk1 %>%
dplyr::filter(diff1 >= 0.05 | diff2 >= 0.05 | diff3 >= 0.05 | diff4 >= 0.05)
chk1a[1:100,]
seasonal::seas()
# --------- eval=FALSE ---------
#sq <- seq(1 , length(data_m1$index), by = 1440)
#mts <- list()
timeID <- data_m1$index %>%
as_date %>%
unique %>%
sort
timeID %<>% .[. > as_date('2015-01-11')]
for (dt in timeID) {
smp <- data_m1 %>%
tk_xts(silent = TRUE)
dt %<>% as_date
smp <- smp[paste0(dt %m-% weeks(1) + seconds(59), '/', dt + seconds(59))]
mts <- smp %>%
msts(seasonal.periods = c(1440, 7200))
mts <- llply(1:ncol(mts), function(i) {
y <- mts[,i] %>%
tbats %>%
forecast(h = 1440) %>%
as_tibble
names(y)[1] <- names(smp)[i]
y
}) %>% bind_rows
if(is.double(mts$forecast$index[1])){
sq <- smp %>%
tail(1) %>%
index
if(weekdays(sq) == '土曜日'|weekdays(sq) == 'Saturday') sq <- sq + days(2)
sq <- seq(from = sq + minutes(1), sq + days(1), by = 'min')
mts$forecast$index <- sq
} else {
mts$forecast$index <- data_m1$index[
(which(data_m1$index == smp %>%
index %>%
xts::last()) + 1):(
which(data_m1$index == smp %>%
index %>%
xts::last()) + 1440)]
}
if (!dir.exists(paste0('data/fx/USDJPY')))
dir.create(paste0('data/fx/USDJPY'))
saveRDS(sets, paste0('data/fx/USDJPY/sets.wk.1440.',
as_date(sets$forecast$index[1]), '.rds'))
cat(paste0(
'data/fx/USDJPY/sets.wk.1440.',
as_date(sets$forecast$index[1]), '.rds saved!\n'))
}
Mixed Frequency Data Sampling Regression Models - The R Package midasr introduce a midas model.
I have just noticed there has another GARCH model in rugarch
package and then I roughly read through below articles. This multiplicative component GARCH
model is different with normal GARCH model due to it includes the effects of volatility within a day. It is designate for intraday dataset.
## ------------- Simulate uv_fx() ----------------------
## uv_fx just made the model and some argument flexible.
mcsGARCH <- list()
for (dt in timeID) {
for (i in seq(cr_code)) {
smp <- mbase[[names(cr_code)[i]]]
timeID2 <- c(index(smp), xts::last(index(smp)) + days(1))
if (dt %in% timeID2) {
dtr <- xts::last(index(smp[index(smp) < dt]), 1) #tail(..., 1)
smp <- smp[paste0(dtr %m-% years(1), '/', dtr)]
mcsGARCH[[i]] <- tryCatch({llply(price_type, function(y) {
df = uv_fx(smp, .model = 'mcsGARCH', currency = cr_code[i],
price = y, .cluster = .cl)
df = data.frame(Date = index(df$latestPrice[1]),
Type = paste0(names(df$latestPrice), '.', y),
df$latestPrice, df$forecastPrice, t(df$AIC))
names(df)[4] %<>% str_replace_all('1', 'T+1')
df
}) %>% as_tibble %>% bind_rows}, error = function(e) NULL)
if (!dir.exists(paste0('data/fx/', names(mcsGARCH[[i]])[3])))
dir.create(paste0('data/fx/', names(mcsGARCH[[i]])[3]))
saveRDS(mcsGARCH[[i]], paste0(
'data/fx/', names(mcsGARCH[[i]])[3], '/mcsGARCH.',
unique(mcsGARCH[[i]]$Date), '.rds'))
cat(paste0(
'data/fx/', names(mcsGARCH[[i]])[3], '/mcsGARCH.',
unique(mcsGARCH[[i]]$Date), '.rds saved!\n'))
}
}; rm(i)
}
ts
and msts
Here I read the saved models.
## Get all files.
fls <- paste0('data/fx/USDJPY/', list.files(
'data/fx/USDJPY/', pattern = '^sets|^mts'))
## Shows example.
# read_rds(grep('sets', fls, value = TRUE)[1])
# read_rds(grep('mts', fls, value = TRUE)[1]) %>% as_tibble
seasonal_m <- llply(1:length(fls), function(i) {
x <- fls[i]
y <- list()
if(str_detect(x, 'sets.wk.1440.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('wk.1440'))
} else if(str_detect(x, 'sets.mo.1440.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('mo.1440'))
} else if(str_detect(x, 'sets.qt.1440.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('qt.1440'))
} else if(str_detect(x, 'sets.yr.1440.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('yr.1440'))
} else if(str_detect(x, 'sets.wk.7200.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('wk.7200'))
} else if(str_detect(x, 'sets.mo.7200.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('mo.7200'))
} else if(str_detect(x, 'sets.qt.7200.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('qt.7200'))
} else if(str_detect(x, 'sets.yr.7200.')) {
y[[i]] <- read_rds(x)$forecast %>%
dplyr::mutate(Model = factor('ts'), Period = factor('yr.7200'))
} else if(str_detect(x, 'mts.dy.wk.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk'))
} else if(str_detect(x, 'mts.dy.qt.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.qt'))
} else if(str_detect(x, 'mts.dy.yr.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.yr'))
} else if(str_detect(x, 'mts.wk.qt.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('wk.qt'))
} else if(str_detect(x, 'mts.wk.qt.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('wk.yr'))
} else if(str_detect(x, 'mts.qt.yr.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('qt.yr'))
} else if(str_detect(x, 'mts.dy.wk.mo.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>% # i = 2077
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.mo'))# %>%
#dplyr::rename(high.Point.Forecast = high.high.Point.Forecast)
} else if(str_detect(x, 'mts.dy.wk.mo.qt.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.mo.qt'))
} else if(str_detect(x, 'mts.dy.wk.mo.yr.[0-9]{4}')) {
y[[i]] <- read_rds(x) %>%
dplyr::mutate(Model = factor('tbats'), Period = factor('dy.wk.mo.yr'))
} else {
cat('No such files.\n')
}
y[[i]] %<>% .[c('index', 'Model', 'Period',
'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast','close.Point.Forecast')]
#saveRDS(y[[i]], x)
#cat(x, '\n')
}) %>%
bind_rows %>%
as_tibble
# seasonal_m[c('Lo.80',
# 'close.Lo.80', 'close.Hi.80', 'close.Lo.95', 'close.Hi.95',
# 'high.Hi.80', 'high.Lo.95', 'high.Hi.95',
# 'high.high.Point.Forecast', 'low.Hi.80', 'low.Lo.95',
# 'low.Hi.95', 'open.Hi.80', 'open.Lo.95', 'open.Hi.95',
# 'open.Lo.80', 'high.Lo.80', 'low.Lo.80', 'close.Lo.80')] <- NULL
#a1 <- rbind(aa1, aa2)
#a2 <- rbind(aa3, aa4)
#seasonal_m <- rbind(a1, a2)
## don't use complete.cases() since there has some NA elements in ts models.
#seasonal_m <- seasonal_m[complete.cases(seasonal_m),]
#dataset with 23
#write_rds(seasonal_m, 'data/fx/USDJPY/seasonal_m.rds')
#seasonal_m1 <- seasonal_m
#rm(seasonal_m, data_m1)
#seasonal_m1 %<>%
# .[c('index','Model','Period',
# 'open.Point.Forecast','high.Point.Forecast',
# 'low.Point.Forecast','close.Point.Forecast')]#,
# 'open.Point.Forecast.Hi 80','open.Point.Forecast.Lo 80',
# 'open.Point.Forecast.Lo 95','open.Point.Forecast.Hi 95',
# 'high.Point.Forecast.Lo 80','high.Point.Forecast.Hi 80',
# 'high.Point.Forecast.Lo 95','high.Point.Forecast.Hi 95',
# 'low.Point.Forecast.Lo 80','low.Point.Forecast.Hi 80',
# 'low.Point.Forecast.Lo 95','low.Point.Forecast.Hi 95',
# 'close.Point.Forecast.Lo 80','close.Point.Forecast.Hi 80',
# 'close.Point.Forecast.Lo 95','close.Point.Forecast.Hi 95')]
##
#seasonal_m <- llply(fls, function(x) {
# read_rds(x)$forecast %>%
# dplyr::mutate(
# Model = case_when(
# grepl('sets.wk.1440.', x) ~ factor('ts'),
# grepl('sets.mo.1440.', x) ~ factor('ts'),
# grepl('sets.qt.1440.', x) ~ factor('ts'),
# grepl('sets.yr.1440.', x) ~ factor('ts'),
# grepl('sets.wk.7200.', x) ~ factor('ts'),
# grepl('sets.mo.7200.', x) ~ factor('ts'),
# grepl('sets.qt.7200.', x) ~ factor('ts'),
# grepl('sets.yr.7200.', x) ~ factor('ts'),
# grepl('mts.dy.wk.[0-9]{4}', x) ~ factor('tbats'),
# grepl('mts.dy.wk.mo.[0-9]{4}', x) ~ factor('tbats'),
# grepl('mts.dy.wk.mo.qt.[0-9]{4}', x) ~ factor('tbats'),
# grepl('mts.dy.wk.mo.yr.[0-9]{4}', x) ~ factor('tbats'),
# FALSE~ stop('No such files.')),
# Period = factor('wk.1440'),
# Period = factor('mo.1440'),
# Period = factor('qt.1440'),
# Period = factor('yr.1440'),
# Period = factor('wk.7200'),
# Period = factor('mo.7200'),
# Period = factor('qt.7200'),
# Period = factor('yr.7200'),
# Period = factor('dy.wk'),
# Period = factor('dy.wk.mo'),
# Period = factor('dy.wk.mo.qt'),
# Period = factor('dy.wk.mo.yr'))
#
#} else {
# stop('No such files.')
#}
# }) %>%
# bind_rows %>%
# as_tibble
##The last observation of Friday is Saturday 00:00:00 but not next Monday 00:00:00. Therefore the Saturday forecasted price will not be merge with Next Monday market price.
#comp %<>% .[colSums(!is.na(.)) > 0]
#seasonal_m1 <- join(data_m1, seasonal_m1) %>%
# bind_rows %>%
# as_tibble
seasonal_m1 <- join(data_m1, seasonal_m) %>%
bind_rows %>%
as_tibble
#seasonal_m1 %<>%
# .[c('index','Model','Period','open','high','low','close',
# 'open.Point.Forecast','high.Point.Forecast',
# 'low.Point.Forecast','close.Point.Forecast')]#,
# 'open.Point.Forecast.Hi 80','open.Point.Forecast.Lo 80',
# 'open.Point.Forecast.Lo 95','open.Point.Forecast.Hi 95',
# 'high.Point.Forecast.Lo 80','high.Point.Forecast.Hi 80',
# 'high.Point.Forecast.Lo 95','high.Point.Forecast.Hi 95',
# 'low.Point.Forecast.Lo 80','low.Point.Forecast.Hi 80',
# 'low.Point.Forecast.Lo 95','low.Point.Forecast.Hi 95',
# 'close.Point.Forecast.Lo 80','close.Point.Forecast.Hi 80',
# 'close.Point.Forecast.Lo 95','close.Point.Forecast.Hi 95')]
seasonal_m1 %<>% na.omit
seasonal_m1 %<>% .[c('index', 'Model', 'Period',
'open', 'high', 'low', 'close',
'open.Point.Forecast', 'high.Point.Forecast',
'low.Point.Forecast','close.Point.Forecast')]
seasonal_m1 %<>% data.table
## don't use complete.cases() since there has some NA elements in ts models.
#seasonal_m <- seasonal_m[complete.cases(seasonal_m),]
write_rds(seasonal_m1, 'data/fx/USDJPY/seasonal_m1.rds')
#zip it to be splited 99MB for each file.
## ------------------------------------------
## zip above files to be splitted small files since file sizes restriction on GitHub.
## ------------------------------------------
#dir('data/fx/USDJPY', pattern = '*.z') %>%
# llply(., function(x) {
# suppressAll(unzip(paste0('data/fx/USDJPY/', x)))
# })
seasonal_m1 <- read_rds('data/fx/USDJPY/seasonal_m1.rds')
## https://stackoverflow.com/a/52490634/3806250
#seasonal_m1[is.nan(seasonal_m1)] <- NA
Below graph shows the forecast price and actual price.
grph <- seasonal_m1 %>%
tidyr::unite(Model, Model:Period) %>%
data.table
prc <- unique(grph[, .(index, open, high, low, close)])
prc <- prc[, Model := 'Market.Price'][]
grph <- grph[, (c('open', 'high', 'low', 'close')) := NULL]
names(grph) <- c('index', 'Model', 'open', 'high', 'low', 'close')
grph <- rbind(grph, prc)
grph <- data.table(grph)[order(index)]
rm(prc)
## save dataset in data.table format
saveRDS(grph, 'data/fx/USDJPY/grph.rds')
# fwrite(data.table(grph), 'data/fx/USDJPY/grph.csv')
# write.table(data.table(grph), 'data/fx/USDJPY/grph.txt')
## https://rstudio-pubs-static.s3.amazonaws.com/31702_9c22e3d1a0c44968a4a1f9656f1800ab.html
grph_json <- rjson::toJSON(grph)
write(grph_json, 'data/fx/USDJPY/grph_json.json')
#grph_json <- fromJSON('data/fx/USDJPY/grph_json.json')
grph <- readRDS('data/fx/USDJPY/grph.rds')
data.frame(grph)[c(1:5, (nrow(grph)-5):nrow(grph)),] %>%
kbl('html', caption = 'Data Sample', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'LightSlateGrey') %>%
column_spec(3, background = 'DarkGrey') %>%
column_spec(5, background = 'DarkGrey') %>%
column_spec(7, background = 'DarkGrey') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
index | Model | open | high | low | close | |
---|---|---|---|---|---|---|
1 | 2015-01-06 00:01:00 | ts_mo.7200 | 119.6400 | 119.6407 | 119.6334 | 119.6341 |
2 | 2015-01-06 00:01:00 | ts_qt.7200 | 119.6400 | 119.6407 | 119.6334 | 119.6341 |
3 | 2015-01-06 00:01:00 | ts_yr.7200 | 119.6400 | 119.6407 | 119.6334 | 119.6341 |
4 | 2015-01-06 00:01:00 | Market.Price | 119.6340 | 119.6350 | 119.6030 | 119.6145 |
5 | 2015-01-06 00:02:00 | ts_mo.7200 | 119.6400 | 119.6414 | 119.6337 | 119.6341 |
30612955 | 2018-07-07 00:00:00 | ts_yr.7200 | 110.6905 | 110.6916 | 110.6836 | 110.6871 |
30612956 | 2018-07-07 00:00:00 | ts_yr.7200 | 110.7946 | 110.8081 | 110.7752 | 110.7782 |
30612957 | 2018-07-07 00:00:00 | ts_yr.7200 | 110.5770 | 110.5920 | 110.5786 | 110.5886 |
30612958 | 2018-07-07 00:00:00 | ts_yr.7200 | 110.4429 | 110.4474 | 110.4187 | 110.4338 |
30612959 | 2018-07-07 00:00:00 | ts_yr.7200 | 110.6963 | 110.7030 | 110.6271 | 110.6315 |
30612960 | 2018-07-07 00:00:00 | Market.Price | 110.4635 | 110.4765 | 110.4615 | 110.4740 |
the dataset above has 30612960 x, 6 x dimensions.
## https://plotly.com/r/embedding-graphs-in-rmarkdown
## https://stackoverflow.com/questions/25186022/embedding-plotly-output-in-r-markdown/25192691
##
fig <- plot_ly(grph, x = ~index, y = ~open, color = ~Model)
fig <- fig %>% add_lines()
fig
## ------------ eval = FALSE -------------------
## Due to high volume dataset and heavily ploting, here I ommit it.
grph %>%
group_by(Model) %>%
e_charts(x = index) %>%
e_line(open.Point.Forecast, smooth = TRUE) %>%
e_datazoom(
type = 'slider',
toolbox = FALSE,
bottom = -5) %>%
e_tooltip() %>%
e_title(text = 'Model', subtext = 'open.Point.Forecast', left = 'center') %>%
e_axis_labels(x = 'index', y = 'open.Point.Forecast') %>%
e_x_axis(index, axisPointer = list(show = TRUE)) %>%
e_legend(
orient = 'vertical',
type = c('scroll'),
#selectedMode = 'multiple', #https://echarts.apache.org/en/option.html#legend
#selected = list('Model'),
left = 0, top = 80) %>%
e_grid(left = 150, top = 90) %>%
#e_theme('shine') %>%
e_toolbox_feature('saveAsImage', title = 'Screenshot')
## ggthemes
palettes1 <- ggthemes_data[['tableau']][['color-palettes']][['ordered-sequential']]
## https://github.com/BTJ01/ggthemes/blob/master/inst/examples/ex-scale_color_tableau.R
palettes2 <- ggthemes_data[["tableau"]][["color-palettes"]][["regular"]]
## -------------------------------
## ggthemr
## https://www.shanelynn.ie/themes-and-colours-for-r-ggplots-with-ggthemr/
#tableau_colours <- c('#1F77B4', '#FF7F0E', '#2CA02C', '#D62728', '#9467BD', '#8C564B', '#CFECF9', '#7F7F7F', '#BCBD22', '#17BECF')
tableau_colours <- palettes2$`Tableau 20`$value
names(tableau_colours) <- palettes2$`Tableau 20`$name
#names(tableau_colours) <- unique(grph$Model)
## https://colorbrewer2.org/#type=qualitative&scheme=Paired&n=12
#tableau_colours <- c('#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#fdbf6f', '#ff7f00', '#cab2d6', '#6a3d9a', '#ffff99', '#b15928')
# you have to add a colour at the start of your palette for outlining boxes, we'll use a grey:
#tableau_colours <- c("#555555", tableau_colours)
# remove previous effects:
ggthemr_reset()
# Define colours for your figures with define_palette
tableau <- define_palette(
swatch = tableau_colours, # colours for plotting points and bars
## https://stackoverflow.com/questions/7014387/whats-the-difference-between-1l-and-1
gradient = c(lower = tableau_colours[1L], upper = tableau_colours[length(tableau_colours)]), #upper and lower colours for continuous colours
#background = "#EEEEEE" #defining a grey-ish background
)
# set the theme for your figures:
ggthemr(tableau)
## ------------------------
## https://stackoverflow.com/questions/34601194/change-colours-to-defined-palette-for-ggplot-objects
change_colours <- function(p, palette) {
n <- nlevels(p$data[[deparse(p$mapping$group)]])
tryCatch(as.character(palette),
error=function(e) stop('palette should be a vector of colours', call.=FALSE))
if(n > length(palette)) stop('Not enough colours in palette.')
pal <- function(n) palette[seq_len(n)]
p + theme_light() + discrete_scale('colour', 'foo', pal)
}
md1 <- sort(unique(grph$Model)[str_detect(unique(grph$Model), '^ts_')])
md2 <- unique(grph$Model)[!unique(grph$Model) %in% md1]
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p1a <- grph[Model %in% md1] %>%
ggplot(aes(x = index, y = open, group = Model, color = Model)) +
geom_line() +
#scale_colour_gradient2_tableau(palette = names(palettes)[1]) + #first palettes list in name
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Open Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1L], 'to', range(unique(grph$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
##scale_fill_manual(values = tableau_colours) +
#scale_color_brewer(tableau_colours) +
#scale_color_jcolors(palette = palettes2$`Tableau 20`$value) + #choose color set among palettes
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p1a)
#p1a
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p1b <- grph[Model %in% md2] %>%
ggplot(aes(x = index, y = open, group = Model, color = Model)) +
geom_line() +
#scale_colour_gradient2_tableau(palette = names(palettes)[1]) + #first palettes list in name
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Open Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1L], 'to', range(unique(grph$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
##scale_fill_manual(values = tableau_colours) +
#scale_color_brewer(tableau_colours) +
#scale_color_jcolors(palette = palettes2$`Tableau 20`$value) + #choose color set among palettes
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p1b)
#p1b
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p2a <- grph[Model %in% md1] %>%
ggplot(aes(x = index, y = high, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min High Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1L], 'to', range(unique(grph$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p2a)
#p2a
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p2b <- grph[Model %in% md2] %>%
ggplot(aes(x = index, y = high, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min High Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1L], 'to', range(unique(grph$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p2b)
#p2b
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p3a <- grph[Model %in% md1] %>%
ggplot(aes(x = index, y = low, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Low Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1], 'to', range(unique(grph$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p3a)
#p3a
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p3b <- grph[Model %in% md2] %>%
ggplot(aes(x = index, y = low, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Low Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1], 'to', range(unique(grph$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p3b)
#p3b
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p4a <- grph[Model %in% md1] %>%
ggplot(aes(x = index, y = close, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Close Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1], 'to', range(unique(grph$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p4a)
#p4a
Due to large size, here I do not plot the graph.
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p4b <- grph[Model %in% md2] %>%
ggplot(aes(x = index, y = close, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Close Price Forecasting',
subtitle = paste('From', range(unique(grph$index))[1], 'to', range(unique(grph$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
#ggplotly(p4b)
#p4b
Due to large size, here I do not plot the graph.
Below table compares the models.
mse1 <- seasonal_m1 %>%
ddply(.(Model, Period), summarise,
MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
n = length(index)) %>%
as_tibble
tb6 <- mse1 %>%
dplyr::mutate(
MSE.open = ifelse(
rank(MSE.open) <= 3,
cell_spec(
paste0(round(MSE.open, 7), ' (rank: ', sprintf('%1.f', rank(MSE.open)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.open, 7), ' (rank: ', sprintf('%1.f', rank(MSE.open)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.high = ifelse(
rank(MSE.high) <= 3,
cell_spec(
paste0(round(MSE.high, 7), ' (rank: ', sprintf('%1.f', rank(MSE.high)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.high, 7), ' (rank: ', sprintf('%1.f', rank(MSE.high)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.low = ifelse(
rank(MSE.low) <= 3,
cell_spec(
paste0(round(MSE.low, 7), ' (rank: ', sprintf('%1.f', rank(MSE.low)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.low, 7), ' (rank: ', sprintf('%1.f', rank(MSE.low)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.close = ifelse(
rank(MSE.close) <= 3,
cell_spec(
paste0(round(MSE.close, 7), ' (rank: ', sprintf('%1.f', rank(MSE.close)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.close, 7), ' (rank: ', sprintf('%1.f', rank(MSE.close)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.HLC = ifelse(
rank(MSE.HLC) <= 3,
cell_spec(
paste0(round(MSE.HLC, 7), ' (rank: ', sprintf('%1.f', rank(MSE.HLC)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.HLC, 7), ' (rank: ', sprintf('%1.f', rank(MSE.HLC)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.OHLC = ifelse(
rank(MSE.OHLC) <= 3,
cell_spec(
paste0(round(MSE.OHLC, 7), ' (rank: ', sprintf('%1.f', rank(MSE.OHLC)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.OHLC, 7), ' (rank: ', sprintf('%1.f', rank(MSE.OHLC)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'MSE of Seasonal Daily 1440 minutes ETS Model (Accumulated Period from Weekly)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'Gainsboro') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'LightSlateGrey') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb6
Model | Period | MSE.open | MSE.high | MSE.low | MSE.close | MSE.HLC | MSE.OHLC | n |
---|---|---|---|---|---|---|---|---|
tbats | dy.qt | 0.5935084 (rank: 7) | 0.5943026 (rank: 7) | 0.593878 (rank: 7) | 0.59344 (rank: 7) | 0.5938735 (rank: 7) | 0.5937822 (rank: 7) | 1298880 |
tbats | dy.wk | 0.2331241 (rank: 1) | 0.2303957 (rank: 1) | 0.2332475 (rank: 1) | 0.2415673 (rank: 4) | 0.2350702 (rank: 2) | 0.2345836 (rank: 1) | 1298880 |
tbats | dy.wk.mo | 0.2585134 (rank: 6) | 0.2529979 (rank: 6) | 0.2512802 (rank: 6) | 0.2468493 (rank: 5) | 0.2503758 (rank: 6) | 0.2524102 (rank: 6) | 1287360 |
tbats | dy.yr | 2.992332 (rank: 12) | 2.998829 (rank: 12) | 2.9904869 (rank: 12) | 3.0017416 (rank: 12) | 2.9970192 (rank: 12) | 2.9958474 (rank: 12) | 1298880 |
ts | mo.1440 | 0.238598 (rank: 4) | 0.2371241 (rank: 4) | 0.2350053 (rank: 4) | 0.2378324 (rank: 3) | 0.2366539 (rank: 4) | 0.23714 (rank: 4) | 1298880 |
ts | mo.7200 | 0.9879508 (rank: 11) | 0.9550506 (rank: 11) | 0.9493971 (rank: 11) | 0.9785574 (rank: 11) | 0.9610017 (rank: 11) | 0.967739 (rank: 11) | 4728960 |
ts | qt.1440 | 0.2355912 (rank: 2) | 0.2356448 (rank: 2) | 0.2347662 (rank: 2) | 0.234693 (rank: 1) | 0.2350347 (rank: 1) | 0.2351738 (rank: 2) | 1298880 |
ts | qt.7200 | 0.8957095 (rank: 9) | 0.8946693 (rank: 10) | 0.8959858 (rank: 9) | 0.8933443 (rank: 9) | 0.8946665 (rank: 9) | 0.8949272 (rank: 9) | 4739040 |
ts | wk.1440 | 0.2525562 (rank: 5) | 0.2482487 (rank: 5) | 0.2492224 (rank: 5) | 0.2490372 (rank: 6) | 0.2488361 (rank: 5) | 0.2497661 (rank: 5) | 1298880 |
ts | wk.7200 | 0.9067682 (rank: 10) | 0.8624934 (rank: 8) | 0.9333364 (rank: 10) | 0.9688244 (rank: 10) | 0.9215514 (rank: 10) | 0.9178556 (rank: 10) | 4710240 |
ts | yr.1440 | 0.2357672 (rank: 3) | 0.2357996 (rank: 3) | 0.2349973 (rank: 3) | 0.2348683 (rank: 2) | 0.2352217 (rank: 3) | 0.2353581 (rank: 3) | 1298880 |
ts | yr.7200 | 0.8951182 (rank: 8) | 0.8940555 (rank: 9) | 0.8943435 (rank: 8) | 0.8927659 (rank: 8) | 0.8937216 (rank: 8) | 0.8940708 (rank: 8) | 4739040 |
from above models we know the βest model.
Here I summarize 1440 of 1 min data to be 1 day and choose the best fitted model. Below table compares the models.
# mse2 <- seasonal_m1 %>%
# ddply(.(Model, Period, index), summarise,
# MSE.open = mean((open.Point.Forecast - open)^2, na.rm=TRUE),
# MSE.high = mean((high.Point.Forecast - high)^2, na.rm=TRUE),
# MSE.low = mean((low.Point.Forecast - low)^2, na.rm=TRUE),
# MSE.close = mean((close.Point.Forecast - close)^2, na.rm=TRUE),
# MSE.HLC = (MSE.high + MSE.low + MSE.close)/3,
# MSE.OHLC = (MSE.open + MSE.high + MSE.low + MSE.close)/4,
# n = length(index)) %>%
# as_tibble
## https://tysonbarrett.com/jekyll/update/2019/10/06/datatable_memory/
## http://brooksandrew.github.io/simpleblog/articles/advanced-data-table/
seasonal_m1 <- data.table(seasonal_m1)
setorder(seasonal_m1, index)
open.accr <- seasonal_m1[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N, open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
saveRDS(open.accr, 'data/fx/USDJPY/open.accr.rds')
high.accr <- seasonal_m1[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N, high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
low.accr <- seasonal_m1[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N, low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
close.accr <- seasonal_m1[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N, close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
open.sm <- open.accr[, list(open.mape = mean(open.mape),
open.smape = mean(open.smape),
open.mse = mean(open.mse),
open.rmse = mean(open.rmse)),
by=.(Model, Period)]
high.sm <- high.accr[, list(high.mape = mean(high.mape),
high.smape = mean(high.smape),
high.mse = mean(high.mse),
high.rmse = mean(high.rmse)),
by=.(Model, Period)]
low.sm <- low.accr[, list(low.mape = mean(low.mape),
low.smape = mean(low.smape),
low.mse = mean(low.mse),
low.rmse = mean(low.rmse)),
by=.(Model, Period)]
close.sm <- close.accr[, list(close.mape = mean(close.mape),
close.smape = mean(close.smape),
close.mse = mean(close.mse),
close.rmse = mean(close.rmse)),
by=.(Model, Period)]
daily.sm <- join_all(list(open.sm, high.sm, low.sm, close.sm)) %>%
tibble
saveRDS(daily.sm, 'data/fx/USDJPY/best_m.rds')
rm(open.accr, high.accr, low.accr, close.accr)
rm(open.sm, high.sm, low.sm, close.sm)
open.accr <- readRDS('data/fx/USDJPY/open.accr.rds')
data.frame(open.accr)[c(1:5, (nrow(open.accr)-5):nrow(open.accr)),] %>%
kbl('html', caption = 'Data Sample', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
## https://jrnold.github.io/ggthemes/reference/tableau_color_pal.html
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = '#4E79A7') %>%
column_spec(2, background = 'CornflowerBlue') %>%
column_spec(3, background = 'CornflowerBlue') %>%
column_spec(4, background = '#5b65a7') %>%
column_spec(5, background = '#A0CBE8') %>%
column_spec(6, background = 'DarkGrey') %>%
column_spec(8, background = 'DarkGrey') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
Model | Period | index | N | open.mape | open.smape | open.mse | open.rmse | |
---|---|---|---|---|---|---|---|---|
1 | ts | mo.7200 | 2015-01-06 | 1439 | 0.0056264 | 0.0056468 | 0.5810119 | 0.7622413 |
2 | ts | mo.7200 | 2015-01-07 | 2879 | 0.0051038 | 0.0051011 | 0.4379304 | 0.6617631 |
3 | ts | mo.7200 | 2015-01-08 | 4319 | 0.0049272 | 0.0049070 | 0.5804952 | 0.7619023 |
4 | ts | mo.7200 | 2015-01-09 | 5759 | 0.0043424 | 0.0043424 | 0.4274257 | 0.6537780 |
5 | ts | mo.7200 | 2015-01-10 | 4 | 0.0063985 | 0.0064248 | 0.7527902 | 0.8676348 |
13042 | tbats | dy.wk.mo | 2018-07-02 | 1439 | 0.0010502 | 0.0010493 | 0.0212129 | 0.1456465 |
13043 | tbats | dy.wk.mo | 2018-07-03 | 1440 | 0.0012721 | 0.0012733 | 0.0349143 | 0.1868537 |
13044 | tbats | dy.wk.mo | 2018-07-04 | 1440 | 0.0010274 | 0.0010281 | 0.0163645 | 0.1279240 |
13045 | tbats | dy.wk.mo | 2018-07-05 | 1440 | 0.0009804 | 0.0009800 | 0.0141517 | 0.1189611 |
13046 | tbats | dy.wk.mo | 2018-07-06 | 1440 | 0.0007993 | 0.0007997 | 0.0130552 | 0.1142594 |
13047 | tbats | dy.wk.mo | 2018-07-07 | 1 | 0.0016373 | 0.0016386 | 0.0328181 | 0.1811577 |
From above table, we can know the models with 7200
has more observations due to using 7200
observations per forecast day.
daily.sm <- readRDS('data/fx/USDJPY/best_m.rds')
tb7 <- daily.sm %>%
dplyr::select(contains(c('Model', 'Period', 'open'))) %>%
dplyr::mutate(
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min Open Price Summarised to 1 Day per Unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'Gainsboro') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb7
Model | Period | open.mape | open.smape | open.mse | open.rmse |
---|---|---|---|---|---|
ts | mo.7200 | 0.0064662 (rank: 11) | 0.0064709 (rank: 11) | 1.0473956 (rank: 11) | 0.8433017 (rank: 11) |
ts | qt.7200 | 0.006161 (rank: 10) | 0.0061649 (rank: 10) | 0.9539573 (rank: 9) | 0.8067731 (rank: 10) |
ts | yr.7200 | 0.0061594 (rank: 9) | 0.0061632 (rank: 9) | 0.9534985 (rank: 8) | 0.8065848 (rank: 9) |
tbats | dy.qt | 0.0038487 (rank: 7) | 0.0038663 (rank: 7) | 0.6615488 (rank: 7) | 0.4836051 (rank: 7) |
tbats | dy.wk | 0.0031178 (rank: 2) | 0.0031203 (rank: 2) | 0.2951857 (rank: 4) | 0.4022059 (rank: 1) |
tbats | dy.yr | 0.0078141 (rank: 12) | 0.007929 (rank: 12) | 3.0602275 (rank: 12) | 0.9279223 (rank: 12) |
ts | mo.1440 | 0.0031302 (rank: 4) | 0.0031321 (rank: 4) | 0.2895257 (rank: 3) | 0.4044655 (rank: 4) |
ts | qt.1440 | 0.0031176 (rank: 1) | 0.0031195 (rank: 1) | 0.2870498 (rank: 1) | 0.4030116 (rank: 2) |
ts | wk.1440 | 0.0032485 (rank: 6) | 0.0032503 (rank: 6) | 0.3038581 (rank: 5) | 0.4183746 (rank: 6) |
ts | wk.7200 | 0.0059882 (rank: 8) | 0.0059922 (rank: 8) | 0.9699289 (rank: 10) | 0.7943849 (rank: 8) |
ts | yr.1440 | 0.0031196 (rank: 3) | 0.0031215 (rank: 3) | 0.2872197 (rank: 2) | 0.4032139 (rank: 3) |
tbats | dy.wk.mo | 0.0031517 (rank: 5) | 0.003155 (rank: 5) | 0.3068028 (rank: 6) | 0.4058541 (rank: 5) |
tb8 <- daily.sm %>%
dplyr::select(contains(c('Model', 'Period', 'high'))) %>%
dplyr::mutate(
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min High Price Summarised to 1 Day per Unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'Gainsboro') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb8
Model | Period | high.mape | high.smape | high.mse | high.rmse |
---|---|---|---|---|---|
ts | mo.7200 | 0.0064193 (rank: 11) | 0.006423 (rank: 11) | 1.0112124 (rank: 11) | 0.8358733 (rank: 11) |
ts | qt.7200 | 0.0061557 (rank: 10) | 0.0061595 (rank: 10) | 0.9533066 (rank: 10) | 0.8063007 (rank: 10) |
ts | yr.7200 | 0.0061533 (rank: 9) | 0.0061571 (rank: 9) | 0.9528094 (rank: 9) | 0.806096 (rank: 9) |
tbats | dy.qt | 0.0038612 (rank: 7) | 0.0038788 (rank: 7) | 0.6638121 (rank: 7) | 0.4849377 (rank: 7) |
tbats | dy.wk | 0.003073 (rank: 1) | 0.0030751 (rank: 1) | 0.2834713 (rank: 1) | 0.3968974 (rank: 1) |
tbats | dy.yr | 0.0078198 (rank: 12) | 0.0079349 (rank: 12) | 3.0679658 (rank: 12) | 0.928731 (rank: 12) |
ts | mo.1440 | 0.0031324 (rank: 4) | 0.0031343 (rank: 4) | 0.2906514 (rank: 4) | 0.4047309 (rank: 4) |
ts | qt.1440 | 0.0031181 (rank: 2) | 0.0031199 (rank: 2) | 0.2876954 (rank: 2) | 0.4030555 (rank: 2) |
ts | wk.1440 | 0.0032268 (rank: 6) | 0.0032287 (rank: 6) | 0.2990047 (rank: 5) | 0.4154547 (rank: 6) |
ts | wk.7200 | 0.0059253 (rank: 8) | 0.0059297 (rank: 8) | 0.9198171 (rank: 8) | 0.7835024 (rank: 8) |
ts | yr.1440 | 0.0031204 (rank: 3) | 0.0031222 (rank: 3) | 0.2878581 (rank: 3) | 0.4032895 (rank: 3) |
tbats | dy.wk.mo | 0.0031536 (rank: 5) | 0.0031563 (rank: 5) | 0.3040547 (rank: 6) | 0.4059904 (rank: 5) |
tb9 <- daily.sm %>%
dplyr::select(contains(c('Model', 'Period', 'low'))) %>%
dplyr::mutate(
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min Open Price Summarised to 1 Day per Unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'Gainsboro') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb9
Model | Period | low.mape | low.smape | low.mse | low.rmse |
---|---|---|---|---|---|
ts | mo.7200 | 0.0064064 (rank: 11) | 0.00641 (rank: 11) | 1.004097 (rank: 11) | 0.8332683 (rank: 11) |
ts | qt.7200 | 0.0061671 (rank: 10) | 0.0061709 (rank: 10) | 0.9531488 (rank: 9) | 0.8074387 (rank: 10) |
ts | yr.7200 | 0.0061568 (rank: 9) | 0.0061607 (rank: 9) | 0.9515652 (rank: 8) | 0.8062817 (rank: 9) |
tbats | dy.qt | 0.0038643 (rank: 7) | 0.0038818 (rank: 7) | 0.6608467 (rank: 7) | 0.4852226 (rank: 7) |
tbats | dy.wk | 0.0030681 (rank: 1) | 0.0030702 (rank: 1) | 0.2827046 (rank: 1) | 0.3965762 (rank: 1) |
tbats | dy.yr | 0.0078147 (rank: 12) | 0.0079295 (rank: 12) | 3.0546429 (rank: 12) | 0.9280394 (rank: 12) |
ts | mo.1440 | 0.0031174 (rank: 3) | 0.0031192 (rank: 3) | 0.283951 (rank: 4) | 0.4029595 (rank: 3) |
ts | qt.1440 | 0.0031165 (rank: 2) | 0.0031183 (rank: 2) | 0.2835706 (rank: 2) | 0.4028773 (rank: 2) |
ts | wk.1440 | 0.0032311 (rank: 6) | 0.0032327 (rank: 6) | 0.2973999 (rank: 5) | 0.4160712 (rank: 6) |
ts | wk.7200 | 0.0060377 (rank: 8) | 0.0060395 (rank: 8) | 0.9968272 (rank: 10) | 0.8053099 (rank: 8) |
ts | yr.1440 | 0.0031191 (rank: 4) | 0.0031209 (rank: 4) | 0.283776 (rank: 3) | 0.4031772 (rank: 4) |
tbats | dy.wk.mo | 0.0031829 (rank: 5) | 0.0031859 (rank: 5) | 0.3037754 (rank: 6) | 0.4091673 (rank: 5) |
tb10 <- daily.sm %>%
dplyr::select(contains(c('Model', 'Period', 'close'))) %>%
dplyr::mutate(
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min Close Price Summarised to 1 Day per Unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'Gainsboro') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb10
Model | Period | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|
ts | mo.7200 | 0.0064453 (rank: 11) | 0.0064496 (rank: 11) | 1.0374788 (rank: 11) | 0.8399431 (rank: 11) |
ts | qt.7200 | 0.0061522 (rank: 10) | 0.006156 (rank: 10) | 0.951238 (rank: 9) | 0.8057525 (rank: 9) |
ts | yr.7200 | 0.0061507 (rank: 9) | 0.0061544 (rank: 9) | 0.9507895 (rank: 8) | 0.8055764 (rank: 8) |
tbats | dy.qt | 0.0038503 (rank: 7) | 0.0038679 (rank: 7) | 0.6610232 (rank: 7) | 0.4837561 (rank: 7) |
tbats | dy.wk | 0.003145 (rank: 5) | 0.0031473 (rank: 5) | 0.3015154 (rank: 6) | 0.4057309 (rank: 5) |
tbats | dy.yr | 0.0078135 (rank: 12) | 0.0079289 (rank: 12) | 3.0682874 (rank: 12) | 0.9280099 (rank: 12) |
ts | mo.1440 | 0.0031304 (rank: 4) | 0.003132 (rank: 4) | 0.2874381 (rank: 3) | 0.4044561 (rank: 4) |
ts | qt.1440 | 0.0031164 (rank: 1) | 0.0031182 (rank: 1) | 0.284739 (rank: 1) | 0.4028578 (rank: 2) |
ts | wk.1440 | 0.0032319 (rank: 6) | 0.0032337 (rank: 6) | 0.2995034 (rank: 5) | 0.4162795 (rank: 6) |
ts | wk.7200 | 0.0060614 (rank: 8) | 0.006062 (rank: 8) | 1.0358588 (rank: 10) | 0.8067671 (rank: 10) |
ts | yr.1440 | 0.0031187 (rank: 2) | 0.0031205 (rank: 2) | 0.2849251 (rank: 2) | 0.403099 (rank: 3) |
tbats | dy.wk.mo | 0.0031204 (rank: 3) | 0.0031234 (rank: 3) | 0.2948921 (rank: 4) | 0.4018679 (rank: 1) |
tb11 <- daily.sm %>%
dplyr::mutate(
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'LightGray') %>%
column_spec(4, background = 'Gainsboro') %>%
column_spec(5, background = 'LightGray') %>%
column_spec(6, background = 'Gainsboro') %>%
column_spec(7, background = 'LightGray') %>%
column_spec(8, background = 'Gainsboro') %>%
column_spec(9, background = 'LightGray') %>%
column_spec(10, background = 'Gainsboro') %>%
column_spec(11, background = 'LightGray') %>%
column_spec(12, background = 'Gainsboro') %>%
column_spec(13, background = 'LightGray') %>%
column_spec(14, background = 'Gainsboro') %>%
column_spec(15, background = 'LightGray') %>%
column_spec(16, background = 'Gainsboro') %>%
column_spec(17, background = 'LightGray') %>%
column_spec(18, background = 'Gainsboro') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb11
Model | Period | open.mape | open.smape | open.mse | open.rmse | high.mape | high.smape | high.mse | high.rmse | low.mape | low.smape | low.mse | low.rmse | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ts | mo.7200 | 0.0064662 (rank: 11) | 0.0064709 (rank: 11) | 1.0473956 (rank: 11) | 0.8433017 (rank: 11) | 0.0064193 (rank: 11) | 0.006423 (rank: 11) | 1.0112124 (rank: 11) | 0.8358733 (rank: 11) | 0.0064064 (rank: 11) | 0.00641 (rank: 11) | 1.004097 (rank: 11) | 0.8332683 (rank: 11) | 0.0064453 (rank: 11) | 0.0064496 (rank: 11) | 1.0374788 (rank: 11) | 0.8399431 (rank: 11) |
ts | qt.7200 | 0.006161 (rank: 10) | 0.0061649 (rank: 10) | 0.9539573 (rank: 9) | 0.8067731 (rank: 10) | 0.0061557 (rank: 10) | 0.0061595 (rank: 10) | 0.9533066 (rank: 10) | 0.8063007 (rank: 10) | 0.0061671 (rank: 10) | 0.0061709 (rank: 10) | 0.9531488 (rank: 9) | 0.8074387 (rank: 10) | 0.0061522 (rank: 10) | 0.006156 (rank: 10) | 0.951238 (rank: 9) | 0.8057525 (rank: 9) |
ts | yr.7200 | 0.0061594 (rank: 9) | 0.0061632 (rank: 9) | 0.9534985 (rank: 8) | 0.8065848 (rank: 9) | 0.0061533 (rank: 9) | 0.0061571 (rank: 9) | 0.9528094 (rank: 9) | 0.806096 (rank: 9) | 0.0061568 (rank: 9) | 0.0061607 (rank: 9) | 0.9515652 (rank: 8) | 0.8062817 (rank: 9) | 0.0061507 (rank: 9) | 0.0061544 (rank: 9) | 0.9507895 (rank: 8) | 0.8055764 (rank: 8) |
tbats | dy.qt | 0.0038487 (rank: 7) | 0.0038663 (rank: 7) | 0.6615488 (rank: 7) | 0.4836051 (rank: 7) | 0.0038612 (rank: 7) | 0.0038788 (rank: 7) | 0.6638121 (rank: 7) | 0.4849377 (rank: 7) | 0.0038643 (rank: 7) | 0.0038818 (rank: 7) | 0.6608467 (rank: 7) | 0.4852226 (rank: 7) | 0.0038503 (rank: 7) | 0.0038679 (rank: 7) | 0.6610232 (rank: 7) | 0.4837561 (rank: 7) |
tbats | dy.wk | 0.0031178 (rank: 2) | 0.0031203 (rank: 2) | 0.2951857 (rank: 4) | 0.4022059 (rank: 1) | 0.003073 (rank: 1) | 0.0030751 (rank: 1) | 0.2834713 (rank: 1) | 0.3968974 (rank: 1) | 0.0030681 (rank: 1) | 0.0030702 (rank: 1) | 0.2827046 (rank: 1) | 0.3965762 (rank: 1) | 0.003145 (rank: 5) | 0.0031473 (rank: 5) | 0.3015154 (rank: 6) | 0.4057309 (rank: 5) |
tbats | dy.yr | 0.0078141 (rank: 12) | 0.007929 (rank: 12) | 3.0602275 (rank: 12) | 0.9279223 (rank: 12) | 0.0078198 (rank: 12) | 0.0079349 (rank: 12) | 3.0679658 (rank: 12) | 0.928731 (rank: 12) | 0.0078147 (rank: 12) | 0.0079295 (rank: 12) | 3.0546429 (rank: 12) | 0.9280394 (rank: 12) | 0.0078135 (rank: 12) | 0.0079289 (rank: 12) | 3.0682874 (rank: 12) | 0.9280099 (rank: 12) |
ts | mo.1440 | 0.0031302 (rank: 4) | 0.0031321 (rank: 4) | 0.2895257 (rank: 3) | 0.4044655 (rank: 4) | 0.0031324 (rank: 4) | 0.0031343 (rank: 4) | 0.2906514 (rank: 4) | 0.4047309 (rank: 4) | 0.0031174 (rank: 3) | 0.0031192 (rank: 3) | 0.283951 (rank: 4) | 0.4029595 (rank: 3) | 0.0031304 (rank: 4) | 0.003132 (rank: 4) | 0.2874381 (rank: 3) | 0.4044561 (rank: 4) |
ts | qt.1440 | 0.0031176 (rank: 1) | 0.0031195 (rank: 1) | 0.2870498 (rank: 1) | 0.4030116 (rank: 2) | 0.0031181 (rank: 2) | 0.0031199 (rank: 2) | 0.2876954 (rank: 2) | 0.4030555 (rank: 2) | 0.0031165 (rank: 2) | 0.0031183 (rank: 2) | 0.2835706 (rank: 2) | 0.4028773 (rank: 2) | 0.0031164 (rank: 1) | 0.0031182 (rank: 1) | 0.284739 (rank: 1) | 0.4028578 (rank: 2) |
ts | wk.1440 | 0.0032485 (rank: 6) | 0.0032503 (rank: 6) | 0.3038581 (rank: 5) | 0.4183746 (rank: 6) | 0.0032268 (rank: 6) | 0.0032287 (rank: 6) | 0.2990047 (rank: 5) | 0.4154547 (rank: 6) | 0.0032311 (rank: 6) | 0.0032327 (rank: 6) | 0.2973999 (rank: 5) | 0.4160712 (rank: 6) | 0.0032319 (rank: 6) | 0.0032337 (rank: 6) | 0.2995034 (rank: 5) | 0.4162795 (rank: 6) |
ts | wk.7200 | 0.0059882 (rank: 8) | 0.0059922 (rank: 8) | 0.9699289 (rank: 10) | 0.7943849 (rank: 8) | 0.0059253 (rank: 8) | 0.0059297 (rank: 8) | 0.9198171 (rank: 8) | 0.7835024 (rank: 8) | 0.0060377 (rank: 8) | 0.0060395 (rank: 8) | 0.9968272 (rank: 10) | 0.8053099 (rank: 8) | 0.0060614 (rank: 8) | 0.006062 (rank: 8) | 1.0358588 (rank: 10) | 0.8067671 (rank: 10) |
ts | yr.1440 | 0.0031196 (rank: 3) | 0.0031215 (rank: 3) | 0.2872197 (rank: 2) | 0.4032139 (rank: 3) | 0.0031204 (rank: 3) | 0.0031222 (rank: 3) | 0.2878581 (rank: 3) | 0.4032895 (rank: 3) | 0.0031191 (rank: 4) | 0.0031209 (rank: 4) | 0.283776 (rank: 3) | 0.4031772 (rank: 4) | 0.0031187 (rank: 2) | 0.0031205 (rank: 2) | 0.2849251 (rank: 2) | 0.403099 (rank: 3) |
tbats | dy.wk.mo | 0.0031517 (rank: 5) | 0.003155 (rank: 5) | 0.3068028 (rank: 6) | 0.4058541 (rank: 5) | 0.0031536 (rank: 5) | 0.0031563 (rank: 5) | 0.3040547 (rank: 6) | 0.4059904 (rank: 5) | 0.0031829 (rank: 5) | 0.0031859 (rank: 5) | 0.3037754 (rank: 6) | 0.4091673 (rank: 5) | 0.0031204 (rank: 3) | 0.0031234 (rank: 3) | 0.2948921 (rank: 4) | 0.4018679 (rank: 1) |
Above table summarized the daily mape
, smape
, mse
and rmse
values and then summarized again the models (which is nested summarize due to daily settlement), we can interpret from above table :
7200 mins
length’s dataset with msts(seasonal.periods = c(1440, 7200)) %>% tbats %>% forecast(h = 1440)
.tk_ts(frequency = 1440) %>% forecast(h=1440)
.tk_ts(frequency = 1440) %>% forecast(h=1440)
.#best_model <- seasonal_m1 %>%
# ddply(.(Model, Period), summarize,
# mape = MAPE(open, open.Point.Forecast),
# smape = SMAPE(open, open.Point.Forecast),
# mse = MSE(open, open.Point.Forecast),
# rmse = RMSE(open, open.Point.Forecast))
## https://tysonbarrett.com/jekyll/update/2019/10/06/datatable_memory/
## http://brooksandrew.github.io/simpleblog/articles/advanced-data-table/
if(!is.data.table(seasonal_m1)) seasonal_m1 <- data.table(seasonal_m1)
setorder(seasonal_m1, index)
m.op <- seasonal_m1[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N, open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.hi <- seasonal_m1[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N, high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.lo <- seasonal_m1[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N, low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.cl <- seasonal_m1[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N, close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
best_model <- join_all(list(m.op, m.hi, m.lo, m.cl)) %>% tibble
saveRDS(best_model, 'data/fx/USDJPY/best_m_daily.rds')
rm(m.op, m.hi, m.lo, m.cl)
best_model <- readRDS('data/fx/USDJPY/best_m_daily.rds')
tb12 <- best_model %>%
dplyr::mutate(
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb12
Model | Period | N | open.mape | open.smape | open.mse | open.rmse | high.mape | high.smape | high.mse | high.rmse | low.mape | low.smape | low.mse | low.rmse | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tbats | dy.qt | 1298880 | 0.0035608 (rank: 10) | 0.0035773 (rank: 10) | 0.5935084 (rank: 11) | 0.770395 (rank: 11) | 0.0035672 (rank: 10) | 0.0035837 (rank: 10) | 0.5946396 (rank: 11) | 0.7711288 (rank: 11) | 0.0035692 (rank: 10) | 0.0035856 (rank: 10) | 0.593577 (rank: 11) | 0.7704395 (rank: 11) | 0.0035606 (rank: 10) | 0.0035771 (rank: 10) | 0.59344 (rank: 11) | 0.7703506 (rank: 11) |
tbats | dy.wk | 1298880 | 0.002821 (rank: 1) | 0.0028228 (rank: 1) | 0.2331241 (rank: 1) | 0.4828292 (rank: 1) | 0.0027999 (rank: 1) | 0.0028016 (rank: 1) | 0.2305384 (rank: 1) | 0.4801442 (rank: 1) | 0.0028014 (rank: 1) | 0.0028031 (rank: 1) | 0.2331357 (rank: 1) | 0.4828412 (rank: 1) | 0.002839 (rank: 1) | 0.002841 (rank: 1) | 0.2415673 (rank: 4) | 0.4914949 (rank: 4) |
tbats | dy.wk.mo | 1287360 | 0.0028932 (rank: 5) | 0.0028962 (rank: 5) | 0.2585134 (rank: 6) | 0.5084421 (rank: 6) | 0.002889 (rank: 6) | 0.0028914 (rank: 6) | 0.2531527 (rank: 7) | 0.5031428 (rank: 7) | 0.0029032 (rank: 5) | 0.0029056 (rank: 5) | 0.2511519 (rank: 6) | 0.5011506 (rank: 6) | 0.0028635 (rank: 4) | 0.0028661 (rank: 4) | 0.2468493 (rank: 5) | 0.4968393 (rank: 5) |
tbats | dy.yr | 1298880 | 0.0075387 (rank: 12) | 0.0076525 (rank: 12) | 2.992332 (rank: 12) | 1.7298358 (rank: 12) | 0.0075476 (rank: 12) | 0.0076617 (rank: 12) | 3.0002451 (rank: 12) | 1.7321216 (rank: 12) | 0.0075415 (rank: 12) | 0.0076552 (rank: 12) | 2.989127 (rank: 12) | 1.7289092 (rank: 12) | 0.0075423 (rank: 12) | 0.0076565 (rank: 12) | 3.0017416 (rank: 12) | 1.7325535 (rank: 12) |
ts | mo.1440 | 1298880 | 0.002871 (rank: 4) | 0.0028723 (rank: 4) | 0.238598 (rank: 4) | 0.4884649 (rank: 4) | 0.0028638 (rank: 5) | 0.0028652 (rank: 5) | 0.2372364 (rank: 4) | 0.4870692 (rank: 4) | 0.0028605 (rank: 3) | 0.0028618 (rank: 3) | 0.2349181 (rank: 4) | 0.4846835 (rank: 4) | 0.0028733 (rank: 5) | 0.0028745 (rank: 5) | 0.2378324 (rank: 3) | 0.4876807 (rank: 3) |
ts | mo.7200 | 244800 | 0.0034764 (rank: 8) | 0.0034756 (rank: 8) | 0.3134664 (rank: 8) | 0.5598807 (rank: 8) | 0.0035018 (rank: 8) | 0.0035011 (rank: 8) | 0.3146787 (rank: 8) | 0.5609623 (rank: 8) | 0.0034669 (rank: 8) | 0.0034659 (rank: 8) | 0.3119626 (rank: 8) | 0.5585361 (rank: 8) | 0.0034906 (rank: 8) | 0.0034897 (rank: 8) | 0.3142609 (rank: 7) | 0.5605898 (rank: 7) |
ts | qt.1440 | 1298880 | 0.0028558 (rank: 2) | 0.0028571 (rank: 2) | 0.2355912 (rank: 2) | 0.4853773 (rank: 2) | 0.0028566 (rank: 3) | 0.002858 (rank: 3) | 0.2357561 (rank: 2) | 0.4855472 (rank: 2) | 0.0028598 (rank: 2) | 0.0028611 (rank: 2) | 0.2346795 (rank: 2) | 0.4844374 (rank: 2) | 0.0028572 (rank: 2) | 0.0028585 (rank: 2) | 0.234693 (rank: 1) | 0.4844512 (rank: 1) |
ts | qt.7200 | 223200 | 0.0034844 (rank: 9) | 0.0034841 (rank: 9) | 0.3156878 (rank: 9) | 0.561861 (rank: 9) | 0.0035078 (rank: 9) | 0.0035075 (rank: 9) | 0.3167276 (rank: 9) | 0.5627856 (rank: 9) | 0.0034754 (rank: 9) | 0.003475 (rank: 9) | 0.3144045 (rank: 9) | 0.5607179 (rank: 9) | 0.0034988 (rank: 9) | 0.0034984 (rank: 9) | 0.3168899 (rank: 8) | 0.5629298 (rank: 8) |
ts | wk.1440 | 1298880 | 0.0029887 (rank: 7) | 0.0029899 (rank: 7) | 0.2525562 (rank: 5) | 0.5025497 (rank: 5) | 0.0029757 (rank: 7) | 0.0029772 (rank: 7) | 0.2483678 (rank: 6) | 0.4983651 (rank: 6) | 0.0029796 (rank: 7) | 0.0029807 (rank: 7) | 0.2491352 (rank: 5) | 0.4991344 (rank: 5) | 0.0029779 (rank: 7) | 0.0029791 (rank: 7) | 0.2490372 (rank: 6) | 0.4990362 (rank: 6) |
ts | wk.7200 | 6494400 | 0.0029027 (rank: 6) | 0.002903 (rank: 6) | 0.2850686 (rank: 7) | 0.5339181 (rank: 7) | 0.0028179 (rank: 2) | 0.0028195 (rank: 2) | 0.2391797 (rank: 5) | 0.48906 (rank: 5) | 0.00295 (rank: 6) | 0.0029496 (rank: 6) | 0.3065442 (rank: 7) | 0.5536644 (rank: 7) | 0.0029287 (rank: 6) | 0.0029266 (rank: 6) | 0.32009 (rank: 9) | 0.565765 (rank: 9) |
ts | yr.1440 | 1298880 | 0.0028579 (rank: 3) | 0.0028593 (rank: 3) | 0.2357672 (rank: 3) | 0.4855587 (rank: 3) | 0.0028589 (rank: 4) | 0.0028603 (rank: 4) | 0.2359108 (rank: 3) | 0.4857065 (rank: 3) | 0.0028625 (rank: 4) | 0.0028637 (rank: 4) | 0.2349109 (rank: 3) | 0.484676 (rank: 3) | 0.0028594 (rank: 3) | 0.0028607 (rank: 3) | 0.2348683 (rank: 2) | 0.4846321 (rank: 2) |
ts | yr.7200 | 208800 | 0.0036239 (rank: 11) | 0.0036236 (rank: 11) | 0.3342637 (rank: 10) | 0.5781554 (rank: 10) | 0.0036485 (rank: 11) | 0.0036482 (rank: 11) | 0.3353777 (rank: 10) | 0.5791181 (rank: 10) | 0.0036111 (rank: 11) | 0.0036106 (rank: 11) | 0.3327021 (rank: 10) | 0.5768033 (rank: 10) | 0.0036356 (rank: 11) | 0.0036352 (rank: 11) | 0.335306 (rank: 10) | 0.5790561 (rank: 10) |
Above table summarized the total observations with mape
, smape
, mse
and rmse
values (which is not nested summarize not daily settlement for P&L), we can interpret from above table :
7200 mins
length’s dataset with msts(seasonal.periods = c(1440, 7200)) %>% tbats %>% forecast(h = 1440)
.tk_ts(frequency = 1440) %>% forecast(h=1440)
.tk_ts(frequency = 1440) %>% forecast(h=1440)
.##Below model use open price dataset where contain 7200 mins and forecast 1440 mins.
fit_ts <- readRDS('data/fx/USDJPY/sarima_ts_sample.rds')
#fr_ts <- forecast(fit_ts, h = 1440)
fr_ts <- readRDS('data/fx/USDJPY/sarima_frts_sample.rds')
fr_ts.sample <- readRDS('data/fx/USDJPY/fr_ts.sample.wk.1440.2015-01-12.rds')
##Below model use open price dataset where contain 7200 mins and forecast nested 60mins & 1440 mins.
fit_msts <- readRDS('data/fx/USDJPY/sarima_msts_sample.rds')
fr_msts <- readRDS('data/fx/USDJPY/sarima_frmsts_sample.rds')
fr_msts.sample <- readRDS('data/fx/USDJPY/fr_msts.sample.wk.1440.2015-01-12.rds')
Due to heavily calculation on sarima models, here I only use 1st week from 2015-01-12 00:01:00 to from 2015-01-13 00:00:00` calculate.
cmp1 <- join(fr_ts.sample, fr_msts.sample) %>%
as_tibble
lst1 <- list.files('data/fx/USDJPY', pattern = '^mts.*.2015-01-12.rds$')
cmp2 <- llply(lst1, function(x) {
readRDS(paste0('data/fx/USDJPY/', x)) %>%
dplyr::select(contains(c('index', 'open.Point.Forecast'))) %>%
.[,1:2]
})
names(cmp2) <- str_replace_all(lst1, '.[1-9].*', '')
cmp2 %<>% ldply %>%
as_tibble %>%
spread(.id, open.Point.Forecast)
cmp2 <- data.frame(open = cmp1$open, cmp2) %>%
as_tibble %>%
.[c(2:1, 3:ncol(.))]
lst2 <- list.files('data/fx/USDJPY', pattern = '^sets.*.2015-01-12.rds$')
cmp3 <- llply(lst2, function(x) {
readRDS(paste0('data/fx/USDJPY/', x))$forecast %>%
dplyr::select(contains(c('index', 'open.Point.Forecast'))) %>%
.[1:1440,1:2]
})
names(cmp3) <- substr(lst2, 1, 12) #manual filter characters
cmp3 %<>% ldply %>%
as_tibble %>%
spread(.id, open.Point.Forecast)
cmp3 <- data.frame(open = cmp1$open, cmp3) %>%
as_tibble %>%
.[c(2:1, 3:ncol(.))]
## ------------------------
cmp1 <- data.frame(
Model = c('sarima_ts', 'sarima_msts'),
n = nrow(cmp1),
mae = c(MAE(cmp1$open, cmp1$sarima_ts, na.rm = TRUE),
MAE(cmp1$open, cmp1$sarima_msts, na.rm = TRUE)),
mape = c(MAPE(cmp1$open, cmp1$sarima_ts, na.rm = TRUE),
MAPE(cmp1$open, cmp1$sarima_msts, na.rm = TRUE)),
smape = c(SMAPE(cmp1$open, cmp1$sarima_ts, na.rm = TRUE),
SMAPE(cmp1$open, cmp1$sarima_msts, na.rm = TRUE)),
mse = c(MSE(cmp1$open, cmp1$sarima_ts, na.rm = TRUE),
MSE(cmp1$open, cmp1$sarima_msts, na.rm = TRUE)),
rmse = c(RMSE(cmp1$open, cmp1$sarima_ts, na.rm = TRUE),
RMSE(cmp1$open, cmp1$sarima_msts, na.rm = TRUE))) %>%
as_tibble
cmp2 <- data.frame(
Model = names(cmp2[3:ncol(cmp2)]),
n = nrow(cmp2),
mae = c(MAE(cmp2$open, cmp2$mts.dy.qt, na.rm = TRUE),
MAE(cmp2$open, cmp2$mts.dy.wk, na.rm = TRUE),
MAE(cmp2$open, cmp2$mts.dy.wk.mo, na.rm = TRUE),
MAE(cmp2$open, cmp2$mts.dy.yr, na.rm = TRUE)),
mape = c(MAPE(cmp2$open, cmp2$mts.dy.qt, na.rm = TRUE),
MAPE(cmp2$open, cmp2$mts.dy.wk, na.rm = TRUE),
MAPE(cmp2$open, cmp2$mts.dy.wk.mo, na.rm = TRUE),
MAPE(cmp2$open, cmp2$mts.dy.yr, na.rm = TRUE)),
smape = c(SMAPE(cmp2$open, cmp2$mts.dy.qt, na.rm = TRUE),
SMAPE(cmp2$open, cmp2$mts.dy.wk, na.rm = TRUE),
SMAPE(cmp2$open, cmp2$mts.dy.wk.mo, na.rm = TRUE),
SMAPE(cmp2$open, cmp2$mts.dy.yr, na.rm = TRUE)),
mse = c(MSE(cmp2$open, cmp2$mts.dy.qt, na.rm = TRUE),
MSE(cmp2$open, cmp2$mts.dy.wk, na.rm = TRUE),
MSE(cmp2$open, cmp2$mts.dy.wk.mo, na.rm = TRUE),
MSE(cmp2$open, cmp2$mts.dy.yr, na.rm = TRUE)),
rmse = c(RMSE(cmp2$open, cmp2$mts.dy.qt, na.rm = TRUE),
RMSE(cmp2$open, cmp2$mts.dy.wk, na.rm = TRUE),
RMSE(cmp2$open, cmp2$mts.dy.wk.mo, na.rm = TRUE),
RMSE(cmp2$open, cmp2$mts.dy.yr, na.rm = TRUE))) %>%
as_tibble
cmp3 <- data.frame(
Model = names(cmp3)[3:ncol(cmp3)],
n = nrow(cmp3),
mae = c(MAE(cmp3$open, cmp3$sets.mo.1440, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.mo.7200, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.qt.1440, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.qt.7200, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.wk.1440, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.wk.7200, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.yr.1440, na.rm = TRUE),
MAE(cmp3$open, cmp3$sets.yr.7200, na.rm = TRUE)),
mape = c(MAPE(cmp3$open, cmp3$sets.mo.1440, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.mo.7200, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.qt.1440, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.qt.7200, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.wk.1440, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.wk.7200, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.yr.1440, na.rm = TRUE),
MAPE(cmp3$open, cmp3$sets.yr.7200, na.rm = TRUE)),
smape = c(SMAPE(cmp3$open, cmp3$sets.mo.1440, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.mo.7200, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.qt.1440, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.qt.7200, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.wk.1440, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.wk.7200, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.yr.1440, na.rm = TRUE),
SMAPE(cmp3$open, cmp3$sets.yr.7200, na.rm = TRUE)),
mse = c(MSE(cmp3$open, cmp3$sets.mo.1440, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.mo.7200, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.qt.1440, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.qt.7200, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.wk.1440, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.wk.7200, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.yr.1440, na.rm = TRUE),
MSE(cmp3$open, cmp3$sets.yr.7200, na.rm = TRUE)),
rmse = c(RMSE(cmp3$open, cmp3$sets.mo.1440, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.mo.7200, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.qt.1440, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.qt.7200, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.wk.1440, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.wk.7200, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.yr.1440, na.rm = TRUE),
RMSE(cmp3$open, cmp3$sets.yr.7200, na.rm = TRUE))) %>%
as_tibble
cmp <- bind_rows(cmp1, cmp2, cmp3) %>%
as_tibble
tb13 <- cmp %>%
dplyr::mutate(
mae = ifelse(
rank(mae) <= 3,
cell_spec(
paste0(round(mae, 7), ' (rank: ', sprintf('%1.f', rank(mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(mae, 7), ' (rank: ', sprintf('%1.f', rank(mae)), ')'),
'html', color = 'grey', italic = TRUE)),
mape = ifelse(
rank(mape) <= 3,
cell_spec(
paste0(round(mape, 7), ' (rank: ', sprintf('%1.f', rank(mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(mape, 7), ' (rank: ', sprintf('%1.f', rank(mape)), ')'),
'html', color = 'grey', italic = TRUE)),
smape = ifelse(
rank(smape) <= 3,
cell_spec(
paste0(round(smape, 7), ' (rank: ', sprintf('%1.f', rank(smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(smape, 7), ' (rank: ', sprintf('%1.f', rank(smape)), ')'),
'html', color = 'grey', italic = TRUE)),
mse = ifelse(
rank(mse) <= 3,
cell_spec(
paste0(round(mse, 7), ' (rank: ', sprintf('%1.f', rank(mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(mse, 7), ' (rank: ', sprintf('%1.f', rank(mse)), ')'),
'html', color = 'grey', italic = TRUE)),
rmse = ifelse(
rank(rmse) <= 3,
cell_spec(
paste0(round(rmse, 7), ' (rank: ', sprintf('%1.f', rank(rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(rmse, 7), ' (rank: ', sprintf('%1.f', rank(rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Sarima_ts & Sarima_msts Models etc', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'LightGray') %>%
column_spec(4, background = 'Gainsboro') %>%
column_spec(5, background = 'LightGray') %>%
column_spec(6, background = 'Gainsboro') %>%
column_spec(7, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb13
Model | n | mae | mape | smape | mse | rmse |
---|---|---|---|---|---|---|
sarima_ts | 1440 | 118.5053007 (rank: 8) | 100.3580762 (rank: 12) | 0.0045896 (rank: 12) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sarima_msts | 1440 | 118.5053007 (rank: 8) | 100.3580762 (rank: 12) | 0.0045896 (rank: 12) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
mts.dy.qt | 1440 | 118.5053007 (rank: 8) | 99.9715789 (rank: 6) | 0.0024726 (rank: 6) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
mts.dy.wk | 1440 | 118.5053007 (rank: 8) | 99.9715789 (rank: 6) | 0.0024726 (rank: 6) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
mts.dy.wk.mo | 1440 | 118.5053007 (rank: 8) | NaN (rank: 14) | NaN (rank: 14) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
mts.dy.yr | 1440 | 118.5053007 (rank: 8) | 99.9715789 (rank: 6) | 0.0024726 (rank: 6) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.mo.1440 | 1440 | 118.5053007 (rank: 8) | 99.8560737 (rank: 2) | 0.0026221 (rank: 10) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.mo.7200 | 1440 | 118.5053007 (rank: 8) | 99.9715791 (rank: 10) | 0.0024726 (rank: 2) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.qt.1440 | 1440 | 118.5053007 (rank: 8) | 99.8560737 (rank: 2) | 0.0026221 (rank: 10) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.qt.7200 | 1440 | 118.5053007 (rank: 8) | 99.9715791 (rank: 10) | 0.0024726 (rank: 2) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.wk.1440 | 1440 | 118.5053007 (rank: 8) | 99.8560737 (rank: 2) | 0.0026221 (rank: 10) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.wk.7200 | 1440 | 118.5053007 (rank: 8) | 99.9715791 (rank: 10) | 0.0024726 (rank: 2) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.yr.1440 | 1440 | 118.5053007 (rank: 8) | 99.8560737 (rank: 2) | 0.0026221 (rank: 10) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
sets.yr.7200 | 1440 | 118.5053007 (rank: 8) | 99.9715791 (rank: 10) | 0.0024726 (rank: 2) | 14043.6207299 (rank: 8) | 118.5057835 (rank: 8) |
Application of auto.arima()
on both ts()
and msts()
seasonal datasets compare the ts()
and msts()
sarima models.
ETS
ModelBelow I recall the ETS
models for interday price prediction in previous paper for comparison.
ets.fls <- list.files('data', pattern = '^[A-Z]{3}\\.[A-Za-z]{4}')
ETS.MSE <- llply(ets.fls, function(x) {
nm <- x %>%
str_replace_all('.rds', '') %>%
str_split_fixed('\\.', 2) %>%
as_data_frame
names(nm) <- c('Model', 'Type')
y <- paste0('data/', x) %>%
read_rds
data.frame(nm, y) %>% as_tibble
}) %>% bind_rows %>%
dplyr::select(Date, Model,Type, Point.Forecast, forClose,
USDJPY.Open, USDJPY.High, USDJPY.Low, USDJPY.Close)
ETS.MSE %<>% dplyr::mutate(
MSE.1 = case_when(
substr(Type, 1, 2) == 'Op' ~ mean((Point.Forecast - USDJPY.Open)^2,
na.rm = TRUE),
substr(Type, 1, 2) == 'Hi' ~ mean((Point.Forecast - USDJPY.High)^2,
na.rm = TRUE),
substr(Type, 1, 2) == 'Mn' ~ mean((Point.Forecast - (USDJPY.High + USDJPY.Low)/2)^2, na.rm = TRUE),
substr(Type, 1, 2) == 'Lo' ~ mean((Point.Forecast - USDJPY.Low)^2,
na.rm = TRUE),
substr(Type, 1, 2) == 'Cl' ~ mean((Point.Forecast - USDJPY.Close)^2,
na.rm = TRUE)),
MSE.2 = case_when(
substr(Type, 3, 4) == 'Op' ~ mean((Point.Forecast - USDJPY.Open)^2,
na.rm = TRUE),
substr(Type, 3, 4) == 'Hi' ~ mean((Point.Forecast - USDJPY.High)^2,
na.rm = TRUE),
substr(Type, 3, 4) == 'Mn' ~ mean((Point.Forecast - (USDJPY.High + USDJPY.Low)/2)^2, na.rm = TRUE),
substr(Type, 3, 4) == 'Lo' ~ mean((Point.Forecast - USDJPY.Low)^2,
na.rm = TRUE),
substr(Type, 3, 4) == 'Cl' ~ mean((Point.Forecast - USDJPY.Close)^2,
na.rm = TRUE)))
ETS.MSE %<>%
ddply(.(Model, Type), summarise,
MSE.1 = mean(MSE.1, na.rm=TRUE),
MSE.2 = mean(MSE.2, na.rm=TRUE))
tb14 <- ETS.MSE %>% dplyr::mutate(
MSE.1 = ifelse(
rank(MSE.1) <= 3,
cell_spec(
paste0(round(MSE.1, 7), ' (rank: ', sprintf('%1.f', rank(MSE.1)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.1, 7), ' (rank: ', sprintf('%1.f', rank(MSE.1)), ')'),
'html', color = 'grey', italic = TRUE)),
MSE.2 = ifelse(
rank(MSE.2) <= 3,
cell_spec(
paste0(round(MSE.2, 7), ' (rank: ', sprintf('%1.f', rank(MSE.2)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(MSE.2, 7), ' (rank: ', sprintf('%1.f', rank(MSE.2)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'MSE of daily Opened and Closed Transaction Orders', escape = FALSE) %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kableExtra::group_rows('AAN', 1, 25, label_row_css = 'background-color: #e68a00; color: #fff;') %>%
kableExtra::group_rows('AAZ', 26, 50, label_row_css = 'background-color: #ff0000; color: #fff;') %>%
kableExtra::group_rows('ANN', 51, 75, label_row_css = 'background-color: #bf80ff; color: #fff;') %>%
kableExtra::group_rows('ANZ', 76, 100, label_row_css = 'background-color: #66ff33; color: #fff;') %>%
kableExtra::group_rows('AZN', 101, 125, label_row_css = 'background-color: #6666ff; color: #fff;') %>%
kableExtra::group_rows('AZZ', 126, 150, label_row_css = 'background-color: #66e0ff; color: #fff;') %>%
kableExtra::group_rows('MAN', 151, 175, label_row_css = 'background-color:#0066ff; color: #fff;') %>%
kableExtra::group_rows('MAZ', 176, 200, label_row_css = 'background-color: #ff9900; color: #fff;') %>%
kableExtra::group_rows('MMN', 201, 225, label_row_css = 'background-color: #33ff33; color: #fff;') %>%
kableExtra::group_rows('MMZ', 226, 250, label_row_css = 'background-color: #339966; color: #fff;') %>%
kableExtra::group_rows('MNN', 251, 275, label_row_css = 'background-color: #5900b3; color: #fff;') %>%
kableExtra::group_rows('MNZ', 276, 300, label_row_css = 'background-color: #269900; color: #fff;') %>%
kableExtra::group_rows('MZN', 301, 325, label_row_css = 'background-color: #808000; color: #fff;') %>%
kableExtra::group_rows('MZZ', 326, 350, label_row_css = 'background-color: #3399ff; color: #fff;') %>%
kableExtra::group_rows('ZAN', 351, 375, label_row_css = 'background-color: #003380; color: #fff;') %>%
kableExtra::group_rows('ZAZ', 376, 400, label_row_css = 'background-color: #804d00; color: #fff;') %>%
kableExtra::group_rows('ZMN', 401, 425, label_row_css = 'background-color: #d279d2; color: #fff;') %>%
kableExtra::group_rows('ZMZ', 426, 450, label_row_css = 'background-color: #666; color: #fff;') %>%
kableExtra::group_rows('ZNN', 451, 475, label_row_css = 'background-color: #ff3377; color: #fff;') %>%
kableExtra::group_rows('ZNZ', 476, 500, label_row_css = 'background-color: #993399; color: #fff;') %>%
kableExtra::group_rows('ZZN', 501, 525, label_row_css = 'background-color: #00a3cc; color: #fff;') %>%
kableExtra::group_rows('ZZZ', 526, 550, label_row_css = 'background-color: #e60000; color: #fff;') %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
tb14
Model | Type | MSE.1 | MSE.2 |
---|---|---|---|
AAN | |||
AAN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
AAN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
AAN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
AAN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
AAN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
AAN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
AAN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
AAN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
AAN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
AAN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
AAN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
AAN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
AAN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
AAN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
AAN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
AAN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
AAN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
AAN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
AAN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
AAN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
AAN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
AAN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
AAN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
AAN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
AAN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
AAZ | |||
AAZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
AAZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
AAZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
AAZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
AAZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
AAZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
AAZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
AAZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
AAZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
AAZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
AAZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
AAZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
AAZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
AAZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
AAZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
AAZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
AAZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
AAZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
AAZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
AAZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
AAZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
AAZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
AAZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
AAZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
AAZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ANN | |||
ANN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ANN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ANN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ANN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ANN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ANN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ANN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ANN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ANN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ANN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ANN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ANN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ANN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ANN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ANN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ANN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ANN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ANN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ANN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ANN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ANN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ANN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ANN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ANN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ANN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ANZ | |||
ANZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ANZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ANZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ANZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ANZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ANZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ANZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ANZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ANZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ANZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ANZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ANZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ANZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ANZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ANZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ANZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ANZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ANZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ANZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ANZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ANZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ANZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ANZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ANZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ANZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
AZN | |||
AZN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
AZN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
AZN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
AZN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
AZN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
AZN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
AZN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
AZN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
AZN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
AZN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
AZN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
AZN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
AZN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
AZN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
AZN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
AZN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
AZN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
AZN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
AZN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
AZN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
AZN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
AZN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
AZN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
AZN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
AZN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
AZZ | |||
AZZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
AZZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
AZZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
AZZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
AZZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
AZZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
AZZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
AZZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
AZZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
AZZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
AZZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
AZZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
AZZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
AZZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
AZZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
AZZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
AZZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
AZZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
AZZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
AZZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
AZZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
AZZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
AZZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
AZZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
AZZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MAN | |||
MAN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MAN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MAN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MAN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MAN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MAN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MAN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MAN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MAN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MAN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MAN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MAN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MAN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MAN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MAN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MAN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MAN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MAN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MAN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MAN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MAN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MAN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MAN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MAN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MAN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MAZ | |||
MAZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MAZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MAZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MAZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MAZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MAZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MAZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MAZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MAZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MAZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MAZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MAZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MAZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MAZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MAZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MAZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MAZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MAZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MAZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MAZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MAZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MAZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MAZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MAZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MAZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MMN | |||
MMN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MMN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MMN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MMN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MMN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MMN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MMN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MMN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MMN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MMN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MMN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MMN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MMN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MMN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MMN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MMN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MMN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MMN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MMN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MMN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MMN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MMN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MMN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MMN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MMN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MMZ | |||
MMZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MMZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MMZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MMZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MMZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MMZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MMZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MMZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MMZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MMZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MMZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MMZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MMZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MMZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MMZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MMZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MMZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MMZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MMZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MMZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MMZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MMZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MMZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MMZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MMZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MNN | |||
MNN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MNN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MNN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MNN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MNN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MNN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MNN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MNN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MNN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MNN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MNN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MNN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MNN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MNN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MNN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MNN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MNN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MNN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MNN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MNN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MNN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MNN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MNN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MNN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MNN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MNZ | |||
MNZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MNZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MNZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MNZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MNZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MNZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MNZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MNZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MNZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MNZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MNZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MNZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MNZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MNZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MNZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MNZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MNZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MNZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MNZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MNZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MNZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MNZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MNZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MNZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MNZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MZN | |||
MZN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MZN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MZN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MZN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MZN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MZN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MZN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MZN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MZN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MZN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MZN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MZN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MZN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MZN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MZN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MZN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MZN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MZN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MZN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MZN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MZN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MZN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MZN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MZN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MZN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
MZZ | |||
MZZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
MZZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
MZZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
MZZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
MZZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
MZZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
MZZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
MZZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
MZZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
MZZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
MZZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
MZZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
MZZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
MZZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
MZZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
MZZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
MZZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
MZZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
MZZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
MZZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
MZZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
MZZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
MZZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
MZZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
MZZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZAN | |||
ZAN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZAN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZAN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZAN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZAN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZAN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZAN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZAN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZAN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZAN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZAN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZAN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZAN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZAN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZAN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZAN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZAN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZAN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZAN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZAN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZAN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZAN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZAN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZAN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZAN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZAZ | |||
ZAZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZAZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZAZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZAZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZAZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZAZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZAZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZAZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZAZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZAZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZAZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZAZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZAZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZAZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZAZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZAZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZAZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZAZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZAZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZAZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZAZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZAZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZAZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZAZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZAZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZMN | |||
ZMN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZMN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZMN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZMN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZMN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZMN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZMN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZMN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZMN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZMN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZMN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZMN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZMN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZMN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZMN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZMN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZMN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZMN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZMN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZMN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZMN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZMN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZMN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZMN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZMN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZMZ | |||
ZMZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZMZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZMZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZMZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZMZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZMZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZMZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZMZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZMZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZMZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZMZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZMZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZMZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZMZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZMZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZMZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZMZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZMZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZMZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZMZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZMZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZMZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZMZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZMZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZMZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZNN | |||
ZNN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZNN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZNN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZNN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZNN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZNN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZNN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZNN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZNN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZNN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZNN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZNN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZNN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZNN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZNN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZNN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZNN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZNN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZNN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZNN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZNN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZNN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZNN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZNN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZNN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZNZ | |||
ZNZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZNZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZNZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZNZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZNZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZNZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZNZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZNZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZNZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZNZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZNZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZNZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZNZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZNZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZNZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZNZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZNZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZNZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZNZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZNZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZNZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZNZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZNZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZNZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZNZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZZN | |||
ZZN | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZZN | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZZN | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZZN | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZZN | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZZN | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZZN | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZZN | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZZN | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZZN | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZZN | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZZN | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZZN | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZZN | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZZN | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZZN | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZZN | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZZN | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZZN | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZZN | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZZN | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZZN | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZZN | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZZN | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZZN | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
ZZZ | |||
ZZZ | ClCl | 0.467076 (rank: 166) | 0.467076 (rank: 166) |
ZZZ | ClHi | 0.467076 (rank: 166) | 0.8097381 (rank: 386) |
ZZZ | ClLo | 0.467076 (rank: 166) | 1.0410108 (rank: 496) |
ZZZ | ClMn | 0.467076 (rank: 166) | 0.6447018 (rank: 276) |
ZZZ | ClOp | 0.467076 (rank: 166) | 0.4635132 (rank: 56) |
ZZZ | HiCl | 0.8097381 (rank: 386) | 0.467076 (rank: 166) |
ZZZ | HiHi | 0.8097381 (rank: 386) | 0.8097381 (rank: 386) |
ZZZ | HiLo | 0.8097381 (rank: 386) | 1.0410108 (rank: 496) |
ZZZ | HiMn | 0.8097381 (rank: 386) | 0.6447018 (rank: 276) |
ZZZ | HiOp | 0.8097381 (rank: 386) | 0.4635132 (rank: 56) |
ZZZ | LoCl | 1.0410108 (rank: 496) | 0.467076 (rank: 166) |
ZZZ | LoHi | 1.0410108 (rank: 496) | 0.8097381 (rank: 386) |
ZZZ | LoLo | 1.0410108 (rank: 496) | 1.0410108 (rank: 496) |
ZZZ | LoMn | 1.0410108 (rank: 496) | 0.6447018 (rank: 276) |
ZZZ | LoOp | 1.0410108 (rank: 496) | 0.4635132 (rank: 56) |
ZZZ | MnCl | 0.6447018 (rank: 276) | 0.467076 (rank: 166) |
ZZZ | MnHi | 0.6447018 (rank: 276) | 0.8097381 (rank: 386) |
ZZZ | MnLo | 0.6447018 (rank: 276) | 1.0410108 (rank: 496) |
ZZZ | MnMn | 0.6447018 (rank: 276) | 0.6447018 (rank: 276) |
ZZZ | MnOp | 0.6447018 (rank: 276) | 0.4635132 (rank: 56) |
ZZZ | OpCl | 0.4635132 (rank: 56) | 0.467076 (rank: 166) |
ZZZ | OpHi | 0.4635132 (rank: 56) | 0.8097381 (rank: 386) |
ZZZ | OpLo | 0.4635132 (rank: 56) | 1.0410108 (rank: 496) |
ZZZ | OpMn | 0.4635132 (rank: 56) | 0.6447018 (rank: 276) |
ZZZ | OpOp | 0.4635132 (rank: 56) | 0.4635132 (rank: 56) |
Source : Binary.com Interview Q1 (Extention)
From above MSE
comparison with intraday-dataset, we know that the intraday data will be more accurate than just daily dataset.
auto.arima
Modelar.fls <- list.files('data', pattern = '^fundAutoArima')
ARIMA.MSE <- llply(ar.fls, function(x) {
nm <- x %>%
str_replace_all('.rds', '') %>%
substring(nchar(.) - 3)
y <- paste0('data/', x) %>%
read_rds
data.frame(Model = 'auto.arima', Type = nm, y) %>% as_tibble
}) %>% bind_rows %>%
dplyr::mutate(index = Date) %>%
dplyr::select(index, Model, Type, Point.Forecast, forClose,
USDJPY.Open, USDJPY.High, USDJPY.Low, USDJPY.Close,
-Date)
ARIMA.MSE %<>% dplyr::mutate(
MSE.1 = case_when(
substr(Type, 1, 2) == 'OP' ~ mean((Point.Forecast - USDJPY.Open)^2),
substr(Type, 1, 2) == 'HI' ~ mean((Point.Forecast - USDJPY.High)^2),
substr(Type, 1, 2) == 'MN' ~ mean((Point.Forecast - (USDJPY.High + USDJPY.Low)/2)^2),
substr(Type, 1, 2) == 'LO' ~ mean((Point.Forecast - USDJPY.Low)^2),
substr(Type, 1, 2) == 'CL' ~ mean((Point.Forecast - USDJPY.Close)^2)),
MSE.2 = case_when(
substr(Type, 3, 4) == 'OP' ~ mean((Point.Forecast - USDJPY.Open)^2),
substr(Type, 3, 4) == 'HI' ~ mean((Point.Forecast - USDJPY.High)^2),
substr(Type, 3, 4) == 'MN' ~ mean((Point.Forecast - (USDJPY.High + USDJPY.Low)/2)^2),
substr(Type, 3, 4) == 'LO' ~ mean((Point.Forecast - USDJPY.Low)^2),
substr(Type, 3, 4) == 'CL' ~ mean((Point.Forecast - USDJPY.Close)^2)))
tb15 <- ARIMA.MSE %>%
ddply(.(Model), summarise,
MSE.1 = mean(MSE.1, na.rm=TRUE),
MSE.2 = mean(MSE.2, na.rm=TRUE)) %>%
arrange(MSE.1, MSE.2) %>%
kable(caption = 'MSE of daily Opened and Closed Transaction Orders') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive'))
tb15
Model | MSE.1 | MSE.2 |
---|---|---|
auto.arima | 0.6962568 | 0.7515629 |
By refer to section 7.1.3 Unexpected Error, here I omitted the data from year 2018-01-01
to 2018-07-09
but the outcome is same. Here I forced to omit the mentioned dataset.
2015-01-05
to 2017-12-31
7200
mins Datasetif(!exists('seasonal_m1')) {
seasonal_m1 <- read_rds('data/fx/USDJPY/seasonal_m1.rds')}
## https://dtplyr.tidyverse.org for future use, otherwise need to recode and rerun.
#ftl1 <- seasonal_m1 %>% lazy_dt()
#ftl1 %<>% filter(index <= as_date('2017-12-31'))
#ftl1 %<>% as.data.table()
ftl1 <- seasonal_m1[index <= as_date('2017-12-31')]
#setkey(ftl1)
#setkeyv(ftl1, c('index', 'Model', 'Period'))
yr_2015_2017 <- seasonal_m1[index <= as_date('2017-12-31')]
saveRDS(yr_2015_2017, 'data/fx/USDJPY/yr_2015_2017.rds')
#fwrite(yr_2015_2017, 'data/fx/USDJPY/yr_2015_2017.csv')
#yr_2015_2017 <- read_rds('data/fx/USDJPY/yr_2015_2017.rds')
#ftl1 <- fread('data/fx/USDJPY/yr_2015_2017.csv')
ftl1 <- read_rds('data/fx/USDJPY/yr_2015_2017.rds')
m.op <- ftl1[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.hi <- ftl1[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.lo <- ftl1[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.cl <- ftl1[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
ftl_dat1a <- join_all(list(m.op, m.hi, m.lo, m.cl)) %>%
as_tibble
The models mo.7200, qt.7200, yr.7200, wk.7200 predict 7200
mins data in advanced per day. But models mo.1440, qt.1440, wk.1440, yr.1440 only predict 1440
mins data in advanced per day. Therefore there will be different data size and duplicate forecasted price.
tb16 <- ftl_dat1a %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb16
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tbats | dy.qt | 1107360 | 113.9211118 (rank: 5) | 99.9874339 (rank: 2) | 0.0028715 (rank: 2) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9878461 (rank: 5) | 0.0028743 (rank: 2) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9890648 (rank: 3) | 0.0028794 (rank: 2) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9868906 (rank: 2) | 0.0028659 (rank: 3) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk | 1107360 | 113.9211118 (rank: 5) | 99.9875357 (rank: 3) | 0.0028974 (rank: 3) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9854879 (rank: 2) | 0.0028844 (rank: 3) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9866407 (rank: 1) | 0.0028896 (rank: 3) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9876367 (rank: 4) | 0.0029325 (rank: 4) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk.mo | 1095840 | 113.880531 (rank: 1) | 99.988005 (rank: 4) | 0.0029033 (rank: 4) | 13009.6732246 (rank: 1) | 114.0599545 (rank: 1) | 113.8910 | 99.9891807 (rank: 6) | 0.0028948 (rank: 4) | 13012.048105 (rank: 1) | 114.0703647 (rank: 1) | 113.8700 | 99.9883727 (rank: 2) | 0.0029122 (rank: 4) | 13007.2785705 (rank: 1) | 114.0494567 (rank: 1) | 113.8805 | 99.9863519 (rank: 1) | 0.002865 (rank: 2) | 13009.670848 (rank: 1) | 114.0599441 (rank: 1) |
tbats | dy.yr | 1107360 | 113.9211118 (rank: 5) | 99.9886429 (rank: 6) | 0.0028657 (rank: 1) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9861341 (rank: 3) | 0.002866 (rank: 1) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.99081 (rank: 4) | 0.0028686 (rank: 1) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9872289 (rank: 3) | 0.0028559 (rank: 1) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.1440 | 1107360 | 113.9211118 (rank: 5) | 99.997698 (rank: 12) | 0.0029726 (rank: 7) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9955946 (rank: 10) | 0.0029629 (rank: 7) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961108 (rank: 9) | 0.0029588 (rank: 6) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9977861 (rank: 12) | 0.0029733 (rank: 7) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.7200 | 4024800 | 113.9506154 (rank: 10) | 99.9862221 (rank: 1) | 0.0065243 (rank: 12) | 13025.152525 (rank: 10) | 114.1277903 (rank: 10) | 113.9613 | 99.9877541 (rank: 4) | 0.0064656 (rank: 12) | 13027.5778602 (rank: 10) | 114.1384154 (rank: 10) | 113.9399 | 99.9912018 (rank: 6) | 0.0064556 (rank: 12) | 13022.7140985 (rank: 10) | 114.1171069 (rank: 10) | 113.9506 | 99.988863 (rank: 5) | 0.0065013 (rank: 12) | 13025.1522625 (rank: 10) | 114.1277892 (rank: 10) |
ts | qt.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959563 (rank: 11) | 0.0029554 (rank: 5) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9960047 (rank: 12) | 0.002956 (rank: 5) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961693 (rank: 10) | 0.0029585 (rank: 5) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9960002 (rank: 10) | 0.0029556 (rank: 5) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | qt.7200 | 4034880 | 113.9688821 (rank: 12) | 99.9934976 (rank: 8) | 0.0061786 (rank: 11) | 13029.3483473 (rank: 12) | 114.146171 (rank: 12) | 113.9796 | 99.9933861 (rank: 8) | 0.0061737 (rank: 11) | 13031.7740075 (rank: 12) | 114.1567957 (rank: 12) | 113.9581 | 99.9938441 (rank: 8) | 0.0061902 (rank: 11) | 13026.9096587 (rank: 12) | 114.1354882 (rank: 12) | 113.9689 | 99.9935873 (rank: 7) | 0.006172 (rank: 11) | 13029.3481487 (rank: 12) | 114.1461701 (rank: 12) |
ts | wk.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 10) | 0.0030953 (rank: 8) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9942862 (rank: 9) | 0.0030773 (rank: 8) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9968647 (rank: 12) | 0.0030863 (rank: 8) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.995752 (rank: 8) | 0.0030839 (rank: 8) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | wk.7200 | 4006080 | 113.9265833 (rank: 9) | 99.9886039 (rank: 5) | 0.0060006 (rank: 9) | 13019.7394475 (rank: 9) | 114.1040729 (rank: 9) | 113.9372 | 99.9825282 (rank: 1) | 0.0059472 (rank: 9) | 13022.16088 (rank: 9) | 114.114683 (rank: 9) | 113.9159 | 99.9908147 (rank: 5) | 0.0060663 (rank: 9) | 13017.3055576 (rank: 9) | 114.0934072 (rank: 9) | 113.9266 | 99.9971454 (rank: 11) | 0.0060972 (rank: 9) | 13019.7393598 (rank: 9) | 114.1040725 (rank: 9) |
ts | yr.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 9) | 0.0029555 (rank: 6) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9959517 (rank: 11) | 0.0029561 (rank: 6) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.996185 (rank: 11) | 0.0029592 (rank: 7) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9959783 (rank: 9) | 0.0029557 (rank: 6) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | yr.7200 | 4034880 | 113.9688821 (rank: 12) | 99.9933323 (rank: 7) | 0.0061776 (rank: 10) | 13029.3483473 (rank: 12) | 114.146171 (rank: 12) | 113.9796 | 99.9933013 (rank: 7) | 0.0061719 (rank: 10) | 13031.7740075 (rank: 12) | 114.1567957 (rank: 12) | 113.9581 | 99.9936176 (rank: 7) | 0.0061793 (rank: 10) | 13026.9096587 (rank: 12) | 114.1354882 (rank: 12) | 113.9689 | 99.9934146 (rank: 6) | 0.006171 (rank: 10) | 13029.3481487 (rank: 12) | 114.1461701 (rank: 12) |
Above table summarized the total observations with mape
, smape
, mse
and rmse
values (which is not nested summarize not daily settlement for P&L).
open.accr <- ftl1[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
high.accr <- ftl1[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
low.accr <- ftl1[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
close.accr <- ftl1[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
open.sm <- open.accr[, list(
N = mean(N),
open.mae = mean(open.mae),
open.mape = mean(open.mape),
open.smape = mean(open.smape),
open.mse = mean(open.mse),
open.rmse = mean(open.rmse)),
by=.(Model, Period)]
high.sm <- high.accr[, list(
N = mean(N),
high.mae = mean(high.mae),
high.mape = mean(high.mape),
high.smape = mean(high.smape),
high.mse = mean(high.mse),
high.rmse = mean(high.rmse)),
by=.(Model, Period)]
low.sm <- low.accr[, list(
N = mean(N),
low.mae = mean(low.mae),
low.mape = mean(low.mape),
low.smape = mean(low.smape),
low.mse = mean(low.mse),
low.rmse = mean(low.rmse)),
by=.(Model, Period)]
close.sm <- close.accr[, list(
N = mean(N),
close.mae = mean(close.mae),
close.mape = mean(close.mape),
close.smape = mean(close.smape),
close.mse = mean(close.mse),
close.rmse = mean(close.rmse)),
by=.(Model, Period)]
ftl_dat1b <- join_all(list(open.sm, high.sm, low.sm, close.sm)) %>%
as_tibble
tb17 <- ftl_dat1b %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb17
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ts | mo.7200 | 4304.599 | 113.9568357 (rank: 10) | 99.9855805 (rank: 5) | 0.0067014 (rank: 12) | 13026.629641 (rank: 10) | 113.9571521 (rank: 10) | 113.9686 | 99.9870942 (rank: 6) | 0.0066468 (rank: 12) | 13029.302226 (rank: 10) | 113.9688815 (rank: 10) | 113.9453 | 99.9906476 (rank: 9) | 0.0066298 (rank: 12) | 13024.0173177 (rank: 10) | 113.9456617 (rank: 10) | 113.9570 | 99.988296 (rank: 5) | 0.0066766 (rank: 12) | 13026.6806631 (rank: 10) | 113.9573559 (rank: 10) |
ts | qt.7200 | 4315.380 | 113.9568357 (rank: 12) | 99.9910107 (rank: 11) | 0.0063751 (rank: 11) | 13026.6296428 (rank: 12) | 113.9571522 (rank: 12) | 113.9686 | 99.9908152 (rank: 9) | 0.0063706 (rank: 11) | 13029.3022289 (rank: 12) | 113.9688815 (rank: 12) | 113.9453 | 99.9914321 (rank: 12) | 0.0063822 (rank: 11) | 13024.0173194 (rank: 12) | 113.9456617 (rank: 12) | 113.9570 | 99.9910805 (rank: 10) | 0.0063651 (rank: 11) | 13026.6806654 (rank: 12) | 113.9573559 (rank: 12) |
ts | yr.7200 | 4315.380 | 113.9568357 (rank: 12) | 99.9908218 (rank: 10) | 0.0063743 (rank: 10) | 13026.6296428 (rank: 12) | 113.9571522 (rank: 12) | 113.9686 | 99.990712 (rank: 8) | 0.006369 (rank: 10) | 13029.3022289 (rank: 12) | 113.9688815 (rank: 12) | 113.9453 | 99.9911817 (rank: 11) | 0.0063707 (rank: 10) | 13024.0173194 (rank: 12) | 113.9456617 (rank: 12) | 113.9570 | 99.9908831 (rank: 9) | 0.0063644 (rank: 10) | 13026.6806654 (rank: 12) | 113.9573559 (rank: 12) |
tbats | dy.qt | 1198.442 | 113.9168659 (rank: 5) | 99.9827217 (rank: 1) | 0.0031822 (rank: 2) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9847327 (rank: 4) | 0.0031922 (rank: 2) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9837386 (rank: 3) | 0.0031997 (rank: 3) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9832649 (rank: 1) | 0.0031787 (rank: 3) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk | 1198.442 | 113.9168659 (rank: 5) | 99.9830175 (rank: 2) | 0.0032321 (rank: 4) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9837571 (rank: 3) | 0.0031979 (rank: 3) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9814492 (rank: 1) | 0.0031972 (rank: 2) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9872821 (rank: 4) | 0.003283 (rank: 7) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.yr | 1198.442 | 113.9168659 (rank: 5) | 99.9850262 (rank: 4) | 0.0031819 (rank: 1) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.983682 (rank: 2) | 0.0031809 (rank: 1) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9860155 (rank: 4) | 0.0031824 (rank: 1) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9834722 (rank: 3) | 0.0031677 (rank: 2) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | mo.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9919173 (rank: 12) | 0.00327 (rank: 7) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913289 (rank: 10) | 0.003271 (rank: 7) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9898799 (rank: 6) | 0.0032548 (rank: 6) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9921135 (rank: 11) | 0.0032685 (rank: 6) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | qt.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9904949 (rank: 9) | 0.0032559 (rank: 5) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913755 (rank: 12) | 0.003256 (rank: 6) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899631 (rank: 7) | 0.0032544 (rank: 5) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906295 (rank: 8) | 0.0032536 (rank: 4) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.989367 (rank: 7) | 0.0033961 (rank: 8) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9899969 (rank: 7) | 0.0033679 (rank: 8) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9907161 (rank: 10) | 0.003378 (rank: 8) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9890199 (rank: 6) | 0.0033779 (rank: 8) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.7200 | 4307.613 | 113.9292233 (rank: 9) | 99.9858873 (rank: 6) | 0.0062015 (rank: 9) | 13020.4110471 (rank: 9) | 113.9295397 (rank: 9) | 113.9409 | 99.9803412 (rank: 1) | 0.0061414 (rank: 9) | 13023.0775024 (rank: 9) | 113.941246 (rank: 9) | 113.9177 | 99.9871864 (rank: 5) | 0.0062622 (rank: 9) | 13017.8034233 (rank: 9) | 113.9180662 (rank: 9) | 113.9294 | 99.9948054 (rank: 12) | 0.0062949 (rank: 9) | 13020.4602425 (rank: 9) | 113.9297357 (rank: 9) |
ts | yr.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.990482 (rank: 8) | 0.003256 (rank: 6) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913327 (rank: 11) | 0.003256 (rank: 5) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899977 (rank: 8) | 0.003255 (rank: 7) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906131 (rank: 7) | 0.0032538 (rank: 5) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 1) | 99.9849071 (rank: 3) | 0.0032018 (rank: 3) | 13010.4070779 (rank: 1) | 113.8837311 (rank: 1) | 113.8949 | 99.9863293 (rank: 5) | 0.0032013 (rank: 4) | 13013.0251767 (rank: 1) | 113.8952365 (rank: 1) | 113.8720 | 99.9831703 (rank: 2) | 0.0032375 (rank: 4) | 13007.8084865 (rank: 1) | 113.872291 (rank: 1) | 113.8835 | 99.9833065 (rank: 2) | 0.0031621 (rank: 1) | 13010.4185766 (rank: 1) | 113.8837664 (rank: 1) |
Above table summarized the daily mape
, smape
, mse
and rmse
values and then summarized again the models (which is nested summarize due to daily settlement for P&L).
7200
mins unique(x, fromLast = FALSE)
Datasetftl2 <- unique(ftl1, fromLast = FALSE, by = c('index', 'Period'))#[Period == 'mo.7200']#[11440:12900]#[order(index)]
#setkey(ftl2)
setkeyv(ftl2, c('index', 'Model', 'Period'))
m.op <- ftl2[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.hi <- ftl2[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.lo <- ftl2[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.cl <- ftl2[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
ftl_dat2a <- join_all(list(m.op, m.hi, m.lo, m.cl)) %>%
as_tibble
The models mo.7200, qt.7200, yr.7200, wk.7200 predict 7200
mins data in advanced per day. But models mo.1440, qt.1440, wk.1440, yr.1440 only predict 1440
mins data in advanced per day. Therefore there will be different data size and duplicate forecasted price.
Here I filtered to be unique forecasted price but 7200
mins in advanced per week. That means when I forecast data on 2015-01-17
for 2015-01-20
to 2015-01-25
which is 7200
mins in advanced. (All dataset will be forecast 7200
in advanced since I only filter and take first row of every single min)
tb18 <- ftl_dat2a %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb18
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tbats | dy.qt | 1107360 | 113.9211118 (rank: 5) | 99.9874339 (rank: 4) | 0.0028715 (rank: 2) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9878461 (rank: 6) | 0.0028743 (rank: 2) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9890648 (rank: 6) | 0.0028794 (rank: 2) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9868906 (rank: 5) | 0.0028659 (rank: 3) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk | 1107360 | 113.9211118 (rank: 5) | 99.9875357 (rank: 5) | 0.0028974 (rank: 3) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9854879 (rank: 4) | 0.0028844 (rank: 3) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9866407 (rank: 4) | 0.0028896 (rank: 3) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9876367 (rank: 7) | 0.0029325 (rank: 4) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk.mo | 1095840 | 113.880531 (rank: 1) | 99.988005 (rank: 6) | 0.0029033 (rank: 4) | 13009.6732246 (rank: 1) | 114.0599545 (rank: 1) | 113.8910 | 99.9891807 (rank: 7) | 0.0028948 (rank: 4) | 13012.048105 (rank: 1) | 114.0703647 (rank: 1) | 113.8700 | 99.9883727 (rank: 5) | 0.0029122 (rank: 4) | 13007.2785705 (rank: 1) | 114.0494567 (rank: 1) | 113.8805 | 99.9863519 (rank: 4) | 0.002865 (rank: 2) | 13009.670848 (rank: 1) | 114.0599441 (rank: 1) |
tbats | dy.yr | 1107360 | 113.9211118 (rank: 5) | 99.9886429 (rank: 7) | 0.0028657 (rank: 1) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9861341 (rank: 5) | 0.002866 (rank: 1) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.99081 (rank: 7) | 0.0028686 (rank: 1) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9872289 (rank: 6) | 0.0028559 (rank: 1) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.1440 | 1107360 | 113.9211118 (rank: 5) | 99.997698 (rank: 11) | 0.0029726 (rank: 7) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9955946 (rank: 10) | 0.0029629 (rank: 7) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961108 (rank: 8) | 0.0029588 (rank: 6) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9977861 (rank: 11) | 0.0029733 (rank: 7) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.7200 | 1121760 | 113.963099 (rank: 11) | 99.9666545 (rank: 1) | 0.0084935 (rank: 12) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.9723839 (rank: 1) | 0.0083268 (rank: 12) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.9821409 (rank: 1) | 0.0083461 (rank: 11) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9742402 (rank: 1) | 0.0084237 (rank: 11) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
ts | qt.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959563 (rank: 10) | 0.0029554 (rank: 5) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9960047 (rank: 12) | 0.002956 (rank: 5) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961693 (rank: 9) | 0.0029585 (rank: 5) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9960002 (rank: 10) | 0.0029556 (rank: 5) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | qt.7200 | 1121760 | 113.963099 (rank: 11) | 99.9846832 (rank: 3) | 0.008182 (rank: 10) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.984587 (rank: 2) | 0.0081725 (rank: 11) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.9850149 (rank: 3) | 0.008208 (rank: 10) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9847091 (rank: 3) | 0.0081662 (rank: 10) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
ts | wk.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 9) | 0.0030953 (rank: 8) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9942862 (rank: 9) | 0.0030773 (rank: 8) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9968647 (rank: 11) | 0.0030863 (rank: 8) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.995752 (rank: 8) | 0.0030839 (rank: 8) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | wk.7200 | 1116000 | 113.9359099 (rank: 9) | 99.9994373 (rank: 12) | 0.0082716 (rank: 11) | 13021.7754579 (rank: 9) | 114.1129943 (rank: 9) | 113.9465 | 99.992588 (rank: 8) | 0.0080806 (rank: 9) | 13024.1750398 (rank: 9) | 114.1235078 (rank: 9) | 113.9253 | 100.009432 (rank: 12) | 0.0084502 (rank: 12) | 13019.3639797 (rank: 9) | 114.1024276 (rank: 9) | 113.9359 | 100.0310396 (rank: 12) | 0.0085153 (rank: 12) | 13021.7759743 (rank: 9) | 114.1129965 (rank: 9) |
ts | yr.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 8) | 0.0029555 (rank: 6) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9959517 (rank: 11) | 0.0029561 (rank: 6) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.996185 (rank: 10) | 0.0029592 (rank: 7) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9959783 (rank: 9) | 0.0029557 (rank: 6) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | yr.7200 | 1121760 | 113.963099 (rank: 11) | 99.9846711 (rank: 2) | 0.0081819 (rank: 9) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.984812 (rank: 3) | 0.0081702 (rank: 10) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.9849314 (rank: 2) | 0.0081821 (rank: 9) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9846938 (rank: 2) | 0.0081661 (rank: 9) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
Above table summarized the total observations with mape
, smape
, mse
and rmse
values (which is not nested summarize not daily settlement for P&L).
open.accr <- ftl2[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
high.accr <- ftl2[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
low.accr <- ftl2[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
close.accr <- ftl2[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
open.sm <- open.accr[, list(
N = mean(N),
open.mae = mean(open.mae),
open.mape = mean(open.mape),
open.smape = mean(open.smape),
open.mse = mean(open.mse),
open.rmse = mean(open.rmse)),
by=.(Model, Period)]
high.sm <- high.accr[, list(
N = mean(N),
high.mae = mean(high.mae),
high.mape = mean(high.mape),
high.smape = mean(high.smape),
high.mse = mean(high.mse),
high.rmse = mean(high.rmse)),
by=.(Model, Period)]
low.sm <- low.accr[, list(
N = mean(N),
low.mae = mean(low.mae),
low.mape = mean(low.mape),
low.smape = mean(low.smape),
low.mse = mean(low.mse),
low.rmse = mean(low.rmse)),
by=.(Model, Period)]
close.sm <- close.accr[, list(
N = mean(N),
close.mae = mean(close.mae),
close.mape = mean(close.mape),
close.smape = mean(close.smape),
close.mse = mean(close.mse),
close.rmse = mean(close.rmse)),
by=.(Model, Period)]
ftl_dat2b <- join_all(list(open.sm, high.sm, low.sm, close.sm)) %>%
as_tibble
tb19 <- ftl_dat2b %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb19
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ts | mo.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.9595549 (rank: 1) | 0.0089263 (rank: 12) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9679242 (rank: 1) | 0.0087206 (rank: 12) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.9790867 (rank: 1) | 0.0087544 (rank: 11) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9689383 (rank: 1) | 0.0088472 (rank: 11) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
ts | qt.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.9814998 (rank: 3) | 0.0086197 (rank: 10) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9814404 (rank: 2) | 0.0086026 (rank: 11) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.981785 (rank: 4) | 0.0086364 (rank: 10) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9815012 (rank: 3) | 0.0085917 (rank: 10) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
ts | yr.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.98149 (rank: 2) | 0.0086196 (rank: 9) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9816167 (rank: 3) | 0.0086005 (rank: 10) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.9817071 (rank: 3) | 0.0086142 (rank: 9) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9814885 (rank: 2) | 0.0085916 (rank: 9) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
tbats | dy.qt | 1198.442 | 113.9168659 (rank: 5) | 99.9827217 (rank: 4) | 0.0031822 (rank: 2) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9847327 (rank: 6) | 0.0031922 (rank: 2) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9837386 (rank: 6) | 0.0031997 (rank: 3) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9832649 (rank: 4) | 0.0031787 (rank: 3) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk | 1198.442 | 113.9168659 (rank: 5) | 99.9830175 (rank: 5) | 0.0032321 (rank: 4) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9837571 (rank: 5) | 0.0031979 (rank: 3) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9814492 (rank: 2) | 0.0031972 (rank: 2) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9872821 (rank: 7) | 0.003283 (rank: 7) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.yr | 1198.442 | 113.9168659 (rank: 5) | 99.9850262 (rank: 7) | 0.0031819 (rank: 1) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.983682 (rank: 4) | 0.0031809 (rank: 1) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9860155 (rank: 7) | 0.0031824 (rank: 1) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9834722 (rank: 6) | 0.0031677 (rank: 2) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | mo.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9919173 (rank: 12) | 0.00327 (rank: 7) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913289 (rank: 10) | 0.003271 (rank: 7) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9898799 (rank: 8) | 0.0032548 (rank: 6) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9921135 (rank: 11) | 0.0032685 (rank: 6) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | qt.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9904949 (rank: 10) | 0.0032559 (rank: 5) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913755 (rank: 12) | 0.003256 (rank: 6) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899631 (rank: 9) | 0.0032544 (rank: 5) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906295 (rank: 10) | 0.0032536 (rank: 4) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.989367 (rank: 8) | 0.0033961 (rank: 8) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9899969 (rank: 9) | 0.0033679 (rank: 8) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9907161 (rank: 11) | 0.003378 (rank: 8) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9890199 (rank: 8) | 0.0033779 (rank: 8) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.7200 | 1200.000 | 113.9292249 (rank: 9) | 99.9917924 (rank: 11) | 0.0087278 (rank: 11) | 13020.4113841 (rank: 9) | 113.9295413 (rank: 9) | 113.9409 | 99.9893302 (rank: 8) | 0.0085238 (rank: 9) | 13023.077857 (rank: 9) | 113.9412477 (rank: 9) | 113.9177 | 100.0103725 (rank: 12) | 0.0089514 (rank: 12) | 13017.8037415 (rank: 9) | 113.9180677 (rank: 9) | 113.9294 | 100.0302948 (rank: 12) | 0.0090315 (rank: 12) | 13020.4605834 (rank: 9) | 113.9297373 (rank: 9) |
ts | yr.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.990482 (rank: 9) | 0.003256 (rank: 6) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913327 (rank: 11) | 0.003256 (rank: 5) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899977 (rank: 10) | 0.003255 (rank: 7) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906131 (rank: 9) | 0.0032538 (rank: 5) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 1) | 99.9849071 (rank: 6) | 0.0032018 (rank: 3) | 13010.4070779 (rank: 1) | 113.8837311 (rank: 1) | 113.8949 | 99.9863293 (rank: 7) | 0.0032013 (rank: 4) | 13013.0251767 (rank: 1) | 113.8952365 (rank: 1) | 113.8720 | 99.9831703 (rank: 5) | 0.0032375 (rank: 4) | 13007.8084865 (rank: 1) | 113.872291 (rank: 1) | 113.8835 | 99.9833065 (rank: 5) | 0.0031621 (rank: 1) | 13010.4185766 (rank: 1) | 113.8837664 (rank: 1) |
Above table summarized the daily mape
, smape
, mse
and rmse
values and then summarized again the models (which is nested summarize due to daily settlement for P&L).
7200
mins unique(x, fromLast = TRUE)
Datasetftl3 <- unique(ftl1, fromLast = TRUE, by = c('index', 'Period'))#[Period == 'mo.7200']#[11440:12900]#[order(index)]
#setkey(ftl3)
setkeyv(ftl3, c('index', 'Model', 'Period'))
m.op <- ftl3[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.hi <- ftl3[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.lo <- ftl3[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
m.cl <- ftl3[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by=.(Model, Period)]}][order(Model, Period), ]
ftl_dat3a <- join_all(list(m.op, m.hi, m.lo, m.cl)) %>%
as_tibble
The models mo.7200, qt.7200, yr.7200, wk.7200 predict 7200
mins data in advanced per day. But models mo.1440, qt.1440, wk.1440, yr.1440 only predict 1440
mins data in advanced per day. Therefore there will be different data size and duplicate forecasted price.
Here I filtered to be unique forecasted price but 7200
mins in advanced per week. That means when I forecast data on 2015-01-17
for 2015-01-20
to 2015-01-25
which is the last 1440
mins among 7200
mins in advanced. (All dataset will be forecast 7200
in advanced since I only filter and take last row of every single min)
tb20 <- ftl_dat3a %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb20
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tbats | dy.qt | 1107360 | 113.9211118 (rank: 5) | 99.9874339 (rank: 1) | 0.0028715 (rank: 2) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9878461 (rank: 3) | 0.0028743 (rank: 2) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9890648 (rank: 3) | 0.0028794 (rank: 2) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9868906 (rank: 2) | 0.0028659 (rank: 3) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk | 1107360 | 113.9211118 (rank: 5) | 99.9875357 (rank: 2) | 0.0028974 (rank: 4) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9854879 (rank: 1) | 0.0028844 (rank: 3) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9866407 (rank: 1) | 0.0028896 (rank: 3) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9876367 (rank: 4) | 0.0029325 (rank: 5) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
tbats | dy.wk.mo | 1095840 | 113.880531 (rank: 1) | 99.988005 (rank: 3) | 0.0029033 (rank: 5) | 13009.6732246 (rank: 1) | 114.0599545 (rank: 1) | 113.8910 | 99.9891807 (rank: 5) | 0.0028948 (rank: 5) | 13012.048105 (rank: 1) | 114.0703647 (rank: 1) | 113.8700 | 99.9883727 (rank: 2) | 0.0029122 (rank: 5) | 13007.2785705 (rank: 1) | 114.0494567 (rank: 1) | 113.8805 | 99.9863519 (rank: 1) | 0.002865 (rank: 2) | 13009.670848 (rank: 1) | 114.0599441 (rank: 1) |
tbats | dy.yr | 1107360 | 113.9211118 (rank: 5) | 99.9886429 (rank: 4) | 0.0028657 (rank: 1) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9861341 (rank: 2) | 0.002866 (rank: 1) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.99081 (rank: 4) | 0.0028686 (rank: 1) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9872289 (rank: 3) | 0.0028559 (rank: 1) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.1440 | 1107360 | 113.9211118 (rank: 5) | 99.997698 (rank: 9) | 0.0029726 (rank: 8) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9955946 (rank: 7) | 0.0029629 (rank: 8) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961108 (rank: 6) | 0.0029588 (rank: 7) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9977861 (rank: 9) | 0.0029733 (rank: 8) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | mo.7200 | 1121760 | 113.963099 (rank: 11) | 99.9982575 (rank: 10) | 0.0035016 (rank: 12) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.9983686 (rank: 10) | 0.0034984 (rank: 12) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.998993 (rank: 12) | 0.0034914 (rank: 12) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9987561 (rank: 11) | 0.0034996 (rank: 12) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
ts | qt.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959563 (rank: 8) | 0.0029554 (rank: 6) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9960047 (rank: 9) | 0.002956 (rank: 6) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9961693 (rank: 7) | 0.0029585 (rank: 6) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9960002 (rank: 8) | 0.0029556 (rank: 6) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | qt.7200 | 1121760 | 113.963099 (rank: 11) | 99.9987558 (rank: 12) | 0.0031508 (rank: 11) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.9987808 (rank: 12) | 0.0031501 (rank: 11) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.9989623 (rank: 11) | 0.0031547 (rank: 11) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9988458 (rank: 12) | 0.0031473 (rank: 11) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
ts | wk.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 7) | 0.0030953 (rank: 9) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9942862 (rank: 6) | 0.0030773 (rank: 9) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.9968647 (rank: 9) | 0.0030863 (rank: 9) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.995752 (rank: 6) | 0.0030839 (rank: 9) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | wk.7200 | 1116000 | 113.9359099 (rank: 9) | 99.9912623 (rank: 5) | 0.0028916 (rank: 3) | 13021.7754579 (rank: 9) | 114.1129943 (rank: 9) | 113.9465 | 99.9879751 (rank: 4) | 0.002885 (rank: 4) | 13024.1750398 (rank: 9) | 114.1235078 (rank: 9) | 113.9253 | 99.9921786 (rank: 5) | 0.002901 (rank: 4) | 13019.3639797 (rank: 9) | 114.1024276 (rank: 9) | 113.9359 | 99.9923293 (rank: 5) | 0.0029059 (rank: 4) | 13021.7759743 (rank: 9) | 114.1129965 (rank: 9) |
ts | yr.1440 | 1107360 | 113.9211118 (rank: 5) | 99.9959377 (rank: 6) | 0.0029555 (rank: 7) | 13018.6576187 (rank: 5) | 114.0993322 (rank: 5) | 113.9316 | 99.9959517 (rank: 8) | 0.0029561 (rank: 7) | 13021.0465939 (rank: 5) | 114.1098006 (rank: 5) | 113.9105 | 99.996185 (rank: 8) | 0.0029592 (rank: 8) | 13016.2484827 (rank: 5) | 114.0887746 (rank: 5) | 113.9211 | 99.9959783 (rank: 7) | 0.0029557 (rank: 7) | 13018.6550848 (rank: 5) | 114.0993211 (rank: 5) |
ts | yr.7200 | 1121760 | 113.963099 (rank: 11) | 99.998422 (rank: 11) | 0.0031494 (rank: 10) | 13027.908531 (rank: 11) | 114.1398639 (rank: 11) | 113.9737 | 99.9984653 (rank: 11) | 0.0031489 (rank: 10) | 13030.3134205 (rank: 11) | 114.1503982 (rank: 11) | 113.9525 | 99.9985694 (rank: 10) | 0.0031507 (rank: 10) | 13025.4911689 (rank: 11) | 114.1292739 (rank: 11) | 113.9631 | 99.9985045 (rank: 10) | 0.003146 (rank: 10) | 13027.9088161 (rank: 11) | 114.1398651 (rank: 11) |
Above table summarized the total observations with mape
, smape
, mse
and rmse
values (which is not nested summarize not daily settlement for P&L).
open.accr <- ftl3[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast),
open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
high.accr <- ftl3[, {
high = high
high.Point.Forecast = high.Point.Forecast
.SD[, .(.N,
high.mae = MAE(high, high.Point.Forecast),
high.mape = MAPE(high, high.Point.Forecast),
high.smape = SMAPE(high, high.Point.Forecast),
high.mse = MSE(high, high.Point.Forecast),
high.rmse = RMSE(high, high.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
low.accr <- ftl3[, {
low = low
low.Point.Forecast = low.Point.Forecast
.SD[, .(.N,
low.mae = MAE(low, low.Point.Forecast),
low.mape = MAPE(low, low.Point.Forecast),
low.smape = SMAPE(low, low.Point.Forecast),
low.mse = MSE(low, low.Point.Forecast),
low.rmse = RMSE(low, low.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
close.accr <- ftl3[, {
close = close
close.Point.Forecast = close.Point.Forecast
.SD[, .(.N,
close.mae = MAE(close, close.Point.Forecast),
close.mape = MAPE(close, close.Point.Forecast),
close.smape = SMAPE(close, close.Point.Forecast),
close.mse = MSE(close, close.Point.Forecast),
close.rmse = RMSE(close, close.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
open.sm <- open.accr[, list(
N = mean(N),
open.mae = mean(open.mae),
open.mape = mean(open.mape),
open.smape = mean(open.smape),
open.mse = mean(open.mse),
open.rmse = mean(open.rmse)),
by=.(Model, Period)]
high.sm <- high.accr[, list(
N = mean(N),
high.mae = mean(high.mae),
high.mape = mean(high.mape),
high.smape = mean(high.smape),
high.mse = mean(high.mse),
high.rmse = mean(high.rmse)),
by=.(Model, Period)]
low.sm <- low.accr[, list(
N = mean(N),
low.mae = mean(low.mae),
low.mape = mean(low.mape),
low.smape = mean(low.smape),
low.mse = mean(low.mse),
low.rmse = mean(low.rmse)),
by=.(Model, Period)]
close.sm <- close.accr[, list(
N = mean(N),
close.mae = mean(close.mae),
close.mape = mean(close.mape),
close.smape = mean(close.smape),
close.mse = mean(close.mse),
close.rmse = mean(close.rmse)),
by=.(Model, Period)]
ftl_dat3b <- join_all(list(open.sm, high.sm, low.sm, close.sm)) %>%
as_tibble
tb21 <- ftl_dat3b %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'LightSlateGrey') %>%
column_spec(4, background = 'LightGray') %>%
column_spec(5, background = 'Gainsboro') %>%
column_spec(6, background = 'LightGray') %>%
column_spec(7, background = 'Gainsboro') %>%
column_spec(8, background = 'LightGray') %>%
column_spec(9, background = 'Gainsboro') %>%
column_spec(10, background = 'LightGray') %>%
column_spec(11, background = 'Gainsboro') %>%
column_spec(12, background = 'LightGray') %>%
column_spec(13, background = 'Gainsboro') %>%
column_spec(14, background = 'LightGray') %>%
column_spec(15, background = 'Gainsboro') %>%
column_spec(16, background = 'LightGray') %>%
column_spec(17, background = 'Gainsboro') %>%
column_spec(18, background = 'LightGray') %>%
column_spec(19, background = 'Gainsboro') %>%
column_spec(20, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb21
Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ts | mo.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.9988397 (rank: 11) | 0.0038131 (rank: 12) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9983353 (rank: 10) | 0.0038167 (rank: 12) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.9994053 (rank: 12) | 0.003796 (rank: 12) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9992266 (rank: 12) | 0.0038109 (rank: 12) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
ts | qt.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.9991336 (rank: 12) | 0.0034895 (rank: 11) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9991175 (rank: 12) | 0.0034921 (rank: 11) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.9993155 (rank: 11) | 0.0034847 (rank: 11) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9991324 (rank: 11) | 0.0034838 (rank: 11) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
ts | yr.7200 | 1199.743 | 113.9568368 (rank: 11) | 99.9985722 (rank: 10) | 0.0034894 (rank: 10) | 13026.629859 (rank: 11) | 113.9571533 (rank: 11) | 113.9686 | 99.9985696 (rank: 11) | 0.0034921 (rank: 10) | 13029.3024649 (rank: 11) | 113.9688827 (rank: 11) | 113.9453 | 99.9986931 (rank: 10) | 0.0034823 (rank: 10) | 13024.0175187 (rank: 11) | 113.9456627 (rank: 11) | 113.9570 | 99.9985581 (rank: 10) | 0.0034837 (rank: 10) | 13026.680885 (rank: 11) | 113.957357 (rank: 11) |
tbats | dy.qt | 1198.442 | 113.9168659 (rank: 5) | 99.9827217 (rank: 1) | 0.0031822 (rank: 2) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9847327 (rank: 3) | 0.0031922 (rank: 2) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9837386 (rank: 3) | 0.0031997 (rank: 3) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9832649 (rank: 1) | 0.0031787 (rank: 3) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk | 1198.442 | 113.9168659 (rank: 5) | 99.9830175 (rank: 2) | 0.0032321 (rank: 5) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9837571 (rank: 2) | 0.0031979 (rank: 3) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9814492 (rank: 1) | 0.0031972 (rank: 2) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9872821 (rank: 4) | 0.003283 (rank: 8) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.yr | 1198.442 | 113.9168659 (rank: 5) | 99.9850262 (rank: 4) | 0.0031819 (rank: 1) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.983682 (rank: 1) | 0.0031809 (rank: 1) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9860155 (rank: 4) | 0.0031824 (rank: 1) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9834722 (rank: 3) | 0.0031677 (rank: 2) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | mo.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9919173 (rank: 9) | 0.00327 (rank: 8) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913289 (rank: 7) | 0.003271 (rank: 8) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9898799 (rank: 6) | 0.0032548 (rank: 7) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9921135 (rank: 9) | 0.0032685 (rank: 7) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | qt.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.9904949 (rank: 8) | 0.0032559 (rank: 6) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913755 (rank: 9) | 0.003256 (rank: 7) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899631 (rank: 7) | 0.0032544 (rank: 6) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906295 (rank: 8) | 0.0032536 (rank: 5) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.989367 (rank: 6) | 0.0033961 (rank: 9) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9899969 (rank: 6) | 0.0033679 (rank: 9) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9907161 (rank: 9) | 0.003378 (rank: 9) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9890199 (rank: 6) | 0.0033779 (rank: 9) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
ts | wk.7200 | 1200.000 | 113.9292249 (rank: 9) | 99.9870194 (rank: 5) | 0.003212 (rank: 4) | 13020.4113841 (rank: 9) | 113.9295413 (rank: 9) | 113.9409 | 99.9855629 (rank: 4) | 0.0032014 (rank: 5) | 13023.077857 (rank: 9) | 113.9412477 (rank: 9) | 113.9177 | 99.9861308 (rank: 5) | 0.0032244 (rank: 4) | 13017.8037415 (rank: 9) | 113.9180677 (rank: 9) | 113.9294 | 99.9884871 (rank: 5) | 0.0032165 (rank: 4) | 13020.4605834 (rank: 9) | 113.9297373 (rank: 9) |
ts | yr.1440 | 1198.442 | 113.9168659 (rank: 5) | 99.990482 (rank: 7) | 0.003256 (rank: 7) | 13017.8077239 (rank: 5) | 113.9171835 (rank: 5) | 113.9285 | 99.9913327 (rank: 8) | 0.003256 (rank: 6) | 13020.4670959 (rank: 5) | 113.9288612 (rank: 5) | 113.9054 | 99.9899977 (rank: 8) | 0.003255 (rank: 8) | 13015.200758 (rank: 5) | 113.9057112 (rank: 5) | 113.9171 | 99.9906131 (rank: 7) | 0.0032538 (rank: 6) | 13017.8546962 (rank: 5) | 113.9173698 (rank: 5) |
tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 1) | 99.9849071 (rank: 3) | 0.0032018 (rank: 3) | 13010.4070779 (rank: 1) | 113.8837311 (rank: 1) | 113.8949 | 99.9863293 (rank: 5) | 0.0032013 (rank: 4) | 13013.0251767 (rank: 1) | 113.8952365 (rank: 1) | 113.8720 | 99.9831703 (rank: 2) | 0.0032375 (rank: 5) | 13007.8084865 (rank: 1) | 113.872291 (rank: 1) | 113.8835 | 99.9833065 (rank: 2) | 0.0031621 (rank: 1) | 13010.4185766 (rank: 1) | 113.8837664 (rank: 1) |
Above table summarized the daily mape
, smape
, mse
and rmse
values and then summarized again the models (which is nested summarize due to daily settlement for P&L).
compf <- list(
'Unfilter Overall' = ftl_dat1a,
'Unfilter Daily' = ftl_dat1b,
'from First Overall' = ftl_dat2a,
'from First Daily' = ftl_dat2b,
'from Last Oervall' = ftl_dat3a,
'from Last Daily' = ftl_dat3b) %>%
ldply %>%
as_tibble %>%
dplyr::mutate(.id = factor(.id))
rm(ftl_dat1a, ftl_dat1b, ftl_dat2a, ftl_dat3a, ftl_dat3b)
gc()
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 5965206 318.6 10942808 584.5 10942808 584.5 Vcells 2537014208 19355.9 4296816194 32782.2 3580049391 27313.7
tb22 <- compf %>%
dplyr::mutate(
open.mae = ifelse(
rank(open.mae) <= 3,
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mae, 7), ' (rank: ', sprintf('%1.f', rank(open.mae)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mape = ifelse(
rank(open.mape) <= 3,
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mape, 7), ' (rank: ', sprintf('%1.f', rank(open.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.smape = ifelse(
rank(open.smape) <= 3,
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.smape, 7), ' (rank: ', sprintf('%1.f', rank(open.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
open.mse = ifelse(
rank(open.mse) <= 3,
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.mse, 7), ' (rank: ', sprintf('%1.f', rank(open.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
open.rmse = ifelse(
rank(open.rmse) <= 3,
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(open.rmse, 7), ' (rank: ', sprintf('%1.f', rank(open.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mape = ifelse(
rank(high.mape) <= 3,
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mape, 7), ' (rank: ', sprintf('%1.f', rank(high.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.smape = ifelse(
rank(high.smape) <= 3,
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.smape, 7), ' (rank: ', sprintf('%1.f', rank(high.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
high.mse = ifelse(
rank(high.mse) <= 3,
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.mse, 7), ' (rank: ', sprintf('%1.f', rank(high.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
high.rmse = ifelse(
rank(high.rmse) <= 3,
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(high.rmse, 7), ' (rank: ', sprintf('%1.f', rank(high.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mape = ifelse(
rank(low.mape) <= 3,
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mape, 7), ' (rank: ', sprintf('%1.f', rank(low.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.smape = ifelse(
rank(low.smape) <= 3,
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.smape, 7), ' (rank: ', sprintf('%1.f', rank(low.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
low.mse = ifelse(
rank(low.mse) <= 3,
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.mse, 7), ' (rank: ', sprintf('%1.f', rank(low.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
low.rmse = ifelse(
rank(low.rmse) <= 3,
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(low.rmse, 7), ' (rank: ', sprintf('%1.f', rank(low.rmse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mape = ifelse(
rank(close.mape) <= 3,
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mape, 7), ' (rank: ', sprintf('%1.f', rank(close.mape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.smape = ifelse(
rank(close.smape) <= 3,
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.smape, 7), ' (rank: ', sprintf('%1.f', rank(close.smape)), ')'),
'html', color = 'grey', italic = TRUE)),
close.mse = ifelse(
rank(close.mse) <= 3,
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.mse, 7), ' (rank: ', sprintf('%1.f', rank(close.mse)), ')'),
'html', color = 'grey', italic = TRUE)),
close.rmse = ifelse(
rank(close.rmse) <= 3,
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'darkgoldenrod', bold = TRUE),
cell_spec(
paste0(round(close.rmse, 7), ' (rank: ', sprintf('%1.f', rank(close.rmse)), ')'),
'html', color = 'grey', italic = TRUE))) %>%
kbl('html', caption = 'Comparison of Models (1 min per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = '#4E79A7') %>%
column_spec(2, background = 'CornflowerBlue') %>%
column_spec(3, background = 'CornflowerBlue') %>%
column_spec(4, background = '#5b65a7') %>%
#column_spec(5, background = '#A0CBE8') %>%
column_spec(5, background = 'LightGray') %>%
column_spec(6, background = 'Gainsboro') %>%
column_spec(7, background = 'LightGray') %>%
column_spec(8, background = 'Gainsboro') %>%
column_spec(9, background = 'LightGray') %>%
column_spec(10, background = 'Gainsboro') %>%
column_spec(11, background = 'LightGray') %>%
column_spec(12, background = 'Gainsboro') %>%
column_spec(13, background = 'LightGray') %>%
column_spec(14, background = 'Gainsboro') %>%
column_spec(15, background = 'LightGray') %>%
column_spec(16, background = 'Gainsboro') %>%
column_spec(17, background = 'LightGray') %>%
column_spec(18, background = 'Gainsboro') %>%
column_spec(19, background = 'LightGray') %>%
column_spec(20, background = 'Gainsboro') %>%
column_spec(21, background = 'LightGray') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE)#, height = '400px')
tb22
.id | Model | Period | N | open.mae | open.mape | open.smape | open.mse | open.rmse | high.mae | high.mape | high.smape | high.mse | high.rmse | low.mae | low.mape | low.smape | low.mse | low.rmse | close.mae | close.mape | close.smape | close.mse | close.rmse |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Unfilter Overall | tbats | dy.qt | 1107360.000 | 113.9211118 (rank: 38) | 99.9874339 (rank: 24) | 0.0028715 (rank: 5) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9878461 (rank: 31) | 0.0028743 (rank: 5) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9890648 (rank: 28) | 0.0028794 (rank: 5) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9868906 (rank: 20) | 0.0028659 (rank: 8) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | tbats | dy.wk | 1107360.000 | 113.9211118 (rank: 38) | 99.9875357 (rank: 27) | 0.0028974 (rank: 9) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9854879 (rank: 19) | 0.0028844 (rank: 8) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9866407 (rank: 21) | 0.0028896 (rank: 8) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9876367 (rank: 29) | 0.0029325 (rank: 12) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | tbats | dy.wk.mo | 1095840.000 | 113.880531 (rank: 2) | 99.988005 (rank: 30) | 0.0029033 (rank: 12) | 13009.6732246 (rank: 2) | 114.0599545 (rank: 38) | 113.8910 | 99.9891807 (rank: 35) | 0.0028948 (rank: 12) | 13012.048105 (rank: 2) | 114.0703647 (rank: 38) | 113.8700 | 99.9883727 (rank: 25) | 0.0029122 (rank: 12) | 13007.2785705 (rank: 2) | 114.0494567 (rank: 38) | 113.8805 | 99.9863519 (rank: 17) | 0.002865 (rank: 5) | 13009.670848 (rank: 2) | 114.0599441 (rank: 38) |
Unfilter Overall | tbats | dy.yr | 1107360.000 | 113.9211118 (rank: 38) | 99.9886429 (rank: 34) | 0.0028657 (rank: 2) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9861341 (rank: 23) | 0.002866 (rank: 2) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.99081 (rank: 44) | 0.0028686 (rank: 2) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9872289 (rank: 23) | 0.0028559 (rank: 2) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | ts | mo.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.997698 (rank: 64) | 0.0029726 (rank: 21) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9955946 (rank: 59) | 0.0029629 (rank: 21) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961108 (rank: 54) | 0.0029588 (rank: 18) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9977861 (rank: 63) | 0.0029733 (rank: 21) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | ts | mo.7200 | 4024800.000 | 113.9506154 (rank: 55) | 99.9862221 (rank: 21) | 0.0065243 (rank: 63) | 13025.152525 (rank: 55) | 114.1277903 (rank: 64) | 113.9613 | 99.9877541 (rank: 29) | 0.0064656 (rank: 63) | 13027.5778602 (rank: 55) | 114.1384154 (rank: 64) | 113.9399 | 99.9912018 (rank: 48) | 0.0064556 (rank: 63) | 13022.7140985 (rank: 55) | 114.1171069 (rank: 64) | 113.9506 | 99.988863 (rank: 33) | 0.0065013 (rank: 63) | 13025.1522625 (rank: 55) | 114.1277892 (rank: 64) |
Unfilter Overall | ts | qt.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959563 (rank: 61) | 0.0029554 (rank: 15) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9960047 (rank: 65) | 0.002956 (rank: 15) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961693 (rank: 57) | 0.0029585 (rank: 15) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9960002 (rank: 59) | 0.0029556 (rank: 15) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | ts | qt.7200 | 4034880.000 | 113.9688821 (rank: 72) | 99.9934976 (rank: 53) | 0.0061786 (rank: 59) | 13029.3483473 (rank: 72) | 114.146171 (rank: 72) | 113.9796 | 99.9933861 (rank: 54) | 0.0061737 (rank: 60) | 13031.7740075 (rank: 72) | 114.1567957 (rank: 72) | 113.9581 | 99.9938441 (rank: 52) | 0.0061902 (rank: 59) | 13026.9096587 (rank: 72) | 114.1354882 (rank: 72) | 113.9689 | 99.9935873 (rank: 50) | 0.006172 (rank: 59) | 13029.3481487 (rank: 72) | 114.1461701 (rank: 72) |
Unfilter Overall | ts | wk.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 58) | 0.0030953 (rank: 24) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9942862 (rank: 56) | 0.0030773 (rank: 24) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9968647 (rank: 63) | 0.0030863 (rank: 24) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.995752 (rank: 53) | 0.0030839 (rank: 24) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | ts | wk.7200 | 4006080.000 | 113.9265833 (rank: 49) | 99.9886039 (rank: 32) | 0.0060006 (rank: 57) | 13019.7394475 (rank: 49) | 114.1040729 (rank: 61) | 113.9372 | 99.9825282 (rank: 6) | 0.0059472 (rank: 57) | 13022.16088 (rank: 49) | 114.114683 (rank: 61) | 113.9159 | 99.9908147 (rank: 46) | 0.0060663 (rank: 57) | 13017.3055576 (rank: 49) | 114.0934072 (rank: 61) | 113.9266 | 99.9971454 (rank: 61) | 0.0060972 (rank: 57) | 13019.7393598 (rank: 49) | 114.1040725 (rank: 61) |
Unfilter Overall | ts | yr.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 55) | 0.0029555 (rank: 18) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9959517 (rank: 62) | 0.0029561 (rank: 18) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.996185 (rank: 60) | 0.0029592 (rank: 21) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9959783 (rank: 56) | 0.0029557 (rank: 18) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
Unfilter Overall | ts | yr.7200 | 4034880.000 | 113.9688821 (rank: 72) | 99.9933323 (rank: 52) | 0.0061776 (rank: 58) | 13029.3483473 (rank: 72) | 114.146171 (rank: 72) | 113.9796 | 99.9933013 (rank: 53) | 0.0061719 (rank: 59) | 13031.7740075 (rank: 72) | 114.1567957 (rank: 72) | 113.9581 | 99.9936176 (rank: 51) | 0.0061793 (rank: 58) | 13026.9096587 (rank: 72) | 114.1354882 (rank: 72) | 113.9689 | 99.9934146 (rank: 49) | 0.006171 (rank: 58) | 13029.3481487 (rank: 72) | 114.1461701 (rank: 72) |
Unfilter Daily | ts | mo.7200 | 4304.599 | 113.9568357 (rank: 56) | 99.9855805 (rank: 19) | 0.0067014 (rank: 64) | 13026.629641 (rank: 56) | 113.9571521 (rank: 28) | 113.9686 | 99.9870942 (rank: 28) | 0.0066468 (rank: 64) | 13029.302226 (rank: 56) | 113.9688815 (rank: 28) | 113.9453 | 99.9906476 (rank: 39) | 0.0066298 (rank: 64) | 13024.0173177 (rank: 56) | 113.9456617 (rank: 28) | 113.9570 | 99.988296 (rank: 31) | 0.0066766 (rank: 64) | 13026.6806631 (rank: 56) | 113.9573559 (rank: 28) |
Unfilter Daily | ts | qt.7200 | 4315.380 | 113.9568357 (rank: 58) | 99.9910107 (rank: 46) | 0.0063751 (rank: 62) | 13026.6296428 (rank: 58) | 113.9571522 (rank: 30) | 113.9686 | 99.9908152 (rank: 42) | 0.0063706 (rank: 62) | 13029.3022289 (rank: 58) | 113.9688815 (rank: 30) | 113.9453 | 99.9914321 (rank: 49) | 0.0063822 (rank: 62) | 13024.0173194 (rank: 58) | 113.9456617 (rank: 30) | 113.9570 | 99.9910805 (rank: 44) | 0.0063651 (rank: 62) | 13026.6806654 (rank: 58) | 113.9573559 (rank: 30) |
Unfilter Daily | ts | yr.7200 | 4315.380 | 113.9568357 (rank: 58) | 99.9908218 (rank: 45) | 0.0063743 (rank: 61) | 13026.6296428 (rank: 58) | 113.9571522 (rank: 30) | 113.9686 | 99.990712 (rank: 41) | 0.006369 (rank: 61) | 13029.3022289 (rank: 58) | 113.9688815 (rank: 30) | 113.9453 | 99.9911817 (rank: 47) | 0.0063707 (rank: 61) | 13024.0173194 (rank: 58) | 113.9456617 (rank: 30) | 113.9570 | 99.9908831 (rank: 43) | 0.0063644 (rank: 61) | 13026.6806654 (rank: 58) | 113.9573559 (rank: 30) |
Unfilter Daily | tbats | dy.qt | 1198.442 | 113.9168659 (rank: 17) | 99.9827217 (rank: 6) | 0.0031822 (rank: 32) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9847327 (rank: 15) | 0.0031922 (rank: 32) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9837386 (rank: 12) | 0.0031997 (rank: 35) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9832649 (rank: 6) | 0.0031787 (rank: 35) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | tbats | dy.wk | 1198.442 | 113.9168659 (rank: 17) | 99.9830175 (rank: 9) | 0.0032321 (rank: 39) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9837571 (rank: 11) | 0.0031979 (rank: 35) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9814492 (rank: 3) | 0.0031972 (rank: 32) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9872821 (rank: 26) | 0.003283 (rank: 48) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | tbats | dy.yr | 1198.442 | 113.9168659 (rank: 17) | 99.9850262 (rank: 17) | 0.0031819 (rank: 29) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.983682 (rank: 8) | 0.0031809 (rank: 29) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9860155 (rank: 17) | 0.0031824 (rank: 29) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9834722 (rank: 12) | 0.0031677 (rank: 32) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | ts | mo.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9919173 (rank: 50) | 0.00327 (rank: 48) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913289 (rank: 44) | 0.003271 (rank: 48) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9898799 (rank: 31) | 0.0032548 (rank: 45) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9921135 (rank: 46) | 0.0032685 (rank: 45) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | ts | qt.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9904949 (rank: 43) | 0.0032559 (rank: 42) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913755 (rank: 50) | 0.003256 (rank: 45) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899631 (rank: 34) | 0.0032544 (rank: 42) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906295 (rank: 41) | 0.0032536 (rank: 39) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | ts | wk.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.989367 (rank: 37) | 0.0033961 (rank: 51) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9899969 (rank: 39) | 0.0033679 (rank: 51) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9907161 (rank: 41) | 0.003378 (rank: 51) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9890199 (rank: 35) | 0.0033779 (rank: 51) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | ts | wk.7200 | 4307.613 | 113.9292233 (rank: 50) | 99.9858873 (rank: 20) | 0.0062015 (rank: 60) | 13020.4110471 (rank: 50) | 113.9295397 (rank: 25) | 113.9409 | 99.9803412 (rank: 3) | 0.0061414 (rank: 58) | 13023.0775024 (rank: 50) | 113.941246 (rank: 25) | 113.9177 | 99.9871864 (rank: 23) | 0.0062622 (rank: 60) | 13017.8034233 (rank: 50) | 113.9180662 (rank: 25) | 113.9294 | 99.9948054 (rank: 51) | 0.0062949 (rank: 60) | 13020.4602425 (rank: 50) | 113.9297357 (rank: 25) |
Unfilter Daily | ts | yr.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.990482 (rank: 40) | 0.003256 (rank: 45) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913327 (rank: 47) | 0.003256 (rank: 42) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899977 (rank: 37) | 0.003255 (rank: 48) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906131 (rank: 38) | 0.0032538 (rank: 42) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
Unfilter Daily | tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 5) | 99.9849071 (rank: 14) | 0.0032018 (rank: 35) | 13010.4070779 (rank: 5) | 113.8837311 (rank: 2) | 113.8949 | 99.9863293 (rank: 26) | 0.0032013 (rank: 38) | 13013.0251767 (rank: 5) | 113.8952365 (rank: 2) | 113.8720 | 99.9831703 (rank: 9) | 0.0032375 (rank: 39) | 13007.8084865 (rank: 5) | 113.872291 (rank: 2) | 113.8835 | 99.9833065 (rank: 9) | 0.0031621 (rank: 29) | 13010.4185766 (rank: 5) | 113.8837664 (rank: 2) |
from First Overall | tbats | dy.qt | 1107360.000 | 113.9211118 (rank: 38) | 99.9874339 (rank: 24) | 0.0028715 (rank: 5) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9878461 (rank: 31) | 0.0028743 (rank: 5) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9890648 (rank: 28) | 0.0028794 (rank: 5) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9868906 (rank: 20) | 0.0028659 (rank: 8) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | tbats | dy.wk | 1107360.000 | 113.9211118 (rank: 38) | 99.9875357 (rank: 27) | 0.0028974 (rank: 9) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9854879 (rank: 19) | 0.0028844 (rank: 8) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9866407 (rank: 21) | 0.0028896 (rank: 8) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9876367 (rank: 29) | 0.0029325 (rank: 12) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | tbats | dy.wk.mo | 1095840.000 | 113.880531 (rank: 2) | 99.988005 (rank: 30) | 0.0029033 (rank: 12) | 13009.6732246 (rank: 2) | 114.0599545 (rank: 38) | 113.8910 | 99.9891807 (rank: 35) | 0.0028948 (rank: 12) | 13012.048105 (rank: 2) | 114.0703647 (rank: 38) | 113.8700 | 99.9883727 (rank: 25) | 0.0029122 (rank: 12) | 13007.2785705 (rank: 2) | 114.0494567 (rank: 38) | 113.8805 | 99.9863519 (rank: 17) | 0.002865 (rank: 5) | 13009.670848 (rank: 2) | 114.0599441 (rank: 38) |
from First Overall | tbats | dy.yr | 1107360.000 | 113.9211118 (rank: 38) | 99.9886429 (rank: 34) | 0.0028657 (rank: 2) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9861341 (rank: 23) | 0.002866 (rank: 2) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.99081 (rank: 44) | 0.0028686 (rank: 2) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9872289 (rank: 23) | 0.0028559 (rank: 2) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | ts | mo.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.997698 (rank: 64) | 0.0029726 (rank: 21) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9955946 (rank: 59) | 0.0029629 (rank: 21) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961108 (rank: 54) | 0.0029588 (rank: 18) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9977861 (rank: 63) | 0.0029733 (rank: 21) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | ts | mo.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.9666545 (rank: 2) | 0.0084935 (rank: 68) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.9723839 (rank: 2) | 0.0083268 (rank: 68) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.9821409 (rank: 7) | 0.0083461 (rank: 67) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9742402 (rank: 2) | 0.0084237 (rank: 67) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from First Overall | ts | qt.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959563 (rank: 61) | 0.0029554 (rank: 15) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9960047 (rank: 65) | 0.002956 (rank: 15) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961693 (rank: 57) | 0.0029585 (rank: 15) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9960002 (rank: 59) | 0.0029556 (rank: 15) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | ts | qt.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.9846832 (rank: 12) | 0.008182 (rank: 66) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.984587 (rank: 13) | 0.0081725 (rank: 67) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.9850149 (rank: 15) | 0.008208 (rank: 66) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9847091 (rank: 15) | 0.0081662 (rank: 66) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from First Overall | ts | wk.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 58) | 0.0030953 (rank: 24) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9942862 (rank: 56) | 0.0030773 (rank: 24) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9968647 (rank: 63) | 0.0030863 (rank: 24) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.995752 (rank: 53) | 0.0030839 (rank: 24) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | ts | wk.7200 | 1116000.000 | 113.9359099 (rank: 54) | 99.9994373 (rank: 72) | 0.0082716 (rank: 67) | 13021.7754579 (rank: 54) | 114.1129943 (rank: 62) | 113.9465 | 99.992588 (rank: 52) | 0.0080806 (rank: 65) | 13024.1750398 (rank: 54) | 114.1235078 (rank: 62) | 113.9253 | 100.009432 (rank: 71) | 0.0084502 (rank: 68) | 13019.3639797 (rank: 54) | 114.1024276 (rank: 62) | 113.9359 | 100.0310396 (rank: 72) | 0.0085153 (rank: 68) | 13021.7759743 (rank: 54) | 114.1129965 (rank: 62) |
from First Overall | ts | yr.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 55) | 0.0029555 (rank: 18) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9959517 (rank: 62) | 0.0029561 (rank: 18) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.996185 (rank: 60) | 0.0029592 (rank: 21) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9959783 (rank: 56) | 0.0029557 (rank: 18) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from First Overall | ts | yr.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.9846711 (rank: 11) | 0.0081819 (rank: 65) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.984812 (rank: 17) | 0.0081702 (rank: 66) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.9849314 (rank: 14) | 0.0081821 (rank: 65) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9846938 (rank: 14) | 0.0081661 (rank: 65) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from First Daily | ts | mo.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.9595549 (rank: 1) | 0.0089263 (rank: 72) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9679242 (rank: 1) | 0.0087206 (rank: 72) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.9790867 (rank: 1) | 0.0087544 (rank: 71) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9689383 (rank: 1) | 0.0088472 (rank: 71) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from First Daily | ts | qt.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.9814998 (rank: 4) | 0.0086197 (rank: 70) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9814404 (rank: 4) | 0.0086026 (rank: 71) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.981785 (rank: 6) | 0.0086364 (rank: 70) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9815012 (rank: 4) | 0.0085917 (rank: 70) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from First Daily | ts | yr.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.98149 (rank: 3) | 0.0086196 (rank: 69) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9816167 (rank: 5) | 0.0086005 (rank: 70) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.9817071 (rank: 5) | 0.0086142 (rank: 69) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9814885 (rank: 3) | 0.0085916 (rank: 69) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from First Daily | tbats | dy.qt | 1198.442 | 113.9168659 (rank: 17) | 99.9827217 (rank: 6) | 0.0031822 (rank: 32) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9847327 (rank: 15) | 0.0031922 (rank: 32) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9837386 (rank: 12) | 0.0031997 (rank: 35) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9832649 (rank: 6) | 0.0031787 (rank: 35) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | tbats | dy.wk | 1198.442 | 113.9168659 (rank: 17) | 99.9830175 (rank: 9) | 0.0032321 (rank: 39) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9837571 (rank: 11) | 0.0031979 (rank: 35) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9814492 (rank: 3) | 0.0031972 (rank: 32) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9872821 (rank: 26) | 0.003283 (rank: 48) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | tbats | dy.yr | 1198.442 | 113.9168659 (rank: 17) | 99.9850262 (rank: 17) | 0.0031819 (rank: 29) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.983682 (rank: 8) | 0.0031809 (rank: 29) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9860155 (rank: 17) | 0.0031824 (rank: 29) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9834722 (rank: 12) | 0.0031677 (rank: 32) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | ts | mo.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9919173 (rank: 50) | 0.00327 (rank: 48) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913289 (rank: 44) | 0.003271 (rank: 48) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9898799 (rank: 31) | 0.0032548 (rank: 45) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9921135 (rank: 46) | 0.0032685 (rank: 45) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | ts | qt.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9904949 (rank: 43) | 0.0032559 (rank: 42) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913755 (rank: 50) | 0.003256 (rank: 45) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899631 (rank: 34) | 0.0032544 (rank: 42) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906295 (rank: 41) | 0.0032536 (rank: 39) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | ts | wk.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.989367 (rank: 37) | 0.0033961 (rank: 51) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9899969 (rank: 39) | 0.0033679 (rank: 51) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9907161 (rank: 41) | 0.003378 (rank: 51) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9890199 (rank: 35) | 0.0033779 (rank: 51) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | ts | wk.7200 | 1200.000 | 113.9292249 (rank: 52) | 99.9917924 (rank: 48) | 0.0087278 (rank: 71) | 13020.4113841 (rank: 52) | 113.9295413 (rank: 26) | 113.9409 | 99.9893302 (rank: 37) | 0.0085238 (rank: 69) | 13023.077857 (rank: 52) | 113.9412477 (rank: 26) | 113.9177 | 100.0103725 (rank: 72) | 0.0089514 (rank: 72) | 13017.8037415 (rank: 52) | 113.9180677 (rank: 26) | 113.9294 | 100.0302948 (rank: 71) | 0.0090315 (rank: 72) | 13020.4605834 (rank: 52) | 113.9297373 (rank: 26) |
from First Daily | ts | yr.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.990482 (rank: 40) | 0.003256 (rank: 45) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913327 (rank: 47) | 0.003256 (rank: 42) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899977 (rank: 37) | 0.003255 (rank: 48) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906131 (rank: 38) | 0.0032538 (rank: 42) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from First Daily | tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 5) | 99.9849071 (rank: 14) | 0.0032018 (rank: 35) | 13010.4070779 (rank: 5) | 113.8837311 (rank: 2) | 113.8949 | 99.9863293 (rank: 26) | 0.0032013 (rank: 38) | 13013.0251767 (rank: 5) | 113.8952365 (rank: 2) | 113.8720 | 99.9831703 (rank: 9) | 0.0032375 (rank: 39) | 13007.8084865 (rank: 5) | 113.872291 (rank: 2) | 113.8835 | 99.9833065 (rank: 9) | 0.0031621 (rank: 29) | 13010.4185766 (rank: 5) | 113.8837664 (rank: 2) |
from Last Oervall | tbats | dy.qt | 1107360.000 | 113.9211118 (rank: 38) | 99.9874339 (rank: 24) | 0.0028715 (rank: 5) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9878461 (rank: 31) | 0.0028743 (rank: 5) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9890648 (rank: 28) | 0.0028794 (rank: 5) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9868906 (rank: 20) | 0.0028659 (rank: 8) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | tbats | dy.wk | 1107360.000 | 113.9211118 (rank: 38) | 99.9875357 (rank: 27) | 0.0028974 (rank: 9) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9854879 (rank: 19) | 0.0028844 (rank: 8) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9866407 (rank: 21) | 0.0028896 (rank: 8) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9876367 (rank: 29) | 0.0029325 (rank: 12) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | tbats | dy.wk.mo | 1095840.000 | 113.880531 (rank: 2) | 99.988005 (rank: 30) | 0.0029033 (rank: 12) | 13009.6732246 (rank: 2) | 114.0599545 (rank: 38) | 113.8910 | 99.9891807 (rank: 35) | 0.0028948 (rank: 12) | 13012.048105 (rank: 2) | 114.0703647 (rank: 38) | 113.8700 | 99.9883727 (rank: 25) | 0.0029122 (rank: 12) | 13007.2785705 (rank: 2) | 114.0494567 (rank: 38) | 113.8805 | 99.9863519 (rank: 17) | 0.002865 (rank: 5) | 13009.670848 (rank: 2) | 114.0599441 (rank: 38) |
from Last Oervall | tbats | dy.yr | 1107360.000 | 113.9211118 (rank: 38) | 99.9886429 (rank: 34) | 0.0028657 (rank: 2) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9861341 (rank: 23) | 0.002866 (rank: 2) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.99081 (rank: 44) | 0.0028686 (rank: 2) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9872289 (rank: 23) | 0.0028559 (rank: 2) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | ts | mo.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.997698 (rank: 64) | 0.0029726 (rank: 21) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9955946 (rank: 59) | 0.0029629 (rank: 21) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961108 (rank: 54) | 0.0029588 (rank: 18) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9977861 (rank: 63) | 0.0029733 (rank: 21) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | ts | mo.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.9982575 (rank: 66) | 0.0035016 (rank: 55) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.9983686 (rank: 68) | 0.0034984 (rank: 55) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.998993 (rank: 68) | 0.0034914 (rank: 55) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9987561 (rank: 67) | 0.0034996 (rank: 55) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from Last Oervall | ts | qt.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959563 (rank: 61) | 0.0029554 (rank: 15) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9960047 (rank: 65) | 0.002956 (rank: 15) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9961693 (rank: 57) | 0.0029585 (rank: 15) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9960002 (rank: 59) | 0.0029556 (rank: 15) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | ts | qt.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.9987558 (rank: 69) | 0.0031508 (rank: 27) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.9987808 (rank: 71) | 0.0031501 (rank: 27) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.9989623 (rank: 67) | 0.0031547 (rank: 27) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9988458 (rank: 68) | 0.0031473 (rank: 27) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from Last Oervall | ts | wk.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 58) | 0.0030953 (rank: 24) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9942862 (rank: 56) | 0.0030773 (rank: 24) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.9968647 (rank: 63) | 0.0030863 (rank: 24) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.995752 (rank: 53) | 0.0030839 (rank: 24) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | ts | wk.7200 | 1116000.000 | 113.9359099 (rank: 54) | 99.9912623 (rank: 47) | 0.0028916 (rank: 7) | 13021.7754579 (rank: 54) | 114.1129943 (rank: 62) | 113.9465 | 99.9879751 (rank: 33) | 0.002885 (rank: 10) | 13024.1750398 (rank: 54) | 114.1235078 (rank: 62) | 113.9253 | 99.9921786 (rank: 50) | 0.002901 (rank: 10) | 13019.3639797 (rank: 54) | 114.1024276 (rank: 62) | 113.9359 | 99.9923293 (rank: 48) | 0.0029059 (rank: 10) | 13021.7759743 (rank: 54) | 114.1129965 (rank: 62) |
from Last Oervall | ts | yr.1440 | 1107360.000 | 113.9211118 (rank: 38) | 99.9959377 (rank: 55) | 0.0029555 (rank: 18) | 13018.6576187 (rank: 38) | 114.0993322 (rank: 50) | 113.9316 | 99.9959517 (rank: 62) | 0.0029561 (rank: 18) | 13021.0465939 (rank: 38) | 114.1098006 (rank: 50) | 113.9105 | 99.996185 (rank: 60) | 0.0029592 (rank: 21) | 13016.2484827 (rank: 38) | 114.0887746 (rank: 50) | 113.9211 | 99.9959783 (rank: 56) | 0.0029557 (rank: 18) | 13018.6550848 (rank: 38) | 114.0993211 (rank: 50) |
from Last Oervall | ts | yr.7200 | 1121760.000 | 113.963099 (rank: 68) | 99.998422 (rank: 67) | 0.0031494 (rank: 26) | 13027.908531 (rank: 68) | 114.1398639 (rank: 68) | 113.9737 | 99.9984653 (rank: 69) | 0.0031489 (rank: 26) | 13030.3134205 (rank: 68) | 114.1503982 (rank: 68) | 113.9525 | 99.9985694 (rank: 65) | 0.0031507 (rank: 26) | 13025.4911689 (rank: 68) | 114.1292739 (rank: 68) | 113.9631 | 99.9985045 (rank: 65) | 0.003146 (rank: 26) | 13027.9088161 (rank: 68) | 114.1398651 (rank: 68) |
from Last Daily | ts | mo.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.9988397 (rank: 70) | 0.0038131 (rank: 56) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9983353 (rank: 67) | 0.0038167 (rank: 56) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.9994053 (rank: 70) | 0.003796 (rank: 56) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9992266 (rank: 70) | 0.0038109 (rank: 56) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from Last Daily | ts | qt.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.9991336 (rank: 71) | 0.0034895 (rank: 54) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9991175 (rank: 72) | 0.0034921 (rank: 54) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.9993155 (rank: 69) | 0.0034847 (rank: 54) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9991324 (rank: 69) | 0.0034838 (rank: 54) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from Last Daily | ts | yr.7200 | 1199.743 | 113.9568368 (rank: 62) | 99.9985722 (rank: 68) | 0.0034894 (rank: 53) | 13026.629859 (rank: 62) | 113.9571533 (rank: 34) | 113.9686 | 99.9985696 (rank: 70) | 0.0034921 (rank: 53) | 13029.3024649 (rank: 62) | 113.9688827 (rank: 34) | 113.9453 | 99.9986931 (rank: 66) | 0.0034823 (rank: 53) | 13024.0175187 (rank: 62) | 113.9456627 (rank: 34) | 113.9570 | 99.9985581 (rank: 66) | 0.0034837 (rank: 53) | 13026.680885 (rank: 62) | 113.957357 (rank: 34) |
from Last Daily | tbats | dy.qt | 1198.442 | 113.9168659 (rank: 17) | 99.9827217 (rank: 6) | 0.0031822 (rank: 32) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9847327 (rank: 15) | 0.0031922 (rank: 32) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9837386 (rank: 12) | 0.0031997 (rank: 35) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9832649 (rank: 6) | 0.0031787 (rank: 35) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | tbats | dy.wk | 1198.442 | 113.9168659 (rank: 17) | 99.9830175 (rank: 9) | 0.0032321 (rank: 39) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9837571 (rank: 11) | 0.0031979 (rank: 35) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9814492 (rank: 3) | 0.0031972 (rank: 32) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9872821 (rank: 26) | 0.003283 (rank: 48) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | tbats | dy.yr | 1198.442 | 113.9168659 (rank: 17) | 99.9850262 (rank: 17) | 0.0031819 (rank: 29) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.983682 (rank: 8) | 0.0031809 (rank: 29) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9860155 (rank: 17) | 0.0031824 (rank: 29) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9834722 (rank: 12) | 0.0031677 (rank: 32) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | ts | mo.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9919173 (rank: 50) | 0.00327 (rank: 48) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913289 (rank: 44) | 0.003271 (rank: 48) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9898799 (rank: 31) | 0.0032548 (rank: 45) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9921135 (rank: 46) | 0.0032685 (rank: 45) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | ts | qt.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.9904949 (rank: 43) | 0.0032559 (rank: 42) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913755 (rank: 50) | 0.003256 (rank: 45) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899631 (rank: 34) | 0.0032544 (rank: 42) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906295 (rank: 41) | 0.0032536 (rank: 39) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | ts | wk.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.989367 (rank: 37) | 0.0033961 (rank: 51) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9899969 (rank: 39) | 0.0033679 (rank: 51) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9907161 (rank: 41) | 0.003378 (rank: 51) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9890199 (rank: 35) | 0.0033779 (rank: 51) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | ts | wk.7200 | 1200.000 | 113.9292249 (rank: 52) | 99.9870194 (rank: 22) | 0.003212 (rank: 37) | 13020.4113841 (rank: 52) | 113.9295413 (rank: 26) | 113.9409 | 99.9855629 (rank: 21) | 0.0032014 (rank: 40) | 13023.077857 (rank: 52) | 113.9412477 (rank: 26) | 113.9177 | 99.9861308 (rank: 19) | 0.0032244 (rank: 37) | 13017.8037415 (rank: 52) | 113.9180677 (rank: 26) | 113.9294 | 99.9884871 (rank: 32) | 0.0032165 (rank: 37) | 13020.4605834 (rank: 52) | 113.9297373 (rank: 26) |
from Last Daily | ts | yr.1440 | 1198.442 | 113.9168659 (rank: 17) | 99.990482 (rank: 40) | 0.003256 (rank: 45) | 13017.8077239 (rank: 17) | 113.9171835 (rank: 14) | 113.9285 | 99.9913327 (rank: 47) | 0.003256 (rank: 42) | 13020.4670959 (rank: 17) | 113.9288612 (rank: 14) | 113.9054 | 99.9899977 (rank: 37) | 0.003255 (rank: 48) | 13015.200758 (rank: 17) | 113.9057112 (rank: 14) | 113.9171 | 99.9906131 (rank: 38) | 0.0032538 (rank: 42) | 13017.8546962 (rank: 17) | 113.9173698 (rank: 14) |
from Last Daily | tbats | dy.wk.mo | 1196.332 | 113.8834162 (rank: 5) | 99.9849071 (rank: 14) | 0.0032018 (rank: 35) | 13010.4070779 (rank: 5) | 113.8837311 (rank: 2) | 113.8949 | 99.9863293 (rank: 26) | 0.0032013 (rank: 38) | 13013.0251767 (rank: 5) | 113.8952365 (rank: 2) | 113.8720 | 99.9831703 (rank: 9) | 0.0032375 (rank: 39) | 13007.8084865 (rank: 5) | 113.872291 (rank: 2) | 113.8835 | 99.9833065 (rank: 9) | 0.0031621 (rank: 29) | 13010.4185766 (rank: 5) | 113.8837664 (rank: 2) |
From the backtest, we concludes that high-frequency-trading 1 min per unit (ETS
:0.46 and auto.arima
:0.69) more accurate than interday-trading 1 day per unit.
Kindl refer to section Small Mistake
To take a non-seasonal example, consider the Google stock price. The following graph shows the 200 observations ending on 6 Dec 2013, along with forecasts of the next 40 days obtained from three different methods.
source : Scaled errors & Examples
There has an function in accuracy()
in tidyverts/fabletools
while I saved the dataset in actual price
and predicted price
, here I omit but will use in future.
High- and Low-Frequency Correlations in European Government Bond Spreads and Their Macroeconomic Drivers introduce… suggest… DCC-MIDAS etc. Due to heavily calculation, I will put it as referenc in another studies.
Below models :
fracdiff()
arfimax
Efficiency
There cost alot of time for couple models comparison.
# Test the efficiency
> dim(data_m1)
[1] 1324800 5
> microbenchmark(data_m1$index[1], tidyquant::FIRST(data_m1$index), tail(data_m1$index, 1), data_m1$index %>% .[1], data_m1$index %>% (tidyquant::FIRST), data_m1$index %>% tail(1))
Unit: microseconds
expr min lq mean median uq max neval
data_m1$index[1] 8.8 10.40 16.352 11.50 14.20 106.9 100
tidyquant::FIRST(data_m1$index) 34.4 41.25 140.854 46.30 65.15 7256.6 100
tail(data_m1$index, 1) 20.3 24.25 39.063 27.80 36.45 180.4 100
data_m1$index %>% .[1] 12.2 14.60 23.498 15.85 18.70 229.3 100
data_m1$index %>% (tidyquant::FIRST) 39.7 44.05 67.244 50.25 62.60 694.6 100
data_m1$index %>% tail(1) 25.0 30.60 64.955 36.40 57.65 613.7 100
# Test the efficiency
> system.time({
+ smp <- data_m1 %>%
+ tk_xts(silent = TRUE);
+ dt %<>% as_date;
+ smp <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))];
+
+ mts <- smp %>%
+ msts(seasonal.periods = c(1440, nrow(smp)))
+ })
user system elapsed
0.63 0.09 1.16
> system.time({
+ smp <- tk_xts(data_m1, silent = TRUE);
+ dt %<>% as_date;
+ smp <- smp[paste0(dt %m-% months(3) + seconds(59), '/', dt + seconds(59))];
+
+ mts <- msts(smp, seasonal.periods = c(1440, nrow(smp)))
+ })
user system elapsed
0.16 0.06 0.42
# Test the efficiency
> microbenchmark(
+ as_tibble(matrix(weekdays(unique(na.omit(data.table(data_m1))[weekdays(index) %in% c('Saturday', 'Sunday')]$index)), byrow = TRUE, ncol = 6)),
+ as_tibble(matrix(weekdays(as_date(data_m1$index))[weekdays(as_date(data_m1$index)) %in% c('Saturday', 'Sunday')], byrow = TRUE, ncol = 6))
+ )
Unit: seconds
expr
as_tibble(matrix(weekdays(unique(na.omit(data.table(data_m1))[weekdays(index) %in% c("Saturday", "Sunday")]$index)), byrow = TRUE, ncol = 6))
as_tibble(matrix(weekdays(as_date(data_m1$index))[weekdays(as_date(data_m1$index)) %in% c("Saturday", "Sunday")], byrow = TRUE, ncol = 6))
min lq mean median uq max neval
4.923539 5.102061 5.388813 5.368958 5.552245 6.816211 100
10.182849 10.652719 11.118986 11.026882 11.546361 13.484108 100
## https://stackoverflow.com/questions/7014387/whats-the-difference-between-1l-and-1
microbenchmark(seq(1L, 100000000L), seq(1, 100000000), seq(1L, 1e+08), seq(1, 1e+08L), seq(1L, 10L^8L), seq(1, 10^8))
## Unit: microseconds
## expr min lq mean median uq max neval
## seq(1L, 100000000L) 5.1 5.2 5.429 5.3 5.5 8.3 100
## seq(1, 1e+08) 5.1 5.2 6.068 5.3 5.6 71.2 100
## seq(1L, 1e+08) 5.1 5.2 5.537 5.3 5.5 15.2 100
## seq(1, 100000000L) 5.1 5.3 5.479 5.4 5.5 10.3 100
## seq(1L, 10L^8L) 5.4 5.6 5.769 5.7 5.8 9.1 100
## seq(1, 10^8) 5.5 5.6 5.891 5.7 5.8 19.0 100
if(!exists('seasonal_m1')) {
seasonal_m1 <- read_rds('data/fx/USDJPY/seasonal_m1.rds')}
## https://dtplyr.tidyverse.org for future use, otherwise need to recode and rerun.
test1 <- seasonal_m1 %>% lazy_dt()
test1 %<>% filter(index <= as_date('2017-12-31'))
test2 <- test1 %>% as.data.table()
#setkey(test2)
setkeyv(test2, c('index', 'Model', 'Period'))
## ---------------------------------------------
## data.table
microbenchmark(
test_data.table <- test2[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N,
open.mae = MAE(open, open.Point.Forecast, na.rm = TRUE),
open.mape = MAPE(open, open.Point.Forecast, na.rm = TRUE),
open.smape = SMAPE(open, open.Point.Forecast, na.rm = TRUE),
open.mse = MSE(open, open.Point.Forecast, na.rm = TRUE),
open.rmse = RMSE(open, open.Point.Forecast, na.rm = TRUE)),
by=.(Model, Period)]}][order(Model, Period), ],
## dtplyr & dplyr
test_dtplyr <- test1 %>%
#filter(index <= as_date('2017-12-31')) %>%
dplyr::mutate(
open.mae = MAE(open, open.Point.Forecast, na.rm = TRUE),
open.mape = MAPE(open, open.Point.Forecast, na.rm = TRUE),
open.smape = SMAPE(open, open.Point.Forecast, na.rm = TRUE),
open.mse = MSE(open, open.Point.Forecast, na.rm = TRUE),
open.rmse = RMSE(open, open.Point.Forecast, na.rm = TRUE)) %>%
group_by(Model, Period) %>%
summarise(
open.mae = MAE(open, open.Point.Forecast, na.rm = TRUE),
open.mape = MAPE(open, open.Point.Forecast, na.rm = TRUE),
open.smape = SMAPE(open, open.Point.Forecast, na.rm = TRUE),
open.mse = MSE(open, open.Point.Forecast, na.rm = TRUE),
open.rmse = RMSE(open, open.Point.Forecast, na.rm = TRUE)) %>%
as_tibble())
## output data.table
test_data.table
## output dtplyr
test_dtplyr
Small Mistake
Here I noticed that there have transactions in Saturday
and Sunday
as show below when I continue R&D after 2 years from 2018 How Do Orders Execute Over The Weekend?. It is not a big problem since this paper only compare the models and choose the best fit model for high-frequency-trading.
dt_data_m1 <- na.omit(data.table(data_m1))
rm(data_m1)
## date breakdown
dtb <- as_tibble(matrix(unique(as.character(as_date(dt_data_m1$index))), byrow = TRUE, ncol = 6)) %>% dplyr::mutate_if(is.character, as_date)
dtb %>%
dplyr::mutate(dif = as.numeric(V1 - lag(V1))) %>%
dplyr::filter(dif != 7)
## # A tibble: 4 x 7
## V1 V2 V3 V4 V5 V6 dif
## <date> <date> <date> <date> <date> <date> <dbl>
## 1 2016-12-27 2016-12-28 2016-12-29 2016-12-30 2016-12-31 2017-01-01 8
## 2 2017-01-09 2017-01-10 2017-01-11 2017-01-12 2017-01-13 2017-01-14 6
## 3 2017-12-26 2017-12-27 2017-12-28 2017-12-29 2017-12-30 2017-12-31 8
## 4 2018-01-08 2018-01-09 2018-01-10 2018-01-11 2018-01-12 2018-01-13 6
## weekdays breakdown
wkb <- dtb %>%
dplyr::mutate_if(is.Date, weekdays) %>% dplyr::mutate_if(is.character, as.factor)
wkb %>% kbl('html', caption = 'Comparison of Models (1 min summarised to 1 day per unit)', escape = FALSE) %>%
## https://www.w3schools.com/cssref/css_colors.asp
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'LightGray') %>%
column_spec(2, background = 'Gainsboro') %>%
column_spec(3, background = 'LightGray') %>%
column_spec(4, background = 'Gainsboro') %>%
column_spec(5, background = 'LightGray') %>%
column_spec(6, background = 'Gainsboro') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
kable_material(full_width = FALSE) %>% ##`full_width = FALSE` will auto adjust every single columns width to fit the table full width.
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
V1 | V2 | V3 | V4 | V5 | V6 |
---|---|---|---|---|---|
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday |
Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday |
Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
## built weekly weekdays matrix
##matrix(weekdays(unique(as_date(data_m1$index))), ncol = 6, byrow = TRUE)
## Due to the low precision and low accuracy, here I plot the graph and rerun the code to check the models.
if(!exists('seasonal_m1')) seasonal_m1 <- read_rds('data/fx/USDJPY/seasonal_m1.rds')
yr_2018 <- seasonal_m1[index > as_date('2017-12-31')]
saveRDS(yr_2018, 'data/fx/USDJPY/yr_2018.rds')
yr_2018 <- read_rds('data/fx/USDJPY/yr_2018.rds')
dy.qt_dy.yr_2018 <- yr_2018[Model == 'tbats' & Period %in% c('dy.qt', 'dy.yr')]
plt_s1 <- yr_2018[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N, open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
plt_s2 <- dy.qt_dy.yr_2018[, {
open = open
open.Point.Forecast = open.Point.Forecast
.SD[, .(.N, open.mape = MAPE(open, open.Point.Forecast),
open.smape = SMAPE(open, open.Point.Forecast),
open.mse = MSE(open, open.Point.Forecast),
open.rmse = RMSE(open, open.Point.Forecast)),
by={index=as_date(index)}]},
by=.(Model, Period)]
## ------------------------------------------
##modify dataset
yr_2018 %<>%
tidyr::unite(Model, Model:Period) %>%
data.table
prc <- unique(yr_2018[, .(index, open, high, low, close)])
prc <- prc[, Model := 'Market.Price'][]
yr_2018 <- yr_2018[, (c('open', 'high', 'low', 'close')) := NULL]
names(yr_2018) <- c('index', 'Model', 'open', 'high', 'low', 'close')
yr_2018 <- rbind(yr_2018, prc)
yr_2018 <- data.table(yr_2018)[order(index)]
rm(prc)
mDT <- yr_2018 %>% pivot_longer(!c(index, Model), names_to = 'Variable', values_to = 'Price')
mDT %<>%
tidyr::unite(Model, Model:Variable) %>%
data.table
## ------------------------------------------
plt_s1 %>%
kbl('html', caption = 'Data Sample', escape = FALSE) %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
Model | Period | index | N | open.mape | open.smape | open.mse | open.rmse |
---|---|---|---|---|---|---|---|
ts | mo.7200 | 2018-01-02 | 4317 | 99.69218 | 0.0033509 | 12644.15 | 112.4462 |
ts | mo.7200 | 2018-01-03 | 4320 | 99.85303 | 0.0025749 | 12617.14 | 112.3260 |
ts | mo.7200 | 2018-01-04 | 5759 | 100.18557 | 0.0021921 | 12696.53 | 112.6789 |
ts | mo.7200 | 2018-01-05 | 5760 | 100.44883 | 0.0044799 | 12781.03 | 113.0532 |
ts | mo.7200 | 2018-01-06 | 4321 | 100.49907 | 0.0049769 | 12783.02 | 113.0620 |
ts | mo.7200 | 2018-01-07 | 3 | 100.53915 | 0.0053752 | 12783.02 | 113.0620 |
ts | mo.7200 | 2018-01-08 | 5756 | 100.24866 | 0.0028816 | 12797.02 | 113.1239 |
ts | mo.7200 | 2018-01-09 | 5760 | 99.68027 | 0.0034349 | 12709.18 | 112.7350 |
ts | mo.7200 | 2018-01-10 | 5760 | 98.95405 | 0.0105255 | 12512.95 | 111.8613 |
ts | mo.7200 | 2018-01-11 | 7199 | 98.95124 | 0.0107446 | 12434.67 | 111.5109 |
ts | mo.7200 | 2018-01-12 | 7200 | 98.97947 | 0.0103263 | 12368.72 | 111.2147 |
ts | mo.7200 | 2018-01-13 | 5 | 98.80762 | 0.0120156 | 12326.11 | 111.0230 |
ts | mo.7200 | 2018-01-15 | 4317 | 99.40652 | 0.0059739 | 12249.50 | 110.6774 |
ts | mo.7200 | 2018-01-16 | 4320 | 99.78076 | 0.0033878 | 12255.80 | 110.7059 |
ts | mo.7200 | 2018-01-17 | 4320 | 100.15183 | 0.0033194 | 12260.34 | 110.7264 |
ts | mo.7200 | 2018-01-18 | 5759 | 100.42939 | 0.0045866 | 12361.74 | 111.1834 |
ts | mo.7200 | 2018-01-19 | 7199 | 99.92377 | 0.0032336 | 12269.66 | 110.7685 |
ts | mo.7200 | 2018-01-20 | 5 | 99.99704 | 0.0029962 | 12284.40 | 110.8350 |
ts | mo.7200 | 2018-01-22 | 4317 | 99.80679 | 0.0023135 | 12282.58 | 110.8268 |
ts | mo.7200 | 2018-01-23 | 4320 | 99.70035 | 0.0033063 | 12243.49 | 110.6503 |
ts | mo.7200 | 2018-01-24 | 4320 | 99.10448 | 0.0090032 | 12023.34 | 109.6510 |
ts | mo.7200 | 2018-01-25 | 5759 | 98.77341 | 0.0123797 | 11890.55 | 109.0438 |
ts | mo.7200 | 2018-01-26 | 7199 | 99.01172 | 0.0102060 | 11901.33 | 109.0932 |
ts | mo.7200 | 2018-01-27 | 5 | 98.58608 | 0.0142576 | 11800.26 | 108.6290 |
ts | mo.7200 | 2018-01-29 | 4317 | 99.79815 | 0.0027820 | 11848.14 | 108.8492 |
ts | mo.7200 | 2018-01-30 | 4320 | 99.81441 | 0.0023704 | 11832.26 | 108.7762 |
ts | mo.7200 | 2018-01-31 | 4320 | 100.31606 | 0.0032944 | 11863.86 | 108.9214 |
ts | mo.7200 | 2018-02-01 | 5759 | 100.62551 | 0.0062326 | 11975.00 | 109.4303 |
ts | mo.7200 | 2018-02-02 | 7199 | 100.87986 | 0.0087599 | 12072.04 | 109.8729 |
ts | mo.7200 | 2018-02-03 | 5 | 101.20941 | 0.0120185 | 12138.31 | 110.1740 |
ts | mo.7200 | 2018-02-05 | 4317 | 100.37998 | 0.0053669 | 12076.74 | 109.8942 |
ts | mo.7200 | 2018-02-06 | 4320 | 99.59028 | 0.0047887 | 11906.76 | 109.1181 |
ts | mo.7200 | 2018-02-07 | 4320 | 99.87434 | 0.0034967 | 11951.00 | 109.3206 |
ts | mo.7200 | 2018-02-08 | 5759 | 99.80500 | 0.0035983 | 11957.42 | 109.3500 |
ts | mo.7200 | 2018-02-09 | 7199 | 99.38069 | 0.0064725 | 11846.29 | 108.8407 |
ts | mo.7200 | 2018-02-10 | 5 | 99.34095 | 0.0066197 | 11836.57 | 108.7960 |
ts | mo.7200 | 2018-02-12 | 4317 | 99.78140 | 0.0024477 | 11810.06 | 108.6741 |
ts | mo.7200 | 2018-02-13 | 4320 | 99.36878 | 0.0064256 | 11665.00 | 108.0046 |
ts | mo.7200 | 2018-02-14 | 4320 | 99.05182 | 0.0095377 | 11510.96 | 107.2892 |
ts | mo.7200 | 2018-02-15 | 5759 | 98.45359 | 0.0156043 | 11342.69 | 106.5021 |
ts | mo.7200 | 2018-02-16 | 7199 | 98.38137 | 0.0163760 | 11254.57 | 106.0876 |
ts | mo.7200 | 2018-02-17 | 5 | 98.56006 | 0.0145400 | 11300.97 | 106.3060 |
ts | mo.7200 | 2018-02-19 | 4317 | 100.02394 | 0.0031356 | 11336.73 | 106.4741 |
ts | mo.7200 | 2018-02-20 | 4320 | 100.76306 | 0.0075991 | 11451.01 | 107.0094 |
ts | mo.7200 | 2018-02-21 | 4320 | 101.15246 | 0.0114499 | 11577.32 | 107.5980 |
ts | mo.7200 | 2018-02-22 | 5759 | 100.48533 | 0.0067573 | 11491.06 | 107.1964 |
ts | mo.7200 | 2018-02-23 | 7199 | 100.00842 | 0.0043787 | 11409.03 | 106.8131 |
ts | mo.7200 | 2018-02-24 | 5 | 99.96754 | 0.0040946 | 11425.69 | 106.8910 |
ts | mo.7200 | 2018-02-26 | 4317 | 99.51860 | 0.0048605 | 11402.75 | 106.7837 |
ts | mo.7200 | 2018-02-27 | 4320 | 100.15748 | 0.0021215 | 11469.21 | 107.0944 |
ts | mo.7200 | 2018-02-28 | 4320 | 99.92896 | 0.0020946 | 11458.55 | 107.0446 |
ts | mo.7200 | 2018-03-01 | 5759 | 99.84145 | 0.0028183 | 11389.51 | 106.7217 |
ts | mo.7200 | 2018-03-02 | 7199 | 99.11064 | 0.0089460 | 11185.22 | 105.7602 |
ts | mo.7200 | 2018-03-03 | 5 | 98.93004 | 0.0107589 | 11177.99 | 105.7260 |
ts | mo.7200 | 2018-03-05 | 4317 | 99.19608 | 0.0081343 | 11175.08 | 105.7123 |
ts | mo.7200 | 2018-03-06 | 4320 | 99.85820 | 0.0025748 | 11275.41 | 106.1858 |
ts | mo.7200 | 2018-03-07 | 4320 | 99.57246 | 0.0043863 | 11191.63 | 105.7905 |
ts | mo.7200 | 2018-03-08 | 5759 | 100.12962 | 0.0022901 | 11257.18 | 106.0999 |
ts | mo.7200 | 2018-03-09 | 7199 | 101.03205 | 0.0102634 | 11391.09 | 106.7290 |
ts | mo.7200 | 2018-03-10 | 5 | 100.99799 | 0.0099281 | 11412.33 | 106.8285 |
ts | mo.7200 | 2018-03-12 | 4317 | 100.09784 | 0.0031654 | 11363.59 | 106.6001 |
ts | mo.7200 | 2018-03-13 | 4320 | 99.87766 | 0.0035918 | 11385.84 | 106.7044 |
ts | mo.7200 | 2018-03-14 | 4320 | 99.60010 | 0.0040105 | 11331.94 | 106.4516 |
ts | mo.7200 | 2018-03-15 | 5759 | 99.54085 | 0.0047789 | 11251.41 | 106.0727 |
ts | mo.7200 | 2018-03-16 | 7199 | 99.70889 | 0.0032376 | 11234.03 | 105.9907 |
ts | mo.7200 | 2018-03-17 | 5 | 99.61637 | 0.0038460 | 11232.29 | 105.9825 |
ts | mo.7200 | 2018-03-19 | 4317 | 99.69937 | 0.0037906 | 11226.19 | 105.9537 |
ts | mo.7200 | 2018-03-20 | 4320 | 100.02451 | 0.0012733 | 11303.43 | 106.3176 |
ts | mo.7200 | 2018-03-21 | 4320 | 100.10981 | 0.0015701 | 11310.68 | 106.3517 |
ts | mo.7200 | 2018-03-22 | 5759 | 99.62017 | 0.0038069 | 11169.27 | 105.6848 |
ts | mo.7200 | 2018-03-23 | 7199 | 99.15184 | 0.0085221 | 11013.36 | 104.9445 |
ts | mo.7200 | 2018-03-24 | 5 | 98.89678 | 0.0110961 | 10969.63 | 104.7360 |
ts | mo.7200 | 2018-03-26 | 4317 | 99.53244 | 0.0061022 | 11032.31 | 105.0348 |
ts | mo.7200 | 2018-03-27 | 4320 | 100.21688 | 0.0023832 | 11153.99 | 105.6124 |
ts | mo.7200 | 2018-03-28 | 4320 | 100.60573 | 0.0061807 | 11218.95 | 105.9196 |
ts | mo.7200 | 2018-03-29 | 5759 | 101.08918 | 0.0108902 | 11356.52 | 106.5670 |
ts | mo.7200 | 2018-03-30 | 7199 | 100.80182 | 0.0080503 | 11291.22 | 106.2602 |
ts | mo.7200 | 2018-03-31 | 5 | 100.83534 | 0.0082997 | 11296.82 | 106.2865 |
ts | mo.7200 | 2018-04-02 | 4317 | 99.70625 | 0.0031776 | 11282.62 | 106.2197 |
ts | mo.7200 | 2018-04-03 | 4320 | 99.70408 | 0.0036456 | 11270.83 | 106.1641 |
ts | mo.7200 | 2018-04-04 | 4320 | 100.02158 | 0.0019733 | 11335.18 | 106.4668 |
ts | mo.7200 | 2018-04-05 | 5759 | 100.61976 | 0.0061834 | 11466.16 | 107.0802 |
ts | mo.7200 | 2018-04-06 | 7199 | 100.74732 | 0.0076132 | 11492.45 | 107.2028 |
ts | mo.7200 | 2018-04-07 | 5 | 100.54359 | 0.0058328 | 11435.74 | 106.9380 |
ts | mo.7200 | 2018-04-09 | 4317 | 100.05202 | 0.0026610 | 11445.22 | 106.9823 |
ts | mo.7200 | 2018-04-10 | 4320 | 99.84188 | 0.0019175 | 11457.75 | 107.0409 |
ts | mo.7200 | 2018-04-11 | 4320 | 99.76367 | 0.0024416 | 11444.89 | 106.9808 |
ts | mo.7200 | 2018-04-12 | 5759 | 99.87929 | 0.0027418 | 11456.53 | 107.0352 |
ts | mo.7200 | 2018-04-13 | 7199 | 100.53398 | 0.0053278 | 11550.19 | 107.4718 |
ts | mo.7200 | 2018-04-14 | 5 | 100.54561 | 0.0054394 | 11525.20 | 107.3555 |
ts | mo.7200 | 2018-04-16 | 4317 | 100.20812 | 0.0027718 | 11506.89 | 107.2702 |
ts | mo.7200 | 2018-04-17 | 4320 | 99.71752 | 0.0028660 | 11459.97 | 107.0513 |
ts | mo.7200 | 2018-04-18 | 4320 | 99.89020 | 0.0022472 | 11496.97 | 107.2239 |
ts | mo.7200 | 2018-04-19 | 5759 | 99.94789 | 0.0018547 | 11527.98 | 107.3684 |
ts | mo.7200 | 2018-04-20 | 7199 | 100.30527 | 0.0031867 | 11575.10 | 107.5876 |
ts | mo.7200 | 2018-04-21 | 5 | 100.50299 | 0.0050160 | 11586.80 | 107.6420 |
ts | mo.7200 | 2018-04-23 | 4317 | 100.79449 | 0.0079066 | 11692.38 | 108.1313 |
ts | mo.7200 | 2018-04-24 | 4320 | 100.95849 | 0.0095350 | 11842.73 | 108.8243 |
ts | mo.7200 | 2018-04-25 | 4320 | 100.74645 | 0.0074230 | 11904.94 | 109.1097 |
ts | mo.7200 | 2018-04-26 | 5759 | 100.51876 | 0.0057781 | 11949.99 | 109.3160 |
ts | mo.7200 | 2018-04-27 | 7199 | 100.33568 | 0.0044024 | 11931.93 | 109.2334 |
ts | mo.7200 | 2018-04-28 | 5 | 100.30945 | 0.0042753 | 11893.65 | 109.0580 |
ts | mo.7200 | 2018-04-30 | 4317 | 100.00545 | 0.0010687 | 11929.23 | 109.2210 |
ts | mo.7200 | 2018-05-01 | 4320 | 100.22518 | 0.0023154 | 11996.63 | 109.5292 |
ts | mo.7200 | 2018-05-02 | 4320 | 100.33234 | 0.0034722 | 12060.18 | 109.8189 |
ts | mo.7200 | 2018-05-03 | 5759 | 99.88038 | 0.0030659 | 11987.06 | 109.4854 |
ts | mo.7200 | 2018-05-04 | 7199 | 99.57009 | 0.0043669 | 11899.13 | 109.0831 |
ts | mo.7200 | 2018-05-05 | 5 | 99.74483 | 0.0026258 | 11897.68 | 109.0765 |
ts | mo.7200 | 2018-05-07 | 4317 | 99.74551 | 0.0028983 | 11911.40 | 109.1394 |
ts | mo.7200 | 2018-05-08 | 4320 | 99.83446 | 0.0016949 | 11891.41 | 109.0477 |
ts | mo.7200 | 2018-05-09 | 4320 | 100.28022 | 0.0032412 | 12003.25 | 109.5593 |
ts | mo.7200 | 2018-05-10 | 5759 | 100.36183 | 0.0036616 | 12023.21 | 109.6504 |
ts | mo.7200 | 2018-05-11 | 7199 | 100.13643 | 0.0018585 | 11958.04 | 109.3528 |
ts | mo.7200 | 2018-05-12 | 5 | 100.27414 | 0.0027364 | 11965.30 | 109.3860 |
ts | mo.7200 | 2018-05-14 | 4317 | 99.87098 | 0.0013687 | 11982.15 | 109.4630 |
ts | mo.7200 | 2018-05-15 | 4320 | 100.37901 | 0.0037801 | 12099.12 | 109.9960 |
ts | mo.7200 | 2018-05-16 | 4320 | 100.20323 | 0.0031699 | 12151.15 | 110.2323 |
ts | mo.7200 | 2018-05-17 | 5759 | 100.49927 | 0.0053436 | 12218.47 | 110.5372 |
ts | mo.7200 | 2018-05-18 | 7199 | 100.87699 | 0.0087244 | 12287.93 | 110.8509 |
ts | mo.7200 | 2018-05-19 | 5 | 100.86692 | 0.0086252 | 12266.23 | 110.7530 |
ts | mo.7200 | 2018-05-21 | 4317 | 100.43488 | 0.0043609 | 12351.42 | 111.1370 |
ts | mo.7200 | 2018-05-22 | 4320 | 99.97201 | 0.0012618 | 12312.95 | 110.9638 |
ts | mo.7200 | 2018-05-23 | 4320 | 99.15937 | 0.0084498 | 12158.59 | 110.2660 |
ts | mo.7200 | 2018-05-24 | 5759 | 98.77683 | 0.0123163 | 11998.39 | 109.5372 |
ts | mo.7200 | 2018-05-25 | 7199 | 99.11712 | 0.0093094 | 11973.30 | 109.4226 |
ts | mo.7200 | 2018-05-26 | 5 | 99.18127 | 0.0087474 | 11965.73 | 109.3880 |
ts | mo.7200 | 2018-05-28 | 4317 | 99.79250 | 0.0027135 | 11978.37 | 109.4457 |
ts | mo.7200 | 2018-05-29 | 4320 | 99.48738 | 0.0052185 | 11861.43 | 108.9102 |
ts | mo.7200 | 2018-05-30 | 4320 | 99.51039 | 0.0055673 | 11827.26 | 108.7532 |
ts | mo.7200 | 2018-05-31 | 5759 | 99.75318 | 0.0037544 | 11824.87 | 108.7422 |
ts | mo.7200 | 2018-06-01 | 7199 | 100.31268 | 0.0044103 | 11932.58 | 109.2364 |
ts | mo.7200 | 2018-06-02 | 5 | 100.57830 | 0.0057609 | 11994.41 | 109.5190 |
ts | mo.7200 | 2018-06-04 | 4317 | 100.47061 | 0.0048293 | 12014.08 | 109.6088 |
ts | mo.7200 | 2018-06-05 | 4320 | 100.43066 | 0.0043273 | 12054.61 | 109.7935 |
ts | mo.7200 | 2018-06-06 | 4320 | 100.42600 | 0.0042493 | 12102.82 | 110.0128 |
ts | mo.7200 | 2018-06-07 | 5759 | 100.34618 | 0.0037696 | 12089.86 | 109.9539 |
ts | mo.7200 | 2018-06-08 | 7199 | 99.81694 | 0.0026894 | 11999.72 | 109.5432 |
ts | mo.7200 | 2018-06-09 | 5 | 99.76346 | 0.0024197 | 11997.37 | 109.5325 |
ts | mo.7200 | 2018-06-11 | 4317 | 99.87214 | 0.0021372 | 12060.77 | 109.8215 |
ts | mo.7200 | 2018-06-12 | 4320 | 100.41000 | 0.0040932 | 12161.63 | 110.2798 |
ts | mo.7200 | 2018-06-13 | 4320 | 100.58952 | 0.0058746 | 12214.51 | 110.5193 |
ts | mo.7200 | 2018-06-14 | 5759 | 100.39028 | 0.0042818 | 12155.51 | 110.2520 |
ts | mo.7200 | 2018-06-15 | 7199 | 100.53078 | 0.0055734 | 12236.36 | 110.6181 |
ts | mo.7200 | 2018-06-16 | 5 | 100.54414 | 0.0055343 | 12246.85 | 110.6655 |
ts | mo.7200 | 2018-06-18 | 4317 | 99.85749 | 0.0024989 | 12212.85 | 110.5118 |
ts | mo.7200 | 2018-06-19 | 4320 | 99.34687 | 0.0065565 | 12092.22 | 109.9646 |
ts | mo.7200 | 2018-06-20 | 4320 | 99.69947 | 0.0034275 | 12131.88 | 110.1448 |
ts | mo.7200 | 2018-06-21 | 5759 | 100.12756 | 0.0029357 | 12174.11 | 110.3364 |
ts | mo.7200 | 2018-06-22 | 7199 | 99.79826 | 0.0024075 | 12102.67 | 110.0121 |
ts | mo.7200 | 2018-06-23 | 5 | 99.71554 | 0.0028506 | 12097.14 | 109.9870 |
ts | mo.7200 | 2018-06-25 | 4317 | 99.47461 | 0.0052694 | 12011.46 | 109.5968 |
ts | mo.7200 | 2018-06-26 | 4320 | 99.90309 | 0.0028360 | 12042.42 | 109.7380 |
ts | mo.7200 | 2018-06-27 | 4320 | 100.15215 | 0.0023632 | 12115.29 | 110.0695 |
ts | mo.7200 | 2018-06-28 | 5759 | 100.35844 | 0.0035906 | 12163.27 | 110.2872 |
ts | mo.7200 | 2018-06-29 | 7199 | 100.60293 | 0.0060079 | 12244.61 | 110.6554 |
ts | mo.7200 | 2018-06-30 | 5 | 100.59191 | 0.0058990 | 12251.83 | 110.6880 |
ts | mo.7200 | 2018-07-02 | 4317 | 100.37831 | 0.0037744 | 12277.07 | 110.8019 |
ts | mo.7200 | 2018-07-03 | 4320 | 100.19085 | 0.0023622 | 12275.38 | 110.7943 |
ts | mo.7200 | 2018-07-04 | 4320 | 99.69363 | 0.0030695 | 12203.16 | 110.4679 |
ts | mo.7200 | 2018-07-05 | 5759 | 99.85600 | 0.0018955 | 12224.79 | 110.5658 |
ts | mo.7200 | 2018-07-06 | 7199 | 99.90416 | 0.0013360 | 12229.69 | 110.5879 |
ts | mo.7200 | 2018-07-07 | 5 | 99.79926 | 0.0020101 | 12202.18 | 110.4635 |
ts | qt.7200 | 2018-01-02 | 4317 | 99.69709 | 0.0031399 | 12644.15 | 112.4462 |
ts | qt.7200 | 2018-01-03 | 4320 | 99.85243 | 0.0027199 | 12617.14 | 112.3260 |
ts | qt.7200 | 2018-01-04 | 5759 | 100.17970 | 0.0021923 | 12696.53 | 112.6789 |
ts | qt.7200 | 2018-01-05 | 5760 | 100.46967 | 0.0046826 | 12781.03 | 113.0532 |
ts | qt.7200 | 2018-01-06 | 4321 | 100.52065 | 0.0051913 | 12783.02 | 113.0620 |
ts | qt.7200 | 2018-01-07 | 3 | 100.55244 | 0.0055072 | 12783.02 | 113.0620 |
ts | qt.7200 | 2018-01-08 | 5756 | 100.23375 | 0.0027781 | 12797.02 | 113.1239 |
ts | qt.7200 | 2018-01-09 | 5760 | 99.69890 | 0.0032322 | 12709.18 | 112.7350 |
ts | qt.7200 | 2018-01-10 | 5760 | 99.00012 | 0.0100682 | 12512.95 | 111.8613 |
ts | qt.7200 | 2018-01-11 | 7199 | 98.95244 | 0.0107469 | 12434.67 | 111.5109 |
ts | qt.7200 | 2018-01-12 | 7200 | 98.96322 | 0.0104913 | 12368.72 | 111.2147 |
ts | qt.7200 | 2018-01-13 | 5 | 98.81137 | 0.0119784 | 12326.11 | 111.0230 |
ts | qt.7200 | 2018-01-15 | 4317 | 99.42308 | 0.0057921 | 12249.50 | 110.6774 |
ts | qt.7200 | 2018-01-16 | 4320 | 99.77803 | 0.0032260 | 12255.80 | 110.7059 |
ts | qt.7200 | 2018-01-17 | 4320 | 100.14918 | 0.0033945 | 12260.34 | 110.7264 |
ts | qt.7200 | 2018-01-18 | 5759 | 100.44566 | 0.0048459 | 12361.74 | 111.1834 |
ts | qt.7200 | 2018-01-19 | 7199 | 99.92555 | 0.0033892 | 12269.66 | 110.7685 |
ts | qt.7200 | 2018-01-20 | 5 | 99.98182 | 0.0032064 | 12284.40 | 110.8350 |
ts | qt.7200 | 2018-01-22 | 4317 | 99.76442 | 0.0027126 | 12282.58 | 110.8268 |
ts | qt.7200 | 2018-01-23 | 4320 | 99.70784 | 0.0032485 | 12243.49 | 110.6503 |
ts | qt.7200 | 2018-01-24 | 4320 | 99.10258 | 0.0090232 | 12023.34 | 109.6510 |
ts | qt.7200 | 2018-01-25 | 5759 | 98.82707 | 0.0118544 | 11890.55 | 109.0438 |
ts | qt.7200 | 2018-01-26 | 7199 | 99.02405 | 0.0101163 | 11901.33 | 109.0932 |
ts | qt.7200 | 2018-01-27 | 5 | 98.58654 | 0.0142531 | 11800.26 | 108.6290 |
ts | qt.7200 | 2018-01-29 | 4317 | 99.76769 | 0.0031829 | 11848.14 | 108.8492 |
ts | qt.7200 | 2018-01-30 | 4320 | 99.80881 | 0.0025683 | 11832.26 | 108.7762 |
ts | qt.7200 | 2018-01-31 | 4320 | 100.25583 | 0.0028097 | 11863.86 | 108.9214 |
ts | qt.7200 | 2018-02-01 | 5759 | 100.61467 | 0.0061250 | 11975.00 | 109.4303 |
ts | qt.7200 | 2018-02-02 | 7199 | 100.86393 | 0.0085996 | 12072.04 | 109.8729 |
ts | qt.7200 | 2018-02-03 | 5 | 101.15387 | 0.0114691 | 12138.31 | 110.1740 |
ts | qt.7200 | 2018-02-05 | 4317 | 100.31990 | 0.0051111 | 12076.74 | 109.8942 |
ts | qt.7200 | 2018-02-06 | 4320 | 99.58341 | 0.0047308 | 11906.76 | 109.1181 |
ts | qt.7200 | 2018-02-07 | 4320 | 99.81378 | 0.0035040 | 11951.00 | 109.3206 |
ts | qt.7200 | 2018-02-08 | 5759 | 99.83131 | 0.0035548 | 11957.42 | 109.3500 |
ts | qt.7200 | 2018-02-09 | 7199 | 99.42406 | 0.0060681 | 11846.29 | 108.8407 |
ts | qt.7200 | 2018-02-10 | 5 | 99.37883 | 0.0062386 | 11836.57 | 108.7960 |
ts | qt.7200 | 2018-02-12 | 4317 | 99.72464 | 0.0028502 | 11810.06 | 108.6741 |
ts | qt.7200 | 2018-02-13 | 4320 | 99.32599 | 0.0068226 | 11665.00 | 108.0046 |
ts | qt.7200 | 2018-02-14 | 4320 | 99.02703 | 0.0097886 | 11510.96 | 107.2892 |
ts | qt.7200 | 2018-02-15 | 5759 | 98.52365 | 0.0148942 | 11342.69 | 106.5021 |
ts | qt.7200 | 2018-02-16 | 7199 | 98.44881 | 0.0156988 | 11254.57 | 106.0876 |
ts | qt.7200 | 2018-02-17 | 5 | 98.63058 | 0.0138344 | 11300.97 | 106.3060 |
ts | qt.7200 | 2018-02-19 | 4317 | 100.00326 | 0.0032906 | 11336.73 | 106.4741 |
ts | qt.7200 | 2018-02-20 | 4320 | 100.69874 | 0.0069613 | 11451.01 | 107.0094 |
ts | qt.7200 | 2018-02-21 | 4320 | 101.02766 | 0.0102152 | 11577.32 | 107.5980 |
ts | qt.7200 | 2018-02-22 | 5759 | 100.33667 | 0.0061279 | 11491.06 | 107.1964 |
ts | qt.7200 | 2018-02-23 | 7199 | 99.94063 | 0.0043051 | 11409.03 | 106.8131 |
ts | qt.7200 | 2018-02-24 | 5 | 99.94433 | 0.0041025 | 11425.69 | 106.8910 |
ts | qt.7200 | 2018-02-26 | 4317 | 99.58791 | 0.0043586 | 11402.75 | 106.7837 |
ts | qt.7200 | 2018-02-27 | 4320 | 100.15614 | 0.0019222 | 11469.21 | 107.0944 |
ts | qt.7200 | 2018-02-28 | 4320 | 100.02216 | 0.0019654 | 11458.55 | 107.0446 |
ts | qt.7200 | 2018-03-01 | 5759 | 99.83049 | 0.0025290 | 11389.51 | 106.7217 |
ts | qt.7200 | 2018-03-02 | 7199 | 99.06608 | 0.0093900 | 11185.22 | 105.7602 |
ts | qt.7200 | 2018-03-03 | 5 | 98.97109 | 0.0103450 | 11177.99 | 105.7260 |
ts | qt.7200 | 2018-03-05 | 4317 | 99.42045 | 0.0061172 | 11175.08 | 105.7123 |
ts | qt.7200 | 2018-03-06 | 4320 | 100.03445 | 0.0021264 | 11275.41 | 106.1858 |
ts | qt.7200 | 2018-03-07 | 4320 | 99.78508 | 0.0026872 | 11191.63 | 105.7905 |
ts | qt.7200 | 2018-03-08 | 5759 | 100.12630 | 0.0018092 | 11257.18 | 106.0999 |
ts | qt.7200 | 2018-03-09 | 7199 | 100.79468 | 0.0079127 | 11391.09 | 106.7290 |
ts | qt.7200 | 2018-03-10 | 5 | 100.81372 | 0.0081026 | 11412.33 | 106.8285 |
ts | qt.7200 | 2018-03-12 | 4317 | 100.18267 | 0.0034890 | 11363.59 | 106.6001 |
ts | qt.7200 | 2018-03-13 | 4320 | 100.10283 | 0.0030209 | 11385.84 | 106.7044 |
ts | qt.7200 | 2018-03-14 | 4320 | 99.85316 | 0.0020340 | 11331.94 | 106.4516 |
ts | qt.7200 | 2018-03-15 | 5759 | 99.58752 | 0.0042345 | 11251.41 | 106.0727 |
ts | qt.7200 | 2018-03-16 | 7199 | 99.59681 | 0.0041366 | 11234.03 | 105.9907 |
ts | qt.7200 | 2018-03-17 | 5 | 99.51419 | 0.0048713 | 11232.29 | 105.9825 |
ts | qt.7200 | 2018-03-19 | 4317 | 99.68920 | 0.0033754 | 11226.19 | 105.9537 |
ts | qt.7200 | 2018-03-20 | 4320 | 100.07390 | 0.0019604 | 11303.43 | 106.3176 |
ts | qt.7200 | 2018-03-21 | 4320 | 100.17271 | 0.0021275 | 11310.68 | 106.3517 |
ts | qt.7200 | 2018-03-22 | 5759 | 99.64281 | 0.0035848 | 11169.27 | 105.6848 |
ts | qt.7200 | 2018-03-23 | 7199 | 99.13825 | 0.0086589 | 11013.36 | 104.9445 |
ts | qt.7200 | 2018-03-24 | 5 | 98.86471 | 0.0114206 | 10969.63 | 104.7360 |
ts | qt.7200 | 2018-03-26 | 4317 | 99.55671 | 0.0058143 | 11032.31 | 105.0348 |
ts | qt.7200 | 2018-03-27 | 4320 | 100.28985 | 0.0030444 | 11153.99 | 105.6124 |
ts | qt.7200 | 2018-03-28 | 4320 | 100.66835 | 0.0067838 | 11218.95 | 105.9196 |
ts | qt.7200 | 2018-03-29 | 5759 | 101.07874 | 0.0108697 | 11356.52 | 106.5670 |
ts | qt.7200 | 2018-03-30 | 7199 | 100.73952 | 0.0082007 | 11291.22 | 106.2602 |
ts | qt.7200 | 2018-03-31 | 5 | 100.71226 | 0.0079985 | 11296.82 | 106.2865 |
ts | qt.7200 | 2018-04-02 | 4317 | 99.64731 | 0.0036608 | 11282.62 | 106.2197 |
ts | qt.7200 | 2018-04-03 | 4320 | 99.73960 | 0.0034310 | 11270.83 | 106.1641 |
ts | qt.7200 | 2018-04-04 | 4320 | 100.03043 | 0.0019659 | 11335.18 | 106.4668 |
ts | qt.7200 | 2018-04-05 | 5759 | 100.64503 | 0.0064236 | 11466.16 | 107.0802 |
ts | qt.7200 | 2018-04-06 | 7199 | 100.78120 | 0.0081172 | 11492.45 | 107.2028 |
ts | qt.7200 | 2018-04-07 | 5 | 100.50100 | 0.0061705 | 11435.74 | 106.9380 |
ts | qt.7200 | 2018-04-09 | 4317 | 99.94762 | 0.0030721 | 11445.22 | 106.9823 |
ts | qt.7200 | 2018-04-10 | 4320 | 99.82469 | 0.0022822 | 11457.75 | 107.0409 |
ts | qt.7200 | 2018-04-11 | 4320 | 99.84968 | 0.0017980 | 11444.89 | 106.9808 |
ts | qt.7200 | 2018-04-12 | 5759 | 100.01985 | 0.0023943 | 11456.53 | 107.0352 |
ts | qt.7200 | 2018-04-13 | 7199 | 100.56967 | 0.0056776 | 11550.19 | 107.4718 |
ts | qt.7200 | 2018-04-14 | 5 | 100.48234 | 0.0048098 | 11525.20 | 107.3555 |
ts | qt.7200 | 2018-04-16 | 4317 | 100.12923 | 0.0025859 | 11506.89 | 107.2702 |
ts | qt.7200 | 2018-04-17 | 4320 | 99.66144 | 0.0033948 | 11459.97 | 107.0513 |
ts | qt.7200 | 2018-04-18 | 4320 | 99.93273 | 0.0022202 | 11496.97 | 107.2239 |
ts | qt.7200 | 2018-04-19 | 5759 | 100.10544 | 0.0020279 | 11527.98 | 107.3684 |
ts | qt.7200 | 2018-04-20 | 7199 | 100.42088 | 0.0042329 | 11575.10 | 107.5876 |
ts | qt.7200 | 2018-04-21 | 5 | 100.52146 | 0.0051994 | 11586.80 | 107.6420 |
ts | qt.7200 | 2018-04-23 | 4317 | 100.71324 | 0.0071008 | 11692.38 | 108.1313 |
ts | qt.7200 | 2018-04-24 | 4320 | 100.80531 | 0.0081329 | 11842.73 | 108.8243 |
ts | qt.7200 | 2018-04-25 | 4320 | 100.62398 | 0.0062107 | 11904.94 | 109.1097 |
ts | qt.7200 | 2018-04-26 | 5759 | 100.59479 | 0.0061126 | 11949.99 | 109.3160 |
ts | qt.7200 | 2018-04-27 | 7199 | 100.49809 | 0.0051897 | 11931.93 | 109.2334 |
ts | qt.7200 | 2018-04-28 | 5 | 100.40447 | 0.0046125 | 11893.65 | 109.0580 |
ts | qt.7200 | 2018-04-30 | 4317 | 99.95184 | 0.0012239 | 11929.23 | 109.2210 |
ts | qt.7200 | 2018-05-01 | 4320 | 100.14001 | 0.0016989 | 11996.63 | 109.5292 |
ts | qt.7200 | 2018-05-02 | 4320 | 100.24526 | 0.0027104 | 12060.18 | 109.8189 |
ts | qt.7200 | 2018-05-03 | 5759 | 99.87409 | 0.0026097 | 11987.06 | 109.4854 |
ts | qt.7200 | 2018-05-04 | 7199 | 99.69013 | 0.0032091 | 11899.13 | 109.0831 |
ts | qt.7200 | 2018-05-05 | 5 | 99.79840 | 0.0023116 | 11897.68 | 109.0765 |
ts | qt.7200 | 2018-05-07 | 4317 | 99.77499 | 0.0026822 | 11911.40 | 109.1394 |
ts | qt.7200 | 2018-05-08 | 4320 | 99.81576 | 0.0018807 | 11891.41 | 109.0477 |
ts | qt.7200 | 2018-05-09 | 4320 | 100.28318 | 0.0032714 | 12003.25 | 109.5593 |
ts | qt.7200 | 2018-05-10 | 5759 | 100.29048 | 0.0030715 | 12023.21 | 109.6504 |
ts | qt.7200 | 2018-05-11 | 7199 | 100.13076 | 0.0017270 | 11958.04 | 109.3528 |
ts | qt.7200 | 2018-05-12 | 5 | 100.26896 | 0.0026850 | 11965.30 | 109.3860 |
ts | qt.7200 | 2018-05-14 | 4317 | 99.95499 | 0.0010189 | 11982.15 | 109.4630 |
ts | qt.7200 | 2018-05-15 | 4320 | 100.38613 | 0.0038515 | 12099.12 | 109.9960 |
ts | qt.7200 | 2018-05-16 | 4320 | 100.25429 | 0.0033181 | 12151.15 | 110.2323 |
ts | qt.7200 | 2018-05-17 | 5759 | 100.45613 | 0.0048530 | 12218.47 | 110.5372 |
ts | qt.7200 | 2018-05-18 | 7199 | 100.76338 | 0.0075980 | 12287.93 | 110.8509 |
ts | qt.7200 | 2018-05-19 | 5 | 100.77711 | 0.0077347 | 12266.23 | 110.7530 |
ts | qt.7200 | 2018-05-21 | 4317 | 100.45353 | 0.0045217 | 12351.42 | 111.1370 |
ts | qt.7200 | 2018-05-22 | 4320 | 100.00090 | 0.0013130 | 12312.95 | 110.9638 |
ts | qt.7200 | 2018-05-23 | 4320 | 99.24936 | 0.0075417 | 12158.59 | 110.2660 |
ts | qt.7200 | 2018-05-24 | 5759 | 98.81404 | 0.0119402 | 11998.39 | 109.5372 |
ts | qt.7200 | 2018-05-25 | 7199 | 99.10279 | 0.0096347 | 11973.30 | 109.4226 |
ts | qt.7200 | 2018-05-26 | 5 | 99.18536 | 0.0090480 | 11965.73 | 109.3880 |
ts | qt.7200 | 2018-05-28 | 4317 | 99.82551 | 0.0024779 | 11978.37 | 109.4457 |
ts | qt.7200 | 2018-05-29 | 4320 | 99.50852 | 0.0049951 | 11861.43 | 108.9102 |
ts | qt.7200 | 2018-05-30 | 4320 | 99.52110 | 0.0053635 | 11827.26 | 108.7532 |
ts | qt.7200 | 2018-05-31 | 5759 | 99.67012 | 0.0039198 | 11824.87 | 108.7422 |
ts | qt.7200 | 2018-06-01 | 7199 | 100.25192 | 0.0042382 | 11932.58 | 109.2364 |
ts | qt.7200 | 2018-06-02 | 5 | 100.59006 | 0.0058775 | 11994.41 | 109.5190 |
ts | qt.7200 | 2018-06-04 | 4317 | 100.48637 | 0.0049631 | 12014.08 | 109.6088 |
ts | qt.7200 | 2018-06-05 | 4320 | 100.37880 | 0.0039604 | 12054.61 | 109.7935 |
ts | qt.7200 | 2018-06-06 | 4320 | 100.29344 | 0.0029291 | 12102.82 | 110.0128 |
ts | qt.7200 | 2018-06-07 | 5759 | 100.20327 | 0.0024602 | 12089.86 | 109.9539 |
ts | qt.7200 | 2018-06-08 | 7199 | 99.82277 | 0.0022453 | 11999.72 | 109.5432 |
ts | qt.7200 | 2018-06-09 | 5 | 99.84633 | 0.0015882 | 11997.37 | 109.5325 |
ts | qt.7200 | 2018-06-11 | 4317 | 99.92250 | 0.0021802 | 12060.77 | 109.8215 |
ts | qt.7200 | 2018-06-12 | 4320 | 100.41388 | 0.0041297 | 12161.63 | 110.2798 |
ts | qt.7200 | 2018-06-13 | 4320 | 100.46100 | 0.0046082 | 12214.51 | 110.5193 |
ts | qt.7200 | 2018-06-14 | 5759 | 100.24281 | 0.0031705 | 12155.51 | 110.2520 |
ts | qt.7200 | 2018-06-15 | 7199 | 100.51047 | 0.0052462 | 12236.36 | 110.6181 |
ts | qt.7200 | 2018-06-16 | 5 | 100.58121 | 0.0057901 | 12246.85 | 110.6655 |
ts | qt.7200 | 2018-06-18 | 4317 | 99.88359 | 0.0023974 | 12212.85 | 110.5118 |
ts | qt.7200 | 2018-06-19 | 4320 | 99.34543 | 0.0065743 | 12092.22 | 109.9646 |
ts | qt.7200 | 2018-06-20 | 4320 | 99.66995 | 0.0037448 | 12131.88 | 110.1448 |
ts | qt.7200 | 2018-06-21 | 5759 | 100.02273 | 0.0028325 | 12174.11 | 110.3364 |
ts | qt.7200 | 2018-06-22 | 7199 | 99.79454 | 0.0024985 | 12102.67 | 110.0121 |
ts | qt.7200 | 2018-06-23 | 5 | 99.78144 | 0.0024194 | 12097.14 | 109.9870 |
ts | qt.7200 | 2018-06-25 | 4317 | 99.46753 | 0.0053405 | 12011.46 | 109.5968 |
ts | qt.7200 | 2018-06-26 | 4320 | 99.82303 | 0.0027089 | 12042.42 | 109.7380 |
ts | qt.7200 | 2018-06-27 | 4320 | 100.10962 | 0.0021201 | 12115.29 | 110.0695 |
ts | qt.7200 | 2018-06-28 | 5759 | 100.35146 | 0.0035300 | 12163.27 | 110.2872 |
ts | qt.7200 | 2018-06-29 | 7199 | 100.60656 | 0.0060515 | 12244.61 | 110.6554 |
ts | qt.7200 | 2018-06-30 | 5 | 100.62822 | 0.0062593 | 12251.83 | 110.6880 |
ts | qt.7200 | 2018-07-02 | 4317 | 100.28749 | 0.0028838 | 12277.07 | 110.8019 |
ts | qt.7200 | 2018-07-03 | 4320 | 100.11684 | 0.0018628 | 12275.38 | 110.7943 |
ts | qt.7200 | 2018-07-04 | 4320 | 99.74075 | 0.0025968 | 12203.16 | 110.4679 |
ts | qt.7200 | 2018-07-05 | 5759 | 99.95833 | 0.0014685 | 12224.79 | 110.5658 |
ts | qt.7200 | 2018-07-06 | 7199 | 99.96261 | 0.0011957 | 12229.69 | 110.5879 |
ts | qt.7200 | 2018-07-07 | 5 | 99.84297 | 0.0016745 | 12202.18 | 110.4635 |
ts | wk.7200 | 2018-01-02 | 4317 | 99.73595 | 0.0029020 | 12644.15 | 112.4462 |
ts | wk.7200 | 2018-01-03 | 4320 | 99.68579 | 0.0031473 | 12617.14 | 112.3260 |
ts | wk.7200 | 2018-01-04 | 5759 | 99.99898 | 0.0007262 | 12696.53 | 112.6789 |
ts | wk.7200 | 2018-01-05 | 5760 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
ts | wk.7200 | 2018-01-06 | 4321 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
ts | wk.7200 | 2018-01-07 | 3 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
ts | wk.7200 | 2018-01-08 | 5756 | 100.40661 | 0.0040576 | 12797.02 | 113.1239 |
ts | wk.7200 | 2018-01-09 | 5760 | 99.96713 | 0.0018528 | 12709.18 | 112.7350 |
ts | wk.7200 | 2018-01-10 | 5760 | 99.17211 | 0.0083686 | 12512.95 | 111.8613 |
ts | wk.7200 | 2018-01-11 | 7199 | 99.12020 | 0.0093169 | 12434.67 | 111.5109 |
ts | wk.7200 | 2018-01-12 | 7200 | 99.08680 | 0.0093285 | 12368.72 | 111.2147 |
ts | wk.7200 | 2018-01-13 | 5 | 98.93106 | 0.0107685 | 12326.11 | 111.0230 |
ts | wk.7200 | 2018-01-15 | 4317 | 99.49541 | 0.0051020 | 12249.50 | 110.6774 |
ts | wk.7200 | 2018-01-16 | 4320 | 99.78970 | 0.0032257 | 12255.80 | 110.7059 |
ts | wk.7200 | 2018-01-17 | 4320 | 100.04874 | 0.0025740 | 12260.34 | 110.7264 |
ts | wk.7200 | 2018-01-18 | 5759 | 100.32194 | 0.0038357 | 12361.74 | 111.1834 |
ts | wk.7200 | 2018-01-19 | 7199 | 99.89672 | 0.0030106 | 12269.66 | 110.7685 |
ts | wk.7200 | 2018-01-20 | 5 | 99.95678 | 0.0028765 | 12284.40 | 110.8350 |
ts | wk.7200 | 2018-01-22 | 4317 | 99.77330 | 0.0025667 | 12282.58 | 110.8268 |
ts | wk.7200 | 2018-01-23 | 4320 | 99.72480 | 0.0030762 | 12243.49 | 110.6503 |
ts | wk.7200 | 2018-01-24 | 4320 | 99.06256 | 0.0094291 | 12023.34 | 109.6510 |
ts | wk.7200 | 2018-01-25 | 5759 | 98.84401 | 0.0117655 | 11890.55 | 109.0438 |
ts | wk.7200 | 2018-01-26 | 7199 | 99.05162 | 0.0100564 | 11901.33 | 109.0932 |
ts | wk.7200 | 2018-01-27 | 5 | 98.63088 | 0.0138059 | 11800.26 | 108.6290 |
ts | wk.7200 | 2018-01-29 | 4317 | 99.77978 | 0.0035690 | 11848.14 | 108.8492 |
ts | wk.7200 | 2018-01-30 | 4320 | 99.79572 | 0.0030590 | 11832.26 | 108.7762 |
ts | wk.7200 | 2018-01-31 | 4320 | 100.12243 | 0.0019788 | 11863.86 | 108.9214 |
ts | wk.7200 | 2018-02-01 | 5759 | 100.49552 | 0.0049472 | 11975.00 | 109.4303 |
ts | wk.7200 | 2018-02-02 | 7199 | 100.80824 | 0.0080463 | 12072.04 | 109.8729 |
ts | wk.7200 | 2018-02-03 | 5 | 101.08494 | 0.0107876 | 12138.31 | 110.1740 |
ts | wk.7200 | 2018-02-05 | 4317 | 100.27853 | 0.0045695 | 12076.74 | 109.8942 |
ts | wk.7200 | 2018-02-06 | 4320 | 99.60784 | 0.0048055 | 11906.76 | 109.1181 |
ts | wk.7200 | 2018-02-07 | 4320 | 99.74294 | 0.0041547 | 11951.00 | 109.3206 |
ts | wk.7200 | 2018-02-08 | 5759 | 99.83269 | 0.0039843 | 11957.42 | 109.3500 |
ts | wk.7200 | 2018-02-09 | 7199 | 99.51192 | 0.0055244 | 11846.29 | 108.8407 |
ts | wk.7200 | 2018-02-10 | 5 | 99.47139 | 0.0054995 | 11836.57 | 108.7960 |
ts | wk.7200 | 2018-02-12 | 4317 | 99.74271 | 0.0026431 | 11810.06 | 108.6741 |
ts | wk.7200 | 2018-02-13 | 4320 | 99.32926 | 0.0067965 | 11665.00 | 108.0046 |
ts | wk.7200 | 2018-02-14 | 4320 | 98.95202 | 0.0105498 | 11510.96 | 107.2892 |
ts | wk.7200 | 2018-02-15 | 5759 | 98.55090 | 0.0146205 | 11342.69 | 106.5021 |
ts | wk.7200 | 2018-02-16 | 7199 | 98.52487 | 0.0150885 | 11254.57 | 106.0876 |
ts | wk.7200 | 2018-02-17 | 5 | 98.72807 | 0.0134879 | 11300.97 | 106.3060 |
ts | wk.7200 | 2018-02-19 | 4317 | 99.99205 | 0.0033642 | 11336.73 | 106.4741 |
ts | wk.7200 | 2018-02-20 | 4320 | 100.62531 | 0.0062331 | 11451.01 | 107.0094 |
ts | wk.7200 | 2018-02-21 | 4320 | 100.80366 | 0.0080029 | 11577.32 | 107.5980 |
ts | wk.7200 | 2018-02-22 | 5759 | 100.18591 | 0.0054586 | 11491.06 | 107.1964 |
ts | wk.7200 | 2018-02-23 | 7199 | 99.87337 | 0.0043349 | 11409.03 | 106.8131 |
ts | wk.7200 | 2018-02-24 | 5 | 99.94632 | 0.0043771 | 11425.69 | 106.8910 |
ts | wk.7200 | 2018-02-26 | 4317 | 99.66902 | 0.0042105 | 11402.75 | 106.7837 |
ts | wk.7200 | 2018-02-27 | 4320 | 100.22200 | 0.0023124 | 11469.21 | 107.0944 |
ts | wk.7200 | 2018-02-28 | 4320 | 99.99535 | 0.0024757 | 11458.55 | 107.0446 |
ts | wk.7200 | 2018-03-01 | 5759 | 99.78055 | 0.0027681 | 11389.51 | 106.7217 |
ts | wk.7200 | 2018-03-02 | 7199 | 99.01653 | 0.0098976 | 11185.22 | 105.7602 |
ts | wk.7200 | 2018-03-03 | 5 | 98.98495 | 0.0102079 | 11177.99 | 105.7260 |
ts | wk.7200 | 2018-03-05 | 4317 | 99.53133 | 0.0053556 | 11175.08 | 105.7123 |
ts | wk.7200 | 2018-03-06 | 4320 | 100.12220 | 0.0021583 | 11275.41 | 106.1858 |
ts | wk.7200 | 2018-03-07 | 4320 | 99.77854 | 0.0028919 | 11191.63 | 105.7905 |
ts | wk.7200 | 2018-03-08 | 5759 | 100.05850 | 0.0014625 | 11257.18 | 106.0999 |
ts | wk.7200 | 2018-03-09 | 7199 | 100.61732 | 0.0061549 | 11391.09 | 106.7290 |
ts | wk.7200 | 2018-03-10 | 5 | 100.71119 | 0.0070852 | 11412.33 | 106.8285 |
ts | wk.7200 | 2018-03-12 | 4317 | 100.21279 | 0.0036149 | 11363.59 | 106.6001 |
ts | wk.7200 | 2018-03-13 | 4320 | 100.20215 | 0.0032979 | 11385.84 | 106.7044 |
ts | wk.7200 | 2018-03-14 | 4320 | 99.85325 | 0.0019809 | 11331.94 | 106.4516 |
ts | wk.7200 | 2018-03-15 | 5759 | 99.56437 | 0.0043751 | 11251.41 | 106.0727 |
ts | wk.7200 | 2018-03-16 | 7199 | 99.52342 | 0.0047845 | 11234.03 | 105.9907 |
ts | wk.7200 | 2018-03-17 | 5 | 99.51591 | 0.0048542 | 11232.29 | 105.9825 |
ts | wk.7200 | 2018-03-19 | 4317 | 99.75276 | 0.0027815 | 11226.19 | 105.9537 |
ts | wk.7200 | 2018-03-20 | 4320 | 100.16658 | 0.0022410 | 11303.43 | 106.3176 |
ts | wk.7200 | 2018-03-21 | 4320 | 100.13934 | 0.0025950 | 11310.68 | 106.3517 |
ts | wk.7200 | 2018-03-22 | 5759 | 99.54778 | 0.0045670 | 11169.27 | 105.6848 |
ts | wk.7200 | 2018-03-23 | 7199 | 99.01627 | 0.0098977 | 11013.36 | 104.9445 |
ts | wk.7200 | 2018-03-24 | 5 | 98.81970 | 0.0118803 | 10969.63 | 104.7360 |
ts | wk.7200 | 2018-03-26 | 4317 | 99.69824 | 0.0050090 | 11032.31 | 105.0348 |
ts | wk.7200 | 2018-03-27 | 4320 | 100.44844 | 0.0044786 | 11153.99 | 105.6124 |
ts | wk.7200 | 2018-03-28 | 4320 | 100.72115 | 0.0071894 | 11218.95 | 105.9196 |
ts | wk.7200 | 2018-03-29 | 5759 | 100.93683 | 0.0106383 | 11356.52 | 106.5670 |
ts | wk.7200 | 2018-03-30 | 7199 | 100.48493 | 0.0077002 | 11291.22 | 106.2602 |
ts | wk.7200 | 2018-03-31 | 5 | 100.50979 | 0.0077226 | 11296.82 | 106.2865 |
ts | wk.7200 | 2018-04-02 | 4317 | 99.71560 | 0.0030186 | 11282.62 | 106.2197 |
ts | wk.7200 | 2018-04-03 | 4320 | 99.96283 | 0.0028106 | 11270.83 | 106.1641 |
ts | wk.7200 | 2018-04-04 | 4320 | 100.19212 | 0.0031160 | 11335.18 | 106.4668 |
ts | wk.7200 | 2018-04-05 | 5759 | 100.64725 | 0.0064563 | 11466.16 | 107.0802 |
ts | wk.7200 | 2018-04-06 | 7199 | 100.57657 | 0.0064269 | 11492.45 | 107.2028 |
ts | wk.7200 | 2018-04-07 | 5 | 100.32814 | 0.0049267 | 11435.74 | 106.9380 |
ts | wk.7200 | 2018-04-09 | 4317 | 99.95258 | 0.0022032 | 11445.22 | 106.9823 |
ts | wk.7200 | 2018-04-10 | 4320 | 100.00928 | 0.0025113 | 11457.75 | 107.0409 |
ts | wk.7200 | 2018-04-11 | 4320 | 100.00911 | 0.0017514 | 11444.89 | 106.9808 |
ts | wk.7200 | 2018-04-12 | 5759 | 100.10178 | 0.0021031 | 11456.53 | 107.0352 |
ts | wk.7200 | 2018-04-13 | 7199 | 100.43632 | 0.0043735 | 11550.19 | 107.4718 |
ts | wk.7200 | 2018-04-14 | 5 | 100.32767 | 0.0032692 | 11525.20 | 107.3555 |
ts | wk.7200 | 2018-04-16 | 4317 | 100.10687 | 0.0022862 | 11506.89 | 107.2702 |
ts | wk.7200 | 2018-04-17 | 4320 | 99.80105 | 0.0020176 | 11459.97 | 107.0513 |
ts | wk.7200 | 2018-04-18 | 4320 | 100.06004 | 0.0014952 | 11496.97 | 107.2239 |
ts | wk.7200 | 2018-04-19 | 5759 | 100.17682 | 0.0018722 | 11527.98 | 107.3684 |
ts | wk.7200 | 2018-04-20 | 7199 | 100.34597 | 0.0034526 | 11575.10 | 107.5876 |
ts | wk.7200 | 2018-04-21 | 5 | 100.39670 | 0.0039583 | 11586.80 | 107.6420 |
ts | wk.7200 | 2018-04-23 | 4317 | 100.66588 | 0.0066302 | 11692.38 | 108.1313 |
ts | wk.7200 | 2018-04-24 | 4320 | 100.85507 | 0.0085284 | 11842.73 | 108.8243 |
ts | wk.7200 | 2018-04-25 | 4320 | 100.61202 | 0.0061074 | 11904.94 | 109.1097 |
ts | wk.7200 | 2018-04-26 | 5759 | 100.43550 | 0.0063998 | 11949.99 | 109.3160 |
ts | wk.7200 | 2018-04-27 | 7199 | 100.11891 | 0.0067061 | 11931.93 | 109.2334 |
ts | wk.7200 | 2018-04-28 | 5 | 99.88049 | 0.0077598 | 11893.65 | 109.0580 |
ts | wk.7200 | 2018-04-30 | 4317 | 99.30357 | 0.0081280 | 11929.23 | 109.2210 |
ts | wk.7200 | 2018-05-01 | 4320 | 100.26979 | 0.0027886 | 11996.63 | 109.5292 |
ts | wk.7200 | 2018-05-02 | 4320 | 100.36386 | 0.0039844 | 12060.18 | 109.8189 |
ts | wk.7200 | 2018-05-03 | 5759 | 99.96389 | 0.0032506 | 11987.06 | 109.4854 |
ts | wk.7200 | 2018-05-04 | 7199 | 99.65722 | 0.0036272 | 11899.13 | 109.0831 |
ts | wk.7200 | 2018-05-05 | 5 | 99.65123 | 0.0035662 | 11897.68 | 109.0765 |
ts | wk.7200 | 2018-05-07 | 4317 | 99.79081 | 0.0028476 | 11911.40 | 109.1394 |
ts | wk.7200 | 2018-05-08 | 4320 | 99.93221 | 0.0010101 | 11891.41 | 109.0477 |
ts | wk.7200 | 2018-05-09 | 4320 | 100.42109 | 0.0042900 | 12003.25 | 109.5593 |
ts | wk.7200 | 2018-05-10 | 5759 | 100.35688 | 0.0041143 | 12023.21 | 109.6504 |
ts | wk.7200 | 2018-05-11 | 7199 | 100.05940 | 0.0022488 | 11958.04 | 109.3528 |
ts | wk.7200 | 2018-05-12 | 5 | 100.08976 | 0.0022508 | 11965.30 | 109.3860 |
ts | wk.7200 | 2018-05-14 | 4317 | 99.95743 | 0.0015834 | 11982.15 | 109.4630 |
ts | wk.7200 | 2018-05-15 | 4320 | 100.46879 | 0.0046740 | 12099.12 | 109.9960 |
ts | wk.7200 | 2018-05-16 | 4320 | 100.39556 | 0.0046503 | 12151.15 | 110.2323 |
ts | wk.7200 | 2018-05-17 | 5759 | 100.53666 | 0.0056422 | 12218.47 | 110.5372 |
ts | wk.7200 | 2018-05-18 | 7199 | 100.67312 | 0.0067645 | 12287.93 | 110.8509 |
ts | wk.7200 | 2018-05-19 | 5 | 100.58416 | 0.0058596 | 12266.23 | 110.7530 |
ts | wk.7200 | 2018-05-21 | 4317 | 100.45091 | 0.0044968 | 12351.42 | 111.1370 |
ts | wk.7200 | 2018-05-22 | 4320 | 100.09629 | 0.0015218 | 12312.95 | 110.9638 |
ts | wk.7200 | 2018-05-23 | 4320 | 99.42662 | 0.0058516 | 12158.59 | 110.2660 |
ts | wk.7200 | 2018-05-24 | 5759 | 98.95326 | 0.0105305 | 11998.39 | 109.5372 |
ts | wk.7200 | 2018-05-25 | 7199 | 99.11066 | 0.0095841 | 11973.30 | 109.4226 |
ts | wk.7200 | 2018-05-26 | 5 | 99.07953 | 0.0097539 | 11965.73 | 109.3880 |
ts | wk.7200 | 2018-05-28 | 4317 | 99.88305 | 0.0027899 | 11978.37 | 109.4457 |
ts | wk.7200 | 2018-05-29 | 4320 | 99.59418 | 0.0042310 | 11861.43 | 108.9102 |
ts | wk.7200 | 2018-05-30 | 4320 | 99.59961 | 0.0044173 | 11827.26 | 108.7532 |
ts | wk.7200 | 2018-05-31 | 5759 | 99.65420 | 0.0036322 | 11824.87 | 108.7422 |
ts | wk.7200 | 2018-06-01 | 7199 | 100.16201 | 0.0032672 | 11932.58 | 109.2364 |
ts | wk.7200 | 2018-06-02 | 5 | 100.42150 | 0.0042028 | 11994.41 | 109.5190 |
ts | wk.7200 | 2018-06-04 | 4317 | 100.48363 | 0.0048676 | 12014.08 | 109.6088 |
ts | wk.7200 | 2018-06-05 | 4320 | 100.37574 | 0.0040345 | 12054.61 | 109.7935 |
ts | wk.7200 | 2018-06-06 | 4320 | 100.27792 | 0.0027755 | 12102.82 | 110.0128 |
ts | wk.7200 | 2018-06-07 | 5759 | 100.11607 | 0.0023768 | 12089.86 | 109.9539 |
ts | wk.7200 | 2018-06-08 | 7199 | 99.76469 | 0.0026922 | 11999.72 | 109.5432 |
ts | wk.7200 | 2018-06-09 | 5 | 99.75503 | 0.0025040 | 11997.37 | 109.5325 |
ts | wk.7200 | 2018-06-11 | 4317 | 100.01475 | 0.0028953 | 12060.77 | 109.8215 |
ts | wk.7200 | 2018-06-12 | 4320 | 100.47751 | 0.0047646 | 12161.63 | 110.2798 |
ts | wk.7200 | 2018-06-13 | 4320 | 100.49143 | 0.0049077 | 12214.51 | 110.5193 |
ts | wk.7200 | 2018-06-14 | 5759 | 100.16559 | 0.0030640 | 12155.51 | 110.2520 |
ts | wk.7200 | 2018-06-15 | 7199 | 100.39596 | 0.0041175 | 12236.36 | 110.6181 |
ts | wk.7200 | 2018-06-16 | 5 | 100.43899 | 0.0043744 | 12246.85 | 110.6655 |
ts | wk.7200 | 2018-06-18 | 4317 | 99.96830 | 0.0013707 | 12212.85 | 110.5118 |
ts | wk.7200 | 2018-06-19 | 4320 | 99.41113 | 0.0059115 | 12092.22 | 109.9646 |
ts | wk.7200 | 2018-06-20 | 4320 | 99.74724 | 0.0031010 | 12131.88 | 110.1448 |
ts | wk.7200 | 2018-06-21 | 5759 | 99.93526 | 0.0025716 | 12174.11 | 110.3364 |
ts | wk.7200 | 2018-06-22 | 7199 | 99.71823 | 0.0030877 | 12102.67 | 110.0121 |
ts | wk.7200 | 2018-06-23 | 5 | 99.69553 | 0.0030570 | 12097.14 | 109.9870 |
ts | wk.7200 | 2018-06-25 | 4317 | 99.53362 | 0.0046779 | 12011.46 | 109.5968 |
ts | wk.7200 | 2018-06-26 | 4320 | 99.84137 | 0.0023098 | 12042.42 | 109.7380 |
ts | wk.7200 | 2018-06-27 | 4320 | 100.12836 | 0.0020401 | 12115.29 | 110.0695 |
ts | wk.7200 | 2018-06-28 | 5759 | 100.25040 | 0.0026625 | 12163.27 | 110.2872 |
ts | wk.7200 | 2018-06-29 | 7199 | 100.49676 | 0.0049710 | 12244.61 | 110.6554 |
ts | wk.7200 | 2018-06-30 | 5 | 100.52639 | 0.0052475 | 12251.83 | 110.6880 |
ts | wk.7200 | 2018-07-02 | 4317 | 100.28921 | 0.0028934 | 12277.07 | 110.8019 |
ts | wk.7200 | 2018-07-03 | 4320 | 100.09108 | 0.0018262 | 12275.38 | 110.7943 |
ts | wk.7200 | 2018-07-04 | 4320 | 99.77085 | 0.0022963 | 12203.16 | 110.4679 |
ts | wk.7200 | 2018-07-05 | 5759 | 99.90743 | 0.0014631 | 12224.79 | 110.5658 |
ts | wk.7200 | 2018-07-06 | 7199 | 99.93165 | 0.0012721 | 12229.69 | 110.5879 |
ts | wk.7200 | 2018-07-07 | 5 | 99.81924 | 0.0018099 | 12202.18 | 110.4635 |
ts | yr.7200 | 2018-01-02 | 4317 | 99.69680 | 0.0031437 | 12644.15 | 112.4462 |
ts | yr.7200 | 2018-01-03 | 4320 | 99.85377 | 0.0027337 | 12617.14 | 112.3260 |
ts | yr.7200 | 2018-01-04 | 5759 | 100.18309 | 0.0022268 | 12696.53 | 112.6789 |
ts | yr.7200 | 2018-01-05 | 5760 | 100.48270 | 0.0048122 | 12781.03 | 113.0532 |
ts | yr.7200 | 2018-01-06 | 4321 | 100.53865 | 0.0053704 | 12783.02 | 113.0620 |
ts | yr.7200 | 2018-01-07 | 3 | 100.56573 | 0.0056395 | 12783.02 | 113.0620 |
ts | yr.7200 | 2018-01-08 | 5756 | 100.25852 | 0.0028995 | 12797.02 | 113.1239 |
ts | yr.7200 | 2018-01-09 | 5760 | 99.72462 | 0.0030360 | 12709.18 | 112.7350 |
ts | yr.7200 | 2018-01-10 | 5760 | 99.01792 | 0.0098884 | 12512.95 | 111.8613 |
ts | yr.7200 | 2018-01-11 | 7199 | 98.96889 | 0.0105861 | 12434.67 | 111.5109 |
ts | yr.7200 | 2018-01-12 | 7200 | 98.97159 | 0.0104081 | 12368.72 | 111.2147 |
ts | yr.7200 | 2018-01-13 | 5 | 98.81626 | 0.0119286 | 12326.11 | 111.0230 |
ts | yr.7200 | 2018-01-15 | 4317 | 99.42438 | 0.0057783 | 12249.50 | 110.6774 |
ts | yr.7200 | 2018-01-16 | 4320 | 99.77956 | 0.0032411 | 12255.80 | 110.7059 |
ts | yr.7200 | 2018-01-17 | 4320 | 100.14701 | 0.0034014 | 12260.34 | 110.7264 |
ts | yr.7200 | 2018-01-18 | 5759 | 100.44481 | 0.0048263 | 12361.74 | 111.1834 |
ts | yr.7200 | 2018-01-19 | 7199 | 99.92902 | 0.0033579 | 12269.66 | 110.7685 |
ts | yr.7200 | 2018-01-20 | 5 | 99.97709 | 0.0031831 | 12284.40 | 110.8350 |
ts | yr.7200 | 2018-01-22 | 4317 | 99.77353 | 0.0026426 | 12282.58 | 110.8268 |
ts | yr.7200 | 2018-01-23 | 4320 | 99.71448 | 0.0031962 | 12243.49 | 110.6503 |
ts | yr.7200 | 2018-01-24 | 4320 | 99.10233 | 0.0090256 | 12023.34 | 109.6510 |
ts | yr.7200 | 2018-01-25 | 5759 | 98.82623 | 0.0118608 | 11890.55 | 109.0438 |
ts | yr.7200 | 2018-01-26 | 7199 | 99.02328 | 0.0101163 | 11901.33 | 109.0932 |
ts | yr.7200 | 2018-01-27 | 5 | 98.58234 | 0.0142956 | 11800.26 | 108.6290 |
ts | yr.7200 | 2018-01-29 | 4317 | 99.76643 | 0.0032286 | 11848.14 | 108.8492 |
ts | yr.7200 | 2018-01-30 | 4320 | 99.80814 | 0.0025927 | 11832.26 | 108.7762 |
ts | yr.7200 | 2018-01-31 | 4320 | 100.25278 | 0.0027937 | 11863.86 | 108.9214 |
ts | yr.7200 | 2018-02-01 | 5759 | 100.61241 | 0.0061025 | 11975.00 | 109.4303 |
ts | yr.7200 | 2018-02-02 | 7199 | 100.86409 | 0.0086004 | 12072.04 | 109.8729 |
ts | yr.7200 | 2018-02-03 | 5 | 101.15167 | 0.0114473 | 12138.31 | 110.1740 |
ts | yr.7200 | 2018-02-05 | 4317 | 100.32326 | 0.0050937 | 12076.74 | 109.8942 |
ts | yr.7200 | 2018-02-06 | 4320 | 99.59008 | 0.0046888 | 11906.76 | 109.1181 |
ts | yr.7200 | 2018-02-07 | 4320 | 99.81353 | 0.0035208 | 11951.00 | 109.3206 |
ts | yr.7200 | 2018-02-08 | 5759 | 99.83674 | 0.0035565 | 11957.42 | 109.3500 |
ts | yr.7200 | 2018-02-09 | 7199 | 99.43153 | 0.0060149 | 11846.29 | 108.8407 |
ts | yr.7200 | 2018-02-10 | 5 | 99.37686 | 0.0062585 | 11836.57 | 108.7960 |
ts | yr.7200 | 2018-02-12 | 4317 | 99.73580 | 0.0027566 | 11810.06 | 108.6741 |
ts | yr.7200 | 2018-02-13 | 4320 | 99.33333 | 0.0067550 | 11665.00 | 108.0046 |
ts | yr.7200 | 2018-02-14 | 4320 | 99.02865 | 0.0097723 | 11510.96 | 107.2892 |
ts | yr.7200 | 2018-02-15 | 5759 | 98.52698 | 0.0148604 | 11342.69 | 106.5021 |
ts | yr.7200 | 2018-02-16 | 7199 | 98.45242 | 0.0156663 | 11254.57 | 106.0876 |
ts | yr.7200 | 2018-02-17 | 5 | 98.62658 | 0.0138676 | 11300.97 | 106.3060 |
ts | yr.7200 | 2018-02-19 | 4317 | 100.00929 | 0.0033302 | 11336.73 | 106.4741 |
ts | yr.7200 | 2018-02-20 | 4320 | 100.70421 | 0.0070156 | 11451.01 | 107.0094 |
ts | yr.7200 | 2018-02-21 | 4320 | 101.03132 | 0.0102515 | 11577.32 | 107.5980 |
ts | yr.7200 | 2018-02-22 | 5759 | 100.34106 | 0.0061409 | 11491.06 | 107.1964 |
ts | yr.7200 | 2018-02-23 | 7199 | 99.94481 | 0.0042978 | 11409.03 | 106.8131 |
ts | yr.7200 | 2018-02-24 | 5 | 99.94315 | 0.0040975 | 11425.69 | 106.8910 |
ts | yr.7200 | 2018-02-26 | 4317 | 99.59062 | 0.0043331 | 11402.75 | 106.7837 |
ts | yr.7200 | 2018-02-27 | 4320 | 100.15751 | 0.0019271 | 11469.21 | 107.0944 |
ts | yr.7200 | 2018-02-28 | 4320 | 100.02064 | 0.0019716 | 11458.55 | 107.0446 |
ts | yr.7200 | 2018-03-01 | 5759 | 99.82960 | 0.0025339 | 11389.51 | 106.7217 |
ts | yr.7200 | 2018-03-02 | 7199 | 99.06537 | 0.0093972 | 11185.22 | 105.7602 |
ts | yr.7200 | 2018-03-03 | 5 | 98.96758 | 0.0103805 | 11177.99 | 105.7260 |
ts | yr.7200 | 2018-03-05 | 4317 | 99.42143 | 0.0061119 | 11175.08 | 105.7123 |
ts | yr.7200 | 2018-03-06 | 4320 | 100.03517 | 0.0021269 | 11275.41 | 106.1858 |
ts | yr.7200 | 2018-03-07 | 4320 | 99.78525 | 0.0026901 | 11191.63 | 105.7905 |
ts | yr.7200 | 2018-03-08 | 5759 | 100.12672 | 0.0018165 | 11257.18 | 106.0999 |
ts | yr.7200 | 2018-03-09 | 7199 | 100.79526 | 0.0079184 | 11391.09 | 106.7290 |
ts | yr.7200 | 2018-03-10 | 5 | 100.81191 | 0.0080847 | 11412.33 | 106.8285 |
ts | yr.7200 | 2018-03-12 | 4317 | 100.18391 | 0.0034869 | 11363.59 | 106.6001 |
ts | yr.7200 | 2018-03-13 | 4320 | 100.10434 | 0.0030294 | 11385.84 | 106.7044 |
ts | yr.7200 | 2018-03-14 | 4320 | 99.85488 | 0.0020233 | 11331.94 | 106.4516 |
ts | yr.7200 | 2018-03-15 | 5759 | 99.58964 | 0.0042153 | 11251.41 | 106.0727 |
ts | yr.7200 | 2018-03-16 | 7199 | 99.59867 | 0.0041205 | 11234.03 | 105.9907 |
ts | yr.7200 | 2018-03-17 | 5 | 99.51539 | 0.0048593 | 11232.29 | 105.9825 |
ts | yr.7200 | 2018-03-19 | 4317 | 99.68864 | 0.0033745 | 11226.19 | 105.9537 |
ts | yr.7200 | 2018-03-20 | 4320 | 100.07439 | 0.0019609 | 11303.43 | 106.3176 |
ts | yr.7200 | 2018-03-21 | 4320 | 100.17361 | 0.0021338 | 11310.68 | 106.3517 |
ts | yr.7200 | 2018-03-22 | 5759 | 99.64400 | 0.0035728 | 11169.27 | 105.6848 |
ts | yr.7200 | 2018-03-23 | 7199 | 99.13925 | 0.0086488 | 11013.36 | 104.9445 |
ts | yr.7200 | 2018-03-24 | 5 | 98.86545 | 0.0114131 | 10969.63 | 104.7360 |
ts | yr.7200 | 2018-03-26 | 4317 | 99.55775 | 0.0058115 | 11032.31 | 105.0348 |
ts | yr.7200 | 2018-03-27 | 4320 | 100.29070 | 0.0030512 | 11153.99 | 105.6124 |
ts | yr.7200 | 2018-03-28 | 4320 | 100.66913 | 0.0067901 | 11218.95 | 105.9196 |
ts | yr.7200 | 2018-03-29 | 5759 | 101.07957 | 0.0108774 | 11356.52 | 106.5670 |
ts | yr.7200 | 2018-03-30 | 7199 | 100.73991 | 0.0082050 | 11291.22 | 106.2602 |
ts | yr.7200 | 2018-03-31 | 5 | 100.71190 | 0.0080050 | 11296.82 | 106.2865 |
ts | yr.7200 | 2018-04-02 | 4317 | 99.64691 | 0.0036631 | 11282.62 | 106.2197 |
ts | yr.7200 | 2018-04-03 | 4320 | 99.73837 | 0.0034343 | 11270.83 | 106.1641 |
ts | yr.7200 | 2018-04-04 | 4320 | 100.02931 | 0.0019578 | 11335.18 | 106.4668 |
ts | yr.7200 | 2018-04-05 | 5759 | 100.64495 | 0.0064228 | 11466.16 | 107.0802 |
ts | yr.7200 | 2018-04-06 | 7199 | 100.78109 | 0.0081148 | 11492.45 | 107.2028 |
ts | yr.7200 | 2018-04-07 | 5 | 100.50070 | 0.0061674 | 11435.74 | 106.9380 |
ts | yr.7200 | 2018-04-09 | 4317 | 99.94244 | 0.0030628 | 11445.22 | 106.9823 |
ts | yr.7200 | 2018-04-10 | 4320 | 99.82811 | 0.0022975 | 11457.75 | 107.0409 |
ts | yr.7200 | 2018-04-11 | 4320 | 99.85188 | 0.0017941 | 11444.89 | 106.9808 |
ts | yr.7200 | 2018-04-12 | 5759 | 100.02270 | 0.0024062 | 11456.53 | 107.0352 |
ts | yr.7200 | 2018-04-13 | 7199 | 100.56909 | 0.0056719 | 11550.19 | 107.4718 |
ts | yr.7200 | 2018-04-14 | 5 | 100.48058 | 0.0047922 | 11525.20 | 107.3555 |
ts | yr.7200 | 2018-04-16 | 4317 | 100.12017 | 0.0026395 | 11506.89 | 107.2702 |
ts | yr.7200 | 2018-04-17 | 4320 | 99.65727 | 0.0034356 | 11459.97 | 107.0513 |
ts | yr.7200 | 2018-04-18 | 4320 | 99.92785 | 0.0022113 | 11496.97 | 107.2239 |
ts | yr.7200 | 2018-04-19 | 5759 | 100.10348 | 0.0020354 | 11527.98 | 107.3684 |
ts | yr.7200 | 2018-04-20 | 7199 | 100.41984 | 0.0042257 | 11575.10 | 107.5876 |
ts | yr.7200 | 2018-04-21 | 5 | 100.51775 | 0.0051625 | 11586.80 | 107.6420 |
ts | yr.7200 | 2018-04-23 | 4317 | 100.70889 | 0.0070576 | 11692.38 | 108.1313 |
ts | yr.7200 | 2018-04-24 | 4320 | 100.80015 | 0.0081018 | 11842.73 | 108.8243 |
ts | yr.7200 | 2018-04-25 | 4320 | 100.61856 | 0.0061589 | 11904.94 | 109.1097 |
ts | yr.7200 | 2018-04-26 | 5759 | 100.59423 | 0.0061018 | 11949.99 | 109.3160 |
ts | yr.7200 | 2018-04-27 | 7199 | 100.50069 | 0.0051841 | 11931.93 | 109.2334 |
ts | yr.7200 | 2018-04-28 | 5 | 100.40423 | 0.0045965 | 11893.65 | 109.0580 |
ts | yr.7200 | 2018-04-30 | 4317 | 99.95580 | 0.0012377 | 11929.23 | 109.2210 |
ts | yr.7200 | 2018-05-01 | 4320 | 100.14070 | 0.0017226 | 11996.63 | 109.5292 |
ts | yr.7200 | 2018-05-02 | 4320 | 100.24174 | 0.0027016 | 12060.18 | 109.8189 |
ts | yr.7200 | 2018-05-03 | 5759 | 99.88029 | 0.0025766 | 11987.06 | 109.4854 |
ts | yr.7200 | 2018-05-04 | 7199 | 99.69794 | 0.0031433 | 11899.13 | 109.0831 |
ts | yr.7200 | 2018-05-05 | 5 | 99.80087 | 0.0023144 | 11897.68 | 109.0765 |
ts | yr.7200 | 2018-05-07 | 4317 | 99.77924 | 0.0026729 | 11911.40 | 109.1394 |
ts | yr.7200 | 2018-05-08 | 4320 | 99.80962 | 0.0019384 | 11891.41 | 109.0477 |
ts | yr.7200 | 2018-05-09 | 4320 | 100.28088 | 0.0032574 | 12003.25 | 109.5593 |
ts | yr.7200 | 2018-05-10 | 5759 | 100.29106 | 0.0030761 | 12023.21 | 109.6504 |
ts | yr.7200 | 2018-05-11 | 7199 | 100.13377 | 0.0017245 | 11958.04 | 109.3528 |
ts | yr.7200 | 2018-05-12 | 5 | 100.26795 | 0.0026749 | 11965.30 | 109.3860 |
ts | yr.7200 | 2018-05-14 | 4317 | 99.95559 | 0.0010394 | 11982.15 | 109.4630 |
ts | yr.7200 | 2018-05-15 | 4320 | 100.38180 | 0.0038084 | 12099.12 | 109.9960 |
ts | yr.7200 | 2018-05-16 | 4320 | 100.25732 | 0.0032906 | 12151.15 | 110.2323 |
ts | yr.7200 | 2018-05-17 | 5759 | 100.45790 | 0.0048397 | 12218.47 | 110.5372 |
ts | yr.7200 | 2018-05-18 | 7199 | 100.76336 | 0.0075978 | 12287.93 | 110.8509 |
ts | yr.7200 | 2018-05-19 | 5 | 100.77492 | 0.0077130 | 12266.23 | 110.7530 |
ts | yr.7200 | 2018-05-21 | 4317 | 100.45430 | 0.0045296 | 12351.42 | 111.1370 |
ts | yr.7200 | 2018-05-22 | 4320 | 100.00020 | 0.0013072 | 12312.95 | 110.9638 |
ts | yr.7200 | 2018-05-23 | 4320 | 99.25661 | 0.0074686 | 12158.59 | 110.2660 |
ts | yr.7200 | 2018-05-24 | 5759 | 98.82031 | 0.0118769 | 11998.39 | 109.5372 |
ts | yr.7200 | 2018-05-25 | 7199 | 99.10914 | 0.0096166 | 11973.30 | 109.4226 |
ts | yr.7200 | 2018-05-26 | 5 | 99.19135 | 0.0090447 | 11965.73 | 109.3880 |
ts | yr.7200 | 2018-05-28 | 4317 | 99.84318 | 0.0024366 | 11978.37 | 109.4457 |
ts | yr.7200 | 2018-05-29 | 4320 | 99.52572 | 0.0048462 | 11861.43 | 108.9102 |
ts | yr.7200 | 2018-05-30 | 4320 | 99.52748 | 0.0052415 | 11827.26 | 108.7532 |
ts | yr.7200 | 2018-05-31 | 5759 | 99.67415 | 0.0038197 | 11824.87 | 108.7422 |
ts | yr.7200 | 2018-06-01 | 7199 | 100.25641 | 0.0042003 | 11932.58 | 109.2364 |
ts | yr.7200 | 2018-06-02 | 5 | 100.59408 | 0.0059178 | 11994.41 | 109.5190 |
ts | yr.7200 | 2018-06-04 | 4317 | 100.48758 | 0.0049866 | 12014.08 | 109.6088 |
ts | yr.7200 | 2018-06-05 | 4320 | 100.37967 | 0.0039707 | 12054.61 | 109.7935 |
ts | yr.7200 | 2018-06-06 | 4320 | 100.29193 | 0.0029140 | 12102.82 | 110.0128 |
ts | yr.7200 | 2018-06-07 | 5759 | 100.20226 | 0.0024458 | 12089.86 | 109.9539 |
ts | yr.7200 | 2018-06-08 | 7199 | 99.82109 | 0.0022528 | 11999.72 | 109.5432 |
ts | yr.7200 | 2018-06-09 | 5 | 99.84471 | 0.0015814 | 11997.37 | 109.5325 |
ts | yr.7200 | 2018-06-11 | 4317 | 99.92008 | 0.0021656 | 12060.77 | 109.8215 |
ts | yr.7200 | 2018-06-12 | 4320 | 100.41073 | 0.0040983 | 12161.63 | 110.2798 |
ts | yr.7200 | 2018-06-13 | 4320 | 100.45981 | 0.0045960 | 12214.51 | 110.5193 |
ts | yr.7200 | 2018-06-14 | 5759 | 100.24237 | 0.0031593 | 12155.51 | 110.2520 |
ts | yr.7200 | 2018-06-15 | 7199 | 100.51022 | 0.0052435 | 12236.36 | 110.6181 |
ts | yr.7200 | 2018-06-16 | 5 | 100.58074 | 0.0057854 | 12246.85 | 110.6655 |
ts | yr.7200 | 2018-06-18 | 4317 | 99.88357 | 0.0024119 | 12212.85 | 110.5118 |
ts | yr.7200 | 2018-06-19 | 4320 | 99.34443 | 0.0065843 | 12092.22 | 109.9646 |
ts | yr.7200 | 2018-06-20 | 4320 | 99.67117 | 0.0037716 | 12131.88 | 110.1448 |
ts | yr.7200 | 2018-06-21 | 5759 | 100.02397 | 0.0028616 | 12174.11 | 110.3364 |
ts | yr.7200 | 2018-06-22 | 7199 | 99.79606 | 0.0025130 | 12102.67 | 110.0121 |
ts | yr.7200 | 2018-06-23 | 5 | 99.78308 | 0.0024338 | 12097.14 | 109.9870 |
ts | yr.7200 | 2018-06-25 | 4317 | 99.46708 | 0.0053450 | 12011.46 | 109.5968 |
ts | yr.7200 | 2018-06-26 | 4320 | 99.82156 | 0.0027171 | 12042.42 | 109.7380 |
ts | yr.7200 | 2018-06-27 | 4320 | 100.11129 | 0.0021216 | 12115.29 | 110.0695 |
ts | yr.7200 | 2018-06-28 | 5759 | 100.35278 | 0.0035444 | 12163.27 | 110.2872 |
ts | yr.7200 | 2018-06-29 | 7199 | 100.60736 | 0.0060603 | 12244.61 | 110.6554 |
ts | yr.7200 | 2018-06-30 | 5 | 100.62929 | 0.0062699 | 12251.83 | 110.6880 |
ts | yr.7200 | 2018-07-02 | 4317 | 100.28649 | 0.0028755 | 12277.07 | 110.8019 |
ts | yr.7200 | 2018-07-03 | 4320 | 100.11512 | 0.0018533 | 12275.38 | 110.7943 |
ts | yr.7200 | 2018-07-04 | 4320 | 99.73989 | 0.0026054 | 12203.16 | 110.4679 |
ts | yr.7200 | 2018-07-05 | 5759 | 99.95579 | 0.0014679 | 12224.79 | 110.5658 |
ts | yr.7200 | 2018-07-06 | 7199 | 99.95976 | 0.0011949 | 12229.69 | 110.5879 |
ts | yr.7200 | 2018-07-07 | 5 | 99.84035 | 0.0016730 | 12202.18 | 110.4635 |
tbats | dy.qt | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.qt | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.qt | 2018-01-05 | 1440 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
tbats | dy.qt | 2018-01-06 | 1 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
tbats | dy.qt | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.qt | 2018-01-09 | 1440 | 100.04867 | 0.0012931 | 12709.18 | 112.7350 |
tbats | dy.qt | 2018-01-10 | 1440 | 99.27259 | 0.0073400 | 12512.95 | 111.8613 |
tbats | dy.qt | 2018-01-11 | 1440 | 98.96225 | 0.0104334 | 12434.67 | 111.5109 |
tbats | dy.qt | 2018-01-12 | 1440 | 98.69954 | 0.0130904 | 12368.72 | 111.2147 |
tbats | dy.qt | 2018-01-13 | 1 | 98.52946 | 0.0148143 | 12326.11 | 111.0230 |
tbats | dy.qt | 2018-01-15 | 1439 | 98.22265 | 0.0179342 | 12249.50 | 110.6774 |
tbats | dy.qt | 2018-01-16 | 1440 | 98.24796 | 0.0176763 | 12255.80 | 110.7059 |
tbats | dy.qt | 2018-01-17 | 1440 | 98.26609 | 0.0174925 | 12260.34 | 110.7264 |
tbats | dy.qt | 2018-01-18 | 1440 | 98.67172 | 0.0133725 | 12361.75 | 111.1834 |
tbats | dy.qt | 2018-01-19 | 1440 | 98.30353 | 0.0171110 | 12269.67 | 110.7685 |
tbats | dy.qt | 2018-01-20 | 1 | 98.36262 | 0.0165090 | 12284.40 | 110.8350 |
tbats | dy.qt | 2018-01-22 | 1439 | 98.35525 | 0.0165846 | 12282.58 | 110.8268 |
tbats | dy.qt | 2018-01-23 | 1440 | 98.19844 | 0.0181820 | 12243.49 | 110.6503 |
tbats | dy.qt | 2018-01-24 | 1440 | 97.31119 | 0.0272614 | 12023.34 | 109.6510 |
tbats | dy.qt | 2018-01-25 | 1440 | 96.77278 | 0.0328036 | 11890.55 | 109.0438 |
tbats | dy.qt | 2018-01-26 | 1440 | 96.81623 | 0.0323591 | 11901.34 | 109.0932 |
tbats | dy.qt | 2018-01-27 | 1 | 96.40486 | 0.0366094 | 11800.26 | 108.6290 |
tbats | dy.qt | 2018-01-29 | 1439 | 96.60017 | 0.0345871 | 11848.14 | 108.8492 |
tbats | dy.qt | 2018-01-30 | 1440 | 96.53542 | 0.0352574 | 11832.26 | 108.7762 |
tbats | dy.qt | 2018-01-31 | 1440 | 96.66416 | 0.0339260 | 11863.86 | 108.9214 |
tbats | dy.qt | 2018-02-01 | 1440 | 97.11590 | 0.0292640 | 11974.99 | 109.4303 |
tbats | dy.qt | 2018-02-02 | 1440 | 97.50825 | 0.0252362 | 12072.03 | 109.8728 |
tbats | dy.qt | 2018-02-03 | 1 | 97.77600 | 0.0224901 | 12138.31 | 110.1740 |
tbats | dy.qt | 2018-02-05 | 1439 | 97.52750 | 0.0250364 | 12076.74 | 109.8942 |
tbats | dy.qt | 2018-02-06 | 1440 | 96.83864 | 0.0321241 | 11906.76 | 109.1181 |
tbats | dy.qt | 2018-02-07 | 1440 | 97.01853 | 0.0302673 | 11951.00 | 109.3206 |
tbats | dy.qt | 2018-02-08 | 1440 | 97.04430 | 0.0300045 | 11957.42 | 109.3500 |
tbats | dy.qt | 2018-02-09 | 1440 | 96.59248 | 0.0346683 | 11846.29 | 108.8407 |
tbats | dy.qt | 2018-02-10 | 1 | 96.55307 | 0.0350738 | 11836.57 | 108.7960 |
tbats | dy.qt | 2018-02-12 | 1439 | 96.44488 | 0.0361948 | 11810.06 | 108.6741 |
tbats | dy.qt | 2018-02-13 | 1440 | 95.84988 | 0.0423895 | 11665.00 | 108.0046 |
tbats | dy.qt | 2018-02-14 | 1440 | 95.21545 | 0.0490216 | 11510.96 | 107.2892 |
tbats | dy.qt | 2018-02-15 | 1440 | 94.51717 | 0.0563755 | 11342.71 | 106.5021 |
tbats | dy.qt | 2018-02-16 | 1440 | 94.14929 | 0.0602717 | 11254.57 | 106.0876 |
tbats | dy.qt | 2018-02-17 | 1 | 94.34327 | 0.0582138 | 11300.97 | 106.3060 |
tbats | dy.qt | 2018-02-19 | 1439 | 100.15807 | 0.0018789 | 11336.73 | 106.4741 |
tbats | dy.qt | 2018-02-20 | 1440 | 100.39103 | 0.0039051 | 11451.01 | 107.0094 |
tbats | dy.qt | 2018-02-21 | 1440 | 100.25293 | 0.0025468 | 11577.32 | 107.5980 |
tbats | dy.qt | 2018-02-22 | 1440 | 99.46320 | 0.0053927 | 11491.09 | 107.1965 |
tbats | dy.qt | 2018-02-23 | 1440 | 100.05442 | 0.0010658 | 11409.03 | 106.8131 |
tbats | dy.qt | 2018-02-24 | 1 | 100.12813 | 0.0012805 | 11425.69 | 106.8910 |
tbats | dy.qt | 2018-02-26 | 1439 | 99.90008 | 0.0017224 | 11402.75 | 106.7837 |
tbats | dy.qt | 2018-02-27 | 1440 | 100.15712 | 0.0017597 | 11469.21 | 107.0944 |
tbats | dy.qt | 2018-02-28 | 1440 | 99.73121 | 0.0028609 | 11458.55 | 107.0446 |
tbats | dy.qt | 2018-03-01 | 1440 | 100.04078 | 0.0014257 | 11389.51 | 106.7217 |
tbats | dy.qt | 2018-03-02 | 1440 | 99.55689 | 0.0044691 | 11185.24 | 105.7603 |
tbats | dy.qt | 2018-03-03 | 1 | 99.52529 | 0.0047584 | 11177.99 | 105.7260 |
tbats | dy.qt | 2018-03-05 | 1439 | 99.98671 | 0.0020805 | 11175.08 | 105.7123 |
tbats | dy.qt | 2018-03-06 | 1440 | 99.97448 | 0.0010510 | 11275.41 | 106.1858 |
tbats | dy.qt | 2018-03-07 | 1440 | 99.67282 | 0.0032912 | 11191.63 | 105.7905 |
tbats | dy.qt | 2018-03-08 | 1440 | 100.02248 | 0.0006004 | 11257.18 | 106.0998 |
tbats | dy.qt | 2018-03-09 | 1440 | 100.47998 | 0.0047965 | 11391.07 | 106.7290 |
tbats | dy.qt | 2018-03-10 | 1 | 100.57372 | 0.0057207 | 11412.33 | 106.8285 |
tbats | dy.qt | 2018-03-12 | 1439 | 99.78623 | 0.0023423 | 11363.59 | 106.6001 |
tbats | dy.qt | 2018-03-13 | 1440 | 100.26633 | 0.0028931 | 11385.84 | 106.7044 |
tbats | dy.qt | 2018-03-14 | 1440 | 99.88333 | 0.0013305 | 11331.94 | 106.4516 |
tbats | dy.qt | 2018-03-15 | 1440 | 99.76423 | 0.0023882 | 11251.42 | 106.0727 |
tbats | dy.qt | 2018-03-16 | 1440 | 99.66757 | 0.0033348 | 11234.04 | 105.9908 |
tbats | dy.qt | 2018-03-17 | 1 | 99.65997 | 0.0034061 | 11232.29 | 105.9825 |
tbats | dy.qt | 2018-03-19 | 1439 | 99.97263 | 0.0011852 | 11226.19 | 105.9537 |
tbats | dy.qt | 2018-03-20 | 1440 | 100.20904 | 0.0022823 | 11303.43 | 106.3176 |
tbats | dy.qt | 2018-03-21 | 1440 | 99.82901 | 0.0017237 | 11310.68 | 106.3517 |
tbats | dy.qt | 2018-03-22 | 1440 | 99.65709 | 0.0034537 | 11169.29 | 105.6848 |
tbats | dy.qt | 2018-03-23 | 1440 | 99.67875 | 0.0032366 | 11013.37 | 104.9446 |
tbats | dy.qt | 2018-03-24 | 1 | 99.48123 | 0.0052012 | 10969.63 | 104.7360 |
tbats | dy.qt | 2018-03-26 | 1439 | 100.28518 | 0.0028807 | 11032.31 | 105.0348 |
tbats | dy.qt | 2018-03-27 | 1440 | 100.19555 | 0.0019708 | 11153.99 | 105.6124 |
tbats | dy.qt | 2018-03-28 | 1440 | 100.54877 | 0.0054627 | 11218.95 | 105.9196 |
tbats | dy.qt | 2018-03-29 | 1440 | 99.73412 | 0.0027027 | 11356.53 | 106.5670 |
tbats | dy.qt | 2018-03-30 | 1440 | 99.83920 | 0.0017394 | 11291.23 | 106.2602 |
tbats | dy.qt | 2018-03-31 | 1 | 99.86424 | 0.0013585 | 11296.82 | 106.2865 |
tbats | dy.qt | 2018-04-02 | 1439 | 99.93700 | 0.0011310 | 11282.62 | 106.2197 |
tbats | dy.qt | 2018-04-03 | 1440 | 100.25481 | 0.0027837 | 11270.83 | 106.1641 |
tbats | dy.qt | 2018-04-04 | 1440 | 99.86599 | 0.0017314 | 11335.18 | 106.4668 |
tbats | dy.qt | 2018-04-05 | 1440 | 100.28099 | 0.0028526 | 11466.15 | 107.0801 |
tbats | dy.qt | 2018-04-06 | 1440 | 99.83245 | 0.0017703 | 11492.45 | 107.2028 |
tbats | dy.qt | 2018-04-07 | 1 | 99.58556 | 0.0041530 | 11435.74 | 106.9380 |
tbats | dy.qt | 2018-04-09 | 1439 | 100.04115 | 0.0009017 | 11445.22 | 106.9823 |
tbats | dy.qt | 2018-04-10 | 1440 | 100.22867 | 0.0024343 | 11457.75 | 107.0409 |
tbats | dy.qt | 2018-04-11 | 1440 | 99.79334 | 0.0020920 | 11444.89 | 106.9808 |
tbats | dy.qt | 2018-04-12 | 1440 | 100.22729 | 0.0022879 | 11456.52 | 107.0351 |
tbats | dy.qt | 2018-04-13 | 1440 | 100.14150 | 0.0015252 | 11550.18 | 107.4718 |
tbats | dy.qt | 2018-04-14 | 1 | 100.03289 | 0.0003289 | 11525.20 | 107.3555 |
tbats | dy.qt | 2018-04-16 | 1439 | 99.92011 | 0.0012842 | 11506.89 | 107.2702 |
tbats | dy.qt | 2018-04-17 | 1440 | 99.93751 | 0.0006970 | 11459.97 | 107.0513 |
tbats | dy.qt | 2018-04-18 | 1440 | 100.20349 | 0.0020342 | 11496.97 | 107.2239 |
tbats | dy.qt | 2018-04-19 | 1440 | 100.12256 | 0.0012611 | 11527.97 | 107.3684 |
tbats | dy.qt | 2018-04-20 | 1440 | 100.20483 | 0.0020465 | 11575.09 | 107.5876 |
tbats | dy.qt | 2018-04-21 | 1 | 100.25545 | 0.0025513 | 11586.80 | 107.6420 |
tbats | dy.qt | 2018-04-23 | 1439 | 100.45611 | 0.0045455 | 11692.38 | 108.1313 |
tbats | dy.qt | 2018-04-24 | 1440 | 100.11055 | 0.0011908 | 11842.73 | 108.8243 |
tbats | dy.qt | 2018-04-25 | 1440 | 100.26987 | 0.0026968 | 11904.94 | 109.1097 |
tbats | dy.qt | 2018-04-26 | 1440 | 99.89900 | 0.0010289 | 11950.00 | 109.3160 |
tbats | dy.qt | 2018-04-27 | 1440 | 99.93781 | 0.0008727 | 11931.93 | 109.2334 |
tbats | dy.qt | 2018-04-28 | 1 | 99.77747 | 0.0022278 | 11893.65 | 109.0580 |
tbats | dy.qt | 2018-04-30 | 1439 | 100.14920 | 0.0014945 | 11929.23 | 109.2210 |
tbats | dy.qt | 2018-05-01 | 1440 | 100.17329 | 0.0019150 | 11996.63 | 109.5292 |
tbats | dy.qt | 2018-05-02 | 1440 | 99.95855 | 0.0006544 | 12060.18 | 109.8189 |
tbats | dy.qt | 2018-05-03 | 1440 | 99.67902 | 0.0032314 | 11987.07 | 109.4855 |
tbats | dy.qt | 2018-05-04 | 1440 | 99.89883 | 0.0010363 | 11899.13 | 109.0831 |
tbats | dy.qt | 2018-05-05 | 1 | 99.89319 | 0.0010687 | 11897.68 | 109.0765 |
tbats | dy.qt | 2018-05-07 | 1439 | 100.05815 | 0.0010943 | 11911.40 | 109.1394 |
tbats | dy.qt | 2018-05-08 | 1440 | 99.95677 | 0.0008266 | 11891.41 | 109.0477 |
tbats | dy.qt | 2018-05-09 | 1440 | 100.39503 | 0.0040954 | 12003.25 | 109.5593 |
tbats | dy.qt | 2018-05-10 | 1440 | 99.91385 | 0.0013584 | 12023.21 | 109.6504 |
tbats | dy.qt | 2018-05-11 | 1440 | 99.95859 | 0.0007073 | 11958.04 | 109.3528 |
tbats | dy.qt | 2018-05-12 | 1 | 99.98915 | 0.0001085 | 11965.30 | 109.3860 |
tbats | dy.qt | 2018-05-14 | 1439 | 100.07057 | 0.0011008 | 11982.15 | 109.4630 |
tbats | dy.qt | 2018-05-15 | 1440 | 100.30340 | 0.0030269 | 12099.12 | 109.9960 |
tbats | dy.qt | 2018-05-16 | 1440 | 99.89417 | 0.0010771 | 12151.15 | 110.2323 |
tbats | dy.qt | 2018-05-17 | 1440 | 100.12827 | 0.0020259 | 12218.46 | 110.5372 |
tbats | dy.qt | 2018-05-18 | 1440 | 100.07706 | 0.0011057 | 12287.92 | 110.8509 |
tbats | dy.qt | 2018-05-19 | 1 | 99.98849 | 0.0001151 | 12266.23 | 110.7530 |
tbats | dy.qt | 2018-05-21 | 1439 | 100.34661 | 0.0034591 | 12351.42 | 111.1370 |
tbats | dy.qt | 2018-05-22 | 1440 | 99.92007 | 0.0008712 | 12312.95 | 110.9638 |
tbats | dy.qt | 2018-05-23 | 1440 | 99.42938 | 0.0057324 | 12158.59 | 110.2660 |
tbats | dy.qt | 2018-05-24 | 1440 | 99.50292 | 0.0049858 | 11998.41 | 109.5372 |
tbats | dy.qt | 2018-05-25 | 1440 | 100.15295 | 0.0016273 | 11973.30 | 109.4226 |
tbats | dy.qt | 2018-05-26 | 1 | 100.12189 | 0.0012181 | 11965.73 | 109.3880 |
tbats | dy.qt | 2018-05-28 | 1439 | 100.05226 | 0.0008182 | 11978.37 | 109.4457 |
tbats | dy.qt | 2018-05-29 | 1440 | 99.53558 | 0.0046848 | 11861.43 | 108.9102 |
tbats | dy.qt | 2018-05-30 | 1440 | 99.98904 | 0.0013351 | 11827.26 | 108.7532 |
tbats | dy.qt | 2018-05-31 | 1440 | 99.84812 | 0.0015397 | 11824.88 | 108.7423 |
tbats | dy.qt | 2018-06-01 | 1440 | 100.38244 | 0.0038975 | 11932.57 | 109.2363 |
tbats | dy.qt | 2018-06-02 | 1 | 100.64259 | 0.0064053 | 11994.41 | 109.5190 |
tbats | dy.qt | 2018-06-04 | 1439 | 100.08215 | 0.0009623 | 12014.08 | 109.6088 |
tbats | dy.qt | 2018-06-05 | 1440 | 99.98085 | 0.0006843 | 12054.61 | 109.7935 |
tbats | dy.qt | 2018-06-06 | 1440 | 100.20111 | 0.0020087 | 12102.82 | 110.0128 |
tbats | dy.qt | 2018-06-07 | 1440 | 99.79255 | 0.0020849 | 12089.87 | 109.9539 |
tbats | dy.qt | 2018-06-08 | 1440 | 99.85521 | 0.0016502 | 11999.72 | 109.5433 |
tbats | dy.qt | 2018-06-09 | 1 | 99.84581 | 0.0015431 | 11997.37 | 109.5325 |
tbats | dy.qt | 2018-06-11 | 1439 | 100.26474 | 0.0030989 | 12060.77 | 109.8215 |
tbats | dy.qt | 2018-06-12 | 1440 | 100.22386 | 0.0022432 | 12161.63 | 110.2798 |
tbats | dy.qt | 2018-06-13 | 1440 | 100.13182 | 0.0013493 | 12214.51 | 110.5193 |
tbats | dy.qt | 2018-06-14 | 1440 | 99.91755 | 0.0017015 | 12155.51 | 110.2520 |
tbats | dy.qt | 2018-06-15 | 1440 | 99.98738 | 0.0007257 | 12236.36 | 110.6181 |
tbats | dy.qt | 2018-06-16 | 1 | 100.03011 | 0.0003011 | 12246.85 | 110.6655 |
tbats | dy.qt | 2018-06-18 | 1439 | 99.86125 | 0.0014167 | 12212.85 | 110.5118 |
tbats | dy.qt | 2018-06-19 | 1440 | 99.47098 | 0.0053126 | 12092.22 | 109.9646 |
tbats | dy.qt | 2018-06-20 | 1440 | 100.07670 | 0.0009136 | 12131.88 | 110.1448 |
tbats | dy.qt | 2018-06-21 | 1440 | 99.97949 | 0.0019765 | 12174.11 | 110.3364 |
tbats | dy.qt | 2018-06-22 | 1440 | 100.02423 | 0.0006664 | 12102.67 | 110.0121 |
tbats | dy.qt | 2018-06-23 | 1 | 100.00166 | 0.0000166 | 12097.14 | 109.9870 |
tbats | dy.qt | 2018-06-25 | 1439 | 99.64521 | 0.0035565 | 12011.46 | 109.5968 |
tbats | dy.qt | 2018-06-26 | 1440 | 99.97660 | 0.0016579 | 12042.42 | 109.7380 |
tbats | dy.qt | 2018-06-27 | 1440 | 100.03102 | 0.0016466 | 12115.29 | 110.0695 |
tbats | dy.qt | 2018-06-28 | 1440 | 100.02184 | 0.0008678 | 12163.27 | 110.2872 |
tbats | dy.qt | 2018-06-29 | 1440 | 100.14343 | 0.0015275 | 12244.61 | 110.6554 |
tbats | dy.qt | 2018-06-30 | 1 | 100.17288 | 0.0017273 | 12251.83 | 110.6880 |
tbats | dy.qt | 2018-07-02 | 1439 | 100.10272 | 0.0010478 | 12277.07 | 110.8019 |
tbats | dy.qt | 2018-07-03 | 1440 | 99.90854 | 0.0012706 | 12275.38 | 110.7943 |
tbats | dy.qt | 2018-07-04 | 1440 | 99.89757 | 0.0010279 | 12203.16 | 110.4679 |
tbats | dy.qt | 2018-07-05 | 1440 | 100.05275 | 0.0009822 | 12224.79 | 110.5658 |
tbats | dy.qt | 2018-07-06 | 1440 | 99.94812 | 0.0008016 | 12229.69 | 110.5879 |
tbats | dy.qt | 2018-07-07 | 1 | 99.83559 | 0.0016454 | 12202.18 | 110.4635 |
tbats | dy.wk | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.wk | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.wk | 2018-01-05 | 1440 | 100.33088 | 0.0033021 | 12781.03 | 113.0532 |
tbats | dy.wk | 2018-01-06 | 1 | 100.33875 | 0.0033818 | 12783.02 | 113.0620 |
tbats | dy.wk | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.wk | 2018-01-09 | 1440 | 99.68028 | 0.0033099 | 12709.18 | 112.7350 |
tbats | dy.wk | 2018-01-10 | 1440 | 99.29698 | 0.0071157 | 12512.95 | 111.8613 |
tbats | dy.wk | 2018-01-11 | 1440 | 100.06525 | 0.0016808 | 12434.67 | 111.5109 |
tbats | dy.wk | 2018-01-12 | 1440 | 99.96120 | 0.0009504 | 12368.72 | 111.2147 |
tbats | dy.wk | 2018-01-13 | 1 | 99.78905 | 0.0021117 | 12326.11 | 111.0230 |
tbats | dy.wk | 2018-01-15 | 1439 | 99.68861 | 0.0032424 | 12249.50 | 110.6774 |
tbats | dy.wk | 2018-01-16 | 1440 | 100.14965 | 0.0018525 | 12255.80 | 110.7059 |
tbats | dy.wk | 2018-01-17 | 1440 | 100.24561 | 0.0026428 | 12260.34 | 110.7264 |
tbats | dy.wk | 2018-01-18 | 1440 | 99.90235 | 0.0012114 | 12361.75 | 111.1834 |
tbats | dy.wk | 2018-01-19 | 1440 | 99.69341 | 0.0030718 | 12269.67 | 110.7685 |
tbats | dy.wk | 2018-01-20 | 1 | 99.75345 | 0.0024686 | 12284.40 | 110.8350 |
tbats | dy.wk | 2018-01-22 | 1439 | 99.94857 | 0.0009876 | 12282.58 | 110.8268 |
tbats | dy.wk | 2018-01-23 | 1440 | 99.75295 | 0.0027197 | 12243.49 | 110.6503 |
tbats | dy.wk | 2018-01-24 | 1440 | 99.40343 | 0.0059923 | 12023.34 | 109.6510 |
tbats | dy.wk | 2018-01-25 | 1440 | 99.83846 | 0.0021156 | 11890.55 | 109.0438 |
tbats | dy.wk | 2018-01-26 | 1440 | 99.70435 | 0.0035920 | 11901.34 | 109.0932 |
tbats | dy.wk | 2018-01-27 | 1 | 99.28059 | 0.0072201 | 11800.26 | 108.6290 |
tbats | dy.wk | 2018-01-29 | 1439 | 100.20258 | 0.0020535 | 11848.14 | 108.8492 |
tbats | dy.wk | 2018-01-30 | 1440 | 99.83701 | 0.0017895 | 11832.26 | 108.7762 |
tbats | dy.wk | 2018-01-31 | 1440 | 100.12877 | 0.0015909 | 11863.86 | 108.9214 |
tbats | dy.wk | 2018-02-01 | 1440 | 100.06158 | 0.0011196 | 11974.99 | 109.4303 |
tbats | dy.wk | 2018-02-02 | 1440 | 100.48472 | 0.0048453 | 12072.03 | 109.8728 |
tbats | dy.wk | 2018-02-03 | 1 | 100.81074 | 0.0080746 | 12138.31 | 110.1740 |
tbats | dy.wk | 2018-02-05 | 1439 | 99.74512 | 0.0026257 | 12076.74 | 109.8942 |
tbats | dy.wk | 2018-02-06 | 1440 | 100.33039 | 0.0037067 | 11906.76 | 109.1181 |
tbats | dy.wk | 2018-02-07 | 1440 | 99.77881 | 0.0023609 | 11951.00 | 109.3206 |
tbats | dy.wk | 2018-02-08 | 1440 | 100.02252 | 0.0024023 | 11957.42 | 109.3500 |
tbats | dy.wk | 2018-02-09 | 1440 | 100.08718 | 0.0019845 | 11846.29 | 108.8407 |
tbats | dy.wk | 2018-02-10 | 1 | 100.04671 | 0.0004670 | 11836.57 | 108.7960 |
tbats | dy.wk | 2018-02-12 | 1439 | 99.88780 | 0.0011777 | 11810.06 | 108.6741 |
tbats | dy.wk | 2018-02-13 | 1440 | 99.39789 | 0.0062186 | 11665.00 | 108.0046 |
tbats | dy.wk | 2018-02-14 | 1440 | 99.50171 | 0.0050093 | 11510.96 | 107.2892 |
tbats | dy.wk | 2018-02-15 | 1440 | 99.52425 | 0.0047707 | 11342.71 | 106.5021 |
tbats | dy.wk | 2018-02-16 | 1440 | 99.95453 | 0.0013695 | 11254.57 | 106.0876 |
tbats | dy.wk | 2018-02-17 | 1 | 100.16104 | 0.0016091 | 11300.97 | 106.3060 |
tbats | dy.wk | 2018-02-19 | 1439 | 100.15800 | 0.0018784 | 11336.73 | 106.4741 |
tbats | dy.wk | 2018-02-20 | 1440 | 100.39103 | 0.0039051 | 11451.01 | 107.0094 |
tbats | dy.wk | 2018-02-21 | 1440 | 100.25281 | 0.0025457 | 11577.32 | 107.5980 |
tbats | dy.wk | 2018-02-22 | 1440 | 99.46321 | 0.0053926 | 11491.09 | 107.1965 |
tbats | dy.wk | 2018-02-23 | 1440 | 100.05461 | 0.0010664 | 11409.03 | 106.8131 |
tbats | dy.wk | 2018-02-24 | 1 | 100.12833 | 0.0012825 | 11425.69 | 106.8910 |
tbats | dy.wk | 2018-02-26 | 1439 | 99.89942 | 0.0017237 | 11402.75 | 106.7837 |
tbats | dy.wk | 2018-02-27 | 1440 | 100.15783 | 0.0017643 | 11469.21 | 107.0944 |
tbats | dy.wk | 2018-02-28 | 1440 | 99.73134 | 0.0028600 | 11458.55 | 107.0446 |
tbats | dy.wk | 2018-03-01 | 1440 | 100.34611 | 0.0034715 | 11389.51 | 106.7217 |
tbats | dy.wk | 2018-03-02 | 1440 | 99.55737 | 0.0044669 | 11185.24 | 105.7603 |
tbats | dy.wk | 2018-03-03 | 1 | 99.52535 | 0.0047578 | 11177.99 | 105.7260 |
tbats | dy.wk | 2018-03-05 | 1439 | 99.98695 | 0.0020796 | 11175.08 | 105.7123 |
tbats | dy.wk | 2018-03-06 | 1440 | 99.97441 | 0.0010512 | 11275.41 | 106.1858 |
tbats | dy.wk | 2018-03-07 | 1440 | 99.67289 | 0.0032906 | 11191.63 | 105.7905 |
tbats | dy.wk | 2018-03-08 | 1440 | 100.02253 | 0.0006007 | 11257.18 | 106.0998 |
tbats | dy.wk | 2018-03-09 | 1440 | 100.47950 | 0.0047919 | 11391.07 | 106.7290 |
tbats | dy.wk | 2018-03-10 | 1 | 100.57323 | 0.0057160 | 11412.33 | 106.8285 |
tbats | dy.wk | 2018-03-12 | 1439 | 99.78720 | 0.0023352 | 11363.59 | 106.6001 |
tbats | dy.wk | 2018-03-13 | 1440 | 100.26631 | 0.0028929 | 11385.84 | 106.7044 |
tbats | dy.wk | 2018-03-14 | 1440 | 99.88330 | 0.0013307 | 11331.94 | 106.4516 |
tbats | dy.wk | 2018-03-15 | 1440 | 99.76420 | 0.0023884 | 11251.42 | 106.0727 |
tbats | dy.wk | 2018-03-16 | 1440 | 99.66767 | 0.0033339 | 11234.04 | 105.9908 |
tbats | dy.wk | 2018-03-17 | 1 | 99.66007 | 0.0034051 | 11232.29 | 105.9825 |
tbats | dy.wk | 2018-03-19 | 1439 | 99.97239 | 0.0011856 | 11226.19 | 105.9537 |
tbats | dy.wk | 2018-03-20 | 1440 | 100.20883 | 0.0022809 | 11303.43 | 106.3176 |
tbats | dy.wk | 2018-03-21 | 1440 | 99.82900 | 0.0017238 | 11310.68 | 106.3517 |
tbats | dy.wk | 2018-03-22 | 1440 | 99.65694 | 0.0034551 | 11169.29 | 105.6848 |
tbats | dy.wk | 2018-03-23 | 1440 | 99.67852 | 0.0032386 | 11013.37 | 104.9446 |
tbats | dy.wk | 2018-03-24 | 1 | 99.48100 | 0.0052035 | 10969.63 | 104.7360 |
tbats | dy.wk | 2018-03-26 | 1439 | 100.28414 | 0.0028713 | 11032.31 | 105.0348 |
tbats | dy.wk | 2018-03-27 | 1440 | 100.19630 | 0.0019777 | 11153.99 | 105.6124 |
tbats | dy.wk | 2018-03-28 | 1440 | 100.54926 | 0.0054675 | 11218.95 | 105.9196 |
tbats | dy.wk | 2018-03-29 | 1440 | 99.73413 | 0.0027026 | 11356.53 | 106.5670 |
tbats | dy.wk | 2018-03-30 | 1440 | 99.83964 | 0.0017362 | 11291.23 | 106.2602 |
tbats | dy.wk | 2018-03-31 | 1 | 99.86468 | 0.0013541 | 11296.82 | 106.2865 |
tbats | dy.wk | 2018-04-02 | 1439 | 99.93700 | 0.0011310 | 11282.62 | 106.2197 |
tbats | dy.wk | 2018-04-03 | 1440 | 100.25491 | 0.0027843 | 11270.83 | 106.1641 |
tbats | dy.wk | 2018-04-04 | 1440 | 99.54540 | 0.0045824 | 11335.18 | 106.4668 |
tbats | dy.wk | 2018-04-05 | 1440 | 100.28072 | 0.0028559 | 11466.15 | 107.0801 |
tbats | dy.wk | 2018-04-06 | 1440 | 99.58777 | 0.0041560 | 11492.45 | 107.2028 |
tbats | dy.wk | 2018-04-07 | 1 | 99.09769 | 0.0090640 | 11435.74 | 106.9380 |
tbats | dy.wk | 2018-04-09 | 1439 | 100.04137 | 0.0009026 | 11445.22 | 106.9823 |
tbats | dy.wk | 2018-04-10 | 1440 | 100.25055 | 0.0026370 | 11457.75 | 107.0409 |
tbats | dy.wk | 2018-04-11 | 1440 | 99.79341 | 0.0020919 | 11444.89 | 106.9808 |
tbats | dy.wk | 2018-04-12 | 1440 | 100.22719 | 0.0022869 | 11456.52 | 107.0351 |
tbats | dy.wk | 2018-04-13 | 1440 | 100.14077 | 0.0015197 | 11550.18 | 107.4718 |
tbats | dy.wk | 2018-04-14 | 1 | 100.03216 | 0.0003215 | 11525.20 | 107.3555 |
tbats | dy.wk | 2018-04-16 | 1439 | 99.92040 | 0.0012826 | 11506.89 | 107.2702 |
tbats | dy.wk | 2018-04-17 | 1440 | 99.88578 | 0.0011479 | 11459.97 | 107.0513 |
tbats | dy.wk | 2018-04-18 | 1440 | 100.20313 | 0.0020315 | 11496.97 | 107.2239 |
tbats | dy.wk | 2018-04-19 | 1440 | 100.12420 | 0.0012747 | 11527.97 | 107.3684 |
tbats | dy.wk | 2018-04-20 | 1440 | 100.20579 | 0.0020558 | 11575.09 | 107.5876 |
tbats | dy.wk | 2018-04-21 | 1 | 100.25642 | 0.0025609 | 11586.80 | 107.6420 |
tbats | dy.wk | 2018-04-23 | 1439 | 100.45527 | 0.0045371 | 11692.38 | 108.1313 |
tbats | dy.wk | 2018-04-24 | 1440 | 99.74900 | 0.0025303 | 11842.73 | 108.8243 |
tbats | dy.wk | 2018-04-25 | 1440 | 100.26939 | 0.0027005 | 11904.94 | 109.1097 |
tbats | dy.wk | 2018-04-26 | 1440 | 99.89896 | 0.0010293 | 11950.00 | 109.3160 |
tbats | dy.wk | 2018-04-27 | 1440 | 99.86676 | 0.0013840 | 11931.93 | 109.2334 |
tbats | dy.wk | 2018-04-28 | 1 | 99.63529 | 0.0036538 | 11893.65 | 109.0580 |
tbats | dy.wk | 2018-04-30 | 1439 | 100.14943 | 0.0014966 | 11929.23 | 109.2210 |
tbats | dy.wk | 2018-05-01 | 1440 | 100.17066 | 0.0018972 | 11996.63 | 109.5292 |
tbats | dy.wk | 2018-05-02 | 1440 | 99.71963 | 0.0028155 | 12060.18 | 109.8189 |
tbats | dy.wk | 2018-05-03 | 1440 | 99.67459 | 0.0032729 | 11987.07 | 109.4855 |
tbats | dy.wk | 2018-05-04 | 1440 | 99.89881 | 0.0010365 | 11899.13 | 109.0831 |
tbats | dy.wk | 2018-05-05 | 1 | 99.89317 | 0.0010689 | 11897.68 | 109.0765 |
tbats | dy.wk | 2018-05-07 | 1439 | 100.05805 | 0.0010939 | 11911.40 | 109.1394 |
tbats | dy.wk | 2018-05-08 | 1440 | 99.95669 | 0.0008270 | 11891.41 | 109.0477 |
tbats | dy.wk | 2018-05-09 | 1440 | 100.39570 | 0.0041001 | 12003.25 | 109.5593 |
tbats | dy.wk | 2018-05-10 | 1440 | 99.91362 | 0.0013594 | 12023.21 | 109.6504 |
tbats | dy.wk | 2018-05-11 | 1440 | 99.95849 | 0.0007077 | 11958.04 | 109.3528 |
tbats | dy.wk | 2018-05-12 | 1 | 99.98906 | 0.0001094 | 11965.30 | 109.3860 |
tbats | dy.wk | 2018-05-14 | 1439 | 100.08872 | 0.0011865 | 11982.15 | 109.4630 |
tbats | dy.wk | 2018-05-15 | 1440 | 100.30441 | 0.0030370 | 12099.12 | 109.9960 |
tbats | dy.wk | 2018-05-16 | 1440 | 99.89457 | 0.0010733 | 12151.15 | 110.2323 |
tbats | dy.wk | 2018-05-17 | 1440 | 100.13316 | 0.0020379 | 12218.46 | 110.5372 |
tbats | dy.wk | 2018-05-18 | 1440 | 100.07756 | 0.0011080 | 12287.92 | 110.8509 |
tbats | dy.wk | 2018-05-19 | 1 | 99.98898 | 0.0001102 | 12266.23 | 110.7530 |
tbats | dy.wk | 2018-05-21 | 1439 | 100.34650 | 0.0034581 | 12351.42 | 111.1370 |
tbats | dy.wk | 2018-05-22 | 1440 | 99.92250 | 0.0008507 | 12312.95 | 110.9638 |
tbats | dy.wk | 2018-05-23 | 1440 | 99.42836 | 0.0057421 | 12158.59 | 110.2660 |
tbats | dy.wk | 2018-05-24 | 1440 | 99.50393 | 0.0049757 | 11998.41 | 109.5372 |
tbats | dy.wk | 2018-05-25 | 1440 | 100.15326 | 0.0016297 | 11973.30 | 109.4226 |
tbats | dy.wk | 2018-05-26 | 1 | 100.12219 | 0.0012212 | 11965.73 | 109.3880 |
tbats | dy.wk | 2018-05-28 | 1439 | 100.05271 | 0.0008195 | 11978.37 | 109.4457 |
tbats | dy.wk | 2018-05-29 | 1440 | 99.53559 | 0.0046847 | 11861.43 | 108.9102 |
tbats | dy.wk | 2018-05-30 | 1440 | 99.98679 | 0.0013346 | 11827.26 | 108.7532 |
tbats | dy.wk | 2018-05-31 | 1440 | 99.84791 | 0.0015416 | 11824.88 | 108.7423 |
tbats | dy.wk | 2018-06-01 | 1440 | 100.38288 | 0.0039006 | 11932.57 | 109.2363 |
tbats | dy.wk | 2018-06-02 | 1 | 100.64302 | 0.0064096 | 11994.41 | 109.5190 |
tbats | dy.wk | 2018-06-04 | 1439 | 100.08194 | 0.0009610 | 12014.08 | 109.6088 |
tbats | dy.wk | 2018-06-05 | 1440 | 99.98097 | 0.0006841 | 12054.61 | 109.7935 |
tbats | dy.wk | 2018-06-06 | 1440 | 100.20143 | 0.0020119 | 12102.82 | 110.0128 |
tbats | dy.wk | 2018-06-07 | 1440 | 99.79109 | 0.0020993 | 12089.87 | 109.9539 |
tbats | dy.wk | 2018-06-08 | 1440 | 99.85568 | 0.0016476 | 11999.72 | 109.5433 |
tbats | dy.wk | 2018-06-09 | 1 | 99.84628 | 0.0015384 | 11997.37 | 109.5325 |
tbats | dy.wk | 2018-06-11 | 1439 | 100.26979 | 0.0031257 | 12060.77 | 109.8215 |
tbats | dy.wk | 2018-06-12 | 1440 | 100.22350 | 0.0022397 | 12161.63 | 110.2798 |
tbats | dy.wk | 2018-06-13 | 1440 | 100.13184 | 0.0013496 | 12214.51 | 110.5193 |
tbats | dy.wk | 2018-06-14 | 1440 | 100.01357 | 0.0017755 | 12155.51 | 110.2520 |
tbats | dy.wk | 2018-06-15 | 1440 | 99.98691 | 0.0007286 | 12236.36 | 110.6181 |
tbats | dy.wk | 2018-06-16 | 1 | 100.02951 | 0.0002950 | 12246.85 | 110.6655 |
tbats | dy.wk | 2018-06-18 | 1439 | 99.73463 | 0.0026812 | 12212.85 | 110.5118 |
tbats | dy.wk | 2018-06-19 | 1440 | 99.50587 | 0.0049741 | 12092.22 | 109.9646 |
tbats | dy.wk | 2018-06-20 | 1440 | 100.07804 | 0.0009210 | 12131.88 | 110.1448 |
tbats | dy.wk | 2018-06-21 | 1440 | 99.97948 | 0.0019765 | 12174.11 | 110.3364 |
tbats | dy.wk | 2018-06-22 | 1440 | 100.02378 | 0.0006665 | 12102.67 | 110.0121 |
tbats | dy.wk | 2018-06-23 | 1 | 100.00121 | 0.0000121 | 12097.14 | 109.9870 |
tbats | dy.wk | 2018-06-25 | 1439 | 99.64515 | 0.0035570 | 12011.46 | 109.5968 |
tbats | dy.wk | 2018-06-26 | 1440 | 99.97638 | 0.0016587 | 12042.42 | 109.7380 |
tbats | dy.wk | 2018-06-27 | 1440 | 100.03185 | 0.0016468 | 12115.29 | 110.0695 |
tbats | dy.wk | 2018-06-28 | 1440 | 100.02201 | 0.0008679 | 12163.27 | 110.2872 |
tbats | dy.wk | 2018-06-29 | 1440 | 100.14350 | 0.0015279 | 12244.61 | 110.6554 |
tbats | dy.wk | 2018-06-30 | 1 | 100.17294 | 0.0017280 | 12251.83 | 110.6880 |
tbats | dy.wk | 2018-07-02 | 1439 | 100.10289 | 0.0010493 | 12277.07 | 110.8019 |
tbats | dy.wk | 2018-07-03 | 1440 | 99.90796 | 0.0012733 | 12275.38 | 110.7943 |
tbats | dy.wk | 2018-07-04 | 1440 | 99.89755 | 0.0010281 | 12203.16 | 110.4679 |
tbats | dy.wk | 2018-07-05 | 1440 | 100.05220 | 0.0009800 | 12224.79 | 110.5658 |
tbats | dy.wk | 2018-07-06 | 1440 | 99.88804 | 0.0012403 | 12229.69 | 110.5879 |
tbats | dy.wk | 2018-07-07 | 1 | 99.71514 | 0.0028526 | 12202.18 | 110.4635 |
tbats | dy.wk.mo | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.wk.mo | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.wk.mo | 2018-01-05 | 1440 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
tbats | dy.wk.mo | 2018-01-06 | 1 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
tbats | dy.wk.mo | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.wk.mo | 2018-01-09 | 1440 | 100.04867 | 0.0012931 | 12709.18 | 112.7350 |
tbats | dy.wk.mo | 2018-01-10 | 1440 | 99.27259 | 0.0073400 | 12512.95 | 111.8613 |
tbats | dy.wk.mo | 2018-01-11 | 1440 | 98.96225 | 0.0104334 | 12434.67 | 111.5109 |
tbats | dy.wk.mo | 2018-01-12 | 1440 | 98.69954 | 0.0130904 | 12368.72 | 111.2147 |
tbats | dy.wk.mo | 2018-01-13 | 1 | 98.52946 | 0.0148143 | 12326.11 | 111.0230 |
tbats | dy.wk.mo | 2018-01-15 | 1439 | 98.22265 | 0.0179342 | 12249.50 | 110.6774 |
tbats | dy.wk.mo | 2018-01-16 | 1440 | 98.24796 | 0.0176763 | 12255.80 | 110.7059 |
tbats | dy.wk.mo | 2018-01-17 | 1440 | 98.26609 | 0.0174925 | 12260.34 | 110.7264 |
tbats | dy.wk.mo | 2018-01-18 | 1440 | 98.67172 | 0.0133725 | 12361.75 | 111.1834 |
tbats | dy.wk.mo | 2018-01-19 | 1440 | 99.69249 | 0.0030811 | 12269.67 | 110.7685 |
tbats | dy.wk.mo | 2018-01-20 | 1 | 99.75338 | 0.0024692 | 12284.40 | 110.8350 |
tbats | dy.wk.mo | 2018-01-22 | 1439 | 99.99251 | 0.0009302 | 12282.58 | 110.8268 |
tbats | dy.wk.mo | 2018-01-23 | 1440 | 99.75482 | 0.0027101 | 12243.49 | 110.6503 |
tbats | dy.wk.mo | 2018-01-24 | 1440 | 99.40332 | 0.0059934 | 12023.34 | 109.6510 |
tbats | dy.wk.mo | 2018-01-25 | 1440 | 99.83230 | 0.0021505 | 11890.55 | 109.0438 |
tbats | dy.wk.mo | 2018-01-26 | 1440 | 99.70441 | 0.0035916 | 11901.34 | 109.0932 |
tbats | dy.wk.mo | 2018-01-27 | 1 | 99.28065 | 0.0072194 | 11800.26 | 108.6290 |
tbats | dy.wk.mo | 2018-01-29 | 1439 | 100.20258 | 0.0020535 | 11848.14 | 108.8492 |
tbats | dy.wk.mo | 2018-01-30 | 1440 | 99.83698 | 0.0017898 | 11832.26 | 108.7762 |
tbats | dy.wk.mo | 2018-01-31 | 1440 | 100.12876 | 0.0015908 | 11863.86 | 108.9214 |
tbats | dy.wk.mo | 2018-02-01 | 1440 | 100.21049 | 0.0021305 | 11974.99 | 109.4303 |
tbats | dy.wk.mo | 2018-02-02 | 1440 | 100.43510 | 0.0043575 | 12072.03 | 109.8728 |
tbats | dy.wk.mo | 2018-02-03 | 1 | 100.71076 | 0.0070825 | 12138.31 | 110.1740 |
tbats | dy.wk.mo | 2018-02-05 | 1439 | 99.74585 | 0.0026193 | 12076.74 | 109.8942 |
tbats | dy.wk.mo | 2018-02-06 | 1440 | 100.03700 | 0.0019386 | 11906.76 | 109.1181 |
tbats | dy.wk.mo | 2018-02-07 | 1440 | 99.78077 | 0.0023408 | 11951.00 | 109.3206 |
tbats | dy.wk.mo | 2018-02-08 | 1440 | 100.02272 | 0.0024028 | 11957.42 | 109.3500 |
tbats | dy.wk.mo | 2018-02-09 | 1440 | 100.08822 | 0.0019891 | 11846.29 | 108.8407 |
tbats | dy.wk.mo | 2018-02-10 | 1 | 100.04775 | 0.0004774 | 11836.57 | 108.7960 |
tbats | dy.wk.mo | 2018-02-12 | 1439 | 99.88791 | 0.0011769 | 11810.06 | 108.6741 |
tbats | dy.wk.mo | 2018-02-13 | 1440 | 99.39810 | 0.0062174 | 11665.00 | 108.0046 |
tbats | dy.wk.mo | 2018-02-14 | 1440 | 99.50154 | 0.0050108 | 11510.96 | 107.2892 |
tbats | dy.wk.mo | 2018-02-15 | 1440 | 99.52426 | 0.0047706 | 11342.71 | 106.5021 |
tbats | dy.wk.mo | 2018-02-16 | 1440 | 99.95424 | 0.0013696 | 11254.57 | 106.0876 |
tbats | dy.wk.mo | 2018-02-17 | 1 | 100.16075 | 0.0016062 | 11300.97 | 106.3060 |
tbats | dy.wk.mo | 2018-02-19 | 1439 | 100.15800 | 0.0018784 | 11336.73 | 106.4741 |
tbats | dy.wk.mo | 2018-02-20 | 1440 | 100.39102 | 0.0039050 | 11451.01 | 107.0094 |
tbats | dy.wk.mo | 2018-02-21 | 1440 | 100.25294 | 0.0025469 | 11577.32 | 107.5980 |
tbats | dy.wk.mo | 2018-02-22 | 1440 | 99.46305 | 0.0053942 | 11491.09 | 107.1965 |
tbats | dy.wk.mo | 2018-02-23 | 1440 | 100.05462 | 0.0010665 | 11409.03 | 106.8131 |
tbats | dy.wk.mo | 2018-02-24 | 1 | 100.12833 | 0.0012825 | 11425.69 | 106.8910 |
tbats | dy.wk.mo | 2018-02-26 | 1439 | 99.89992 | 0.0017227 | 11402.75 | 106.7837 |
tbats | dy.wk.mo | 2018-02-27 | 1440 | 100.15656 | 0.0017561 | 11469.21 | 107.0944 |
tbats | dy.wk.mo | 2018-02-28 | 1440 | 99.73123 | 0.0028608 | 11458.55 | 107.0446 |
tbats | dy.wk.mo | 2018-03-01 | 1440 | 100.04075 | 0.0014256 | 11389.51 | 106.7217 |
tbats | dy.wk.mo | 2018-03-02 | 1440 | 99.55676 | 0.0044703 | 11185.24 | 105.7603 |
tbats | dy.wk.mo | 2018-03-03 | 1 | 99.52516 | 0.0047597 | 11177.99 | 105.7260 |
tbats | dy.wk.mo | 2018-03-05 | 1439 | 99.98664 | 0.0020807 | 11175.08 | 105.7123 |
tbats | dy.wk.mo | 2018-03-06 | 1440 | 99.97469 | 0.0010507 | 11275.41 | 106.1858 |
tbats | dy.wk.mo | 2018-03-07 | 1440 | 99.67290 | 0.0032905 | 11191.63 | 105.7905 |
tbats | dy.wk.mo | 2018-03-08 | 1440 | 100.02255 | 0.0006007 | 11257.18 | 106.0998 |
tbats | dy.wk.mo | 2018-03-09 | 1440 | 100.47932 | 0.0047901 | 11391.07 | 106.7290 |
tbats | dy.wk.mo | 2018-03-10 | 1 | 100.57305 | 0.0057141 | 11412.33 | 106.8285 |
tbats | dy.wk.mo | 2018-03-12 | 1439 | 99.78612 | 0.0023430 | 11363.59 | 106.6001 |
tbats | dy.wk.mo | 2018-03-13 | 1440 | 100.26621 | 0.0028923 | 11385.84 | 106.7044 |
tbats | dy.wk.mo | 2018-03-14 | 1440 | 99.90992 | 0.0011263 | 11331.94 | 106.4516 |
tbats | dy.wk.mo | 2018-03-15 | 1440 | 99.76437 | 0.0023870 | 11251.42 | 106.0727 |
tbats | dy.wk.mo | 2018-03-16 | 1440 | 99.66767 | 0.0033339 | 11234.04 | 105.9908 |
tbats | dy.wk.mo | 2018-03-17 | 1 | 99.66007 | 0.0034051 | 11232.29 | 105.9825 |
tbats | dy.wk.mo | 2018-03-19 | 1439 | 99.97277 | 0.0011850 | 11226.19 | 105.9537 |
tbats | dy.wk.mo | 2018-03-20 | 1440 | 100.20883 | 0.0022809 | 11303.43 | 106.3176 |
tbats | dy.wk.mo | 2018-03-21 | 1440 | 99.82904 | 0.0017235 | 11310.68 | 106.3517 |
tbats | dy.wk.mo | 2018-03-22 | 1440 | 99.65783 | 0.0034469 | 11169.29 | 105.6848 |
tbats | dy.wk.mo | 2018-03-23 | 1440 | 99.67866 | 0.0032373 | 11013.37 | 104.9446 |
tbats | dy.wk.mo | 2018-03-24 | 1 | 99.48114 | 0.0052021 | 10969.63 | 104.7360 |
tbats | dy.wk.mo | 2018-03-26 | 1439 | 100.28468 | 0.0028761 | 11032.31 | 105.0348 |
tbats | dy.wk.mo | 2018-03-27 | 1440 | 100.19572 | 0.0019723 | 11153.99 | 105.6124 |
tbats | dy.wk.mo | 2018-03-28 | 1440 | 100.54889 | 0.0054639 | 11218.95 | 105.9196 |
tbats | dy.wk.mo | 2018-03-29 | 1440 | 99.73405 | 0.0027033 | 11356.53 | 106.5670 |
tbats | dy.wk.mo | 2018-03-30 | 1440 | 99.83897 | 0.0017410 | 11291.23 | 106.2602 |
tbats | dy.wk.mo | 2018-03-31 | 1 | 99.86401 | 0.0013609 | 11296.82 | 106.2865 |
tbats | dy.wk.mo | 2018-04-02 | 1439 | 99.93685 | 0.0011308 | 11282.62 | 106.2197 |
tbats | dy.wk.mo | 2018-04-03 | 1440 | 100.25379 | 0.0027780 | 11270.83 | 106.1641 |
tbats | dy.wk.mo | 2018-04-04 | 1440 | 99.86600 | 0.0017314 | 11335.18 | 106.4668 |
tbats | dy.wk.mo | 2018-04-05 | 1440 | 100.28118 | 0.0028540 | 11466.15 | 107.0801 |
tbats | dy.wk.mo | 2018-04-06 | 1440 | 99.83234 | 0.0017710 | 11492.45 | 107.2028 |
tbats | dy.wk.mo | 2018-04-07 | 1 | 99.58544 | 0.0041542 | 11435.74 | 106.9380 |
tbats | dy.wk.mo | 2018-04-09 | 1439 | 100.04104 | 0.0009013 | 11445.22 | 106.9823 |
tbats | dy.wk.mo | 2018-04-10 | 1440 | 100.25012 | 0.0026340 | 11457.75 | 107.0409 |
tbats | dy.wk.mo | 2018-04-11 | 1440 | 99.79295 | 0.0020960 | 11444.89 | 106.9808 |
tbats | dy.wk.mo | 2018-04-12 | 1440 | 100.22683 | 0.0022835 | 11456.52 | 107.0351 |
tbats | dy.wk.mo | 2018-04-13 | 1440 | 100.14075 | 0.0015196 | 11550.18 | 107.4718 |
tbats | dy.wk.mo | 2018-04-14 | 1 | 100.03214 | 0.0003213 | 11525.20 | 107.3555 |
tbats | dy.wk.mo | 2018-04-16 | 1439 | 99.91984 | 0.0012857 | 11506.89 | 107.2702 |
tbats | dy.wk.mo | 2018-04-17 | 1440 | 99.93762 | 0.0006963 | 11459.97 | 107.0513 |
tbats | dy.wk.mo | 2018-04-18 | 1440 | 100.20343 | 0.0020336 | 11496.97 | 107.2239 |
tbats | dy.wk.mo | 2018-04-19 | 1440 | 100.12287 | 0.0012637 | 11527.97 | 107.3684 |
tbats | dy.wk.mo | 2018-04-20 | 1440 | 100.20507 | 0.0020488 | 11575.09 | 107.5876 |
tbats | dy.wk.mo | 2018-04-21 | 1 | 100.25569 | 0.0025537 | 11586.80 | 107.6420 |
tbats | dy.wk.mo | 2018-04-23 | 1439 | 100.45574 | 0.0045417 | 11692.38 | 108.1313 |
tbats | dy.wk.mo | 2018-04-24 | 1440 | 100.11075 | 0.0011923 | 11842.73 | 108.8243 |
tbats | dy.wk.mo | 2018-04-25 | 1440 | 100.27006 | 0.0026985 | 11904.94 | 109.1097 |
tbats | dy.wk.mo | 2018-04-26 | 1440 | 99.89898 | 0.0010292 | 11950.00 | 109.3160 |
tbats | dy.wk.mo | 2018-04-27 | 1440 | 99.93741 | 0.0008737 | 11931.93 | 109.2334 |
tbats | dy.wk.mo | 2018-04-28 | 1 | 99.77707 | 0.0022318 | 11893.65 | 109.0580 |
tbats | dy.wk.mo | 2018-04-30 | 1439 | 100.14942 | 0.0014966 | 11929.23 | 109.2210 |
tbats | dy.wk.mo | 2018-05-01 | 1440 | 100.17088 | 0.0018985 | 11996.63 | 109.5292 |
tbats | dy.wk.mo | 2018-05-02 | 1440 | 99.95836 | 0.0006552 | 12060.18 | 109.8189 |
tbats | dy.wk.mo | 2018-05-03 | 1440 | 99.67923 | 0.0032295 | 11987.07 | 109.4855 |
tbats | dy.wk.mo | 2018-05-04 | 1440 | 99.89909 | 0.0010340 | 11899.13 | 109.0831 |
tbats | dy.wk.mo | 2018-05-05 | 1 | 99.89345 | 0.0010661 | 11897.68 | 109.0765 |
tbats | dy.wk.mo | 2018-05-07 | 1439 | 100.05811 | 0.0010942 | 11911.40 | 109.1394 |
tbats | dy.wk.mo | 2018-05-08 | 1440 | 99.99397 | 0.0008230 | 11891.41 | 109.0477 |
tbats | dy.wk.mo | 2018-05-09 | 1440 | 100.39515 | 0.0040964 | 12003.25 | 109.5593 |
tbats | dy.wk.mo | 2018-05-10 | 1440 | 99.91388 | 0.0013583 | 12023.21 | 109.6504 |
tbats | dy.wk.mo | 2018-05-11 | 1440 | 99.95859 | 0.0007073 | 11958.04 | 109.3528 |
tbats | dy.wk.mo | 2018-05-12 | 1 | 99.98916 | 0.0001084 | 11965.30 | 109.3860 |
tbats | dy.wk.mo | 2018-05-14 | 1439 | 100.07057 | 0.0011009 | 11982.15 | 109.4630 |
tbats | dy.wk.mo | 2018-05-15 | 1440 | 100.30322 | 0.0030251 | 12099.12 | 109.9960 |
tbats | dy.wk.mo | 2018-05-16 | 1440 | 99.89373 | 0.0010812 | 12151.15 | 110.2323 |
tbats | dy.wk.mo | 2018-05-17 | 1440 | 100.12935 | 0.0020285 | 12218.46 | 110.5372 |
tbats | dy.wk.mo | 2018-05-18 | 1440 | 100.07736 | 0.0011070 | 12287.92 | 110.8509 |
tbats | dy.wk.mo | 2018-05-19 | 1 | 99.98879 | 0.0001121 | 12266.23 | 110.7530 |
tbats | dy.wk.mo | 2018-05-21 | 1439 | 100.34640 | 0.0034570 | 12351.42 | 111.1370 |
tbats | dy.wk.mo | 2018-05-22 | 1440 | 99.92095 | 0.0008638 | 12312.95 | 110.9638 |
tbats | dy.wk.mo | 2018-05-23 | 1440 | 99.42891 | 0.0057369 | 12158.59 | 110.2660 |
tbats | dy.wk.mo | 2018-05-24 | 1440 | 99.50389 | 0.0049761 | 11998.41 | 109.5372 |
tbats | dy.wk.mo | 2018-05-25 | 1440 | 100.15303 | 0.0016280 | 11973.30 | 109.4226 |
tbats | dy.wk.mo | 2018-05-26 | 1 | 100.12197 | 0.0012189 | 11965.73 | 109.3880 |
tbats | dy.wk.mo | 2018-05-28 | 1439 | 100.05252 | 0.0008190 | 11978.37 | 109.4457 |
tbats | dy.wk.mo | 2018-05-29 | 1440 | 99.53550 | 0.0046855 | 11861.43 | 108.9102 |
tbats | dy.wk.mo | 2018-05-30 | 1440 | 99.98947 | 0.0013353 | 11827.26 | 108.7532 |
tbats | dy.wk.mo | 2018-05-31 | 1440 | 99.84810 | 0.0015399 | 11824.88 | 108.7423 |
tbats | dy.wk.mo | 2018-06-01 | 1440 | 100.38157 | 0.0038911 | 11932.57 | 109.2363 |
tbats | dy.wk.mo | 2018-06-02 | 1 | 100.64171 | 0.0063966 | 11994.41 | 109.5190 |
tbats | dy.wk.mo | 2018-06-04 | 1439 | 100.08218 | 0.0009625 | 12014.08 | 109.6088 |
tbats | dy.wk.mo | 2018-06-05 | 1440 | 99.98083 | 0.0006843 | 12054.61 | 109.7935 |
tbats | dy.wk.mo | 2018-06-06 | 1440 | 100.20096 | 0.0020072 | 12102.82 | 110.0128 |
tbats | dy.wk.mo | 2018-06-07 | 1440 | 99.79182 | 0.0020921 | 12089.87 | 109.9539 |
tbats | dy.wk.mo | 2018-06-08 | 1440 | 99.85533 | 0.0016495 | 11999.72 | 109.5433 |
tbats | dy.wk.mo | 2018-06-09 | 1 | 99.84593 | 0.0015419 | 11997.37 | 109.5325 |
tbats | dy.wk.mo | 2018-06-11 | 1439 | 100.26559 | 0.0031034 | 12060.77 | 109.8215 |
tbats | dy.wk.mo | 2018-06-12 | 1440 | 100.22377 | 0.0022423 | 12161.63 | 110.2798 |
tbats | dy.wk.mo | 2018-06-13 | 1440 | 100.13182 | 0.0013493 | 12214.51 | 110.5193 |
tbats | dy.wk.mo | 2018-06-14 | 1440 | 99.91684 | 0.0017045 | 12155.51 | 110.2520 |
tbats | dy.wk.mo | 2018-06-15 | 1440 | 99.98717 | 0.0007262 | 12236.36 | 110.6181 |
tbats | dy.wk.mo | 2018-06-16 | 1 | 100.02990 | 0.0002990 | 12246.85 | 110.6655 |
tbats | dy.wk.mo | 2018-06-18 | 1439 | 99.86132 | 0.0014160 | 12212.85 | 110.5118 |
tbats | dy.wk.mo | 2018-06-19 | 1440 | 99.47094 | 0.0053130 | 12092.22 | 109.9646 |
tbats | dy.wk.mo | 2018-06-20 | 1440 | 100.07800 | 0.0009213 | 12131.88 | 110.1448 |
tbats | dy.wk.mo | 2018-06-21 | 1440 | 99.97946 | 0.0019765 | 12174.11 | 110.3364 |
tbats | dy.wk.mo | 2018-06-22 | 1440 | 100.02351 | 0.0006666 | 12102.67 | 110.0121 |
tbats | dy.wk.mo | 2018-06-23 | 1 | 100.00094 | 0.0000094 | 12097.14 | 109.9870 |
tbats | dy.wk.mo | 2018-06-25 | 1439 | 99.64560 | 0.0035526 | 12011.46 | 109.5968 |
tbats | dy.wk.mo | 2018-06-26 | 1440 | 99.97621 | 0.0016593 | 12042.42 | 109.7380 |
tbats | dy.wk.mo | 2018-06-27 | 1440 | 100.03140 | 0.0016467 | 12115.29 | 110.0695 |
tbats | dy.wk.mo | 2018-06-28 | 1440 | 100.02220 | 0.0008680 | 12163.27 | 110.2872 |
tbats | dy.wk.mo | 2018-06-29 | 1440 | 100.14344 | 0.0015275 | 12244.61 | 110.6554 |
tbats | dy.wk.mo | 2018-06-30 | 1 | 100.17289 | 0.0017274 | 12251.83 | 110.6880 |
tbats | dy.wk.mo | 2018-07-02 | 1439 | 100.10290 | 0.0010493 | 12277.07 | 110.8019 |
tbats | dy.wk.mo | 2018-07-03 | 1440 | 99.90795 | 0.0012733 | 12275.38 | 110.7943 |
tbats | dy.wk.mo | 2018-07-04 | 1440 | 99.89755 | 0.0010281 | 12203.16 | 110.4679 |
tbats | dy.wk.mo | 2018-07-05 | 1440 | 100.05220 | 0.0009800 | 12224.79 | 110.5658 |
tbats | dy.wk.mo | 2018-07-06 | 1440 | 99.94879 | 0.0007997 | 12229.69 | 110.5879 |
tbats | dy.wk.mo | 2018-07-07 | 1 | 99.83627 | 0.0016386 | 12202.18 | 110.4635 |
tbats | dy.yr | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.yr | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.yr | 2018-01-05 | 1440 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
tbats | dy.yr | 2018-01-06 | 1 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
tbats | dy.yr | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.yr | 2018-01-09 | 1440 | 100.04867 | 0.0012931 | 12709.18 | 112.7350 |
tbats | dy.yr | 2018-01-10 | 1440 | 99.27259 | 0.0073400 | 12512.95 | 111.8613 |
tbats | dy.yr | 2018-01-11 | 1440 | 98.96225 | 0.0104334 | 12434.67 | 111.5109 |
tbats | dy.yr | 2018-01-12 | 1440 | 98.69954 | 0.0130904 | 12368.72 | 111.2147 |
tbats | dy.yr | 2018-01-13 | 1 | 98.52946 | 0.0148143 | 12326.11 | 111.0230 |
tbats | dy.yr | 2018-01-15 | 1439 | 98.22265 | 0.0179342 | 12249.50 | 110.6774 |
tbats | dy.yr | 2018-01-16 | 1440 | 98.24796 | 0.0176763 | 12255.80 | 110.7059 |
tbats | dy.yr | 2018-01-17 | 1440 | 98.26609 | 0.0174925 | 12260.34 | 110.7264 |
tbats | dy.yr | 2018-01-18 | 1440 | 98.67172 | 0.0133725 | 12361.75 | 111.1834 |
tbats | dy.yr | 2018-01-19 | 1440 | 98.30353 | 0.0171110 | 12269.67 | 110.7685 |
tbats | dy.yr | 2018-01-20 | 1 | 98.36262 | 0.0165090 | 12284.40 | 110.8350 |
tbats | dy.yr | 2018-01-22 | 1439 | 98.35525 | 0.0165846 | 12282.58 | 110.8268 |
tbats | dy.yr | 2018-01-23 | 1440 | 98.19844 | 0.0181820 | 12243.49 | 110.6503 |
tbats | dy.yr | 2018-01-24 | 1440 | 97.31119 | 0.0272614 | 12023.34 | 109.6510 |
tbats | dy.yr | 2018-01-25 | 1440 | 96.77278 | 0.0328036 | 11890.55 | 109.0438 |
tbats | dy.yr | 2018-01-26 | 1440 | 96.81623 | 0.0323591 | 11901.34 | 109.0932 |
tbats | dy.yr | 2018-01-27 | 1 | 96.40486 | 0.0366094 | 11800.26 | 108.6290 |
tbats | dy.yr | 2018-01-29 | 1439 | 96.60017 | 0.0345871 | 11848.14 | 108.8492 |
tbats | dy.yr | 2018-01-30 | 1440 | 96.53542 | 0.0352574 | 11832.26 | 108.7762 |
tbats | dy.yr | 2018-01-31 | 1440 | 96.66416 | 0.0339260 | 11863.86 | 108.9214 |
tbats | dy.yr | 2018-02-01 | 1440 | 97.11590 | 0.0292640 | 11974.99 | 109.4303 |
tbats | dy.yr | 2018-02-02 | 1440 | 97.50825 | 0.0252362 | 12072.03 | 109.8728 |
tbats | dy.yr | 2018-02-03 | 1 | 97.77600 | 0.0224901 | 12138.31 | 110.1740 |
tbats | dy.yr | 2018-02-05 | 1439 | 97.52750 | 0.0250364 | 12076.74 | 109.8942 |
tbats | dy.yr | 2018-02-06 | 1440 | 96.83864 | 0.0321241 | 11906.76 | 109.1181 |
tbats | dy.yr | 2018-02-07 | 1440 | 97.01853 | 0.0302673 | 11951.00 | 109.3206 |
tbats | dy.yr | 2018-02-08 | 1440 | 97.04430 | 0.0300045 | 11957.42 | 109.3500 |
tbats | dy.yr | 2018-02-09 | 1440 | 96.59248 | 0.0346683 | 11846.29 | 108.8407 |
tbats | dy.yr | 2018-02-10 | 1 | 96.55307 | 0.0350738 | 11836.57 | 108.7960 |
tbats | dy.yr | 2018-02-12 | 1439 | 96.44488 | 0.0361948 | 11810.06 | 108.6741 |
tbats | dy.yr | 2018-02-13 | 1440 | 95.84988 | 0.0423895 | 11665.00 | 108.0046 |
tbats | dy.yr | 2018-02-14 | 1440 | 95.21545 | 0.0490216 | 11510.96 | 107.2892 |
tbats | dy.yr | 2018-02-15 | 1440 | 94.51717 | 0.0563755 | 11342.71 | 106.5021 |
tbats | dy.yr | 2018-02-16 | 1440 | 94.14929 | 0.0602717 | 11254.57 | 106.0876 |
tbats | dy.yr | 2018-02-17 | 1 | 94.34327 | 0.0582138 | 11300.97 | 106.3060 |
tbats | dy.yr | 2018-02-19 | 1439 | 94.49234 | 0.0566373 | 11336.73 | 106.4741 |
tbats | dy.yr | 2018-02-20 | 1440 | 94.96731 | 0.0516282 | 11451.01 | 107.0094 |
tbats | dy.yr | 2018-02-21 | 1440 | 95.48977 | 0.0461438 | 11577.32 | 107.5980 |
tbats | dy.yr | 2018-02-22 | 1440 | 95.13313 | 0.0498868 | 11491.09 | 107.1965 |
tbats | dy.yr | 2018-02-23 | 1440 | 94.79322 | 0.0534602 | 11409.03 | 106.8131 |
tbats | dy.yr | 2018-02-24 | 1 | 94.86244 | 0.0527301 | 11425.69 | 106.8910 |
tbats | dy.yr | 2018-02-26 | 1439 | 94.76703 | 0.0537373 | 11402.75 | 106.7837 |
tbats | dy.yr | 2018-02-27 | 1440 | 95.04278 | 0.0508339 | 11469.21 | 107.0944 |
tbats | dy.yr | 2018-02-28 | 1440 | 94.99853 | 0.0512998 | 11458.55 | 107.0446 |
tbats | dy.yr | 2018-03-01 | 1440 | 94.71199 | 0.0543178 | 11389.51 | 106.7217 |
tbats | dy.yr | 2018-03-02 | 1440 | 93.85861 | 0.0633632 | 11185.24 | 105.7603 |
tbats | dy.yr | 2018-03-03 | 1 | 93.82854 | 0.0636796 | 11177.99 | 105.7260 |
tbats | dy.yr | 2018-03-05 | 1439 | 93.81607 | 0.0638152 | 11175.08 | 105.7123 |
tbats | dy.yr | 2018-03-06 | 1440 | 94.23648 | 0.0593462 | 11275.41 | 106.1858 |
tbats | dy.yr | 2018-03-07 | 1440 | 93.88564 | 0.0630732 | 11191.63 | 105.7905 |
tbats | dy.yr | 2018-03-08 | 1440 | 94.16030 | 0.0601537 | 11257.18 | 106.0998 |
tbats | dy.yr | 2018-03-09 | 1440 | 94.71853 | 0.0542485 | 11391.07 | 106.7290 |
tbats | dy.yr | 2018-03-10 | 1 | 94.80698 | 0.0533146 | 11412.33 | 106.8285 |
tbats | dy.yr | 2018-03-12 | 1439 | 94.60420 | 0.0554551 | 11363.59 | 106.6001 |
tbats | dy.yr | 2018-03-13 | 1440 | 94.69656 | 0.0544823 | 11385.84 | 106.7044 |
tbats | dy.yr | 2018-03-14 | 1440 | 94.47241 | 0.0568478 | 11331.94 | 106.4516 |
tbats | dy.yr | 2018-03-15 | 1440 | 94.13614 | 0.0604106 | 11251.42 | 106.0727 |
tbats | dy.yr | 2018-03-16 | 1440 | 94.06334 | 0.0611845 | 11234.04 | 105.9908 |
tbats | dy.yr | 2018-03-17 | 1 | 94.05618 | 0.0612588 | 11232.29 | 105.9825 |
tbats | dy.yr | 2018-03-19 | 1439 | 94.03056 | 0.0615318 | 11226.19 | 105.9537 |
tbats | dy.yr | 2018-03-20 | 1440 | 94.35346 | 0.0581070 | 11303.43 | 106.3176 |
tbats | dy.yr | 2018-03-21 | 1440 | 94.38374 | 0.0577863 | 11310.68 | 106.3517 |
tbats | dy.yr | 2018-03-22 | 1440 | 93.79186 | 0.0640717 | 11169.29 | 105.6848 |
tbats | dy.yr | 2018-03-23 | 1440 | 93.13497 | 0.0710915 | 11013.37 | 104.9446 |
tbats | dy.yr | 2018-03-24 | 1 | 92.94995 | 0.0730765 | 10969.63 | 104.7360 |
tbats | dy.yr | 2018-03-26 | 1439 | 93.21499 | 0.0702341 | 11032.31 | 105.0348 |
tbats | dy.yr | 2018-03-27 | 1440 | 93.72770 | 0.0647543 | 11153.99 | 105.6124 |
tbats | dy.yr | 2018-03-28 | 1440 | 93.99928 | 0.0618740 | 11218.95 | 105.9196 |
tbats | dy.yr | 2018-03-29 | 1440 | 94.57484 | 0.0557653 | 11356.53 | 106.5670 |
tbats | dy.yr | 2018-03-30 | 1440 | 94.30258 | 0.0586453 | 11291.23 | 106.2602 |
tbats | dy.yr | 2018-03-31 | 1 | 94.32597 | 0.0583971 | 11296.82 | 106.2865 |
tbats | dy.yr | 2018-04-02 | 1439 | 94.26654 | 0.0590282 | 11282.62 | 106.2197 |
tbats | dy.yr | 2018-04-03 | 1440 | 94.21706 | 0.0595547 | 11270.83 | 106.1641 |
tbats | dy.yr | 2018-04-04 | 1440 | 94.48582 | 0.0567069 | 11335.18 | 106.4668 |
tbats | dy.yr | 2018-04-05 | 1440 | 95.03004 | 0.0509684 | 11466.15 | 107.0801 |
tbats | dy.yr | 2018-04-06 | 1440 | 95.13907 | 0.0498215 | 11492.45 | 107.2028 |
tbats | dy.yr | 2018-04-07 | 1 | 94.90415 | 0.0522908 | 11435.74 | 106.9380 |
tbats | dy.yr | 2018-04-09 | 1439 | 94.94345 | 0.0518776 | 11445.22 | 106.9823 |
tbats | dy.yr | 2018-04-10 | 1440 | 94.99533 | 0.0513325 | 11457.75 | 107.0409 |
tbats | dy.yr | 2018-04-11 | 1440 | 94.94205 | 0.0518926 | 11444.89 | 106.9808 |
tbats | dy.yr | 2018-04-12 | 1440 | 94.99019 | 0.0513869 | 11456.52 | 107.0351 |
tbats | dy.yr | 2018-04-13 | 1440 | 95.37779 | 0.0473164 | 11550.18 | 107.4718 |
tbats | dy.yr | 2018-04-14 | 1 | 95.27467 | 0.0483967 | 11525.20 | 107.3555 |
tbats | dy.yr | 2018-04-16 | 1439 | 95.19887 | 0.0491929 | 11506.89 | 107.2702 |
tbats | dy.yr | 2018-04-17 | 1440 | 95.00464 | 0.0512334 | 11459.97 | 107.0513 |
tbats | dy.yr | 2018-04-18 | 1440 | 95.15786 | 0.0496232 | 11496.97 | 107.2239 |
tbats | dy.yr | 2018-04-19 | 1440 | 95.28609 | 0.0482772 | 11527.97 | 107.3684 |
tbats | dy.yr | 2018-04-20 | 1440 | 95.48061 | 0.0462391 | 11575.09 | 107.5876 |
tbats | dy.yr | 2018-04-21 | 1 | 95.52893 | 0.0457331 | 11586.80 | 107.6420 |
tbats | dy.yr | 2018-04-23 | 1439 | 95.96268 | 0.0412102 | 11692.38 | 108.1313 |
tbats | dy.yr | 2018-04-24 | 1440 | 96.57811 | 0.0348152 | 11842.73 | 108.8243 |
tbats | dy.yr | 2018-04-25 | 1440 | 96.83137 | 0.0321978 | 11904.94 | 109.1097 |
tbats | dy.yr | 2018-04-26 | 1440 | 97.01456 | 0.0303070 | 11950.00 | 109.3160 |
tbats | dy.yr | 2018-04-27 | 1440 | 96.94119 | 0.0310636 | 11931.93 | 109.2334 |
tbats | dy.yr | 2018-04-28 | 1 | 96.78559 | 0.0326692 | 11893.65 | 109.0580 |
tbats | dy.yr | 2018-04-30 | 1439 | 96.93021 | 0.0311769 | 11929.23 | 109.2210 |
tbats | dy.yr | 2018-05-01 | 1440 | 97.20358 | 0.0283622 | 11996.63 | 109.5292 |
tbats | dy.yr | 2018-05-02 | 1440 | 97.46080 | 0.0257187 | 12060.18 | 109.8189 |
tbats | dy.yr | 2018-05-03 | 1440 | 97.16471 | 0.0287634 | 11987.07 | 109.4855 |
tbats | dy.yr | 2018-05-04 | 1440 | 96.80787 | 0.0324394 | 11899.13 | 109.0831 |
tbats | dy.yr | 2018-05-05 | 1 | 96.80201 | 0.0324996 | 11897.68 | 109.0765 |
tbats | dy.yr | 2018-05-07 | 1439 | 96.85772 | 0.0319251 | 11911.40 | 109.1394 |
tbats | dy.yr | 2018-05-08 | 1440 | 96.77645 | 0.0327640 | 11891.41 | 109.0477 |
tbats | dy.yr | 2018-05-09 | 1440 | 97.23029 | 0.0280882 | 12003.25 | 109.5593 |
tbats | dy.yr | 2018-05-10 | 1440 | 97.31121 | 0.0272554 | 12023.21 | 109.6504 |
tbats | dy.yr | 2018-05-11 | 1440 | 97.04722 | 0.0299706 | 11958.04 | 109.3528 |
tbats | dy.yr | 2018-05-12 | 1 | 97.07668 | 0.0296669 | 11965.30 | 109.3860 |
tbats | dy.yr | 2018-05-14 | 1439 | 97.14498 | 0.0289643 | 11982.15 | 109.4630 |
tbats | dy.yr | 2018-05-15 | 1440 | 97.61779 | 0.0241119 | 12099.12 | 109.9960 |
tbats | dy.yr | 2018-05-16 | 1440 | 97.82769 | 0.0219618 | 12151.15 | 110.2323 |
tbats | dy.yr | 2018-05-17 | 1440 | 98.09812 | 0.0192032 | 12218.46 | 110.5372 |
tbats | dy.yr | 2018-05-18 | 1440 | 98.37668 | 0.0163665 | 12287.92 | 110.8509 |
tbats | dy.yr | 2018-05-19 | 1 | 98.28985 | 0.0172490 | 12266.23 | 110.7530 |
tbats | dy.yr | 2018-05-21 | 1439 | 98.63051 | 0.0137903 | 12351.42 | 111.1370 |
tbats | dy.yr | 2018-05-22 | 1440 | 98.47687 | 0.0153483 | 12312.95 | 110.9638 |
tbats | dy.yr | 2018-05-23 | 1440 | 97.85710 | 0.0216665 | 12158.59 | 110.2660 |
tbats | dy.yr | 2018-05-24 | 1440 | 97.21066 | 0.0282903 | 11998.41 | 109.5372 |
tbats | dy.yr | 2018-05-25 | 1440 | 97.10908 | 0.0293338 | 11973.30 | 109.4226 |
tbats | dy.yr | 2018-05-26 | 1 | 97.07845 | 0.0296486 | 11965.73 | 109.3880 |
tbats | dy.yr | 2018-05-28 | 1439 | 97.12962 | 0.0291224 | 11978.37 | 109.4457 |
tbats | dy.yr | 2018-05-29 | 1440 | 96.65409 | 0.0340318 | 11861.43 | 108.9102 |
tbats | dy.yr | 2018-05-30 | 1440 | 96.51500 | 0.0354691 | 11827.26 | 108.7532 |
tbats | dy.yr | 2018-05-31 | 1440 | 96.50533 | 0.0355687 | 11824.88 | 108.7423 |
tbats | dy.yr | 2018-06-01 | 1440 | 96.94354 | 0.0310420 | 11932.57 | 109.2363 |
tbats | dy.yr | 2018-06-02 | 1 | 97.19471 | 0.0284520 | 11994.41 | 109.5190 |
tbats | dy.yr | 2018-06-04 | 1439 | 97.27435 | 0.0276335 | 12014.08 | 109.6088 |
tbats | dy.yr | 2018-06-05 | 1440 | 97.43829 | 0.0259498 | 12054.61 | 109.7935 |
tbats | dy.yr | 2018-06-06 | 1440 | 97.63291 | 0.0239552 | 12102.82 | 110.0128 |
tbats | dy.yr | 2018-06-07 | 1440 | 97.58061 | 0.0244910 | 12089.87 | 109.9539 |
tbats | dy.yr | 2018-06-08 | 1440 | 97.21614 | 0.0282325 | 11999.72 | 109.5433 |
tbats | dy.yr | 2018-06-09 | 1 | 97.20669 | 0.0283287 | 11997.37 | 109.5325 |
tbats | dy.yr | 2018-06-11 | 1439 | 97.46295 | 0.0256989 | 12060.77 | 109.8215 |
tbats | dy.yr | 2018-06-12 | 1440 | 97.86983 | 0.0215314 | 12161.63 | 110.2798 |
tbats | dy.yr | 2018-06-13 | 1440 | 98.08238 | 0.0193623 | 12214.51 | 110.5193 |
tbats | dy.yr | 2018-06-14 | 1440 | 97.84510 | 0.0217855 | 12155.51 | 110.2520 |
tbats | dy.yr | 2018-06-15 | 1440 | 98.17006 | 0.0184688 | 12236.36 | 110.6181 |
tbats | dy.yr | 2018-06-16 | 1 | 98.21219 | 0.0180393 | 12246.85 | 110.6655 |
tbats | dy.yr | 2018-06-18 | 1439 | 98.07575 | 0.0194297 | 12212.85 | 110.5118 |
tbats | dy.yr | 2018-06-19 | 1440 | 97.58994 | 0.0243970 | 12092.22 | 109.9646 |
tbats | dy.yr | 2018-06-20 | 1440 | 97.75005 | 0.0227559 | 12131.88 | 110.1448 |
tbats | dy.yr | 2018-06-21 | 1440 | 97.91982 | 0.0210232 | 12174.11 | 110.3364 |
tbats | dy.yr | 2018-06-22 | 1440 | 97.63231 | 0.0239609 | 12102.67 | 110.0121 |
tbats | dy.yr | 2018-06-23 | 1 | 97.61005 | 0.0241886 | 12097.14 | 109.9870 |
tbats | dy.yr | 2018-06-25 | 1439 | 97.26368 | 0.0277437 | 12011.46 | 109.5968 |
tbats | dy.yr | 2018-06-26 | 1440 | 97.38885 | 0.0264588 | 12042.42 | 109.7380 |
tbats | dy.yr | 2018-06-27 | 1440 | 97.68307 | 0.0234426 | 12115.29 | 110.0695 |
tbats | dy.yr | 2018-06-28 | 1440 | 97.87640 | 0.0214646 | 12163.27 | 110.2872 |
tbats | dy.yr | 2018-06-29 | 1440 | 98.20314 | 0.0181321 | 12244.61 | 110.6554 |
tbats | dy.yr | 2018-06-30 | 1 | 98.23216 | 0.0178360 | 12251.83 | 110.6880 |
tbats | dy.yr | 2018-07-02 | 1439 | 98.33324 | 0.0168080 | 12277.07 | 110.8019 |
tbats | dy.yr | 2018-07-03 | 1440 | 98.32642 | 0.0168780 | 12275.38 | 110.7943 |
tbats | dy.yr | 2018-07-04 | 1440 | 98.03684 | 0.0198264 | 12203.16 | 110.4679 |
tbats | dy.yr | 2018-07-05 | 1440 | 100.05086 | 0.0009929 | 12224.79 | 110.5658 |
tbats | dy.yr | 2018-07-06 | 1440 | 99.94904 | 0.0007990 | 12229.69 | 110.5879 |
tbats | dy.yr | 2018-07-07 | 1 | 99.83652 | 0.0016361 | 12202.18 | 110.4635 |
ts | mo.1440 | 2018-01-03 | 1439 | 100.04823 | 0.0006192 | 12617.14 | 112.3261 |
ts | mo.1440 | 2018-01-04 | 1440 | 100.18933 | 0.0018912 | 12696.52 | 112.6789 |
ts | mo.1440 | 2018-01-05 | 1440 | 100.26633 | 0.0026607 | 12781.03 | 113.0532 |
ts | mo.1440 | 2018-01-06 | 1 | 100.28170 | 0.0028130 | 12783.02 | 113.0620 |
ts | mo.1440 | 2018-01-08 | 1439 | 100.03438 | 0.0006853 | 12797.02 | 113.1239 |
ts | mo.1440 | 2018-01-09 | 1440 | 99.67749 | 0.0033582 | 12709.18 | 112.7350 |
ts | mo.1440 | 2018-01-10 | 1440 | 99.32576 | 0.0068360 | 12512.95 | 111.8613 |
ts | mo.1440 | 2018-01-11 | 1440 | 100.12977 | 0.0021080 | 12434.67 | 111.5109 |
ts | mo.1440 | 2018-01-12 | 1440 | 99.96339 | 0.0009540 | 12368.72 | 111.2147 |
ts | mo.1440 | 2018-01-13 | 1 | 99.79523 | 0.0020498 | 12326.11 | 111.0230 |
ts | mo.1440 | 2018-01-15 | 1439 | 99.69331 | 0.0031379 | 12249.50 | 110.6774 |
ts | mo.1440 | 2018-01-16 | 1440 | 100.17086 | 0.0019941 | 12255.80 | 110.7059 |
ts | mo.1440 | 2018-01-17 | 1440 | 100.21972 | 0.0025725 | 12260.34 | 110.7264 |
ts | mo.1440 | 2018-01-18 | 1440 | 99.91899 | 0.0011144 | 12361.75 | 111.1834 |
ts | mo.1440 | 2018-01-19 | 1440 | 99.67502 | 0.0032559 | 12269.67 | 110.7685 |
ts | mo.1440 | 2018-01-20 | 1 | 99.74131 | 0.0025903 | 12284.40 | 110.8350 |
ts | mo.1440 | 2018-01-22 | 1439 | 100.02892 | 0.0011013 | 12282.58 | 110.8268 |
ts | mo.1440 | 2018-01-23 | 1440 | 99.77012 | 0.0024813 | 12243.49 | 110.6503 |
ts | mo.1440 | 2018-01-24 | 1440 | 99.43253 | 0.0057036 | 12023.34 | 109.6510 |
ts | mo.1440 | 2018-01-25 | 1440 | 99.89760 | 0.0017840 | 11890.55 | 109.0438 |
ts | mo.1440 | 2018-01-26 | 1440 | 99.81017 | 0.0029692 | 11901.34 | 109.0932 |
ts | mo.1440 | 2018-01-27 | 1 | 99.28712 | 0.0071543 | 11800.26 | 108.6290 |
ts | mo.1440 | 2018-01-29 | 1439 | 100.25311 | 0.0026131 | 11848.14 | 108.8492 |
ts | mo.1440 | 2018-01-30 | 1440 | 99.87289 | 0.0014969 | 11832.26 | 108.7762 |
ts | mo.1440 | 2018-01-31 | 1440 | 100.18453 | 0.0020765 | 11863.86 | 108.9214 |
ts | mo.1440 | 2018-02-01 | 1440 | 100.26644 | 0.0027460 | 11974.99 | 109.4303 |
ts | mo.1440 | 2018-02-02 | 1440 | 100.43459 | 0.0045437 | 12072.03 | 109.8728 |
ts | mo.1440 | 2018-02-03 | 1 | 100.70416 | 0.0070169 | 12138.31 | 110.1740 |
ts | mo.1440 | 2018-02-05 | 1439 | 99.73548 | 0.0027202 | 12076.74 | 109.8942 |
ts | mo.1440 | 2018-02-06 | 1440 | 99.96251 | 0.0019104 | 11906.76 | 109.1181 |
ts | mo.1440 | 2018-02-07 | 1440 | 99.79397 | 0.0022110 | 11951.00 | 109.3206 |
ts | mo.1440 | 2018-02-08 | 1440 | 100.02084 | 0.0027830 | 11957.42 | 109.3500 |
ts | mo.1440 | 2018-02-09 | 1440 | 100.02564 | 0.0020348 | 11846.29 | 108.8407 |
ts | mo.1440 | 2018-02-10 | 1 | 100.04782 | 0.0004781 | 11836.57 | 108.7960 |
ts | mo.1440 | 2018-02-12 | 1439 | 99.85152 | 0.0015542 | 11810.06 | 108.6741 |
ts | mo.1440 | 2018-02-13 | 1440 | 99.36083 | 0.0067043 | 11665.00 | 108.0046 |
ts | mo.1440 | 2018-02-14 | 1440 | 99.52815 | 0.0048002 | 11510.96 | 107.2892 |
ts | mo.1440 | 2018-02-15 | 1440 | 99.54512 | 0.0045610 | 11342.71 | 106.5021 |
ts | mo.1440 | 2018-02-16 | 1440 | 99.98069 | 0.0011760 | 11254.57 | 106.0876 |
ts | mo.1440 | 2018-02-17 | 1 | 100.16106 | 0.0016093 | 11300.97 | 106.3060 |
ts | mo.1440 | 2018-02-19 | 1439 | 100.21728 | 0.0023402 | 11336.73 | 106.4741 |
ts | mo.1440 | 2018-02-20 | 1440 | 100.42658 | 0.0042902 | 11451.01 | 107.0094 |
ts | mo.1440 | 2018-02-21 | 1440 | 100.28269 | 0.0028638 | 11577.32 | 107.5980 |
ts | mo.1440 | 2018-02-22 | 1440 | 99.49065 | 0.0051170 | 11491.09 | 107.1965 |
ts | mo.1440 | 2018-02-23 | 1440 | 100.09247 | 0.0012151 | 11409.03 | 106.8131 |
ts | mo.1440 | 2018-02-24 | 1 | 100.12834 | 0.0012826 | 11425.69 | 106.8910 |
ts | mo.1440 | 2018-02-26 | 1439 | 99.93446 | 0.0017912 | 11402.75 | 106.7837 |
ts | mo.1440 | 2018-02-27 | 1440 | 100.18938 | 0.0020271 | 11469.21 | 107.0944 |
ts | mo.1440 | 2018-02-28 | 1440 | 99.75697 | 0.0025654 | 11458.55 | 107.0446 |
ts | mo.1440 | 2018-03-01 | 1440 | 100.06287 | 0.0016184 | 11389.51 | 106.7217 |
ts | mo.1440 | 2018-03-02 | 1440 | 99.51692 | 0.0048463 | 11185.24 | 105.7603 |
ts | mo.1440 | 2018-03-03 | 1 | 99.52545 | 0.0047568 | 11177.99 | 105.7260 |
ts | mo.1440 | 2018-03-05 | 1439 | 100.03207 | 0.0017957 | 11175.08 | 105.7123 |
ts | mo.1440 | 2018-03-06 | 1440 | 100.02041 | 0.0011796 | 11275.41 | 106.1858 |
ts | mo.1440 | 2018-03-07 | 1440 | 99.70377 | 0.0029865 | 11191.63 | 105.7905 |
ts | mo.1440 | 2018-03-08 | 1440 | 100.10950 | 0.0011026 | 11257.18 | 106.0998 |
ts | mo.1440 | 2018-03-09 | 1440 | 100.55552 | 0.0055439 | 11391.07 | 106.7290 |
ts | mo.1440 | 2018-03-10 | 1 | 100.57301 | 0.0057137 | 11412.33 | 106.8285 |
ts | mo.1440 | 2018-03-12 | 1439 | 99.81571 | 0.0020577 | 11363.59 | 106.6001 |
ts | mo.1440 | 2018-03-13 | 1440 | 100.31539 | 0.0033549 | 11385.84 | 106.7044 |
ts | mo.1440 | 2018-03-14 | 1440 | 99.87513 | 0.0013683 | 11331.94 | 106.4516 |
ts | mo.1440 | 2018-03-15 | 1440 | 99.77566 | 0.0023619 | 11251.42 | 106.0727 |
ts | mo.1440 | 2018-03-16 | 1440 | 99.71741 | 0.0029595 | 11234.04 | 105.9908 |
ts | mo.1440 | 2018-03-17 | 1 | 99.66003 | 0.0034055 | 11232.29 | 105.9825 |
ts | mo.1440 | 2018-03-19 | 1439 | 100.01871 | 0.0009578 | 11226.19 | 105.9537 |
ts | mo.1440 | 2018-03-20 | 1440 | 100.25953 | 0.0027197 | 11303.43 | 106.3176 |
ts | mo.1440 | 2018-03-21 | 1440 | 99.86586 | 0.0015840 | 11310.68 | 106.3517 |
ts | mo.1440 | 2018-03-22 | 1440 | 99.68320 | 0.0031939 | 11169.29 | 105.6848 |
ts | mo.1440 | 2018-03-23 | 1440 | 99.70598 | 0.0029586 | 11013.37 | 104.9446 |
ts | mo.1440 | 2018-03-24 | 1 | 99.48140 | 0.0051995 | 10969.63 | 104.7360 |
ts | mo.1440 | 2018-03-26 | 1439 | 100.32023 | 0.0032384 | 11032.31 | 105.0348 |
ts | mo.1440 | 2018-03-27 | 1440 | 100.23777 | 0.0023986 | 11153.99 | 105.6124 |
ts | mo.1440 | 2018-03-28 | 1440 | 100.51597 | 0.0051729 | 11218.95 | 105.9196 |
ts | mo.1440 | 2018-03-29 | 1440 | 99.75856 | 0.0026127 | 11356.53 | 106.5670 |
ts | mo.1440 | 2018-03-30 | 1440 | 99.85517 | 0.0016677 | 11291.23 | 106.2602 |
ts | mo.1440 | 2018-03-31 | 1 | 99.86466 | 0.0013543 | 11296.82 | 106.2865 |
ts | mo.1440 | 2018-04-02 | 1439 | 99.97257 | 0.0015357 | 11282.62 | 106.2197 |
ts | mo.1440 | 2018-04-03 | 1440 | 100.25266 | 0.0027819 | 11270.83 | 106.1641 |
ts | mo.1440 | 2018-04-04 | 1440 | 99.88813 | 0.0015305 | 11335.18 | 106.4668 |
ts | mo.1440 | 2018-04-05 | 1440 | 100.34681 | 0.0034604 | 11466.15 | 107.0801 |
ts | mo.1440 | 2018-04-06 | 1440 | 99.86990 | 0.0017764 | 11492.45 | 107.2028 |
ts | mo.1440 | 2018-04-07 | 1 | 99.58554 | 0.0041532 | 11435.74 | 106.9380 |
ts | mo.1440 | 2018-04-09 | 1439 | 100.07981 | 0.0012137 | 11445.22 | 106.9823 |
ts | mo.1440 | 2018-04-10 | 1440 | 100.26373 | 0.0027177 | 11457.75 | 107.0409 |
ts | mo.1440 | 2018-04-11 | 1440 | 99.80008 | 0.0020828 | 11444.89 | 106.9808 |
ts | mo.1440 | 2018-04-12 | 1440 | 100.23396 | 0.0023454 | 11456.52 | 107.0351 |
ts | mo.1440 | 2018-04-13 | 1440 | 100.14257 | 0.0014626 | 11550.18 | 107.4718 |
ts | mo.1440 | 2018-04-14 | 1 | 100.03313 | 0.0003313 | 11525.20 | 107.3555 |
ts | mo.1440 | 2018-04-16 | 1439 | 99.88607 | 0.0016851 | 11506.89 | 107.2702 |
ts | mo.1440 | 2018-04-17 | 1440 | 99.91683 | 0.0008848 | 11459.97 | 107.0513 |
ts | mo.1440 | 2018-04-18 | 1440 | 100.17949 | 0.0018037 | 11496.97 | 107.2239 |
ts | mo.1440 | 2018-04-19 | 1440 | 100.07989 | 0.0008826 | 11527.97 | 107.3684 |
ts | mo.1440 | 2018-04-20 | 1440 | 100.15853 | 0.0015944 | 11575.09 | 107.5876 |
ts | mo.1440 | 2018-04-21 | 1 | 100.25516 | 0.0025484 | 11586.80 | 107.6420 |
ts | mo.1440 | 2018-04-23 | 1439 | 100.40202 | 0.0040065 | 11692.38 | 108.1313 |
ts | mo.1440 | 2018-04-24 | 1440 | 100.07288 | 0.0008575 | 11842.73 | 108.8243 |
ts | mo.1440 | 2018-04-25 | 1440 | 100.22506 | 0.0023097 | 11904.94 | 109.1097 |
ts | mo.1440 | 2018-04-26 | 1440 | 99.87161 | 0.0013052 | 11950.00 | 109.3160 |
ts | mo.1440 | 2018-04-27 | 1440 | 99.92433 | 0.0009771 | 11931.93 | 109.2334 |
ts | mo.1440 | 2018-04-28 | 1 | 99.77756 | 0.0022269 | 11893.65 | 109.0580 |
ts | mo.1440 | 2018-04-30 | 1439 | 100.13034 | 0.0013315 | 11929.23 | 109.2210 |
ts | mo.1440 | 2018-05-01 | 1440 | 100.15918 | 0.0018068 | 11996.63 | 109.5292 |
ts | mo.1440 | 2018-05-02 | 1440 | 99.96201 | 0.0006191 | 12060.18 | 109.8189 |
ts | mo.1440 | 2018-05-03 | 1440 | 99.68719 | 0.0031684 | 11987.07 | 109.4855 |
ts | mo.1440 | 2018-05-04 | 1440 | 99.92404 | 0.0008365 | 11899.13 | 109.0831 |
ts | mo.1440 | 2018-05-05 | 1 | 99.89315 | 0.0010691 | 11897.68 | 109.0765 |
ts | mo.1440 | 2018-05-07 | 1439 | 100.08181 | 0.0011192 | 11911.40 | 109.1394 |
ts | mo.1440 | 2018-05-08 | 1440 | 99.96319 | 0.0007804 | 11891.41 | 109.0477 |
ts | mo.1440 | 2018-05-09 | 1440 | 100.41825 | 0.0042934 | 12003.25 | 109.5593 |
ts | mo.1440 | 2018-05-10 | 1440 | 99.90365 | 0.0013996 | 12023.21 | 109.6504 |
ts | mo.1440 | 2018-05-11 | 1440 | 99.94623 | 0.0008713 | 11958.04 | 109.3528 |
ts | mo.1440 | 2018-05-12 | 1 | 99.98915 | 0.0001085 | 11965.30 | 109.3860 |
ts | mo.1440 | 2018-05-14 | 1439 | 100.07233 | 0.0009955 | 11982.15 | 109.4630 |
ts | mo.1440 | 2018-05-15 | 1440 | 100.30131 | 0.0030060 | 12099.12 | 109.9960 |
ts | mo.1440 | 2018-05-16 | 1440 | 99.88611 | 0.0011831 | 12151.15 | 110.2323 |
ts | mo.1440 | 2018-05-17 | 1440 | 100.15735 | 0.0020327 | 12218.46 | 110.5372 |
ts | mo.1440 | 2018-05-18 | 1440 | 100.09355 | 0.0011889 | 12287.92 | 110.8509 |
ts | mo.1440 | 2018-05-19 | 1 | 99.98854 | 0.0001146 | 12266.23 | 110.7530 |
ts | mo.1440 | 2018-05-21 | 1439 | 100.35841 | 0.0035769 | 12351.42 | 111.1370 |
ts | mo.1440 | 2018-05-22 | 1440 | 99.89239 | 0.0010880 | 12312.95 | 110.9638 |
ts | mo.1440 | 2018-05-23 | 1440 | 99.41978 | 0.0058348 | 12158.59 | 110.2660 |
ts | mo.1440 | 2018-05-24 | 1440 | 99.54194 | 0.0045977 | 11998.41 | 109.5372 |
ts | mo.1440 | 2018-05-25 | 1440 | 100.19010 | 0.0019602 | 11973.30 | 109.4226 |
ts | mo.1440 | 2018-05-26 | 1 | 100.12225 | 0.0012217 | 11965.73 | 109.3880 |
ts | mo.1440 | 2018-05-28 | 1439 | 100.06035 | 0.0007973 | 11978.37 | 109.4457 |
ts | mo.1440 | 2018-05-29 | 1440 | 99.54191 | 0.0046023 | 11861.43 | 108.9102 |
ts | mo.1440 | 2018-05-30 | 1440 | 100.03018 | 0.0014838 | 11827.26 | 108.7532 |
ts | mo.1440 | 2018-05-31 | 1440 | 99.87570 | 0.0013549 | 11824.88 | 108.7423 |
ts | mo.1440 | 2018-06-01 | 1440 | 100.43774 | 0.0044393 | 11932.57 | 109.2363 |
ts | mo.1440 | 2018-06-02 | 1 | 100.64289 | 0.0064083 | 11994.41 | 109.5190 |
ts | mo.1440 | 2018-06-04 | 1439 | 100.10498 | 0.0012308 | 12014.08 | 109.6088 |
ts | mo.1440 | 2018-06-05 | 1440 | 100.02764 | 0.0008192 | 12054.61 | 109.7935 |
ts | mo.1440 | 2018-06-06 | 1440 | 100.24104 | 0.0024076 | 12102.82 | 110.0128 |
ts | mo.1440 | 2018-06-07 | 1440 | 99.81563 | 0.0018603 | 12089.87 | 109.9539 |
ts | mo.1440 | 2018-06-08 | 1440 | 99.87492 | 0.0015535 | 11999.72 | 109.5433 |
ts | mo.1440 | 2018-06-09 | 1 | 99.84550 | 0.0015462 | 11997.37 | 109.5325 |
ts | mo.1440 | 2018-06-11 | 1439 | 100.30271 | 0.0033386 | 12060.77 | 109.8215 |
ts | mo.1440 | 2018-06-12 | 1440 | 100.22729 | 0.0022718 | 12161.63 | 110.2798 |
ts | mo.1440 | 2018-06-13 | 1440 | 100.13046 | 0.0013291 | 12214.51 | 110.5193 |
ts | mo.1440 | 2018-06-14 | 1440 | 99.88259 | 0.0020616 | 12155.51 | 110.2520 |
ts | mo.1440 | 2018-06-15 | 1440 | 100.01065 | 0.0006624 | 12236.36 | 110.6181 |
ts | mo.1440 | 2018-06-16 | 1 | 100.02951 | 0.0002951 | 12246.85 | 110.6655 |
ts | mo.1440 | 2018-06-18 | 1439 | 99.87006 | 0.0013564 | 12212.85 | 110.5118 |
ts | mo.1440 | 2018-06-19 | 1440 | 99.49610 | 0.0051024 | 12092.22 | 109.9646 |
ts | mo.1440 | 2018-06-20 | 1440 | 100.16273 | 0.0016501 | 12131.88 | 110.1448 |
ts | mo.1440 | 2018-06-21 | 1440 | 100.05149 | 0.0023273 | 12174.11 | 110.3364 |
ts | mo.1440 | 2018-06-22 | 1440 | 100.06423 | 0.0009156 | 12102.67 | 110.0121 |
ts | mo.1440 | 2018-06-23 | 1 | 100.00079 | 0.0000079 | 12097.14 | 109.9870 |
ts | mo.1440 | 2018-06-25 | 1439 | 99.68731 | 0.0031339 | 12011.46 | 109.5968 |
ts | mo.1440 | 2018-06-26 | 1440 | 100.06864 | 0.0014593 | 12042.42 | 109.7380 |
ts | mo.1440 | 2018-06-27 | 1440 | 100.11302 | 0.0015837 | 12115.29 | 110.0695 |
ts | mo.1440 | 2018-06-28 | 1440 | 100.10192 | 0.0011791 | 12163.27 | 110.2872 |
ts | mo.1440 | 2018-06-29 | 1440 | 100.22929 | 0.0022933 | 12244.61 | 110.6554 |
ts | mo.1440 | 2018-06-30 | 1 | 100.17275 | 0.0017260 | 12251.83 | 110.6880 |
ts | mo.1440 | 2018-07-02 | 1439 | 100.15434 | 0.0015528 | 12277.07 | 110.8019 |
ts | mo.1440 | 2018-07-03 | 1440 | 99.96321 | 0.0014023 | 12275.38 | 110.7943 |
ts | mo.1440 | 2018-07-04 | 1440 | 99.93161 | 0.0006956 | 12203.16 | 110.4679 |
ts | mo.1440 | 2018-07-05 | 1440 | 100.09371 | 0.0011071 | 12224.79 | 110.5658 |
ts | mo.1440 | 2018-07-06 | 1440 | 99.97514 | 0.0009013 | 12229.69 | 110.5879 |
ts | mo.1440 | 2018-07-07 | 1 | 99.83637 | 0.0016377 | 12202.18 | 110.4635 |
ts | qt.1440 | 2018-01-03 | 1439 | 100.05917 | 0.0006827 | 12617.14 | 112.3261 |
ts | qt.1440 | 2018-01-04 | 1440 | 100.16764 | 0.0016751 | 12696.52 | 112.6789 |
ts | qt.1440 | 2018-01-05 | 1440 | 100.24734 | 0.0024911 | 12781.03 | 113.0532 |
ts | qt.1440 | 2018-01-06 | 1 | 100.28290 | 0.0028250 | 12783.02 | 113.0620 |
ts | qt.1440 | 2018-01-08 | 1439 | 100.03903 | 0.0007278 | 12797.02 | 113.1239 |
ts | qt.1440 | 2018-01-09 | 1440 | 99.69042 | 0.0032432 | 12709.18 | 112.7350 |
ts | qt.1440 | 2018-01-10 | 1440 | 99.34348 | 0.0066724 | 12512.95 | 111.8613 |
ts | qt.1440 | 2018-01-11 | 1440 | 100.13410 | 0.0021179 | 12434.67 | 111.5109 |
ts | qt.1440 | 2018-01-12 | 1440 | 99.96608 | 0.0009404 | 12368.72 | 111.2147 |
ts | qt.1440 | 2018-01-13 | 1 | 99.79153 | 0.0020868 | 12326.11 | 111.0230 |
ts | qt.1440 | 2018-01-15 | 1439 | 99.68770 | 0.0031868 | 12249.50 | 110.6774 |
ts | qt.1440 | 2018-01-16 | 1440 | 100.17259 | 0.0019972 | 12255.80 | 110.7059 |
ts | qt.1440 | 2018-01-17 | 1440 | 100.22704 | 0.0026264 | 12260.34 | 110.7264 |
ts | qt.1440 | 2018-01-18 | 1440 | 99.91558 | 0.0011199 | 12361.75 | 111.1834 |
ts | qt.1440 | 2018-01-19 | 1440 | 99.67877 | 0.0032183 | 12269.67 | 110.7685 |
ts | qt.1440 | 2018-01-20 | 1 | 99.74481 | 0.0025552 | 12284.40 | 110.8350 |
ts | qt.1440 | 2018-01-22 | 1439 | 100.03017 | 0.0010986 | 12282.58 | 110.8268 |
ts | qt.1440 | 2018-01-23 | 1440 | 99.77201 | 0.0024695 | 12243.49 | 110.6503 |
ts | qt.1440 | 2018-01-24 | 1440 | 99.43153 | 0.0057129 | 12023.34 | 109.6510 |
ts | qt.1440 | 2018-01-25 | 1440 | 99.89454 | 0.0017970 | 11890.55 | 109.0438 |
ts | qt.1440 | 2018-01-26 | 1440 | 99.80877 | 0.0029718 | 11901.34 | 109.0932 |
ts | qt.1440 | 2018-01-27 | 1 | 99.28575 | 0.0071681 | 11800.26 | 108.6290 |
ts | qt.1440 | 2018-01-29 | 1439 | 100.25508 | 0.0026295 | 11848.14 | 108.8492 |
ts | qt.1440 | 2018-01-30 | 1440 | 99.87378 | 0.0014921 | 11832.26 | 108.7762 |
ts | qt.1440 | 2018-01-31 | 1440 | 100.18354 | 0.0020715 | 11863.86 | 108.9214 |
ts | qt.1440 | 2018-02-01 | 1440 | 100.26288 | 0.0027180 | 11974.99 | 109.4303 |
ts | qt.1440 | 2018-02-02 | 1440 | 100.43414 | 0.0045407 | 12072.03 | 109.8728 |
ts | qt.1440 | 2018-02-03 | 1 | 100.70387 | 0.0070140 | 12138.31 | 110.1740 |
ts | qt.1440 | 2018-02-05 | 1439 | 99.73506 | 0.0027234 | 12076.74 | 109.8942 |
ts | qt.1440 | 2018-02-06 | 1440 | 99.95149 | 0.0019271 | 11906.76 | 109.1181 |
ts | qt.1440 | 2018-02-07 | 1440 | 99.80105 | 0.0021585 | 11951.00 | 109.3206 |
ts | qt.1440 | 2018-02-08 | 1440 | 100.00441 | 0.0027458 | 11957.42 | 109.3500 |
ts | qt.1440 | 2018-02-09 | 1440 | 100.01745 | 0.0020201 | 11846.29 | 108.8407 |
ts | qt.1440 | 2018-02-10 | 1 | 100.03959 | 0.0003958 | 11836.57 | 108.7960 |
ts | qt.1440 | 2018-02-12 | 1439 | 99.85333 | 0.0015393 | 11810.06 | 108.6741 |
ts | qt.1440 | 2018-02-13 | 1440 | 99.35950 | 0.0067123 | 11665.00 | 108.0046 |
ts | qt.1440 | 2018-02-14 | 1440 | 99.53405 | 0.0047535 | 11510.96 | 107.2892 |
ts | qt.1440 | 2018-02-15 | 1440 | 99.54964 | 0.0045157 | 11342.71 | 106.5021 |
ts | qt.1440 | 2018-02-16 | 1440 | 99.97927 | 0.0011759 | 11254.57 | 106.0876 |
ts | qt.1440 | 2018-02-17 | 1 | 100.15951 | 0.0015938 | 11300.97 | 106.3060 |
ts | qt.1440 | 2018-02-19 | 1439 | 100.21406 | 0.0023174 | 11336.73 | 106.4741 |
ts | qt.1440 | 2018-02-20 | 1440 | 100.43017 | 0.0043225 | 11451.01 | 107.0094 |
ts | qt.1440 | 2018-02-21 | 1440 | 100.28167 | 0.0028546 | 11577.32 | 107.5980 |
ts | qt.1440 | 2018-02-22 | 1440 | 99.48471 | 0.0051765 | 11491.09 | 107.1965 |
ts | qt.1440 | 2018-02-23 | 1440 | 100.09904 | 0.0012475 | 11409.03 | 106.8131 |
ts | qt.1440 | 2018-02-24 | 1 | 100.13486 | 0.0013477 | 11425.69 | 106.8910 |
ts | qt.1440 | 2018-02-26 | 1439 | 99.92821 | 0.0017975 | 11402.75 | 106.7837 |
ts | qt.1440 | 2018-02-27 | 1440 | 100.18750 | 0.0020153 | 11469.21 | 107.0944 |
ts | qt.1440 | 2018-02-28 | 1440 | 99.77217 | 0.0024477 | 11458.55 | 107.0446 |
ts | qt.1440 | 2018-03-01 | 1440 | 100.07336 | 0.0016688 | 11389.51 | 106.7217 |
ts | qt.1440 | 2018-03-02 | 1440 | 99.51865 | 0.0048289 | 11185.24 | 105.7603 |
ts | qt.1440 | 2018-03-03 | 1 | 99.52719 | 0.0047393 | 11177.99 | 105.7260 |
ts | qt.1440 | 2018-03-05 | 1439 | 100.02769 | 0.0018064 | 11175.08 | 105.7123 |
ts | qt.1440 | 2018-03-06 | 1440 | 100.02110 | 0.0011799 | 11275.41 | 106.1858 |
ts | qt.1440 | 2018-03-07 | 1440 | 99.70879 | 0.0029414 | 11191.63 | 105.7905 |
ts | qt.1440 | 2018-03-08 | 1440 | 100.11550 | 0.0011587 | 11257.18 | 106.0998 |
ts | qt.1440 | 2018-03-09 | 1440 | 100.54671 | 0.0054578 | 11391.07 | 106.7290 |
ts | qt.1440 | 2018-03-10 | 1 | 100.56414 | 0.0056256 | 11412.33 | 106.8285 |
ts | qt.1440 | 2018-03-12 | 1439 | 99.80181 | 0.0021533 | 11363.59 | 106.6001 |
ts | qt.1440 | 2018-03-13 | 1440 | 100.31331 | 0.0033398 | 11385.84 | 106.7044 |
ts | qt.1440 | 2018-03-14 | 1440 | 99.86718 | 0.0014280 | 11331.94 | 106.4516 |
ts | qt.1440 | 2018-03-15 | 1440 | 99.77632 | 0.0023566 | 11251.42 | 106.0727 |
ts | qt.1440 | 2018-03-16 | 1440 | 99.71954 | 0.0029431 | 11234.04 | 105.9908 |
ts | qt.1440 | 2018-03-17 | 1 | 99.66214 | 0.0033843 | 11232.29 | 105.9825 |
ts | qt.1440 | 2018-03-19 | 1439 | 100.03461 | 0.0009703 | 11226.19 | 105.9537 |
ts | qt.1440 | 2018-03-20 | 1440 | 100.25295 | 0.0026749 | 11303.43 | 106.3176 |
ts | qt.1440 | 2018-03-21 | 1440 | 99.86435 | 0.0015892 | 11310.68 | 106.3517 |
ts | qt.1440 | 2018-03-22 | 1440 | 99.67800 | 0.0032418 | 11169.29 | 105.6848 |
ts | qt.1440 | 2018-03-23 | 1440 | 99.70545 | 0.0029635 | 11013.37 | 104.9446 |
ts | qt.1440 | 2018-03-24 | 1 | 99.48089 | 0.0052046 | 10969.63 | 104.7360 |
ts | qt.1440 | 2018-03-26 | 1439 | 100.32368 | 0.0032693 | 11032.31 | 105.0348 |
ts | qt.1440 | 2018-03-27 | 1440 | 100.24166 | 0.0024344 | 11153.99 | 105.6124 |
ts | qt.1440 | 2018-03-28 | 1440 | 100.53780 | 0.0053695 | 11218.95 | 105.9196 |
ts | qt.1440 | 2018-03-29 | 1440 | 99.75878 | 0.0026112 | 11356.53 | 106.5670 |
ts | qt.1440 | 2018-03-30 | 1440 | 99.85673 | 0.0016567 | 11291.23 | 106.2602 |
ts | qt.1440 | 2018-03-31 | 1 | 99.86611 | 0.0013398 | 11296.82 | 106.2865 |
ts | qt.1440 | 2018-04-02 | 1439 | 99.96871 | 0.0015227 | 11282.62 | 106.2197 |
ts | qt.1440 | 2018-04-03 | 1440 | 100.24661 | 0.0027466 | 11270.83 | 106.1641 |
ts | qt.1440 | 2018-04-04 | 1440 | 99.88933 | 0.0015264 | 11335.18 | 106.4668 |
ts | qt.1440 | 2018-04-05 | 1440 | 100.34729 | 0.0034652 | 11466.15 | 107.0801 |
ts | qt.1440 | 2018-04-06 | 1440 | 99.87014 | 0.0017755 | 11492.45 | 107.2028 |
ts | qt.1440 | 2018-04-07 | 1 | 99.58543 | 0.0041543 | 11435.74 | 106.9380 |
ts | qt.1440 | 2018-04-09 | 1439 | 100.07931 | 0.0012103 | 11445.22 | 106.9823 |
ts | qt.1440 | 2018-04-10 | 1440 | 100.26314 | 0.0027134 | 11457.75 | 107.0409 |
ts | qt.1440 | 2018-04-11 | 1440 | 99.80015 | 0.0020822 | 11444.89 | 106.9808 |
ts | qt.1440 | 2018-04-12 | 1440 | 100.23405 | 0.0023463 | 11456.52 | 107.0351 |
ts | qt.1440 | 2018-04-13 | 1440 | 100.14299 | 0.0014659 | 11550.18 | 107.4718 |
ts | qt.1440 | 2018-04-14 | 1 | 100.03358 | 0.0003358 | 11525.20 | 107.3555 |
ts | qt.1440 | 2018-04-16 | 1439 | 99.88607 | 0.0016859 | 11506.89 | 107.2702 |
ts | qt.1440 | 2018-04-17 | 1440 | 99.91659 | 0.0008867 | 11459.97 | 107.0513 |
ts | qt.1440 | 2018-04-18 | 1440 | 100.17955 | 0.0018042 | 11496.97 | 107.2239 |
ts | qt.1440 | 2018-04-19 | 1440 | 100.07960 | 0.0008805 | 11527.97 | 107.3684 |
ts | qt.1440 | 2018-04-20 | 1440 | 100.15851 | 0.0015943 | 11575.09 | 107.5876 |
ts | qt.1440 | 2018-04-21 | 1 | 100.25518 | 0.0025485 | 11586.80 | 107.6420 |
ts | qt.1440 | 2018-04-23 | 1439 | 100.40242 | 0.0040104 | 11692.38 | 108.1313 |
ts | qt.1440 | 2018-04-24 | 1440 | 100.07286 | 0.0008566 | 11842.73 | 108.8243 |
ts | qt.1440 | 2018-04-25 | 1440 | 100.22498 | 0.0023087 | 11904.94 | 109.1097 |
ts | qt.1440 | 2018-04-26 | 1440 | 99.87158 | 0.0013054 | 11950.00 | 109.3160 |
ts | qt.1440 | 2018-04-27 | 1440 | 99.92432 | 0.0009771 | 11931.93 | 109.2334 |
ts | qt.1440 | 2018-04-28 | 1 | 99.77760 | 0.0022264 | 11893.65 | 109.0580 |
ts | qt.1440 | 2018-04-30 | 1439 | 100.13039 | 0.0013319 | 11929.23 | 109.2210 |
ts | qt.1440 | 2018-05-01 | 1440 | 100.15926 | 0.0018076 | 11996.63 | 109.5292 |
ts | qt.1440 | 2018-05-02 | 1440 | 99.96207 | 0.0006188 | 12060.18 | 109.8189 |
ts | qt.1440 | 2018-05-03 | 1440 | 99.68749 | 0.0031659 | 11987.07 | 109.4855 |
ts | qt.1440 | 2018-05-04 | 1440 | 99.92402 | 0.0008369 | 11899.13 | 109.0831 |
ts | qt.1440 | 2018-05-05 | 1 | 99.89322 | 0.0010684 | 11897.68 | 109.0765 |
ts | qt.1440 | 2018-05-07 | 1439 | 100.08190 | 0.0011195 | 11911.40 | 109.1394 |
ts | qt.1440 | 2018-05-08 | 1440 | 99.96336 | 0.0007799 | 11891.41 | 109.0477 |
ts | qt.1440 | 2018-05-09 | 1440 | 100.41836 | 0.0042941 | 12003.25 | 109.5593 |
ts | qt.1440 | 2018-05-10 | 1440 | 99.90361 | 0.0013997 | 12023.21 | 109.6504 |
ts | qt.1440 | 2018-05-11 | 1440 | 99.94605 | 0.0008721 | 11958.04 | 109.3528 |
ts | qt.1440 | 2018-05-12 | 1 | 99.98912 | 0.0001088 | 11965.30 | 109.3860 |
ts | qt.1440 | 2018-05-14 | 1439 | 100.07245 | 0.0009961 | 11982.15 | 109.4630 |
ts | qt.1440 | 2018-05-15 | 1440 | 100.30139 | 0.0030068 | 12099.12 | 109.9960 |
ts | qt.1440 | 2018-05-16 | 1440 | 99.88610 | 0.0011832 | 12151.15 | 110.2323 |
ts | qt.1440 | 2018-05-17 | 1440 | 100.15736 | 0.0020327 | 12218.46 | 110.5372 |
ts | qt.1440 | 2018-05-18 | 1440 | 100.09362 | 0.0011892 | 12287.92 | 110.8509 |
ts | qt.1440 | 2018-05-19 | 1 | 99.98854 | 0.0001146 | 12266.23 | 110.7530 |
ts | qt.1440 | 2018-05-21 | 1439 | 100.35854 | 0.0035782 | 12351.42 | 111.1370 |
ts | qt.1440 | 2018-05-22 | 1440 | 99.89266 | 0.0010854 | 12312.95 | 110.9638 |
ts | qt.1440 | 2018-05-23 | 1440 | 99.41984 | 0.0058342 | 12158.59 | 110.2660 |
ts | qt.1440 | 2018-05-24 | 1440 | 99.54194 | 0.0045977 | 11998.41 | 109.5372 |
ts | qt.1440 | 2018-05-25 | 1440 | 100.19007 | 0.0019601 | 11973.30 | 109.4226 |
ts | qt.1440 | 2018-05-26 | 1 | 100.12226 | 0.0012218 | 11965.73 | 109.3880 |
ts | qt.1440 | 2018-05-28 | 1439 | 100.06046 | 0.0007972 | 11978.37 | 109.4457 |
ts | qt.1440 | 2018-05-29 | 1440 | 99.54203 | 0.0046011 | 11861.43 | 108.9102 |
ts | qt.1440 | 2018-05-30 | 1440 | 100.03019 | 0.0014834 | 11827.26 | 108.7532 |
ts | qt.1440 | 2018-05-31 | 1440 | 99.87623 | 0.0013513 | 11824.88 | 108.7423 |
ts | qt.1440 | 2018-06-01 | 1440 | 100.43798 | 0.0044410 | 11932.57 | 109.2363 |
ts | qt.1440 | 2018-06-02 | 1 | 100.64294 | 0.0064088 | 11994.41 | 109.5190 |
ts | qt.1440 | 2018-06-04 | 1439 | 100.10483 | 0.0012295 | 12014.08 | 109.6088 |
ts | qt.1440 | 2018-06-05 | 1440 | 100.02716 | 0.0008177 | 12054.61 | 109.7935 |
ts | qt.1440 | 2018-06-06 | 1440 | 100.24059 | 0.0024030 | 12102.82 | 110.0128 |
ts | qt.1440 | 2018-06-07 | 1440 | 99.81551 | 0.0018616 | 12089.87 | 109.9539 |
ts | qt.1440 | 2018-06-08 | 1440 | 99.87472 | 0.0015551 | 11999.72 | 109.5433 |
ts | qt.1440 | 2018-06-09 | 1 | 99.84551 | 0.0015461 | 11997.37 | 109.5325 |
ts | qt.1440 | 2018-06-11 | 1439 | 100.30293 | 0.0033404 | 12060.77 | 109.8215 |
ts | qt.1440 | 2018-06-12 | 1440 | 100.22780 | 0.0022768 | 12161.63 | 110.2798 |
ts | qt.1440 | 2018-06-13 | 1440 | 100.13051 | 0.0013299 | 12214.51 | 110.5193 |
ts | qt.1440 | 2018-06-14 | 1440 | 99.88248 | 0.0020620 | 12155.51 | 110.2520 |
ts | qt.1440 | 2018-06-15 | 1440 | 100.01072 | 0.0006627 | 12236.36 | 110.6181 |
ts | qt.1440 | 2018-06-16 | 1 | 100.02957 | 0.0002957 | 12246.85 | 110.6655 |
ts | qt.1440 | 2018-06-18 | 1439 | 99.87001 | 0.0013567 | 12212.85 | 110.5118 |
ts | qt.1440 | 2018-06-19 | 1440 | 99.49619 | 0.0051014 | 12092.22 | 109.9646 |
ts | qt.1440 | 2018-06-20 | 1440 | 100.16276 | 0.0016506 | 12131.88 | 110.1448 |
ts | qt.1440 | 2018-06-21 | 1440 | 100.05153 | 0.0023273 | 12174.11 | 110.3364 |
ts | qt.1440 | 2018-06-22 | 1440 | 100.06404 | 0.0009156 | 12102.67 | 110.0121 |
ts | qt.1440 | 2018-06-23 | 1 | 100.00088 | 0.0000088 | 12097.14 | 109.9870 |
ts | qt.1440 | 2018-06-25 | 1439 | 99.68749 | 0.0031321 | 12011.46 | 109.5968 |
ts | qt.1440 | 2018-06-26 | 1440 | 100.06890 | 0.0014602 | 12042.42 | 109.7380 |
ts | qt.1440 | 2018-06-27 | 1440 | 100.11335 | 0.0015853 | 12115.29 | 110.0695 |
ts | qt.1440 | 2018-06-28 | 1440 | 100.10230 | 0.0011820 | 12163.27 | 110.2872 |
ts | qt.1440 | 2018-06-29 | 1440 | 100.22922 | 0.0022926 | 12244.61 | 110.6554 |
ts | qt.1440 | 2018-06-30 | 1 | 100.17277 | 0.0017262 | 12251.83 | 110.6880 |
ts | qt.1440 | 2018-07-02 | 1439 | 100.15415 | 0.0015512 | 12277.07 | 110.8019 |
ts | qt.1440 | 2018-07-03 | 1440 | 99.96303 | 0.0014022 | 12275.38 | 110.7943 |
ts | qt.1440 | 2018-07-04 | 1440 | 99.93172 | 0.0006943 | 12203.16 | 110.4679 |
ts | qt.1440 | 2018-07-05 | 1440 | 100.09407 | 0.0011093 | 12224.79 | 110.5658 |
ts | qt.1440 | 2018-07-06 | 1440 | 99.97584 | 0.0009014 | 12229.69 | 110.5879 |
ts | qt.1440 | 2018-07-07 | 1 | 99.83672 | 0.0016341 | 12202.18 | 110.4635 |
ts | wk.1440 | 2018-01-03 | 1439 | 100.05388 | 0.0006374 | 12617.14 | 112.3261 |
ts | wk.1440 | 2018-01-04 | 1440 | 100.15406 | 0.0015414 | 12696.52 | 112.6789 |
ts | wk.1440 | 2018-01-05 | 1440 | 100.24181 | 0.0024257 | 12781.03 | 113.0532 |
ts | wk.1440 | 2018-01-06 | 1 | 100.27088 | 0.0027051 | 12783.02 | 113.0620 |
ts | wk.1440 | 2018-01-08 | 1439 | 100.03877 | 0.0007427 | 12797.02 | 113.1239 |
ts | wk.1440 | 2018-01-09 | 1440 | 99.66080 | 0.0034810 | 12709.18 | 112.7350 |
ts | wk.1440 | 2018-01-10 | 1440 | 99.32425 | 0.0068410 | 12512.95 | 111.8613 |
ts | wk.1440 | 2018-01-11 | 1440 | 100.14017 | 0.0022198 | 12434.67 | 111.5109 |
ts | wk.1440 | 2018-01-12 | 1440 | 99.96428 | 0.0010003 | 12368.72 | 111.2147 |
ts | wk.1440 | 2018-01-13 | 1 | 99.79519 | 0.0020502 | 12326.11 | 111.0230 |
ts | wk.1440 | 2018-01-15 | 1439 | 99.66320 | 0.0033910 | 12249.50 | 110.6774 |
ts | wk.1440 | 2018-01-16 | 1440 | 100.37715 | 0.0038844 | 12255.80 | 110.7059 |
ts | wk.1440 | 2018-01-17 | 1440 | 100.14109 | 0.0021181 | 12260.34 | 110.7264 |
ts | wk.1440 | 2018-01-18 | 1440 | 99.91215 | 0.0013076 | 12361.75 | 111.1834 |
ts | wk.1440 | 2018-01-19 | 1440 | 99.68360 | 0.0031700 | 12269.67 | 110.7685 |
ts | wk.1440 | 2018-01-20 | 1 | 99.75347 | 0.0024684 | 12284.40 | 110.8350 |
ts | wk.1440 | 2018-01-22 | 1439 | 100.05910 | 0.0012022 | 12282.58 | 110.8268 |
ts | wk.1440 | 2018-01-23 | 1440 | 99.80984 | 0.0023505 | 12243.49 | 110.6503 |
ts | wk.1440 | 2018-01-24 | 1440 | 99.47002 | 0.0053277 | 12023.34 | 109.6510 |
ts | wk.1440 | 2018-01-25 | 1440 | 99.90932 | 0.0015935 | 11890.55 | 109.0438 |
ts | wk.1440 | 2018-01-26 | 1440 | 99.82726 | 0.0029047 | 11901.34 | 109.0932 |
ts | wk.1440 | 2018-01-27 | 1 | 99.28073 | 0.0072187 | 11800.26 | 108.6290 |
ts | wk.1440 | 2018-01-29 | 1439 | 100.22313 | 0.0024987 | 11848.14 | 108.8492 |
ts | wk.1440 | 2018-01-30 | 1440 | 99.83533 | 0.0019114 | 11832.26 | 108.7762 |
ts | wk.1440 | 2018-01-31 | 1440 | 100.15667 | 0.0020419 | 11863.86 | 108.9214 |
ts | wk.1440 | 2018-02-01 | 1440 | 100.24011 | 0.0026280 | 11974.99 | 109.4303 |
ts | wk.1440 | 2018-02-02 | 1440 | 100.39976 | 0.0041658 | 12072.03 | 109.8728 |
ts | wk.1440 | 2018-02-03 | 1 | 100.71070 | 0.0070818 | 12138.31 | 110.1740 |
ts | wk.1440 | 2018-02-05 | 1439 | 99.72140 | 0.0028594 | 12076.74 | 109.8942 |
ts | wk.1440 | 2018-02-06 | 1440 | 99.91272 | 0.0019706 | 11906.76 | 109.1181 |
ts | wk.1440 | 2018-02-07 | 1440 | 99.80436 | 0.0023370 | 11951.00 | 109.3206 |
ts | wk.1440 | 2018-02-08 | 1440 | 100.03064 | 0.0030433 | 11957.42 | 109.3500 |
ts | wk.1440 | 2018-02-09 | 1440 | 100.00885 | 0.0021772 | 11846.29 | 108.8407 |
ts | wk.1440 | 2018-02-10 | 1 | 100.04803 | 0.0004802 | 11836.57 | 108.7960 |
ts | wk.1440 | 2018-02-12 | 1439 | 99.83818 | 0.0017041 | 11810.06 | 108.6741 |
ts | wk.1440 | 2018-02-13 | 1440 | 99.36674 | 0.0065272 | 11665.00 | 108.0046 |
ts | wk.1440 | 2018-02-14 | 1440 | 99.53402 | 0.0046971 | 11510.96 | 107.2892 |
ts | wk.1440 | 2018-02-15 | 1440 | 99.55719 | 0.0044405 | 11342.71 | 106.5021 |
ts | wk.1440 | 2018-02-16 | 1440 | 100.02639 | 0.0013117 | 11254.57 | 106.0876 |
ts | wk.1440 | 2018-02-17 | 1 | 100.16105 | 0.0016092 | 11300.97 | 106.3060 |
ts | wk.1440 | 2018-02-19 | 1439 | 100.26195 | 0.0028601 | 11336.73 | 106.4741 |
ts | wk.1440 | 2018-02-20 | 1440 | 100.42945 | 0.0043593 | 11451.01 | 107.0094 |
ts | wk.1440 | 2018-02-21 | 1440 | 100.25776 | 0.0026358 | 11577.32 | 107.5980 |
ts | wk.1440 | 2018-02-22 | 1440 | 99.45656 | 0.0054605 | 11491.09 | 107.1965 |
ts | wk.1440 | 2018-02-23 | 1440 | 100.07427 | 0.0010499 | 11409.03 | 106.8131 |
ts | wk.1440 | 2018-02-24 | 1 | 100.12833 | 0.0012825 | 11425.69 | 106.8910 |
ts | wk.1440 | 2018-02-26 | 1439 | 99.91965 | 0.0021071 | 11402.75 | 106.7837 |
ts | wk.1440 | 2018-02-27 | 1440 | 100.19529 | 0.0021763 | 11469.21 | 107.0944 |
ts | wk.1440 | 2018-02-28 | 1440 | 99.77460 | 0.0024050 | 11458.55 | 107.0446 |
ts | wk.1440 | 2018-03-01 | 1440 | 100.05090 | 0.0016839 | 11389.51 | 106.7217 |
ts | wk.1440 | 2018-03-02 | 1440 | 99.48668 | 0.0051505 | 11185.24 | 105.7603 |
ts | wk.1440 | 2018-03-03 | 1 | 99.52549 | 0.0047564 | 11177.99 | 105.7260 |
ts | wk.1440 | 2018-03-05 | 1439 | 100.03410 | 0.0015877 | 11175.08 | 105.7123 |
ts | wk.1440 | 2018-03-06 | 1440 | 100.02492 | 0.0013123 | 11275.41 | 106.1858 |
ts | wk.1440 | 2018-03-07 | 1440 | 99.69587 | 0.0030794 | 11191.63 | 105.7905 |
ts | wk.1440 | 2018-03-08 | 1440 | 100.16847 | 0.0016838 | 11257.18 | 106.0998 |
ts | wk.1440 | 2018-03-09 | 1440 | 100.61628 | 0.0061470 | 11391.07 | 106.7290 |
ts | wk.1440 | 2018-03-10 | 1 | 100.57299 | 0.0057136 | 11412.33 | 106.8285 |
ts | wk.1440 | 2018-03-12 | 1439 | 99.81392 | 0.0020203 | 11363.59 | 106.6001 |
ts | wk.1440 | 2018-03-13 | 1440 | 100.30483 | 0.0033267 | 11385.84 | 106.7044 |
ts | wk.1440 | 2018-03-14 | 1440 | 99.79891 | 0.0020168 | 11331.94 | 106.4516 |
ts | wk.1440 | 2018-03-15 | 1440 | 99.71200 | 0.0029399 | 11251.42 | 106.0727 |
ts | wk.1440 | 2018-03-16 | 1440 | 99.72023 | 0.0030515 | 11234.04 | 105.9908 |
ts | wk.1440 | 2018-03-17 | 1 | 99.66007 | 0.0034051 | 11232.29 | 105.9825 |
ts | wk.1440 | 2018-03-19 | 1439 | 100.03026 | 0.0009582 | 11226.19 | 105.9537 |
ts | wk.1440 | 2018-03-20 | 1440 | 100.30583 | 0.0030779 | 11303.43 | 106.3176 |
ts | wk.1440 | 2018-03-21 | 1440 | 99.91333 | 0.0013913 | 11310.68 | 106.3517 |
ts | wk.1440 | 2018-03-22 | 1440 | 99.69564 | 0.0030502 | 11169.29 | 105.6848 |
ts | wk.1440 | 2018-03-23 | 1440 | 99.67489 | 0.0032589 | 11013.37 | 104.9446 |
ts | wk.1440 | 2018-03-24 | 1 | 99.48140 | 0.0051995 | 10969.63 | 104.7360 |
ts | wk.1440 | 2018-03-26 | 1439 | 100.28659 | 0.0029386 | 11032.31 | 105.0348 |
ts | wk.1440 | 2018-03-27 | 1440 | 100.21789 | 0.0022034 | 11153.99 | 105.6124 |
ts | wk.1440 | 2018-03-28 | 1440 | 100.45060 | 0.0045633 | 11218.95 | 105.9196 |
ts | wk.1440 | 2018-03-29 | 1440 | 99.75933 | 0.0027492 | 11356.53 | 106.5670 |
ts | wk.1440 | 2018-03-30 | 1440 | 99.85842 | 0.0016134 | 11291.23 | 106.2602 |
ts | wk.1440 | 2018-03-31 | 1 | 99.86468 | 0.0013541 | 11296.82 | 106.2865 |
ts | wk.1440 | 2018-04-02 | 1439 | 100.01643 | 0.0017569 | 11282.62 | 106.2197 |
ts | wk.1440 | 2018-04-03 | 1440 | 100.26681 | 0.0029644 | 11270.83 | 106.1641 |
ts | wk.1440 | 2018-04-04 | 1440 | 99.93027 | 0.0014281 | 11335.18 | 106.4668 |
ts | wk.1440 | 2018-04-05 | 1440 | 100.36512 | 0.0036426 | 11466.15 | 107.0801 |
ts | wk.1440 | 2018-04-06 | 1440 | 99.87028 | 0.0017806 | 11492.45 | 107.2028 |
ts | wk.1440 | 2018-04-07 | 1 | 99.58555 | 0.0041532 | 11435.74 | 106.9380 |
ts | wk.1440 | 2018-04-09 | 1439 | 100.08389 | 0.0012169 | 11445.22 | 106.9823 |
ts | wk.1440 | 2018-04-10 | 1440 | 100.26223 | 0.0026912 | 11457.75 | 107.0409 |
ts | wk.1440 | 2018-04-11 | 1440 | 99.77088 | 0.0023654 | 11444.89 | 106.9808 |
ts | wk.1440 | 2018-04-12 | 1440 | 100.19938 | 0.0020406 | 11456.52 | 107.0351 |
ts | wk.1440 | 2018-04-13 | 1440 | 100.10795 | 0.0011652 | 11550.18 | 107.4718 |
ts | wk.1440 | 2018-04-14 | 1 | 100.03228 | 0.0003228 | 11525.20 | 107.3555 |
ts | wk.1440 | 2018-04-16 | 1439 | 99.86004 | 0.0018910 | 11506.89 | 107.2702 |
ts | wk.1440 | 2018-04-17 | 1440 | 99.92359 | 0.0008102 | 11459.97 | 107.0513 |
ts | wk.1440 | 2018-04-18 | 1440 | 100.17749 | 0.0018165 | 11496.97 | 107.2239 |
ts | wk.1440 | 2018-04-19 | 1440 | 100.07502 | 0.0008876 | 11527.97 | 107.3684 |
ts | wk.1440 | 2018-04-20 | 1440 | 100.14609 | 0.0014735 | 11575.09 | 107.5876 |
ts | wk.1440 | 2018-04-21 | 1 | 100.25507 | 0.0025474 | 11586.80 | 107.6420 |
ts | wk.1440 | 2018-04-23 | 1439 | 100.39331 | 0.0039272 | 11692.38 | 108.1313 |
ts | wk.1440 | 2018-04-24 | 1440 | 99.73862 | 0.0026357 | 11842.73 | 108.8243 |
ts | wk.1440 | 2018-04-25 | 1440 | 100.07070 | 0.0009382 | 11904.94 | 109.1097 |
ts | wk.1440 | 2018-04-26 | 1440 | 99.68254 | 0.0032232 | 11950.00 | 109.3160 |
ts | wk.1440 | 2018-04-27 | 1440 | 99.96766 | 0.0010055 | 11931.93 | 109.2334 |
ts | wk.1440 | 2018-04-28 | 1 | 99.77765 | 0.0022260 | 11893.65 | 109.0580 |
ts | wk.1440 | 2018-04-30 | 1439 | 100.16178 | 0.0016189 | 11929.23 | 109.2210 |
ts | wk.1440 | 2018-05-01 | 1440 | 100.16995 | 0.0018354 | 11996.63 | 109.5292 |
ts | wk.1440 | 2018-05-02 | 1440 | 99.98443 | 0.0005955 | 12060.18 | 109.8189 |
ts | wk.1440 | 2018-05-03 | 1440 | 99.69142 | 0.0031297 | 11987.07 | 109.4855 |
ts | wk.1440 | 2018-05-04 | 1440 | 99.93452 | 0.0008463 | 11899.13 | 109.0831 |
ts | wk.1440 | 2018-05-05 | 1 | 99.89314 | 0.0010692 | 11897.68 | 109.0765 |
ts | wk.1440 | 2018-05-07 | 1439 | 100.10137 | 0.0012390 | 11911.40 | 109.1394 |
ts | wk.1440 | 2018-05-08 | 1440 | 99.96201 | 0.0008157 | 11891.41 | 109.0477 |
ts | wk.1440 | 2018-05-09 | 1440 | 100.41152 | 0.0042790 | 12003.25 | 109.5593 |
ts | wk.1440 | 2018-05-10 | 1440 | 99.87685 | 0.0015171 | 12023.21 | 109.6504 |
ts | wk.1440 | 2018-05-11 | 1440 | 99.92213 | 0.0010090 | 11958.04 | 109.3528 |
ts | wk.1440 | 2018-05-12 | 1 | 99.98905 | 0.0001095 | 11965.30 | 109.3860 |
ts | wk.1440 | 2018-05-14 | 1439 | 100.06327 | 0.0009799 | 11982.15 | 109.4630 |
ts | wk.1440 | 2018-05-15 | 1440 | 100.29571 | 0.0029500 | 12099.12 | 109.9960 |
ts | wk.1440 | 2018-05-16 | 1440 | 99.89889 | 0.0011129 | 12151.15 | 110.2323 |
ts | wk.1440 | 2018-05-17 | 1440 | 100.19652 | 0.0022281 | 12218.46 | 110.5372 |
ts | wk.1440 | 2018-05-18 | 1440 | 100.13333 | 0.0015220 | 12287.92 | 110.8509 |
ts | wk.1440 | 2018-05-19 | 1 | 99.98854 | 0.0001146 | 12266.23 | 110.7530 |
ts | wk.1440 | 2018-05-21 | 1439 | 100.37959 | 0.0037878 | 12351.42 | 111.1370 |
ts | wk.1440 | 2018-05-22 | 1440 | 99.87654 | 0.0012449 | 12312.95 | 110.9638 |
ts | wk.1440 | 2018-05-23 | 1440 | 99.39467 | 0.0060785 | 12158.59 | 110.2660 |
ts | wk.1440 | 2018-05-24 | 1440 | 99.53339 | 0.0046817 | 11998.41 | 109.5372 |
ts | wk.1440 | 2018-05-25 | 1440 | 100.18972 | 0.0019659 | 11973.30 | 109.4226 |
ts | wk.1440 | 2018-05-26 | 1 | 100.12220 | 0.0012213 | 11965.73 | 109.3880 |
ts | wk.1440 | 2018-05-28 | 1439 | 100.07208 | 0.0008628 | 11978.37 | 109.4457 |
ts | wk.1440 | 2018-05-29 | 1440 | 99.54841 | 0.0045295 | 11861.43 | 108.9102 |
ts | wk.1440 | 2018-05-30 | 1440 | 100.03578 | 0.0017527 | 11827.26 | 108.7532 |
ts | wk.1440 | 2018-05-31 | 1440 | 99.85386 | 0.0015151 | 11824.88 | 108.7423 |
ts | wk.1440 | 2018-06-01 | 1440 | 100.45866 | 0.0046085 | 11932.57 | 109.2363 |
ts | wk.1440 | 2018-06-02 | 1 | 100.64294 | 0.0064088 | 11994.41 | 109.5190 |
ts | wk.1440 | 2018-06-04 | 1439 | 100.11800 | 0.0014062 | 12014.08 | 109.6088 |
ts | wk.1440 | 2018-06-05 | 1440 | 100.03858 | 0.0009754 | 12054.61 | 109.7935 |
ts | wk.1440 | 2018-06-06 | 1440 | 100.23957 | 0.0023925 | 12102.82 | 110.0128 |
ts | wk.1440 | 2018-06-07 | 1440 | 99.79789 | 0.0020341 | 12089.87 | 109.9539 |
ts | wk.1440 | 2018-06-08 | 1440 | 99.86415 | 0.0015578 | 11999.72 | 109.5433 |
ts | wk.1440 | 2018-06-09 | 1 | 99.84559 | 0.0015453 | 11997.37 | 109.5325 |
ts | wk.1440 | 2018-06-11 | 1439 | 100.30342 | 0.0034765 | 12060.77 | 109.8215 |
ts | wk.1440 | 2018-06-12 | 1440 | 100.20905 | 0.0020893 | 12161.63 | 110.2798 |
ts | wk.1440 | 2018-06-13 | 1440 | 100.12119 | 0.0012366 | 12214.51 | 110.5193 |
ts | wk.1440 | 2018-06-14 | 1440 | 99.84484 | 0.0022947 | 12155.51 | 110.2520 |
ts | wk.1440 | 2018-06-15 | 1440 | 100.02864 | 0.0007414 | 12236.36 | 110.6181 |
ts | wk.1440 | 2018-06-16 | 1 | 100.02949 | 0.0002948 | 12246.85 | 110.6655 |
ts | wk.1440 | 2018-06-18 | 1439 | 99.88188 | 0.0012732 | 12212.85 | 110.5118 |
ts | wk.1440 | 2018-06-19 | 1440 | 99.53007 | 0.0047996 | 12092.22 | 109.9646 |
ts | wk.1440 | 2018-06-20 | 1440 | 100.24136 | 0.0024165 | 12131.88 | 110.1448 |
ts | wk.1440 | 2018-06-21 | 1440 | 100.10382 | 0.0026874 | 12174.11 | 110.3364 |
ts | wk.1440 | 2018-06-22 | 1440 | 100.06512 | 0.0009681 | 12102.67 | 110.0121 |
ts | wk.1440 | 2018-06-23 | 1 | 100.00103 | 0.0000103 | 12097.14 | 109.9870 |
ts | wk.1440 | 2018-06-25 | 1439 | 99.66938 | 0.0033133 | 12011.46 | 109.5968 |
ts | wk.1440 | 2018-06-26 | 1440 | 100.04892 | 0.0015926 | 12042.42 | 109.7380 |
ts | wk.1440 | 2018-06-27 | 1440 | 100.09659 | 0.0016741 | 12115.29 | 110.0695 |
ts | wk.1440 | 2018-06-28 | 1440 | 100.10791 | 0.0012175 | 12163.27 | 110.2872 |
ts | wk.1440 | 2018-06-29 | 1440 | 100.26798 | 0.0026757 | 12244.61 | 110.6554 |
ts | wk.1440 | 2018-06-30 | 1 | 100.17275 | 0.0017260 | 12251.83 | 110.6880 |
ts | wk.1440 | 2018-07-02 | 1439 | 100.15658 | 0.0016004 | 12277.07 | 110.8019 |
ts | wk.1440 | 2018-07-03 | 1440 | 99.95189 | 0.0015392 | 12275.38 | 110.7943 |
ts | wk.1440 | 2018-07-04 | 1440 | 99.89551 | 0.0010488 | 12203.16 | 110.4679 |
ts | wk.1440 | 2018-07-05 | 1440 | 100.06410 | 0.0010582 | 12224.79 | 110.5658 |
ts | wk.1440 | 2018-07-06 | 1440 | 99.94692 | 0.0008899 | 12229.69 | 110.5879 |
ts | wk.1440 | 2018-07-07 | 1 | 99.83603 | 0.0016410 | 12202.18 | 110.4635 |
ts | yr.1440 | 2018-01-03 | 1439 | 100.06545 | 0.0007281 | 12617.14 | 112.3261 |
ts | yr.1440 | 2018-01-04 | 1440 | 100.22569 | 0.0022540 | 12696.52 | 112.6789 |
ts | yr.1440 | 2018-01-05 | 1440 | 100.32410 | 0.0032344 | 12781.03 | 113.0532 |
ts | yr.1440 | 2018-01-06 | 1 | 100.28941 | 0.0028899 | 12783.02 | 113.0620 |
ts | yr.1440 | 2018-01-08 | 1439 | 100.06073 | 0.0008373 | 12797.02 | 113.1239 |
ts | yr.1440 | 2018-01-09 | 1440 | 99.66521 | 0.0034220 | 12709.18 | 112.7350 |
ts | yr.1440 | 2018-01-10 | 1440 | 99.30652 | 0.0070122 | 12512.95 | 111.8613 |
ts | yr.1440 | 2018-01-11 | 1440 | 100.11729 | 0.0020267 | 12434.67 | 111.5109 |
ts | yr.1440 | 2018-01-12 | 1440 | 99.96515 | 0.0009403 | 12368.72 | 111.2147 |
ts | yr.1440 | 2018-01-13 | 1 | 99.78704 | 0.0021319 | 12326.11 | 111.0230 |
ts | yr.1440 | 2018-01-15 | 1439 | 99.69061 | 0.0031632 | 12249.50 | 110.6774 |
ts | yr.1440 | 2018-01-16 | 1440 | 100.17646 | 0.0020232 | 12255.80 | 110.7059 |
ts | yr.1440 | 2018-01-17 | 1440 | 100.21920 | 0.0025692 | 12260.34 | 110.7264 |
ts | yr.1440 | 2018-01-18 | 1440 | 99.91899 | 0.0011150 | 12361.75 | 111.1834 |
ts | yr.1440 | 2018-01-19 | 1440 | 99.68215 | 0.0031845 | 12269.67 | 110.7685 |
ts | yr.1440 | 2018-01-20 | 1 | 99.74787 | 0.0025245 | 12284.40 | 110.8350 |
ts | yr.1440 | 2018-01-22 | 1439 | 100.02773 | 0.0011060 | 12282.58 | 110.8268 |
ts | yr.1440 | 2018-01-23 | 1440 | 99.77232 | 0.0024671 | 12243.49 | 110.6503 |
ts | yr.1440 | 2018-01-24 | 1440 | 99.43043 | 0.0057232 | 12023.34 | 109.6510 |
ts | yr.1440 | 2018-01-25 | 1440 | 99.89229 | 0.0018061 | 11890.55 | 109.0438 |
ts | yr.1440 | 2018-01-26 | 1440 | 99.80673 | 0.0029750 | 11901.34 | 109.0932 |
ts | yr.1440 | 2018-01-27 | 1 | 99.28405 | 0.0071853 | 11800.26 | 108.6290 |
ts | yr.1440 | 2018-01-29 | 1439 | 100.25504 | 0.0026299 | 11848.14 | 108.8492 |
ts | yr.1440 | 2018-01-30 | 1440 | 99.87316 | 0.0014964 | 11832.26 | 108.7762 |
ts | yr.1440 | 2018-01-31 | 1440 | 100.18246 | 0.0020674 | 11863.86 | 108.9214 |
ts | yr.1440 | 2018-02-01 | 1440 | 100.26138 | 0.0027065 | 11974.99 | 109.4303 |
ts | yr.1440 | 2018-02-02 | 1440 | 100.43644 | 0.0045563 | 12072.03 | 109.8728 |
ts | yr.1440 | 2018-02-03 | 1 | 100.70643 | 0.0070394 | 12138.31 | 110.1740 |
ts | yr.1440 | 2018-02-05 | 1439 | 99.73381 | 0.0027340 | 12076.74 | 109.8942 |
ts | yr.1440 | 2018-02-06 | 1440 | 99.96120 | 0.0019117 | 11906.76 | 109.1181 |
ts | yr.1440 | 2018-02-07 | 1440 | 99.79774 | 0.0021832 | 11951.00 | 109.3206 |
ts | yr.1440 | 2018-02-08 | 1440 | 100.01255 | 0.0027637 | 11957.42 | 109.3500 |
ts | yr.1440 | 2018-02-09 | 1440 | 100.02175 | 0.0020275 | 11846.29 | 108.8407 |
ts | yr.1440 | 2018-02-10 | 1 | 100.04384 | 0.0004383 | 11836.57 | 108.7960 |
ts | yr.1440 | 2018-02-12 | 1439 | 99.85241 | 0.0015469 | 11810.06 | 108.6741 |
ts | yr.1440 | 2018-02-13 | 1440 | 99.35995 | 0.0067093 | 11665.00 | 108.0046 |
ts | yr.1440 | 2018-02-14 | 1440 | 99.53140 | 0.0047739 | 11510.96 | 107.2892 |
ts | yr.1440 | 2018-02-15 | 1440 | 99.54696 | 0.0045426 | 11342.71 | 106.5021 |
ts | yr.1440 | 2018-02-16 | 1440 | 99.97888 | 0.0011771 | 11254.57 | 106.0876 |
ts | yr.1440 | 2018-02-17 | 1 | 100.15973 | 0.0015960 | 11300.97 | 106.3060 |
ts | yr.1440 | 2018-02-19 | 1439 | 100.21414 | 0.0023194 | 11336.73 | 106.4741 |
ts | yr.1440 | 2018-02-20 | 1440 | 100.42826 | 0.0043060 | 11451.01 | 107.0094 |
ts | yr.1440 | 2018-02-21 | 1440 | 100.28160 | 0.0028545 | 11577.32 | 107.5980 |
ts | yr.1440 | 2018-02-22 | 1440 | 99.48679 | 0.0051556 | 11491.09 | 107.1965 |
ts | yr.1440 | 2018-02-23 | 1440 | 100.09603 | 0.0012318 | 11409.03 | 106.8131 |
ts | yr.1440 | 2018-02-24 | 1 | 100.13198 | 0.0013190 | 11425.69 | 106.8910 |
ts | yr.1440 | 2018-02-26 | 1439 | 99.92934 | 0.0017963 | 11402.75 | 106.7837 |
ts | yr.1440 | 2018-02-27 | 1440 | 100.18816 | 0.0020191 | 11469.21 | 107.0944 |
ts | yr.1440 | 2018-02-28 | 1440 | 99.76570 | 0.0024970 | 11458.55 | 107.0446 |
ts | yr.1440 | 2018-03-01 | 1440 | 100.06804 | 0.0016431 | 11389.51 | 106.7217 |
ts | yr.1440 | 2018-03-02 | 1440 | 99.51810 | 0.0048344 | 11185.24 | 105.7603 |
ts | yr.1440 | 2018-03-03 | 1 | 99.52654 | 0.0047458 | 11177.99 | 105.7260 |
ts | yr.1440 | 2018-03-05 | 1439 | 100.03044 | 0.0018001 | 11175.08 | 105.7123 |
ts | yr.1440 | 2018-03-06 | 1440 | 100.02076 | 0.0011788 | 11275.41 | 106.1858 |
ts | yr.1440 | 2018-03-07 | 1440 | 99.70639 | 0.0029629 | 11191.63 | 105.7905 |
ts | yr.1440 | 2018-03-08 | 1440 | 100.11162 | 0.0011222 | 11257.18 | 106.0998 |
ts | yr.1440 | 2018-03-09 | 1440 | 100.55088 | 0.0054987 | 11391.07 | 106.7290 |
ts | yr.1440 | 2018-03-10 | 1 | 100.56884 | 0.0056723 | 11412.33 | 106.8285 |
ts | yr.1440 | 2018-03-12 | 1439 | 99.80961 | 0.0020989 | 11363.59 | 106.6001 |
ts | yr.1440 | 2018-03-13 | 1440 | 100.31507 | 0.0033527 | 11385.84 | 106.7044 |
ts | yr.1440 | 2018-03-14 | 1440 | 99.87198 | 0.0013914 | 11331.94 | 106.4516 |
ts | yr.1440 | 2018-03-15 | 1440 | 99.77588 | 0.0023602 | 11251.42 | 106.0727 |
ts | yr.1440 | 2018-03-16 | 1440 | 99.71866 | 0.0029500 | 11234.04 | 105.9908 |
ts | yr.1440 | 2018-03-17 | 1 | 99.66114 | 0.0033944 | 11232.29 | 105.9825 |
ts | yr.1440 | 2018-03-19 | 1439 | 100.02602 | 0.0009622 | 11226.19 | 105.9537 |
ts | yr.1440 | 2018-03-20 | 1440 | 100.25702 | 0.0027025 | 11303.43 | 106.3176 |
ts | yr.1440 | 2018-03-21 | 1440 | 99.86483 | 0.0015871 | 11310.68 | 106.3517 |
ts | yr.1440 | 2018-03-22 | 1440 | 99.68111 | 0.0032131 | 11169.29 | 105.6848 |
ts | yr.1440 | 2018-03-23 | 1440 | 99.70663 | 0.0029523 | 11013.37 | 104.9446 |
ts | yr.1440 | 2018-03-24 | 1 | 99.48220 | 0.0051914 | 10969.63 | 104.7360 |
ts | yr.1440 | 2018-03-26 | 1439 | 100.32098 | 0.0032454 | 11032.31 | 105.0348 |
ts | yr.1440 | 2018-03-27 | 1440 | 100.23821 | 0.0024025 | 11153.99 | 105.6124 |
ts | yr.1440 | 2018-03-28 | 1440 | 100.52128 | 0.0052204 | 11218.95 | 105.9196 |
ts | yr.1440 | 2018-03-29 | 1440 | 99.75884 | 0.0026103 | 11356.53 | 106.5670 |
ts | yr.1440 | 2018-03-30 | 1440 | 99.85749 | 0.0016520 | 11291.23 | 106.2602 |
ts | yr.1440 | 2018-03-31 | 1 | 99.86684 | 0.0013325 | 11296.82 | 106.2865 |
ts | yr.1440 | 2018-04-02 | 1439 | 99.97046 | 0.0015288 | 11282.62 | 106.2197 |
ts | yr.1440 | 2018-04-03 | 1440 | 100.24983 | 0.0027647 | 11270.83 | 106.1641 |
ts | yr.1440 | 2018-04-04 | 1440 | 99.88920 | 0.0015265 | 11335.18 | 106.4668 |
ts | yr.1440 | 2018-04-05 | 1440 | 100.34799 | 0.0034721 | 11466.15 | 107.0801 |
ts | yr.1440 | 2018-04-06 | 1440 | 99.86769 | 0.0017816 | 11492.45 | 107.2028 |
ts | yr.1440 | 2018-04-07 | 1 | 99.58295 | 0.0041792 | 11435.74 | 106.9380 |
ts | yr.1440 | 2018-04-09 | 1439 | 100.08064 | 0.0012198 | 11445.22 | 106.9823 |
ts | yr.1440 | 2018-04-10 | 1440 | 100.26682 | 0.0027402 | 11457.75 | 107.0409 |
ts | yr.1440 | 2018-04-11 | 1440 | 99.79814 | 0.0020988 | 11444.89 | 106.9808 |
ts | yr.1440 | 2018-04-12 | 1440 | 100.23365 | 0.0023426 | 11456.52 | 107.0351 |
ts | yr.1440 | 2018-04-13 | 1440 | 100.13739 | 0.0014224 | 11550.18 | 107.4718 |
ts | yr.1440 | 2018-04-14 | 1 | 100.02794 | 0.0002794 | 11525.20 | 107.3555 |
ts | yr.1440 | 2018-04-16 | 1439 | 99.88296 | 0.0017041 | 11506.89 | 107.2702 |
ts | yr.1440 | 2018-04-17 | 1440 | 99.91837 | 0.0008725 | 11459.97 | 107.0513 |
ts | yr.1440 | 2018-04-18 | 1440 | 100.17913 | 0.0018003 | 11496.97 | 107.2239 |
ts | yr.1440 | 2018-04-19 | 1440 | 100.07991 | 0.0008822 | 11527.97 | 107.3684 |
ts | yr.1440 | 2018-04-20 | 1440 | 100.15655 | 0.0015756 | 11575.09 | 107.5876 |
ts | yr.1440 | 2018-04-21 | 1 | 100.25328 | 0.0025296 | 11586.80 | 107.6420 |
ts | yr.1440 | 2018-04-23 | 1439 | 100.40095 | 0.0039958 | 11692.38 | 108.1313 |
ts | yr.1440 | 2018-04-24 | 1440 | 100.07265 | 0.0008561 | 11842.73 | 108.8243 |
ts | yr.1440 | 2018-04-25 | 1440 | 100.22602 | 0.0023165 | 11904.94 | 109.1097 |
ts | yr.1440 | 2018-04-26 | 1440 | 99.87334 | 0.0012903 | 11950.00 | 109.3160 |
ts | yr.1440 | 2018-04-27 | 1440 | 99.92802 | 0.0009660 | 11931.93 | 109.2334 |
ts | yr.1440 | 2018-04-28 | 1 | 99.78040 | 0.0021984 | 11893.65 | 109.0580 |
ts | yr.1440 | 2018-04-30 | 1439 | 100.13550 | 0.0013741 | 11929.23 | 109.2210 |
ts | yr.1440 | 2018-05-01 | 1440 | 100.15945 | 0.0018065 | 11996.63 | 109.5292 |
ts | yr.1440 | 2018-05-02 | 1440 | 99.96057 | 0.0006242 | 12060.18 | 109.8189 |
ts | yr.1440 | 2018-05-03 | 1440 | 99.69221 | 0.0031277 | 11987.07 | 109.4855 |
ts | yr.1440 | 2018-05-04 | 1440 | 99.91977 | 0.0008651 | 11899.13 | 109.0831 |
ts | yr.1440 | 2018-05-05 | 1 | 99.88831 | 0.0011175 | 11897.68 | 109.0765 |
ts | yr.1440 | 2018-05-07 | 1439 | 100.08031 | 0.0011121 | 11911.40 | 109.1394 |
ts | yr.1440 | 2018-05-08 | 1440 | 99.96088 | 0.0007874 | 11891.41 | 109.0477 |
ts | yr.1440 | 2018-05-09 | 1440 | 100.41578 | 0.0042756 | 12003.25 | 109.5593 |
ts | yr.1440 | 2018-05-10 | 1440 | 99.89954 | 0.0014172 | 12023.21 | 109.6504 |
ts | yr.1440 | 2018-05-11 | 1440 | 99.94921 | 0.0008596 | 11958.04 | 109.3528 |
ts | yr.1440 | 2018-05-12 | 1 | 99.99186 | 0.0000814 | 11965.30 | 109.3860 |
ts | yr.1440 | 2018-05-14 | 1439 | 100.06688 | 0.0009810 | 11982.15 | 109.4630 |
ts | yr.1440 | 2018-05-15 | 1440 | 100.30467 | 0.0030394 | 12099.12 | 109.9960 |
ts | yr.1440 | 2018-05-16 | 1440 | 99.88996 | 0.0011541 | 12151.15 | 110.2323 |
ts | yr.1440 | 2018-05-17 | 1440 | 100.15133 | 0.0020072 | 12218.46 | 110.5372 |
ts | yr.1440 | 2018-05-18 | 1440 | 100.09195 | 0.0011818 | 12287.92 | 110.8509 |
ts | yr.1440 | 2018-05-19 | 1 | 99.98650 | 0.0001350 | 12266.23 | 110.7530 |
ts | yr.1440 | 2018-05-21 | 1439 | 100.36315 | 0.0036242 | 12351.42 | 111.1370 |
ts | yr.1440 | 2018-05-22 | 1440 | 99.89202 | 0.0010916 | 12312.95 | 110.9638 |
ts | yr.1440 | 2018-05-23 | 1440 | 99.42316 | 0.0058035 | 12158.59 | 110.2660 |
ts | yr.1440 | 2018-05-24 | 1440 | 99.54464 | 0.0045714 | 11998.41 | 109.5372 |
ts | yr.1440 | 2018-05-25 | 1440 | 100.19455 | 0.0019966 | 11973.30 | 109.4226 |
ts | yr.1440 | 2018-05-26 | 1 | 100.12669 | 0.0012661 | 11965.73 | 109.3880 |
ts | yr.1440 | 2018-05-28 | 1439 | 100.07779 | 0.0008974 | 11978.37 | 109.4457 |
ts | yr.1440 | 2018-05-29 | 1440 | 99.53903 | 0.0046295 | 11861.43 | 108.9102 |
ts | yr.1440 | 2018-05-30 | 1440 | 100.01427 | 0.0014692 | 11827.26 | 108.7532 |
ts | yr.1440 | 2018-05-31 | 1440 | 99.87419 | 0.0013659 | 11824.88 | 108.7423 |
ts | yr.1440 | 2018-06-01 | 1440 | 100.44320 | 0.0044827 | 11932.57 | 109.2363 |
ts | yr.1440 | 2018-06-02 | 1 | 100.64868 | 0.0064658 | 11994.41 | 109.5190 |
ts | yr.1440 | 2018-06-04 | 1439 | 100.10205 | 0.0012115 | 12014.08 | 109.6088 |
ts | yr.1440 | 2018-06-05 | 1440 | 100.02606 | 0.0008149 | 12054.61 | 109.7935 |
ts | yr.1440 | 2018-06-06 | 1440 | 100.24141 | 0.0024113 | 12102.82 | 110.0128 |
ts | yr.1440 | 2018-06-07 | 1440 | 99.81571 | 0.0018596 | 12089.87 | 109.9539 |
ts | yr.1440 | 2018-06-08 | 1440 | 99.87332 | 0.0015629 | 11999.72 | 109.5433 |
ts | yr.1440 | 2018-06-09 | 1 | 99.84378 | 0.0015635 | 11997.37 | 109.5325 |
ts | yr.1440 | 2018-06-11 | 1439 | 100.30122 | 0.0033300 | 12060.77 | 109.8215 |
ts | yr.1440 | 2018-06-12 | 1440 | 100.22822 | 0.0022808 | 12161.63 | 110.2798 |
ts | yr.1440 | 2018-06-13 | 1440 | 100.13050 | 0.0013297 | 12214.51 | 110.5193 |
ts | yr.1440 | 2018-06-14 | 1440 | 99.88438 | 0.0020538 | 12155.51 | 110.2520 |
ts | yr.1440 | 2018-06-15 | 1440 | 100.01136 | 0.0006623 | 12236.36 | 110.6181 |
ts | yr.1440 | 2018-06-16 | 1 | 100.02994 | 0.0002993 | 12246.85 | 110.6655 |
ts | yr.1440 | 2018-06-18 | 1439 | 99.87000 | 0.0013572 | 12212.85 | 110.5118 |
ts | yr.1440 | 2018-06-19 | 1440 | 99.49582 | 0.0051049 | 12092.22 | 109.9646 |
ts | yr.1440 | 2018-06-20 | 1440 | 100.16662 | 0.0016873 | 12131.88 | 110.1448 |
ts | yr.1440 | 2018-06-21 | 1440 | 100.05124 | 0.0023267 | 12174.11 | 110.3364 |
ts | yr.1440 | 2018-06-22 | 1440 | 100.06489 | 0.0009184 | 12102.67 | 110.0121 |
ts | yr.1440 | 2018-06-23 | 1 | 100.00145 | 0.0000145 | 12097.14 | 109.9870 |
ts | yr.1440 | 2018-06-25 | 1439 | 99.68584 | 0.0031486 | 12011.46 | 109.5968 |
ts | yr.1440 | 2018-06-26 | 1440 | 100.06654 | 0.0014573 | 12042.42 | 109.7380 |
ts | yr.1440 | 2018-06-27 | 1440 | 100.11886 | 0.0016074 | 12115.29 | 110.0695 |
ts | yr.1440 | 2018-06-28 | 1440 | 100.10094 | 0.0011734 | 12163.27 | 110.2872 |
ts | yr.1440 | 2018-06-29 | 1440 | 100.22739 | 0.0022752 | 12244.61 | 110.6554 |
ts | yr.1440 | 2018-06-30 | 1 | 100.17049 | 0.0017034 | 12251.83 | 110.6880 |
ts | yr.1440 | 2018-07-02 | 1439 | 100.15406 | 0.0015504 | 12277.07 | 110.8019 |
ts | yr.1440 | 2018-07-03 | 1440 | 99.96069 | 0.0014012 | 12275.38 | 110.7943 |
ts | yr.1440 | 2018-07-04 | 1440 | 99.93107 | 0.0007006 | 12203.16 | 110.4679 |
ts | yr.1440 | 2018-07-05 | 1440 | 100.08798 | 0.0010730 | 12224.79 | 110.5658 |
ts | yr.1440 | 2018-07-06 | 1440 | 99.97505 | 0.0009019 | 12229.69 | 110.5879 |
ts | yr.1440 | 2018-07-07 | 1 | 99.83609 | 0.0016405 | 12202.18 | 110.4635 |
plt_s2 %>%
kbl('html', caption = 'Data Sample', escape = FALSE) %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
scroll_box(width = '100%', fixed_thead = TRUE, height = '400px')
Model | Period | index | N | open.mape | open.smape | open.mse | open.rmse |
---|---|---|---|---|---|---|---|
tbats | dy.qt | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.qt | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.qt | 2018-01-05 | 1440 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
tbats | dy.qt | 2018-01-06 | 1 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
tbats | dy.qt | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.qt | 2018-01-09 | 1440 | 100.04867 | 0.0012931 | 12709.18 | 112.7350 |
tbats | dy.qt | 2018-01-10 | 1440 | 99.27259 | 0.0073400 | 12512.95 | 111.8613 |
tbats | dy.qt | 2018-01-11 | 1440 | 98.96225 | 0.0104334 | 12434.67 | 111.5109 |
tbats | dy.qt | 2018-01-12 | 1440 | 98.69954 | 0.0130904 | 12368.72 | 111.2147 |
tbats | dy.qt | 2018-01-13 | 1 | 98.52946 | 0.0148143 | 12326.11 | 111.0230 |
tbats | dy.qt | 2018-01-15 | 1439 | 98.22265 | 0.0179342 | 12249.50 | 110.6774 |
tbats | dy.qt | 2018-01-16 | 1440 | 98.24796 | 0.0176763 | 12255.80 | 110.7059 |
tbats | dy.qt | 2018-01-17 | 1440 | 98.26609 | 0.0174925 | 12260.34 | 110.7264 |
tbats | dy.qt | 2018-01-18 | 1440 | 98.67172 | 0.0133725 | 12361.75 | 111.1834 |
tbats | dy.qt | 2018-01-19 | 1440 | 98.30353 | 0.0171110 | 12269.67 | 110.7685 |
tbats | dy.qt | 2018-01-20 | 1 | 98.36262 | 0.0165090 | 12284.40 | 110.8350 |
tbats | dy.qt | 2018-01-22 | 1439 | 98.35525 | 0.0165846 | 12282.58 | 110.8268 |
tbats | dy.qt | 2018-01-23 | 1440 | 98.19844 | 0.0181820 | 12243.49 | 110.6503 |
tbats | dy.qt | 2018-01-24 | 1440 | 97.31119 | 0.0272614 | 12023.34 | 109.6510 |
tbats | dy.qt | 2018-01-25 | 1440 | 96.77278 | 0.0328036 | 11890.55 | 109.0438 |
tbats | dy.qt | 2018-01-26 | 1440 | 96.81623 | 0.0323591 | 11901.34 | 109.0932 |
tbats | dy.qt | 2018-01-27 | 1 | 96.40486 | 0.0366094 | 11800.26 | 108.6290 |
tbats | dy.qt | 2018-01-29 | 1439 | 96.60017 | 0.0345871 | 11848.14 | 108.8492 |
tbats | dy.qt | 2018-01-30 | 1440 | 96.53542 | 0.0352574 | 11832.26 | 108.7762 |
tbats | dy.qt | 2018-01-31 | 1440 | 96.66416 | 0.0339260 | 11863.86 | 108.9214 |
tbats | dy.qt | 2018-02-01 | 1440 | 97.11590 | 0.0292640 | 11974.99 | 109.4303 |
tbats | dy.qt | 2018-02-02 | 1440 | 97.50825 | 0.0252362 | 12072.03 | 109.8728 |
tbats | dy.qt | 2018-02-03 | 1 | 97.77600 | 0.0224901 | 12138.31 | 110.1740 |
tbats | dy.qt | 2018-02-05 | 1439 | 97.52750 | 0.0250364 | 12076.74 | 109.8942 |
tbats | dy.qt | 2018-02-06 | 1440 | 96.83864 | 0.0321241 | 11906.76 | 109.1181 |
tbats | dy.qt | 2018-02-07 | 1440 | 97.01853 | 0.0302673 | 11951.00 | 109.3206 |
tbats | dy.qt | 2018-02-08 | 1440 | 97.04430 | 0.0300045 | 11957.42 | 109.3500 |
tbats | dy.qt | 2018-02-09 | 1440 | 96.59248 | 0.0346683 | 11846.29 | 108.8407 |
tbats | dy.qt | 2018-02-10 | 1 | 96.55307 | 0.0350738 | 11836.57 | 108.7960 |
tbats | dy.qt | 2018-02-12 | 1439 | 96.44488 | 0.0361948 | 11810.06 | 108.6741 |
tbats | dy.qt | 2018-02-13 | 1440 | 95.84988 | 0.0423895 | 11665.00 | 108.0046 |
tbats | dy.qt | 2018-02-14 | 1440 | 95.21545 | 0.0490216 | 11510.96 | 107.2892 |
tbats | dy.qt | 2018-02-15 | 1440 | 94.51717 | 0.0563755 | 11342.71 | 106.5021 |
tbats | dy.qt | 2018-02-16 | 1440 | 94.14929 | 0.0602717 | 11254.57 | 106.0876 |
tbats | dy.qt | 2018-02-17 | 1 | 94.34327 | 0.0582138 | 11300.97 | 106.3060 |
tbats | dy.qt | 2018-02-19 | 1439 | 100.15807 | 0.0018789 | 11336.73 | 106.4741 |
tbats | dy.qt | 2018-02-20 | 1440 | 100.39103 | 0.0039051 | 11451.01 | 107.0094 |
tbats | dy.qt | 2018-02-21 | 1440 | 100.25293 | 0.0025468 | 11577.32 | 107.5980 |
tbats | dy.qt | 2018-02-22 | 1440 | 99.46320 | 0.0053927 | 11491.09 | 107.1965 |
tbats | dy.qt | 2018-02-23 | 1440 | 100.05442 | 0.0010658 | 11409.03 | 106.8131 |
tbats | dy.qt | 2018-02-24 | 1 | 100.12813 | 0.0012805 | 11425.69 | 106.8910 |
tbats | dy.qt | 2018-02-26 | 1439 | 99.90008 | 0.0017224 | 11402.75 | 106.7837 |
tbats | dy.qt | 2018-02-27 | 1440 | 100.15712 | 0.0017597 | 11469.21 | 107.0944 |
tbats | dy.qt | 2018-02-28 | 1440 | 99.73121 | 0.0028609 | 11458.55 | 107.0446 |
tbats | dy.qt | 2018-03-01 | 1440 | 100.04078 | 0.0014257 | 11389.51 | 106.7217 |
tbats | dy.qt | 2018-03-02 | 1440 | 99.55689 | 0.0044691 | 11185.24 | 105.7603 |
tbats | dy.qt | 2018-03-03 | 1 | 99.52529 | 0.0047584 | 11177.99 | 105.7260 |
tbats | dy.qt | 2018-03-05 | 1439 | 99.98671 | 0.0020805 | 11175.08 | 105.7123 |
tbats | dy.qt | 2018-03-06 | 1440 | 99.97448 | 0.0010510 | 11275.41 | 106.1858 |
tbats | dy.qt | 2018-03-07 | 1440 | 99.67282 | 0.0032912 | 11191.63 | 105.7905 |
tbats | dy.qt | 2018-03-08 | 1440 | 100.02248 | 0.0006004 | 11257.18 | 106.0998 |
tbats | dy.qt | 2018-03-09 | 1440 | 100.47998 | 0.0047965 | 11391.07 | 106.7290 |
tbats | dy.qt | 2018-03-10 | 1 | 100.57372 | 0.0057207 | 11412.33 | 106.8285 |
tbats | dy.qt | 2018-03-12 | 1439 | 99.78623 | 0.0023423 | 11363.59 | 106.6001 |
tbats | dy.qt | 2018-03-13 | 1440 | 100.26633 | 0.0028931 | 11385.84 | 106.7044 |
tbats | dy.qt | 2018-03-14 | 1440 | 99.88333 | 0.0013305 | 11331.94 | 106.4516 |
tbats | dy.qt | 2018-03-15 | 1440 | 99.76423 | 0.0023882 | 11251.42 | 106.0727 |
tbats | dy.qt | 2018-03-16 | 1440 | 99.66757 | 0.0033348 | 11234.04 | 105.9908 |
tbats | dy.qt | 2018-03-17 | 1 | 99.65997 | 0.0034061 | 11232.29 | 105.9825 |
tbats | dy.qt | 2018-03-19 | 1439 | 99.97263 | 0.0011852 | 11226.19 | 105.9537 |
tbats | dy.qt | 2018-03-20 | 1440 | 100.20904 | 0.0022823 | 11303.43 | 106.3176 |
tbats | dy.qt | 2018-03-21 | 1440 | 99.82901 | 0.0017237 | 11310.68 | 106.3517 |
tbats | dy.qt | 2018-03-22 | 1440 | 99.65709 | 0.0034537 | 11169.29 | 105.6848 |
tbats | dy.qt | 2018-03-23 | 1440 | 99.67875 | 0.0032366 | 11013.37 | 104.9446 |
tbats | dy.qt | 2018-03-24 | 1 | 99.48123 | 0.0052012 | 10969.63 | 104.7360 |
tbats | dy.qt | 2018-03-26 | 1439 | 100.28518 | 0.0028807 | 11032.31 | 105.0348 |
tbats | dy.qt | 2018-03-27 | 1440 | 100.19555 | 0.0019708 | 11153.99 | 105.6124 |
tbats | dy.qt | 2018-03-28 | 1440 | 100.54877 | 0.0054627 | 11218.95 | 105.9196 |
tbats | dy.qt | 2018-03-29 | 1440 | 99.73412 | 0.0027027 | 11356.53 | 106.5670 |
tbats | dy.qt | 2018-03-30 | 1440 | 99.83920 | 0.0017394 | 11291.23 | 106.2602 |
tbats | dy.qt | 2018-03-31 | 1 | 99.86424 | 0.0013585 | 11296.82 | 106.2865 |
tbats | dy.qt | 2018-04-02 | 1439 | 99.93700 | 0.0011310 | 11282.62 | 106.2197 |
tbats | dy.qt | 2018-04-03 | 1440 | 100.25481 | 0.0027837 | 11270.83 | 106.1641 |
tbats | dy.qt | 2018-04-04 | 1440 | 99.86599 | 0.0017314 | 11335.18 | 106.4668 |
tbats | dy.qt | 2018-04-05 | 1440 | 100.28099 | 0.0028526 | 11466.15 | 107.0801 |
tbats | dy.qt | 2018-04-06 | 1440 | 99.83245 | 0.0017703 | 11492.45 | 107.2028 |
tbats | dy.qt | 2018-04-07 | 1 | 99.58556 | 0.0041530 | 11435.74 | 106.9380 |
tbats | dy.qt | 2018-04-09 | 1439 | 100.04115 | 0.0009017 | 11445.22 | 106.9823 |
tbats | dy.qt | 2018-04-10 | 1440 | 100.22867 | 0.0024343 | 11457.75 | 107.0409 |
tbats | dy.qt | 2018-04-11 | 1440 | 99.79334 | 0.0020920 | 11444.89 | 106.9808 |
tbats | dy.qt | 2018-04-12 | 1440 | 100.22729 | 0.0022879 | 11456.52 | 107.0351 |
tbats | dy.qt | 2018-04-13 | 1440 | 100.14150 | 0.0015252 | 11550.18 | 107.4718 |
tbats | dy.qt | 2018-04-14 | 1 | 100.03289 | 0.0003289 | 11525.20 | 107.3555 |
tbats | dy.qt | 2018-04-16 | 1439 | 99.92011 | 0.0012842 | 11506.89 | 107.2702 |
tbats | dy.qt | 2018-04-17 | 1440 | 99.93751 | 0.0006970 | 11459.97 | 107.0513 |
tbats | dy.qt | 2018-04-18 | 1440 | 100.20349 | 0.0020342 | 11496.97 | 107.2239 |
tbats | dy.qt | 2018-04-19 | 1440 | 100.12256 | 0.0012611 | 11527.97 | 107.3684 |
tbats | dy.qt | 2018-04-20 | 1440 | 100.20483 | 0.0020465 | 11575.09 | 107.5876 |
tbats | dy.qt | 2018-04-21 | 1 | 100.25545 | 0.0025513 | 11586.80 | 107.6420 |
tbats | dy.qt | 2018-04-23 | 1439 | 100.45611 | 0.0045455 | 11692.38 | 108.1313 |
tbats | dy.qt | 2018-04-24 | 1440 | 100.11055 | 0.0011908 | 11842.73 | 108.8243 |
tbats | dy.qt | 2018-04-25 | 1440 | 100.26987 | 0.0026968 | 11904.94 | 109.1097 |
tbats | dy.qt | 2018-04-26 | 1440 | 99.89900 | 0.0010289 | 11950.00 | 109.3160 |
tbats | dy.qt | 2018-04-27 | 1440 | 99.93781 | 0.0008727 | 11931.93 | 109.2334 |
tbats | dy.qt | 2018-04-28 | 1 | 99.77747 | 0.0022278 | 11893.65 | 109.0580 |
tbats | dy.qt | 2018-04-30 | 1439 | 100.14920 | 0.0014945 | 11929.23 | 109.2210 |
tbats | dy.qt | 2018-05-01 | 1440 | 100.17329 | 0.0019150 | 11996.63 | 109.5292 |
tbats | dy.qt | 2018-05-02 | 1440 | 99.95855 | 0.0006544 | 12060.18 | 109.8189 |
tbats | dy.qt | 2018-05-03 | 1440 | 99.67902 | 0.0032314 | 11987.07 | 109.4855 |
tbats | dy.qt | 2018-05-04 | 1440 | 99.89883 | 0.0010363 | 11899.13 | 109.0831 |
tbats | dy.qt | 2018-05-05 | 1 | 99.89319 | 0.0010687 | 11897.68 | 109.0765 |
tbats | dy.qt | 2018-05-07 | 1439 | 100.05815 | 0.0010943 | 11911.40 | 109.1394 |
tbats | dy.qt | 2018-05-08 | 1440 | 99.95677 | 0.0008266 | 11891.41 | 109.0477 |
tbats | dy.qt | 2018-05-09 | 1440 | 100.39503 | 0.0040954 | 12003.25 | 109.5593 |
tbats | dy.qt | 2018-05-10 | 1440 | 99.91385 | 0.0013584 | 12023.21 | 109.6504 |
tbats | dy.qt | 2018-05-11 | 1440 | 99.95859 | 0.0007073 | 11958.04 | 109.3528 |
tbats | dy.qt | 2018-05-12 | 1 | 99.98915 | 0.0001085 | 11965.30 | 109.3860 |
tbats | dy.qt | 2018-05-14 | 1439 | 100.07057 | 0.0011008 | 11982.15 | 109.4630 |
tbats | dy.qt | 2018-05-15 | 1440 | 100.30340 | 0.0030269 | 12099.12 | 109.9960 |
tbats | dy.qt | 2018-05-16 | 1440 | 99.89417 | 0.0010771 | 12151.15 | 110.2323 |
tbats | dy.qt | 2018-05-17 | 1440 | 100.12827 | 0.0020259 | 12218.46 | 110.5372 |
tbats | dy.qt | 2018-05-18 | 1440 | 100.07706 | 0.0011057 | 12287.92 | 110.8509 |
tbats | dy.qt | 2018-05-19 | 1 | 99.98849 | 0.0001151 | 12266.23 | 110.7530 |
tbats | dy.qt | 2018-05-21 | 1439 | 100.34661 | 0.0034591 | 12351.42 | 111.1370 |
tbats | dy.qt | 2018-05-22 | 1440 | 99.92007 | 0.0008712 | 12312.95 | 110.9638 |
tbats | dy.qt | 2018-05-23 | 1440 | 99.42938 | 0.0057324 | 12158.59 | 110.2660 |
tbats | dy.qt | 2018-05-24 | 1440 | 99.50292 | 0.0049858 | 11998.41 | 109.5372 |
tbats | dy.qt | 2018-05-25 | 1440 | 100.15295 | 0.0016273 | 11973.30 | 109.4226 |
tbats | dy.qt | 2018-05-26 | 1 | 100.12189 | 0.0012181 | 11965.73 | 109.3880 |
tbats | dy.qt | 2018-05-28 | 1439 | 100.05226 | 0.0008182 | 11978.37 | 109.4457 |
tbats | dy.qt | 2018-05-29 | 1440 | 99.53558 | 0.0046848 | 11861.43 | 108.9102 |
tbats | dy.qt | 2018-05-30 | 1440 | 99.98904 | 0.0013351 | 11827.26 | 108.7532 |
tbats | dy.qt | 2018-05-31 | 1440 | 99.84812 | 0.0015397 | 11824.88 | 108.7423 |
tbats | dy.qt | 2018-06-01 | 1440 | 100.38244 | 0.0038975 | 11932.57 | 109.2363 |
tbats | dy.qt | 2018-06-02 | 1 | 100.64259 | 0.0064053 | 11994.41 | 109.5190 |
tbats | dy.qt | 2018-06-04 | 1439 | 100.08215 | 0.0009623 | 12014.08 | 109.6088 |
tbats | dy.qt | 2018-06-05 | 1440 | 99.98085 | 0.0006843 | 12054.61 | 109.7935 |
tbats | dy.qt | 2018-06-06 | 1440 | 100.20111 | 0.0020087 | 12102.82 | 110.0128 |
tbats | dy.qt | 2018-06-07 | 1440 | 99.79255 | 0.0020849 | 12089.87 | 109.9539 |
tbats | dy.qt | 2018-06-08 | 1440 | 99.85521 | 0.0016502 | 11999.72 | 109.5433 |
tbats | dy.qt | 2018-06-09 | 1 | 99.84581 | 0.0015431 | 11997.37 | 109.5325 |
tbats | dy.qt | 2018-06-11 | 1439 | 100.26474 | 0.0030989 | 12060.77 | 109.8215 |
tbats | dy.qt | 2018-06-12 | 1440 | 100.22386 | 0.0022432 | 12161.63 | 110.2798 |
tbats | dy.qt | 2018-06-13 | 1440 | 100.13182 | 0.0013493 | 12214.51 | 110.5193 |
tbats | dy.qt | 2018-06-14 | 1440 | 99.91755 | 0.0017015 | 12155.51 | 110.2520 |
tbats | dy.qt | 2018-06-15 | 1440 | 99.98738 | 0.0007257 | 12236.36 | 110.6181 |
tbats | dy.qt | 2018-06-16 | 1 | 100.03011 | 0.0003011 | 12246.85 | 110.6655 |
tbats | dy.qt | 2018-06-18 | 1439 | 99.86125 | 0.0014167 | 12212.85 | 110.5118 |
tbats | dy.qt | 2018-06-19 | 1440 | 99.47098 | 0.0053126 | 12092.22 | 109.9646 |
tbats | dy.qt | 2018-06-20 | 1440 | 100.07670 | 0.0009136 | 12131.88 | 110.1448 |
tbats | dy.qt | 2018-06-21 | 1440 | 99.97949 | 0.0019765 | 12174.11 | 110.3364 |
tbats | dy.qt | 2018-06-22 | 1440 | 100.02423 | 0.0006664 | 12102.67 | 110.0121 |
tbats | dy.qt | 2018-06-23 | 1 | 100.00166 | 0.0000166 | 12097.14 | 109.9870 |
tbats | dy.qt | 2018-06-25 | 1439 | 99.64521 | 0.0035565 | 12011.46 | 109.5968 |
tbats | dy.qt | 2018-06-26 | 1440 | 99.97660 | 0.0016579 | 12042.42 | 109.7380 |
tbats | dy.qt | 2018-06-27 | 1440 | 100.03102 | 0.0016466 | 12115.29 | 110.0695 |
tbats | dy.qt | 2018-06-28 | 1440 | 100.02184 | 0.0008678 | 12163.27 | 110.2872 |
tbats | dy.qt | 2018-06-29 | 1440 | 100.14343 | 0.0015275 | 12244.61 | 110.6554 |
tbats | dy.qt | 2018-06-30 | 1 | 100.17288 | 0.0017273 | 12251.83 | 110.6880 |
tbats | dy.qt | 2018-07-02 | 1439 | 100.10272 | 0.0010478 | 12277.07 | 110.8019 |
tbats | dy.qt | 2018-07-03 | 1440 | 99.90854 | 0.0012706 | 12275.38 | 110.7943 |
tbats | dy.qt | 2018-07-04 | 1440 | 99.89757 | 0.0010279 | 12203.16 | 110.4679 |
tbats | dy.qt | 2018-07-05 | 1440 | 100.05275 | 0.0009822 | 12224.79 | 110.5658 |
tbats | dy.qt | 2018-07-06 | 1440 | 99.94812 | 0.0008016 | 12229.69 | 110.5879 |
tbats | dy.qt | 2018-07-07 | 1 | 99.83559 | 0.0016454 | 12202.18 | 110.4635 |
tbats | dy.yr | 2018-01-03 | 1439 | 99.68586 | 0.0031467 | 12617.14 | 112.3261 |
tbats | dy.yr | 2018-01-04 | 1440 | 99.99895 | 0.0007263 | 12696.52 | 112.6789 |
tbats | dy.yr | 2018-01-05 | 1440 | 100.33109 | 0.0033042 | 12781.03 | 113.0532 |
tbats | dy.yr | 2018-01-06 | 1 | 100.33901 | 0.0033844 | 12783.02 | 113.0620 |
tbats | dy.yr | 2018-01-08 | 1439 | 100.39391 | 0.0039311 | 12797.02 | 113.1239 |
tbats | dy.yr | 2018-01-09 | 1440 | 100.04867 | 0.0012931 | 12709.18 | 112.7350 |
tbats | dy.yr | 2018-01-10 | 1440 | 99.27259 | 0.0073400 | 12512.95 | 111.8613 |
tbats | dy.yr | 2018-01-11 | 1440 | 98.96225 | 0.0104334 | 12434.67 | 111.5109 |
tbats | dy.yr | 2018-01-12 | 1440 | 98.69954 | 0.0130904 | 12368.72 | 111.2147 |
tbats | dy.yr | 2018-01-13 | 1 | 98.52946 | 0.0148143 | 12326.11 | 111.0230 |
tbats | dy.yr | 2018-01-15 | 1439 | 98.22265 | 0.0179342 | 12249.50 | 110.6774 |
tbats | dy.yr | 2018-01-16 | 1440 | 98.24796 | 0.0176763 | 12255.80 | 110.7059 |
tbats | dy.yr | 2018-01-17 | 1440 | 98.26609 | 0.0174925 | 12260.34 | 110.7264 |
tbats | dy.yr | 2018-01-18 | 1440 | 98.67172 | 0.0133725 | 12361.75 | 111.1834 |
tbats | dy.yr | 2018-01-19 | 1440 | 98.30353 | 0.0171110 | 12269.67 | 110.7685 |
tbats | dy.yr | 2018-01-20 | 1 | 98.36262 | 0.0165090 | 12284.40 | 110.8350 |
tbats | dy.yr | 2018-01-22 | 1439 | 98.35525 | 0.0165846 | 12282.58 | 110.8268 |
tbats | dy.yr | 2018-01-23 | 1440 | 98.19844 | 0.0181820 | 12243.49 | 110.6503 |
tbats | dy.yr | 2018-01-24 | 1440 | 97.31119 | 0.0272614 | 12023.34 | 109.6510 |
tbats | dy.yr | 2018-01-25 | 1440 | 96.77278 | 0.0328036 | 11890.55 | 109.0438 |
tbats | dy.yr | 2018-01-26 | 1440 | 96.81623 | 0.0323591 | 11901.34 | 109.0932 |
tbats | dy.yr | 2018-01-27 | 1 | 96.40486 | 0.0366094 | 11800.26 | 108.6290 |
tbats | dy.yr | 2018-01-29 | 1439 | 96.60017 | 0.0345871 | 11848.14 | 108.8492 |
tbats | dy.yr | 2018-01-30 | 1440 | 96.53542 | 0.0352574 | 11832.26 | 108.7762 |
tbats | dy.yr | 2018-01-31 | 1440 | 96.66416 | 0.0339260 | 11863.86 | 108.9214 |
tbats | dy.yr | 2018-02-01 | 1440 | 97.11590 | 0.0292640 | 11974.99 | 109.4303 |
tbats | dy.yr | 2018-02-02 | 1440 | 97.50825 | 0.0252362 | 12072.03 | 109.8728 |
tbats | dy.yr | 2018-02-03 | 1 | 97.77600 | 0.0224901 | 12138.31 | 110.1740 |
tbats | dy.yr | 2018-02-05 | 1439 | 97.52750 | 0.0250364 | 12076.74 | 109.8942 |
tbats | dy.yr | 2018-02-06 | 1440 | 96.83864 | 0.0321241 | 11906.76 | 109.1181 |
tbats | dy.yr | 2018-02-07 | 1440 | 97.01853 | 0.0302673 | 11951.00 | 109.3206 |
tbats | dy.yr | 2018-02-08 | 1440 | 97.04430 | 0.0300045 | 11957.42 | 109.3500 |
tbats | dy.yr | 2018-02-09 | 1440 | 96.59248 | 0.0346683 | 11846.29 | 108.8407 |
tbats | dy.yr | 2018-02-10 | 1 | 96.55307 | 0.0350738 | 11836.57 | 108.7960 |
tbats | dy.yr | 2018-02-12 | 1439 | 96.44488 | 0.0361948 | 11810.06 | 108.6741 |
tbats | dy.yr | 2018-02-13 | 1440 | 95.84988 | 0.0423895 | 11665.00 | 108.0046 |
tbats | dy.yr | 2018-02-14 | 1440 | 95.21545 | 0.0490216 | 11510.96 | 107.2892 |
tbats | dy.yr | 2018-02-15 | 1440 | 94.51717 | 0.0563755 | 11342.71 | 106.5021 |
tbats | dy.yr | 2018-02-16 | 1440 | 94.14929 | 0.0602717 | 11254.57 | 106.0876 |
tbats | dy.yr | 2018-02-17 | 1 | 94.34327 | 0.0582138 | 11300.97 | 106.3060 |
tbats | dy.yr | 2018-02-19 | 1439 | 94.49234 | 0.0566373 | 11336.73 | 106.4741 |
tbats | dy.yr | 2018-02-20 | 1440 | 94.96731 | 0.0516282 | 11451.01 | 107.0094 |
tbats | dy.yr | 2018-02-21 | 1440 | 95.48977 | 0.0461438 | 11577.32 | 107.5980 |
tbats | dy.yr | 2018-02-22 | 1440 | 95.13313 | 0.0498868 | 11491.09 | 107.1965 |
tbats | dy.yr | 2018-02-23 | 1440 | 94.79322 | 0.0534602 | 11409.03 | 106.8131 |
tbats | dy.yr | 2018-02-24 | 1 | 94.86244 | 0.0527301 | 11425.69 | 106.8910 |
tbats | dy.yr | 2018-02-26 | 1439 | 94.76703 | 0.0537373 | 11402.75 | 106.7837 |
tbats | dy.yr | 2018-02-27 | 1440 | 95.04278 | 0.0508339 | 11469.21 | 107.0944 |
tbats | dy.yr | 2018-02-28 | 1440 | 94.99853 | 0.0512998 | 11458.55 | 107.0446 |
tbats | dy.yr | 2018-03-01 | 1440 | 94.71199 | 0.0543178 | 11389.51 | 106.7217 |
tbats | dy.yr | 2018-03-02 | 1440 | 93.85861 | 0.0633632 | 11185.24 | 105.7603 |
tbats | dy.yr | 2018-03-03 | 1 | 93.82854 | 0.0636796 | 11177.99 | 105.7260 |
tbats | dy.yr | 2018-03-05 | 1439 | 93.81607 | 0.0638152 | 11175.08 | 105.7123 |
tbats | dy.yr | 2018-03-06 | 1440 | 94.23648 | 0.0593462 | 11275.41 | 106.1858 |
tbats | dy.yr | 2018-03-07 | 1440 | 93.88564 | 0.0630732 | 11191.63 | 105.7905 |
tbats | dy.yr | 2018-03-08 | 1440 | 94.16030 | 0.0601537 | 11257.18 | 106.0998 |
tbats | dy.yr | 2018-03-09 | 1440 | 94.71853 | 0.0542485 | 11391.07 | 106.7290 |
tbats | dy.yr | 2018-03-10 | 1 | 94.80698 | 0.0533146 | 11412.33 | 106.8285 |
tbats | dy.yr | 2018-03-12 | 1439 | 94.60420 | 0.0554551 | 11363.59 | 106.6001 |
tbats | dy.yr | 2018-03-13 | 1440 | 94.69656 | 0.0544823 | 11385.84 | 106.7044 |
tbats | dy.yr | 2018-03-14 | 1440 | 94.47241 | 0.0568478 | 11331.94 | 106.4516 |
tbats | dy.yr | 2018-03-15 | 1440 | 94.13614 | 0.0604106 | 11251.42 | 106.0727 |
tbats | dy.yr | 2018-03-16 | 1440 | 94.06334 | 0.0611845 | 11234.04 | 105.9908 |
tbats | dy.yr | 2018-03-17 | 1 | 94.05618 | 0.0612588 | 11232.29 | 105.9825 |
tbats | dy.yr | 2018-03-19 | 1439 | 94.03056 | 0.0615318 | 11226.19 | 105.9537 |
tbats | dy.yr | 2018-03-20 | 1440 | 94.35346 | 0.0581070 | 11303.43 | 106.3176 |
tbats | dy.yr | 2018-03-21 | 1440 | 94.38374 | 0.0577863 | 11310.68 | 106.3517 |
tbats | dy.yr | 2018-03-22 | 1440 | 93.79186 | 0.0640717 | 11169.29 | 105.6848 |
tbats | dy.yr | 2018-03-23 | 1440 | 93.13497 | 0.0710915 | 11013.37 | 104.9446 |
tbats | dy.yr | 2018-03-24 | 1 | 92.94995 | 0.0730765 | 10969.63 | 104.7360 |
tbats | dy.yr | 2018-03-26 | 1439 | 93.21499 | 0.0702341 | 11032.31 | 105.0348 |
tbats | dy.yr | 2018-03-27 | 1440 | 93.72770 | 0.0647543 | 11153.99 | 105.6124 |
tbats | dy.yr | 2018-03-28 | 1440 | 93.99928 | 0.0618740 | 11218.95 | 105.9196 |
tbats | dy.yr | 2018-03-29 | 1440 | 94.57484 | 0.0557653 | 11356.53 | 106.5670 |
tbats | dy.yr | 2018-03-30 | 1440 | 94.30258 | 0.0586453 | 11291.23 | 106.2602 |
tbats | dy.yr | 2018-03-31 | 1 | 94.32597 | 0.0583971 | 11296.82 | 106.2865 |
tbats | dy.yr | 2018-04-02 | 1439 | 94.26654 | 0.0590282 | 11282.62 | 106.2197 |
tbats | dy.yr | 2018-04-03 | 1440 | 94.21706 | 0.0595547 | 11270.83 | 106.1641 |
tbats | dy.yr | 2018-04-04 | 1440 | 94.48582 | 0.0567069 | 11335.18 | 106.4668 |
tbats | dy.yr | 2018-04-05 | 1440 | 95.03004 | 0.0509684 | 11466.15 | 107.0801 |
tbats | dy.yr | 2018-04-06 | 1440 | 95.13907 | 0.0498215 | 11492.45 | 107.2028 |
tbats | dy.yr | 2018-04-07 | 1 | 94.90415 | 0.0522908 | 11435.74 | 106.9380 |
tbats | dy.yr | 2018-04-09 | 1439 | 94.94345 | 0.0518776 | 11445.22 | 106.9823 |
tbats | dy.yr | 2018-04-10 | 1440 | 94.99533 | 0.0513325 | 11457.75 | 107.0409 |
tbats | dy.yr | 2018-04-11 | 1440 | 94.94205 | 0.0518926 | 11444.89 | 106.9808 |
tbats | dy.yr | 2018-04-12 | 1440 | 94.99019 | 0.0513869 | 11456.52 | 107.0351 |
tbats | dy.yr | 2018-04-13 | 1440 | 95.37779 | 0.0473164 | 11550.18 | 107.4718 |
tbats | dy.yr | 2018-04-14 | 1 | 95.27467 | 0.0483967 | 11525.20 | 107.3555 |
tbats | dy.yr | 2018-04-16 | 1439 | 95.19887 | 0.0491929 | 11506.89 | 107.2702 |
tbats | dy.yr | 2018-04-17 | 1440 | 95.00464 | 0.0512334 | 11459.97 | 107.0513 |
tbats | dy.yr | 2018-04-18 | 1440 | 95.15786 | 0.0496232 | 11496.97 | 107.2239 |
tbats | dy.yr | 2018-04-19 | 1440 | 95.28609 | 0.0482772 | 11527.97 | 107.3684 |
tbats | dy.yr | 2018-04-20 | 1440 | 95.48061 | 0.0462391 | 11575.09 | 107.5876 |
tbats | dy.yr | 2018-04-21 | 1 | 95.52893 | 0.0457331 | 11586.80 | 107.6420 |
tbats | dy.yr | 2018-04-23 | 1439 | 95.96268 | 0.0412102 | 11692.38 | 108.1313 |
tbats | dy.yr | 2018-04-24 | 1440 | 96.57811 | 0.0348152 | 11842.73 | 108.8243 |
tbats | dy.yr | 2018-04-25 | 1440 | 96.83137 | 0.0321978 | 11904.94 | 109.1097 |
tbats | dy.yr | 2018-04-26 | 1440 | 97.01456 | 0.0303070 | 11950.00 | 109.3160 |
tbats | dy.yr | 2018-04-27 | 1440 | 96.94119 | 0.0310636 | 11931.93 | 109.2334 |
tbats | dy.yr | 2018-04-28 | 1 | 96.78559 | 0.0326692 | 11893.65 | 109.0580 |
tbats | dy.yr | 2018-04-30 | 1439 | 96.93021 | 0.0311769 | 11929.23 | 109.2210 |
tbats | dy.yr | 2018-05-01 | 1440 | 97.20358 | 0.0283622 | 11996.63 | 109.5292 |
tbats | dy.yr | 2018-05-02 | 1440 | 97.46080 | 0.0257187 | 12060.18 | 109.8189 |
tbats | dy.yr | 2018-05-03 | 1440 | 97.16471 | 0.0287634 | 11987.07 | 109.4855 |
tbats | dy.yr | 2018-05-04 | 1440 | 96.80787 | 0.0324394 | 11899.13 | 109.0831 |
tbats | dy.yr | 2018-05-05 | 1 | 96.80201 | 0.0324996 | 11897.68 | 109.0765 |
tbats | dy.yr | 2018-05-07 | 1439 | 96.85772 | 0.0319251 | 11911.40 | 109.1394 |
tbats | dy.yr | 2018-05-08 | 1440 | 96.77645 | 0.0327640 | 11891.41 | 109.0477 |
tbats | dy.yr | 2018-05-09 | 1440 | 97.23029 | 0.0280882 | 12003.25 | 109.5593 |
tbats | dy.yr | 2018-05-10 | 1440 | 97.31121 | 0.0272554 | 12023.21 | 109.6504 |
tbats | dy.yr | 2018-05-11 | 1440 | 97.04722 | 0.0299706 | 11958.04 | 109.3528 |
tbats | dy.yr | 2018-05-12 | 1 | 97.07668 | 0.0296669 | 11965.30 | 109.3860 |
tbats | dy.yr | 2018-05-14 | 1439 | 97.14498 | 0.0289643 | 11982.15 | 109.4630 |
tbats | dy.yr | 2018-05-15 | 1440 | 97.61779 | 0.0241119 | 12099.12 | 109.9960 |
tbats | dy.yr | 2018-05-16 | 1440 | 97.82769 | 0.0219618 | 12151.15 | 110.2323 |
tbats | dy.yr | 2018-05-17 | 1440 | 98.09812 | 0.0192032 | 12218.46 | 110.5372 |
tbats | dy.yr | 2018-05-18 | 1440 | 98.37668 | 0.0163665 | 12287.92 | 110.8509 |
tbats | dy.yr | 2018-05-19 | 1 | 98.28985 | 0.0172490 | 12266.23 | 110.7530 |
tbats | dy.yr | 2018-05-21 | 1439 | 98.63051 | 0.0137903 | 12351.42 | 111.1370 |
tbats | dy.yr | 2018-05-22 | 1440 | 98.47687 | 0.0153483 | 12312.95 | 110.9638 |
tbats | dy.yr | 2018-05-23 | 1440 | 97.85710 | 0.0216665 | 12158.59 | 110.2660 |
tbats | dy.yr | 2018-05-24 | 1440 | 97.21066 | 0.0282903 | 11998.41 | 109.5372 |
tbats | dy.yr | 2018-05-25 | 1440 | 97.10908 | 0.0293338 | 11973.30 | 109.4226 |
tbats | dy.yr | 2018-05-26 | 1 | 97.07845 | 0.0296486 | 11965.73 | 109.3880 |
tbats | dy.yr | 2018-05-28 | 1439 | 97.12962 | 0.0291224 | 11978.37 | 109.4457 |
tbats | dy.yr | 2018-05-29 | 1440 | 96.65409 | 0.0340318 | 11861.43 | 108.9102 |
tbats | dy.yr | 2018-05-30 | 1440 | 96.51500 | 0.0354691 | 11827.26 | 108.7532 |
tbats | dy.yr | 2018-05-31 | 1440 | 96.50533 | 0.0355687 | 11824.88 | 108.7423 |
tbats | dy.yr | 2018-06-01 | 1440 | 96.94354 | 0.0310420 | 11932.57 | 109.2363 |
tbats | dy.yr | 2018-06-02 | 1 | 97.19471 | 0.0284520 | 11994.41 | 109.5190 |
tbats | dy.yr | 2018-06-04 | 1439 | 97.27435 | 0.0276335 | 12014.08 | 109.6088 |
tbats | dy.yr | 2018-06-05 | 1440 | 97.43829 | 0.0259498 | 12054.61 | 109.7935 |
tbats | dy.yr | 2018-06-06 | 1440 | 97.63291 | 0.0239552 | 12102.82 | 110.0128 |
tbats | dy.yr | 2018-06-07 | 1440 | 97.58061 | 0.0244910 | 12089.87 | 109.9539 |
tbats | dy.yr | 2018-06-08 | 1440 | 97.21614 | 0.0282325 | 11999.72 | 109.5433 |
tbats | dy.yr | 2018-06-09 | 1 | 97.20669 | 0.0283287 | 11997.37 | 109.5325 |
tbats | dy.yr | 2018-06-11 | 1439 | 97.46295 | 0.0256989 | 12060.77 | 109.8215 |
tbats | dy.yr | 2018-06-12 | 1440 | 97.86983 | 0.0215314 | 12161.63 | 110.2798 |
tbats | dy.yr | 2018-06-13 | 1440 | 98.08238 | 0.0193623 | 12214.51 | 110.5193 |
tbats | dy.yr | 2018-06-14 | 1440 | 97.84510 | 0.0217855 | 12155.51 | 110.2520 |
tbats | dy.yr | 2018-06-15 | 1440 | 98.17006 | 0.0184688 | 12236.36 | 110.6181 |
tbats | dy.yr | 2018-06-16 | 1 | 98.21219 | 0.0180393 | 12246.85 | 110.6655 |
tbats | dy.yr | 2018-06-18 | 1439 | 98.07575 | 0.0194297 | 12212.85 | 110.5118 |
tbats | dy.yr | 2018-06-19 | 1440 | 97.58994 | 0.0243970 | 12092.22 | 109.9646 |
tbats | dy.yr | 2018-06-20 | 1440 | 97.75005 | 0.0227559 | 12131.88 | 110.1448 |
tbats | dy.yr | 2018-06-21 | 1440 | 97.91982 | 0.0210232 | 12174.11 | 110.3364 |
tbats | dy.yr | 2018-06-22 | 1440 | 97.63231 | 0.0239609 | 12102.67 | 110.0121 |
tbats | dy.yr | 2018-06-23 | 1 | 97.61005 | 0.0241886 | 12097.14 | 109.9870 |
tbats | dy.yr | 2018-06-25 | 1439 | 97.26368 | 0.0277437 | 12011.46 | 109.5968 |
tbats | dy.yr | 2018-06-26 | 1440 | 97.38885 | 0.0264588 | 12042.42 | 109.7380 |
tbats | dy.yr | 2018-06-27 | 1440 | 97.68307 | 0.0234426 | 12115.29 | 110.0695 |
tbats | dy.yr | 2018-06-28 | 1440 | 97.87640 | 0.0214646 | 12163.27 | 110.2872 |
tbats | dy.yr | 2018-06-29 | 1440 | 98.20314 | 0.0181321 | 12244.61 | 110.6554 |
tbats | dy.yr | 2018-06-30 | 1 | 98.23216 | 0.0178360 | 12251.83 | 110.6880 |
tbats | dy.yr | 2018-07-02 | 1439 | 98.33324 | 0.0168080 | 12277.07 | 110.8019 |
tbats | dy.yr | 2018-07-03 | 1440 | 98.32642 | 0.0168780 | 12275.38 | 110.7943 |
tbats | dy.yr | 2018-07-04 | 1440 | 98.03684 | 0.0198264 | 12203.16 | 110.4679 |
tbats | dy.yr | 2018-07-05 | 1440 | 100.05086 | 0.0009929 | 12224.79 | 110.5658 |
tbats | dy.yr | 2018-07-06 | 1440 | 99.94904 | 0.0007990 | 12229.69 | 110.5879 |
tbats | dy.yr | 2018-07-07 | 1 | 99.83652 | 0.0016361 | 12202.18 | 110.4635 |
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p1 <- yr_2018 %>%
ggplot(aes(x = index, y = open, group = Model, color = Model)) +
geom_line() +
#scale_colour_gradient2_tableau(palette = names(palettes)[1]) + #first palettes list in name
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Open Price Forecasting',
subtitle = paste('From', range(unique(yr_2018$index))[1L], 'to', range(unique(yr_2018$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
##scale_fill_manual(values = tableau_colours) +
#scale_color_brewer(tableau_colours) +
#scale_color_jcolors(palette = palettes2$`Tableau 20`$value) + #choose color set among palettes
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
## Due to heavily loading in plotly graph, here I use ggplot.
#ply1 <- ggplotly(p1)
#ply1
p1
rm(p1)
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p2 <- yr_2018 %>%
ggplot(aes(x = index, y = high, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min High Price Forecasting',
subtitle = paste('From', range(unique(yr_2018$index))[1L], 'to', range(unique(yr_2018$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
## Due to heavily loading in plotly graph, here I use ggplot.
#ply2 <- ggplotly(p2)
#ply2
p2
rm(p2)
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p3 <- yr_2018 %>%
ggplot(aes(x = index, y = low, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Low Price Forecasting',
subtitle = paste('From', range(unique(yr_2018$index))[1], 'to', range(unique(yr_2018$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
## Due to heavily loading in plotly graph, here I use ggplot.
#ply3 <- ggplotly(p3)
#ply3
p3
rm(p3)
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p4 <- yr_2018 %>%
ggplot(aes(x = index, y = close, group = Model, color = Model)) +
geom_line() +
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Close Price Forecasting',
subtitle = paste('From', range(unique(yr_2018$index))[1], 'to', range(unique(yr_2018$index))[2]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'right')
## Due to heavily loading in plotly graph, here I use ggplot.
#ply4 <- ggplotly(p4)
#ply4
p4
## https://www.r-graph-gallery.com/line-chart-several-groups-ggplot2.html
p5 <- mDT %>%
ggplot(aes(x = index, y = Price, group = Model, color = Model)) +
geom_line() +
#scale_colour_gradient2_tableau(palette = names(palettes)[1]) + #first palettes list in name
#scale_color_viridis(discrete = TRUE) +
labs(title = '1 min Open Price Forecasting',
subtitle = paste('From', range(unique(mDT$index))[1L], 'to', range(unique(mDT$index))[2L]),
caption = "Data source: fxcm") +
ylab('Exchange Rates USD/JPY') +
theme_economist() +
#scale_color_economist() +
##scale_fill_manual(values = tableau_colours) +
#scale_color_brewer(tableau_colours) +
#scale_color_jcolors(palette = palettes2$`Tableau 20`$value) + #choose color set among palettes
#theme(axis.text.x = element_text(hjust = c(0, 0.5, 0.5, 0.5, 1))) +
theme(legend.position = 'bottom')
## Due to heavily loading in plotly graph, here I use ggplot.
#ply5 <- ggplotly(p5)
#ply5
p5
## rbokeh package
## https://www.htmlwidgets.org/showcase_rbokeh.html
## https://hafen.github.io/rbokeh/articles/rbokeh.html
figure(legend_location = 'top_left') %>%
ly_lines(Price, group = Model, data = mDT,
color = Model, hover = Price)
Kindly refer to Traceback-HFT.R
for more information. Here I tried to recalculate dataset from year 2018-01-01
to 2018-07-09
but the outcome is same. Here I forced to omit the mentioned dataset.
## ------------ eval = FALSE -------------------
## Due to high volume dataset and heavily ploting, here I ommit it.
yr_2018 %>%
group_by(Model) %>%
e_charts(x = index) %>%
e_line(open.Point.Forecast, smooth = TRUE) %>%
e_datazoom(
type = 'slider',
toolbox = FALSE,
bottom = -5) %>%
e_tooltip() %>%
e_title(text = 'Model', subtext = 'open.Point.Forecast', left = 'center') %>%
e_axis_labels(x = 'index', y = 'open.Point.Forecast') %>%
e_x_axis(index, axisPointer = list(show = TRUE)) %>%
e_legend(
orient = 'vertical',
type = c('scroll'),
#selectedMode = 'multiple', #https://echarts.apache.org/en/option.html#legend
#selected = list('Model'),
left = 0, top = 80) %>%
e_grid(left = 150, top = 90) %>%
#e_theme('shine') %>%
e_toolbox_feature('saveAsImage', title = 'Screenshot')
It’s useful to record some information about how your file was created.
suppressMessages(require('dplyr', quietly = TRUE))
suppressMessages(require('magrittr', quietly = TRUE))
suppressMessages(require('formattable', quietly = TRUE))
suppressMessages(require('knitr', quietly = TRUE))
suppressMessages(require('kableExtra', quietly = TRUE))
sys1 <- devtools::session_info()$platform %>%
unlist %>% data.frame(Category = names(.), session_info = .)
rownames(sys1) <- NULL
sys2 <- data.frame(Sys.info()) %>%
dplyr::mutate(Category = rownames(.)) %>% .[2:1]
names(sys2)[2] <- c('Sys.info')
rownames(sys2) <- NULL
if (nrow(sys1) == 9 & nrow(sys2) == 8) {
sys2 %<>% rbind(., data.frame(
Category = 'Current time',
Sys.info = paste(as.character(lubridate::now('Asia/Tokyo')), 'JST🗾')))
} else {
sys1 %<>% rbind(., data.frame(
Category = 'Current time',
session_info = paste(as.character(lubridate::now('Asia/Tokyo')), 'JST🗾')))
}
sys <- cbind(sys1, sys2) %>%
kbl(caption = 'Additional session information:') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive')) %>%
row_spec(0, background = 'DimGrey') %>%
column_spec(1, background = 'CornflowerBlue') %>%
column_spec(2, background = 'DarkGrey') %>%
#column_spec(3, background = 'LightSlateGrey') %>%
column_spec(3, background = 'CornflowerBlue') %>%
column_spec(4, background = 'DarkGrey') %>%
row_spec(9, bold = T, color = 'white', background = '#D7261E')
rm(sys1, sys2)
sys
Category | session_info | Category | Sys.info |
---|---|---|---|
version | R version 4.0.3 (2020-10-10) | sysname | Windows |
os | Windows 10 x64 | release | 10 x64 |
system | x86_64, mingw32 | version | build 19042 |
ui | RTerm | nodename | SCIBROKES-TRADI |
language | en | machine | x86-64 |
collate | English_World.1252 | login | Owner |
ctype | English_World.1252 | user | Owner |
tz | Asia/Tokyo | effective_user | Owner |
date | 2021-01-26 | Current time | 2021-01-26 02:30:11 JST<U+0001F5FE> |
midasr
package: Inclusion of new high-frequency valuePowered by - Copyright® Intellectual Property Rights of Sςιβrοκεrs Trαdιηg®️経営企業
For buying order, we need to refer to ask
price and selling order need to refer to bid
price.↩︎
Seasonal periods describe very details on the seasonal period
parameters determination.↩︎
help of auto.arima()
describe the seasonal : If FALSE, restricts search to non-seasonal models.
↩︎