introd u cing time based q u eries
play

Introd u cing time based q u eries MAN IP U L ATIN G TIME SE R IE - PowerPoint PPT Presentation

Introd u cing time based q u eries MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R Je re y R y an Creator of x ts and q u antmod ISO 8601:2004 International standard for date and time Le to right from most to least signi


  1. Introd u cing time based q u eries MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R Je � re y R y an Creator of x ts and q u antmod

  2. ISO 8601:2004 International standard for date and time Le � to right from most to least signi � cant digit “ YYYY - MM - DDTHH : MM : SS ” format "2014" OK "02" MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  3. x ts s u pport of ISO 8601:2004 One and t w o sided inter v als "2004" & "2001/2015" Tr u ncated representation "201402/03" Time s u pport "2014-02-22 08:30:00" Repeating inter v als " T 08:00/ T 09:00" MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  4. One & t w o sided inter v als # Load fund data data(edhec, package = "PerformanceAnalytics") head(edhec["2007-01", 1]) Convertible Arbitrage 2007-01-31 0.013 head(edhec["2007-01/2007-03", 1]) Convertible Arbitrage 2007-01-31 0.0130 2007-02-28 0.0117 2007-03-31 0.0060 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  5. Tr u ncated dates # January 2007 to March head(edhec["200701/03", 1]) Convertible Arbitrage 2007-01-31 0.0130 2007-02-28 0.0117 2007-03-31 0.0060 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  6. Time s u pport # YYYYMMDDTHHMM formatiday["20160808T2213"] [,1] 2016-08-08 22:13:02 8.56 2016-08-08 22:13:25 7.71 2016-08-08 22:13:41 8.40 2016-08-08 22:13:55 7.94 2016-08-08 22:13:59 9.29 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  7. Repeating intrada y inter v als iday["T05:30/T06:30"] [,1] 2016-08-12 05:30:31 12.47 2016-08-16 06:07:54 10.49 2016-08-16 06:10:03 8.94 2016-08-17 06:18:08 9.29 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  8. Let ' s practice ! MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R

  9. Alternati v e e x traction techniq u es MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R Je � re y R y an Creator of x ts and q u antmod

  10. Ro w selection w ith time Integer inde x ing x[c(1, 2, 3), ] Logical v ectors x[index(x) > "2016-08-20"] Date objects ( Date , POSIXct , etc .) dates <- as.POSIXct(c("2016-06-25", "2016-06-27")) x[dates] MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  11. Modif y ing time series Same � e x ibilit y as s u bse � ing ISO 8601, integers , logicals , and date objects which.i = TRUE creates an integer v ector corresponding to times index <- x["2007-06-26/2007-06-28", which.i = TRUE] index 2 3 4 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  12. Ke y beha v iors All s u bsets preser v e matri x ( drop = FALSE ) Order is preser v ed Binar y search and memcp y are faster than base R ! inde x and x ts a � rib u tes are preser v ed MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  13. Let ' s practice ! MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R

  14. Methods to find periods in y o u r data MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R Je � re y R y an Creator of x ts and q u antmod

  15. Finding times of interest R u ses head() and tail() to look at the start or end of a series x ts implements 2 similar f u nctions w ith respect to time Uses a � e x ible notion of time i . e . “ last 3 da y s ” or “� rst 6 w eeks ” These are the first() and last() f u nctions MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  16. first () and last () last(edhec[, "Funds of Funds"], first(edhec[, "Funds of Funds"], "1 year") "4 months") Funds of Funds Funds of Funds 2009-01-31 0.0060 1997-01-31 0.0317 2009-02-28 -0.0037 1997-02-28 0.0106 2009-03-31 0.0008 1997-03-31 -0.0077 2009-04-30 0.0092 1997-04-30 0.0009 2009-05-31 0.0312 2009-06-30 0.0024 2009-07-31 0.0153 2009-08-31 0.0113 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  17. first () and last () n can also be an integer n = 10 , n = 2 , etc . n = "6 hours" n = "-6 months" first(x, n = 1, keep = FALSE) last(x, n = 1, keep = FALSE) MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  18. Combine f u nction calls first() and last() can be nested for internal inter v als Used to � nd start or end periods w ithin others first(last(edhec[, "Merger Arbitrage"], "2 years"), "5 months") Merger Arbitrage 2008-01-31 -0.0126 2008-02-29 0.0060 2008-03-31 -0.0045 2008-04-30 0.0149 2008-05-31 0.0136 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  19. Let ' s practice ! MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R

  20. Math operations u sing x ts MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R Je � re y R y an Creator of x ts and q u antmod

  21. Ke y feat u res x ts is nat u rall y a matri x Math operations are on the intersection of times Onl y these intersections w ill be u sed Sometimes it is necessar y to drop the x ts class arg u ment drop = TRUE , coredata() , or as.numeric() Special handling req u ired for u nion of dates MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  22. O u t of the bo x ops (+, -, *, /) x y x y 2016-08-09 1 2016-08-09 2 2016-08-10 1 2016-08-10 2 2016-08-11 1 2016-08-12 2 # Intersection of dates x + y x 2016-08-09 3 2016-08-10 3 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  23. Operations on the u nion It ma y be necessar y to u se all obser v ations Co v ered in detail ne x t chapter x_union <- merge(x, index(y), fill = 0) y_union <- merge(y, index(x), fill = 0) x_union + y_union x 2016-08-09 3 2016-08-10 3 2016-08-11 1 2016-08-12 2 MANIPULATING TIME SERIES DATA WITH XTS AND ZOO IN R

  24. Let ' s practice ! MAN IP U L ATIN G TIME SE R IE S DATA W ITH XTS AN D ZOO IN R

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend