Subscribe to R bloggers feed R bloggers
R news and tutorials contributed by (750) R bloggers
Updated: 1 hour 59 min ago

I walk the (train) line – part deux – the weight loss continues

Sat, 01/12/2019 - 14:00

(This article was first published on Embracing the Random, and kindly contributed to R-bloggers)

(TL;DR: author continues to use his undiagnosed OCD for good. Breath-first search introduced on simple graph.)

We learnt how to get OpenStreetMap data into R last time. And I said that we will be doing a little bit of this:

So what the hell is this?

This is an example of breadth-first search of a graph. We will be using it to answer this question:

Does a path exists between our source node and our destination node?

A little bit of background

To understand breadth-first search, we first need to understand:

  • the concept of adjacent nodes in graphs,
  • the adjacency list representation of a graph,
  • the queue data structure.

I will systematically attack these as usual.

What does adjacent mean?

Here is our undirected graph from part one of this multi-part epic with one change – I have given the nodes ID numbers from 0 to 4, inclusive:

Given a particular node, a node that is adjacent to this node is another node that is connected to it by an edge. For example, node ‘0’ is connected to node ‘1’ and node ‘2’ by an edge. So we can say that node ‘1’ and node ‘2’ are adjacent to node ‘0’. Because this is an undirected graph, this relationship is symmetric – node ‘0’ is adjacent to node ‘1’ and node ‘2’.

We can apply this concept to our graph of roads. Here, we arbitrarily pick a starting node (the green one), and progressively highlight the next adjacent nodes in the direction away from the starting node. Each node is coloured differently by the smallest number of edges it takes to reach it from our starting node:

  • Red = 1 edge
  • Blue = 2 edges
  • Orange = 3 edges
  • Purple = 4 edges
  • Pink = 5 edges

‘Define adjacent’ – check.

What is an adjacency list represenation of a graph?

An adjacency list is a data structure that can be used to answer this question:

Given all the nodes in our graph, which nodes are they adjacent to?

We will simply create a list of vectors data structure in R. We will firstly create a list of unique node IDs. Then for each node ID in our list, we will create a vector of nodes adjacent to those node IDs. The adjacency list is shown in the table to the right in the below image:

‘Define adjaceny lists’ – check.

Queues!

This one is slightly more complex. The analogy that is often used is that of a bus stop. Here is that analogy, illustrated with an icon from the Noun Project and some old, old memes.

This, ladies and gentlemen, is a bus stop:

In order to get trolling first thing in the morning, Trollface shows up first. He joins the queue (i.e. is enqueued):

Good girl wants to go for an early walk, so Doge shows up second. She joins the queue from the back (i.e. is enqueued from the back):

Nicolas Cage meme shows up late to the party, so he joins the queue in last place (i.e. is enqueued from the back):

In what order are they going to get onto the bus? Assuming that everyone respects the unwritten rules of the queue, Trollface will leave the queue first (i.e. is dequeued first). Then Doge. Then Nic:

How is this relevant to graphs?

My claim is that, if we replace these old memes with graph nodes, the queue data structure and our adjacency list can be used to perform a breath-first search of our graph. This breadth-first search will show us whether a path exists from our source node to our destination node. We will finally get to this later on in this post (I promise!).

But first, let’s work on this ridiculous queue example to see how we can use queues in R.

rstackdeque

We will be using the lightning fast rstackdeque package instead of creating our queue data structure from scratch. The elements of the queue are individual environments, containing some data and a reference to the next environment (see here for more juicy details).

library(rstackdeque)

Let’s create an empty queue:

bus_stop_q <- rpqueue() print(bus_stop_q) ## A queue with 0 elements.

Let’s insert Trollface and Doge:

bus_stop_q <- insert_back(bus_stop_q, 'trollface') bus_stop_q <- insert_back(bus_stop_q, 'doge') print(bus_stop_q) ## A queue with 2 elements. ## Front: ## $: chr "trollface" ## $: chr "doge"

‘trollface’ is at the front, and ‘doge’ is at the back of our queue. Success!

Inserting Nicolas Cage meme, we get:

bus_stop_q <- insert_back(bus_stop_q, 'nicolas_cage') print(bus_stop_q) ## A queue with 3 elements. ## Front: ## $: chr "trollface" ## $: chr "doge" ## $: chr "nicolas_cage"

Hooray!

Now for dequeueing. When we dequeue, we want to keep track of two things:

  • the element that was deqeued from the front (i.e. which meme was dequeued from the front?), and
  • the queue with the front-most element removed (i.e. the state of the bus stop after dequeueing)

We have to do this in two steps. Firstly, keeping track of the dequeued element:

dequeued <- peek_front(bus_stop_q) print(dequeued) ## [1] "trollface"

Then, the queue without the dequeued element:

bus_stop_q <- without_front(bus_stop_q) print(bus_stop_q) ## A queue with 2 elements. ## Front: ## $: chr "doge" ## $: chr "nicolas_cage"

Easy! We can keep dequeueing until the queue is empty. We can use the empty() function to define this terminating condition.

empty(bus_stop_q) ## [1] FALSE

Let’s process the remaining elements of the queue until it’s empty:

while (!empty(bus_stop_q)) { dequeued <- peek_front(bus_stop_q) print(dequeued) bus_stop_q <- without_front(bus_stop_q) } ## [1] "doge" ## [1] "nicolas_cage"

Done!

Adjacency lists in R

Instead of using a package, let’s write these from scratch. Let’s use our undirected graph to take us away from our old memes and into the wonderful world of graphs. Here is our graph again:

Let’s create our outer list. We should have an element for every node in our graph.

Note: In hindsight, I shouldn’t have zero-indexed the node numbers! But I am in too deep so will have to work around my mistake.

adjacency_list <- rep(list(NULL), 5) names(adjacency_list) <- c('0', '1', '2', '3', '4')

For every node, we will painstakingly create a vector containing the nodes adjacent to the respective node:

adjacency_list[['0']] <- c('1', '2') adjacency_list[['1']] <- c('0', '3', '4') adjacency_list[['2']] <- '0' adjacency_list[['3']] <- c('1', '4') adjacency_list[['4']] <- c('1', '3')

Here is our adjacency list:

print(adjacency_list) ## $`0` ## [1] "1" "2" ## ## $`1` ## [1] "0" "3" "4" ## ## $`2` ## [1] "0" ## ## $`3` ## [1] "1" "4" ## ## $`4` ## [1] "1" "3"

You are now ready for the breath-first search algorithm.

Breadth-first search…finally!

So what is this breadth-first search?

When performing breadth-first search, we start with a source node. We visit every child of the source node. Then for every child of the source node, we visit every one of their children. We continue this process of visiting nodes at the same level of the graph until some condition is met (for example, we have reached our destination node). That’s why it looks like nodes are being visited in concentric circles about the green node (i.e. source node), moving broader before moving deper into the graph in the initial gif:

Let’s apply this to our undirected graph. Our breadth-first search toolbox contains these things:

  • our adjacency list representation of our graph,
  • a source node,
  • a destination node,
  • our queue data structure, and
  • a vector keeping track of which nodes we have already visited and from which nodes we came from when we visited them (bare with me here)
What is this vector of visited nodes?

The vector in the last point is used to avoid going in cycles as we visit nodes in our graph. For example, we start at node ‘0’. Node ‘0’ is adjacent to node ‘1’. Later on in our breadth-first search, there will come a time when we need to process the nodes adjacent to node ‘1’. When this happens, we want to avoid processing node ‘0’ again as we have already visited it. Otherwise, we will enter an infinite loop whereby we visit node ‘0’, which is adjacent to node ‘1’, which is adjacent to node ‘0’ and so on.

A little detail relevant to creating this vector of visited nodes – what is the predecessor of the source node?

In our graph, our source node is ‘0’. Our destination node is ‘4’. We can clearly see that there is a way to get from ‘0’ to ‘4’. But it won’t be this obvious in a larger graph.

Let’s create them:

source_node <- '0' destination_node <- '4'

Here is our vector of visited nodes. We will be keeping track of the nodes we came from when we visit each one of them.

visited_nodes <- rep(NA_character_, length(adjacency_list)) names(visited_nodes) <- names(adjacency_list)

Our source node has no predecessor! So we will simply set its predecessor to itself:

visited_nodes[source_node] <- source_node print(visited_nodes) ## 0 1 2 3 4 ## "0" NA NA NA NA

Done.

Finally, finally, finally! The breadth-first search algorithm in pseudo code

Here it is:

# create flag to indicate whether we have found our destination node found = FALSE create new queue enqueue source node while found == FALSE or the queue has elements left to process: dequeue node at front of queue if dequeued node == destination node: found = TRUE else: for every child of the dequeued node: if it has not been visited yet: enqueue child node at back of queue mark child node as visited from dequeued node end if end for end if end while

The neat thing about this algorithm is that, if we find our destination node, we can recover the path the algorithm took to reach it from the source node. Let’s assume that we found our destination node ‘4’ and that our ‘visited_nodes’ vector looks like this:

To recover the path, we can do something like this. We start with the destination node, and work backwards:

current_node = destination_node path = current_node while visited_nodes[current_node] != source_node: current_node = visited_nodes[current_node] # find predecessor of current_node path = append(path, current_node) # append it to our path end while # once we have reached our source_node, we simply append it to our path path = append(path, source_node) # we have found our path in reverse order (from destination to source). we # reverse it to find a path from source to destination path = reverse(path) The breadth-first search algorithm in R

Let’s write a breath-first search function…but first, a little sidenote.

Sidenote: learning algorithms

Algorithms can be difficult to digest. I would recommend writing a function containing the algorithm and then using the handy debug() function to step through it. All you have to do is this:

debug(<function_name>)

Then call the function as you would normally:

<function_name>(<function_args>)

And then, if you’re using RStudio, you can step through it line-by-line using the F10 key. You can print the values of the local variables of your function using the R console to see how they evolve.

Once you’re done with debugging, you need to tell R to stop debugging the function. This is done like this:

undebug(<function_name>) Enough! Here is the algorithm bfs <- function(adjacency_list, source_node, destination_node) { require(rstackdeque) # some initial checks if (!source_node %in% names(adjacency_list)) { print('source node not in this graph...') return() } if (!destination_node %in% names(adjacency_list)) { print('destination node not in this graph...') return() } # initialise our 'found destination node' flag found <- FALSE # set up our visited nodes vector visited_nodes <- rep(NA_character_, length(adjacency_list)) names(visited_nodes) <- names(adjacency_list) # initialise source node predecessor as itself visited_nodes[source_node] <- source_node # create our empty queue and enqueue source node q <- rpqueue() q <- insert_back(q, source_node) while(!found | !empty(q)) { # dequeue at front element dequeued_node <- peek_front(q) q <- without_front(q) # have we found our destination node? if (dequeued_node == destination_node) { found <- TRUE } else { # otherwise, we have nodes to process. process each child # of the dequeued node... for (child_node in adjacency_list[[dequeued_node]]) { # ...only if we have not visited it yet if(is.na(visited_nodes[child_node])) { # enqueue child node q <- insert_back(q, child_node) # mark the child node as visited from the dequeued node visited_nodes[child_node] <- dequeued_node } } } } # if we still have not found our path, it does not exist if (!found) { print('path not found') return() } # otherwise, recover the path from destination to source path <- character() current_node <- destination_node path <- append(path, current_node) while (visited_nodes[[current_node]] != source_node) { current_node <- visited_nodes[[current_node]] path <- append(path, current_node) } path <- append(path, source_node) # and then reverse it! path <- rev(path) return(path) }

Let’s test it out:

bfs(adjacency_list, source_node, destination_node) ## [1] "0" "1" "4"

Good…good..

As suspected, there is a path from our source node to our destination node. The path that the algorithm found in this case was 0 -> 1 -> 4.

My crappy animation

Here is my terrible attempt at animating the algorithm. Hopefully it helps someone.


Next time…we go back to tha streetz

This post was pretty dense. I’ve decided to stop here. I will cover how breadth-first search can be applied to OpenStreetMap data in the next post. We will also be covering an algorithm by this man:

Until part trois!

Justin

var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

To leave a comment for the author, please follow the link and comment on their blog: Embracing the Random. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

How to combine Multiple ggplot Plots to make Publication-ready Plots

Sat, 01/12/2019 - 03:26

(This article was first published on R Programming – DataScience+, and kindly contributed to R-bloggers)

    Categories

    1. Visualizing Data

    Tags

    1. Best R Packages
    2. Data Visualisation
    3. R Programming

    The life cycle of Data science can never be completed without communicating the results of the analysis/research. In fact, Data Visualization is one of the areas where R as a language for Data science has got an edge over the most-celebrated Python. With ggplot2 being the de facto Visualization DSL (Domain-Specific Language) for R programmers, Now the contest has become how effectively one can use ggplot2 package to show visualizations in the given real estate.

    In this tutorial, We will learn how to combine multiple ggplot plots to produce publication-ready plots. The R package that we are going to use is cowplot.

    About the Package:

    As mentioned in the package description, “The cowplot package is meant to provide a publication-ready theme for ggplot2, one that requires a minimum amount of fiddling with sizes of axis labels, plot backgrounds, etc. and also combining multiple plots into one figure and labeling these plots.”

    Package Installation:

    cowplot can be installed directly from CRAN using the following code:

    install.packages("cowplot")

    or the development version from github could be installed using either devtools or remote using the following code:

    #install.packages("devtools") devtools::install_github("wilkelab/cowplot") Package Loading:

    Once the package is installed, We can load cowplot using the following code (which is just like every other package loading in R):

    library(cowplot) library(ggplot2) Building our First Combined Plot

    The way it works in cowplot is that, we have assign our individual ggplot-plots as an R object (which is by default of type ggplot). These objects are finally used by cowplot to produce a unified single plot.

    In the below code, We will build three different histograms using the R’s in-built dataset iris and then assign one by one to an R object. Finally, we will use cowplot function plot_grid() to combine the two plots of our interest.

    #building the first plot plot_histogram_SL <- ggplot(iris) + geom_histogram(aes(Sepal.Length), fill = "#eeff00", bins = 200) #building the second plot plot_histogram_PL <- ggplot(iris) + geom_histogram(aes(Petal.Length)) #building the third plot plot_histogram_PL_SL <- ggplot(iris,aes(Petal.Length, Sepal.Length)) + geom_point(alpha = 0.2) #Arranging Multiple Plots in Columns - 2 in 1 plot_grid(plot_histogram_SL, plot_histogram_PL_SL, labels = c('Fig B','Fig C'), label_x = 0.2, ncol = 2)

    Gives this plot:

    In the above plot, you could see those two plots being labelled with Captions/Labels Fig B and Fig C. These Labels were added with the Parameter labels in the plot_grid() function as it is mentioned in the above code,

    There are other ways in which we can arrange the above made plots using cowplot. Let’s see a few examples:

    Arranging Multiple Plots in Rows – 2 in 1 #Arranging Multiple Plots in Rows - 2 in 1 plot_grid(plot_histogram_PL, plot_histogram_SL, labels = c('Fig A','Fig B'), label_x = 0.2, nrow = 2)

    Gives this plot:

    A cowplot plot with ggplot – 3 in 1 #A cowplot plot with ggplot - 3 in 1 plot_grid(plot_histogram_SL, plot_histogram_PL_SL, labels = c('Fig B','Fig C'), label_x = 0.2, ncol = 2) -> new_p1 plot_grid(plot_histogram_PL, new_p1, #labels = c('Fig A','Fig B'), label_x = 0.2, nrow = 2)

    Gives this plot:

    As you can see in the above code, We have combined cowplot-combined plot with ggplot-generated plot. In this way, We can combine multiple ggplot plots in a variety ways based on the given real estate and business/use-case requirement. The entire code used here in this tutorial is available here on github. Check out DataCamp tutorial, if you are interested in knowing more about Data visualization in R.

    Related Post

    1. Australian MP tweets collection and quick analysis
    2. Introducing vizscorer: a bot advisor to score and improve your ggplot plots
    3. Visualize your CV’s timeline with R (Gantt chart style)
    4. Analysing UK Traffic Trends with PCA
    5. Time series visualizations with wind turbine energy data in R
    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R Programming – DataScience+. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    GetDFPData Ver 1.4

    Sat, 01/12/2019 - 01:00

    (This article was first published on R on msperlin, and kindly contributed to R-bloggers)

    I just released a major update to package GetDFPData. Here are the main changes:

    Naming conventions for caching system are improved so that it reflects different versions of FRE and DFP files. This means the old caching system no longer works. If you have built yourself your own cache folder with many companies, do clean up the cache by deleting all folders. Run your code again and it will rebuild all files. Unfortinatelly this is a “brute force”, but necessary step. The code and data is now explicit about the version of downloaded files. If a company updates its FRE files, for example, the package will detect it and download and read the new information.

    Fixed issue with dates in FRE. Many people reported that the dates from the FRE tables did not match the ones in the website. The reason is that the FRE column “ref.date” was set as (year.fre -1)-12-31. This made sense for many of the FRE tables, but not all. The idea was to use column ref.date to bind the DFP and FRE datasets together. In order to be more transparent about this choice, a new column “year.fre” is added to all FRE data. It contains the original year of the FRE file. This way the user will always know where the FRE datasets are coming from.

    Many improvements. Bugs were chased and fixed. The code is now more mantainable and runs with more smoothly.

    The new version is already available at github and should be in CRAN in a few days.

    The datasets from the shinny version are also updated with this new dataset.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R on msperlin. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Parallelize a For-Loop by Rewriting it as an Lapply Call

    Fri, 01/11/2019 - 21:00

    (This article was first published on JottR on R, and kindly contributed to R-bloggers)

    A commonly asked question in the R community is:

    How can I parallelize the following for-loop?

    The answer almost always involves rewriting the for (...) { ... } loop into something that looks like a y <- lapply(...) call. If you can achieve that, you can parallelize it via for instance y <- future.apply::future_lapply(...) or y <- foreach::foreach() %dopar% { ... }.

    For some for-loops it is straightforward to rewrite the code to make use of lapply() instead, whereas in other cases it can be a bit more complicated, especially if the for-loop updates multiple variables in each iteration. However, as long as the algorithm behind the for-loop is embarrassingly parallel, it can be done. Whether it should be parallelized in the first place, or it’s worth parallelizing it, is a whole other discussion.

    Below are a few walk-through examples on how to transform a for-loop into an lapply call.


    Run your loops in parallel.

    Example 1: A well-behaving for-loop

    I will use very simple function calls throughout the examples, e.g. sqrt(x). For these code snippets to make sense, let us pretend that those functions take a long time to finish and by parallelizing multiple such calls we will shorten the overall processing time.

    First, consider the following example:

    X <- 1:5 y <- list() for (ii in seq_along(X)) { x <- X[[ii]] tmp <- sqrt(x) ## Assume this takes a long time y[[ii]] <- tmp }

    When run, this will give us the following result:

    > str(y) List of 5 $ : num 1 $ : num 1.41 $ : num 1.73 $ : num 2 $ : num 2.24

    Because the result of each iteration in the for-loop is a single value (variable tmp) it is straightforward to turn this for-loop into an lapply call. I’ll first show a version that resembles the original for-loop as far as possible, with one minor but important change. I’ll wrap up the “iteration” code inside local() to make sure it is evaluated in a local environment in order to prevent it from assigning values to the global environment. It is only the “result” of local() call that I will allow updating y. Here we go:

    y <- list() for (ii in seq_along(X)) { y[[ii]] <- local({ x <- X[[ii]] tmp <- sqrt(x) tmp ## same as return(tmp) }) }

    By making these, apparently, small adjustments, we lower the risk for missing some critical side effects that may be used in some for-loops. If those exists and we miss to adjust for them, then the for-loop is likely to give the wrong results.

    If this syntax is unfamiliar to you, run it first to convince yourself that it works. How does it work? The code inside local() will be evaluated in a local environment and it is only its last value (here tmp) that will be returned. It is also neat that x, tmp, and any other created variables, will not clutter up the global environment. Instead, they will vanish after each iteration just like local variables used inside functions. Retry the above after rm(x, tmp) to see that this is really the case.

    Now we’re in a really good position to turn the for-loop into an lapply call. To share my train of thought, I’ll start by showing how to do it in a way that best resembles the latter for-loop;

    y <- lapply(seq_along(X), function(ii) { x <- X[[ii]] tmp <- sqrt(x) tmp })

    Just like the for-loop with local(), it is the last value (here tmp) that is returned, and everything is evaluated in a local environment, e.g. variable tmp will not show up in our global environment.

    There is one more update that we can do, namely instead of passing the index ii as an argument and then extract element x <- X[[ii]] inside the function, we can pass that element directly using:

    y <- lapply(X, function(x) { tmp <- sqrt(x) tmp })

    If we get this far and have confirmed that we get the expected results, then we’re home.

    From here, there are few ways to parallelize the lapply call. The parallel package provides the commonly known mclapply() and parLapply() functions, which are found in many examples and inside several R packages. As the author of the future package, I claim that your life as a developer will be a bit easier if you instead use the future framework. It will also bring more power and options to the end user. Below are a few options for parallelization.

    future.apply::future_lapply()

    The parallelization update that takes the least amount of changes is provided by the future.apply package. All we have to do is to replace lapply() with future_lapply():

    library(future.apply) plan(multiprocess) ## => parallelize on your local computer X <- 1:5 y <- future_lapply(X, function(x) { tmp <- sqrt(x) tmp })

    and we’re done.

    foreach::foreach() %dopar% { … }

    If we wish to use the foreach framework, we can do:

    library(doFuture) registerDoFuture() plan(multiprocess) X <- 1:5 y <- foreach(x = X) %dopar% { tmp <- sqrt(x) tmp }

    Here I choose the doFuture adaptor because it provides us with access to the future framework and the full range of parallel backends that comes with it (controlled via plan()).

    If there is only one thing you should remember from this post, it is the following:

    It is a common misconception that foreach() works like a regular for-loop. It is doesn’t! Instead, think of it as a version of lapply() with a few bells and whistles and always make sure to use it as y <- foreach(...) %dopar% { ... }.

    To clarify further, the following is not (I repeat: not) a working solution:

    X <- 1:5 y <- list() foreach(x = X) %dopar% { tmp <- sqrt(x) y[[ii]] <- tmp }

    No, it isn’t.

    Additional parallelization options

    There are several more options available, which are conceptually very similar to the above lapply-like approaches, e.g. y <- furrr::future_map(X, ...), y <- plyr::llply(X, ..., .parallel = TRUE) or y <- BiocParallel::bplapply(X, ..., BPPARAM = DoparParam()). For also the latter two to parallelize via one of the many future backends, we need to set doFuture::registerDoFuture(). See also my blog post The Many-Faced Future.

    Example 2: A slightly complicated for-loop

    Now, what do we do if the for-loop writes multiple results in each iteration? For example,

    X <- 1:5 y <- list() z <- list() for (ii in seq_along(X)) { x <- X[[ii]] tmp1 <- sqrt(x) y[[ii]] <- tmp1 tmp2 <- x^2 z[[ii]] <- tmp2 }

    The way to turn this into an lapply call, is to rewrite the code by gathering all the results at the very end of the iteration and then put them into a list;

    X <- 1:5 yz <- list() for (ii in seq_along(X)) { x <- X[[ii]] tmp1 <- sqrt(x) tmp2 <- x^2 yz[[ii]] <- list(y = tmp1, z = tmp2) }

    This one we know how to rewrite;

    yz <- lapply(X, function(x) { tmp1 <- sqrt(x) tmp2 <- x^2 list(y = tmp1, z = tmp2) })

    which we in turn can parallelize with one of the above approaches.

    The only difference from the original for-loop is that the ‘y’ and ‘z’ results are no longer in two separate lists. This makes it a bit harder to get a hold of the two elements. In some cases, then downstream code can work with the new yz format as is but if not, we can always do:

    y <- lapply(yz, function(t) t$y) z <- lapply(yz, function(t) t$z) rm(yz) Example 3: A somewhat complicated for-loop

    Another, somewhat complicated, for-loop is when, say, one column of a matrix is updated per iteration. For example,

    X <- 1:5 Y <- matrix(0, nrow = 2, ncol = length(X)) rownames(Y) <- c("sqrt", "square") for (ii in seq_along(X)) { x <- X[[ii]] Y[, ii] <- c(sqrt(x), x^2) ## assume this takes a long time }

    which gives

    > Y [,1] [,2] [,3] [,4] [,5] sqrt 1 1.414214 1.732051 2 2.236068 square 1 4.000000 9.000000 16 25.000000

    To turn this into an lapply call, the approach is the same as in Example 2 – we rewrite the for-loop to assign to a list and only afterward we worry about putting those values into a matrix. To keep it simple, this can be done using something like:

    X <- 1:5 tmp <- lapply(X, function(x) { c(sqrt(x), x^2) ## assume this takes a long time }) Y <- matrix(0, nrow = 2, ncol = length(X)) rownames(Y) <- c("sqrt", "square") for (ii in seq_along(tmp)) { Y[, ii] <- tmp[[ii]] } rm(tmp)

    To parallelize this, all we have to do is to rewrite the lapply call as:

    tmp <- future_lapply(X, function(x) { c(sqrt(x), x^2) }) Example 4: A non-embarrassingly parallel for-loop

    Now, if our for-loop is such that one iteration depends on the previous iterations, things becomes much more complicated. For example,

    X <- 1:5 y <- list() y[[1]] <- 1 for (ii in 2:length(X)) { x <- X[[ii]] tmp <- sqrt(x) y[[ii]] <- y[[ii - 1]] + tmp }

    does not use an embarrassingly parallel for-loop. This code cannot be rewritten as an lapply call and therefore it cannot be parallelized.

    Summary

    To parallelize a for-loop:

    1. Rewrite your for-loop such that each iteration is done inside a local() call (most of the work is done here)
    2. Rewrite this new for-loop as an lapply call (straightforward)
    3. Replace the lapply call with a parallel implementation of your choice (straightforward)

    Happy futuring!

    See also Appendix A regular for-loop with future::future()

    In order to lower the risk for mistakes, and because I think the for-loop-to-lapply approach is the one that the works out of the box in the most cases, I decided to not mention the following approach in the main text above, but if you’re interested, here it is. With the core building blocks of the Future API, we can actually do parallel processing using a regular for-loop. Have a look at that second code snippet in Example 1 where we use a for-loop together with local(). All we need to do is to replace local() with future() and make sure to “collect” the values after the for-loop;

    library(future) plan(multiprocess) X <- 1:5 y <- list() for (ii in seq_along(X)) { y[[ii]] <- future({ x <- X[[ii]] tmp <- sqrt(x) tmp }) } y <- values(y) ## collect values

    Note that this approach does not perform load balancing*. That is, contrary to the above mentioned lapply-like options, it will not chunk up the elements in X into equally-sized portions for each parallel worker to process. Instead, it will call each worker multiple times, which can bring some significant overhead, especially if there are many elements to iterate over.

    However, one neat feature of this bare-bones approach is that we have full control of the iteration. For instance, we can initiate each iteration using a bit of sequential code before we use parallel code. This can be particularly useful for subsetting large objects to avoid passing them to each worker, which otherwise can be costly. For example, we can rewrite the above as:

    library(future) plan(multiprocess) X <- 1:5 y <- list() for (ii in seq_along(X)) { x <- X[[ii]] y[[ii]] <- future({ tmp <- sqrt(x) tmp }) } y <- values(y)

    This is just one example. I’ve run into several other use cases in my large-scale genomics research, where I found it extremely useful to be able to perform the beginning of an iteration sequentially in the main processes before passing on the remaining part to be processed in parallel by the workers.

    (*) I do have some ideas on how to get the above code snippet to do automatic workload balancing “under the hood”, but that is quite far into the future of the future framework.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: JottR on R. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    R Tip: Use seqi() For Indexes

    Fri, 01/11/2019 - 18:13

    (This article was first published on R – Win-Vector Blog, and kindly contributed to R-bloggers)

    R Tip: use seqi() for indexing.

    R‘s “1:0 trap” is a mal-feature that confuses newcomers and is a reliable source of bugs. This note will show how to use seqi() to write more reliable code and document intent.

    The issue is, contrary to expectations (formed in working with other programming languages) the sequence 1:0 is not empty. It is instead a decreasing sequence. Data scientists typically work in many languages, so we should expect differences. However having a sequence builder that returns empty when the bounds cross is a common useful tool for controlling loops and other indexing tasks.

    We have written about this before. The usual defense is that it is the same as seq(1, 0), but I see that more as a doubling-down than an argument. Also due to odd behavior when iterating over vectors or lists with class-attributes, we sometimes must introduce indices (as it isn’t always safe to directly iterate over contents in R).

    What this means is in R there is no common safe, succinct way to write index vector or loops where one of the end-points is passed in as an argument. For example the following simple example is incorrect.

    # sum reciprocals of squares of positive integers from 1 up to k # converges to pi^2/6 sum_sq_recip_k <- function(k) { sum(1/((1:k)^2)) } # should be zero, as the convention 1 up to -1 is the empty set sum_sq_recip_k(-1) # [1] Inf

    There are plenty of ways to write reversed sequences (such as rev(0:1)), so writing reversed sequences isn’t a great unmet need. Previously we recommended using seq_len() as a solution. This is still good, however that only directly addressed upper-bound issues. For general ranges (where perhaps the lower-bound is the parameter) we still have a problem.

    Python is one of the most popular programming languages, and it supplies a convenient function for the common task of iterating over increasing ranges of integers.

    # Python code [k for k in range(3, 5)] # Out[1]: [3, 4] [k for k in range(5, 3)] # Out[2]: []

    Now of course different programming languages made different choices. However, in my opinion, writing possibly empty sequences parametrically is a common programming need and it is nice to have this be convenient.

    Our current advice to R users is use wrapr::seqi() which stands for “sequence, increasing integer(s)”. We needed such a capability when translating C++ code to R code for our RcppDynProg example (otherwise we would have to put guards around the loops so they don’t activate on what should be empty sequences).

    seqi() is used as follows.

    library("wrapr") # print 3, 4, and then 5 for(i in seqi(3, 5)) { print(i) } #> [1] 3 #> [1] 4 #> [1] 5 # empty for(i in seqi(5, 2)) { print(i) }

    This is clear, safe, and documents intent. It is a non-negotiable fact that in R base::seq(1,0) is [0, 1]. Well, wrapr::seqi(1,0) is [].

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – Win-Vector Blog. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Satellite imagery generation with Generative Adversarial Networks (GANs)

    Fri, 01/11/2019 - 15:24

    (This article was first published on r – Appsilon Data Science | End­ to­ End Data Science Solutions, and kindly contributed to R-bloggers)

    What are GANs?

    Some time ago, I showed you how to create a simple Convolutional Neural Network (ConvNet) for satellite imagery classification using Keras. ConvNets are not the only cool thing you can do in Keras, they are actually just the tip of an iceberg. Now,I think it’s about time to show you something more!

    Before we start, I will recommend that you review my two previous posts (Ship recognition in satellite imagery part I and part II) if you haven’t already.

    Okay, so what are GANs?

    Generative adversarial networks, or GANs, were introduced in 2014 by Ian Goodfellow. They are generative algorithms comprised of two deep neural networks “playing” against each other. To fully understand GANs, we have to first understand how the generative method works.

    Let’s go back to our ConvNet for satellite imagery classification. As you remember, our task looked like this:

    We wanted to predict class (ship or non-ship). To be more specific, we wanted to find the probability that the image belongs to the specific class, given the image. Each image was composed of a set of pixels that we were using as features/inputs. Mathematically, we were using a set of features, X (pixels), to get the conditional probability of Y (class) given X (pixels):

    p(y|x)

    This is an example of a discriminative algorithm. Generative algorithms, on the other hand, do the complete opposite. Using our example, assuming that the class of an image is “ship,” what should the image look like? More precisely, what value should each pixel have? This time, we’re generating the distribution of X (pixels) given Y (class):

    p(x|y)

    Now that we know how the generative algorithms work, we can dive deeper into GANs.

    Like I said previously, GANs are composed of two deep neural networks. The first network is called the generator, and it’s basically responsible for creating new instances of data from random noise. The second network is called discriminator, and it “judges” if the data generated by the generator is real or fake by comparing it to real data.


    Note that I’m not saying that those are ConvNets or Recurrent Neural Networks. There are many different variations of GANs and depending on the task, we will use different networks to build our GAN. For example, later on, we will use Deep Convolutional Generative Adversarial Networks (DCGAN)  to generate new satellite imagery.

     

    DCGAN in R

    To build a GAN in R, we have to first build a generator and discriminator. Then, we will join them together. We want to create DCGAN for satellite imagery where the generator network will take random noise as input and will return the new image as an output.

    image_height <- 80 # Image height in pixels image_width <- 80 # Image width in pixels image_channels <- 3 # Number of color channels - here Red, Green and Blue noise_dim <- 80 # Length of gaussian noise vector for generator input # Setting generator input as gaussian noise vector generator_input <- layer_input(shape = c(noise_shape)) # Setting generator output - 1d vector will be reshaped into an image array generator_output <- generator_input %>% layer_dense(units = 64 * image_height / 4 * image_width / 4) %>% layer_activation_leaky_relu() %>% layer_reshape(target_shape = c(image_height / 4, image_width / 4, 64)) %>% layer_conv_2d(filters = 128, kernel_size = 5, padding = "same") %>% layer_activation_leaky_relu() %>% layer_conv_2d_transpose(filters = 128, kernel_size = 4, strides = 2, padding = "same") %>% layer_activation_leaky_relu() %>% layer_conv_2d_transpose(filters = 256, kernel_size = 4, strides = 2, padding = "same") %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 256, kernel_size = 5, padding = "same") %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 256, kernel_size = 5, padding = "same") %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = image_channels, kernel_size = 7, activation = "tanh", padding = "same") # Setting up the model generator <- keras_model(generator_input, generator_output)

    The discriminator will take a real or generated image as input and return the probability of the image’s authenticity, indicating if the image was real or not.

    # Setting discriminator input as an image array discriminator_input <- layer_input(shape = c(image_height, image_width, image_channels)) # Setting discriminator output - the probability that image is real or not discriminator_output <- discriminator_input %>% layer_conv_2d(filters = 256, kernel_size = 4) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 256, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 128, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 128, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 128, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 128, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_conv_2d(filters = 128, kernel_size = 2, strides = 2) %>% layer_activation_leaky_relu() %>% layer_flatten() %>% layer_dropout(rate = 0.3) %>% layer_dense(units = 1, activation = "sigmoid") # Setting up the model discriminator <- keras_model(discriminator_input, discriminator_output)

    As previously stated, both networks are “playing” against each other. The discriminator’s task is to distinguish real and fake images, and the generator has to create new data (which is an image in this case) that will indistinguishable from real data. Because the discriminator is returning probabilities, we can use binary cross-entropy as the loss function.

    discriminator %>% compile( optimizer = optimizer_rmsprop( lr = 0.0006, clipvalue = 1.0, decay = 1e-7 ), loss = "binary_crossentropy" )

    Before we merge our two networks into a GAN, we will freeze the discriminator weights so that they won’t be updated when the GAN is trained. Otherwise, this would cause the discriminator to return “true” value for each image we pass into it. Instead, we will train networks separately.

    freeze_weights(discriminator) gan_input <- layer_input(shape = c(noise_shape)) gan_output <- discriminator(generator(gan_input)) gan <- keras_model(gan_input, gan_output) gan %>% compile( optimizer = optimizer_rmsprop( lr = 0.0003, clipvalue = 1.0, decay = 1e-7 ), loss = "binary_crossentropy" ) # Training the GAN doesn't follow the simplicity as we could experience while working with Convolutional Networks. In simplification, we have to train both networks separately in a loop. for(i in 1:1000) { # TRAIN THE DISCRIMINATOR # TRAIN THE GAN # You can find full code of the training process for similar example in https://www.manning.com/books/deep-learning-with-r }

    If you want to learn more about GANs and Keras, I would encourage that you read Deep Learning with R. It’s a great place to start your adventure with Keras and deep learning.

    Results

    I’ve checked a few architectures of my GAN, and below, you will find some of the results.

    We can see that the generator is learning how to create some simple “ship-like” shapes. All of them share the same orientation as the ship, water hue, and so on.  We can also see what happens when a GAN is over-trained because we’re getting some really abstract pictures.

    The results are limited for two reasons. First of all, we worked on a really small sample size. Secondly, we should try out many different architectures of neural networks. In this example, I was working on my local machine, but using a cluster of machines over a longer period of time would likely give us much better results.

     

    Article Satellite imagery generation with Generative Adversarial Networks (GANs) comes from Appsilon Data Science | End­ to­ End Data Science Solutions.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: r – Appsilon Data Science | End­ to­ End Data Science Solutions. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    pinp 0.0.7: More small YAML options

    Fri, 01/11/2019 - 12:24

    (This article was first published on Thinking inside the box , and kindly contributed to R-bloggers)

    A good six months after the previous release, another small feature release of our pinp package for snazzier one or two column Markdown-based pdf vignettes got onto CRAN minutes ago as another [CRAN-pretest-publish] release indicating a fully automated process (as can be done for packages free of NOTES, WARNING, ERRORS, and without ‘changes to worse’ in their reverse dependency checks).

    One new option was suggested (and implemented) by Ilya Kashnitsky: the bold and small subtitle carrying a default of ‘this version built on …’ with the date is now customisable; motivation was for example stating a post-publication DOI which is indeed useful. In working with DOI I also finally realized that I was blocking displays of DOIs in the references: the PNAS style use \doi{} for a footer display (which we use e.g. for vignette info) shadowing the use via the JSS.cls borrowed from the Journal of Statistical Software setup. So we renamed the YAML header option to doi_footer for clarity, still support the old entries for backwards compatibility (yes, we care), renamed the macro for this use — and with an assist from LaTeX wizard Achim Zeileis added a new \doi{} now displaying DOIs in the references as they should! We also improved some internals as e.g. the Travis CI checks but I should blog about that another time, and documented yet more YAML header options in the vignette.

    A screenshot of the package vignette can be seen below. Additional screenshots of are at the pinp page.

    The NEWS entry for this release follows.

    Changes in pinp version 0.0.7 (2019-01-11)
    • Added some more documentation for different YAML header fields.

    • A new option has been added for a ‘date_subtitle’ (Ilya Kashnitsky in #64 fixing #63).

    • ‘doi’ YAML option renamed to ‘doi_footer’ to permit DOIs in refs, ‘doi’ header still usable (Dirk in #66 fixing #65).

    • The ‘doi’ macro was redefined to create a hyperlink.

    Courtesy of CRANberries, there is a comparison to the previous release. More information is on the tint page. For questions or comments use the issue tracker off the GitHub repo.

    This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: Thinking inside the box . R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Add a static pdf vignette to an R package

    Fri, 01/11/2019 - 10:22

    (This article was first published on R – Mark van der Loo, and kindly contributed to R-bloggers)

    Most vignettes are built when a package is built, but there are occasions where you just want to include a pdf. For example when you want to include a paper. Of course there is a package supporting this, but in this post I will show you how to do it yourself with ease.

    The idea is very simple: vignettes can be in LaTeX, and it is possible to include pdf documents in LaTeX using the pdfpages package. So here’s the step-by-step recipe:

    1. If you do not already have it, create the vignettes folder in your package directory.
    2. Put your static pdf there. Let’s call it mypaper.pdf for now.
    3. Create a .Rnw file with the following content.
    \documentclass{article} \usepackage{pdfpages} %\VignetteIndexEntry{author2019mypaper} \begin{document} \includepdf[pages=-, fitpaper=true]{mypaper.pdf} \end{document}

    That’s it.

    Some notes.

    1. This repo contains an example.
    2. The option fitpaper=true is necessary because the Sweave package that is included when the vignette is built somehow causes the pages to rescale if it is not included.
    3. If you post your package to CRAN, myfile.pdf will be deleted from the directory so it is not part of a binary download.
    4. You can include errata or other notes, for example as follows:
    \documentclass{article} \usepackage{pdfpages} %\VignetteIndexEntry{author2019mypaper} \begin{document} \includepdf[pages=-, fitpaper=true]{mypaper.pdf} \newpage{} \subsection*{Errata} A few things were borked in the original publication, here is a list of sto0pid things I did: \begin{itemize} \item{fubar 1} \item{fubar 2} \end{itemize} \end{document} Markdown with by wp-gfm var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – Mark van der Loo. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    epubr 0.6.0 CRAN release

    Fri, 01/11/2019 - 01:00

    (This article was first published on Matt's R Blog, and kindly contributed to R-bloggers)

    The epubr R package provides functions supporting the reading and parsing of internal e-book content from EPUB files. It has been updated to v0.6.0 on CRAN. This post highlights new functionality. The key improvements focus on cases where EPUB files have poorly arranged text when loaded into R as a result of their metadata entries and archive file structure.

    library(epubr) file <- system.file("dracula.epub", package = "epubr") (x <- epub(file)) #> # A tibble: 1 x 9 #> rights identifier creator title language subject date source data #> #> 1 Public~ http://www.~ Bram St~ Drac~ en Horror~ 1995~ http://~ # A tibble: 15 x 4 #> section text nword nchar #> #> 1 item6 "The Project Gutenberg EBook of Dracula, by ~ 11446 60972 #> 2 item7 "But I am not in heart to describe beauty, f~ 13879 71798 #> 3 item8 "\" 'Lucy, you are an honest-hearted girl, I~ 12474 65522 #> 4 item9 "CHAPTER VIIIMINA MURRAY'S JOURNAL\nSame day~ 12177 62724 #> 5 item10 "CHAPTER X\nLetter, Dr. Seward to Hon. Arthu~ 12806 66678 #> 6 item11 "Once again we went through that ghastly ope~ 12103 62949 #> 7 item12 "CHAPTER XIVMINA HARKER'S JOURNAL\n23 Septem~ 12214 62234 #> 8 item13 "CHAPTER XVIDR. SEWARD'S DIARY-continued\nIT~ 13990 72903 #> 9 item14 "\"Thus when we find the habitation of this ~ 13356 69779 #> 10 item15 "\"I see,\" I said. \"You want big things th~ 12866 66921 #> 11 item16 "CHAPTER XXIIIDR. SEWARD'S DIARY\n3 October.~ 11928 61550 #> 12 item17 "CHAPTER XXVDR. SEWARD'S DIARY\n11 October, ~ 13119 68564 #> 13 item18 " \nLater.-Dr. Van Helsing has returned. He ~ 8435 43464 #> 14 item19 "End of the Project Gutenberg EBook of Dracu~ 2665 18541 #> 15 coverpage-wra~ "" 0 0 Restructure parsed content

    When reading EPUB files it is ideal to be able to identify meaningful sections to retain via a regular expression pattern, as well as to drop extraneous sections in a similar manner. Using pattern matching as shown above is a convenient way to filter rows of the nested text content data frame.

    For e-books with poor metadata formatting this is not always possible, or may be possible only after some other pre-processing. epubr provides other functions to assist in restructuring the text table. The Dracula EPUB file included in epubr is a good example to continue with here.

    Split and recombine into new sections

    This book is internally broken into sections at arbitrary break points, hence why several sections begin in the middle of chapters, as seen above. Other chapters begin in the middle of sections. Use epub_recombine along with a regular expression that can match the true section breaks. This function collapses the full text and then rebuilds the text table using new sections with proper break points. In the process it also recalculates the numbers of words and characters and relabels the sections with chapter notation.

    Fortunately, a reliable pattern exists, which consists of CHAPTER in capital letters followed by a space and some Roman numerals. Recombine the text into a new object.

    pat <- "CHAPTER [IVX]+" x2 <- epub_recombine(x, pat) x2 #> # A tibble: 1 x 10 #> rights identifier creator title language subject date source nchap data #> #> 1 Publi~ http://ww~ Bram S~ Drac~ en Horror~ 1995~ http:~ 54 # A tibble: 55 x 4 #> section text nword nchar #> #> 1 prior "The Project Gutenberg EBook of Dracula, by Bram St~ 159 1110 #> 2 ch01 "CHAPTER I\nPage\nJonathan Harker's Journal\n1\n" 7 43 #> 3 ch02 "CHAPTER II\nJonathan Harker's Journal\n14\n" 6 40 #> 4 ch03 "CHAPTER III\nJonathan Harker's Journal\n26\n" 6 41 #> 5 ch04 "CHAPTER IV\nJonathan Harker's Journal\n38\n" 6 40 #> 6 ch05 "CHAPTER V\nLetters-Lucy and Mina\n51\n" 6 35 #> 7 ch06 "CHAPTER VI\nMina Murray's Journal\n59\n" 6 36 #> 8 ch07 "CHAPTER VII\nCutting from \"The Dailygraph,\" 8 Au~ 9 55 #> 9 ch08 "CHAPTER VIII\nMina Murray's Journal\n84\n" 6 38 #> 10 ch09 "CHAPTER IX\nMina Murray's Journal\n98\n" 6 36 #> # ... with 45 more rows

    But this is not quite as expected. There should be 27 chapters, not 54. What was not initially apparent was that the same pattern matching each chapter name also appears in the first section where every chapter is listed in the table of contents. The new section breaks were successful in keeping chapter text in single, unique sections, but there are now twice as many as needed. Unintentionally, the first 27 “chapters” represent the table of contents being split on each chapter ID. These should be removed.

    An easy way to do this is with epub_sift, which sifts, or filters out, small word- or character-count sections from the nested data frame. It’s a simple sieve and you can control the size of the holes with n. You can choose type = "word" (default) or type = "character". This is somewhat of a blunt instrument, but is useful in a circumstance like this one where it is clear it will work as desired.

    library(dplyr) x2 <- epub_recombine(x, pat) %>% epub_sift(n = 200) x2 #> # A tibble: 1 x 10 #> rights identifier creator title language subject date source nchap data #> #> 1 Publi~ http://ww~ Bram S~ Drac~ en Horror~ 1995~ http:~ 54 # A tibble: 27 x 4 #> section text nword nchar #> #> 1 ch28 "CHAPTER IJONATHAN HARKER'S JOURNAL\n(Kept in short~ 5694 30602 #> 2 ch29 "CHAPTER IIJONATHAN HARKER'S JOURNAL-continued\n5 M~ 5476 28462 #> 3 ch30 "CHAPTER IIIJONATHAN HARKER'S JOURNAL-continued\nWH~ 5703 29778 #> 4 ch31 "CHAPTER IVJONATHAN HARKER'S JOURNAL-continued\nI A~ 5828 30195 #> 5 ch32 "CHAPTER V\nLetter from Miss Mina Murray to Miss Lu~ 3546 18004 #> 6 ch33 "CHAPTER VIMINA MURRAY'S JOURNAL\n24 July. Whitby.-~ 5654 29145 #> 7 ch34 "CHAPTER VIICUTTING FROM \"THE DAILYGRAPH,\" 8 AUGU~ 5567 29912 #> 8 ch35 "CHAPTER VIIIMINA MURRAY'S JOURNAL\nSame day, 11 o'~ 6267 32596 #> 9 ch36 "CHAPTER IX\nLetter, Mina Harker to Lucy Westenra.\~ 5910 30129 #> 10 ch37 "CHAPTER X\nLetter, Dr. Seward to Hon. Arthur Holmw~ 5932 30730 #> # ... with 17 more rows

    This removes the unwanted rows, but one problem remains. Note that sifting the table sections in this case results in a need to re-apply epub_recombine because the sections we removed had nevertheless offset the chapter indexing. Another call to epub_recombine can be chained, but it may be more convenient to use the sift argument to epub_recombine, which is applied recursively.

    # epub_recombine(x, pat) %>% epub_sift(n = 200) %>% epub_recombine(pat) x2 <- epub_recombine(x, pat, sift = list(n = 200)) x2 #> # A tibble: 1 x 10 #> rights identifier creator title language subject date source nchap data #> #> 1 Publi~ http://ww~ Bram S~ Drac~ en Horror~ 1995~ http:~ 27 # A tibble: 27 x 4 #> section text nword nchar #> #> 1 ch01 "CHAPTER IJONATHAN HARKER'S JOURNAL\n(Kept in short~ 5694 30602 #> 2 ch02 "CHAPTER IIJONATHAN HARKER'S JOURNAL-continued\n5 M~ 5476 28462 #> 3 ch03 "CHAPTER IIIJONATHAN HARKER'S JOURNAL-continued\nWH~ 5703 29778 #> 4 ch04 "CHAPTER IVJONATHAN HARKER'S JOURNAL-continued\nI A~ 5828 30195 #> 5 ch05 "CHAPTER V\nLetter from Miss Mina Murray to Miss Lu~ 3546 18005 #> 6 ch06 "CHAPTER VIMINA MURRAY'S JOURNAL\n24 July. Whitby.-~ 5654 29145 #> 7 ch07 "CHAPTER VIICUTTING FROM \"THE DAILYGRAPH,\" 8 AUGU~ 5567 29912 #> 8 ch08 "CHAPTER VIIIMINA MURRAY'S JOURNAL\nSame day, 11 o'~ 6267 32596 #> 9 ch09 "CHAPTER IX\nLetter, Mina Harker to Lucy Westenra.\~ 5910 30129 #> 10 ch10 "CHAPTER X\nLetter, Dr. Seward to Hon. Arthur Holmw~ 5932 30730 #> # ... with 17 more rows Reorder sections based on pattern in text

    Some poorly formatted e-books have their internal sections occur in an arbitrary order. This can be frustrating to work with when doing text analysis on each section and where order matters. Just like recombining into new sections based on a pattern, sections that are out of order can be reordered based on a pattern. This requires a bit more work. In this case the user must provide a function that will map something in the matched pattern to an integer representing the desired row index.

    Continue with the Dracula example, but with one difference. Even though the sections were originally broken at arbitrary points, they were in chronological order. To demonstrate the utility of epub_reorder, first randomize the rows so that chronological order can be recovered.

    set.seed(1) x2$data[[1]] <- sample_frac(x2$data[[1]]) # randomize rows for example x2$data[[1]] #> # A tibble: 27 x 4 #> section text nword nchar #> #> 1 ch08 "CHAPTER VIIIMINA MURRAY'S JOURNAL\nSame day, 11 o'~ 6267 32596 #> 2 ch10 "CHAPTER X\nLetter, Dr. Seward to Hon. Arthur Holmw~ 5932 30730 #> 3 ch15 "CHAPTER XVDR. SEWARD'S DIARY-continued.\nFOR a whi~ 5803 29705 #> 4 ch22 "CHAPTER XXIIJONATHAN HARKER'S JOURNAL\n3 October.-~ 5450 28081 #> 5 ch05 "CHAPTER V\nLetter from Miss Mina Murray to Miss Lu~ 3546 18005 #> 6 ch20 "CHAPTER XXJONATHAN HARKER'S JOURNAL\n1 October, ev~ 5890 31151 #> 7 ch24 "CHAPTER XXIVDR. SEWARD'S PHONOGRAPH DIARY, SPOKEN ~ 6272 32065 #> 8 ch14 "CHAPTER XIVMINA HARKER'S JOURNAL\n23 September.-Jo~ 6411 32530 #> 9 ch12 "CHAPTER XIIDR. SEWARD'S DIARY\n18 September.-I dro~ 7285 37868 #> 10 ch02 "CHAPTER IIJONATHAN HARKER'S JOURNAL-continued\n5 M~ 5476 28462 #> # ... with 17 more rows

    It is clear above that sections are now out of order. It is common enough to load poorly formatted EPUB files and yield this type of result. If all you care about is the text in its entirely, this does not matter, but if your analysis involves trends over the course of a book, this is problematic.

    For this book, you need a function that will convert an annoying Roman numeral to an integer. You already have the pattern for finding the relevant information in each text section. You only need to tweak it for proper substitution. Here is an example:

    f <- function(x, pattern) as.numeric(as.roman(gsub(pattern, "\\1", x)))

    This function is passed to epub_reorder. It takes and returns scalars. It must take two arguments: the first is a text string. The second is the regular expression. It must return a single number representing the index of that row. For example, if the pattern matches CHAPTER IV, the function should return a 4.

    epub_reorder takes care of the rest. It applies your function to every row in the the nested data frame and then reorders the rows based on the full set of indices. Note that it also repeats this for every row (book) in the primary data frame, i.e., for every nested table. This means that the same function will be applied to every book. Therefore, you should only use this in bulk on a collection of e-books if you know the pattern does not change and the function will work correctly in each case.

    The pattern has changed slightly. Parentheses are used to retain the important part of the matched pattern, the Roman numeral. The function f here substitutes the entire string (because now it begins with ^ and ends with .*) with only the part stored in parentheses (In f, this is the \\1 substitution). epub_reorder applies this to all rows in the nested data frame:

    x2 <- epub_reorder(x2, f, "^CHAPTER ([IVX]+).*") x2$data[[1]] #> # A tibble: 27 x 4 #> section text nword nchar #> #> 1 ch01 "CHAPTER IJONATHAN HARKER'S JOURNAL\n(Kept in short~ 5694 30602 #> 2 ch02 "CHAPTER IIJONATHAN HARKER'S JOURNAL-continued\n5 M~ 5476 28462 #> 3 ch03 "CHAPTER IIIJONATHAN HARKER'S JOURNAL-continued\nWH~ 5703 29778 #> 4 ch04 "CHAPTER IVJONATHAN HARKER'S JOURNAL-continued\nI A~ 5828 30195 #> 5 ch05 "CHAPTER V\nLetter from Miss Mina Murray to Miss Lu~ 3546 18005 #> 6 ch06 "CHAPTER VIMINA MURRAY'S JOURNAL\n24 July. Whitby.-~ 5654 29145 #> 7 ch07 "CHAPTER VIICUTTING FROM \"THE DAILYGRAPH,\" 8 AUGU~ 5567 29912 #> 8 ch08 "CHAPTER VIIIMINA MURRAY'S JOURNAL\nSame day, 11 o'~ 6267 32596 #> 9 ch09 "CHAPTER IX\nLetter, Mina Harker to Lucy Westenra.\~ 5910 30129 #> 10 ch10 "CHAPTER X\nLetter, Dr. Seward to Hon. Arthur Holmw~ 5932 30730 #> # ... with 17 more rows

    It is important that this is done on a nested data frame that has already been cleaned to the point of not containing extraneous rows that cannot be matched by the desired pattern. If they cannot be matched, then it is unknown where those rows should be placed relative to the others.

    If sections are both out of order and use arbitrary break points, it would be necessary to reorder them before you split and recombine. If you split and recombine first, this would yield new sections that contain text from different parts of the e-book. However, the two are not likely to occur together; in fact it may be impossible for an EPUB file to be structured this way. In developing epubr, no such examples have been encountered. In any event, reordering out of order sections essentially requires a human-identifiable pattern near the beginning of each section text string, so it does not make sense to perform this operation unless the sections have meaningful break points.

    Other new functions Word count

    The helper function count_words provides word counts for strings, but allows you to control the regular expression patterns used for both splitting the string and conditionally counting the resulting character elements. This is the same function used internally by epub and epub_recombine. It is exported so that it can be used directly.

    By default, count_words splits on spaces and new line characters. It counts as a word any element containing at least one alphanumeric character or the ampersand. It ignores everything else as noise, such as extra spaces, empty strings and isolated bits of punctuation.

    x <- " This sentence will be counted to have:\n\n10 (ten) words." count_words(x) #> [1] 10 Inspection

    Helper functions for inspecting the text in the R console include epub_head and epub_cat.

    epub_head provides an overview of the text by section for each book in the primary data frame. The nested data frames are unnested and row bound to one another and returned as a single data frame. The text is shortened to only the first few characters (defaults to n = 50).

    epub_cat can be used to cat the text of an e-book to the console for quick inspection in a more readable form. It can take several arguments that help slice out a section of the text and customize how it is printed.

    Both functions can take an EPUB filename or a data frame of an already loaded EPUB file as their first argument.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: Matt's R Blog. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Visualizing the Asian Cup with R!

    Fri, 01/11/2019 - 01:00

    (This article was first published on R by R(yo), and kindly contributed to R-bloggers)

    Another year, another big soccer/football tournament! This time it’s the
    top international competition in Asia, the Asian Cup hosted in the
    U.A.E. In this blog post I’ll be covering (responsible) web-scraping, data wrangling
    (tidyverse FTW!), and of course, data visualization with ggplot2.

    Let’s get started!

    Packages pacman::p_load(tidyverse, scales, lubridate, ggrepel, stringi, magick, glue, extrafont, rvest, ggtextures, cowplot, ggimage, polite) # Roboto Condensed font (from hrbrmstrthemes) loadfonts() Top Goalscorers of the Asian Cup

    The first thing I looked at was, “Who are the top goalscorers in the
    history of the Asian Cup?”

    Here I use the polite package to
    take a look at the robots.txt for the web page and see if it is OK to
    web scrape from it. First you pass the URL to the bow() function, check that you are
    indeed allowed to scrape, then use scrape() to retrieve data, and the
    rest is the usual rvest web-scraping workflow.

    topg_url <- "https://en.wikipedia.org/wiki/AFC_Asian_Cup_records_and_statistics" session <- bow(topg_url) ac_top_scorers <- scrape(session) %>% html_nodes("table.wikitable:nth-child(29)") %>% html_table() %>% flatten_df() %>% select(-Ref.) %>% set_names(c("total_goals", "player", "country"))

    For brevity, let’s only take a look at the top 5 goal scorers. I’ll also
    mutate() in a nice image of a soccer ball for the data points on the
    plot.

    ac_top_scorers <- ac_top_scorers %>% head(5) %>% mutate(image = "https://www.emoji.co.uk/files/microsoft-emojis/activity-windows10/8356-soccer-ball.png")

    I made something slightly different to your standard bar graph as I
    use the geom_isotype_col() function from ggtextures to create a bar
    of soccer ball images. Compared to other functions in ggtextures,
    geom_isotype_col() allows each image to correspond to the value of the
    variable you are plotting, in this case 1 ball = 1 goal!

    ac_top_graph <- ac_top_scorers %>% ggplot(aes(x = reorder(player, total_goals), y = total_goals, image = image)) + geom_isotype_col(img_width = grid::unit(1, "native"), img_height = NULL, ncol = NA, nrow = 1, hjust = 0, vjust = 0.5) + coord_flip() + scale_y_continuous(breaks = c(0, 2, 4, 6, 8, 10, 12, 14), expand = c(0, 0), limits = c(0, 15)) + ggthemes::theme_solarized() + labs(title = "Top Scorers of the Asian Cup", subtitle = "Most goals in a single tournament: 8 (Ali Daei, 1996)", y = "Number of Goals", x = NULL, caption = glue(" Source: Wikipedia By @R_by_Ryo")) + theme(text = element_text(family = "Roboto Condensed"), plot.title = element_text(size = 22), plot.subtitle = element_text(size = 14), axis.text = element_text(size = 14), axis.title.x = element_text(size = 16), axis.line.y = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.ticks.y = element_blank()) ac_top_graph

    OK, not bad. However, wouldn’t it be nice to add a bit more context? Specifically,
    which country these players came from. So let’s add some flags along the y-axis!

    There are lots of different ways to do this (like geom_flag() from the
    ggimage package) but I ended up doing it the cowplot way. I had to
    tweak the scales a bit as the flags came in different sizes. When you
    plot, you just insert the image strip into the bar plot with
    axis_canvas() and combine all the parts together with ggdraw()!

    axis_image <- axis_canvas(ac_top_graph, axis = 'y') + draw_image("https://upload.wikimedia.org/wikipedia/commons/c/ca/Flag_of_Iran.svg", y = 13, scale = 1.5) + draw_image("https://upload.wikimedia.org/wikipedia/commons/0/09/Flag_of_South_Korea.svg", y = 10, scale = 1.7) + draw_image("https://upload.wikimedia.org/wikipedia/en/9/9e/Flag_of_Japan.svg", y = 7, scale = 1.7) + draw_image("https://upload.wikimedia.org/wikipedia/commons/f/f6/Flag_of_Iraq.svg", y = 4, scale = 1.6) + draw_image("https://upload.wikimedia.org/wikipedia/commons/a/aa/Flag_of_Kuwait.svg", y = 1, scale = 1.2) ggdraw(insert_yaxis_grob(ac_top_graph, axis_image, position = "left"))

    Ideally I wanted the soccer balls to be the official balls from the
    tournament that the player scored in. However, I couldn’t find a nice
    emoji-fied/icon-ized version and there was also the “small” problem in
    that there was no “official” Asian Cup ball until the 2004 tournament in
    China! You can take a look at the official Asian Cup balls
    here.

    Winners of the Asian Cup

    We saw that the top goal scorers came from Iran, South Korea, Japan,
    Iraq, and Kuwait but did their goal scoring exploits lead their nations
    to glory? Let’s find out!

    When web-scraping I really like using flatten_df() after
    html_table() as I don’t have to use the awkward looking .[[1]]
    within my piped workflow.

    acup_url <- "https://en.wikipedia.org/wiki/AFC_Asian_Cup" session <- bow(acup_url) acup_winners_raw <- scrape(session) %>% html_nodes("table:nth-child(31)") %>% html_table() %>% flatten_df()

    Now I can use the clean_names() function to quickly clean up my column names
    (mainly when I can’t be bothered to set_names() them myself…).

    The next steps are splitting up the number of times a team placed
    between 1st and 3rd and the year that occurred with separate(). Then variants of mutate() are used to tidy the string columns of the data into numeric type. I use gather() so each team will have a row for each of the rank positions (1st-3rd). Finally, I arrange the data in a way that the facets will be ordered in the way that I want.

    acup_winners_clean <- acup_winners_raw %>% janitor::clean_names() %>% slice(1:8) %>% select(-fourth_place, -semi_finalists, -total_top_four) %>% separate(winners, into = c("Champions", "first_place_year"), sep = " ", extra = "merge") %>% separate(runners_up, into = c("Runners-up", "second_place_year"), sep = " ", extra = "merge") %>% separate(third_place, into = c("Third Place", "third_place_year"), sep = " ", extra = "merge") %>% mutate_all(funs(str_replace_all(., "–", "0"))) %>% mutate_at(vars(contains("num")), funs(as.numeric)) %>% mutate(team = if_else(team == "Israel1", "Israel", team)) %>% gather(key = "key", value = "value", -team, -first_place_year, -second_place_year, -third_place_year) %>% mutate(key = key %>% fct_relevel(c("Champions", "Runners-up", "Third Place"))) %>% arrange(key, value) %>% mutate(team = as_factor(team), order = row_number())

    I plot using facets on the “key” variable (containing the rank data) so
    that we can see how many times each team placed as Champions to Third
    Place. I also use the glue() function here to format the multi-line
    captions and titles in a neat way.

    acup_winners_clean %>% ggplot(aes(value, team, color = key)) + geom_point(size = 5) + scale_color_manual(values = c("Champions" = "#FFCC33", "Runners-up" = "#999999", "Third Place" = "#CC6600"), guide = FALSE) + labs(x = "Number of Occurrence", title = "Winners & Losers of the Asian Cup!", subtitle = glue(" Ordered by number of Asian Cup(s) won. Four-time Champions, Japan, only won their first in 1992!"), caption = glue(" Note: Israel was expelled by the AFC in 1974 while Australia joined the AFC in 2006. Source: Wikipedia By @R_by_Ryo")) + facet_wrap(~key) + theme_minimal() + theme(text = element_text(family = "Roboto Condensed"), title = element_text(size = 18), plot.subtitle = element_text(size = 12), axis.title.y = element_blank(), axis.title.x = element_text(size = 12), axis.text.y = element_text(size = 14), axis.text.x = element_text(size = 12), plot.caption = element_text(hjust = 0, size = 10), panel.border = element_rect(fill = NA, colour = "grey20"), panel.grid.minor.x = element_blank(), strip.text = element_text(size = 16))

    Goals per Game

    One new thing I learned very recently, while working on this viz in
    fact, was using magrittr aliases! In this workflow I always wind up having to use .[x] or
    .[[x]] but now I can just use extract() or extract2() respectively
    to do the same thing!

    wiki_url <- "https://en.wikipedia.org" session <- bow(wiki_url) acup_url <- "https://en.wikipedia.org/wiki/AFC_Asian_Cup" session_cup <- bow(acup_url) cup_links <- scrape(session_cup) %>% html_nodes("br+ i a") %>% html_attr("href") %>% magrittr::extract(-17:-18) acup_df <- cup_links %>% as_data_frame() %>% mutate(cup = str_remove(value, "\\/wiki\\/") %>% str_replace_all("_", " ")) %>% rename(link = value)

    Another cool thing I found while scraping this data was the jump_to()
    function that allows you to navigate to a new URL. This makes
    map()-ing over multiple URL links from a base URL very easy! Here, the
    base URL is the AFC Asian Cup Wikipedia page and the function iterates
    over each of the URL links of the respective tournament pages.
    Another way that I could’ve done this was to map() over the different
    dates of the tournaments as the Wikipedia page of each edition of the
    Asian Cup only differed in the “year” appended at the beginning of the
    URL.

    goals_info <- function(x) { goal_info <- scrape(session) %>% jump_to(x) %>% html_nodes(".vcalendar") %>% html_table(header = FALSE) %>% flatten_df() %>% spread(key = X1, value = X2) %>% select(`Goals scored`) %>% mutate(`Goals scored` = str_remove_all(`Goals scored`, pattern = ".*\\(") %>% str_extract_all("\\d+\\.*\\d*") %>% as.numeric) } team_num_info <- function(x) { team_num_info <- scrape(session) %>% jump_to(x) %>% html_nodes(".vcalendar") %>% html_table(header = FALSE) %>% flatten_df() %>% spread(key = X1, value = X2) %>% select(`Teams`) %>% mutate(`Teams` = as.numeric(`Teams`)) } match_num_info <- function(x) { match_num_info <- scrape(session) %>% jump_to(x) %>% html_nodes(".vcalendar") %>% html_table(header = FALSE) %>% flatten_df() %>% spread(key = X1, value = X2) %>% janitor::clean_names() %>% select(matches_played) %>% mutate(matches_played = as.numeric(matches_played)) } # all together: goals_data <- acup_df %>% mutate(goals_per_game = map(acup_df$link, goals_info) %>% unlist, team_num = map(acup_df$link, team_num_info) %>% unlist, match_num = map(acup_df$link, match_num_info) %>% unlist)

    Next, I clean it up a bit and add in the number of teams that participated
    in each tournament.

    ac_goals_df <- goals_data %>% mutate(label = cup %>% str_extract("[0-9]+") %>% str_replace("..", "'"), team_num = case_when( is.na(team_num) ~ 16, TRUE ~ team_num )) %>% arrange(cup) %>% mutate(label = factor(label, label), team_num = c(4, 4, 4, 5, 6, 6, 10, 10, 10, 8, 12, 12, 16, 16, 16, 16)) glimpse(ac_goals_df) ## Observations: 16 ## Variables: 6 ## $ link "/wiki/1956_AFC_Asian_Cup", "/wiki/1960_AFC_Asi... ## $ cup "1956 AFC Asian Cup", "1960 AFC Asian Cup", "19... ## $ goals_per_game 4.50, 3.17, 2.17, 3.20, 2.92, 2.50, 3.17, 1.83,... ## $ team_num 4, 4, 4, 5, 6, 6, 10, 10, 10, 8, 12, 12, 16, 16... ## $ match_num 6, 6, 6, 10, 13, 10, 24, 24, 24, 16, 26, 26, 32... ## $ label '56, '60, '64, '68, '72, '76, '80, '84, '88, '9...

    Now we make a line graph but with lots of annotate() code to add in
    comments, labels, and segments for the labels. At the end I use
    geom_emoji() to add a soccer ball to the plot for each of the data
    points.

    plot <- ac_goals_df %>% ggplot(aes(x = label, y = goals_per_game, group = 1)) + geom_line() + scale_y_continuous(limits = c(NA, 5.35), breaks = c(1.5, 2, 2.5, 3, 3.5, 4, 4.5)) + labs(x = "Tournament (Year)", y = "Goals per Game") + theme_minimal() + theme(text = element_text(family = "Roboto Condensed"), axis.title = element_text(size = 12), axis.text = element_text(size = 12)) + annotate(geom = "label", x = "'56", y = 5.15, family = "Roboto Condensed", color = "black", label = "Total Number of Games Played:", hjust = 0) + annotate(geom = "text", x = "'60", y = 4.9, label = "6", family = "Roboto Condensed") + annotate(geom = "segment", x = 1, xend = 3, y = 4.8, yend = 4.8) + annotate(geom = "text", x = "'68", y = 4.9, label = "10", family = "Roboto Condensed") + annotate(geom = "segment", x = 3.8, xend = 4.2, y = 4.8, yend = 4.8) + annotate(geom = "text", x = "'72", y = 4.9, label = "13", family = "Roboto Condensed") + annotate(geom = "segment", x = 4.8, xend = 5.2, y = 4.8, yend = 4.8) + annotate(geom = "text", x = "'76", y = 4.9, label = "10", family = "Roboto Condensed") + annotate(geom = "segment", x = 5.8, xend = 6.2, y = 4.8, yend = 4.8) + annotate(geom = "text", x = "'84", y = 4.9, label = "24", family = "Roboto Condensed") + annotate(geom = "segment", x = 7, xend = 9, y = 4.8, yend = 4.8) + annotate(geom = "text", x = "'92", y = 4.9, label = "16", family = "Roboto Condensed") + annotate(geom = "segment", x = 9.8, xend = 10.2, y = 4.8, yend = 4.8) + annotate(geom = "text", x = 11.5, y = 4.9, label = "26", family = "Roboto Condensed") + annotate(geom = "segment", x = 11, xend = 12, y = 4.8, yend = 4.8) + annotate(geom = "text", x = 14.5, y = 4.9, label = "32", family = "Roboto Condensed") + annotate(geom = "segment", x = 13, xend = 16, y = 4.8, yend = 4.8) + annotate(geom = "text", x = 9, y = 4, family = "Roboto Condensed", label = glue(" Incredibly low amount of goals in Group B (15 in 10 Games) and in Knock-Out Stages (4 goals in 4, only 1 scored in normal time)")) + annotate(geom = "segment", x = 9, xend = 9, y = 1.65, yend = 3.75, color = "red") + ggimage::geom_emoji(aes(image = '26bd'), size = 0.03) plot

    ggsave(filename = glue("{here::here('Asian Cup 2019')}/gpg_plot_final.png"), width = 8, height = 7, dpi = 300) plot <- image_read(glue("{here::here('Asian Cup 2019')}/gpg_plot_final.png"))

    However, I’m not finished yet! I wanted to try to make this look a bit
    more “official” so I attempted to add the Asian Cup logo on the top
    right corner. There are probably alternative ways to how I did it below,
    especially by using grobs, but I was reminded of
    this blog post by Daniel
    Hadley
    who used the magick package
    to add a footer with a logo onto a ggplot object. I’ve used magick
    before for animations and this was a good chance to try it out for image
    editing. Compared to Daniel Hadley’s example I needed to have the logo
    on the right corner so I had to create a blank canvas with image_blank() and then placing everything on top of that with image_composite() and image_append().

    logo_raw <- image_read("https://upload.wikimedia.org/wikipedia/en/a/ad/2019_afc_asian_cup_logo.png") logo_proc <- logo_raw %>% image_scale("600") # create blank canvas a <- image_blank(width = 1000, height = 100, color = "white") # combine with logo image and shift logo to the right b <- image_composite(image_scale(a, "x100"), image_scale(logo_proc, "x75"), offset = "+880+25") # add in the title text logo_header <- b %>% image_annotate(text = glue("Goals per Game Throughout the History of the Asian Cup"), color = "black", size = 24, font = "Roboto Condensed", location = "+63+50", gravity = "northwest") # combine it all together! final2_plot <- image_append(image_scale(c(logo_header, plot), "1000"), stack = TRUE) # image_write(final2_plot, # glue("{here::here('Asian Cup 2019')}/gpg_plot_final.png")) final2_plot

    All in all it took a while to tweak the positions of the text and logo
    image but for my first try it worked well. There is definitely room for
    improvement in regards to sizing and scaling though.

    Ultimately, I couldn’t find much information on why those tournaments in
    the 80s in particular were such low scoring affairs. I wasn’t alive to
    watch those games on TV nor could I find any illuminating articles or
    blog posts on the style of Asian football back then… This was also
    before Japan really got into soccer so there wasn’t anything I could
    find in Japanese either.

    Japan’s Record vs. Historical Rivals and Group D Opponents

    Japan is the most successful team in the competition with 4
    championships but who are their opponents in the group stages and how
    have they fared against them in the past? While I’m at it I will also check Japan’s
    records against long-time continental rivals such as Iran, South Korea,
    Saudi Arabia and more recently, Australia.

    The data I’m going to use comes from
    Kaggle
    which has all international football results from 1872 to the World Cup
    final last year. To add in the federation affiliation (UEFA, AFC, etc.)
    for each of the countries I slightly modified some code from one of the
    kernels, “A Journey Through The History of
    Soccer”

    by PH Julien.

    federation_files <- Sys.glob("../data/federation_affiliations/*") df_federations = data.frame(country = NULL, federation = NULL) for (f in federation_files) { federation = basename(f) content = read.csv(f, header=FALSE) content <- cbind(content,federation=rep(federation, dim(content)[1])) df_federations <- rbind(df_federations, content) } colnames(df_federations) <- c("country", "federation") df_federations <- df_federations %>% mutate(country = as.character(country) %>% str_trim(side = "both"))

    Now to load the results data and then join it with the affiliations
    data.

    results_raw <- read_csv("../data/results.csv") results_japan_raw <- results_raw %>% filter(home_team == "Japan" | away_team == "Japan") %>% rename(venue_country = country, venue_city = city) %>% mutate(match_num = row_number()) # combine with federation affiliations results_japan_home <- results_japan_raw %>% left_join(df_federations, by = c("home_team" = "country")) %>% mutate(federation = as.character(federation)) %>% rename(home_federation = federation) results_japan_away <- results_japan_raw %>% left_join(df_federations, by = c("away_team" = "country")) %>% mutate(federation = as.character(federation)) %>% rename(away_federation = federation) # combine home-away results_japan_cleaned <- results_japan_home %>% full_join(results_japan_away)

    Next I need to edit some of the continents for teams that didn’t have a
    match in the federation affiliation data set, for example, “South Korea”
    is “Korea Republic” in the Kaggle data set.

    results_japan_cleaned <- results_japan_cleaned %>% mutate( home_federation = case_when( home_team %in% c( "China", "Manchukuo", "Burma", "Korea Republic", "Vietnam Republic", "Korea DPR", "Brunei") ~ "AFC", home_team == "USA" ~ "Concacaf", home_team == "Bosnia-Herzegovina" ~ "UEFA", TRUE ~ home_federation), away_federation = case_when( away_team %in% c( "China", "Manchukuo", "Burma", "Korea Republic", "Vietnam Republic", "Korea DPR", "Brunei", "Taiwan") ~ "AFC", away_team == "USA" ~ "Concacaf", away_team == "Bosnia-Herzegovina" ~ "UEFA", TRUE ~ away_federation ))

    Now that it’s nice and cleaned up I can reshape it so that the data is
    set from Japan’s perspective.

    results_jp_asia <- results_japan_cleaned %>% # filter only for Japan games and AFC opponents filter(home_team == "Japan" | away_team == "Japan", home_federation == "AFC" & away_federation == "AFC") %>% select(-contains("federation"), -contains("venue"), -neutral, -match_num, date, home_team, home_score, away_team, away_score, tournament) %>% # reshape columns to Japan vs. opponent mutate( opponent = case_when( away_team != "Japan" ~ away_team, home_team != "Japan" ~ home_team), home_away = case_when( home_team == "Japan" ~ "home", away_team == "Japan" ~ "away"), japan_goals = case_when( home_team == "Japan" ~ home_score, away_team == "Japan" ~ away_score), opp_goals = case_when( home_team != "Japan" ~ home_score, away_team != "Japan" ~ away_score)) %>% # label results from Japan's perspective mutate( result = case_when( japan_goals > opp_goals ~ "Win", japan_goals < opp_goals ~ "Loss", japan_goals == opp_goals ~ "Draw"), result = result %>% as_factor() %>% fct_relevel(c("Win", "Draw", "Loss"))) %>% select(-contains("score"), -contains("team"))

    With all that done we can take a look at how Japan have done against
    certain opponents by using filter().

    results_jp_asia %>% filter(opponent == "Jordan", tournament == "AFC Asian Cup") ## # A tibble: 3 x 7 ## date tournament opponent home_away japan_goals opp_goals result ## ## 1 2004-07-31 AFC Asian Cup Jordan home 1 1 Draw ## 2 2011-01-09 AFC Asian Cup Jordan home 1 1 Draw ## 3 2015-01-20 AFC Asian Cup Jordan home 2 0 Win

    Unfortunately, this data set doesn’t go into extra-time or penalty wins
    as Japan’s Quarter-Final meeting with Jordan in 2004 ended with Japan
    securing a route to the semis, 4-3 on penalties!

    I can create a function that’ll filter for certain opponents and
    tournaments and aggregate the results. With the second argument being
    ..., tidyeval allows me to input any kind of filter condition for an
    opponent, tournament, etc. The if else statement protects against
    cases where Japan never had that type of result against an opponent and
    makes sure that a column populated by 0s is created.

    japan_versus <- function(data, ...) { # filter filter_vars <- enquos(...) jp_vs <- data %>% filter(!!!filter_vars) %>% # count results type per opponent group_by(result, opponent) %>% mutate(n = n()) %>% ungroup() %>% # sum amount of goals by Japan and opponent group_by(result, opponent) %>% summarize(j_g = sum(japan_goals), o_g = sum(opp_goals), n = n()) %>% ungroup() %>% # spread results over multiple columns spread(result, n) %>% # 1. failsafe against no type of result against an opponent # 2. sum up counts per opponent group_by(opponent) %>% mutate(Win = if("Win" %in% names(.)){return(Win)} else{return(0)}, Draw = if("Draw" %in% names(.)){return(Draw)} else{return(0)}, Loss = if("Loss" %in% names(.)){return(Loss)} else{return(0)}) %>% summarize(Win = sum(Win, na.rm = TRUE), Draw = sum(Draw, na.rm = TRUE), Loss = sum(Loss, na.rm = TRUE), `Goals For` = sum(j_g), `Goals Against` = sum(o_g)) return(jp_vs) }

    Now let’s try it out a bit.

    japan_versus(data = results_jp_asia, opponent == "China") ## # A tibble: 1 x 6 ## opponent Win Draw Loss `Goals For` `Goals Against` ## ## 1 China 14 8 10 54 45

    I can put in multiple filter conditions if needed as well.

    japan_versus(data = results_jp_asia, home_away == "home", opponent %in% c("Palestine", "Vietnam", "India")) ## # A tibble: 3 x 6 ## opponent Win Draw Loss `Goals For` `Goals Against` ## ## 1 India 2 0 0 13 0 ## 2 Palestine 1 0 0 4 0 ## 3 Vietnam 1 0 0 1 0

    As you can see Japan has never lost or drawn against India, Palestine,
    or Vietnam so in the data there wouldn’t have been any rows with “Loss”
    in the results column. With the function I created I was able to impute
    results that didn’t exist and fill them in with 0s!

    Let’s check Japan’s performance against our main rivals in the Asian
    Cup. Here I make the tables look a lot nicer with the options in the
    kable and kableExtra packages.

    results_jp_asia %>% japan_versus(opponent %in% c("Iran", "Korea Republic", "Saudi Arabia"), tournament == "AFC Asian Cup") %>% knitr::kable(format = "html", caption = "Japan vs. Historic Rivals in the Asian Cup") %>% kableExtra::kable_styling(full_width = FALSE) %>% kableExtra::add_header_above(c(" ", "Result" = 3, "Goals" = 2)) Japan vs. Historic Rivals in the Asian Cup
    Result

    Goals

    opponent Win Draw Loss Goals For Goals Against Iran 1 2 0 1 0 Korea Republic 0 2 1 2 4 Saudi Arabia 4 0 1 13 4

    Now let’s take a look at how Japan have historically played against the
    other teams in Group F of this year’s Asian Cup (in all competitions).

    results_jp_asia %>% japan_versus(opponent %in% c("Oman", "Uzbekistan", "Turkmenistan")) %>% knitr::kable(format = "html", caption = "Japan's Record vs. Group F Teams") %>% kableExtra::kable_styling(full_width = FALSE) %>% kableExtra::add_header_above(c(" ", "Result" = 3, "Goals" = 2)) Japan’s Record vs. Group F Teams
    Result

    Goals

    opponent Win Draw Loss Goals For Goals Against Oman 8 3 0 19 4 Uzbekistan 6 3 1 28 9

    We see no rows here for Turkmenistan. This is due to the fact that until
    just this past week Japan had never played against them in a
    friendly or competitive game!

    Conclusion

    In this blog post I went through a few examples of visualizing some very
    basic stats on the Asian Cup happening this month. I’ll devote this last
    section on my views on this edition of the Asian Cup and Japan’s national
    team.

    Although Japan’s first game was quite horrible I’m hoping it’ll wake
    the players and coaches out of their complacency and not underestimate our
    opponents in the next two games. Thankfully, South Korea should be on the other side of the bracket for the knock-out stages and we would also only meet Iran in the semifinals
    (provided both teams finish top of their respective groups). Japan could
    meet Australia in the Quarters but without Aaron Mooy they’re a much
    weaker side as shown in their abject loss to Jordan in their opening
    match.

    Even with losing our new star, Shoya Nakajima, to injury the fact that we
    can replace him with a player of the calibre of Takashi Inui and with
    Hannover regular, Genki Haraguchi, stepping up from the bench shows how
    much Japanese football has progressed these past 25 years.

    It’s a changing of the guard for Japan after the retirement of captain Hasebe
    and Keisuke Honda but with more Japanese players headed to Europe from
    a young age these are exciting times to be a Japanese football fan. It’s been
    quite awe-inspiring seeing how the number of Japanese players playing for
    foreign clubs have been steadily increasing since the 1988 Asian Cup squad (Japan’s first
    appearance at a major tournament, minus the Olympics).

    This tournament is the first hurdle for this new generation of players as they
    fight to become regulars for the national team and begin the journey to the next
    World Cup in 2022. Here’s hoping for another great month of football!



    (Image Source: Nikkan Sports)

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R by R(yo). R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Roll Your Own Federal Government Shutdown-caused SSL Certificate Expiration Monitor in R

    Thu, 01/10/2019 - 23:22

    (This article was first published on R – rud.is, and kindly contributed to R-bloggers)

    By now, even remote villages on uncharted islands in the Pacific know that the U.S. is in the midst of a protracted partial government shutdown. It’s having real impacts on the lives of Federal government workers but they aren’t the only ones. Much of the interaction Federal agencies have with the populace takes place online and the gateway to most of these services/information is a web site.

    There are Federal standards that require U.S. government web sites to use SSL/TLS certificates and those certificates have something in common with, say, a loaf of bread you buy at the store: they expire. In all but the best of orgs — or we zany folks who use L e t ‘ s E n c r y p t and further propel internet denizens into a false sense of safety & privacy — renewing certificates involves manual labor/human intervention. For a good chunk of U.S. Federal agencies, those particular humans aren’t around. If a site’s SSL certificate expires and isn’t re-issued, it causes browsers to do funny things, like this:

    Now, some of these sites are configured improperly in many ways, including them serving pages on both http and https (vs redirecting to https immediately upon receiving an http connection). But, browsers like Chrome will generally try https first and scare you into not viewing the site.

    But, how big a problem could this really be? We can find out with a fairly diminutive R script that:

    • grabs a list of Federal agency domains (thanks to the GSA)
    • tries to make a SSL/TLS connection (via the openssl package) to the apex domain or www. prefixed apex domain
    • find the expiration date for the cert
    • do some simple date math

    I’ve commented the script below pretty well so I’ll refrain from further blathering:

    library(furrr) library(openssl) library(janitor) library(memoise) library(hrbrthemes) library(tidyverse) # fetch the GSA CSV: read_csv( file = "https://raw.githubusercontent.com/GSA/data/master/dotgov-domains/current-federal.csv", col_types = "ccccccc" ) %>% janitor::clean_names() -> xdf # make openssl::download_ssl_cert calls safer in the even there # are network/connection issues .dl_cert <- possibly(openssl::download_ssl_cert, otherwise = NULL) # memoise the downloader just in case we need to break the iterator # below or another coding error causes it to break (the cached values # will go away in a new R session or if you manually purge them) dl_cert <- memoise::memoise(.dl_cert) # we'll do this in parallel to save time (~1,200 domains) plan(multiprocess) # now follow the process described in the bullet points future_map_dfr(xdf$domain_name, ~{ who <- .x crt <- dl_cert(who) if (!is.null(crt)) { # shld be the first cert and expires is second validity field expires <- crt[[1]]$validity[2] } else { crt <- dl_cert(sprintf("www.%s", who)) # may be on www b/c "gov" if (!is.null(crt)) { expires <- crt[[1]]$validity[2] } else { expires <- NA_character_ } } # keep a copy of the apex domain, the expiration field and the cert # (in the event you want to see just how un-optimized the U.S. IT # infrastructure is by how many stupid vendors they use for certs) tibble( who = who, expires = expires, cert = list(crt) ) }) -> cdf

    Now, lets make strings into proper dates, count only the dates starting with the date of the shutdown to the end of 2019 (b/c the reckless human at the helm is borderline insane enough to do that) and plot the timeline:

    filter(cdf, !is.na(expires)) %>% mutate( expires = as.Date( as.POSIXct(expires, format="%b %d %H:%M:%S %Y") ) ) %>% arrange(expires) count(expires) %>% filter( expires >= as.Date("2018-12-22"), expires <= as.Date("2019-12-31") ) %>% ggplot(aes(expires, n)) + geom_vline( xintercept = Sys.Date(), linetype="dotted", size=0.25, color = "white" ) + geom_label( data = data.frame(), aes(x = Sys.Date(), y = Inf, label = "Today"), color = "black", vjust = 1 ) + geom_segment(aes(xend=expires, yend=0), color = ft_cols$peach) + scale_x_date(name=NULL, date_breaks="1 month", date_labels="%b") + scale_y_comma("# Federal Agency Certs") + labs(title = "2019 Federal Agency ShutdownCertpoalypse") + theme_ft_rc(grid="Y")

    Now, I’m unwarrantedly optimistic that this debacle could be over by the end of January. How many certs (by agency) could go bad by then?

    left_join(cdf, xdf, by=c("who"="domain_name")) %>% mutate( expires = as.Date( as.POSIXct(expires, format="%b %d %H:%M:%S %Y") ) ) %>% filter( expires >= as.Date("2018-12-22"), expires <= as.Date("2019-01-31") ) %>% count(agency, sort = TRUE) ## # A tibble: 10 x 2 ## agency n ## ## 1 Government Publishing Office 8 ## 2 Department of Commerce 4 ## 3 Department of Defense 3 ## 4 Department of Housing and Urban Development 3 ## 5 Department of Justice 3 ## 6 Department of Energy 1 ## 7 Department of Health and Human Services 1 ## 8 Department of State 1 ## 9 Department of the Interior 1 ## 10 Department of the Treasury 1

    Ugh.

    FIN

    Not every agency is fully shutdown and not all workers in charge of cert renewals are furloughed (or being forced to work without pay). But, this one other area shows the possible unintended consequences of making rash, partisan decisions (something both Democrats & Republicans excel at).

    You can find the contiguous R code at 2018-01-10-shutdown-certpocalypse.R and definitely try to explore the contents of those certificates.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – rud.is. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Who is the greatest finisher in soccer?

    Thu, 01/10/2019 - 18:00

    (This article was first published on Revolutions, and kindly contributed to R-bloggers)

    It's relatively easy to find the player who has scored the most goals in the last 12 years (hello, Lionel Messi). But which professional football (soccer) player is the best finisher, i.e. which player is most likely to put a shot they take into the goal?

    You can't simply use the conversion rate (the ratio of shots taken to goals scored), because some players play more shots a long way from the goal while others get more set-ups near the goal. To correct for that, the blog Barça Numeros used a Bayesian beta-binomial regression model to weight the conversion rates by distance, and then ranked each player for their goal scoring rate at 25 distances from the goal. (The analysis was performed in R using techniques described in David Robinson's book Introduction to Empirical Bayes: Examples from Baseball Statistics, which is available online.)

    Here's a chart comparing the ranks of Messi, Zlatan Ibrahimovic, Ronaldo Cristiano, Paulo Dybala and Allesandro Del Piero, at each distance, showing Messi to be the best finisher of these players at all ranges:

    For an overall ranking for each player, the blog used the median rank across the 25 shot distances — a ranking that places Lionel Messi as the greatest finisher of the last 12 years.

    For more details behind the analysis (and many more charts), check out the complete blog post linked below.

    Barça Numeros: Who are the best finishers in contemporary football? (via @barcanumbers)

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: Revolutions. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Waffle Geoms & Other Miscellaneous In-Development Package Updates

    Thu, 01/10/2019 - 14:56

    (This article was first published on R – rud.is, and kindly contributed to R-bloggers)

    More than just sergeant has been hacked on recently, so here’s a run-down of various updates:

    waffle

    The square pie chart generating waffle package now contains a nascent geom_waffle() so you can do things like this:

    library(hrbrthemes) library(waffle) library(tidyverse) tibble( parts = factor(rep(month.abb[1:3], 3), levels=month.abb[1:3]), values = c(10, 20, 30, 6, 14, 40, 30, 20, 10), fct = c(rep("Thing 1", 3), rep("Thing 2", 3), rep("Thing 3", 3)) ) -> xdf ggplot(xdf, aes(fill=parts, values=values)) + geom_waffle(color = "white", size=1.125, n_rows = 6) + facet_wrap(~fct, ncol=1) + scale_x_discrete(expand=c(0,0)) + scale_y_discrete(expand=c(0,0)) + ggthemes::scale_fill_tableau(name=NULL) + coord_equal() + labs( title = "Faceted Waffle Geoms" ) + theme_ipsum_rc(grid="") + theme_enhance_waffle()

    and get:

    It’s super brand new so pls file issues (wherev you like besides blog comments as they’re not conducive to package triaging) if anything breaks or you need more aesthetic configuration options. NOTE: You need to use the 1.0.0 branch as noted in the master branch README.

    markdowntemplates

    I had to take a quick peek at markdowntemplates due to a question from a blog reader about the Jupyter notebook generation functionality. While I was in the code I added two new bits to the knit: markdowntemplates::to_jupyter code. First is the option to specify a run: parameter in the YAML header so you can just knit the document to a Jupyter notebook without executing the chunks:

    --- title: "ggplot2 example" knit: markdowntemplates::to_jupyter run: false ---

    If run is not present it defaults to true.

    The other add is a bit of intelligence to whether it should include %load_ext rpy2.ipython (the Jupyter “magic” that lets it execute R chunks). If no R code chunks are present, rpy2.ipython will not be loaded.

    securitytrails

    SecurityTrails is a service for cybersecurity researchers & defenders that provides tools and an API to aid in querying for all sorts of current and historical information on domains and IP addresses. It now (finally) has a mostly-complete R package securitytrails. They’re research partners of $DAYJOB and their API is so give it a spin if you are looking to broaden your threat-y API collection.

    astools

    Keeping the cyber theme going for a bit, next up is astools) which are “Tools to Work With Autonomous System (‘AS’) Network and Organization Data”. Autonomous Systems (AS) are at the core of the internet (we all live in one) and this package provides tools to fetch AS data/metadata from various sources and work with it in R. For instance, we can grab the latest RouteViews data:

    (rv_df <- routeviews_latest()) ## # A tibble: 786,035 x 6 ## cidr asn minimum_ip maximum_ip min_numeric max_numeric ## ## 1 1.0.0.0/24 13335 1.0.0.0 1.0.0.255 16777216 16777471 ## 2 1.0.4.0/22 56203 1.0.4.0 1.0.7.255 16778240 16779263 ## 3 1.0.4.0/24 56203 1.0.4.0 1.0.4.255 16778240 16778495 ## 4 1.0.5.0/24 56203 1.0.5.0 1.0.5.255 16778496 16778751 ## 5 1.0.6.0/24 56203 1.0.6.0 1.0.6.255 16778752 16779007 ## 6 1.0.7.0/24 56203 1.0.7.0 1.0.7.255 16779008 16779263 ## 7 1.0.16.0/24 2519 1.0.16.0 1.0.16.255 16781312 16781567 ## 8 1.0.64.0/18 18144 1.0.64.0 1.0.127.255 16793600 16809983 ## 9 1.0.128.0/17 23969 1.0.128.0 1.0.255.255 16809984 16842751 ## 10 1.0.128.0/18 23969 1.0.128.0 1.0.191.255 16809984 16826367 ## # ... with 786,025 more rows

    That, in turn, can work with iptools::ip_to_asn() so we can figure out which AS an IP address lives in:

    rv_trie <- as_asntrie(rv_df) iptools::ip_to_asn(rv_trie, "174.62.167.97") ## [1] "7922"

    It can also fetch AS name info:

    asnames_current() ## # A tibble: 63,453 x 4 ## asn handle asinfo iso2c ## ## 1 1 LVLT-1 Level 3 Parent, LLC US ## 2 2 UDEL-DCN University of Delaware US ## 3 3 MIT-GATEWAYS Massachusetts Institute of Technology US ## 4 4 ISI-AS University of Southern California US ## 5 5 SYMBOLICS Symbolics, Inc. US ## 6 6 BULL-HN Bull HN Information Systems Inc. US ## 7 7 DSTL DSTL GB ## 8 8 RICE-AS Rice University US ## 9 9 CMU-ROUTER Carnegie Mellon University US ## 10 10 CSNET-EXT-AS CSNET Coordination and Information Center (CSNET-CIC) US ## # ... with 63,443 more rows

    which we can use for further enrichment:

    routeviews_latest() %>% left_join(asnames_current()) ## Joining, by = "asn" ## # A tibble: 786,035 x 9 ## cidr asn minimum_ip maximum_ip min_numeric max_numeric handle asinfo iso2c ## ## 1 1.0.0.0/24 13335 1.0.0.0 1.0.0.255 16777216 16777471 CLOUDFLARENET Cloudflare, Inc. US ## 2 1.0.4.0/22 56203 1.0.4.0 1.0.7.255 16778240 16779263 GTELECOM-AUSTRAL… Gtelecom-AUSTRALIA AU ## 3 1.0.4.0/24 56203 1.0.4.0 1.0.4.255 16778240 16778495 GTELECOM-AUSTRAL… Gtelecom-AUSTRALIA AU ## 4 1.0.5.0/24 56203 1.0.5.0 1.0.5.255 16778496 16778751 GTELECOM-AUSTRAL… Gtelecom-AUSTRALIA AU ## 5 1.0.6.0/24 56203 1.0.6.0 1.0.6.255 16778752 16779007 GTELECOM-AUSTRAL… Gtelecom-AUSTRALIA AU ## 6 1.0.7.0/24 56203 1.0.7.0 1.0.7.255 16779008 16779263 GTELECOM-AUSTRAL… Gtelecom-AUSTRALIA AU ## 7 1.0.16.0/24 2519 1.0.16.0 1.0.16.255 16781312 16781567 VECTANT ARTERIA Networks Corporat… JP ## 8 1.0.64.0/18 18144 1.0.64.0 1.0.127.255 16793600 16809983 AS-ENECOM Energia Communications,In… JP ## 9 1.0.128.0/17 23969 1.0.128.0 1.0.255.255 16809984 16842751 TOT-NET TOT Public Company Limited TH ## 10 1.0.128.0/18 23969 1.0.128.0 1.0.191.255 16809984 16826367 TOT-NET TOT Public Company Limited TH ## # ... with 786,025 more rows

    Note that routeviews_latest() and asnames_current() cache the data so there is no re-downloading unless you clear the local cache.

    docxtractr

    The docxtractr package recently got a CRAN push due to some changes in the tibble but it also include a new feature that lets you accept or reject “tracked changes” before trying to extract tables/comments from a document without harming/changing the original document.

    ednstest

    DNS Flag Day is fast approaching. What is “DNS Flag Day”? It’s a day when yet-another cabal of large-scale DNS providers and tech heavy hitters decided that they know what’s best for the internet and are mandating compliance with RFC 6891 (EDNS). Honestly, there’s no good reason to run crappy DNS servers and no good reason not to support EDNS.

    You could just go to the flag day site and test your provider (by entering your domain name, if you have one). But, you can also load the package, and run it locally (it still calls their API since it’s open and provides a very detailed results page if your DNS server isn’t compliant). You can just run it to get compact output and an auto-load of the report page in your browser or save off the returned object and inspect it to see what tests failed.

    I ran it on a few domains that are likely familiar to readers and this is what it showed:

    edns_test("rud.is") ## EDNS compliance test for [rud.is] has ✔ PASSED! ## Report URL: https://ednscomp.isc.org/ednscomp/60049cb032 edns_test("rstudio.com") ## EDNS compliance test for [rstudio.com] has ✖ FAILED ## Report URL: https://ednscomp.isc.org/ednscomp/54e2057229 edns_test("r-project.org") ## EDNS compliance test for [r-project.org] has ✔ PASSED! ## Report URL: https://ednscomp.isc.org/ednscomp/839ee9c9af

    The print() function in the package also has some minimal cli and crayon usage in it if you’re looking to jazz up your R console output.

    ulid

    Finally, there’s ulid which is a package to make “Universally Unique Lexicographically Sortable Identifiers in R”. These ULIDs have the following features:

    • 128-bit compatibility with UUID
    • 1.21e+24 unique ULIDs per millisecond
    • Lexicographically sortable!
    • Canonically encoded as a 26 character string, as opposed to the 36 character UUID
    • Uses Crockford’s base32 for better efficiency and readability (5 bits per character)
    • Case insensitive
    • No special characters (URL safe)
    • Monotonic sort order (correctly detects and handles the same millisecond)

    They’re made up of

    01AN4Z07BY 79KA1307SR9X4MV3 |----------| |----------------| Timestamp Randomness 48bits 80bits

    The timestamp is a 48 bit integer representing UNIX-time in milliseconds and the randomness is an 80 bit cryptographically secure source of randomness (where possible). Read more in the full specification.

    You can get one ULID easily:

    ulid::ULIDgenerate() ## [1] "0001E2ERKHVPKZJ6FA6ZWHH1KS"

    Generate a whole bunch of ’em:

    (u <- ulid::ULIDgenerate(20)) ## [1] "0001E2ERKHVX5QF5D59SX2E65T" "0001E2ERKHKD6MHKYB1G8JHN5X" "0001E2ERKHTK0XEHVV2G5877K9" "0001E2ERKHKFGG5NPN24PC1N0W" ## [5] "0001E2ERKH3F48CAKJCVMSCBKS" "0001E2ERKHF3N0B94VK05GTXCW" "0001E2ERKH24GCJ2CT3Z5WM1FD" "0001E2ERKH381RJ232KK7SMWQW" ## [9] "0001E2ERKH7NAZ1T4HR4ZRQRND" "0001E2ERKHSATC17G2QAPYXE0C" "0001E2ERKH76R83NFST3MZNW84" "0001E2ERKHFKS52SD8WJ8FHXMV" ## [13] "0001E2ERKHQM6VBM5JB235JJ1W" "0001E2ERKHXG2KNYWHHFS8X69Z" "0001E2ERKHQW821KPRM4GQFANJ" "0001E2ERKHD5KWTM5S345A3RP4" ## [17] "0001E2ERKH0D901W6KX66B1BHE" "0001E2ERKHKPHZBFSC16FC7FFC" "0001E2ERKHQQH7315GMY8HRYXV" "0001E2ERKH016YBAJAB7K9777T"

    and “unmarshal” them (which gets you the timestamp back):

    unmarshal(u) ## ts rnd ## 1 2018-12-29 07:02:57 VX5QF5D59SX2E65T ## 2 2018-12-29 07:02:57 KD6MHKYB1G8JHN5X ## 3 2018-12-29 07:02:57 TK0XEHVV2G5877K9 ## 4 2018-12-29 07:02:57 KFGG5NPN24PC1N0W ## 5 2018-12-29 07:02:57 3F48CAKJCVMSCBKS ## 6 2018-12-29 07:02:57 F3N0B94VK05GTXCW ## 7 2018-12-29 07:02:57 24GCJ2CT3Z5WM1FD ## 8 2018-12-29 07:02:57 381RJ232KK7SMWQW ## 9 2018-12-29 07:02:57 7NAZ1T4HR4ZRQRND ## 10 2018-12-29 07:02:57 SATC17G2QAPYXE0C ## 11 2018-12-29 07:02:57 76R83NFST3MZNW84 ## 12 2018-12-29 07:02:57 FKS52SD8WJ8FHXMV ## 13 2018-12-29 07:02:57 QM6VBM5JB235JJ1W ## 14 2018-12-29 07:02:57 XG2KNYWHHFS8X69Z ## 15 2018-12-29 07:02:57 QW821KPRM4GQFANJ ## 16 2018-12-29 07:02:57 D5KWTM5S345A3RP4 ## 17 2018-12-29 07:02:57 0D901W6KX66B1BHE ## 18 2018-12-29 07:02:57 KPHZBFSC16FC7FFC ## 19 2018-12-29 07:02:57 QQH7315GMY8HRYXV ## 20 2018-12-29 07:02:57 016YBAJAB7K9777T

    and can even supply your own timestamp:

    (ut <- ts_generate(as.POSIXct("2017-11-01 15:00:00", origin="1970-01-01"))) ## [1] "0001CZM6DGE66RJEY4N05F5R95" unmarshal(ut) ## ts rnd ## 1 2017-11-01 15:00:00 E66RJEY4N05F5R95 FIN

    Kick the tyres & file issues/PRs as needed and definitely give sr.ht a spin for your code-hosting needs. It’s 100% free and open source software made up of mini-services that let you use only what you need. Zero javacript on site and no tracking/adverts. Plus, no evil giant megacorps doing heaven knows what with your browser, repos, habits and intellectual property.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – rud.is. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Linguistic Signals of Album Quality: A Predictive Analysis of Pitchfork Review Scores Using Quanteda

    Thu, 01/10/2019 - 08:55

    (This article was first published on Method Matters, and kindly contributed to R-bloggers)

    In this post we will return to the Pitchfork music review data, parts of which I’ve analyzed in previous posts. Our goal here will be to use text mining and natural language processing (NLP) to understand linguistic signals of album quality. This type of analysis helps us understand what Pitchfork reviewers appreciate or dislike, and gives us a sense of the criteria which distinguish good albums from bad ones. We will use the R package Quanteda, developed by Ken Benoit and colleagues, to do the text mining and NLP. We will use the glmnet package to build a LASSO regression model to predict the album review score from the review text.

    The Data

    As described in previous posts, these data were obtained from the Kaggle website. In this analysis, we will use all 18,389 unique reviews in the data. For the scope of this analysis, we are only going to be interested in a few pieces of information. The first is the text of the review, which is contained in a column called “content.” The second is the score (from 0 to 10) that was assigned to the album by the Pitchfork reviewer, contained in a column called “score_to_predict”. And the final columns are dummy variables which indicate the genre of the album being reviewed (with the following 9 options: electronic, experimental, folk/country, global, jazz, metal, pop/rnb, rap and rock). Our dataset is called “reviews,” and the first 5 rows are shown below (not all dummy genre variables shown due to space considerations):

    content score_to_predict genre_electronic genre_rock 1 “Trip-hop” eventually became a ’90s punchline, a music-press shorthand for “overhyped hotel lounge music”… 9.3 1 0 2 Eight years, five albums, and two EPs in, the New York-based outfit Krallice have long since shut up purists about their “hipster black metal”… 7.9 0 0 3 Minneapolis’ Uranium Club seem to revel in being aggressively obtuse… 7.3 0 1 4 Kleenex began with a crash It transpired one night not long after they’d formed, in Zurich of 1978, while the germinal punk group was onstage… 9 0 1 5 It is impossible to consider a given release by a footwork artist without confronting the long shadow cast by DJ Rashad’s catalog… 8.1 1 0 6 In the pilot episode of “Insecure,” the critically lauded HBO comedy series created by Issa Rae and Larry Wilmore, Rae’s eponymous character Issa is at a crossroads… 7.4 0 0 Data Preparation


    Our data preparation will consist of four main steps, following the logic of the Quanteda package. We will first turn our data frame into a corpus object, which contains our texts and related meta-data (e.g. the other information in our data frame). We then create a tokens object from the corpus. The tokens object contains the featurized text, with each text stored as a list of character vectors. The characters are simply the individual elements that make up the texts (words, numbers, etc.). We will then turn our tokens object into a document-feature matrix (DFM). The DFM represents frequencies of features in documents in a matrix, as is typical in bag-of-words text analytic approaches. We then convert the DFM to a matrix, adding in additional features we’ll use in our analysis. This matrix will serve as input for our model of album review score.

    A schematic overview of the data preparation steps is thus:

    Data Frame -> Corpus -> Tokens Object -> DFM -> Model Matrix

    Step 1: Turn our Data Frame Into a Corpus.

    In Quanteda, the basic representation of text data is the corpus. The idea of the corpus is that it is a general repository of the text data and additional meta-data that describes the corpus as a whole and the individual documents. (For more info see the great Quanteda vignette and tutorial). In the Quanteda way of doing things, the corpus is a static container; as it should remain unchanged, we will transform the corpus into a tokens object, which we will use to further clean and process the text for modelling.

    We transform our data frame (called reviews) into a corpus with the following code:

    # load the packages we'll need
    library(plyr); library(dplyr)
    library(quanteda)

    # transform the data frame into a corpus
    reviews_corpus <- corpus(reviews, docid_field = "reviewid",
    text_field = "content")

    Step 2: Make a Tokens Object and Clean the Text

    Now that we have our text and meta-data stored in the corpus, we are ready to create a tokens object. We can think of tokens as an intermediate object, which consists of a list of character vectors containing the tokens of a given text. Each element of the list corresponds to an input document; there are as many list elements as there are texts in the corpus. We will use this tokens object to perform our text cleaning.

    One of the great things about Quanteda is that it makes it very straightforward to do many of the cleaning operations that are necessary for any good NLP pipeline. The text cleaning and preparing functions are included in the package, and you can combine them in sequence to clean text in a very easy and straightforward manner.

    In the current case, we would like to clean the text in a number of different ways. As we are primarily interested in linguistic markers of album quality, we can safely remove numbers, punctuation, symbols, and stopwords (e.g. words which occur frequently but have little or no meaning, such as “the”). We will also make all letters lowercase, and stem the words (which removes the end of the word; e.g. argue, argued, argues, arguing are all truncated to argu). We then remove all words with less than 3 characters, as these are typically unimportant. Finally, we extract unigrams and bi-grams (e.g. 1 and 2-word combinations).

    I created a function, called make_clean_tokens, which performs all of these steps. We then apply the function to our corpus object, which returns the cleaned tokens object called clean_toks. This functional way of working with data makes the code easier to read and avoids creating many small objects that are used only a couple of times, and which consume memory and clutter our workspace.

    The function to make the clean tokens object is shown below:

    # make a tokens object and clean the text
    make_clean_tokens <- function(corpus_f){
    # make the base tokens object
    # remove punctuation, numbers, symbos
    # and stopwords (note: default stopword matching is case-insensitive)
    clean_toks_f <- tokens_remove(tokens(corpus_f, what = 'word', remove_punct = TRUE,
    remove_numbers = TRUE, remove_symbols = TRUE),
    stopwords("english"))
    # convert all letters to lower case
    clean_toks_f <- tokens_tolower(clean_toks_f)
    # then stem
    clean_toks_f <- tokens_wordstem(clean_toks_f, language = quanteda_options("language_stemmer"))
    # remove words less than three characters
    clean_toks_f <- tokens_select(clean_toks_f, selection = "keep", min_nchar = 3)
    # select bigrams and unigrams
    clean_toks_f <- tokens(clean_toks_f, ngrams = 1:2)
    return(clean_toks_f)
    }

    # apply the function to our review corpus
    clean_toks <- make_clean_tokens(reviews_corpus)

    # what does the first element of our tokens object
    # look like?
    clean_toks[1]

    Which returns:

    tokens from 1 document.
    22703 :
    [1] "trip-hop" "eventu" "becam" "90s"
    [5] "punchlin" "music-press" "shorthand" "overhyp"
    [9] "hotel" "loung" "music" "today"
    [13] "much-malign" "subgenr" "almost" "feel"
    [17] "like" "secret" "preced" "listen" ...

    This is the first element of our cleaned tokens object. Specifically, it is a character vector for review 22703 (the first review ID in the original dataset), and each word is a separate element in the vector. We can see that the words have been stemmed and stopwords have been removed. A nice aspect of Quanteda is that it preserves internal hyphens (though this functionality can be turned off), as we see with “trip-hop,” “much-malign” and “music-press.” Many less-intelligent text processing routines would remove the hyphen and create two separate words. There are a number of well-thought-out functions like this in Quanteda, making it much more efficient (and safer) to use than quickly-written regular expressions one often uses when cleaning data.


    Steps 3 and 4: DFM / Feature Selection & Producing the Modelling Data

    Next, we will take our tokens object and use it to create a dfm, or document-feature matrix. This representation considers documents as rows and “features” (single words, bi-grams, etc.) as columns. One of the nice things about the dfm is that it retains meta-data from the original input dataset. We will use the dfm and the meta-data to create the final matrix which we will use in modelling.

    The code below contains a function that executes a series of operations on our tokens object. We first create a dfm, to which we apply tf-idf (term frequency, inverse document frequency) weighting. Tf-idf is a weighting system that assigns a lower weight to words that occur in many documents, and a higher weight to words that occur frequently in fewer documents.

    The number of features (text elements – both unigrams and bigrams) in the dfm is enormous – 3,954,138 to be precise. We cannot use all of them in modelling due to computational (memory limits) and statistical (many of the features occur very infrequently and therefore make poor predictors) considerations. In short, we need a way to reduce the number of features in our dfm for modelling. There are many approaches for selecting features (essentially reducing the width of the dfm) in text mining and NLP. Here, we will use the tf-idf score to select words to include in our analysis.

    The function below calculates the average tf-idf score for every feature in our dfm. It then uses the quantile function to select the words with the largest average tf-idf scores. (I had to play around with the quantile value a bit. I selected the final value so that I would retain only around 2300 words out of the total 3.9 million.) Included in the function are several print statements, which show us some sample results of the calculations, and the size of the intermediate and final pieces of our modelling data.

    # make a dataset for modelling: dfm + model matrix
    make_model_data_tfidf <- function(tokens_f){
    # make a dfm object from the tokens
    myDfm_f <- dfm(tokens_f, verbose = TRUE)
    # add TFIDF weight
    myDfm_f <- dfm_tfidf(myDfm_f)
    # because the dfm object is a type of sparse matrix,
    # we can use matrix commands on it.
    # we first calculate the mean tfidf score for each word across the reviews
    # with col_sums from the slam package
    word_mean_tfidf_f <- slam::col_sums(myDfm_f, na.rm = T) / dim(myDfm_f)[1]
    print('first 5 tfidf scores:')
    print(word_mean_tfidf_f[1:5])
    # then we extract the words with the highest tfidf scores
    # based on quantile
    words_above_threshold_f <- word_mean_tfidf_f[word_mean_tfidf_f > quantile(word_mean_tfidf_f,.9994)]
    print('first 5 words above the threshold:')
    print(words_above_threshold_f[1:5])
    # finally we subset dfm to text features above the threshold
    myDfm_f <- dfm_select(myDfm_f, names(words_above_threshold_f), selection = "keep")
    # and make boolean (0/1) weights for terms
    myDfm_f <- dfm_weight(myDfm_f, scheme = "boolean")
    # turn the reduced dfm into a matrix
    # to use the text features for modeling
    text_features_f <- as.matrix(myDfm_f)
    print('size of text features:')
    print(dim(text_features_f))
    # we now extract the non-text features
    # (genre indicators and our review score to predict)
    # here we extract the names of the features in our
    # original data that start with 'genre': these are
    # our dummy variables, one per genre
    genre_features_f <- grep('genre_', names(myDfm_f@docvars), value = TRUE)
    # we add our output variable to the genre variable names
    all_non_text_feature_names_f<- c('score_to_predict', genre_features_f)
    # and extract all of these features from the original data
    # which is embedded in the dfm (as a type of meta-data)
    non_text_features_f <- myDfm_f@docvars[all_non_text_feature_names_f]
    print('size of non-text features:')
    print(dim(non_text_features_f))
    # bind genres/review score and text features together into a single matrix
    modelling_data_f <- cbind(text_features_f, as.matrix(non_text_features_f))
    print('size of modelling data:')
    print(dim(modelling_data_f))
    # return this final matrix
    return(modelling_data_f)
    }

    # make the modeling data
    modelling_data <- make_model_data_tfidf(clean_toks)

    Selecting Text Features

    The code calculates the average tf-idf score for each word across all the documents, and selects the words with the highest average tf-idf scores. We can then pass this vector of words directly to the dfm_select function in Quanteda, which subsets the total dfm to just these words. Rather than using the tf-idf scores in modelling, I booleanize all of the values (e.g. code them in a 0/1 format to indicate whether the word was present in the document). This simplifies the interpretation of the final model results. We can interpret the Lasso model coefficients as the change in the album review score if the given word is used in the review. Finally, we convert the dfm to a simple matrix, which stores the booleanized values for our chosen features.

    Adding Non-Text Features  

    We’ll also need some other data in order to make our model. First, we’ll need our outcome variable, the Pitchfork review score for each album (called score_to_predict in our data). Second, we’ll need to include the dummy variables for music review genre.

    A very useful feature of the dfm is that it contains meta-data from our original data frame. We can therefore extract the additional data we need directly from the dfm!

    In the code above, I extract the Pitchfork review score and the dummy columns from the original data, and return them together in a matrix (called non_text_features_f). I then concatenate the text features and the features from our original data; this constitutes the final matrix that we’ll use in modelling. The function then returns this matrix.

    As the function advances, it prints out the following output to the console:

    [1] "first 5 tfidf scores:"
    trip-hop eventu becam 90s punchlin
    0.03244423 0.10223274 0.09059614 0.10508835 0.03514300
    [1] "first 5 words above the threshold:"
    eventu becam 90s hotel think
    0.10223274 0.09059614 0.10508835 0.04895410 0.20718557
    [1] "size of text features:"
    [1] 18389 2373
    [1] "size of non-text features:"
    [1] 18389 10
    [1] "size of modelling data:"
    [1] 18389 2383

    This output helps us understand how the data are transformed throughout the process. The first line above shows the first 5 tf-idf scores, and confirms that we have indeed weighted the words in our corpus. After we calculate the average tf-idf scores and make a selection of words based on these scores, we print the first 5 words that are above the chosen threshold. We can see that some (but not all) of the first 5 words in our first document are above the threshold. After we make our selection of features and turn it into a matrix, we can see that we have extracted 2,373 different text features. We also get confirmation that we have extracted 10 non-text features; the Pitchfork album review score and the 9 dummy indicators for album genre. After both matrices are concatenated, our final model matrix contains 18,389 rows and 2,383 columns.

    Our model matrix looks like this (only first 5 rows and first 7 columns shown):

    eventu becam 90s hotel think music today 22703 1 1 1 1 1 1 1 22721 0 0 0 0 0 0 0 22659 0 1 0 0 0 1 0 22661 0 0 0 0 0 1 1 22725 0 0 0 0 0 1 0

     Modelling 

    We will use Lasso regression to analyze the relationship between our features and our output variable (album review score). We’ve used this technique in previous posts on this blog. Lasso regression is a form of penalized regression that performs automatic feature selection, only retaining the most-predictive features in the final model.

    We will split the data into training and test sets. We make the model on the training set and evaluate its performance in the holdout test set. Let’s first set up an index variable that will allow us to sample 70% of our data for training:

    # train-test split
    # training data will be 70% of the sample size
    smp_size <- floor(0.70 * nrow(modelling_data))
    # set the seed to make your partition reproducible
    set.seed(123)
    # calculate the indexes of the observations in
    # the training sample
    train_idx <- sample(seq_len(nrow(modelling_data)), size = smp_size)

    And then compute the model:

    # load the glmnet package
    library(glmnet)
    # function to make the Lasso model
    make_model <- function(modelling_data_f){
    # make a subset of the training data
    train_f <- modelling_data_f[train_idx, ]
    # make a subset of the test data
    test_f <- modelling_data_f[-train_idx, ]
    # extract feature names
    feature_names_f <- colnames(train_f)[!colnames(train_f) %in% c('reviewid', 'score_to_predict')]
    # produce the model, using 10-fold cross-validation
    mymodel_f <- cv.glmnet(y = train_f[,'score_to_predict'],
    x = train_f[,feature_names_f],
    family = "gaussian", nfolds = 10, alpha = 1)

    # predict on the test data
    pred_f <- predict(mymodel_f, s="lambda.1se", newx = test_f[,feature_names_f], type="response")
    # and calculate model performance metrics
    # error
    error_f <- test_f[,'score_to_predict'] - pred_f
    # root mean squared error
    rmse_f <- sqrt(mean(error_f^2))
    print('RMSE:')
    print(rmse_f)
    # mean absolute error
    mae_f <- mean(abs(error_f))
    print('MAE:')
    print(mae_f)
    # return the model object
    return(mymodel_f)
    }

    # pass the data to our modelling function
    # and return the model object
    lasso_model <- make_model(modelling_data)

    During the execution of the function, the following output is printed to the console:

    [1] "RMSE:"
    [1] 1.070765
    [1] "MAE:"
    [1] 0.7661584

    We will discuss the meaning of these two model performance statistics below.

    Understanding and Evaluating the Model

    Understanding the Model

    What features did the Lasso model identify as being most predictive of the album review scores? In order to answer this question, we can extract the most important coefficients from the model object and plot them using ggplot2. The following function accomplishes this:

    # plot the top features
    # load ggplot2 package for plotting
    library(ggplot2)
    plot_top_features <- function(model_f){
    # extract the coefficients from the model
    coefficients_f <- predict(model_f, s="lambda.1se", type = "coefficients")[, 1]
    # make it a data frame
    coef_df_f <- as.data.frame(coefficients_f)
    # extract the feature names from the row names
    coef_df_f$feature <- row.names(coef_df_f)
    # and reset the row names
    row.names(coef_df_f) <- NULL
    # name the columns in our coefficient data frame
    names(coef_df_f) <- c('coefficient', 'feature')
    # dplyr chain: remove coefficient for intercept and
    # remove coefficients with an absolute value of lower than .1
    coef_df_f %>% filter(feature != '(Intercept)') %>% filter(abs(coefficient) > .1) %>%
    mutate(Direction = ifelse(coefficient >0, 'Positive', 'Negative')) %>%
    mutate(word = reorder(feature, coefficient)) %>%
    ggplot(aes(x = word, y = coefficient, fill = Direction)) +
    geom_col() +
    coord_flip() +
    labs(x = 'Word', y = 'Penalized Coefficient',
    title = 'Pitchfork Review Model: Most Predictive Words')
    }

    # make the plot
    plot_top_features(lasso_model)

    Which gives us the following plot:

    Top Positive Features

    The top positive feature is reissue. When this word is present in a review text, the model estimates that the review score will be .33 points higher. This seems logical – only noteworthy albums are likely to be given a reissue, and this underlying quality that leads to a higher review score.

    Many of the top predictive features are simply synonyms for “good.” Examples include amazing, glorious, beautiful, fantastic, remarkable, etc. This makes sense and gives us confidence in the logic of the model. But it doesn’t really help us understand what specific artistic or musical qualities make for a great album.

    There are some clues among some of the features, however. Seamless indicates the importance of an artistic whole; the songs of more highly-reviewed albums fit together as a whole and transition from one to the other in an easy way. In other words, the totality of the album package seems important to Pitchfork reviewers.

    Other features that indicate positive musical or artistic qualities of good albums include confident,  intelligent, clarity, capture, and effortless. Confidence is no doubt critical on both an artistic and a musical level (e.g. having a conceptual and musical vision and executing it in a direct and competent manner). Intelligence speaks to the translation of a conceptual idea to a musical execution. An intelligent album is successful in transforming a larger idea or concept into an album-length execution, including song content and layout, production, and the synthesis that is the artistic statement encapsulated in the album whole. A successful album captures the clarity of the ideas in an aesthetically pleasant, effortless way.
     
    Top Negative Features

    As we saw with the positive features, most of the negative features are simply synonyms for “bad.” Examples include unfortunate, worst, terrible, etc.

    However, some of the features give us a sense of the artistic and musical qualities that signal a poor album. For example, attempt, try and aim suggest a failed execution of an artistic or musical idea. The musicians were trying to realize a specific vision, but did not succeed. The end result is dull, boring, or grating.

    Bad albums are not focused. They are meandering, vague in their intent, and in worst cases a mess. The lack of originality in an album’s content is also a signal of a poor review. Bad albums are cliché (unoriginal), predictable, and rather than realize a unique vision, they imitate other work (poorly).

    Interestingly, none of the genre features (e.g. rock, rap, jazz, etc.) come up in the most predictive features. This suggests that, at least when accounting for the text features, the different genres are not systematically rated more positively or negatively from one another.

    Evaluating the Model

    The above function prints out some figures that give us a first indication of model quality. Our root mean squared error is 1.07 and our mean absolute error is .77. In other words, we are off on average by .77 points. On a scale from 1-10, this seems to be not too bad.

    Let’s plot the actual review scores versus the model predictions for the test set. With a perfect model, these values would match completely.

    We first make a function to compute the model predictions on the test set, and return a data frame with the actual and predicted scores:

    # this function computes the predictions
    # and returns a data frame with these values
    # and the original album review scores
    return_model_predictions <- function(model_f,data_f){
    # first model
    test_data_f <- data_f[-train_idx, ]
    feature_names_f <- colnames(test_data_f)[!colnames(test_data_f) %in% c('reviewid', 'score_to_predict')]
    pred_f <- predict(model_f, s="lambda.1se", newx = test_data_f[,feature_names_f], type="response")
    # bind together actual and predicted scores
    actual_predictions_f <- cbind(test_data_f[,'score_to_predict'], pred_f)
    # fix the column names
    dimnames(actual_predictions_f)[2][[1]] <- c('score_to_predict','model_prediction')
    # return data frame with the true rating and the model prediction
    return(as.data.frame(actual_predictions_f))
    }

    # compute the predictions and store in a data frame
    # called prediction_df
    prediction_df <- return_model_predictions(lasso_model, modelling_data)

    Our prediction data frame is called prediction_df, and looks like this (only first 5 rows shown):

    score_to_predict model_prediction 22721 7.9 6.99 22659 7.3 7.16 22725 8.1 7.23 22720 3.5 6.31 22699 7.4 7.49 22665 6.6 7.41

    The row names are the document id in our original data, score_to_predict is the actual Pitchfork review score, and model_prediction is the expected value from the model for each review.

    We can plot the actual review scores versus the predictions via ggplot2 with the following code:

    # plot the actual vs. predicted review scores
    # add a red line that would indicate perfect predictions
    # add a blue regression line for actual vs. predicted scores
    ggplot(prediction_df, aes(x= score_to_predict, y = model_prediction)) +
    geom_point(alpha = .5) +
    geom_abline(intercept = 0, slope = 1, color = 'red',
    linetype = 2, size = 2, show.legend = TRUE) +
    geom_smooth(method = lm, se = TRUE, size = 2) +
    labs(x = 'Pitchfork Review Score', y = 'Model Prediction',
    title = 'Actual vs. Predicted Album Review Scores')

    Which yields the following plot:

    The red dashed line is the identity line; it indicates equality between the actual and predicted review scores (e.g. the same values on the x and y axes). If every prediction were perfect, all of the data points would lie on this line. The blue line indicates the regression line between the actual and predicted scores. This shows the predicted relationship between the two scores across their ranges.

    Our model is clearly more accurate in some regions of the data than in others. At the extremes of the Pitchfork review scores (e.g. albums with very high or very low scores), our model does not perform well. There are relatively few very low and very high Pitchfork album reviews, and our model has a hard time understanding when a review will have a score at these extremes. This problem is worse at the low end of the Pitchfork review spectrum. While actual Pitchfork reviews can have a score of zero, our model never predicts a score lower than 4.5.

    The model does better in the middle-to-high range (e.g. from around 5 to around 8.5). The bulk of our data is contained within this region, making it easier for the model to pick up on signals of quality within this range. We would expect that our model is most accurate at the point where the two lines cross: e.g. at around Pitchfork review scores of 7. This is the place where our average model prediction is closest to the true Pitchfork album review score.

    Summary and Conclusion

    In this post we did text mining and natural language processing on Pitchfork album reviews and built a model to predict linguistic signals of album quality. We used the Quanteda package to clean our text data and to extract text and non-text features to predict the Pitchfork album review score. The Quanteda package made it straightforward to execute basic (e.g. removing punctuation, stemming words) and advanced (e.g. feature selection via tf-idf weighting) text processing steps. We then built a Lasso regression model which used the text and non-text features to predict the album review scores.

    The model results gave some clues as to what makes a good vs. bad album, according to Pitchfork reviewers. Good albums are seamless artistic packages. They are confident, intelligent, and capture the clarity of a larger idea with music in a succinct, effortless way. Bad albums, in contrast, attempt to impose a conceptual and musical vision, but fail in the execution. They are unfocused, unoriginal, and predictable. As a result, bad albums are boring or grating.

    On average, the model performance was acceptable, with a mean average error of .77 points (on a scale from 0 to 10). However, the model did not perform equally well in all ranges of the Pitchfork review score data. As there were relatively few albums with very low scores, the model was unable to find distinctive features that signaled signaled very poor quality reviews.

    Coming Up Next

    In the next post, we will use open government data from the Flemish region in Belgium to explore crime statistics and self-reported feelings of safety in two cities in the province of Flemish Brabant.

    Stay tuned!

    Post Script: The online R code text highlighter that I’ve used in the past has disappeared. If you know of a good way to highlight R code in HTML format, please let me know in the comments!

     

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: Method Matters. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Rcpp, Camarón de la Isla and the Beauty of Maths

    Thu, 01/10/2019 - 08:30

    (This article was first published on R – Fronkonstin, and kindly contributed to R-bloggers)

    Desde que te estoy queriendo
    yo no sé lo que me pasa
    cualquier vereda que tomo
    siempre me lleva a tu casa
    (Y mira que mira y mira, Camarón de la Isla)

    The verses that head this post are taken from a song of Camarón de la Isla and illustrate very well what is a strange attractor in the real life. For non-Spanish speakers a translation is since I’m loving you, I don’t know what happens to me: any path I take, always ends at your house. If you don’t know who is Camarón de la Isla, hear his immense and immortal music.

    I will not try to give here a formal definition of a strange attractor. Instead of doing it, I will try to describe them with my own words. A strange attractor can be defined with a system of equations (I don’t know if all strage attractors can be defined like this). These equations determine the trajectory of some initial point along a number of steps. The location of the point at step i, depends on the location of it at step i-1 so the trajectory is calculated sequentially. These are the equations that define the attractor of this experiment:

    As you can see there are two equations, describing the location of each coordinate of the point (therefore it is located in a two dimensional space). These equations are impossible to resolve. In other words, you cannot know where will be the point after some iterations directly from its initial location. The adjective attractor comes from the fact of the trajectory of the point tends to be the same independently of its initial location.

    Here you have more examples: folds, waterfalls, sand, smoke … images are really appealing:

    The code of this experiment is here. You will find there a definition of parameters that produce a nice example image. Some comments:

    • Each point depends on the previous one, so iteration is mandatory; since each plot involves 10 million points, a very good option to do it efficiently is to use Rcpp, which allows you to iterate directly in C++.
    • Some points are quite isolated and far from the crowd of points. This is why I locate some breakpoints with quantile to remove tails. If not, the plot may be reduced to a big point.
    • The key to obtain a nice plot if to find out a good set of parameters (a1 to a14). I have my own method, wich involves the following steps: generate a random value for each between -4 and 4, simulate a mini attractor of only 2000 points and keep it if it doesn’t diverge (i.e. points don’t go to infinite), if x and y are not correlated at all and its kurtosis is bigger than a certain thresold. If the mini attractor overcome these filters, I keep its parameters and generate the big version with 10 million points.
    • I would have publish this method together with the code but I didn’t. Why? Because this may bring yourself to develop your own since mine one is not ideal. If you are interested in mine, let me know and I will give you more details. If you develop a good method by yourself and don’t mind to share it with me, let me know as well, please.

    This post is inspired in this beautiful book from Julien Clinton Sprott. I would love to see your images.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – Fronkonstin. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    My presentations on ‘Elements of Neural Networks & Deep Learning’ -Part1,2,3

    Thu, 01/10/2019 - 02:08

    (This article was first published on R – Giga thoughts …, and kindly contributed to R-bloggers)

    I will be uploading a series of presentations on ‘Elements of Neural Networks and Deep Learning’. In these video presentations I discuss the derivations of L -Layer Deep Learning Networks, starting from the basics. The corresponding implementations are available in vectorized R, Python and Octave are available in my book ‘Deep Learning from first principles:Second edition- In vectorized Python, R and Octave

    1. Elements of Neural Networks and Deep Learning – Part 1
    This presentation introduces Neural Networks and Deep Learning. A look at history of Neural Networks, Perceptrons and why Deep Learning networks are required and concluding with a simple toy examples of a Neural Network and how they compute

    2. Elements of Neural Networks and Deep Learning – Part 2
    This presentation takes logistic regression as an example and creates an equivalent 2 layer Neural network. The presentation also takes a look at forward & backward propagation and how the cost is minimized using gradient descent

    The implementation of the discussed 2 layer Neural Network in vectorized R, Python and Octave are available in my post ‘Deep Learning from first principles in Python, R and Octave – Part 1

    3. Elements of Neural Networks and Deep Learning – Part 3
    This 3rd part, discusses a primitive neural network with an input layer, output layer and a hidden layer. The neural network uses tanh activation in the hidden layer and a sigmoid activation in the output layer. The equations for forward and backward propagation are derived.

    To see the implementations for the above discussed video see my post ‘Deep Learning from first principles in Python, R and Octave – Part 2

    To be continued. Watch this space!

    Checkout my book ‘Deep Learning from first principles: Second Edition – In vectorized Python, R and Octave’. My book starts with the implementation of a simple 2-layer Neural Network and works its way to a generic L-Layer Deep Learning Network, with all the bells and whistles. The derivations have been discussed in detail. The code has been extensively commented and included in its entirety in the Appendix sections. My book is available on Amazon as paperback ($18.99) and in kindle version($9.99/Rs449).

    You may also like
    1. My book ‘Practical Machine Learning in R and Python: Third edition’ on Amazon
    2. Introducing cricpy:A python package to analyze performances of cricketers
    3. Natural language processing: What would Shakespeare say?
    4. TWS-4: Gossip protocol: Epidemics and rumors to the rescue
    5. Getting started with memcached-libmemcached
    6. Simplifying ML: Impact of degree of polynomial degree on bias & variance and other insights

    To see all posts click Index of posts

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – Giga thoughts …. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    A Look Back on 2018: Part 1

    Thu, 01/10/2019 - 01:00

    (This article was first published on R Views, and kindly contributed to R-bloggers)



































    Welcome to Reproducible Finance 2019! It’s a new year, a new beginning, the Earth has completed one more trip around the sun, and that means it’s time to look back on the previous January to December cycle.

    Today and next time, we’ll explore the returns and volatilities of various market sectors in 2018. We might also get into fund flows and explore a new data source because this fantastic piece from the FT has the wheels turning. So much data, so little time.

    Back to the task at hand, today we will grab data on the daily returns of various stock market sector ETFs and build exploratory data visualizations around that data.

    From an R code perspective, we will get familiar with a new source for market data (tiingo, which has come up in several conversations recently and seems to be gaining nice traction in the R world), build some ggplots, and dive into highcharter a bit. In that sense, it’s also somewhat of a look back to our previous work because we’ll be stepping through some good ‘ol data import, wrangling, and visualization. Some of the code flows might look familiar to long-time readers, but if you’ve joined us recently and haven’t gone back to read the oh-so-invigorating previous posts, this should give a good sense of how we think about working with financial data.

    Let’s get to it. We want to import data on 10 sector ETFs and also on SPY, the market ETF. We’ll first need the tickers of each sector ETF:

    ticker = ("XLY", "XLP", "XLE", "XLF", "XLV", "XLI", "XLB", "XLK", "XLU", "XLRE", "SPY")

    And our sector labels are:

    sector = ("Consumer Discretionary", "Consumer Staples", "Energy", "Financials", "Health Care", "Industrials", "Materials", "Information Technology", "Utilities", "Real Estate", "Market")

    We can use the tibble() function to save those as columns of new tibble.

    First, let’s load up our packages for the day, because we’ll need the tibble package via tidyverse.

    library(tidyverse) library(tidyquant) library(riingo) library(timetk) library(tibbletime) library(highcharter) library(htmltools)

    And on to creating a tibble:

    etf_ticker_sector <- tibble( ticker = c("XLY", "XLP", "XLE", "XLF", "XLV", "XLI", "XLB", "XLK", "XLU", "XLRE", "SPY"), sector = c("Consumer Discretionary", "Consumer Staples", "Energy", "Financials", "Health Care", "Industrials", "Materials", "Information Technology", "Utilities", "Real Estate", "Market") ) etf_ticker_sector # A tibble: 11 x 2 ticker sector 1 XLY Consumer Discretionary 2 XLP Consumer Staples 3 XLE Energy 4 XLF Financials 5 XLV Health Care 6 XLI Industrials 7 XLB Materials 8 XLK Information Technology 9 XLU Utilities 10 XLRE Real Estate 11 SPY Market

    Now, we want to import the daily prices for 2018 for these tickers. We could use getSymbols() to access Yahoo! Finance as we have done for the last three years, but let’s do something crazy and explore a new data source, the excellent tiingo, which we access via the riingo package. The workhorse function to grab price data is riingo_prices(), to which we need to supply our tickers and a start_date/end_date pair.

    Let’s start with the tickers, which we have already saved in the ticker column of etf_ticker_sector. That wasn’t really necessary. We could have just created a vector called tickers_vector by calling tickers_vector = c("ticker1", "ticker2", ...) and then passed that vector straight to riingo_prices. But I didn’t want to do that because I prefer to get my data to a tibble first and, as we’ll see, it will make it easier to add back in our sector labels, since they are aligned with our tickers in one object.

    To pass our ticker column to riingo_prices(), we start with our tibble etf_ticker_sector and then pipe it to pull(ticker). That will create a vector from the ticker column. The pull() function is very useful in these situations where we want to pipe or extract a column as a vector.

    Here’s the result of pulling the tickers:

    etf_ticker_sector %>% pull(ticker) [1] "XLY" "XLP" "XLE" "XLF" "XLV" "XLI" "XLB" "XLK" "XLU" "XLRE" [11] "SPY"

    Now we want to pass those tickers to riingo_prices(), but first we need to create an API key. riingo makes that quite convenient:

    riingo_browse_signup() # This requires that you are signed in on the site once you sign up riingo_browse_token()

    Then we set our key for use this session with:

    # Need an API key for tiingo riingo_set_token("your API key here")

    Next, we can pipe straight to riingo_prices(). We will set start_date = "2017-12-29" and end_date = "2018-12-31" to get prices for just 2018. I wanted the last trading day of 2017 because eventually we’ll calculate daily returns of 2018.

    etf_ticker_sector %>% pull(ticker) %>% riingo_prices(., start_date = "2017-12-29", end_date = "2018-12-31") %>% head() # A tibble: 6 x 14 ticker date close high low open volume adjClose 1 XLY 2017-12-29 00:00:00 98.7 99.4 98.6 99.3 2.63e6 97.5 2 XLY 2018-01-02 00:00:00 100. 100. 99.1 99.1 4.90e6 98.9 3 XLY 2018-01-03 00:00:00 101. 101. 100. 100. 5.32e6 99.4 4 XLY 2018-01-04 00:00:00 101. 101. 100. 101. 3.46e6 99.7 5 XLY 2018-01-05 00:00:00 102. 102. 101. 101. 4.29e6 101. 6 XLY 2018-01-08 00:00:00 102. 102. 102. 102. 2.67e6 101. # … with 6 more variables: adjHigh , adjLow , adjOpen , # adjVolume , divCash , splitFactor

    Alright, there’s quite a bit of data here: OHLC, volume, ticker dividends, splits, and note that the date column is in POSIX format.

    Let’s go ahead and coerce that to date format and add back in our sector labels. We coerce the date with the ymd() function from lubricate, and then add our labels with a call to left_join(etf_ticker_sector, by = "ticker"). There’s a column called ticker in the prices data and in our original tibble, so we can join by that column and add back the sector labels.

    It’s a good idea to use group_by(ticker) and then slice(1) to grab the first row of each ticker. This helps to confirm that the sector labels got added how we planned.

    etf_ticker_sector %>% pull(ticker) %>% riingo_prices(., start_date = "2017-12-29", end_date = "2018-12-31") %>% mutate(date = ymd(date)) %>% left_join(etf_ticker_sector, by = "ticker") %>% select(sector, everything()) %>% group_by(ticker) %>% slice(1) # A tibble: 11 x 15 # Groups: ticker [11] sector ticker date close high low open volume adjClose adjHigh 1 Market SPY 2017-12-29 267. 269. 267. 269. 9.60e7 262. 264. 2 Mater… XLB 2017-12-29 60.5 60.9 60.5 60.9 2.48e6 59.3 59.7 3 Energy XLE 2017-12-29 72.3 72.7 72.1 72.7 7.36e6 70.1 70.5 4 Finan… XLF 2017-12-29 27.9 28.2 27.9 28.2 5.52e7 27.4 27.7 5 Indus… XLI 2017-12-29 75.7 76 75.6 76.0 4.83e6 74.2 74.6 6 Infor… XLK 2017-12-29 64.0 64.4 63.9 64.3 6.69e6 63.0 63.4 7 Consu… XLP 2017-12-29 56.9 57.2 56.9 56.9 5.09e6 55.2 55.5 8 Real … XLRE 2017-12-29 32.9 33.0 32.9 33.0 9.26e5 31.8 31.8 9 Utili… XLU 2017-12-29 52.7 52.9 52.6 52.8 7.03e6 50.9 51.1 10 Healt… XLV 2017-12-29 82.7 83.5 82.6 83.3 4.88e6 81.4 82.2 11 Consu… XLY 2017-12-29 98.7 99.4 98.6 99.3 2.63e6 97.5 98.2 # … with 5 more variables: adjLow , adjOpen , adjVolume , # divCash , splitFactor

    Okay, we have daily data for our ETFs and sector labels. Now, let’s calculate the daily returns of each sector. We’ll start by slimming our data down to just the sector, date, and adjClose columns. Then we’ll group_by(sector) and calculate daily returns with mutate(daily_return = log(adjClose) - log(lag(adjClose))).

    etf_ticker_sector %>% pull(ticker) %>% riingo_prices(., start_date = "2017-12-29", end_date = "2018-12-31") %>% mutate(date = ymd(date)) %>% left_join(etf_ticker_sector, by = "ticker") %>% select(sector, date, adjClose) %>% group_by(sector) %>% mutate(daily_return = log(adjClose) - log(lag(adjClose))) %>% na.omit() %>% slice(1) # A tibble: 11 x 4 # Groups: sector [11] sector date adjClose daily_return 1 Consumer Discretionary 2018-01-02 98.9 0.0151 2 Consumer Staples 2018-01-02 54.9 -0.00617 3 Energy 2018-01-02 71.3 0.0163 4 Financials 2018-01-02 27.4 0.000358 5 Health Care 2018-01-02 82.3 0.0112 6 Industrials 2018-01-02 74.7 0.00593 7 Information Technology 2018-01-02 63.8 0.0123 8 Market 2018-01-02 264. 0.00713 9 Materials 2018-01-02 60.2 0.0141 10 Real Estate 2018-01-02 31.6 -0.00578 11 Utilities 2018-01-02 50.4 -0.00934

    Notice that our first daily return is for January 2nd. That makes sense because January 1st is generally a national holiday and the markets are closed. If we did have a daily return for January 1st, it would be worth investigating to make sure the market was indeed open that day.

    Let’s go ahead and save that data on daily returns by sector as an object called sector_returns_2018.

    sector_returns_2018 <- etf_ticker_sector %>% pull(ticker) %>% riingo_prices(., start_date = "2017-12-29", end_date = "2018-12-31") %>% mutate(date = ymd(date)) %>% left_join(etf_ticker_sector, by = "ticker") %>% select(sector, date, adjClose) %>% group_by(sector) %>% mutate(daily_return = log(adjClose) - log(lag(adjClose))) %>% na.omit()

    We have our data and now the fun part – let’s do some exploration and visualization and get a feel for 2018. We start with ggplot() and create a chart showing the daily return of each ETF, colored. We want date on the x axis, daily returns on the y-axis and different colors by sector. That means a call to ggplot(aes(x = date, y = daily_return, color = sector)).

    sector_returns_2018 %>% ggplot(aes(x = date, y = daily_return, color = sector))

    Mmmmm, not exactly what we had in mind. It’s a blank canvas! That’s because we have told ggplot() what data we want mapped where, but we haven’t layered on a geom yet. Let’s add geom_col().

    sector_returns_2018 %>% ggplot(aes(x = date, y = daily_return, color = sector)) + geom_col()

    Better, we have a chart of all our data! But it’s a bit hard to see the individual returns. Let’s facet_wrap() by sector. I also don’t love that legend, so we’ll add show.legend = FALSE to geom_col().

    sector_returns_2018 %>% ggplot(aes(x = date, y = daily_return, color = sector)) + geom_col(show.legend = FALSE) + facet_wrap(~sector)

    Very close, but the date is all jumbled and the y-axis label isn’t quite right – there’s no % sign. Let’s change the angle of the date labels to 45 degrees with theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1)) and add the percentage sign with scale_y_continuous(labels = function(x) paste0(x, "%")).

    sector_returns_2018 %>% ggplot(aes(x = date, y = daily_return, color = sector)) + geom_col(show.legend = FALSE) + facet_wrap(~sector) + theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1)) + scale_y_continuous(labels = function(x) paste0(x, "%")) + # clean up the x and y axis titles labs(x = "", y = "daily returns")

    That’s an interesting panel of charts to my eye – tech looks pretty volatile since October! We can and will (next time) get more rigorous about such assessments by using the rolling standard deviation (and we’ll add a new tool by using exponential weighting), but the basic pipeline of raw data to tibble for wrangling and transformation, then to chart for exploration, will remain the same.

    Let’s stick with just daily returns for today and plot the same data with a different color schema. Instead of coloring by sector, let’s color by whether the daily return was positive or negative. This is going to be similar to what we did in a previous post on highcharting jobs Friday.

    First, let’s create two new columns called col_pos and col_neg. col_pos will hold the daily returns that are positive and an NA for returns that are negative. We code that with:

    sector_returns_2018 %>% mutate(col_pos =if_else(daily_return > 0, daily_return, as.numeric(NA)))

    And col_neg will hold negative returns:

    sector_returns_2018 %>% mutate(col_neg =if_else(daily_return < 0, daily_return, as.numeric(NA)))

    Then, we’ll tell ggplot() to chart those two columns in their own geoms and choose a custom color. The geoms won’t overlap because they have no common data. Here is the full code flow. We start with sector_returns_2018, create our new color columns, then pipe to ggplot().

    sector_returns_2018 %>% mutate(col_pos = if_else(daily_return > 0, daily_return, as.numeric(NA)), col_neg = if_else(daily_return < 0, daily_return, as.numeric(NA))) %>% ggplot(aes(x = date)) + geom_col(aes(y = col_neg), alpha = .85, fill = "pink", color = "pink") + geom_col(aes(y = col_pos), alpha = .85, fill = "cornflowerblue", color = "cornflowerblue") + facet_wrap(~sector)

    That looks good, but let’s do some further customization of the non-substantive aesthetics, meaning the aesthetics that don’t actually depend on our data.

    sector_returns_2018 %>% mutate(col_pos = if_else(daily_return > 0, daily_return, as.numeric(NA)), col_neg = if_else(daily_return < 0, daily_return, as.numeric(NA))) %>% ggplot(aes(x = date)) + geom_col(aes(y = col_neg), alpha = .85, fill = "pink", color = "pink") + geom_col(aes(y = col_pos), alpha = .85, fill = "cornflowerblue", color = "cornflowerblue") + facet_wrap(~sector, shrink = FALSE) + labs(title = "2018 daily returns", y = "daily returns") + theme_minimal() + theme(axis.text.x = element_text(angle = 90, hjust = 1), plot.title = element_text(hjust = 0.5), plot.subtitle = element_text(hjust = 0.5), strip.background = element_blank(), strip.placement = "inside", strip.text = element_text(size=15), panel.spacing = unit(0.2, "lines") , panel.background=element_rect(fill="white"))

    Before we close, let’s take some of this work and translate it to highcharter. If we simply want to chart one sector’s daily returns, it would be a relatively straightforward mapping from ggplot() to highcharter. We start with our tibble sector_returns_2018, add a column to hold different color hex codes, and then pass the data to hchart() using a ., and set aesthetics with hcaes(). The key is to first filter() down to our sector of choice, in this case filter(sector == "Information Technology").

    sector_returns_2018 %>% mutate(color_col = if_else(daily_return > 0, "#6495ed", "#ff9999"), date = ymd(date)) %>% filter(sector == "Information Technology") %>% hchart(., hcaes(x = date, y = daily_return, color = color_col), type = "column", pointWidth = 4)

    {"x":{"hc_opts":{"title":{"text":null},"yAxis":{"title":{"text":"daily_return"},"type":"linear"},"credits":{"enabled":false},"exporting":{"enabled":false},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0,"showInLegend":false},"treemap":{"layoutAlgorithm":"squarified"},"scatter":{"marker":{"symbol":"circle"}}},"series":[{"group":"group","data":[{"sector":"Information Technology","date":"2018-01-02","adjClose":63.8049453677,"daily_return":0.0122777204724436,"color_col":"#6495ed","x":1514851200000,"y":0.0122777204724436,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-03","adjClose":64.3371460242,"daily_return":0.00830646215853381,"color_col":"#6495ed","x":1514937600000,"y":0.00830646215853381,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-04","adjClose":64.6623797586,"daily_return":0.00504241269942973,"color_col":"#6495ed","x":1515024000000,"y":0.00504241269942973,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-05","adjClose":65.3424139308,"daily_return":0.0104617738361057,"color_col":"#6495ed","x":1515110400000,"y":0.0104617738361057,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-08","adjClose":65.5888031236,"daily_return":0.00376364764928994,"color_col":"#6495ed","x":1515369600000,"y":0.00376364764928994,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-09","adjClose":65.4212584725,"daily_return":-0.00255773854922214,"color_col":"#ff9999","x":1515456000000,"y":-0.00255773854922214,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-10","adjClose":65.1945804151,"daily_return":-0.00347091573121894,"color_col":"#ff9999","x":1515542400000,"y":-0.00347091573121894,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-11","adjClose":65.4606807433,"daily_return":0.0040733253872558,"color_col":"#6495ed","x":1515628800000,"y":0.0040733253872558,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-12","adjClose":65.8450478841,"daily_return":0.00585455398925383,"color_col":"#6495ed","x":1515715200000,"y":0.00585455398925383,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-16","adjClose":65.5888031236,"daily_return":-0.00389922509606855,"color_col":"#ff9999","x":1516060800000,"y":-0.00389922509606855,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-17","adjClose":66.5743598948,"daily_return":0.0149145195650329,"color_col":"#6495ed","x":1516147200000,"y":0.0149145195650329,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-18","adjClose":66.6926267073,"daily_return":0.00177488583725971,"color_col":"#6495ed","x":1516233600000,"y":0.00177488583725971,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-19","adjClose":66.8207490876,"daily_return":0.00191924470286953,"color_col":"#6495ed","x":1516320000000,"y":0.00191924470286953,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-22","adjClose":67.4712165566,"daily_return":0.00968743815577255,"color_col":"#6495ed","x":1516579200000,"y":0.00968743815577255,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-23","adjClose":67.7668835879,"daily_return":0.00437254741170801,"color_col":"#6495ed","x":1516665600000,"y":0.00437254741170801,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-24","adjClose":67.2445384992,"daily_return":-0.00773782968675896,"color_col":"#ff9999","x":1516752000000,"y":-0.00773782968675896,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-25","adjClose":67.1262716867,"daily_return":-0.00176030557344387,"color_col":"#ff9999","x":1516838400000,"y":-0.00176030557344387,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-26","adjClose":68.1906729996,"daily_return":0.0157322982574888,"color_col":"#6495ed","x":1516924800000,"y":0.0157322982574888,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-29","adjClose":67.5697722337,"daily_return":-0.00914706922181008,"color_col":"#ff9999","x":1517184000000,"y":-0.00914706922181008,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-30","adjClose":66.9587270356,"daily_return":-0.00908431155639811,"color_col":"#ff9999","x":1517270400000,"y":-0.00908431155639811,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-31","adjClose":67.4613609889,"daily_return":0.00747858900181164,"color_col":"#6495ed","x":1517356800000,"y":0.00747858900181164,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-01","adjClose":67.5204943951,"daily_return":0.000876168279280165,"color_col":"#6495ed","x":1517443200000,"y":0.000876168279280165,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-02","adjClose":65.5198141496,"daily_return":-0.0300785694669807,"color_col":"#ff9999","x":1517529600000,"y":-0.0300785694669807,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-05","adjClose":62.7799663257,"daily_return":-0.0427165879683526,"color_col":"#ff9999","x":1517788800000,"y":-0.0427165879683526,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-06","adjClose":64.583535217,"daily_return":0.0283234904732348,"color_col":"#6495ed","x":1517875200000,"y":0.0283234904732348,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-07","adjClose":63.7556675291,"daily_return":-0.0129014229969018,"color_col":"#ff9999","x":1517961600000,"y":-0.0129014229969018,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-08","adjClose":61.1143753823,"daily_return":-0.0423109676937292,"color_col":"#ff9999","x":1518048000000,"y":-0.0423109676937292,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-09","adjClose":62.6124216745,"daily_return":0.0242165729161989,"color_col":"#6495ed","x":1518134400000,"y":0.0242165729161989,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-12","adjClose":63.7359563937,"daily_return":0.0177851801805149,"color_col":"#6495ed","x":1518393600000,"y":0.0177851801805149,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-13","adjClose":63.8936454771,"daily_return":0.00247104372852025,"color_col":"#6495ed","x":1518480000000,"y":0.00247104372852025,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-14","adjClose":65.0664580348,"daily_return":0.0181892672376547,"color_col":"#6495ed","x":1518566400000,"y":0.0181892672376547,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-15","adjClose":66.3082595666,"daily_return":0.0189052892409229,"color_col":"#6495ed","x":1518652800000,"y":0.0189052892409229,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-16","adjClose":66.2097038894,"daily_return":-0.00148743148174812,"color_col":"#ff9999","x":1518739200000,"y":-0.00148743148174812,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-20","adjClose":66.2688372957,"daily_return":0.000892724356687857,"color_col":"#6495ed","x":1519084800000,"y":0.000892724356687857,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-21","adjClose":65.8450478841,"daily_return":-0.00641553860276556,"color_col":"#ff9999","x":1519171200000,"y":-0.00641553860276556,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-22","adjClose":65.9238924258,"daily_return":0.0011967091929872,"color_col":"#6495ed","x":1519257600000,"y":0.0011967091929872,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-23","adjClose":67.3036719055,"daily_return":0.0207138638429063,"color_col":"#6495ed","x":1519344000000,"y":0.0207138638429063,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-26","adjClose":68.3582176507,"daily_return":0.0155469894994651,"color_col":"#6495ed","x":1519603200000,"y":0.0155469894994651,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-27","adjClose":67.6683279108,"daily_return":-0.0101435444435873,"color_col":"#ff9999","x":1519689600000,"y":-0.0101435444435873,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-28","adjClose":67.1854050929,"daily_return":-0.00716220265500844,"color_col":"#ff9999","x":1519776000000,"y":-0.00716220265500844,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-01","adjClose":66.0717259415,"daily_return":-0.0167151291999694,"color_col":"#ff9999","x":1519862400000,"y":-0.0167151291999694,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-02","adjClose":66.702482275,"daily_return":0.00950125912308408,"color_col":"#6495ed","x":1519948800000,"y":0.00950125912308408,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-05","adjClose":67.3825164472,"daily_return":0.0101434166287762,"color_col":"#6495ed","x":1520208000000,"y":0.0101434166287762,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-06","adjClose":67.5303499629,"daily_return":0.00219154153050383,"color_col":"#6495ed","x":1520294400000,"y":0.00219154153050383,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-07","adjClose":67.9048615359,"daily_return":0.00553050456284687,"color_col":"#6495ed","x":1520380800000,"y":0.00553050456284687,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-08","adjClose":68.2005285673,"daily_return":0.00434468460458337,"color_col":"#6495ed","x":1520467200000,"y":0.00434468460458337,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-09","adjClose":69.4916079375,"daily_return":0.0187536811062188,"color_col":"#6495ed","x":1520553600000,"y":0.0187536811062188,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-12","adjClose":69.7084304272,"daily_return":0.00311526731745726,"color_col":"#6495ed","x":1520812800000,"y":0.00311526731745726,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-13","adjClose":68.9101294425,"daily_return":-0.0115180797009877,"color_col":"#ff9999","x":1520899200000,"y":-0.0115180797009877,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-14","adjClose":68.8509960363,"daily_return":-0.000858491967545838,"color_col":"#ff9999","x":1520985600000,"y":-0.000858491967545838,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-15","adjClose":68.8904183071,"daily_return":0.00057240986037943,"color_col":"#6495ed","x":1521072000000,"y":0.00057240986037943,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-16","adjClose":68.8192088737,"daily_return":-0.00103419697235019,"color_col":"#ff9999","x":1521158400000,"y":-0.00103419697235019,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-19","adjClose":67.4548861005,"daily_return":-0.0200238843525495,"color_col":"#ff9999","x":1521417600000,"y":-0.0200238843525495,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-20","adjClose":67.4252269098,"daily_return":-0.000439785977578211,"color_col":"#ff9999","x":1521504000000,"y":-0.000439785977578211,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-21","adjClose":67.0198846365,"daily_return":-0.00602987340786409,"color_col":"#ff9999","x":1521590400000,"y":-0.00602987340786409,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-22","adjClose":65.2897651777,"daily_return":-0.0261540723905354,"color_col":"#ff9999","x":1521676800000,"y":-0.0261540723905354,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-23","adjClose":63.549759322,"daily_return":-0.0270120781820617,"color_col":"#ff9999","x":1521763200000,"y":-0.0270120781820617,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-26","adjClose":65.9620401674,"daily_return":0.0372562171803859,"color_col":"#6495ed","x":1522022400000,"y":0.0372562171803859,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-27","adjClose":63.8463512292,"daily_return":-0.0325999927200025,"color_col":"#ff9999","x":1522108800000,"y":-0.0325999927200025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-28","adjClose":63.4212361622,"daily_return":-0.00668067426807006,"color_col":"#ff9999","x":1522195200000,"y":-0.00668067426807006,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-29","adjClose":64.6768085694,"daily_return":0.0196039310476008,"color_col":"#6495ed","x":1522281600000,"y":0.0196039310476008,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-02","adjClose":63.1345306519,"daily_return":-0.0241348348222914,"color_col":"#ff9999","x":1522627200000,"y":-0.0241348348222914,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-03","adjClose":63.757373657,"daily_return":0.00981698573442014,"color_col":"#6495ed","x":1522713600000,"y":0.00981698573442014,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-04","adjClose":64.6471493787,"daily_return":0.0138591685511695,"color_col":"#6495ed","x":1522800000000,"y":0.0138591685511695,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-05","adjClose":64.9140820952,"daily_return":0.00412057050018877,"color_col":"#6495ed","x":1522886400000,"y":0.00412057050018877,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-06","adjClose":63.3223721931,"daily_return":-0.0248258837303705,"color_col":"#ff9999","x":1522972800000,"y":-0.0248258837303705,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-09","adjClose":63.8166920385,"daily_return":0.00777608895023096,"color_col":"#6495ed","x":1523232000000,"y":0.00777608895023096,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-10","adjClose":65.3886291468,"daily_return":0.0243335902608885,"color_col":"#6495ed","x":1523318400000,"y":0.0243335902608885,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-11","adjClose":65.0030596674,"daily_return":-0.00591403649583366,"color_col":"#ff9999","x":1523404800000,"y":-0.00591403649583366,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-12","adjClose":65.7840850231,"daily_return":0.0119435995324633,"color_col":"#6495ed","x":1523491200000,"y":0.0119435995324633,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-13","adjClose":65.5665842911,"daily_return":-0.00331175976379505,"color_col":"#ff9999","x":1523577600000,"y":-0.00331175976379505,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-16","adjClose":66.0707905334,"daily_return":0.00766057069613879,"color_col":"#6495ed","x":1523836800000,"y":0.00766057069613879,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-17","adjClose":67.29670375,"daily_return":0.018384505937763,"color_col":"#6495ed","x":1523923200000,"y":0.018384505937763,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-18","adjClose":67.1187486056,"daily_return":-0.00264783914724731,"color_col":"#ff9999","x":1524009600000,"y":-0.00264783914724731,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-19","adjClose":66.3772688375,"daily_return":-0.0111087567621349,"color_col":"#ff9999","x":1524096000000,"y":-0.0111087567621349,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-20","adjClose":65.4578339251,"daily_return":-0.0139484826150573,"color_col":"#ff9999","x":1524182400000,"y":-0.0139484826150573,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-23","adjClose":65.2205603994,"daily_return":-0.00363141570071868,"color_col":"#ff9999","x":1524441600000,"y":-0.00363141570071868,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-24","adjClose":64.083624755,"daily_return":-0.017585895521794,"color_col":"#ff9999","x":1524528000000,"y":-0.017585895521794,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-25","adjClose":64.0935111519,"daily_return":0.000154261473384487,"color_col":"#6495ed","x":1524614400000,"y":0.000154261473384487,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-26","adjClose":65.260105987,"daily_return":0.0180377865138439,"color_col":"#6495ed","x":1524700800000,"y":0.0180377865138439,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-27","adjClose":65.1414692241,"daily_return":-0.00181956077508794,"color_col":"#ff9999","x":1524787200000,"y":-0.00181956077508794,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-30","adjClose":64.7163541571,"daily_return":-0.00654741585228713,"color_col":"#ff9999","x":1525046400000,"y":-0.00654741585228713,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-01","adjClose":65.5270387035,"daily_return":0.0124489234849827,"color_col":"#6495ed","x":1525132800000,"y":0.0124489234849827,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-02","adjClose":65.4578339251,"daily_return":-0.00105668362232336,"color_col":"#ff9999","x":1525219200000,"y":-0.00105668362232336,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-03","adjClose":65.6061298788,"daily_return":0.0022629563868044,"color_col":"#6495ed","x":1525305600000,"y":0.0022629563868044,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-04","adjClose":66.8518158891,"daily_return":0.0188093319566436,"color_col":"#6495ed","x":1525392000000,"y":0.0188093319566436,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-07","adjClose":67.3164765438,"daily_return":0.00692656221578059,"color_col":"#6495ed","x":1525651200000,"y":0.00692656221578059,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-08","adjClose":67.4647724974,"daily_return":0.00220054368834255,"color_col":"#6495ed","x":1525737600000,"y":0.00220054368834255,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-09","adjClose":68.2952298376,"daily_return":0.012234350094503,"color_col":"#6495ed","x":1525824000000,"y":0.012234350094503,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-10","adjClose":69.1850055593,"daily_return":0.0129442336613144,"color_col":"#6495ed","x":1525910400000,"y":0.0129442336613144,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-11","adjClose":69.0861415902,"daily_return":-0.00143000167403518,"color_col":"#ff9999","x":1525996800000,"y":-0.00143000167403518,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-14","adjClose":69.0762551933,"daily_return":-0.00014311270138645,"color_col":"#ff9999","x":1526256000000,"y":-0.00014311270138645,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-15","adjClose":68.4237529974,"daily_return":-0.00949101171057798,"color_col":"#ff9999","x":1526342400000,"y":-0.00949101171057798,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-16","adjClose":68.7302313016,"daily_return":0.00446912010430811,"color_col":"#6495ed","x":1526428800000,"y":0.00446912010430811,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-17","adjClose":68.3743210129,"daily_return":-0.00519182014243569,"color_col":"#ff9999","x":1526515200000,"y":-0.00519182014243569,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-18","adjClose":68.0876155026,"daily_return":-0.00420199125818677,"color_col":"#ff9999","x":1526601600000,"y":-0.00420199125818677,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-21","adjClose":68.680799317,"daily_return":0.00867433514737215,"color_col":"#6495ed","x":1526860800000,"y":0.00867433514737215,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-22","adjClose":68.5819353479,"daily_return":-0.00144050730793133,"color_col":"#ff9999","x":1526947200000,"y":-0.00144050730793133,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-23","adjClose":69.0861415902,"daily_return":0.00732498786883795,"color_col":"#6495ed","x":1527033600000,"y":0.00732498786883795,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-24","adjClose":69.007050415,"daily_return":-0.00114547549665023,"color_col":"#ff9999","x":1527120000000,"y":-0.00114547549665023,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-25","adjClose":68.9576184304,"daily_return":-0.000716589067750739,"color_col":"#ff9999","x":1527206400000,"y":-0.000716589067750739,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-29","adjClose":68.5819353479,"daily_return":-0.00546292330443698,"color_col":"#ff9999","x":1527552000000,"y":-0.00546292330443698,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-30","adjClose":69.0861415902,"daily_return":0.00732498786883795,"color_col":"#6495ed","x":1527638400000,"y":0.00732498786883795,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-31","adjClose":69.105914384,"daily_return":0.000286163973688858,"color_col":"#6495ed","x":1527724800000,"y":0.000286163973688858,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-01","adjClose":70.282395616,"daily_return":0.0168810307015947,"color_col":"#6495ed","x":1527811200000,"y":0.0168810307015947,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-04","adjClose":70.8459202398,"daily_return":0.00798603193637337,"color_col":"#6495ed","x":1528070400000,"y":0.00798603193637337,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-05","adjClose":71.0930801625,"daily_return":0.0034826252377389,"color_col":"#6495ed","x":1528156800000,"y":0.0034826252377389,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-06","adjClose":71.5577408171,"daily_return":0.00651468102039932,"color_col":"#6495ed","x":1528243200000,"y":0.00651468102039932,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-07","adjClose":70.9843297965,"daily_return":-0.00804554208085584,"color_col":"#ff9999","x":1528329600000,"y":-0.00804554208085584,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-08","adjClose":70.8656930336,"daily_return":-0.00167270738762948,"color_col":"#ff9999","x":1528416000000,"y":-0.00167270738762948,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-11","adjClose":70.9447842089,"daily_return":0.00111544908441985,"color_col":"#6495ed","x":1528675200000,"y":0.00111544908441985,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-12","adjClose":71.2908081006,"daily_return":0.00486551317720441,"color_col":"#6495ed","x":1528761600000,"y":0.00486551317720441,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-13","adjClose":70.925011415,"daily_return":-0.00514425882480474,"color_col":"#ff9999","x":1528848000000,"y":-0.00514425882480474,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-14","adjClose":71.4292176573,"daily_return":0.00708385488859076,"color_col":"#6495ed","x":1528934400000,"y":0.00708385488859076,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-15","adjClose":71.1576383343,"daily_return":-0.00380932238833775,"color_col":"#ff9999","x":1529020800000,"y":-0.00380932238833775,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-18","adjClose":71.2370110485,"daily_return":0.00111482731640056,"color_col":"#6495ed","x":1529280000000,"y":0.00111482731640056,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-19","adjClose":70.8699122451,"daily_return":-0.00516652688654595,"color_col":"#ff9999","x":1529366400000,"y":-0.00516652688654595,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-20","adjClose":71.0187360843,"daily_return":0.00209775617046493,"color_col":"#6495ed","x":1529452800000,"y":0.00209775617046493,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-21","adjClose":70.4730486738,"daily_return":-0.00771338232761121,"color_col":"#ff9999","x":1529539200000,"y":-0.00771338232761121,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-22","adjClose":70.2448521203,"daily_return":-0.00324332231007052,"color_col":"#ff9999","x":1529625600000,"y":-0.00324332231007052,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-25","adjClose":68.7863784957,"daily_return":-0.0209812877462685,"color_col":"#ff9999","x":1529884800000,"y":-0.0209812877462685,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-26","adjClose":69.0641829957,"daily_return":0.00403052222747124,"color_col":"#6495ed","x":1529971200000,"y":0.00403052222747124,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-27","adjClose":68.1216320138,"daily_return":-0.0137414471519026,"color_col":"#ff9999","x":1530057600000,"y":-0.0137414471519026,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-28","adjClose":68.9550455136,"daily_return":0.0121599645421879,"color_col":"#6495ed","x":1530144000000,"y":0.0121599645421879,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-29","adjClose":68.9252807457,"daily_return":-0.000431747866716847,"color_col":"#ff9999","x":1530230400000,"y":-0.000431747866716847,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-02","adjClose":69.5404192812,"daily_return":0.0088851258072058,"color_col":"#6495ed","x":1530489600000,"y":0.0088851258072058,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-03","adjClose":68.7169273708,"daily_return":-0.0119125915372393,"color_col":"#ff9999","x":1530576000000,"y":-0.0119125915372393,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-05","adjClose":69.6892431205,"daily_return":0.014050410352759,"color_col":"#6495ed","x":1530748800000,"y":0.014050410352759,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-06","adjClose":70.5028134416,"daily_return":0.0116066412650611,"color_col":"#6495ed","x":1530835200000,"y":0.0116066412650611,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-09","adjClose":71.0385792629,"daily_return":0.00757048337433641,"color_col":"#6495ed","x":1531094400000,"y":0.00757048337433641,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-10","adjClose":71.2072462807,"daily_return":0.00237148747533844,"color_col":"#6495ed","x":1531180800000,"y":0.00237148747533844,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-11","adjClose":70.9294417808,"daily_return":-0.00390898166306819,"color_col":"#ff9999","x":1531267200000,"y":-0.00390898166306819,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-12","adjClose":72.0505813697,"daily_return":0.0156827862070719,"color_col":"#6495ed","x":1531353600000,"y":0.0156827862070719,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-13","adjClose":71.9712086554,"daily_return":-0.0011022321319869,"color_col":"#ff9999","x":1531440000000,"y":-0.0011022321319869,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-16","adjClose":71.8025416376,"daily_return":-0.00234628497667977,"color_col":"#ff9999","x":1531699200000,"y":-0.00234628497667977,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-17","adjClose":72.3383074589,"daily_return":0.00743395494090926,"color_col":"#6495ed","x":1531785600000,"y":0.00743395494090926,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-18","adjClose":72.2192483875,"daily_return":-0.00164722068830692,"color_col":"#ff9999","x":1531872000000,"y":-0.00164722068830692,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-19","adjClose":71.9612870662,"daily_return":-0.00357831375421114,"color_col":"#ff9999","x":1531958400000,"y":-0.00357831375421114,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-20","adjClose":71.9811302447,"daily_return":0.000275709953972303,"color_col":"#6495ed","x":1532044800000,"y":0.000275709953972303,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-23","adjClose":72.3482290482,"daily_return":0.00508697048091022,"color_col":"#6495ed","x":1532304000000,"y":0.00508697048091022,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-24","adjClose":72.7450926195,"daily_return":0.00547047316102667,"color_col":"#6495ed","x":1532390400000,"y":0.00547047316102667,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-25","adjClose":73.6578788335,"daily_return":0.0124696655065408,"color_col":"#6495ed","x":1532476800000,"y":0.0124696655065408,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-26","adjClose":72.5268176553,"daily_return":-0.0154747217220974,"color_col":"#ff9999","x":1532563200000,"y":-0.0154747217220974,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-27","adjClose":71.2866189949,"daily_return":-0.0172477542318719,"color_col":"#ff9999","x":1532649600000,"y":-0.0172477542318719,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-30","adjClose":70.1754009953,"daily_return":-0.0157108014765353,"color_col":"#ff9999","x":1532908800000,"y":-0.0157108014765353,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-31","adjClose":70.3639111917,"daily_return":0.00268267015856427,"color_col":"#6495ed","x":1532995200000,"y":0.00268267015856427,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-01","adjClose":70.9988929058,"daily_return":0.00898377743476608,"color_col":"#6495ed","x":1533081600000,"y":0.00898377743476608,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-02","adjClose":71.8918359412,"daily_return":0.0124984268260251,"color_col":"#6495ed","x":1533168000000,"y":0.0124984268260251,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-03","adjClose":72.1497972625,"daily_return":0.00358176440165803,"color_col":"#6495ed","x":1533254400000,"y":0.00358176440165803,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-06","adjClose":72.5367392445,"daily_return":0.00534870643574781,"color_col":"#6495ed","x":1533513600000,"y":0.00534870643574781,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-07","adjClose":72.8145437445,"daily_return":0.0038225302529753,"color_col":"#6495ed","x":1533600000000,"y":0.0038225302529753,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-08","adjClose":73.0129755301,"daily_return":0.00272146038084298,"color_col":"#6495ed","x":1533686400000,"y":0.00272146038084298,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-09","adjClose":73.042740298,"daily_return":0.000407581013084801,"color_col":"#6495ed","x":1533772800000,"y":0.000407581013084801,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-10","adjClose":72.4573665303,"daily_return":-0.0080464123192785,"color_col":"#ff9999","x":1533859200000,"y":-0.0080464123192785,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-13","adjClose":72.3581506375,"daily_return":-0.00137023863552788,"color_col":"#ff9999","x":1534118400000,"y":-0.00137023863552788,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-14","adjClose":72.8046221552,"daily_return":0.00615134193080369,"color_col":"#6495ed","x":1534204800000,"y":0.00615134193080369,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-15","adjClose":72.1497972625,"daily_return":-0.0090349690586482,"color_col":"#ff9999","x":1534291200000,"y":-0.0090349690586482,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-16","adjClose":72.4672881196,"daily_return":0.00439078641830815,"color_col":"#6495ed","x":1534377600000,"y":0.00439078641830815,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-17","adjClose":72.5764256017,"daily_return":0.0015048911793123,"color_col":"#6495ed","x":1534464000000,"y":0.0015048911793123,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-20","adjClose":72.4672881196,"daily_return":-0.0015048911793123,"color_col":"#ff9999","x":1534723200000,"y":-0.0015048911793123,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-21","adjClose":72.586347191,"daily_return":0.00164158723608399,"color_col":"#6495ed","x":1534809600000,"y":0.00164158723608399,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-22","adjClose":72.8046221552,"daily_return":0.00300259540425607,"color_col":"#6495ed","x":1534896000000,"y":0.00300259540425607,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-23","adjClose":72.9633675837,"daily_return":0.00217805694570927,"color_col":"#6495ed","x":1534982400000,"y":0.00217805694570927,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-24","adjClose":73.6975651906,"daily_return":0.0100122606112842,"color_col":"#6495ed","x":1535068800000,"y":0.0100122606112842,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-27","adjClose":74.3722332618,"daily_return":0.00911290144550403,"color_col":"#6495ed","x":1535328000000,"y":0.00911290144550403,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-28","adjClose":74.5012139225,"daily_return":0.00173275618199131,"color_col":"#6495ed","x":1535414400000,"y":0.00173275618199131,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-29","adjClose":75.1758819937,"daily_return":0.00901504183133106,"color_col":"#6495ed","x":1535500800000,"y":0.00901504183133106,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-30","adjClose":74.9476854402,"daily_return":-0.00304011865899678,"color_col":"#ff9999","x":1535587200000,"y":-0.00304011865899678,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-31","adjClose":75.0072149759,"daily_return":0.000793965901241478,"color_col":"#6495ed","x":1535673600000,"y":0.000793965901241478,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-04","adjClose":74.7194888867,"daily_return":-0.00384335507231715,"color_col":"#ff9999","x":1536019200000,"y":-0.00384335507231715,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-05","adjClose":73.7868594941,"daily_return":-0.0125602933986286,"color_col":"#ff9999","x":1536105600000,"y":-0.0125602933986286,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-06","adjClose":73.2510936729,"daily_return":-0.00728748164336945,"color_col":"#ff9999","x":1536192000000,"y":-0.00728748164336945,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-07","adjClose":73.0030539408,"daily_return":-0.00339190339495055,"color_col":"#ff9999","x":1536278400000,"y":-0.00339190339495055,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-10","adjClose":73.2312504943,"daily_return":0.00312097410535994,"color_col":"#6495ed","x":1536537600000,"y":0.00312097410535994,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-11","adjClose":73.8563106191,"daily_return":0.00849920799210402,"color_col":"#6495ed","x":1536624000000,"y":0.00849920799210402,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-12","adjClose":73.5487413514,"daily_return":-0.00417312310463025,"color_col":"#ff9999","x":1536710400000,"y":-0.00417312310463025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-13","adjClose":74.4119196189,"daily_return":0.0116678048666046,"color_col":"#6495ed","x":1536796800000,"y":0.0116678048666046,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-14","adjClose":74.3523900832,"daily_return":-0.000800320170834645,"color_col":"#ff9999","x":1536883200000,"y":-0.000800320170834645,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-17","adjClose":73.4197606907,"daily_return":-0.0126227001605983,"color_col":"#ff9999","x":1537142400000,"y":-0.0126227001605983,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-18","adjClose":73.886075387,"daily_return":0.00633126651867233,"color_col":"#6495ed","x":1537228800000,"y":0.00633126651867233,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-19","adjClose":73.6975651906,"daily_return":-0.00255462323848299,"color_col":"#ff9999","x":1537315200000,"y":-0.00255462323848299,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-20","adjClose":74.5706650475,"daily_return":0.0117774380612659,"color_col":"#6495ed","x":1537401600000,"y":0.0117774380612659,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-21","adjClose":74.2773828683,"daily_return":-0.00394069741377745,"color_col":"#ff9999","x":1537488000000,"y":-0.00394069741377745,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-24","adjClose":74.6457333797,"daily_return":0.00494686482331641,"color_col":"#6495ed","x":1537747200000,"y":0.00494686482331641,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-25","adjClose":74.5561346067,"daily_return":-0.00120104104566199,"color_col":"#ff9999","x":1537833600000,"y":-0.00120104104566199,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-26","adjClose":74.2773828683,"daily_return":-0.00374582377765442,"color_col":"#ff9999","x":1537920000000,"y":-0.00374582377765442,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-27","adjClose":74.7154213144,"daily_return":0.0058800115963118,"color_col":"#6495ed","x":1538006400000,"y":0.0058800115963118,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-28","adjClose":74.9941730528,"daily_return":0.00372390375793419,"color_col":"#6495ed","x":1538092800000,"y":0.00372390375793419,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-01","adjClose":75.352568145,"daily_return":0.00476758948284228,"color_col":"#6495ed","x":1538352000000,"y":0.00476758948284228,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-02","adjClose":75.3625235642,"daily_return":0.000132109121940616,"color_col":"#6495ed","x":1538438400000,"y":0.000132109121940616,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-03","adjClose":75.5914982065,"daily_return":0.00303370278214921,"color_col":"#6495ed","x":1538524800000,"y":0.00303370278214921,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-04","adjClose":74.2276057721,"daily_return":-0.0182076928479997,"color_col":"#ff9999","x":1538611200000,"y":-0.0182076928479997,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-05","adjClose":73.2917963646,"daily_return":-0.0126874424259897,"color_col":"#ff9999","x":1538697600000,"y":-0.0126874424259897,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-08","adjClose":72.4654965686,"daily_return":-0.0113381448205025,"color_col":"#ff9999","x":1538956800000,"y":-0.0113381448205025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-09","adjClose":72.7243374685,"daily_return":0.00356555506576406,"color_col":"#6495ed","x":1539043200000,"y":0.00356555506576406,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-10","adjClose":69.2001190614,"daily_return":-0.0496735110843458,"color_col":"#ff9999","x":1539129600000,"y":-0.0496735110843458,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-11","adjClose":68.3240421693,"daily_return":-0.0127408701909753,"color_col":"#ff9999","x":1539216000000,"y":-0.0127408701909753,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-12","adjClose":70.5142343997,"daily_return":0.0315528828449656,"color_col":"#6495ed","x":1539302400000,"y":0.0315528828449656,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-15","adjClose":69.3594057691,"daily_return":-0.0165128307238591,"color_col":"#ff9999","x":1539561600000,"y":-0.0165128307238591,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-16","adjClose":71.4500438072,"daily_return":0.0296967523998157,"color_col":"#6495ed","x":1539648000000,"y":0.0296967523998157,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-17","adjClose":71.1215149726,"daily_return":-0.00460862487429825,"color_col":"#ff9999","x":1539734400000,"y":-0.00460862487429825,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-18","adjClose":69.7277562806,"daily_return":-0.0197914291495564,"color_col":"#ff9999","x":1539820800000,"y":-0.0197914291495564,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-19","adjClose":69.6978900229,"daily_return":-0.000428418428727539,"color_col":"#ff9999","x":1539907200000,"y":-0.000428418428727539,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-22","adjClose":70.2753043382,"daily_return":0.00825040241845176,"color_col":"#6495ed","x":1540166400000,"y":0.00825040241845176,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-23","adjClose":70.006508019,"daily_return":-0.00383223803066457,"color_col":"#ff9999","x":1540252800000,"y":-0.00383223803066457,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-24","adjClose":66.8705509618,"daily_return":-0.0458295340986705,"color_col":"#ff9999","x":1540339200000,"y":-0.0458295340986705,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-25","adjClose":69.1702528037,"daily_return":0.0338122220938439,"color_col":"#6495ed","x":1540425600000,"y":0.0338122220938439,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-26","adjClose":67.7864495309,"daily_return":-0.0202085818773927,"color_col":"#ff9999","x":1540512000000,"y":-0.0202085818773927,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-29","adjClose":66.6415763196,"daily_return":-0.0170336637110067,"color_col":"#ff9999","x":1540771200000,"y":-0.0170336637110067,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-30","adjClose":67.3882327617,"daily_return":0.0111417627361101,"color_col":"#6495ed","x":1540857600000,"y":0.0111417627361101,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-31","adjClose":68.9910552576,"daily_return":0.023506447675584,"color_col":"#6495ed","x":1540944000000,"y":0.023506447675584,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-01","adjClose":69.7974442152,"daily_return":0.0116205310236444,"color_col":"#6495ed","x":1541030400000,"y":0.0116205310236444,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-02","adjClose":68.4335517808,"daily_return":-0.0197341657973888,"color_col":"#ff9999","x":1541116800000,"y":-0.0197341657973888,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-05","adjClose":68.3638638462,"daily_return":-0.00101884878904901,"color_col":"#ff9999","x":1541376000000,"y":-0.00101884878904901,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-06","adjClose":68.791946873,"daily_return":0.0062423081402958,"color_col":"#6495ed","x":1541462400000,"y":0.0062423081402958,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-07","adjClose":70.8128969765,"daily_return":0.0289544579717305,"color_col":"#6495ed","x":1541548800000,"y":0.0289544579717305,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-08","adjClose":70.7531644612,"daily_return":-0.000843881905566946,"color_col":"#ff9999","x":1541635200000,"y":-0.000843881905566946,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-09","adjClose":69.528647896,"daily_return":-0.0174583953077576,"color_col":"#ff9999","x":1541721600000,"y":-0.0174583953077576,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-12","adjClose":67.0796147656,"daily_return":-0.0358586735535757,"color_col":"#ff9999","x":1541980800000,"y":-0.0358586735535757,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-13","adjClose":67.1592581195,"daily_return":0.0011865916560998,"color_col":"#6495ed","x":1542067200000,"y":0.0011865916560998,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-14","adjClose":66.3528691619,"daily_return":-0.012079783009435,"color_col":"#ff9999","x":1542153600000,"y":-0.012079783009435,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-15","adjClose":68.0154241732,"daily_return":0.0247475028562087,"color_col":"#6495ed","x":1542240000000,"y":0.0247475028562087,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-16","adjClose":67.9059145617,"daily_return":-0.00161136781339088,"color_col":"#ff9999","x":1542326400000,"y":-0.00161136781339088,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-19","adjClose":65.3175055621,"daily_return":-0.0388630583103575,"color_col":"#ff9999","x":1542585600000,"y":-0.0388630583103575,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-20","adjClose":63.9137914508,"daily_return":-0.0217249126608303,"color_col":"#ff9999","x":1542672000000,"y":-0.0217249126608303,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-21","adjClose":64.3816961546,"daily_return":0.00729420476308995,"color_col":"#6495ed","x":1542758400000,"y":0.00729420476308995,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-23","adjClose":63.79432642,"daily_return":-0.00916511269969877,"color_col":"#ff9999","x":1542931200000,"y":-0.00916511269969877,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-26","adjClose":65.2378622083,"daily_return":0.0223757502925608,"color_col":"#6495ed","x":1543190400000,"y":0.0223757502925608,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-27","adjClose":65.3672826582,"daily_return":0.00198185902084358,"color_col":"#6495ed","x":1543276800000,"y":0.00198185902084358,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-28","adjClose":67.6570290809,"daily_return":0.0344293847304247,"color_col":"#6495ed","x":1543363200000,"y":0.0344293847304247,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-29","adjClose":66.9999714118,"daily_return":-0.00975906015275108,"color_col":"#ff9999","x":1543449600000,"y":-0.00975906015275108,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-30","adjClose":67.6371182425,"daily_return":0.0094647260823173,"color_col":"#6495ed","x":1543536000000,"y":0.0094647260823173,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-03","adjClose":69.1304311268,"daily_return":0.0218381076187182,"color_col":"#6495ed","x":1543795200000,"y":0.0218381076187182,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-04","adjClose":66.5121558696,"daily_return":-0.0386103004139473,"color_col":"#ff9999","x":1543881600000,"y":-0.0386103004139473,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-06","adjClose":66.661487158,"daily_return":0.00224265624328712,"color_col":"#6495ed","x":1544054400000,"y":0.00224265624328712,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-07","adjClose":64.3120082199,"daily_return":-0.0358810153931968,"color_col":"#ff9999","x":1544140800000,"y":-0.0358810153931968,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-10","adjClose":65.1980405313,"daily_return":0.0136830484415791,"color_col":"#6495ed","x":1544400000000,"y":0.0136830484415791,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-11","adjClose":65.2776838852,"daily_return":0.00122081504659644,"color_col":"#6495ed","x":1544486400000,"y":0.00122081504659644,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-12","adjClose":65.7854102659,"daily_return":0.00774785493743746,"color_col":"#6495ed","x":1544572800000,"y":0.00774785493743746,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-13","adjClose":65.8949198774,"daily_return":0.00166326491780389,"color_col":"#6495ed","x":1544659200000,"y":0.00166326491780389,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-14","adjClose":64.2821419623,"daily_return":-0.02477948749224,"color_col":"#ff9999","x":1544745600000,"y":-0.02477948749224,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-17","adjClose":62.9182495279,"daily_return":-0.0214456054857752,"color_col":"#ff9999","x":1545004800000,"y":-0.0214456054857752,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-18","adjClose":63.4160204893,"daily_return":0.00788026142444043,"color_col":"#6495ed","x":1545091200000,"y":0.00788026142444043,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-19","adjClose":62.1616376665,"daily_return":-0.0199784669298362,"color_col":"#ff9999","x":1545177600000,"y":-0.0199784669298362,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-20","adjClose":61.0466307128,"daily_return":-0.0181000416442867,"color_col":"#ff9999","x":1545264000000,"y":-0.0181000416442867,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-21","adjClose":59.2,"daily_return":-0.0307164681642602,"color_col":"#ff9999","x":1545350400000,"y":-0.0307164681642602,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-24","adjClose":57.62,"daily_return":-0.0270518122335783,"color_col":"#ff9999","x":1545609600000,"y":-0.0270518122335783,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-26","adjClose":61.1,"daily_return":0.0586421365211676,"color_col":"#6495ed","x":1545782400000,"y":0.0586421365211676,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-27","adjClose":61.54,"daily_return":0.00717550371634612,"color_col":"#6495ed","x":1545868800000,"y":0.00717550371634612,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-28","adjClose":61.4,"daily_return":-0.0022775347407995,"color_col":"#ff9999","x":1545955200000,"y":-0.0022775347407995,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-31","adjClose":61.98,"daily_return":0.00940191720650585,"color_col":"#6495ed","x":1546214400000,"y":0.00940191720650585,"color":"#6495ed"}],"type":"column","pointWidth":4}],"xAxis":{"type":"datetime","title":{"text":"date"},"categories":null}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]} That chart looks good, and we can hover on the bars to see the exact daily return and date for each observation.

    I love highcharter, and in the next month I’ll be launching a DataCamp course that covers Highcharter for Finance, but, I must say, it doesn’t have a good way to facet_wrap() and build separate charts for each sector. We can dream about some sort of hc_facet function but for now we’ll need to build a custom function for that job, similar to what we did for the jobs report.

    We start by spreading our data to wide format, because we’re going to build a chart using each column.

    sector_returns_2018_wide <- sector_returns_2018 %>% select(-adjClose) %>% spread(sector, daily_return) sector_returns_2018_wide # A tibble: 251 x 12 date `Consumer Discr… `Consumer Stapl… Energy Financials 1 2018-01-02 0.0151 -0.00617 1.63e-2 0.000358 2 2018-01-03 0.00458 -0.000354 1.49e-2 0.00536 3 2018-01-04 0.00327 0.00283 6.02e-3 0.00922 4 2018-01-05 0.00789 0.00440 -4.00e-4 0.00282 5 2018-01-08 0.00118 0.00246 5.98e-3 -0.00141 6 2018-01-09 0.00196 -0.00140 -2.52e-3 0.00772 7 2018-01-10 -0.000686 -0.00493 -1.20e-3 0.00836 8 2018-01-11 0.0161 -0.00141 2.03e-2 0.00484 9 2018-01-12 0.0128 0.000353 9.60e-3 0.00893 10 2018-01-16 -0.00717 0.00458 -1.27e-2 -0.00274 # … with 241 more rows, and 7 more variables: `Health Care` , # Industrials , `Information Technology` , Market , # Materials , `Real Estate` , Utilities

    Now, for our function that will create a separate highchart for each sector, we start with map() and pass in the columns names from that wide tibble we just created. That’s how we will iterate over each sector. After mapping across the names, we use function(x) to pass the column name into our code flow.

    map(names(sector_returns_2018_wide[2:11]), function(x){ sector_returns_2018_hc <- sector_returns_2018 %>% filter(sector == x) %>% mutate(coloract = if_else(daily_return > 0, "#6495ed", "#ff9999")) highchart() %>% hc_title(text = paste(x, "2018 daily returns", sep = " ")) %>% hc_add_series(sector_returns_2018_hc, type = "column", pointWidth = 4, hcaes(x = date, y = daily_return, color = coloract), name = "daily return") %>% hc_xAxis(type = "datetime") %>% hc_tooltip(pointFormat = "{point.date}: {point.daily_return: .4f}%") %>% hc_legend(enabled = FALSE) %>% hc_exporting(enabled = TRUE) })

    If you run the code chunk above, it will create 11 separate highcharts of our data as stand-alone charts, meaning they won’t be laid out with any structure. That’s fine, but I want to be able to lay these out in a grid and control the height of each chart. For that, we use hw_grid(rowheight = 300, ncol = 3) %>% htmltools::browsable(). That will create a grid that displays each of the charts – one for each sector’s daily returns.

    map(names(sector_returns_2018_wide[2:11]), function(x){ sector_returns_2018_hc <- sector_returns_2018 %>% filter(sector == x) %>% mutate(coloract = if_else(daily_return > 0, "#6495ed", "#ff9999"), date = ymd(date)) highchart() %>% hc_title(text = paste(x, "2018 daily returns", sep = " ")) %>% hc_add_series(sector_returns_2018_hc, type = "column", pointWidth = 4, hcaes(x = date, y = daily_return, color = coloract), name = "daily return") %>% hc_xAxis(type = "datetime") %>% hc_tooltip(pointFormat = "{point.date}: {point.daily_return: .4f}%") %>% hc_legend(enabled = FALSE) %>% hc_exporting(enabled = TRUE) }) %>% hw_grid(rowheight = 300, ncol = 3) %>% htmltools::browsable()

    {"x":{"hc_opts":{"title":{"text":"Consumer Discretionary 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Consumer Discretionary","date":"2018-01-02","adjClose":98.9398799473,"daily_return":0.0150847590876113,"coloract":"#6495ed","x":1514851200000,"y":0.0150847590876113,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-03","adjClose":99.3941403004,"daily_return":0.00458076881476277,"coloract":"#6495ed","x":1514937600000,"y":0.00458076881476277,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-04","adjClose":99.7200227276,"daily_return":0.00327332534482405,"coloract":"#6495ed","x":1515024000000,"y":0.00327332534482405,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-05","adjClose":100.5100407329,"daily_return":0.00789114372923905,"coloract":"#6495ed","x":1515110400000,"y":0.00789114372923905,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-08","adjClose":100.6285434338,"daily_return":0.00117831906893517,"coloract":"#6495ed","x":1515369600000,"y":0.00117831906893517,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-09","adjClose":100.8260479351,"daily_return":0.00196078494152285,"coloract":"#6495ed","x":1515456000000,"y":0.00196078494152285,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-10","adjClose":100.7569213596,"daily_return":-0.000685837483706209,"coloract":"#ff9999","x":1515542400000,"y":-0.000685837483706209,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-11","adjClose":102.3962087208,"daily_return":0.0161387908835753,"coloract":"#6495ed","x":1515628800000,"y":0.0161387908835753,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-12","adjClose":103.7194888798,"daily_return":0.0128403450645758,"coloract":"#6495ed","x":1515715200000,"y":0.0128403450645758,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-16","adjClose":102.9788469997,"daily_return":-0.00716643457003574,"coloract":"#ff9999","x":1516060800000,"y":-0.00716643457003574,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-17","adjClose":103.4726082531,"daily_return":0.00478332491520916,"coloract":"#6495ed","x":1516147200000,"y":0.00478332491520916,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-18","adjClose":103.3837312275,"daily_return":-0.000859311648772731,"coloract":"#ff9999","x":1516233600000,"y":-0.000859311648772731,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-19","adjClose":104.2823767086,"daily_return":0.00865476894083628,"coloract":"#6495ed","x":1516320000000,"y":0.00865476894083628,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-22","adjClose":105.4377780414,"daily_return":0.0110186169175668,"coloract":"#6495ed","x":1516579200000,"y":0.0110186169175668,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-23","adjClose":106.3265482975,"daily_return":0.00839400563799053,"coloract":"#6495ed","x":1516665600000,"y":0.00839400563799053,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-24","adjClose":106.7808086506,"daily_return":0.00426321312994382,"coloract":"#6495ed","x":1516752000000,"y":0.00426321312994382,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-25","adjClose":106.5931793743,"daily_return":-0.00175868976718352,"coloract":"#ff9999","x":1516838400000,"y":-0.00175868976718352,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-26","adjClose":107.6399532314,"daily_return":0.00977236503852819,"coloract":"#6495ed","x":1516924800000,"y":0.00977236503852819,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-01-29","adjClose":107.3436964794,"daily_return":-0.0027560881018589,"coloract":"#ff9999","x":1517184000000,"y":-0.0027560881018589,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-30","adjClose":106.8104343258,"daily_return":-0.00498018183228943,"coloract":"#ff9999","x":1517270400000,"y":-0.00498018183228943,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-01-31","adjClose":106.4648014484,"daily_return":-0.00324119374410969,"coloract":"#ff9999","x":1517356800000,"y":-0.00324119374410969,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-01","adjClose":105.2797744404,"daily_return":-0.0111931025881491,"coloract":"#ff9999","x":1517443200000,"y":-0.0111931025881491,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-02","adjClose":104.2725014835,"daily_return":-0.00961364614449156,"coloract":"#ff9999","x":1517529600000,"y":-0.00961364614449156,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-05","adjClose":100.7569213596,"daily_return":-0.0342967821313351,"coloract":"#ff9999","x":1517788800000,"y":-0.0342967821313351,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-06","adjClose":103.3343551021,"daily_return":0.0252590000215527,"coloract":"#6495ed","x":1517875200000,"y":0.0252590000215527,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-07","adjClose":103.0183479,"daily_return":-0.00306278953008832,"coloract":"#ff9999","x":1517961600000,"y":-0.00306278953008832,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-08","adjClose":98.9102542721,"daily_return":-0.0406941908264118,"coloract":"#ff9999","x":1518048000000,"y":-0.0406941908264118,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-09","adjClose":99.5718943516,"daily_return":0.00666702305337719,"coloract":"#6495ed","x":1518134400000,"y":0.00666702305337719,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-12","adjClose":100.9248001858,"daily_return":0.0134957473645478,"coloract":"#6495ed","x":1518393600000,"y":0.0134957473645478,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-13","adjClose":101.4481871143,"daily_return":0.00517250945801173,"coloract":"#6495ed","x":1518480000000,"y":0.00517250945801173,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-14","adjClose":103.0677240253,"daily_return":0.0158380906037481,"coloract":"#6495ed","x":1518566400000,"y":0.0158380906037481,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-15","adjClose":103.9861199566,"daily_return":0.00887114130854538,"coloract":"#6495ed","x":1518652800000,"y":0.00887114130854538,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-16","adjClose":103.4824834781,"daily_return":-0.00485507165383048,"coloract":"#ff9999","x":1518739200000,"y":-0.00485507165383048,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-20","adjClose":103.166476276,"daily_return":-0.00305839863697788,"coloract":"#ff9999","x":1519084800000,"y":-0.00305839863697788,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-21","adjClose":103.0183479,"daily_return":-0.00143685067101007,"coloract":"#ff9999","x":1519171200000,"y":-0.00143685067101007,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-22","adjClose":103.1467258259,"daily_return":0.00124538982450062,"coloract":"#6495ed","x":1519257600000,"y":0.00124538982450062,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-23","adjClose":104.5885086857,"daily_return":0.0138811888530297,"coloract":"#6495ed","x":1519344000000,"y":0.0138811888530297,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-26","adjClose":105.4674037166,"daily_return":0.00836824966983141,"coloract":"#6495ed","x":1519603200000,"y":0.00836824966983141,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-02-27","adjClose":103.2356028515,"daily_return":-0.0213881532406983,"coloract":"#ff9999","x":1519689600000,"y":-0.0213881532406983,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-02-28","adjClose":102.7714672733,"daily_return":-0.00450602363545727,"coloract":"#ff9999","x":1519776000000,"y":-0.00450602363545727,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-01","adjClose":101.6654420658,"daily_return":-0.0108203161758205,"coloract":"#ff9999","x":1519862400000,"y":-0.0108203161758205,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-02","adjClose":101.7641943165,"daily_return":0.000970873862954136,"coloract":"#6495ed","x":1519948800000,"y":0.000970873862954136,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-05","adjClose":102.9788469997,"daily_return":0.0118652817283111,"coloract":"#6495ed","x":1520208000000,"y":0.0118652817283111,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-06","adjClose":103.6898632046,"daily_return":0.00688076109288716,"coloract":"#6495ed","x":1520294400000,"y":0.00688076109288716,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-07","adjClose":102.9887222248,"daily_return":-0.00678487002474704,"coloract":"#ff9999","x":1520380800000,"y":-0.00678487002474704,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-08","adjClose":103.314604652,"daily_return":0.00315925780920523,"coloract":"#6495ed","x":1520467200000,"y":0.00315925780920523,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-09","adjClose":104.9143911129,"daily_return":0.0153659477859422,"coloract":"#6495ed","x":1520553600000,"y":0.0153659477859422,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-12","adjClose":105.2600239902,"daily_return":0.00328901297246009,"coloract":"#6495ed","x":1520812800000,"y":0.00328901297246009,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-13","adjClose":104.5193821102,"daily_return":-0.00706117889403579,"coloract":"#ff9999","x":1520899200000,"y":-0.00706117889403579,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-14","adjClose":104.3910041843,"daily_return":-0.00122902402639369,"coloract":"#ff9999","x":1520985600000,"y":-0.00122902402639369,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-15","adjClose":104.2823767086,"daily_return":-0.0010411245080455,"coloract":"#ff9999","x":1521072000000,"y":-0.0010411245080455,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-16","adjClose":104.1735625911,"daily_return":-0.00104400121914416,"coloract":"#ff9999","x":1521158400000,"y":-0.00104400121914416,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-19","adjClose":102.8760976073,"daily_return":-0.0125330509216388,"coloract":"#ff9999","x":1521417600000,"y":-0.0125330509216388,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-20","adjClose":103.4901650042,"daily_return":0.00595125580625044,"coloract":"#6495ed","x":1521504000000,"y":0.00595125580625044,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-21","adjClose":103.4109305014,"daily_return":-0.000765916743744377,"coloract":"#ff9999","x":1521590400000,"y":-0.000765916743744377,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-22","adjClose":101.2121730479,"daily_return":-0.0214916306785478,"coloract":"#ff9999","x":1521676800000,"y":-0.0214916306785478,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-23","adjClose":99.2214061644,"daily_return":-0.0198652576945078,"coloract":"#ff9999","x":1521763200000,"y":-0.0198652576945078,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-26","adjClose":102.153082769,"daily_return":0.0291187206935577,"coloract":"#6495ed","x":1522022400000,"y":0.0291187206935577,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-03-27","adjClose":100.1524115726,"daily_return":-0.0197793582245867,"coloract":"#ff9999","x":1522108800000,"y":-0.0197793582245867,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-28","adjClose":98.9341810917,"daily_return":-0.01223834985392,"coloract":"#ff9999","x":1522195200000,"y":-0.01223834985392,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-03-29","adjClose":100.3207848912,"daily_return":0.0139181091550142,"coloract":"#6495ed","x":1522281600000,"y":0.0139181091550142,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-02","adjClose":97.4881514151,"daily_return":-0.0286420540581265,"coloract":"#ff9999","x":1522627200000,"y":-0.0286420540581265,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-03","adjClose":98.7261905218,"daily_return":0.0126194193983942,"coloract":"#6495ed","x":1522713600000,"y":0.0126194193983942,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-04","adjClose":100.5386797739,"daily_return":0.0181922607566412,"coloract":"#6495ed","x":1522800000000,"y":0.0181922607566412,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-05","adjClose":101.885666322,"daily_return":0.013308739347095,"coloract":"#6495ed","x":1522886400000,"y":0.013308739347095,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-06","adjClose":99.7166218071,"daily_return":-0.021518884876075,"coloract":"#ff9999","x":1522972800000,"y":-0.021518884876075,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-09","adjClose":99.4789182986,"daily_return":-0.00238663597793831,"coloract":"#ff9999","x":1523232000000,"y":-0.00238663597793831,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-10","adjClose":100.6872444667,"daily_return":0.0120733777293394,"coloract":"#6495ed","x":1523318400000,"y":0.0120733777293394,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-11","adjClose":100.3802107683,"daily_return":-0.00305403912022406,"coloract":"#ff9999","x":1523404800000,"y":-0.00305403912022406,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-12","adjClose":100.8160005338,"daily_return":0.00433199456578581,"coloract":"#6495ed","x":1523491200000,"y":0.00433199456578581,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-13","adjClose":100.2514547012,"daily_return":-0.00561550167793268,"coloract":"#ff9999","x":1523577600000,"y":-0.00561550167793268,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-16","adjClose":101.004182478,"daily_return":0.00748034984056734,"coloract":"#6495ed","x":1523836800000,"y":0.00748034984056734,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-17","adjClose":102.8860019202,"daily_return":0.0184596711682392,"coloract":"#6495ed","x":1523923200000,"y":0.0184596711682392,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-18","adjClose":103.37131325,"daily_return":0.00470589103729413,"coloract":"#6495ed","x":1524009600000,"y":0.00470589103729413,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-19","adjClose":103.0444709258,"daily_return":-0.00316683725190536,"coloract":"#ff9999","x":1524096000000,"y":-0.00316683725190536,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-20","adjClose":101.9946137634,"daily_return":-0.0102406459619608,"coloract":"#ff9999","x":1524182400000,"y":-0.0102406459619608,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-23","adjClose":102.2125086461,"daily_return":0.00213405842875503,"coloract":"#6495ed","x":1524441600000,"y":0.00213405842875503,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-24","adjClose":100.598105651,"daily_return":-0.0159206370961664,"coloract":"#ff9999","x":1524528000000,"y":-0.0159206370961664,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-04-25","adjClose":101.0140867909,"daily_return":0.00412655331162348,"coloract":"#6495ed","x":1524614400000,"y":0.00412655331162348,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-26","adjClose":102.6482984117,"daily_return":0.0160485864315216,"coloract":"#6495ed","x":1524700800000,"y":0.0160485864315216,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-27","adjClose":103.1138011158,"daily_return":0.0045246767926983,"coloract":"#6495ed","x":1524787200000,"y":0.0045246767926983,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-04-30","adjClose":102.7077242888,"daily_return":-0.00394591725131921,"coloract":"#ff9999","x":1525046400000,"y":-0.00394591725131921,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-01","adjClose":102.8463846687,"daily_return":0.00134913771984824,"coloract":"#6495ed","x":1525132800000,"y":0.00134913771984824,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-02","adjClose":102.1431784562,"daily_return":-0.00686092462697463,"coloract":"#ff9999","x":1525219200000,"y":-0.00686092462697463,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-03","adjClose":101.6875800649,"daily_return":-0.0044703670175732,"coloract":"#ff9999","x":1525305600000,"y":-0.0044703670175732,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-04","adjClose":103.0246623001,"daily_return":0.0130632270340874,"coloract":"#6495ed","x":1525392000000,"y":0.0130632270340874,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-07","adjClose":103.37131325,"daily_return":0.00335908948736563,"coloract":"#6495ed","x":1525651200000,"y":0.00335908948736563,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-08","adjClose":102.9355234844,"daily_return":-0.00422468223215855,"coloract":"#ff9999","x":1525737600000,"y":-0.00422468223215855,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-09","adjClose":103.2920787471,"daily_return":0.00345788453260809,"coloract":"#6495ed","x":1525824000000,"y":0.00345788453260809,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-10","adjClose":103.6684426356,"daily_return":0.00363706373438877,"coloract":"#6495ed","x":1525910400000,"y":0.00363706373438877,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-11","adjClose":103.8863375183,"daily_return":0.00209963810601899,"coloract":"#6495ed","x":1525996800000,"y":0.00209963810601899,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-14","adjClose":104.0844237754,"daily_return":0.00190494390431883,"coloract":"#6495ed","x":1526256000000,"y":0.00190494390431883,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-15","adjClose":103.4802606914,"daily_return":-0.00582146034888442,"coloract":"#ff9999","x":1526342400000,"y":-0.00582146034888442,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-16","adjClose":104.3419359096,"daily_return":0.00829247472171168,"coloract":"#6495ed","x":1526428800000,"y":0.00829247472171168,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-17","adjClose":103.9952849597,"daily_return":-0.0033277900930031,"coloract":"#ff9999","x":1526515200000,"y":-0.0033277900930031,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-18","adjClose":103.8665288926,"daily_return":-0.00123886231127823,"coloract":"#ff9999","x":1526601600000,"y":-0.00123886231127823,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-21","adjClose":104.4409790381,"daily_return":0.00551541907855047,"coloract":"#6495ed","x":1526860800000,"y":0.00551541907855047,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-22","adjClose":103.975476334,"daily_return":-0.00446705110057888,"coloract":"#ff9999","x":1526947200000,"y":-0.00446705110057888,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-23","adjClose":104.7282041109,"daily_return":0.00721339498361662,"coloract":"#6495ed","x":1527033600000,"y":0.00721339498361662,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-24","adjClose":104.9560033065,"daily_return":0.00217278437919166,"coloract":"#6495ed","x":1527120000000,"y":0.00217278437919166,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-25","adjClose":105.1144723122,"daily_return":0.00150872258743373,"coloract":"#6495ed","x":1527206400000,"y":0.00150872258743373,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-29","adjClose":104.3023186582,"daily_return":-0.00775637638149718,"coloract":"#ff9999","x":1527552000000,"y":-0.00775637638149718,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-05-30","adjClose":105.2531326921,"daily_return":0.00907464399193003,"coloract":"#6495ed","x":1527638400000,"y":0.00907464399193003,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-05-31","adjClose":104.7480127366,"daily_return":-0.00481064928104935,"coloract":"#ff9999","x":1527724800000,"y":-0.00481064928104935,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-01","adjClose":105.5205491391,"daily_return":0.00734812538492591,"coloract":"#6495ed","x":1527811200000,"y":0.00734812538492591,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-04","adjClose":106.6991623687,"daily_return":0.0111075954177808,"coloract":"#6495ed","x":1528070400000,"y":0.0111075954177808,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-05","adjClose":107.3231340784,"daily_return":0.00583092031024801,"coloract":"#6495ed","x":1528156800000,"y":0.00583092031024801,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-06","adjClose":108.3234696766,"daily_return":0.0092776121303908,"coloract":"#6495ed","x":1528243200000,"y":0.0092776121303908,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-07","adjClose":108.6404076879,"daily_return":0.00292157607605503,"coloract":"#6495ed","x":1528329600000,"y":0.00292157607605503,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-08","adjClose":108.8682068836,"daily_return":0.00209462305147579,"coloract":"#6495ed","x":1528416000000,"y":0.00209462305147579,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-11","adjClose":109.3039966491,"daily_return":0.0039949208746286,"coloract":"#6495ed","x":1528675200000,"y":0.0039949208746286,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-12","adjClose":109.8289252303,"daily_return":0.00479096961580883,"coloract":"#6495ed","x":1528761600000,"y":0.00479096961580883,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-13","adjClose":109.9972985488,"daily_return":0.00153187684828016,"coloract":"#6495ed","x":1528848000000,"y":0.00153187684828016,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-14","adjClose":111.1461988398,"daily_return":0.0103906345095153,"coloract":"#6495ed","x":1528934400000,"y":0.0103906345095153,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-15","adjClose":111.3280420238,"daily_return":0.00163473509373446,"coloract":"#6495ed","x":1529020800000,"y":0.00163473509373446,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-18","adjClose":111.1393672581,"daily_return":-0.0016962018081248,"coloract":"#ff9999","x":1529280000000,"y":-0.0016962018081248,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-19","adjClose":111.0003437465,"daily_return":-0.0012516765158459,"coloract":"#ff9999","x":1529366400000,"y":-0.0012516765158459,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-20","adjClose":111.5266470403,"daily_return":0.00473025113301784,"coloract":"#6495ed","x":1529452800000,"y":0.00473025113301784,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-21","adjClose":110.7322269742,"daily_return":-0.00714863199698712,"coloract":"#ff9999","x":1529539200000,"y":-0.00714863199698712,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-22","adjClose":110.5435522085,"daily_return":-0.00170533631942682,"coloract":"#ff9999","x":1529625600000,"y":-0.00170533631942682,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-25","adjClose":108.1404315083,"daily_return":-0.0219789067189158,"coloract":"#ff9999","x":1529884800000,"y":-0.0219789067189158,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-26","adjClose":108.9149910728,"daily_return":0.00713700531493977,"coloract":"#6495ed","x":1529971200000,"y":0.00713700531493977,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-27","adjClose":107.5048954553,"daily_return":-0.013031293885569,"coloract":"#ff9999","x":1530057600000,"y":-0.013031293885569,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-06-28","adjClose":108.3489667756,"daily_return":0.0078208062980627,"coloract":"#6495ed","x":1530144000000,"y":0.0078208062980627,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-06-29","adjClose":108.5376415414,"daily_return":0.00173984751625156,"coloract":"#6495ed","x":1530230400000,"y":0.00173984751625156,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-02","adjClose":108.6865953038,"daily_return":0.00137142878630403,"coloract":"#6495ed","x":1530489600000,"y":0.00137142878630403,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-03","adjClose":108.1404315083,"daily_return":-0.00503779402998905,"coloract":"#ff9999","x":1530576000000,"y":-0.00503779402998905,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-05","adjClose":108.6766650529,"daily_return":0.00494642393468769,"coloract":"#6495ed","x":1530748800000,"y":0.00494642393468769,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-06","adjClose":109.5306666241,"daily_return":0.00782747238577031,"coloract":"#6495ed","x":1530835200000,"y":0.00782747238577031,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-09","adjClose":110.8414597333,"daily_return":0.0118963191009076,"coloract":"#6495ed","x":1531094400000,"y":0.0118963191009076,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-10","adjClose":111.0797857531,"daily_return":0.00214784403267743,"coloract":"#6495ed","x":1531180800000,"y":0.00214784403267743,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-11","adjClose":110.8215992316,"daily_return":-0.00232703944616564,"coloract":"#ff9999","x":1531267200000,"y":-0.00232703944616564,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-12","adjClose":111.5564377928,"daily_return":0.00660893715695909,"coloract":"#6495ed","x":1531353600000,"y":0.00660893715695909,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-13","adjClose":111.8046940635,"daily_return":0.00222291471093072,"coloract":"#6495ed","x":1531440000000,"y":0.00222291471093072,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-16","adjClose":112.0827410867,"daily_return":0.00248381215283722,"coloract":"#6495ed","x":1531699200000,"y":0.00248381215283722,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-17","adjClose":112.1919738458,"daily_return":0.000974097929587359,"coloract":"#6495ed","x":1531785600000,"y":0.000974097929587359,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-18","adjClose":112.12246209,"daily_return":-0.000619770704770595,"coloract":"#ff9999","x":1531872000000,"y":-0.000619770704770595,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-19","adjClose":111.8642755685,"daily_return":-0.00230537431411104,"coloract":"#ff9999","x":1531958400000,"y":-0.00230537431411104,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-20","adjClose":111.3677630271,"daily_return":-0.00444840591239171,"coloract":"#ff9999","x":1532044800000,"y":-0.00444840591239171,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-23","adjClose":111.2486000172,"daily_return":-0.00107056839534803,"coloract":"#ff9999","x":1532304000000,"y":-0.00107056839534803,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-24","adjClose":110.9209017399,"daily_return":-0.00294998649549605,"coloract":"#ff9999","x":1532390400000,"y":-0.00294998649549605,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-25","adjClose":111.7351823077,"daily_return":0.00731427754622427,"coloract":"#6495ed","x":1532476800000,"y":0.00731427754622427,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-07-26","adjClose":111.1492975089,"daily_return":-0.0052573077204352,"coloract":"#ff9999","x":1532563200000,"y":-0.0052573077204352,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-27","adjClose":110.8613202349,"daily_return":-0.00259426723315404,"coloract":"#ff9999","x":1532649600000,"y":-0.00259426723315404,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-30","adjClose":109.9775279113,"daily_return":-0.00800399974268462,"coloract":"#ff9999","x":1532908800000,"y":-0.00800399974268462,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-07-31","adjClose":110.4939009543,"daily_return":0.00468427124423076,"coloract":"#6495ed","x":1532995200000,"y":0.00468427124423076,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-01","adjClose":109.9477371588,"daily_return":-0.00495518830028363,"coloract":"#ff9999","x":1533081600000,"y":-0.00495518830028363,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-02","adjClose":110.7024362217,"daily_return":0.00684071074468129,"coloract":"#6495ed","x":1533168000000,"y":0.00684071074468129,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-03","adjClose":111.0797857531,"daily_return":0.00340288677938982,"coloract":"#6495ed","x":1533254400000,"y":0.00340288677938982,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-06","adjClose":111.8245545652,"daily_return":0.00668243231602705,"coloract":"#6495ed","x":1533513600000,"y":0.00668243231602705,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-07","adjClose":112.3409276082,"daily_return":0.00460707822930839,"coloract":"#6495ed","x":1533600000000,"y":0.00460707822930839,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-08","adjClose":112.4600906181,"daily_return":0.00106016442453249,"coloract":"#6495ed","x":1533686400000,"y":0.00106016442453249,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-09","adjClose":112.8771611528,"daily_return":0.00370174933509837,"coloract":"#6495ed","x":1533772800000,"y":0.00370174933509837,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-10","adjClose":111.9337873243,"daily_return":-0.00839264610744284,"coloract":"#ff9999","x":1533859200000,"y":-0.00839264610744284,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-13","adjClose":111.3677630271,"daily_return":-0.00506960662464806,"coloract":"#ff9999","x":1534118400000,"y":-0.00506960662464806,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-14","adjClose":112.4501603673,"daily_return":0.00967219927778995,"coloract":"#6495ed","x":1534204800000,"y":0.00967219927778995,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-15","adjClose":111.0797857531,"daily_return":-0.0122613708506654,"coloract":"#ff9999","x":1534291200000,"y":-0.0122613708506654,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-16","adjClose":111.6259495486,"daily_return":0.00490481208029792,"coloract":"#6495ed","x":1534377600000,"y":0.00490481208029792,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-17","adjClose":111.7252520569,"daily_return":0.000889205109524838,"coloract":"#6495ed","x":1534464000000,"y":0.000889205109524838,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-20","adjClose":112.5196721231,"daily_return":0.00708531880970398,"coloract":"#6495ed","x":1534723200000,"y":0.00708531880970398,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-21","adjClose":113.4133946975,"daily_return":0.00791143366961045,"coloract":"#6495ed","x":1534809600000,"y":0.00791143366961045,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-22","adjClose":113.5325577074,"daily_return":0.0010501444911295,"coloract":"#6495ed","x":1534896000000,"y":0.0010501444911295,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-23","adjClose":113.4233249483,"daily_return":-0.000962590317167944,"coloract":"#ff9999","x":1534982400000,"y":-0.000962590317167944,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-24","adjClose":114.0886517538,"daily_return":0.00584873562923516,"coloract":"#6495ed","x":1535068800000,"y":0.00584873562923516,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-27","adjClose":114.823490315,"daily_return":0.00642028927548033,"coloract":"#6495ed","x":1535328000000,"y":0.00642028927548033,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-28","adjClose":115.051886084,"daily_return":0.00198712752738306,"coloract":"#6495ed","x":1535414400000,"y":0.00198712752738306,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-29","adjClose":116.3428186915,"daily_return":0.0111579562907398,"coloract":"#6495ed","x":1535500800000,"y":0.0111579562907398,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-08-30","adjClose":115.6774918861,"daily_return":-0.00573508954765245,"coloract":"#ff9999","x":1535587200000,"y":-0.00573508954765245,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-08-31","adjClose":116.1342834242,"daily_return":0.00394106061892074,"coloract":"#6495ed","x":1535673600000,"y":0.00394106061892074,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-04","adjClose":116.3527489424,"daily_return":0.00187937864988896,"coloract":"#6495ed","x":1536019200000,"y":0.00187937864988896,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-05","adjClose":115.1015373381,"daily_return":-0.0108118437800337,"coloract":"#ff9999","x":1536105600000,"y":-0.0108118437800337,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-06","adjClose":114.7837693117,"daily_return":-0.00276458059386453,"coloract":"#ff9999","x":1536192000000,"y":-0.00276458059386453,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-07","adjClose":114.7738390608,"daily_return":-8.65164171779398e-05,"coloract":"#ff9999","x":1536278400000,"y":-8.65164171779398e-05,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-10","adjClose":115.2008398464,"daily_return":0.00371346339794698,"coloract":"#6495ed","x":1536537600000,"y":0.00371346339794698,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-11","adjClose":116.1243531733,"daily_return":0.00798458845995054,"coloract":"#6495ed","x":1536624000000,"y":0.00798458845995054,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-12","adjClose":116.3428186915,"daily_return":0.00187953921202144,"coloract":"#6495ed","x":1536710400000,"y":0.00187953921202144,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-13","adjClose":116.5414237081,"daily_return":0.00170561187567397,"coloract":"#6495ed","x":1536796800000,"y":0.00170561187567397,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-14","adjClose":116.1044926717,"daily_return":-0.00375619359170631,"coloract":"#ff9999","x":1536883200000,"y":-0.00375619359170631,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-17","adjClose":114.6646063017,"daily_return":-0.0124791842797611,"coloract":"#ff9999","x":1537142400000,"y":-0.0124791842797611,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-18","adjClose":116.1243531733,"daily_return":0.012650226783772,"coloract":"#6495ed","x":1537228800000,"y":0.012650226783772,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-19","adjClose":116.1740044275,"daily_return":0.000427478312536422,"coloract":"#6495ed","x":1537315200000,"y":0.000427478312536422,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-20","adjClose":116.9684244937,"daily_return":0.0068149169113827,"coloract":"#6495ed","x":1537401600000,"y":0.0068149169113827,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-21","adjClose":116.4532430807,"daily_return":-0.00441417675468792,"coloract":"#ff9999","x":1537488000000,"y":-0.00441417675468792,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-24","adjClose":115.6962770806,"daily_return":-0.00652138916584644,"coloract":"#ff9999","x":1537747200000,"y":-0.00652138916584644,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-09-25","adjClose":116.1843209491,"daily_return":0.00420944739061735,"coloract":"#6495ed","x":1537833600000,"y":0.00420944739061735,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-26","adjClose":116.4532430807,"daily_return":0.00231194177522909,"coloract":"#6495ed","x":1537920000000,"y":0.00231194177522909,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-27","adjClose":116.8516462387,"daily_return":0.00341530386628452,"coloract":"#6495ed","x":1538006400000,"y":0.00341530386628452,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-09-28","adjClose":116.7520454492,"daily_return":-0.000852733060987099,"coloract":"#ff9999","x":1538092800000,"y":-0.000852733060987099,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-01","adjClose":116.393482607,"daily_return":-0.00307587392206354,"coloract":"#ff9999","x":1538352000000,"y":-0.00307587392206354,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-02","adjClose":114.819790133,"daily_return":-0.0136126854344711,"coloract":"#ff9999","x":1538438400000,"y":-0.0136126854344711,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-03","adjClose":114.4313470539,"daily_return":-0.00338880282650678,"coloract":"#ff9999","x":1538524800000,"y":-0.00338880282650678,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-04","adjClose":112.638532843,"daily_return":-0.0157911869815184,"coloract":"#ff9999","x":1538611200000,"y":-0.0157911869815184,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-05","adjClose":111.7919261322,"daily_return":-0.00754452608964939,"coloract":"#ff9999","x":1538697600000,"y":-0.00754452608964939,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-08","adjClose":112.0807684218,"daily_return":0.00258041696820666,"coloract":"#6495ed","x":1538956800000,"y":0.00258041696820666,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-09","adjClose":111.7520858164,"daily_return":-0.00293685967382462,"coloract":"#ff9999","x":1539043200000,"y":-0.00293685967382462,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-10","adjClose":107.9871759734,"daily_return":-0.0342704192562886,"coloract":"#ff9999","x":1539129600000,"y":-0.0342704192562886,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-11","adjClose":106.084800894,"daily_return":-0.0177736963770618,"coloract":"#ff9999","x":1539216000000,"y":-0.0177736963770618,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-12","adjClose":108.0469364471,"daily_return":0.018326946736968,"coloract":"#6495ed","x":1539302400000,"y":0.018326946736968,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-15","adjClose":107.7979344734,"daily_return":-0.00230723188462001,"coloract":"#ff9999","x":1539561600000,"y":-0.00230723188462001,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-16","adjClose":109.9592716055,"daily_return":0.0198515415359317,"coloract":"#6495ed","x":1539648000000,"y":0.0198515415359317,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-17","adjClose":109.0529044211,"daily_return":-0.00827691295739186,"coloract":"#ff9999","x":1539734400000,"y":-0.00827691295739186,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-18","adjClose":106.9612878416,"daily_return":-0.0193661530156479,"coloract":"#ff9999","x":1539820800000,"y":-0.0193661530156479,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-19","adjClose":105.9154795519,"daily_return":-0.00982555979368627,"coloract":"#ff9999","x":1539907200000,"y":-0.00982555979368627,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-22","adjClose":106.3437629467,"daily_return":0.00403548011363952,"coloract":"#6495ed","x":1540166400000,"y":0.00403548011363952,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-23","adjClose":106.3636831046,"daily_return":0.000187300993246708,"coloract":"#6495ed","x":1540252800000,"y":0.000187300993246708,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-24","adjClose":103.1864179196,"daily_return":-0.0303269593582955,"coloract":"#ff9999","x":1540339200000,"y":-0.0303269593582955,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-25","adjClose":106.3039226309,"daily_return":0.0297649511007032,"coloract":"#6495ed","x":1540425600000,"y":0.0297649511007032,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-26","adjClose":102.9971764196,"daily_return":-0.0316006117287593,"coloract":"#ff9999","x":1540512000000,"y":-0.0316006117287593,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-29","adjClose":102.0908092352,"daily_return":-0.00883887061813393,"coloract":"#ff9999","x":1540771200000,"y":-0.00883887061813393,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-10-30","adjClose":103.6246613934,"daily_return":0.0149126420013568,"coloract":"#6495ed","x":1540857600000,"y":0.0149126420013568,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-10-31","adjClose":104.9593119727,"daily_return":0.0127974242009827,"coloract":"#6495ed","x":1540944000000,"y":0.0127974242009827,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-01","adjClose":107.1007289469,"daily_return":0.0201970136212859,"coloract":"#6495ed","x":1541030400000,"y":0.0201970136212859,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-02","adjClose":107.5389724207,"daily_return":0.00408353235670766,"coloract":"#6495ed","x":1541116800000,"y":0.00408353235670766,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-05","adjClose":107.6883736049,"daily_return":0.00138831064876488,"coloract":"#6495ed","x":1541376000000,"y":0.00138831064876488,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-06","adjClose":108.1664573945,"daily_return":0.00442968609169103,"coloract":"#6495ed","x":1541462400000,"y":0.00442968609169103,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-07","adjClose":111.0947206058,"daily_return":0.0267118634621815,"coloract":"#6495ed","x":1541548800000,"y":0.0267118634621815,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-08","adjClose":111.1246008426,"daily_return":0.000268925643236884,"coloract":"#6495ed","x":1541635200000,"y":0.000268925643236884,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-09","adjClose":109.5807886054,"daily_return":-0.0139900291576431,"coloract":"#ff9999","x":1541721600000,"y":-0.0139900291576431,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-12","adjClose":107.3796111575,"daily_return":-0.0202917488962875,"coloract":"#ff9999","x":1541980800000,"y":-0.0202917488962875,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-13","adjClose":107.3298107627,"daily_return":-0.000463886449394657,"coloract":"#ff9999","x":1542067200000,"y":-0.000463886449394657,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-14","adjClose":106.5230443678,"daily_return":-0.00754509657340119,"coloract":"#ff9999","x":1542153600000,"y":-0.00754509657340119,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-15","adjClose":106.3636831046,"daily_return":-0.00149714634499531,"coloract":"#ff9999","x":1542240000000,"y":-0.00149714634499531,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-16","adjClose":105.9453597887,"daily_return":-0.00394070691997062,"coloract":"#ff9999","x":1542326400000,"y":-0.00394070691997062,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-19","adjClose":103.3557392618,"daily_return":-0.0247466706459987,"coloract":"#ff9999","x":1542585600000,"y":-0.0247466706459987,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-20","adjClose":101.0151207086,"daily_return":-0.0229066012503463,"coloract":"#ff9999","x":1542672000000,"y":-0.0229066012503463,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-21","adjClose":102.0708890773,"daily_return":0.0103973472218417,"coloract":"#6495ed","x":1542758400000,"y":0.0103973472218417,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-23","adjClose":101.6127254456,"daily_return":-0.00449878509379964,"coloract":"#ff9999","x":1542931200000,"y":-0.00449878509379964,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-26","adjClose":103.8935835251,"daily_return":0.022198362193115,"coloract":"#6495ed","x":1543190400000,"y":0.022198362193115,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-27","adjClose":104.2023459725,"daily_return":0.0029675032541725,"coloract":"#6495ed","x":1543276800000,"y":0.0029675032541725,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-28","adjClose":107.280010368,"daily_return":0.0291076924204079,"coloract":"#6495ed","x":1543363200000,"y":0.0291076924204079,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-11-29","adjClose":106.7820064205,"daily_return":-0.00465290249463646,"coloract":"#ff9999","x":1543449600000,"y":-0.00465290249463646,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-11-30","adjClose":107.5588925786,"daily_return":0.00724910237668563,"coloract":"#6495ed","x":1543536000000,"y":0.00724910237668563,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-03","adjClose":109.5708285264,"daily_return":0.0185326405061819,"coloract":"#6495ed","x":1543795200000,"y":0.0185326405061819,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-04","adjClose":105.6266372623,"daily_return":-0.0366605897405758,"coloract":"#ff9999","x":1543881600000,"y":-0.0366605897405758,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-06","adjClose":106.1346012888,"daily_return":0.0047975257819699,"coloract":"#6495ed","x":1544054400000,"y":0.0047975257819699,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-07","adjClose":102.9573361038,"daily_return":-0.0303934222118976,"coloract":"#ff9999","x":1544140800000,"y":-0.0303934222118976,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-10","adjClose":103.0370167354,"daily_return":0.000773619611176279,"coloract":"#6495ed","x":1544400000000,"y":0.000773619611176279,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-11","adjClose":103.0768570512,"daily_return":0.000386585488538316,"coloract":"#6495ed","x":1544486400000,"y":0.000386585488538316,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-12","adjClose":104.1625056567,"daily_return":0.0104773390796602,"coloract":"#6495ed","x":1544572800000,"y":0.0104773390796602,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-13","adjClose":103.6445815513,"daily_return":-0.00498467289794213,"coloract":"#ff9999","x":1544659200000,"y":-0.00498467289794213,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-14","adjClose":101.921487893,"daily_return":-0.0167647707633947,"coloract":"#ff9999","x":1544745600000,"y":-0.0167647707633947,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-17","adjClose":99.3318673661,"daily_return":-0.0257363506844817,"coloract":"#ff9999","x":1545004800000,"y":-0.0257363506844817,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-18","adjClose":100.1087535242,"daily_return":0.0077906906230476,"coloract":"#6495ed","x":1545091200000,"y":0.0077906906230476,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-19","adjClose":98.1266978132,"daily_return":-0.0199976517842559,"coloract":"#ff9999","x":1545177600000,"y":-0.0199976517842559,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-20","adjClose":95.9255203653,"daily_return":-0.0226874176795571,"coloract":"#ff9999","x":1545264000000,"y":-0.0226874176795571,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-21","adjClose":93.76,"daily_return":-0.0228337349995291,"coloract":"#ff9999","x":1545350400000,"y":-0.0228337349995291,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-24","adjClose":91.98,"daily_return":-0.0191671637169248,"coloract":"#ff9999","x":1545609600000,"y":-0.0191671637169248,"color":"#ff9999"},{"sector":"Consumer Discretionary","date":"2018-12-26","adjClose":97.43,"daily_return":0.057563009325472,"coloract":"#6495ed","x":1545782400000,"y":0.057563009325472,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-27","adjClose":97.95,"daily_return":0.00532297295329975,"coloract":"#6495ed","x":1545868800000,"y":0.00532297295329975,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-28","adjClose":97.96,"daily_return":0.000102087693417019,"coloract":"#6495ed","x":1545955200000,"y":0.000102087693417019,"color":"#6495ed"},{"sector":"Consumer Discretionary","date":"2018-12-31","adjClose":99.01,"daily_return":0.0106616230504564,"coloract":"#6495ed","x":1546214400000,"y":0.0106616230504564,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Consumer Staples 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Consumer Staples","date":"2018-01-02","adjClose":54.8995589594,"daily_return":-0.00617122649678059,"coloract":"#ff9999","x":1514851200000,"y":-0.00617122649678059,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-03","adjClose":54.8801392357,"daily_return":-0.000353794448733957,"coloract":"#ff9999","x":1514937600000,"y":-0.000353794448733957,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-04","adjClose":55.0354970255,"daily_return":0.00282685700672669,"coloract":"#6495ed","x":1515024000000,"y":0.00282685700672669,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-05","adjClose":55.278243572,"daily_return":0.00440102814027021,"coloract":"#6495ed","x":1515110400000,"y":0.00440102814027021,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-08","adjClose":55.414181638,"daily_return":0.00245614158477014,"coloract":"#6495ed","x":1515369600000,"y":0.00245614158477014,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-09","adjClose":55.3365027431,"daily_return":-0.00140277070199435,"coloract":"#ff9999","x":1515456000000,"y":-0.00140277070199435,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-10","adjClose":55.0646266111,"daily_return":-0.00492525181925441,"coloract":"#ff9999","x":1515542400000,"y":-0.00492525181925441,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-11","adjClose":54.9869477162,"daily_return":-0.00141168190050944,"coloract":"#ff9999","x":1515628800000,"y":-0.00141168190050944,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-12","adjClose":55.0063674399,"daily_return":0.000353107347918602,"coloract":"#6495ed","x":1515715200000,"y":0.000353107347918602,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-16","adjClose":55.2588238483,"daily_return":0.00457908514149175,"coloract":"#6495ed","x":1516060800000,"y":0.00457908514149175,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-17","adjClose":55.8899648692,"daily_return":0.0113568094035141,"coloract":"#6495ed","x":1516147200000,"y":0.0113568094035141,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-18","adjClose":55.7248972176,"daily_return":-0.00295780989837624,"coloract":"#ff9999","x":1516233600000,"y":-0.00295780989837624,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-19","adjClose":56.3463283766,"daily_return":0.0110900460809304,"coloract":"#6495ed","x":1516320000000,"y":0.0110900460809304,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-22","adjClose":56.7735622985,"daily_return":0.00755368398571576,"coloract":"#6495ed","x":1516579200000,"y":0.00755368398571576,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-23","adjClose":56.5890749232,"daily_return":-0.00325482085969142,"coloract":"#ff9999","x":1516665600000,"y":-0.00325482085969142,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-24","adjClose":56.7055932655,"daily_return":0.00205690850671125,"coloract":"#6495ed","x":1516752000000,"y":0.00205690850671125,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-25","adjClose":56.7347228511,"daily_return":0.000513566732488258,"coloract":"#6495ed","x":1516838400000,"y":0.000513566732488258,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-26","adjClose":57.0065989832,"daily_return":0.00478061350983783,"coloract":"#6495ed","x":1516924800000,"y":0.00478061350983783,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-01-29","adjClose":56.7832721604,"daily_return":-0.00392525463470683,"coloract":"#ff9999","x":1517184000000,"y":-0.00392525463470683,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-30","adjClose":56.4045875478,"daily_return":-0.00669128343777725,"coloract":"#ff9999","x":1517270400000,"y":-0.00669128343777725,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-01-31","adjClose":56.1424212776,"daily_return":-0.00465879541563119,"coloract":"#ff9999","x":1517356800000,"y":-0.00465879541563119,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-01","adjClose":55.8996747311,"daily_return":-0.00433313790024403,"coloract":"#ff9999","x":1517443200000,"y":-0.00433313790024403,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-02","adjClose":54.8315899264,"daily_return":-0.0192920750037233,"coloract":"#ff9999","x":1517529600000,"y":-0.0192920750037233,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-05","adjClose":52.841068245,"daily_return":-0.0369777903294901,"coloract":"#ff9999","x":1517788800000,"y":-0.0369777903294901,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-06","adjClose":53.4236599566,"daily_return":0.0109650221407338,"coloract":"#6495ed","x":1517875200000,"y":0.0109650221407338,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-07","adjClose":53.190623272,"daily_return":-0.00437159166050805,"coloract":"#ff9999","x":1517961600000,"y":-0.00437159166050805,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-08","adjClose":52.0448595724,"daily_return":-0.021776095759273,"coloract":"#ff9999","x":1518048000000,"y":-0.021776095759273,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-09","adjClose":52.1516680529,"daily_return":0.00205013584126856,"coloract":"#6495ed","x":1518134400000,"y":0.00205013584126856,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-12","adjClose":52.6857104552,"daily_return":0.0101881033128657,"coloract":"#6495ed","x":1518393600000,"y":0.0101881033128657,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-13","adjClose":52.9284570017,"daily_return":0.00459686384515656,"coloract":"#6495ed","x":1518480000000,"y":0.00459686384515656,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-14","adjClose":52.8993274162,"daily_return":-0.000550509233390617,"coloract":"#ff9999","x":1518566400000,"y":-0.000550509233390617,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-15","adjClose":53.7732149836,"daily_return":0.0163848559006619,"coloract":"#6495ed","x":1518652800000,"y":0.0163848559006619,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-16","adjClose":53.9868319445,"daily_return":0.00396468351313528,"coloract":"#6495ed","x":1518739200000,"y":0.00396468351313528,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-20","adjClose":52.7633893501,"daily_return":-0.0229225972578475,"coloract":"#ff9999","x":1519084800000,"y":-0.0229225972578475,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-21","adjClose":52.1322483292,"daily_return":-0.0120338395630673,"coloract":"#ff9999","x":1519171200000,"y":-0.0120338395630673,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-22","adjClose":52.2681863952,"daily_return":0.00260416813747977,"coloract":"#6495ed","x":1519257600000,"y":0.00260416813747977,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-23","adjClose":52.773099212,"daily_return":0.00961368099535242,"coloract":"#6495ed","x":1519344000000,"y":0.00961368099535242,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-26","adjClose":53.1032345152,"daily_return":0.00623626379036812,"coloract":"#6495ed","x":1519603200000,"y":0.00623626379036812,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-02-27","adjClose":52.4041244613,"daily_return":-0.0132525407270299,"coloract":"#ff9999","x":1519689600000,"y":-0.0132525407270299,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-02-28","adjClose":51.8603721971,"daily_return":-0.0104303422790677,"coloract":"#ff9999","x":1519776000000,"y":-0.0104303422790677,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-01","adjClose":51.7438538548,"daily_return":-0.0022492980424782,"coloract":"#ff9999","x":1519862400000,"y":-0.0022492980424782,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-02","adjClose":52.1807976385,"daily_return":0.0084089068781914,"coloract":"#6495ed","x":1519948800000,"y":0.0084089068781914,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-05","adjClose":52.6371611459,"daily_return":0.00870779008404643,"coloract":"#6495ed","x":1520208000000,"y":0.00870779008404643,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-06","adjClose":52.6760005934,"daily_return":0.000737599149421619,"coloract":"#6495ed","x":1520294400000,"y":0.000737599149421619,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-07","adjClose":52.2002173622,"daily_return":-0.00907329620632247,"coloract":"#ff9999","x":1520380800000,"y":-0.00907329620632247,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-08","adjClose":52.6760005934,"daily_return":0.00907329620632247,"coloract":"#6495ed","x":1520467200000,"y":0.00907329620632247,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-09","adjClose":53.0158457585,"daily_return":0.00643089032993727,"coloract":"#6495ed","x":1520553600000,"y":0.00643089032993727,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-12","adjClose":52.9187471399,"daily_return":-0.00183318108156039,"coloract":"#ff9999","x":1520812800000,"y":-0.00183318108156039,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-13","adjClose":52.8799076924,"daily_return":-0.000734214424679358,"coloract":"#ff9999","x":1520899200000,"y":-0.000734214424679358,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-14","adjClose":52.3458652901,"daily_return":-0.0101504977814884,"coloract":"#ff9999","x":1520985600000,"y":-0.0101504977814884,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-15","adjClose":51.9768905394,"daily_return":-0.00707374505828673,"coloract":"#ff9999","x":1521072000000,"y":-0.00707374505828673,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-16","adjClose":51.9949033041,"daily_return":0.000346493298120976,"coloract":"#6495ed","x":1521158400000,"y":0.000346493298120976,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-19","adjClose":51.4871596475,"daily_return":-0.00981325104563036,"coloract":"#ff9999","x":1521417600000,"y":-0.00981325104563036,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-20","adjClose":51.3406951311,"daily_return":-0.00284873424162146,"coloract":"#ff9999","x":1521504000000,"y":-0.00284873424162146,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-21","adjClose":50.7060155603,"daily_return":-0.0124391614445503,"coloract":"#ff9999","x":1521590400000,"y":-0.0124391614445503,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-22","adjClose":50.2861506134,"daily_return":-0.00831485018714551,"coloract":"#ff9999","x":1521676800000,"y":-0.00831485018714551,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-23","adjClose":49.6612353436,"daily_return":-0.0125050476765476,"coloract":"#ff9999","x":1521763200000,"y":-0.0125050476765476,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-26","adjClose":50.3740293232,"daily_return":0.0142510952632207,"coloract":"#6495ed","x":1522022400000,"y":0.0142510952632207,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-27","adjClose":50.3447364199,"daily_return":-0.000581677186168861,"coloract":"#ff9999","x":1522108800000,"y":-0.000581677186168861,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-03-28","adjClose":51.0380017973,"daily_return":0.0136764146540771,"coloract":"#6495ed","x":1522195200000,"y":0.0136764146540771,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-03-29","adjClose":51.3895166366,"daily_return":0.00686370664204228,"coloract":"#6495ed","x":1522281600000,"y":0.00686370664204228,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-02","adjClose":50.129921796,"daily_return":-0.0248161239225282,"coloract":"#ff9999","x":1522627200000,"y":-0.0248161239225282,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-03","adjClose":50.7938942701,"daily_return":0.0131580845771331,"coloract":"#6495ed","x":1522713600000,"y":0.0131580845771331,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-04","adjClose":51.5848026584,"daily_return":0.0154509511559371,"coloract":"#6495ed","x":1522800000000,"y":0.0154509511559371,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-05","adjClose":51.7117385725,"daily_return":0.0024577004511781,"coloract":"#6495ed","x":1522886400000,"y":0.0024577004511781,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-06","adjClose":51.1844663137,"daily_return":-0.0102487137323481,"coloract":"#ff9999","x":1522972800000,"y":-0.0102487137323481,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-09","adjClose":51.1551734104,"daily_return":-0.000572464475719237,"coloract":"#ff9999","x":1523232000000,"y":-0.000572464475719237,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-10","adjClose":51.2723450235,"daily_return":0.00228789423003439,"coloract":"#6495ed","x":1523318400000,"y":0.00228789423003439,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-11","adjClose":51.1747020126,"daily_return":-0.00190621483569631,"coloract":"#ff9999","x":1523404800000,"y":-0.00190621483569631,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-12","adjClose":51.0965876039,"daily_return":-0.00152759242956968,"coloract":"#ff9999","x":1523491200000,"y":-0.00152759242956968,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-13","adjClose":51.3504594322,"daily_return":0.00495616721636427,"coloract":"#6495ed","x":1523577600000,"y":0.00495616721636427,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-16","adjClose":51.9070245943,"daily_return":0.0107802462432365,"coloract":"#6495ed","x":1523836800000,"y":0.0107802462432365,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-17","adjClose":52.0241962074,"daily_return":0.00225479238747983,"coloract":"#6495ed","x":1523923200000,"y":0.00225479238747983,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-18","adjClose":51.6336241638,"daily_return":-0.00753583068872032,"coloract":"#ff9999","x":1524009600000,"y":-0.00753583068872032,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-19","adjClose":50.139686097,"daily_return":-0.0293602591695312,"coloract":"#ff9999","x":1524096000000,"y":-0.0293602591695312,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-20","adjClose":49.2999562033,"daily_return":-0.0168896395029825,"coloract":"#ff9999","x":1524182400000,"y":-0.0168896395029825,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-23","adjClose":49.2413703968,"daily_return":-0.00118906078138048,"coloract":"#ff9999","x":1524441600000,"y":-0.00118906078138048,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-24","adjClose":48.9289127619,"daily_return":-0.00636564711741849,"coloract":"#ff9999","x":1524528000000,"y":-0.00636564711741849,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-04-25","adjClose":49.0167914717,"daily_return":0.0017944377258492,"coloract":"#6495ed","x":1524614400000,"y":0.0017944377258492,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-26","adjClose":49.3097205044,"daily_return":0.00595830958364285,"coloract":"#6495ed","x":1524700800000,"y":0.00595830958364285,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-27","adjClose":49.5733566338,"daily_return":0.00533229267739443,"coloract":"#6495ed","x":1524787200000,"y":0.00533229267739443,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-04-30","adjClose":49.2608989989,"daily_return":-0.00632288216010757,"coloract":"#ff9999","x":1525046400000,"y":-0.00632288216010757,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-01","adjClose":48.831269751,"daily_return":-0.00875976136760359,"coloract":"#ff9999","x":1525132800000,"y":-0.00875976136760359,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-02","adjClose":47.8743682442,"daily_return":-0.0197906297672898,"coloract":"#ff9999","x":1525219200000,"y":-0.0197906297672898,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-03","adjClose":47.8255467387,"daily_return":-0.00102030414016685,"coloract":"#ff9999","x":1525305600000,"y":-0.00102030414016685,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-04","adjClose":48.5188121161,"daily_return":0.0143916540904492,"coloract":"#6495ed","x":1525392000000,"y":0.0143916540904492,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-07","adjClose":48.2161187823,"daily_return":-0.00625822169741719,"coloract":"#ff9999","x":1525651200000,"y":-0.00625822169741719,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-08","adjClose":48.0208327605,"daily_return":-0.00405844712899706,"coloract":"#ff9999","x":1525737600000,"y":-0.00405844712899706,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-09","adjClose":48.0891828682,"daily_return":0.00142233083151044,"coloract":"#6495ed","x":1525824000000,"y":0.00142233083151044,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-10","adjClose":48.3723475998,"daily_return":0.00587105644291519,"coloract":"#6495ed","x":1525910400000,"y":0.00587105644291519,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-11","adjClose":48.3723475998,"daily_return":0,"coloract":"#ff9999","x":1525996800000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-14","adjClose":48.3528189976,"daily_return":-0.000403795685287367,"coloract":"#ff9999","x":1526256000000,"y":-0.000403795685287367,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-15","adjClose":48.1672972769,"daily_return":-0.00384421313049232,"coloract":"#ff9999","x":1526342400000,"y":-0.00384421313049232,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-16","adjClose":48.509047815,"daily_return":0.00707002237855603,"coloract":"#6495ed","x":1526428800000,"y":0.00707002237855603,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-17","adjClose":48.6750409336,"daily_return":0.00341605878407059,"coloract":"#6495ed","x":1526515200000,"y":0.00341605878407059,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-18","adjClose":48.3723475998,"daily_return":-0.00623807234684692,"coloract":"#ff9999","x":1526601600000,"y":-0.00623807234684692,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-21","adjClose":48.5773979227,"daily_return":0.00423003954359924,"coloract":"#6495ed","x":1526860800000,"y":0.00423003954359924,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-22","adjClose":48.4895192128,"daily_return":-0.00181068352643932,"coloract":"#ff9999","x":1526947200000,"y":-0.00181068352643932,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-23","adjClose":48.6652766325,"daily_return":0.0036180944008315,"coloract":"#6495ed","x":1527033600000,"y":0.0036180944008315,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-24","adjClose":48.6262194281,"daily_return":-0.000802890449413951,"coloract":"#ff9999","x":1527120000000,"y":-0.000802890449413951,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-25","adjClose":48.7043338368,"daily_return":0.00160513678082097,"coloract":"#6495ed","x":1527206400000,"y":0.00160513678082097,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-29","adjClose":48.5969265248,"daily_return":-0.00220772794158419,"coloract":"#ff9999","x":1527552000000,"y":-0.00220772794158419,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-05-30","adjClose":49.2804276011,"daily_return":0.0139667074817456,"coloract":"#6495ed","x":1527638400000,"y":0.0139667074817456,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-05-31","adjClose":48.4895192128,"daily_return":-0.0161793202723999,"coloract":"#ff9999","x":1527724800000,"y":-0.0161793202723999,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-01","adjClose":48.4895192128,"daily_return":0,"coloract":"#ff9999","x":1527811200000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-04","adjClose":48.8898555575,"daily_return":0.00822224626206136,"coloract":"#6495ed","x":1528070400000,"y":0.00822224626206136,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-05","adjClose":48.6652766325,"daily_return":-0.00460415186122987,"coloract":"#ff9999","x":1528156800000,"y":-0.00460415186122987,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-06","adjClose":48.723862439,"daily_return":0.00120312827745606,"coloract":"#6495ed","x":1528243200000,"y":0.00120312827745606,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-07","adjClose":49.0265557728,"daily_return":0.00619320728935779,"coloract":"#6495ed","x":1528329600000,"y":0.00619320728935779,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-08","adjClose":49.6319424404,"daily_return":0.0122725214126223,"coloract":"#6495ed","x":1528416000000,"y":0.0122725214126223,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-11","adjClose":50.0420430861,"daily_return":0.00822888655811926,"coloract":"#6495ed","x":1528675200000,"y":0.00822888655811926,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-12","adjClose":50.139686097,"daily_return":0.0019493183560555,"coloract":"#6495ed","x":1528761600000,"y":0.0019493183560555,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-13","adjClose":49.9834572796,"daily_return":-0.00312073590428419,"coloract":"#ff9999","x":1528848000000,"y":-0.00312073590428419,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-14","adjClose":50.0713359894,"daily_return":0.0017566121427266,"coloract":"#6495ed","x":1528934400000,"y":0.0017566121427266,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-15","adjClose":50.7097259947,"daily_return":0.0126690179958198,"coloract":"#6495ed","x":1529020800000,"y":0.0126690179958198,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-18","adjClose":49.9718079796,"daily_return":-0.0146587204119308,"coloract":"#ff9999","x":1529280000000,"y":-0.0146587204119308,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-19","adjClose":50.237458465,"daily_return":0.00530192699978205,"coloract":"#6495ed","x":1529366400000,"y":0.00530192699978205,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-20","adjClose":50.2866529994,"daily_return":0.000978760968101788,"coloract":"#6495ed","x":1529452800000,"y":0.000978760968101788,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-21","adjClose":50.3850420681,"daily_return":0.00195465269478223,"coloract":"#6495ed","x":1529539200000,"y":0.00195465269478223,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-22","adjClose":50.7982761565,"daily_return":0.0081680734164693,"coloract":"#6495ed","x":1529625600000,"y":0.0081680734164693,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-25","adjClose":51.054087735,"daily_return":0.00502319448705268,"coloract":"#6495ed","x":1529884800000,"y":0.00502319448705268,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-06-26","adjClose":50.837631784,"daily_return":-0.00424875107892086,"coloract":"#ff9999","x":1529971200000,"y":-0.00424875107892086,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-27","adjClose":50.7294038084,"daily_return":-0.00213116422925586,"coloract":"#ff9999","x":1530057600000,"y":-0.00213116422925586,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-28","adjClose":50.7294038084,"daily_return":0,"coloract":"#ff9999","x":1530144000000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-06-29","adjClose":50.6998870878,"daily_return":-0.000582015730809182,"coloract":"#ff9999","x":1530230400000,"y":-0.000582015730809182,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-02","adjClose":50.4047198818,"daily_return":-0.00583886438857562,"coloract":"#ff9999","x":1530489600000,"y":-0.00583886438857562,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-03","adjClose":50.5227867642,"daily_return":0.002339638423277,"coloract":"#6495ed","x":1530576000000,"y":0.002339638423277,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-05","adjClose":51.2213491518,"daily_return":0.01373196319211,"coloract":"#6495ed","x":1530748800000,"y":0.01373196319211,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-06","adjClose":51.3787716617,"daily_return":0.00306866370497705,"coloract":"#6495ed","x":1530835200000,"y":0.00306866370497705,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-09","adjClose":51.1819935243,"daily_return":-0.00383730325148335,"coloract":"#ff9999","x":1531094400000,"y":-0.00383730325148335,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-10","adjClose":51.7920057501,"daily_return":0.0118480269969461,"coloract":"#6495ed","x":1531180800000,"y":0.0118480269969461,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-11","adjClose":51.6247443334,"daily_return":-0.00323470931754732,"coloract":"#ff9999","x":1531267200000,"y":-0.00323470931754732,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-12","adjClose":51.5558719853,"daily_return":-0.001334986372167,"coloract":"#ff9999","x":1531353600000,"y":-0.001334986372167,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-13","adjClose":51.8903948188,"daily_return":0.00646758959829041,"coloract":"#6495ed","x":1531440000000,"y":0.00646758959829041,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-16","adjClose":51.6444221471,"daily_return":-0.00475150566121041,"coloract":"#ff9999","x":1531699200000,"y":-0.00475150566121041,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-17","adjClose":52.0871729561,"daily_return":0.00853652153409401,"coloract":"#6495ed","x":1531785600000,"y":0.00853652153409401,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-18","adjClose":51.6640999608,"daily_return":-0.00815556914920901,"coloract":"#ff9999","x":1531872000000,"y":-0.00815556914920901,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-19","adjClose":51.6936166814,"daily_return":0.000571156607582335,"coloract":"#6495ed","x":1531958400000,"y":0.000571156607582335,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-20","adjClose":52.0084617012,"daily_return":0.00607212491957076,"coloract":"#6495ed","x":1532044800000,"y":0.00607212491957076,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-23","adjClose":51.6837777746,"daily_return":-0.00626247420979009,"coloract":"#ff9999","x":1532304000000,"y":-0.00626247420979009,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-24","adjClose":51.7821668432,"daily_return":0.00190186439838325,"coloract":"#6495ed","x":1532390400000,"y":0.00190186439838325,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-25","adjClose":52.1757231179,"daily_return":0.00757149178341665,"coloract":"#6495ed","x":1532476800000,"y":0.00757149178341665,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-26","adjClose":52.4512125102,"daily_return":0.00526613968586753,"coloract":"#6495ed","x":1532563200000,"y":0.00526613968586753,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-27","adjClose":52.5200848583,"daily_return":0.00131221314224295,"coloract":"#6495ed","x":1532649600000,"y":0.00131221314224295,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-07-30","adjClose":52.4610514171,"daily_return":-0.00112464866578366,"coloract":"#ff9999","x":1532908800000,"y":-0.00112464866578366,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-07-31","adjClose":52.7070240888,"daily_return":0.00467771458263444,"coloract":"#6495ed","x":1532995200000,"y":0.00467771458263444,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-01","adjClose":52.2642732797,"daily_return":-0.00843570472595001,"coloract":"#ff9999","x":1533081600000,"y":-0.00843570472595001,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-02","adjClose":52.7955742506,"daily_return":0.0101143398304298,"coloract":"#6495ed","x":1533168000000,"y":0.0101143398304298,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-03","adjClose":53.4154253832,"daily_return":0.0116722029189877,"coloract":"#6495ed","x":1533254400000,"y":0.0116722029189877,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-06","adjClose":53.4646199176,"daily_return":0.000920556082018908,"coloract":"#6495ed","x":1533513600000,"y":0.000920556082018908,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-07","adjClose":53.1399359909,"daily_return":-0.00609138939481113,"coloract":"#ff9999","x":1533600000000,"y":-0.00609138939481113,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-08","adjClose":52.7365408094,"daily_return":-0.00762014652683085,"coloract":"#ff9999","x":1533686400000,"y":-0.00762014652683085,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-09","adjClose":52.5791182995,"daily_return":-0.00298953884876907,"coloract":"#ff9999","x":1533772800000,"y":-0.00298953884876907,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-10","adjClose":52.3823401621,"daily_return":-0.00374953570246417,"coloract":"#ff9999","x":1533859200000,"y":-0.00374953570246417,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-13","adjClose":52.3823401621,"daily_return":0,"coloract":"#ff9999","x":1534118400000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-14","adjClose":52.7463797162,"daily_return":0.00692562431264498,"coloract":"#6495ed","x":1534204800000,"y":0.00692562431264498,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-15","adjClose":52.9628356673,"daily_return":0.00409531473373903,"coloract":"#6495ed","x":1534291200000,"y":0.00409531473373903,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-16","adjClose":53.7204314961,"daily_return":0.0142029501781602,"coloract":"#6495ed","x":1534377600000,"y":0.0142029501781602,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-17","adjClose":54.1336655845,"daily_return":0.00766287274498678,"coloract":"#6495ed","x":1534464000000,"y":0.00766287274498678,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-20","adjClose":54.1041488639,"daily_return":-0.000545404976663999,"coloract":"#ff9999","x":1534723200000,"y":-0.000545404976663999,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-21","adjClose":53.7204314961,"daily_return":-0.00711746776832278,"coloract":"#ff9999","x":1534809600000,"y":-0.00711746776832278,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-22","adjClose":53.3859086626,"daily_return":-0.00624657552021946,"coloract":"#ff9999","x":1534896000000,"y":-0.00624657552021946,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-23","adjClose":53.2580028733,"daily_return":-0.0023987464223425,"coloract":"#ff9999","x":1534982400000,"y":-0.0023987464223425,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-24","adjClose":53.1891305253,"daily_return":-0.00129401995923351,"coloract":"#ff9999","x":1535068800000,"y":-0.00129401995923351,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-27","adjClose":53.2186472459,"daily_return":0.000554785034991401,"coloract":"#6495ed","x":1535328000000,"y":0.000554785034991401,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-28","adjClose":53.0415469223,"daily_return":-0.00333333641950118,"coloract":"#ff9999","x":1535414400000,"y":-0.00333333641950118,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-29","adjClose":53.1005803635,"daily_return":0.00111234716688813,"coloract":"#6495ed","x":1535500800000,"y":0.00111234716688813,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-08-30","adjClose":52.9333189467,"daily_return":-0.00315486946382793,"coloract":"#ff9999","x":1535587200000,"y":-0.00315486946382793,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-08-31","adjClose":52.913641133,"daily_return":-0.000371816326361962,"coloract":"#ff9999","x":1535673600000,"y":-0.000371816326361962,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-04","adjClose":52.8447687849,"daily_return":-0.00130244692388137,"coloract":"#ff9999","x":1536019200000,"y":-0.00130244692388137,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-05","adjClose":53.4547810107,"daily_return":0.0114773566464401,"coloract":"#6495ed","x":1536105600000,"y":0.0114773566464401,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-06","adjClose":53.6023646137,"daily_return":0.00275710127761419,"coloract":"#6495ed","x":1536192000000,"y":0.00275710127761419,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-07","adjClose":53.4941366382,"daily_return":-0.00202113068265009,"coloract":"#ff9999","x":1536278400000,"y":-0.00202113068265009,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-10","adjClose":53.6810758686,"daily_return":0.0034884823758663,"coloract":"#6495ed","x":1536537600000,"y":0.0034884823758663,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-11","adjClose":53.4842977313,"daily_return":-0.00367242425136149,"coloract":"#ff9999","x":1536624000000,"y":-0.00367242425136149,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-12","adjClose":54.1041488639,"daily_return":0.0115227612359021,"coloract":"#6495ed","x":1536710400000,"y":0.0115227612359021,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-13","adjClose":54.025437609,"daily_return":-0.00145586922821472,"coloract":"#ff9999","x":1536796800000,"y":-0.00145586922821472,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-14","adjClose":53.877854006,"daily_return":-0.00273548087032349,"coloract":"#ff9999","x":1536883200000,"y":-0.00273548087032349,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-17","adjClose":54.0746321433,"daily_return":0.00364564749295004,"coloract":"#6495ed","x":1537142400000,"y":0.00364564749295004,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-18","adjClose":53.8483372854,"daily_return":-0.00419364275732947,"coloract":"#ff9999","x":1537228800000,"y":-0.00419364275732947,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-19","adjClose":53.7499482167,"daily_return":-0.00182882274868001,"coloract":"#ff9999","x":1537315200000,"y":-0.00182882274868001,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-20","adjClose":54.4288327906,"daily_return":0.012551324389817,"coloract":"#6495ed","x":1537401600000,"y":0.012551324389817,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-21","adjClose":54.5159071163,"daily_return":0.00159850478904389,"coloract":"#6495ed","x":1537488000000,"y":0.00159850478904389,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-24","adjClose":53.6836031909,"daily_return":-0.0153849188387403,"coloract":"#ff9999","x":1537747200000,"y":-0.0153849188387403,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-25","adjClose":53.3665350288,"daily_return":-0.0059237492740114,"coloract":"#ff9999","x":1537833600000,"y":-0.0059237492740114,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-26","adjClose":53.4259853092,"daily_return":0.00111337922081267,"coloract":"#6495ed","x":1537920000000,"y":0.00111337922081267,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-09-27","adjClose":53.3566266488,"daily_return":-0.00129906300065397,"coloract":"#ff9999","x":1538006400000,"y":-0.00129906300065397,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-09-28","adjClose":53.4358936893,"daily_return":0.00148450574639769,"coloract":"#6495ed","x":1538092800000,"y":0.00148450574639769,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-01","adjClose":53.396260169,"daily_return":-0.000741977404496552,"coloract":"#ff9999","x":1538352000000,"y":-0.000741977404496552,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-02","adjClose":53.703419951,"daily_return":0.00573597650005331,"coloract":"#6495ed","x":1538438400000,"y":0.00573597650005331,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-03","adjClose":53.1287339073,"daily_return":-0.0107587756367313,"coloract":"#ff9999","x":1538524800000,"y":-0.0107587756367313,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-04","adjClose":52.9999249664,"daily_return":-0.00242741226574861,"coloract":"#ff9999","x":1538611200000,"y":-0.00242741226574861,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-05","adjClose":52.9503830661,"daily_return":-0.000935191314319184,"coloract":"#ff9999","x":1538697600000,"y":-0.000935191314319184,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-08","adjClose":53.6836031909,"daily_return":0.0137523074286974,"coloract":"#6495ed","x":1538956800000,"y":0.0137523074286974,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-09","adjClose":53.5647026301,"daily_return":-0.00221729580907315,"coloract":"#ff9999","x":1539043200000,"y":-0.00221729580907315,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-10","adjClose":52.9206579259,"daily_return":-0.0120965464964433,"coloract":"#ff9999","x":1539129600000,"y":-0.0120965464964433,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-11","adjClose":51.6127517574,"daily_return":-0.0250250025936345,"coloract":"#ff9999","x":1539216000000,"y":-0.0250250025936345,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-12","adjClose":51.9000947792,"daily_return":0.00555184732095482,"coloract":"#6495ed","x":1539302400000,"y":0.00555184732095482,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-15","adjClose":52.2171629413,"daily_return":0.00609061646828257,"coloract":"#6495ed","x":1539561600000,"y":0.00609061646828257,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-16","adjClose":52.8017573651,"daily_return":0.0111332407609765,"coloract":"#6495ed","x":1539648000000,"y":0.0111332407609765,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-17","adjClose":53.0494668668,"daily_return":0.00468034178504295,"coloract":"#6495ed","x":1539734400000,"y":0.00468034178504295,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-18","adjClose":52.9801082063,"daily_return":-0.00130828913244541,"coloract":"#ff9999","x":1539820800000,"y":-0.00130828913244541,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-19","adjClose":54.1889305742,"daily_return":0.0225601283980157,"coloract":"#6495ed","x":1539907200000,"y":0.0225601283980157,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-22","adjClose":53.7826869915,"daily_return":-0.0075250423928428,"coloract":"#ff9999","x":1540166400000,"y":-0.0075250423928428,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-23","adjClose":54.0204881131,"daily_return":0.00441177186251185,"coloract":"#6495ed","x":1540252800000,"y":0.00441177186251185,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-24","adjClose":54.2483808546,"daily_return":0.00420976186847,"coloract":"#6495ed","x":1540339200000,"y":0.00420976186847,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-25","adjClose":54.3771897954,"daily_return":0.00237161472024772,"coloract":"#6495ed","x":1540425600000,"y":0.00237161472024772,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-26","adjClose":53.3368098886,"daily_return":-0.0193180508447686,"coloract":"#ff9999","x":1540512000000,"y":-0.0193180508447686,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-10-29","adjClose":53.9511294526,"daily_return":0.0114519168058242,"coloract":"#6495ed","x":1540771200000,"y":0.0114519168058242,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-30","adjClose":55.0212344996,"daily_return":0.0196405658746603,"coloract":"#6495ed","x":1540857600000,"y":0.0196405658746603,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-10-31","adjClose":54.5059987363,"daily_return":-0.00940842836491251,"coloract":"#ff9999","x":1540944000000,"y":-0.00940842836491251,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-01","adjClose":54.8924255588,"daily_return":0.00706460686539723,"coloract":"#6495ed","x":1541030400000,"y":0.00706460686539723,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-02","adjClose":54.6050825369,"daily_return":-0.0052484058584934,"coloract":"#ff9999","x":1541116800000,"y":-0.0052484058584934,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-05","adjClose":55.2887607614,"daily_return":0.0124426814926899,"coloract":"#6495ed","x":1541376000000,"y":0.0124426814926899,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-06","adjClose":55.6256456836,"daily_return":0.00607470154643419,"coloract":"#6495ed","x":1541462400000,"y":0.00607470154643419,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-07","adjClose":55.9427138457,"daily_return":0.00568385189209764,"coloract":"#6495ed","x":1541548800000,"y":0.00568385189209764,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-08","adjClose":55.9724389859,"daily_return":0.000531208511929115,"coloract":"#6495ed","x":1541635200000,"y":0.000531208511929115,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-09","adjClose":56.299415528,"daily_return":0.00582474508820496,"coloract":"#6495ed","x":1541721600000,"y":0.00582474508820496,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-12","adjClose":56.0021641261,"daily_return":-0.00529381860894773,"coloract":"#ff9999","x":1541980800000,"y":-0.00529381860894773,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-13","adjClose":55.8733551852,"daily_return":-0.00230271999827281,"coloract":"#ff9999","x":1542067200000,"y":-0.00230271999827281,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-14","adjClose":55.4968367428,"daily_return":-0.00676159159625023,"coloract":"#ff9999","x":1542153600000,"y":-0.00676159159625023,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-15","adjClose":55.4076613222,"daily_return":-0.00160814829649425,"coloract":"#ff9999","x":1542240000000,"y":-0.00160814829649425,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-16","adjClose":55.5463786431,"daily_return":0.00250044781096559,"coloract":"#6495ed","x":1542326400000,"y":0.00250044781096559,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-19","adjClose":55.4572032225,"daily_return":-0.00160671283368163,"coloract":"#ff9999","x":1542585600000,"y":-0.00160671283368163,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-20","adjClose":54.5357238765,"daily_return":-0.0167556392777528,"coloract":"#ff9999","x":1542672000000,"y":-0.0167556392777528,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-21","adjClose":54.0997551536,"daily_return":-0.00802631087515415,"coloract":"#ff9999","x":1542758400000,"y":-0.00802631087515415,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-11-23","adjClose":54.2880143749,"daily_return":0.00347381280074543,"coloract":"#6495ed","x":1542931200000,"y":0.00347381280074543,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-26","adjClose":54.3573730353,"daily_return":0.00127678995814984,"coloract":"#6495ed","x":1543190400000,"y":0.00127678995814984,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-27","adjClose":54.8428836585,"daily_return":0.00889217364567241,"coloract":"#6495ed","x":1543276800000,"y":0.00889217364567241,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-28","adjClose":55.2986691415,"daily_return":0.00827640564606913,"coloract":"#6495ed","x":1543363200000,"y":0.00827640564606913,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-29","adjClose":55.387844562,"daily_return":0.00161131535921299,"coloract":"#6495ed","x":1543449600000,"y":0.00161131535921299,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-11-30","adjClose":55.7445462444,"daily_return":0.00641942290188968,"coloract":"#6495ed","x":1543536000000,"y":0.00641942290188968,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-03","adjClose":55.7940881447,"daily_return":0.000888336204388551,"coloract":"#6495ed","x":1543795200000,"y":0.000888336204388551,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-04","adjClose":54.8527920385,"daily_return":-0.0170148279579729,"coloract":"#ff9999","x":1543881600000,"y":-0.0170148279579729,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-06","adjClose":54.9122423189,"daily_return":0.00108322812562722,"coloract":"#6495ed","x":1544054400000,"y":0.00108322812562722,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-07","adjClose":54.2186557144,"daily_return":-0.0127112661199251,"coloract":"#ff9999","x":1544140800000,"y":-0.0127112661199251,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-10","adjClose":54.2186557144,"daily_return":0,"coloract":"#ff9999","x":1544400000000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-11","adjClose":54.6645328173,"daily_return":0.00819005396977923,"coloract":"#6495ed","x":1544486400000,"y":0.00819005396977923,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-12","adjClose":54.5951741569,"daily_return":-0.00126961112449342,"coloract":"#ff9999","x":1544572800000,"y":-0.00126961112449342,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-13","adjClose":54.9320590791,"daily_return":0.00615163872273738,"coloract":"#6495ed","x":1544659200000,"y":0.00615163872273738,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-14","adjClose":54.000671353,"daily_return":-0.0171006532126596,"coloract":"#ff9999","x":1544745600000,"y":-0.0171006532126596,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-17","adjClose":52.7522154648,"daily_return":-0.0233907081430251,"coloract":"#ff9999","x":1545004800000,"y":-0.0233907081430251,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-18","adjClose":52.1279875207,"daily_return":-0.011903777784577,"coloract":"#ff9999","x":1545091200000,"y":-0.011903777784577,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-19","adjClose":51.6226601374,"daily_return":-0.00974126698334166,"coloract":"#ff9999","x":1545177600000,"y":-0.00974126698334166,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-20","adjClose":50.7011807914,"daily_return":-0.0180115259418732,"coloract":"#ff9999","x":1545264000000,"y":-0.0180115259418732,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-21","adjClose":50.18,"daily_return":-0.0103326591588617,"coloract":"#ff9999","x":1545350400000,"y":-0.0103326591588617,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-24","adjClose":48.73,"daily_return":-0.0293216840828618,"coloract":"#ff9999","x":1545609600000,"y":-0.0293216840828618,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-26","adjClose":50.09,"daily_return":0.0275265305141108,"coloract":"#6495ed","x":1545782400000,"y":0.0275265305141108,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-27","adjClose":50.57,"daily_return":0.00953712772236637,"coloract":"#6495ed","x":1545868800000,"y":0.00953712772236637,"color":"#6495ed"},{"sector":"Consumer Staples","date":"2018-12-28","adjClose":50.57,"daily_return":0,"coloract":"#ff9999","x":1545955200000,"y":0,"color":"#ff9999"},{"sector":"Consumer Staples","date":"2018-12-31","adjClose":50.78,"daily_return":0.00414406118464061,"coloract":"#6495ed","x":1546214400000,"y":0.00414406118464061,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Energy 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Energy","date":"2018-01-02","adjClose":71.2702864803,"daily_return":0.0163341769003367,"coloract":"#6495ed","x":1514851200000,"y":0.0163341769003367,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-03","adjClose":72.3376427108,"daily_return":0.0148651385912171,"coloract":"#6495ed","x":1514937600000,"y":0.0148651385912171,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-04","adjClose":72.7742884414,"daily_return":0.0060180723248946,"coloract":"#6495ed","x":1515024000000,"y":0.0060180723248946,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-05","adjClose":72.745178726,"daily_return":-0.000400080021662141,"coloract":"#ff9999","x":1515110400000,"y":-0.000400080021662141,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-08","adjClose":73.1818244567,"daily_return":0.00598445831594763,"coloract":"#6495ed","x":1515369600000,"y":0.00598445831594763,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-09","adjClose":72.997462926,"daily_return":-0.00252240425783068,"coloract":"#ff9999","x":1515456000000,"y":-0.00252240425783068,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-10","adjClose":72.9101337798,"daily_return":-0.00119704742727134,"coloract":"#ff9999","x":1515542400000,"y":-0.00119704742727134,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-11","adjClose":74.4044325025,"daily_return":0.0202878780321196,"coloract":"#6495ed","x":1515628800000,"y":0.0202878780321196,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-12","adjClose":75.1224721485,"daily_return":0.00960422697265351,"coloract":"#6495ed","x":1515715200000,"y":0.00960422697265351,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-16","adjClose":74.1715547795,"daily_return":-0.0127390257778561,"coloract":"#ff9999","x":1516060800000,"y":-0.0127390257778561,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-17","adjClose":74.8216717562,"daily_return":0.00872685447221677,"coloract":"#6495ed","x":1516147200000,"y":0.00872685447221677,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-18","adjClose":74.2103677333,"daily_return":-0.00820370510162061,"coloract":"#ff9999","x":1516233600000,"y":-0.00820370510162061,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-19","adjClose":74.1133353487,"daily_return":-0.00130838694593116,"coloract":"#ff9999","x":1516320000000,"y":-0.00130838694593116,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-22","adjClose":75.7143696944,"daily_return":0.0213724863311633,"coloract":"#6495ed","x":1516579200000,"y":0.0213724863311633,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-23","adjClose":75.5979308329,"daily_return":-0.00153905378582042,"coloract":"#ff9999","x":1516665600000,"y":-0.00153905378582042,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-24","adjClose":75.3941628253,"daily_return":-0.00269905696868999,"coloract":"#ff9999","x":1516752000000,"y":-0.00269905696868999,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-25","adjClose":74.8022652793,"daily_return":-0.00788168690256263,"coloract":"#ff9999","x":1516838400000,"y":-0.00788168690256263,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-26","adjClose":75.2098012946,"daily_return":0.00543338982262309,"coloract":"#6495ed","x":1516924800000,"y":0.00543338982262309,"color":"#6495ed"},{"sector":"Energy","date":"2018-01-29","adjClose":74.0745223949,"daily_return":-0.0152099129765215,"coloract":"#ff9999","x":1517184000000,"y":-0.0152099129765215,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-30","adjClose":72.5802236722,"daily_return":-0.0203791623371528,"coloract":"#ff9999","x":1517270400000,"y":-0.0203791623371528,"color":"#ff9999"},{"sector":"Energy","date":"2018-01-31","adjClose":72.6287398645,"daily_return":0.0006682258852857,"coloract":"#6495ed","x":1517356800000,"y":0.0006682258852857,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-01","adjClose":73.3758892259,"daily_return":0.0102346875980821,"coloract":"#6495ed","x":1517443200000,"y":0.0102346875980821,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-02","adjClose":70.3096658729,"daily_return":-0.0426861129958587,"coloract":"#ff9999","x":1517529600000,"y":-0.0426861129958587,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-05","adjClose":67.3598813814,"daily_return":-0.0428596750333883,"coloract":"#ff9999","x":1517788800000,"y":-0.0428596750333883,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-06","adjClose":67.8935594966,"daily_return":0.00789156832361648,"coloract":"#6495ed","x":1517875200000,"y":0.00789156832361648,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-07","adjClose":66.7582805969,"daily_return":-0.0168628338187187,"coloract":"#ff9999","x":1517961600000,"y":-0.0168628338187187,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-08","adjClose":64.7400069975,"daily_return":-0.0306989868881704,"coloract":"#ff9999","x":1518048000000,"y":-0.0306989868881704,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-09","adjClose":64.6914908052,"daily_return":-0.000749681420611381,"coloract":"#ff9999","x":1518134400000,"y":-0.000749681420611381,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-12","adjClose":65.7491437972,"daily_return":0.016216973713596,"coloract":"#6495ed","x":1518393600000,"y":0.016216973713596,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-13","adjClose":65.4774531204,"daily_return":-0.00414079266529921,"coloract":"#ff9999","x":1518480000000,"y":-0.00414079266529921,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-14","adjClose":66.4283704893,"daily_return":0.014418375423241,"coloract":"#6495ed","x":1518566400000,"y":0.014418375423241,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-15","adjClose":66.2634154355,"daily_return":-0.0024862901290339,"coloract":"#ff9999","x":1518652800000,"y":-0.0024862901290339,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-16","adjClose":66.0984603817,"daily_return":-0.00249248717850303,"coloract":"#ff9999","x":1518739200000,"y":-0.00249248717850303,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-20","adjClose":65.7394405587,"daily_return":-0.00544639603501906,"coloract":"#ff9999","x":1519084800000,"y":-0.00544639603501906,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-21","adjClose":64.6332713744,"daily_return":-0.0169697433345872,"coloract":"#ff9999","x":1519171200000,"y":-0.0169697433345872,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-22","adjClose":65.3416077819,"daily_return":0.0108996973079005,"coloract":"#6495ed","x":1519257600000,"y":0.0108996973079005,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-23","adjClose":66.7582805969,"daily_return":0.0214493312064867,"coloract":"#6495ed","x":1519344000000,"y":0.0214493312064867,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-26","adjClose":67.1561133737,"daily_return":0.00594161591428222,"coloract":"#6495ed","x":1519603200000,"y":0.00594161591428222,"color":"#6495ed"},{"sector":"Energy","date":"2018-02-27","adjClose":66.2828219124,"daily_return":-0.0130891921100673,"coloract":"#ff9999","x":1519689600000,"y":-0.0130891921100673,"color":"#ff9999"},{"sector":"Energy","date":"2018-02-28","adjClose":64.7594134744,"daily_return":-0.0232516954199227,"coloract":"#ff9999","x":1519776000000,"y":-0.0232516954199227,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-01","adjClose":64.6623810898,"daily_return":-0.00149947546481766,"coloract":"#ff9999","x":1519862400000,"y":-0.00149947546481766,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-02","adjClose":64.963181482,"daily_return":0.00464107427821769,"coloract":"#6495ed","x":1519948800000,"y":0.00464107427821769,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-05","adjClose":65.6521114126,"daily_return":0.0105490912157107,"coloract":"#6495ed","x":1520208000000,"y":0.0105490912157107,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-06","adjClose":65.6909243664,"daily_return":0.000591016565127944,"coloract":"#6495ed","x":1520294400000,"y":0.000591016565127944,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-07","adjClose":65.196059205,"daily_return":-0.00756175298615158,"coloract":"#ff9999","x":1520380800000,"y":-0.00756175298615158,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-08","adjClose":65.1766527281,"daily_return":-0.000297707653014179,"coloract":"#ff9999","x":1520467200000,"y":-0.000297707653014179,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-09","adjClose":66.4186672509,"daily_return":0.0188768324566952,"coloract":"#6495ed","x":1520553600000,"y":0.0188768324566952,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-12","adjClose":66.3992607739,"daily_return":-0.000292226771290593,"coloract":"#ff9999","x":1520812800000,"y":-0.000292226771290593,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-13","adjClose":65.9238020895,"daily_return":-0.00718636223070046,"coloract":"#ff9999","x":1520899200000,"y":-0.00718636223070046,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-14","adjClose":65.5356725511,"daily_return":-0.00590494777571138,"coloract":"#ff9999","x":1520985600000,"y":-0.00590494777571138,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-15","adjClose":65.196059205,"daily_return":-0.00519558802597864,"coloract":"#ff9999","x":1521072000000,"y":-0.00519558802597864,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-16","adjClose":65.7731961847,"daily_return":0.00881337705963237,"coloract":"#6495ed","x":1521158400000,"y":0.00881337705963237,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-19","adjClose":64.756941185,"daily_return":-0.0155715079219636,"coloract":"#ff9999","x":1521417600000,"y":-0.0155715079219636,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-20","adjClose":65.3041554156,"daily_return":0.00841477542244196,"coloract":"#6495ed","x":1521504000000,"y":0.00841477542244196,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-21","adjClose":67.0141998863,"daily_return":0.0258488655117022,"coloract":"#6495ed","x":1521590400000,"y":0.0258488655117022,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-22","adjClose":65.6461643097,"daily_return":-0.0206253628511623,"coloract":"#ff9999","x":1521676800000,"y":-0.0206253628511623,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-23","adjClose":65.2455253194,"daily_return":-0.00612170631468345,"coloract":"#ff9999","x":1521763200000,"y":-0.00612170631468345,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-26","adjClose":66.4181272422,"daily_return":0.0178125534892377,"coloract":"#6495ed","x":1522022400000,"y":0.0178125534892377,"color":"#6495ed"},{"sector":"Energy","date":"2018-03-27","adjClose":65.7927395501,"daily_return":-0.0094605288006937,"coloract":"#ff9999","x":1522108800000,"y":-0.0094605288006937,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-28","adjClose":64.5126491177,"daily_return":-0.0196481761328009,"coloract":"#ff9999","x":1522195200000,"y":-0.0196481761328009,"color":"#ff9999"},{"sector":"Energy","date":"2018-03-29","adjClose":65.8709130116,"daily_return":0.020835648440686,"coloract":"#6495ed","x":1522281600000,"y":0.020835648440686,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-02","adjClose":64.5517358485,"daily_return":-0.0202299549024536,"coloract":"#ff9999","x":1522627200000,"y":-0.0202299549024536,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-03","adjClose":65.9295431077,"daily_return":0.0211196346758555,"coloract":"#6495ed","x":1522713600000,"y":0.0211196346758555,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-04","adjClose":65.8415979635,"daily_return":-0.00133481666081003,"coloract":"#ff9999","x":1522800000000,"y":-0.00133481666081003,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-05","adjClose":67.023971569,"daily_return":0.0177985135334335,"coloract":"#6495ed","x":1522886400000,"y":0.0177985135334335,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-06","adjClose":65.8122829155,"daily_return":-0.0182438486544152,"coloract":"#ff9999","x":1522972800000,"y":-0.0182438486544152,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-09","adjClose":66.1249767615,"daily_return":0.00474004738666967,"coloract":"#6495ed","x":1523232000000,"y":0.00474004738666967,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-10","adjClose":68.313833684,"daily_return":0.0325657502797201,"coloract":"#6495ed","x":1523318400000,"y":0.0325657502797201,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-11","adjClose":69.0271665204,"daily_return":0.0103878557725157,"coloract":"#6495ed","x":1523404800000,"y":0.0103878557725157,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-12","adjClose":69.0173948377,"daily_return":-0.000141572875022256,"coloract":"#ff9999","x":1523491200000,"y":-0.000141572875022256,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-13","adjClose":69.7795860875,"daily_return":0.0109829321401813,"coloract":"#6495ed","x":1523577600000,"y":0.0109829321401813,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-16","adjClose":70.4929189238,"daily_return":0.0101707599136409,"coloract":"#6495ed","x":1523836800000,"y":0.0101707599136409,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-17","adjClose":70.7665260392,"daily_return":0.00387382886333487,"coloract":"#6495ed","x":1523923200000,"y":0.00387382886333487,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-18","adjClose":71.8804978658,"daily_return":0.0156188953981804,"coloract":"#6495ed","x":1524009600000,"y":0.0156188953981804,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-19","adjClose":71.96844301,"daily_return":0.001222743172411,"coloract":"#6495ed","x":1524096000000,"y":0.001222743172411,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-20","adjClose":71.6264341159,"daily_return":-0.00476353401545815,"coloract":"#ff9999","x":1524182400000,"y":-0.00476353401545815,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-23","adjClose":72.0661598369,"daily_return":0.00612038632678313,"coloract":"#6495ed","x":1524441600000,"y":0.00612038632678313,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-24","adjClose":71.2941969044,"daily_return":-0.0107696494539908,"coloract":"#ff9999","x":1524528000000,"y":-0.0107696494539908,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-25","adjClose":71.8609545004,"daily_return":0.00791813010697506,"coloract":"#6495ed","x":1524614400000,"y":0.00791813010697506,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-26","adjClose":72.9065245482,"daily_return":0.0144450706102566,"coloract":"#6495ed","x":1524700800000,"y":0.0144450706102566,"color":"#6495ed"},{"sector":"Energy","date":"2018-04-27","adjClose":72.1345616157,"daily_return":-0.010644848881709,"coloract":"#ff9999","x":1524787200000,"y":-0.010644848881709,"color":"#ff9999"},{"sector":"Energy","date":"2018-04-30","adjClose":72.124789933,"daily_return":-0.000135473820034093,"coloract":"#ff9999","x":1525046400000,"y":-0.000135473820034093,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-01","adjClose":71.685064212,"daily_return":-0.00611539583321452,"coloract":"#ff9999","x":1525132800000,"y":-0.00611539583321452,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-02","adjClose":71.9782146927,"daily_return":0.00408108306881427,"coloract":"#6495ed","x":1525219200000,"y":0.00408108306881427,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-03","adjClose":71.812096087,"daily_return":-0.00231056847578071,"coloract":"#ff9999","x":1525305600000,"y":-0.00231056847578071,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-04","adjClose":72.1638766638,"daily_return":0.0048866664361773,"coloract":"#6495ed","x":1525392000000,"y":0.0048866664361773,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-07","adjClose":72.2615934907,"daily_return":0.00135318017945529,"coloract":"#6495ed","x":1525651200000,"y":0.00135318017945529,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-08","adjClose":72.8283510867,"daily_return":0.00781253973671792,"coloract":"#6495ed","x":1525737600000,"y":0.00781253973671792,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-09","adjClose":74.3136468555,"daily_return":0.0201892898111362,"coloract":"#6495ed","x":1525824000000,"y":0.0201892898111362,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-10","adjClose":74.8706327688,"daily_return":0.00746712056699561,"coloract":"#6495ed","x":1525910400000,"y":0.00746712056699561,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-11","adjClose":74.9781212784,"daily_return":0.00143462691724228,"coloract":"#6495ed","x":1525996800000,"y":0.00143462691724228,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-14","adjClose":75.496020461,"daily_return":0.00688359104913872,"coloract":"#6495ed","x":1526256000000,"y":0.00688359104913872,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-15","adjClose":75.5155638264,"daily_return":0.00025883266639859,"coloract":"#6495ed","x":1526342400000,"y":0.00025883266639859,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-16","adjClose":75.779399259,"daily_return":0.00348769971797847,"coloract":"#6495ed","x":1526428800000,"y":0.00348769971797847,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-17","adjClose":76.9226861337,"daily_return":0.0149743631214427,"coloract":"#6495ed","x":1526515200000,"y":0.0149743631214427,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-18","adjClose":76.3266134896,"daily_return":-0.00777916312212401,"coloract":"#ff9999","x":1526601600000,"y":-0.00777916312212401,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-21","adjClose":77.1083481048,"daily_return":0.0101898729110017,"coloract":"#6495ed","x":1526860800000,"y":0.0101898729110017,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-22","adjClose":76.0823214224,"daily_return":-0.0133956203503249,"coloract":"#ff9999","x":1526947200000,"y":-0.0133956203503249,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-23","adjClose":76.0725497397,"daily_return":-0.000128443902437603,"coloract":"#ff9999","x":1527033600000,"y":-0.000128443902437603,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-24","adjClose":74.8217743554,"daily_return":-0.016578543155136,"coloract":"#ff9999","x":1527120000000,"y":-0.016578543155136,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-25","adjClose":72.8772095001,"daily_return":-0.0263329803749084,"coloract":"#ff9999","x":1527206400000,"y":-0.0263329803749084,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-29","adjClose":72.6524607983,"daily_return":-0.00308870184362853,"coloract":"#ff9999","x":1527552000000,"y":-0.00308870184362853,"color":"#ff9999"},{"sector":"Energy","date":"2018-05-30","adjClose":74.8510894035,"daily_return":0.0298134038404614,"coloract":"#6495ed","x":1527638400000,"y":0.0298134038404614,"color":"#6495ed"},{"sector":"Energy","date":"2018-05-31","adjClose":74.2843318075,"daily_return":-0.00760061318536742,"coloract":"#ff9999","x":1527724800000,"y":-0.00760061318536742,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-01","adjClose":74.6361123843,"daily_return":0.00472441823585079,"coloract":"#6495ed","x":1527811200000,"y":0.00472441823585079,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-04","adjClose":73.9911813268,"daily_return":-0.00867855545593166,"coloract":"#ff9999","x":1528070400000,"y":-0.00867855545593166,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-05","adjClose":73.8152910384,"daily_return":-0.00238000905660041,"coloract":"#ff9999","x":1528156800000,"y":-0.00238000905660041,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-06","adjClose":74.1670716152,"daily_return":0.00475436711685351,"coloract":"#6495ed","x":1528243200000,"y":0.00475436711685351,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-07","adjClose":75.2908151245,"daily_return":0.0150378773642581,"coloract":"#6495ed","x":1528329600000,"y":0.0150378773642581,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-08","adjClose":75.1442398842,"daily_return":-0.00194868525391101,"coloract":"#ff9999","x":1528416000000,"y":-0.00194868525391101,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-11","adjClose":75.5351071918,"daily_return":0.00518807908190855,"coloract":"#6495ed","x":1528675200000,"y":0.00518807908190855,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-12","adjClose":74.9585779131,"daily_return":-0.00766187762223147,"coloract":"#ff9999","x":1528761600000,"y":-0.00766187762223147,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-13","adjClose":74.6751991151,"daily_return":-0.00378763595241249,"coloract":"#ff9999","x":1528848000000,"y":-0.00378763595241249,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-14","adjClose":74.5677106055,"daily_return":-0.00144045071738308,"coloract":"#ff9999","x":1528934400000,"y":-0.00144045071738308,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-15","adjClose":72.9772715309,"daily_return":-0.0215595360262517,"coloract":"#ff9999","x":1529020800000,"y":-0.0215595360262517,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-18","adjClose":73.7053715839,"daily_return":0.00992763721098555,"coloract":"#6495ed","x":1529280000000,"y":0.00992763721098555,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-19","adjClose":73.5381053555,"daily_return":-0.00227196890248749,"coloract":"#ff9999","x":1529366400000,"y":-0.00227196890248749,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-20","adjClose":73.8627986224,"daily_return":0.00440558752771736,"coloract":"#6495ed","x":1529452800000,"y":0.00440558752771736,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-21","adjClose":72.4951512255,"daily_return":-0.018689619637887,"coloract":"#ff9999","x":1529539200000,"y":-0.018689619637887,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-22","adjClose":73.9415121416,"daily_return":0.0197547242513378,"coloract":"#6495ed","x":1529625600000,"y":0.0197547242513378,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-25","adjClose":72.4557944659,"daily_return":-0.0202977598331957,"coloract":"#ff9999","x":1529884800000,"y":-0.0202977598331957,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-26","adjClose":73.3708391271,"daily_return":0.0125499251903607,"coloract":"#6495ed","x":1529971200000,"y":0.0125499251903607,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-27","adjClose":74.3547581177,"daily_return":0.0133210974772755,"coloract":"#6495ed","x":1530057600000,"y":0.0133210974772755,"color":"#6495ed"},{"sector":"Energy","date":"2018-06-28","adjClose":74.2563662186,"daily_return":-0.00132415273642561,"coloract":"#ff9999","x":1530144000000,"y":-0.00132415273642561,"color":"#ff9999"},{"sector":"Energy","date":"2018-06-29","adjClose":74.7188081442,"daily_return":0.00620832850728537,"coloract":"#6495ed","x":1530230400000,"y":0.00620832850728537,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-02","adjClose":73.6168188748,"daily_return":-0.014858325883071,"coloract":"#ff9999","x":1530489600000,"y":-0.014858325883071,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-03","adjClose":74.0792608003,"daily_return":0.00626209494108387,"coloract":"#6495ed","x":1530576000000,"y":0.00626209494108387,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-05","adjClose":74.0005472811,"daily_return":-0.00106312302309863,"coloract":"#ff9999","x":1530748800000,"y":-0.00106312302309863,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-06","adjClose":74.4531500167,"daily_return":0.00609757986725601,"coloract":"#6495ed","x":1530835200000,"y":0.00609757986725601,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-09","adjClose":75.5649784761,"daily_return":0.0148228594478832,"coloract":"#6495ed","x":1531094400000,"y":0.0148228594478832,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-10","adjClose":76.1258123007,"daily_return":0.00739446840737745,"coloract":"#6495ed","x":1531180800000,"y":0.00739446840737745,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-11","adjClose":74.5121851562,"daily_return":-0.0214247254350797,"coloract":"#ff9999","x":1531267200000,"y":-0.0214247254350797,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-12","adjClose":74.640094625,"daily_return":0.00171515313536119,"coloract":"#6495ed","x":1531353600000,"y":0.00171515313536119,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-13","adjClose":75.0336622212,"daily_return":0.00525901816826657,"coloract":"#6495ed","x":1531440000000,"y":0.00525901816826657,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-16","adjClose":74.1678135095,"daily_return":-0.0116065665903555,"coloract":"#ff9999","x":1531699200000,"y":-0.0116065665903555,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-17","adjClose":73.8726378123,"daily_return":-0.00398777612105583,"coloract":"#ff9999","x":1531785600000,"y":-0.00398777612105583,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-18","adjClose":73.9218337618,"daily_return":0.000665734662373296,"coloract":"#6495ed","x":1531872000000,"y":0.000665734662373296,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-19","adjClose":73.9415121416,"daily_return":0.000266169817758843,"coloract":"#6495ed","x":1531958400000,"y":0.000266169817758843,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-20","adjClose":73.6856932041,"daily_return":-0.0034657459370413,"coloract":"#ff9999","x":1532044800000,"y":-0.0034657459370413,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-23","adjClose":73.3609999372,"daily_return":-0.00441619988408348,"coloract":"#ff9999","x":1532304000000,"y":-0.00441619988408348,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-24","adjClose":74.2858837883,"daily_return":0.0125284858771106,"coloract":"#6495ed","x":1532390400000,"y":0.0125284858771106,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-25","adjClose":74.9057527524,"daily_return":0.00830974906365878,"coloract":"#6495ed","x":1532476800000,"y":0.00830974906365878,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-26","adjClose":75.7224055146,"daily_return":0.010843401039641,"coloract":"#6495ed","x":1532563200000,"y":0.010843401039641,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-27","adjClose":75.3977122477,"daily_return":-0.00429716137527691,"coloract":"#ff9999","x":1532649600000,"y":-0.00429716137527691,"color":"#ff9999"},{"sector":"Energy","date":"2018-07-30","adjClose":76.0175812118,"daily_return":0.00818771225632542,"coloract":"#6495ed","x":1532908800000,"y":0.00818771225632542,"color":"#6495ed"},{"sector":"Energy","date":"2018-07-31","adjClose":75.8798325531,"daily_return":-0.00181370693610283,"coloract":"#ff9999","x":1532995200000,"y":-0.00181370693610283,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-01","adjClose":74.8270392332,"daily_return":-0.0139716315967924,"coloract":"#ff9999","x":1533081600000,"y":-0.0139716315967924,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-02","adjClose":74.4137932571,"daily_return":-0.00553798883815215,"coloract":"#ff9999","x":1533168000000,"y":-0.00553798883815215,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-03","adjClose":74.0300648508,"daily_return":-0.00517002543478728,"coloract":"#ff9999","x":1533254400000,"y":-0.00517002543478728,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-06","adjClose":74.3055621682,"daily_return":0.00371451740494422,"coloract":"#6495ed","x":1533513600000,"y":0.00371451740494422,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-07","adjClose":74.8565568029,"daily_return":0.00738789639959769,"coloract":"#6495ed","x":1533600000000,"y":0.00738789639959769,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-08","adjClose":74.3154013581,"daily_return":-0.00725548991156444,"coloract":"#ff9999","x":1533686400000,"y":-0.00725548991156444,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-09","adjClose":73.6266580647,"daily_return":-0.00931105423305922,"coloract":"#ff9999","x":1533772800000,"y":-0.00931105423305922,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-10","adjClose":74.0792608003,"daily_return":0.00612844976889537,"coloract":"#6495ed","x":1533859200000,"y":0.00612844976889537,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-13","adjClose":73.1346985694,"daily_return":-0.0128326851241338,"coloract":"#ff9999","x":1534118400000,"y":-0.0128326851241338,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-14","adjClose":73.3118039877,"daily_return":0.00241870582838821,"coloract":"#6495ed","x":1534204800000,"y":0.00241870582838821,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-15","adjClose":70.7536146122,"daily_return":-0.0355180074513255,"coloract":"#ff9999","x":1534291200000,"y":-0.0355180074513255,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-16","adjClose":71.2652524873,"daily_return":0.00720524109285048,"coloract":"#6495ed","x":1534377600000,"y":0.00720524109285048,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-17","adjClose":71.4423579056,"daily_return":0.00248207518487398,"coloract":"#6495ed","x":1534464000000,"y":0.00248207518487398,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-20","adjClose":71.924478211,"daily_return":0.00672571336383587,"coloract":"#6495ed","x":1534723200000,"y":0.00672571336383587,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-21","adjClose":72.2885282375,"daily_return":0.0050487928762788,"coloract":"#6495ed","x":1534809600000,"y":0.0050487928762788,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-22","adjClose":73.1543769492,"daily_return":0.0119065132739031,"coloract":"#6495ed","x":1534896000000,"y":0.0119065132739031,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-23","adjClose":72.8100053025,"daily_return":-0.0047185797019802,"coloract":"#ff9999","x":1534982400000,"y":-0.0047185797019802,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-24","adjClose":73.3413215574,"daily_return":0.00727080084680409,"coloract":"#6495ed","x":1535068800000,"y":0.00727080084680409,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-27","adjClose":73.8824770022,"daily_return":0.0073515000604667,"coloract":"#6495ed","x":1535328000000,"y":0.0073515000604667,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-28","adjClose":73.5676229252,"daily_return":-0.00427065910019042,"coloract":"#ff9999","x":1535414400000,"y":-0.00427065910019042,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-29","adjClose":74.0202256609,"daily_return":0.00613335256079317,"coloract":"#6495ed","x":1535500800000,"y":0.00613335256079317,"color":"#6495ed"},{"sector":"Energy","date":"2018-08-30","adjClose":73.8136026729,"daily_return":-0.00279534291810979,"coloract":"#ff9999","x":1535587200000,"y":-0.00279534291810979,"color":"#ff9999"},{"sector":"Energy","date":"2018-08-31","adjClose":73.2429296583,"daily_return":-0.00776131288060267,"coloract":"#ff9999","x":1535673600000,"y":-0.00776131288060267,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-04","adjClose":73.0855026198,"daily_return":-0.00215169528965831,"coloract":"#ff9999","x":1536019200000,"y":-0.00215169528965831,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-05","adjClose":72.9871107208,"daily_return":-0.00134716442227401,"coloract":"#ff9999","x":1536105600000,"y":-0.00134716442227401,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-06","adjClose":71.6391417037,"daily_return":-0.0186412636550095,"coloract":"#ff9999","x":1536192000000,"y":-0.0186412636550095,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-07","adjClose":71.6293025138,"daily_return":-0.000137353203899515,"coloract":"#ff9999","x":1536278400000,"y":-0.000137353203899515,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-10","adjClose":71.5997849441,"daily_return":-0.000412172843405223,"coloract":"#ff9999","x":1536537600000,"y":-0.000412172843405223,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-11","adjClose":72.2786890476,"daily_return":0.00943725803257678,"coloract":"#6495ed","x":1536624000000,"y":0.00943725803257678,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-12","adjClose":72.652578264,"daily_return":0.00515954980282363,"coloract":"#6495ed","x":1536710400000,"y":0.00515954980282363,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-13","adjClose":72.6820958337,"daily_return":0.000406201345812818,"coloract":"#6495ed","x":1536796800000,"y":0.000406201345812818,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-14","adjClose":73.06582424,"daily_return":0.00526565720796146,"coloract":"#6495ed","x":1536883200000,"y":0.00526565720796146,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-17","adjClose":73.1838945189,"daily_return":0.00161463974841602,"coloract":"#6495ed","x":1537142400000,"y":0.00161463974841602,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-18","adjClose":73.6660148243,"daily_return":0.00656618774592399,"coloract":"#6495ed","x":1537228800000,"y":0.00656618774592399,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-19","adjClose":73.8923161921,"daily_return":0.00306728252706012,"coloract":"#6495ed","x":1537315200000,"y":0.00306728252706012,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-20","adjClose":73.9119945719,"daily_return":0.000266276129763376,"coloract":"#6495ed","x":1537401600000,"y":0.000266276129763376,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-21","adjClose":74.3972634181,"daily_return":0.00654403621938204,"coloract":"#6495ed","x":1537488000000,"y":0.00654403621938204,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-24","adjClose":75.486970339,"daily_return":0.0145409039224544,"coloract":"#6495ed","x":1537747200000,"y":0.0145409039224544,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-25","adjClose":75.9723852401,"daily_return":0.00640985908377179,"coloract":"#6495ed","x":1537833600000,"y":0.00640985908377179,"color":"#6495ed"},{"sector":"Energy","date":"2018-09-26","adjClose":75.2393096751,"daily_return":-0.00969609273536243,"coloract":"#ff9999","x":1537920000000,"y":-0.00969609273536243,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-27","adjClose":75.2393096751,"daily_return":0,"coloract":"#ff9999","x":1538006400000,"y":0,"color":"#ff9999"},{"sector":"Energy","date":"2018-09-28","adjClose":75.0312747175,"daily_return":-0.00276880656777401,"coloract":"#ff9999","x":1538092800000,"y":-0.00276880656777401,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-01","adjClose":76.0714495056,"daily_return":0.013768000868339,"coloract":"#6495ed","x":1538352000000,"y":0.013768000868339,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-02","adjClose":76.1507009181,"daily_return":0.00104126001951599,"coloract":"#6495ed","x":1538438400000,"y":0.00104126001951599,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-03","adjClose":76.7648993644,"daily_return":0.00803321241445509,"coloract":"#6495ed","x":1538524800000,"y":0.00803321241445509,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-04","adjClose":76.4478937147,"daily_return":-0.00413811530611774,"coloract":"#ff9999","x":1538611200000,"y":-0.00413811530611774,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-05","adjClose":76.4379872881,"daily_return":-0.000129592432589476,"coloract":"#ff9999","x":1538697600000,"y":-0.000129592432589476,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-08","adjClose":76.3785487288,"daily_return":-0.000777907467957029,"coloract":"#ff9999","x":1538956800000,"y":-0.000777907467957029,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-09","adjClose":77.062092161,"daily_return":0.00890960764935667,"coloract":"#6495ed","x":1539043200000,"y":0.00890960764935667,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-10","adjClose":74.6449240819,"daily_return":-0.0318689631462385,"coloract":"#ff9999","x":1539129600000,"y":-0.0318689631462385,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-11","adjClose":72.1187853107,"daily_return":-0.0344279698700616,"coloract":"#ff9999","x":1539216000000,"y":-0.0344279698700616,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-12","adjClose":72.3169138418,"daily_return":0.00274348594611951,"coloract":"#6495ed","x":1539302400000,"y":0.00274348594611951,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-15","adjClose":71.712621822,"daily_return":-0.00839127284370456,"coloract":"#ff9999","x":1539561600000,"y":-0.00839127284370456,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-16","adjClose":72.3070074153,"daily_return":0.00825427715959659,"coloract":"#6495ed","x":1539648000000,"y":0.00825427715959659,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-17","adjClose":71.8513117938,"daily_return":-0.00632217608864849,"coloract":"#ff9999","x":1539734400000,"y":-0.00632217608864849,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-18","adjClose":71.4946804379,"daily_return":-0.00497582229068794,"coloract":"#ff9999","x":1539820800000,"y":-0.00497582229068794,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-19","adjClose":70.8606691384,"daily_return":-0.00890750496480042,"coloract":"#ff9999","x":1539907200000,"y":-0.00890750496480042,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-22","adjClose":70.0780614407,"daily_return":-0.0111057583423886,"coloract":"#ff9999","x":1540166400000,"y":-0.0111057583423886,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-23","adjClose":68.2453725282,"daily_return":-0.0265001541732559,"coloract":"#ff9999","x":1540252800000,"y":-0.0265001541732559,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-24","adjClose":65.5508245056,"daily_return":-0.040283841581183,"coloract":"#ff9999","x":1540339200000,"y":-0.040283841581183,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-25","adjClose":66.3532450565,"daily_return":0.0121668793428915,"coloract":"#6495ed","x":1540425600000,"y":0.0121668793428915,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-26","adjClose":65.8579237288,"daily_return":-0.00749291681911401,"coloract":"#ff9999","x":1540512000000,"y":-0.00749291681911401,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-29","adjClose":64.6295268362,"daily_return":-0.0188283727935268,"coloract":"#ff9999","x":1540771200000,"y":-0.0188283727935268,"color":"#ff9999"},{"sector":"Energy","date":"2018-10-30","adjClose":66.1253972458,"daily_return":0.0228815195274628,"coloract":"#6495ed","x":1540857600000,"y":0.0228815195274628,"color":"#6495ed"},{"sector":"Energy","date":"2018-10-31","adjClose":66.5315607345,"daily_return":0.00612353492896922,"coloract":"#6495ed","x":1540944000000,"y":0.00612353492896922,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-01","adjClose":67.096227048,"daily_return":0.0084513810165836,"coloract":"#6495ed","x":1541030400000,"y":0.0084513810165836,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-02","adjClose":66.9278177966,"daily_return":-0.00251312128702885,"coloract":"#ff9999","x":1541116800000,"y":-0.00251312128702885,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-05","adjClose":68.0472439972,"daily_return":0.0165875362867087,"coloract":"#6495ed","x":1541376000000,"y":0.0165875362867087,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-06","adjClose":68.3642496469,"daily_return":0.0046477934064626,"coloract":"#6495ed","x":1541462400000,"y":0.0046477934064626,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-07","adjClose":69.4836758475,"daily_return":0.0162418230800236,"coloract":"#6495ed","x":1541548800000,"y":0.0162418230800236,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-08","adjClose":67.9778990113,"daily_return":-0.0219092072823299,"coloract":"#ff9999","x":1541635200000,"y":-0.0219092072823299,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-09","adjClose":67.8590218927,"daily_return":-0.00175029216147493,"coloract":"#ff9999","x":1541721600000,"y":-0.00175029216147493,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-12","adjClose":66.452309322,"daily_return":-0.0209478083143395,"coloract":"#ff9999","x":1541980800000,"y":-0.0209478083143395,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-13","adjClose":64.9267196328,"daily_return":-0.0232252936833417,"coloract":"#ff9999","x":1542067200000,"y":-0.0232252936833417,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-14","adjClose":64.8177489407,"daily_return":-0.001679774389169,"coloract":"#ff9999","x":1542153600000,"y":-0.001679774389169,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-15","adjClose":65.7687658898,"daily_return":0.0145655738486168,"coloract":"#6495ed","x":1542240000000,"y":0.0145655738486168,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-16","adjClose":66.5513735876,"daily_return":0.0118291414539842,"coloract":"#6495ed","x":1542326400000,"y":0.0118291414539842,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-19","adjClose":66.5315607345,"daily_return":-0.000297751974695615,"coloract":"#ff9999","x":1542585600000,"y":-0.000297751974695615,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-20","adjClose":64.3521468927,"daily_return":-0.0333061363557761,"coloract":"#ff9999","x":1542672000000,"y":-0.0333061363557761,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-21","adjClose":65.3626024011,"daily_return":0.0155799699458612,"coloract":"#6495ed","x":1542758400000,"y":0.0155799699458612,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-23","adjClose":63.3119721045,"daily_return":-0.0318758221380993,"coloract":"#ff9999","x":1542931200000,"y":-0.0318758221380993,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-26","adjClose":64.2629890537,"daily_return":0.014909423563517,"coloract":"#6495ed","x":1543190400000,"y":0.014909423563517,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-27","adjClose":64.0846733757,"daily_return":-0.00277863716959814,"coloract":"#ff9999","x":1543276800000,"y":-0.00277863716959814,"color":"#ff9999"},{"sector":"Energy","date":"2018-11-28","adjClose":65.1842867232,"daily_return":0.0170132082760288,"coloract":"#6495ed","x":1543363200000,"y":0.0170132082760288,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-29","adjClose":65.610263065,"daily_return":0.00651369416549308,"coloract":"#6495ed","x":1543449600000,"y":0.00651369416549308,"color":"#6495ed"},{"sector":"Energy","date":"2018-11-30","adjClose":65.4913859463,"daily_return":-0.00181351115225503,"coloract":"#ff9999","x":1543536000000,"y":-0.00181351115225503,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-03","adjClose":66.9476306497,"daily_return":0.0219920599408185,"coloract":"#6495ed","x":1543795200000,"y":0.0219920599408185,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-04","adjClose":65.0257838983,"daily_return":-0.0291268150640702,"coloract":"#ff9999","x":1543881600000,"y":-0.0291268150640702,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-06","adjClose":63.8271062853,"daily_return":-0.0186059030714292,"coloract":"#ff9999","x":1544054400000,"y":-0.0186059030714292,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-07","adjClose":63.4704749294,"daily_return":-0.00560312749911418,"coloract":"#ff9999","x":1544140800000,"y":-0.00560312749911418,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-10","adjClose":62.479832274,"daily_return":-0.0157310149758896,"coloract":"#ff9999","x":1544400000000,"y":-0.0157310149758896,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-11","adjClose":62.4996451271,"daily_return":0.000317057707040824,"coloract":"#6495ed","x":1544486400000,"y":0.000317057707040824,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-12","adjClose":62.747305791,"daily_return":0.00395476272870354,"coloract":"#6495ed","x":1544572800000,"y":0.00395476272870354,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-13","adjClose":62.945434322,"daily_return":0.00315258772970761,"coloract":"#6495ed","x":1544659200000,"y":0.00315258772970761,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-14","adjClose":61.5090024718,"daily_return":-0.0230846834632397,"coloract":"#ff9999","x":1544745600000,"y":-0.0230846834632397,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-17","adjClose":60.3895762712,"daily_return":-0.0183670339989765,"coloract":"#ff9999","x":1545004800000,"y":-0.0183670339989765,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-18","adjClose":58.9630508475,"daily_return":-0.0239055208530603,"coloract":"#ff9999","x":1545091200000,"y":-0.0239055208530603,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-19","adjClose":58.2696009887,"daily_return":-0.0118304573997152,"coloract":"#ff9999","x":1545177600000,"y":-0.0118304573997152,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-20","adjClose":56.6548534605,"daily_return":-0.0281028751977672,"coloract":"#ff9999","x":1545264000000,"y":-0.0281028751977672,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-21","adjClose":56.11,"daily_return":-0.00966360854260806,"coloract":"#ff9999","x":1545350400000,"y":-0.00966360854260806,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-24","adjClose":53.84,"daily_return":-0.0412973644264083,"coloract":"#ff9999","x":1545609600000,"y":-0.0412973644264083,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-26","adjClose":57.19,"daily_return":0.0603623725907525,"coloract":"#6495ed","x":1545782400000,"y":0.0603623725907525,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-27","adjClose":57.49,"daily_return":0.0052319617079748,"coloract":"#6495ed","x":1545868800000,"y":0.0052319617079748,"color":"#6495ed"},{"sector":"Energy","date":"2018-12-28","adjClose":57.05,"daily_return":-0.00768294332711505,"coloract":"#ff9999","x":1545955200000,"y":-0.00768294332711505,"color":"#ff9999"},{"sector":"Energy","date":"2018-12-31","adjClose":57.35,"daily_return":0.00524476726729528,"coloract":"#6495ed","x":1546214400000,"y":0.00524476726729528,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Financials 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Financials","date":"2018-01-02","adjClose":27.4026827083,"daily_return":0.00035823034823812,"coloract":"#6495ed","x":1514851200000,"y":0.00035823034823812,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-03","adjClose":27.5499034248,"daily_return":0.00535811247758522,"coloract":"#6495ed","x":1514937600000,"y":0.00535811247758522,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-04","adjClose":27.8050860002,"daily_return":0.00921992346995371,"coloract":"#6495ed","x":1515024000000,"y":0.00921992346995371,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-05","adjClose":27.8836037157,"daily_return":0.00281988202379679,"coloract":"#6495ed","x":1515110400000,"y":0.00281988202379679,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-08","adjClose":27.8443448579,"daily_return":-0.00140894704719496,"coloract":"#ff9999","x":1515369600000,"y":-0.00140894704719496,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-09","adjClose":28.0602685755,"daily_return":0.00772475751292534,"coloract":"#6495ed","x":1515456000000,"y":0.00772475751292534,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-10","adjClose":28.295821722,"daily_return":0.00835950531647978,"coloract":"#6495ed","x":1515542400000,"y":0.00835950531647978,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-11","adjClose":28.4332277241,"daily_return":0.00484430013029291,"coloract":"#6495ed","x":1515628800000,"y":0.00484430013029291,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-12","adjClose":28.6884102995,"daily_return":0.00893476734318543,"coloract":"#6495ed","x":1515715200000,"y":0.00893476734318543,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-16","adjClose":28.609892584,"daily_return":-0.00274066632677883,"coloract":"#ff9999","x":1516060800000,"y":-0.00274066632677883,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-17","adjClose":28.8258163016,"daily_return":0.0075188324135036,"coloract":"#6495ed","x":1516147200000,"y":0.0075188324135036,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-18","adjClose":28.7865574439,"daily_return":-0.00136286221949522,"coloract":"#ff9999","x":1516233600000,"y":-0.00136286221949522,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-19","adjClose":28.9926664471,"daily_return":0.00713439411462335,"coloract":"#6495ed","x":1516320000000,"y":0.00713439411462335,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-22","adjClose":29.2282195935,"daily_return":0.00809175014956187,"coloract":"#6495ed","x":1516579200000,"y":0.00809175014956187,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-23","adjClose":29.2576637369,"daily_return":0.00100688043715547,"coloract":"#6495ed","x":1516665600000,"y":0.00100688043715547,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-24","adjClose":29.4539580256,"daily_return":0.00668675176089106,"coloract":"#6495ed","x":1516752000000,"y":0.00668675176089106,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-25","adjClose":29.395069739,"daily_return":-0.00200133489005783,"coloract":"#ff9999","x":1516838400000,"y":-0.00200133489005783,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-26","adjClose":29.6109934566,"daily_return":0.00731872860899285,"coloract":"#6495ed","x":1516924800000,"y":0.00731872860899285,"color":"#6495ed"},{"sector":"Financials","date":"2018-01-29","adjClose":29.4932168833,"daily_return":-0.00398539219162863,"coloract":"#ff9999","x":1517184000000,"y":-0.00398539219162863,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-30","adjClose":29.1104430203,"daily_return":-0.0130633242699023,"coloract":"#ff9999","x":1517270400000,"y":-0.0130633242699023,"color":"#ff9999"},{"sector":"Financials","date":"2018-01-31","adjClose":29.1889607358,"daily_return":0.00269360432234533,"coloract":"#6495ed","x":1517356800000,"y":0.00269360432234533,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-01","adjClose":29.46377274,"daily_return":0.00937088517203311,"coloract":"#6495ed","x":1517443200000,"y":0.00937088517203311,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-02","adjClose":28.8160015872,"daily_return":-0.0222306224574473,"coloract":"#ff9999","x":1517529600000,"y":-0.0222306224574473,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-05","adjClose":27.3634238505,"daily_return":-0.051723617854559,"coloract":"#ff9999","x":1517788800000,"y":-0.051723617854559,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-06","adjClose":27.8639742868,"daily_return":0.0181273845929288,"coloract":"#6495ed","x":1517875200000,"y":0.0181273845929288,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-07","adjClose":27.8836037157,"daily_return":0.000704225382145207,"coloract":"#6495ed","x":1517961600000,"y":0.000704225382145207,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-08","adjClose":26.656764411,"daily_return":-0.0449958931781129,"coloract":"#ff9999","x":1518048000000,"y":-0.0449958931781129,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-09","adjClose":27.1671295618,"daily_return":0.0189648280616947,"coloract":"#6495ed","x":1518134400000,"y":0.0189648280616947,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-12","adjClose":27.5499034248,"daily_return":0.0139912596226677,"coloract":"#6495ed","x":1518393600000,"y":0.0139912596226677,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-13","adjClose":27.6676799981,"daily_return":0.0042659147542321,"coloract":"#6495ed","x":1518480000000,"y":0.0042659147542321,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-14","adjClose":28.3252658653,"daily_return":0.0234892482167495,"coloract":"#6495ed","x":1518566400000,"y":0.0234892482167495,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-15","adjClose":28.4823012963,"daily_return":0.00552869411057477,"coloract":"#6495ed","x":1518652800000,"y":0.00552869411057477,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-16","adjClose":28.4430424386,"daily_return":-0.00137931056181184,"coloract":"#ff9999","x":1518739200000,"y":-0.00137931056181184,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-20","adjClose":28.3547100086,"daily_return":-0.0031104224167362,"coloract":"#ff9999","x":1519084800000,"y":-0.0031104224167362,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-21","adjClose":28.3939688664,"daily_return":0.00138360451172614,"coloract":"#6495ed","x":1519171200000,"y":0.00138360451172614,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-22","adjClose":28.1584157199,"daily_return":-0.0083304889951501,"coloract":"#ff9999","x":1519257600000,"y":-0.0083304889951501,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-23","adjClose":28.5804484407,"daily_return":0.0148765933354498,"coloract":"#6495ed","x":1519344000000,"y":0.0148765933354498,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-26","adjClose":29.0122958759,"daily_return":0.0149968727504697,"coloract":"#6495ed","x":1519603200000,"y":0.0149968727504697,"color":"#6495ed"},{"sector":"Financials","date":"2018-02-27","adjClose":28.7374838717,"daily_return":-0.00951740698559522,"coloract":"#ff9999","x":1519689600000,"y":-0.00951740698559522,"color":"#ff9999"},{"sector":"Financials","date":"2018-02-28","adjClose":28.3350805798,"daily_return":-0.0141016954175863,"coloract":"#ff9999","x":1519776000000,"y":-0.0141016954175863,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-01","adjClose":27.8443448579,"daily_return":-0.0174707448557667,"coloract":"#ff9999","x":1519862400000,"y":-0.0174707448557667,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-02","adjClose":27.913047859,"daily_return":0.00246435611573714,"coloract":"#6495ed","x":1519948800000,"y":0.00246435611573714,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-05","adjClose":28.3056364365,"daily_return":0.0139667074823295,"coloract":"#6495ed","x":1520208000000,"y":0.0139667074823295,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-06","adjClose":28.4234130097,"daily_return":0.00415225509919104,"coloract":"#6495ed","x":1520294400000,"y":0.00415225509919104,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-07","adjClose":28.3743394375,"daily_return":-0.00172801148978063,"coloract":"#ff9999","x":1520380800000,"y":-0.00172801148978063,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-08","adjClose":28.4626718675,"daily_return":0.00310827396055879,"coloract":"#6495ed","x":1520467200000,"y":0.00310827396055879,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-09","adjClose":29.149701878,"daily_return":0.0238512158189268,"coloract":"#6495ed","x":1520553600000,"y":0.0238512158189268,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-12","adjClose":29.0515547337,"daily_return":-0.00337268447621675,"coloract":"#ff9999","x":1520812800000,"y":-0.00337268447621675,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-13","adjClose":28.7276691573,"daily_return":-0.0112112606254193,"coloract":"#ff9999","x":1520899200000,"y":-0.0112112606254193,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-14","adjClose":28.4037835808,"daily_return":-0.0113383795031585,"coloract":"#ff9999","x":1520985600000,"y":-0.0113383795031585,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-15","adjClose":28.4135982953,"daily_return":0.000345482817882381,"coloract":"#6495ed","x":1521072000000,"y":0.000345482817882381,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-16","adjClose":28.4377051969,"daily_return":0.000848068612821162,"coloract":"#6495ed","x":1521158400000,"y":0.000848068612821162,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-19","adjClose":28.2308497036,"daily_return":-0.00730057127509065,"coloract":"#ff9999","x":1521417600000,"y":-0.00730057127509065,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-20","adjClose":28.2998015347,"daily_return":0.00243945059126371,"coloract":"#6495ed","x":1521504000000,"y":0.00243945059126371,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-21","adjClose":28.2899512731,"daily_return":-0.000348128811692661,"coloract":"#ff9999","x":1521590400000,"y":-0.000348128811692661,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-22","adjClose":27.245823545,"daily_return":-0.037606417945387,"coloract":"#ff9999","x":1521676800000,"y":-0.037606417945387,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-23","adjClose":26.4184015719,"daily_return":-0.0308394483805428,"coloract":"#ff9999","x":1521763200000,"y":-0.0308394483805428,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-26","adjClose":27.2753743298,"daily_return":0.0319234593284157,"coloract":"#6495ed","x":1522022400000,"y":0.0319234593284157,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-27","adjClose":26.7434602042,"daily_return":-0.0196942908026183,"coloract":"#ff9999","x":1522108800000,"y":-0.0196942908026183,"color":"#ff9999"},{"sector":"Financials","date":"2018-03-28","adjClose":26.7927115121,"daily_return":0.00183992692101054,"coloract":"#6495ed","x":1522195200000,"y":0.00183992692101054,"color":"#6495ed"},{"sector":"Financials","date":"2018-03-29","adjClose":27.1571711908,"daily_return":0.013511251735328,"coloract":"#6495ed","x":1522281600000,"y":0.013511251735328,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-02","adjClose":26.5563052341,"daily_return":-0.0223739389913682,"coloract":"#ff9999","x":1522627200000,"y":-0.0223739389913682,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-03","adjClose":26.9207649127,"daily_return":0.0136307138937197,"coloract":"#6495ed","x":1522713600000,"y":0.0136307138937197,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-04","adjClose":27.2064224987,"daily_return":0.0105551480421067,"coloract":"#6495ed","x":1522800000000,"y":0.0105551480421067,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-05","adjClose":27.4231282536,"daily_return":0.00793368748589662,"coloract":"#6495ed","x":1522886400000,"y":0.00793368748589662,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-06","adjClose":26.7631607274,"daily_return":-0.0243604120272858,"coloract":"#ff9999","x":1522972800000,"y":-0.0243604120272858,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-09","adjClose":26.9109146511,"daily_return":0.00550561126134985,"coloract":"#6495ed","x":1523232000000,"y":0.00550561126134985,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-10","adjClose":27.3147753761,"daily_return":0.0148958249251629,"coloract":"#6495ed","x":1523318400000,"y":0.0148958249251629,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-11","adjClose":26.9897167438,"daily_return":-0.0119718462330822,"coloract":"#ff9999","x":1523404800000,"y":-0.0119718462330822,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-12","adjClose":27.4625292999,"daily_return":0.0173665724984531,"coloract":"#6495ed","x":1523491200000,"y":0.0173665724984531,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-13","adjClose":27.0488183133,"daily_return":-0.0151791855530949,"coloract":"#ff9999","x":1523577600000,"y":-0.0151791855530949,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-16","adjClose":27.1670214524,"daily_return":0.00436047202813228,"coloract":"#6495ed","x":1523836800000,"y":0.00436047202813228,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-17","adjClose":27.1670214524,"daily_return":0,"coloract":"#ff9999","x":1523923200000,"y":0,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-18","adjClose":27.0389680518,"daily_return":-0.00472470440926198,"coloract":"#ff9999","x":1524009600000,"y":-0.00472470440926198,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-19","adjClose":27.4526790383,"daily_return":0.0151846735352237,"coloract":"#6495ed","x":1524096000000,"y":0.0151846735352237,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-20","adjClose":27.4625292999,"daily_return":0.000358744399000965,"coloract":"#6495ed","x":1524182400000,"y":0.000358744399000965,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-23","adjClose":27.4329785152,"daily_return":-0.00107661951698956,"coloract":"#ff9999","x":1524441600000,"y":-0.00107661951698956,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-24","adjClose":27.2556738066,"daily_return":-0.00648417257679546,"coloract":"#ff9999","x":1524528000000,"y":-0.00648417257679546,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-25","adjClose":27.2359732835,"daily_return":-0.000723065827896274,"coloract":"#ff9999","x":1524614400000,"y":-0.000723065827896274,"color":"#ff9999"},{"sector":"Financials","date":"2018-04-26","adjClose":27.245823545,"daily_return":0.000361598265135488,"coloract":"#6495ed","x":1524700800000,"y":0.000361598265135488,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-27","adjClose":27.2852245914,"daily_return":0.0014450869588325,"coloract":"#6495ed","x":1524787200000,"y":0.0014450869588325,"color":"#6495ed"},{"sector":"Financials","date":"2018-04-30","adjClose":27.0389680518,"daily_return":-0.00906624523651134,"coloract":"#ff9999","x":1525046400000,"y":-0.00906624523651134,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-01","adjClose":27.0488183133,"daily_return":0.000364232381129703,"coloract":"#6495ed","x":1525132800000,"y":0.000364232381129703,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-02","adjClose":26.7434602042,"daily_return":-0.0113533539581963,"coloract":"#ff9999","x":1525219200000,"y":-0.0113533539581963,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-03","adjClose":26.5169041877,"daily_return":-0.00850754160481904,"coloract":"#ff9999","x":1525305600000,"y":-0.00850754160481904,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-04","adjClose":26.8616633432,"daily_return":0.0129176920814751,"coloract":"#6495ed","x":1525392000000,"y":0.0129176920814751,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-07","adjClose":27.0389680518,"daily_return":0.0065789711004105,"coloract":"#6495ed","x":1525651200000,"y":0.0065789711004105,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-08","adjClose":27.2261230219,"daily_return":0.00689783094313068,"coloract":"#6495ed","x":1525737600000,"y":0.00689783094313068,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-09","adjClose":27.6299837469,"daily_return":0.0147246330692634,"coloract":"#6495ed","x":1525824000000,"y":0.0147246330692634,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-10","adjClose":27.8565397633,"daily_return":0.00816620905740528,"coloract":"#6495ed","x":1525910400000,"y":0.00816620905740528,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-11","adjClose":27.8368392402,"daily_return":-0.00070746376945241,"coloract":"#ff9999","x":1525996800000,"y":-0.00070746376945241,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-14","adjClose":27.817138717,"daily_return":-0.00070796463239331,"coloract":"#ff9999","x":1526256000000,"y":-0.00070796463239331,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-15","adjClose":27.7678874091,"daily_return":-0.00177210749805878,"coloract":"#ff9999","x":1526342400000,"y":-0.00177210749805878,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-16","adjClose":27.817138717,"daily_return":0.00177210749805878,"coloract":"#6495ed","x":1526428800000,"y":0.00177210749805878,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-17","adjClose":27.7580371475,"daily_return":-0.00212690615407363,"coloract":"#ff9999","x":1526515200000,"y":-0.00212690615407363,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-18","adjClose":27.531481131,"daily_return":-0.00819530687077297,"coloract":"#ff9999","x":1526601600000,"y":-0.00819530687077297,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-21","adjClose":27.7284863627,"daily_return":0.00713015498435254,"coloract":"#6495ed","x":1526860800000,"y":0.00713015498435254,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-22","adjClose":27.9156413328,"daily_return":0.00672687967607422,"coloract":"#6495ed","x":1526947200000,"y":0.00672687967607422,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-23","adjClose":27.7383366243,"daily_return":-0.00637170297140299,"coloract":"#ff9999","x":1527033600000,"y":-0.00637170297140299,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-24","adjClose":27.5216308694,"daily_return":-0.00784317746184904,"coloract":"#ff9999","x":1527120000000,"y":-0.00784317746184904,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-25","adjClose":27.4329785152,"daily_return":-0.00322638745304671,"coloract":"#ff9999","x":1527206400000,"y":-0.00322638745304671,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-29","adjClose":26.5169041877,"daily_return":-0.0339634615991207,"coloract":"#ff9999","x":1527552000000,"y":-0.0339634615991207,"color":"#ff9999"},{"sector":"Financials","date":"2018-05-30","adjClose":26.9995670054,"daily_return":0.0180384055388707,"coloract":"#6495ed","x":1527638400000,"y":0.0180384055388707,"color":"#6495ed"},{"sector":"Financials","date":"2018-05-31","adjClose":26.7730109889,"daily_return":-0.00842650159309111,"coloract":"#ff9999","x":1527724800000,"y":-0.00842650159309111,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-01","adjClose":27.0685188365,"daily_return":0.0109770586326436,"coloract":"#6495ed","x":1527811200000,"y":0.0109770586326436,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-04","adjClose":27.1571711908,"daily_return":0.0032697576827343,"coloract":"#6495ed","x":1528070400000,"y":0.0032697576827343,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-05","adjClose":27.0389680518,"daily_return":-0.00436205707927195,"coloract":"#ff9999","x":1528156800000,"y":-0.00436205707927195,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-06","adjClose":27.531481131,"daily_return":0.0180510316431071,"coloract":"#6495ed","x":1528243200000,"y":0.0180510316431071,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-07","adjClose":27.6201334853,"daily_return":0.00321486256644077,"coloract":"#6495ed","x":1528329600000,"y":0.00321486256644077,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-08","adjClose":27.6595345316,"daily_return":0.00142551698972504,"coloract":"#6495ed","x":1528416000000,"y":0.00142551698972504,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-11","adjClose":27.6004329621,"daily_return":-0.00213903824831574,"coloract":"#ff9999","x":1528675200000,"y":-0.00213903824831574,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-12","adjClose":27.531481131,"daily_return":-0.00250134130785007,"coloract":"#ff9999","x":1528761600000,"y":-0.00250134130785007,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-13","adjClose":27.4329785152,"daily_return":-0.00358423322587198,"coloract":"#ff9999","x":1528848000000,"y":-0.00358423322587198,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-14","adjClose":27.1768717139,"daily_return":-0.00937957814707469,"coloract":"#ff9999","x":1528934400000,"y":-0.00937957814707469,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-15","adjClose":27.1758866878,"daily_return":-3.62456710232273e-05,"coloract":"#ff9999","x":1529020800000,"y":-3.62456710232273e-05,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-18","adjClose":27.1264220233,"daily_return":-0.00182182597224223,"coloract":"#ff9999","x":1529280000000,"y":-0.00182182597224223,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-19","adjClose":27.0571714929,"daily_return":-0.00255614526878922,"coloract":"#ff9999","x":1529366400000,"y":-0.00255614526878922,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-20","adjClose":26.9879209626,"daily_return":-0.00256269589164759,"coloract":"#ff9999","x":1529452800000,"y":-0.00256269589164759,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-21","adjClose":26.9087774994,"daily_return":-0.00293685967206736,"coloract":"#ff9999","x":1529539200000,"y":-0.00293685967206736,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-22","adjClose":26.7801693716,"daily_return":-0.00479086967744147,"coloract":"#ff9999","x":1529625600000,"y":-0.00479086967744147,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-25","adjClose":26.4932743174,"daily_return":-0.0107707633623884,"coloract":"#ff9999","x":1529884800000,"y":-0.0107707633623884,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-26","adjClose":26.4042379213,"daily_return":-0.00336637684516816,"coloract":"#ff9999","x":1529971200000,"y":-0.00336637684516816,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-27","adjClose":26.0777711354,"daily_return":-0.0124412537844854,"coloract":"#ff9999","x":1530057600000,"y":-0.0124412537844854,"color":"#ff9999"},{"sector":"Financials","date":"2018-06-28","adjClose":26.3053085922,"daily_return":0.00868749562077475,"coloract":"#6495ed","x":1530144000000,"y":0.00868749562077475,"color":"#6495ed"},{"sector":"Financials","date":"2018-06-29","adjClose":26.3053085922,"daily_return":0,"coloract":"#ff9999","x":1530230400000,"y":0,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-02","adjClose":26.43391672,"daily_return":0.00487714341524637,"coloract":"#6495ed","x":1530489600000,"y":0.00487714341524637,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-03","adjClose":26.1964863303,"daily_return":-0.00902261759961442,"coloract":"#ff9999","x":1530576000000,"y":-0.00902261759961442,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-05","adjClose":26.2558439277,"daily_return":0.00226329783429602,"coloract":"#6495ed","x":1530748800000,"y":0.00226329783429602,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-06","adjClose":26.3844520555,"daily_return":0.00488630929159051,"coloract":"#6495ed","x":1530835200000,"y":0.00488630929159051,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-09","adjClose":26.9879209626,"daily_return":0.0226144947792575,"coloract":"#6495ed","x":1531094400000,"y":0.0226144947792575,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-10","adjClose":26.8889916336,"daily_return":-0.00367242425070957,"coloract":"#ff9999","x":1531180800000,"y":-0.00367242425070957,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-11","adjClose":26.7603835058,"daily_return":-0.00479440343220627,"coloract":"#ff9999","x":1531267200000,"y":-0.00479440343220627,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-12","adjClose":26.8098481703,"daily_return":0.0018467225923855,"coloract":"#6495ed","x":1531353600000,"y":0.0018467225923855,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-13","adjClose":26.6911329755,"daily_return":-0.00443787710417087,"coloract":"#ff9999","x":1531440000000,"y":-0.00443787710417087,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-16","adjClose":27.1659937549,"daily_return":0.0176345495601771,"coloract":"#6495ed","x":1531699200000,"y":0.0176345495601771,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-17","adjClose":27.1956725536,"daily_return":0.00109190183686758,"coloract":"#6495ed","x":1531785600000,"y":0.00109190183686758,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-18","adjClose":27.6309616014,"daily_return":0.0158790777805073,"coloract":"#6495ed","x":1531872000000,"y":0.0158790777805073,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-19","adjClose":27.2154584194,"daily_return":-0.0151518050214863,"coloract":"#ff9999","x":1531958400000,"y":-0.0151518050214863,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-20","adjClose":27.2649230839,"daily_return":0.00181587120820836,"coloract":"#6495ed","x":1532044800000,"y":0.00181587120820836,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-23","adjClose":27.6408545343,"daily_return":0.013693907684857,"coloract":"#6495ed","x":1532304000000,"y":0.013693907684857,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-24","adjClose":27.7199979975,"daily_return":0.00285918707883637,"coloract":"#6495ed","x":1532390400000,"y":0.00285918707883637,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-25","adjClose":27.7793555949,"daily_return":0.00213903824784767,"coloract":"#6495ed","x":1532476800000,"y":0.00213903824784767,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-26","adjClose":27.769462662,"daily_return":-0.000356188783669165,"coloract":"#ff9999","x":1532563200000,"y":-0.000356188783669165,"color":"#ff9999"},{"sector":"Financials","date":"2018-07-27","adjClose":27.8288202595,"daily_return":0.00213523213066891,"coloract":"#6495ed","x":1532649600000,"y":0.00213523213066891,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-30","adjClose":27.8486061253,"daily_return":0.000710732083633037,"coloract":"#6495ed","x":1532908800000,"y":0.000710732083633037,"color":"#6495ed"},{"sector":"Financials","date":"2018-07-31","adjClose":27.6507474672,"daily_return":-0.00713015498517588,"coloract":"#ff9999","x":1532995200000,"y":-0.00713015498517588,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-01","adjClose":27.6507474672,"daily_return":0,"coloract":"#ff9999","x":1533081600000,"y":0,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-02","adjClose":27.6606404001,"daily_return":0.000357717764349896,"coloract":"#6495ed","x":1533168000000,"y":0.000357717764349896,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-03","adjClose":27.8189273266,"daily_return":0.00570614957804239,"coloract":"#6495ed","x":1533254400000,"y":0.00570614957804239,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-06","adjClose":27.9673213201,"daily_return":0.00532010476078426,"coloract":"#6495ed","x":1533513600000,"y":0.00532010476078426,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-07","adjClose":28.0959294479,"daily_return":0.00458797346328943,"coloract":"#6495ed","x":1533600000000,"y":0.00458797346328943,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-08","adjClose":28.1651799782,"daily_return":0.0024617561217446,"coloract":"#6495ed","x":1533686400000,"y":0.0024617561217446,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-09","adjClose":27.9970001188,"daily_return":-0.00598909664178837,"coloract":"#ff9999","x":1533772800000,"y":-0.00598909664178837,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-10","adjClose":27.670533333,"daily_return":-0.0117292974339644,"coloract":"#ff9999","x":1533859200000,"y":-0.0117292974339644,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-13","adjClose":27.4034241446,"daily_return":-0.00970009402010374,"coloract":"#ff9999","x":1534118400000,"y":-0.00970009402010374,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-14","adjClose":27.6606404001,"daily_return":0.00934250417199589,"coloract":"#6495ed","x":1534204800000,"y":0.00934250417199589,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-15","adjClose":27.4429958762,"daily_return":-0.00789950247921345,"coloract":"#ff9999","x":1534291200000,"y":-0.00789950247921345,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-16","adjClose":27.8090343937,"daily_return":0.013249970033383,"coloract":"#6495ed","x":1534377600000,"y":0.013249970033383,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-17","adjClose":27.8683919911,"daily_return":0.00213219696893718,"coloract":"#6495ed","x":1534464000000,"y":0.00213219696893718,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-20","adjClose":27.9574283872,"daily_return":0.0031897953667519,"coloract":"#6495ed","x":1534723200000,"y":0.0031897953667519,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-21","adjClose":28.0662506492,"daily_return":0.00388487156630468,"coloract":"#6495ed","x":1534809600000,"y":0.00388487156630468,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-22","adjClose":27.9673213201,"daily_return":-0.00353107711733669,"coloract":"#ff9999","x":1534896000000,"y":-0.00353107711733669,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-23","adjClose":27.8387131924,"daily_return":-0.00460912001730662,"coloract":"#ff9999","x":1534982400000,"y":-0.00460912001730662,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-24","adjClose":27.9376425214,"daily_return":0.00354736093729713,"coloract":"#6495ed","x":1535068800000,"y":0.00354736093729713,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-27","adjClose":28.3135739718,"daily_return":0.0133663615047195,"coloract":"#6495ed","x":1535328000000,"y":0.0133663615047195,"color":"#6495ed"},{"sector":"Financials","date":"2018-08-28","adjClose":28.2838951731,"daily_return":-0.00104876779363972,"coloract":"#ff9999","x":1535414400000,"y":-0.00104876779363972,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-29","adjClose":28.2740022402,"daily_return":-0.000349833832350654,"coloract":"#ff9999","x":1535500800000,"y":-0.000349833832350654,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-30","adjClose":28.0563577163,"daily_return":-0.00772747083806635,"coloract":"#ff9999","x":1535587200000,"y":-0.00772747083806635,"color":"#ff9999"},{"sector":"Financials","date":"2018-08-31","adjClose":28.0266789175,"daily_return":-0.00105838782462042,"coloract":"#ff9999","x":1535673600000,"y":-0.00105838782462042,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-04","adjClose":28.1651799782,"daily_return":0.00492958744900118,"coloract":"#6495ed","x":1536019200000,"y":0.00492958744900118,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-05","adjClose":28.184965844,"daily_return":0.000702247219574126,"coloract":"#6495ed","x":1536105600000,"y":0.000702247219574126,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-06","adjClose":28.0563577163,"daily_return":-0.00457344684395489,"coloract":"#ff9999","x":1536192000000,"y":-0.00457344684395489,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-07","adjClose":28.0266789175,"daily_return":-0.00105838782462042,"coloract":"#ff9999","x":1536278400000,"y":-0.00105838782462042,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-10","adjClose":27.9970001188,"daily_return":-0.00105950919278719,"coloract":"#ff9999","x":1536537600000,"y":-0.00105950919278719,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-11","adjClose":28.0266789175,"daily_return":0.00105950919278719,"coloract":"#6495ed","x":1536624000000,"y":0.00105950919278719,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-12","adjClose":27.769462662,"daily_return":-0.00921992346833544,"coloract":"#ff9999","x":1536710400000,"y":-0.00921992346833544,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-13","adjClose":27.7298909304,"daily_return":-0.00142602519649282,"coloract":"#ff9999","x":1536796800000,"y":-0.00142602519649282,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-14","adjClose":27.9277495885,"daily_return":0.00710987708929212,"coloract":"#6495ed","x":1536883200000,"y":0.00710987708929212,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-17","adjClose":27.8090343937,"daily_return":-0.00425985734515377,"coloract":"#ff9999","x":1537142400000,"y":-0.00425985734515377,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-18","adjClose":27.9475354543,"daily_return":0.00496807267190658,"coloract":"#6495ed","x":1537228800000,"y":0.00496807267190658,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-19","adjClose":28.4223962337,"daily_return":0.0168484153987309,"coloract":"#6495ed","x":1537315200000,"y":0.0168484153987309,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-20","adjClose":28.6697195563,"daily_return":0.0086640639011839,"coloract":"#6495ed","x":1537401600000,"y":0.0086640639011839,"color":"#6495ed"},{"sector":"Financials","date":"2018-09-21","adjClose":28.5584240611,"daily_return":-0.00388954204964387,"coloract":"#ff9999","x":1537488000000,"y":-0.00388954204964387,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-24","adjClose":28.2404457835,"daily_return":-0.0111967579802879,"coloract":"#ff9999","x":1537747200000,"y":-0.0111967579802879,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-25","adjClose":28.1311407506,"daily_return":-0.00387802354368683,"coloract":"#ff9999","x":1537833600000,"y":-0.00387802354368683,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-26","adjClose":27.7932888306,"daily_return":-0.0120825919099348,"coloract":"#ff9999","x":1537920000000,"y":-0.0120825919099348,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-27","adjClose":27.6939206188,"daily_return":-0.00358166572128438,"coloract":"#ff9999","x":1538006400000,"y":-0.00358166572128438,"color":"#ff9999"},{"sector":"Financials","date":"2018-09-28","adjClose":27.4057528047,"daily_return":-0.0104599691280662,"coloract":"#ff9999","x":1538092800000,"y":-0.0104599691280662,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-01","adjClose":27.5150578376,"daily_return":0.00398046481621916,"coloract":"#6495ed","x":1538352000000,"y":0.00398046481621916,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-02","adjClose":27.5150578376,"daily_return":0,"coloract":"#ff9999","x":1538438400000,"y":0,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-03","adjClose":27.7734151882,"daily_return":0.00934586241867708,"coloract":"#6495ed","x":1538524800000,"y":0.00934586241867708,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-04","adjClose":27.9622147906,"daily_return":0.00677485208682649,"coloract":"#6495ed","x":1538611200000,"y":0.00677485208682649,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-05","adjClose":27.8230992941,"daily_return":-0.00498754151209413,"coloract":"#ff9999","x":1538697600000,"y":-0.00498754151209413,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-08","adjClose":28.0118988964,"daily_return":0.00676279494893173,"coloract":"#6495ed","x":1538956800000,"y":0.00676279494893173,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-09","adjClose":27.9025938635,"daily_return":-0.00390972596694494,"coloract":"#ff9999","x":1539043200000,"y":-0.00390972596694494,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-10","adjClose":27.0380904211,"daily_return":-0.0314730263642296,"coloract":"#ff9999","x":1539129600000,"y":-0.0314730263642296,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-11","adjClose":26.2332079059,"daily_return":-0.0302205426393836,"coloract":"#ff9999","x":1539216000000,"y":-0.0302205426393836,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-12","adjClose":26.2630183694,"daily_return":0.00113571846280669,"coloract":"#6495ed","x":1539302400000,"y":0.00113571846280669,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-15","adjClose":26.1437765153,"daily_return":-0.00455063356332364,"coloract":"#ff9999","x":1539561600000,"y":-0.00455063356332364,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-16","adjClose":26.580996647,"daily_return":0.0165853782873762,"coloract":"#6495ed","x":1539648000000,"y":0.0165853782873762,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-17","adjClose":26.8492908188,"daily_return":0.0100428591913739,"coloract":"#6495ed","x":1539734400000,"y":0.0100428591913739,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-18","adjClose":26.4021338659,"daily_return":-0.0167945727587857,"coloract":"#ff9999","x":1539820800000,"y":-0.0167945727587857,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-19","adjClose":26.5015020776,"daily_return":0.00375657841975663,"coloract":"#6495ed","x":1539907200000,"y":0.00375657841975663,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-22","adjClose":25.9351032706,"daily_return":-0.0216040238630462,"coloract":"#ff9999","x":1540166400000,"y":-0.0216040238630462,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-23","adjClose":25.7264300259,"daily_return":-0.00807852056496872,"coloract":"#ff9999","x":1540252800000,"y":-0.00807852056496872,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-24","adjClose":25.0805366494,"daily_return":-0.0254267560915893,"coloract":"#ff9999","x":1540339200000,"y":-0.0254267560915893,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-25","adjClose":25.4680726753,"daily_return":0.0153335027036676,"coloract":"#6495ed","x":1540425600000,"y":0.0153335027036676,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-26","adjClose":25.1004102917,"daily_return":-0.0145414234564436,"coloract":"#ff9999","x":1540512000000,"y":-0.0145414234564436,"color":"#ff9999"},{"sector":"Financials","date":"2018-10-29","adjClose":25.3190203576,"daily_return":0.00867171378233689,"coloract":"#6495ed","x":1540771200000,"y":0.00867171378233689,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-30","adjClose":25.7562404894,"daily_return":0.0171210407815132,"coloract":"#6495ed","x":1540857600000,"y":0.0171210407815132,"color":"#6495ed"},{"sector":"Financials","date":"2018-10-31","adjClose":26.1139660517,"daily_return":0.0137933221303146,"coloract":"#6495ed","x":1540944000000,"y":0.0137933221303146,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-01","adjClose":26.2332079059,"daily_return":0.00455581653901138,"coloract":"#6495ed","x":1541030400000,"y":0.00455581653901138,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-02","adjClose":26.2133342635,"daily_return":-0.000757862864896985,"coloract":"#ff9999","x":1541116800000,"y":-0.000757862864896985,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-05","adjClose":26.6306807529,"daily_return":0.0157957402272184,"coloract":"#6495ed","x":1541376000000,"y":0.0157957402272184,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-06","adjClose":26.7697962494,"daily_return":0.00521028346651375,"coloract":"#6495ed","x":1541462400000,"y":0.00521028346651375,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-07","adjClose":27.1175849906,"daily_return":0.0129081637389024,"coloract":"#6495ed","x":1541548800000,"y":0.0129081637389024,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-08","adjClose":27.19707956,"daily_return":0.00292718833190664,"coloract":"#6495ed","x":1541635200000,"y":0.00292718833190664,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-09","adjClose":26.9486590306,"daily_return":-0.00917605997995619,"coloract":"#ff9999","x":1541721600000,"y":-0.00917605997995619,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-12","adjClose":26.412070687,"daily_return":-0.0201124097897591,"coloract":"#ff9999","x":1541980800000,"y":-0.0201124097897591,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-13","adjClose":26.5611230047,"daily_return":0.00562747686773424,"coloract":"#6495ed","x":1542067200000,"y":0.00562747686773424,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-14","adjClose":26.2033974423,"daily_return":-0.0135595297874316,"coloract":"#ff9999","x":1542153600000,"y":-0.0135595297874316,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-15","adjClose":26.5909334682,"daily_return":0.0146812348955256,"coloract":"#6495ed","x":1542240000000,"y":0.0146812348955256,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-16","adjClose":26.6207439317,"daily_return":0.00112044829538638,"coloract":"#6495ed","x":1542326400000,"y":0.00112044829538638,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-19","adjClose":26.6108071106,"daily_return":-0.000373343290618333,"coloract":"#ff9999","x":1542585600000,"y":-0.000373343290618333,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-20","adjClose":26.0245346611,"daily_return":-0.0222776817467865,"coloract":"#ff9999","x":1542672000000,"y":-0.0222776817467865,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-21","adjClose":26.0444083035,"daily_return":0.000763358817503779,"coloract":"#6495ed","x":1542758400000,"y":0.000763358817503779,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-23","adjClose":25.8357350588,"daily_return":-0.00804447931361452,"coloract":"#ff9999","x":1542931200000,"y":-0.00804447931361452,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-26","adjClose":26.3623865811,"daily_return":0.0201796301261763,"coloract":"#6495ed","x":1543190400000,"y":0.0201796301261763,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-27","adjClose":26.3822602235,"daily_return":0.000753579540085703,"coloract":"#6495ed","x":1543276800000,"y":0.000753579540085703,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-28","adjClose":26.8890381035,"daily_return":0.0190268750547147,"coloract":"#6495ed","x":1543363200000,"y":0.0190268750547147,"color":"#6495ed"},{"sector":"Financials","date":"2018-11-29","adjClose":26.6604912164,"daily_return":-0.00853595830666265,"coloract":"#ff9999","x":1543449600000,"y":-0.00853595830666265,"color":"#ff9999"},{"sector":"Financials","date":"2018-11-30","adjClose":26.7996067129,"daily_return":0.00520447271521673,"coloract":"#6495ed","x":1543536000000,"y":0.00520447271521673,"color":"#6495ed"},{"sector":"Financials","date":"2018-12-03","adjClose":26.9685326729,"daily_return":0.00628351725509413,"coloract":"#6495ed","x":1543795200000,"y":0.00628351725509413,"color":"#6495ed"},{"sector":"Financials","date":"2018-12-04","adjClose":25.7959877741,"daily_return":-0.0444517625699912,"coloract":"#ff9999","x":1543881600000,"y":-0.0444517625699912,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-06","adjClose":25.4382622117,"daily_return":-0.0139645403522319,"coloract":"#ff9999","x":1544054400000,"y":-0.0139645403522319,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-07","adjClose":24.9513579741,"daily_return":-0.0193261783141869,"coloract":"#ff9999","x":1544140800000,"y":-0.0193261783141869,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-10","adjClose":24.6035692329,"daily_return":-0.0140367253540643,"coloract":"#ff9999","x":1544400000000,"y":-0.0140367253540643,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-11","adjClose":24.3650855247,"daily_return":-0.0097403367469524,"coloract":"#ff9999","x":1544486400000,"y":-0.0097403367469524,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-12","adjClose":24.5042010212,"daily_return":0.0056933866693889,"coloract":"#6495ed","x":1544572800000,"y":0.0056933866693889,"color":"#6495ed"},{"sector":"Financials","date":"2018-12-13","adjClose":24.32533824,"daily_return":-0.00732604009303284,"coloract":"#ff9999","x":1544659200000,"y":-0.00732604009303284,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-14","adjClose":24.0868545317,"daily_return":-0.00985229644569818,"coloract":"#ff9999","x":1544745600000,"y":-0.00985229644569818,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-17","adjClose":23.8483708235,"daily_return":-0.00995033085171482,"coloract":"#ff9999","x":1545004800000,"y":-0.00995033085171482,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-18","adjClose":23.7589394329,"daily_return":-0.00375704887821238,"coloract":"#ff9999","x":1545091200000,"y":-0.00375704887821238,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-19","adjClose":23.4608347976,"daily_return":-0.0126264303730843,"coloract":"#ff9999","x":1545177600000,"y":-0.0126264303730843,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-20","adjClose":23.2521615529,"daily_return":-0.00893432873353106,"coloract":"#ff9999","x":1545264000000,"y":-0.00893432873353106,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-21","adjClose":22.79,"daily_return":-0.0200762544715323,"coloract":"#ff9999","x":1545350400000,"y":-0.0200762544715323,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-24","adjClose":22.31,"daily_return":-0.0212868348131519,"coloract":"#ff9999","x":1545609600000,"y":-0.0212868348131519,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-26","adjClose":23.32,"daily_return":0.0442763530378505,"coloract":"#6495ed","x":1545782400000,"y":0.0442763530378505,"color":"#6495ed"},{"sector":"Financials","date":"2018-12-27","adjClose":23.6,"daily_return":0.011935350549273,"coloract":"#6495ed","x":1545868800000,"y":0.011935350549273,"color":"#6495ed"},{"sector":"Financials","date":"2018-12-28","adjClose":23.59,"daily_return":-0.000423818611980931,"coloract":"#ff9999","x":1545955200000,"y":-0.000423818611980931,"color":"#ff9999"},{"sector":"Financials","date":"2018-12-31","adjClose":23.82,"daily_return":0.00970267050757023,"coloract":"#6495ed","x":1546214400000,"y":0.00970267050757023,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Health Care 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Health Care","date":"2018-01-02","adjClose":82.3108552877,"daily_return":0.0111853953483703,"coloract":"#6495ed","x":1514851200000,"y":0.0111853953483703,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-03","adjClose":83.0984247678,"daily_return":0.00952274783380602,"coloract":"#6495ed","x":1514937600000,"y":0.00952274783380602,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-04","adjClose":83.2165601898,"daily_return":0.00142062294504886,"coloract":"#6495ed","x":1515024000000,"y":0.00142062294504886,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-05","adjClose":83.9253727219,"daily_return":0.00848161522303759,"coloract":"#6495ed","x":1515110400000,"y":0.00848161522303759,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-08","adjClose":83.6201895484,"daily_return":-0.00364299127809264,"coloract":"#ff9999","x":1515369600000,"y":-0.00364299127809264,"color":"#ff9999"},{"sector":"Health Care","date":"2018-01-09","adjClose":84.6046513985,"daily_return":0.0117042534615983,"coloract":"#6495ed","x":1515456000000,"y":0.0117042534615983,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-10","adjClose":84.456982121,"daily_return":-0.00174692876177929,"coloract":"#ff9999","x":1515542400000,"y":-0.00174692876177929,"color":"#ff9999"},{"sector":"Health Care","date":"2018-01-11","adjClose":84.8212330055,"daily_return":0.00430358326277691,"coloract":"#6495ed","x":1515628800000,"y":0.00430358326277691,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-12","adjClose":85.4709778266,"daily_return":0.00763097702363247,"coloract":"#6495ed","x":1515715200000,"y":0.00763097702363247,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-16","adjClose":85.8942964221,"daily_return":0.00494055121053538,"coloract":"#6495ed","x":1516060800000,"y":0.00494055121053538,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-17","adjClose":86.7212443762,"daily_return":0.00958145803925525,"coloract":"#6495ed","x":1516147200000,"y":0.00958145803925525,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-18","adjClose":86.7409336132,"daily_return":0.000227014756908339,"coloract":"#6495ed","x":1516233600000,"y":0.000227014756908339,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-19","adjClose":87.0658060238,"daily_return":0.00373832211133873,"coloract":"#6495ed","x":1516320000000,"y":0.00373832211133873,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-22","adjClose":87.6367938968,"daily_return":0.0065367075977294,"coloract":"#6495ed","x":1516579200000,"y":0.0065367075977294,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-23","adjClose":87.2134753013,"daily_return":-0.00484207916322443,"coloract":"#ff9999","x":1516665600000,"y":-0.00484207916322443,"color":"#ff9999"},{"sector":"Health Care","date":"2018-01-24","adjClose":87.4694353823,"daily_return":0.00293057017639065,"coloract":"#6495ed","x":1516752000000,"y":0.00293057017639065,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-25","adjClose":88.2176263884,"daily_return":0.00851736629565103,"coloract":"#6495ed","x":1516838400000,"y":0.00851736629565103,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-26","adjClose":90.1176377591,"daily_return":0.0213091143292212,"coloract":"#6495ed","x":1516924800000,"y":0.0213091143292212,"color":"#6495ed"},{"sector":"Health Care","date":"2018-01-29","adjClose":89.8715222966,"daily_return":-0.00273478264819982,"coloract":"#ff9999","x":1517184000000,"y":-0.00273478264819982,"color":"#ff9999"},{"sector":"Health Care","date":"2018-01-30","adjClose":87.9813555444,"daily_return":-0.0212561971835479,"coloract":"#ff9999","x":1517270400000,"y":-0.0212561971835479,"color":"#ff9999"},{"sector":"Health Care","date":"2018-01-31","adjClose":86.7310889947,"daily_return":-0.0143125224518501,"coloract":"#ff9999","x":1517356800000,"y":-0.0143125224518501,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-01","adjClose":86.7606228502,"daily_return":0.000340464169396704,"coloract":"#6495ed","x":1517443200000,"y":0.000340464169396704,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-02","adjClose":85.5398901561,"daily_return":-0.0141700462600278,"coloract":"#ff9999","x":1517529600000,"y":-0.0141700462600278,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-05","adjClose":81.7497120332,"daily_return":-0.0453205314332257,"coloract":"#ff9999","x":1517788800000,"y":-0.0453205314332257,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-06","adjClose":82.6554169353,"daily_return":0.0110180755348299,"coloract":"#6495ed","x":1517875200000,"y":0.0110180755348299,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-07","adjClose":82.5569707503,"daily_return":-0.00119175320968079,"coloract":"#ff9999","x":1517961600000,"y":-0.00119175320968079,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-08","adjClose":79.6921867664,"daily_return":-0.035317061619943,"coloract":"#ff9999","x":1518048000000,"y":-0.035317061619943,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-09","adjClose":80.8243178941,"daily_return":0.0141063363356491,"coloract":"#6495ed","x":1518134400000,"y":0.0141063363356491,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-12","adjClose":81.5823535186,"daily_return":0.00933509840152258,"coloract":"#6495ed","x":1518393600000,"y":0.00933509840152258,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-13","adjClose":81.6414212297,"daily_return":0.000723763603304839,"coloract":"#6495ed","x":1518480000000,"y":0.000723763603304839,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-14","adjClose":82.5668153688,"daily_return":0.011271102533156,"coloract":"#6495ed","x":1518566400000,"y":0.011271102533156,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-15","adjClose":83.4823648894,"daily_return":0.0110275618014999,"coloract":"#6495ed","x":1518652800000,"y":0.0110275618014999,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-16","adjClose":84.0828866179,"daily_return":0.00716764715939444,"coloract":"#6495ed","x":1518739200000,"y":0.00716764715939444,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-20","adjClose":83.1574924788,"daily_return":-0.0110667482186093,"coloract":"#ff9999","x":1519084800000,"y":-0.0110667482186093,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-21","adjClose":82.8129308313,"daily_return":-0.0041520909044408,"coloract":"#ff9999","x":1519171200000,"y":-0.0041520909044408,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-22","adjClose":82.6849507908,"daily_return":-0.00154660669678908,"coloract":"#ff9999","x":1519257600000,"y":-0.00154660669678908,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-23","adjClose":84.0041296699,"daily_return":0.0158283484103814,"coloract":"#6495ed","x":1519344000000,"y":0.0158283484103814,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-26","adjClose":85.067348468,"daily_return":0.0125773173045918,"coloract":"#6495ed","x":1519603200000,"y":0.0125773173045918,"color":"#6495ed"},{"sector":"Health Care","date":"2018-02-27","adjClose":84.1813328029,"daily_return":-0.0104700816854564,"coloract":"#ff9999","x":1519689600000,"y":-0.0104700816854564,"color":"#ff9999"},{"sector":"Health Care","date":"2018-02-28","adjClose":82.8326200683,"daily_return":-0.0161512500048788,"coloract":"#ff9999","x":1519776000000,"y":-0.0161512500048788,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-01","adjClose":81.5134411891,"daily_return":-0.0160540167717969,"coloract":"#ff9999","x":1519862400000,"y":-0.0160540167717969,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-02","adjClose":82.3403891432,"daily_return":0.0100938131693118,"coloract":"#6495ed","x":1519948800000,"y":0.0100938131693118,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-05","adjClose":83.0885801493,"daily_return":0.00904552704167649,"coloract":"#6495ed","x":1520208000000,"y":0.00904552704167649,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-06","adjClose":82.9704447273,"daily_return":-0.00142281266576383,"coloract":"#ff9999","x":1520294400000,"y":-0.00142281266576383,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-07","adjClose":83.3937633229,"daily_return":0.0050890695081014,"coloract":"#6495ed","x":1520380800000,"y":0.0050890695081014,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-08","adjClose":83.9549065774,"daily_return":0.00670630197332134,"coloract":"#6495ed","x":1520467200000,"y":0.00670630197332134,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-09","adjClose":85.1657946531,"daily_return":0.0143200537755046,"coloract":"#6495ed","x":1520553600000,"y":0.0143200537755046,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-12","adjClose":84.8015437685,"daily_return":-0.0042861345670131,"coloract":"#ff9999","x":1520812800000,"y":-0.0042861345670131,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-13","adjClose":84.909834572,"daily_return":0.00127617628536125,"coloract":"#6495ed","x":1520899200000,"y":0.00127617628536125,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-14","adjClose":84.496360595,"daily_return":-0.00488146018079227,"coloract":"#ff9999","x":1520985600000,"y":-0.00488146018079227,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-15","adjClose":84.358535936,"daily_return":-0.00163246304891818,"coloract":"#ff9999","x":1521072000000,"y":-0.00163246304891818,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-16","adjClose":84.3582090946,"daily_return":-3.87443937377441e-06,"coloract":"#ff9999","x":1521158400000,"y":-3.87443937377441e-06,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-19","adjClose":82.994884015,"daily_return":-0.0162931585422648,"coloract":"#ff9999","x":1521417600000,"y":-0.0162931585422648,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-20","adjClose":83.1134340219,"daily_return":0.00142738218566141,"coloract":"#6495ed","x":1521504000000,"y":0.00142738218566141,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-21","adjClose":82.7577840011,"daily_return":-0.00428827339729398,"coloract":"#ff9999","x":1521590400000,"y":-0.00428827339729398,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-22","adjClose":80.3769046954,"daily_return":-0.0291911964247955,"coloract":"#ff9999","x":1521676800000,"y":-0.0291911964247955,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-23","adjClose":78.7073254312,"daily_return":-0.0209906483480431,"coloract":"#ff9999","x":1521763200000,"y":-0.0209906483480431,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-26","adjClose":80.3373880264,"daily_return":0.0204988853675747,"coloract":"#6495ed","x":1522022400000,"y":0.0204988853675747,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-27","adjClose":79.388987971,"daily_return":-0.0118754488133783,"coloract":"#ff9999","x":1522108800000,"y":-0.0118754488133783,"color":"#ff9999"},{"sector":"Health Care","date":"2018-03-28","adjClose":79.8137921625,"daily_return":0.00533665554510243,"coloract":"#6495ed","x":1522195200000,"y":0.00533665554510243,"color":"#6495ed"},{"sector":"Health Care","date":"2018-03-29","adjClose":80.4164213644,"daily_return":0.00752207751724399,"coloract":"#6495ed","x":1522281600000,"y":0.00752207751724399,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-02","adjClose":78.5887754243,"daily_return":-0.0229895182246995,"coloract":"#ff9999","x":1522627200000,"y":-0.0229895182246995,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-03","adjClose":79.7841546608,"daily_return":0.0150960386608681,"coloract":"#6495ed","x":1522713600000,"y":0.0150960386608681,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-04","adjClose":80.9202588938,"daily_return":0.01413929008244,"coloract":"#6495ed","x":1522800000000,"y":0.01413929008244,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-05","adjClose":80.8609838903,"daily_return":-0.000732779710828524,"coloract":"#ff9999","x":1522886400000,"y":-0.000732779710828524,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-06","adjClose":78.9147879433,"daily_return":-0.0243627952692291,"coloract":"#ff9999","x":1522972800000,"y":-0.0243627952692291,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-09","adjClose":79.6952421556,"daily_return":0.00984125040178974,"coloract":"#6495ed","x":1523232000000,"y":0.00984125040178974,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-10","adjClose":81.0388089007,"daily_return":0.0167182750651023,"coloract":"#6495ed","x":1523318400000,"y":0.0167182750651023,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-11","adjClose":80.3769046954,"daily_return":-0.00820128227394257,"coloract":"#ff9999","x":1523404800000,"y":-0.00820128227394257,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-12","adjClose":80.9202588938,"daily_return":0.00673733178710823,"coloract":"#6495ed","x":1523491200000,"y":0.00673733178710823,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-13","adjClose":80.8807422248,"daily_return":-0.000488460139461466,"coloract":"#ff9999","x":1523577600000,"y":-0.000488460139461466,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-16","adjClose":81.5228880957,"daily_return":0.00790806481536244,"coloract":"#6495ed","x":1523836800000,"y":0.00790806481536244,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-17","adjClose":82.1551547993,"daily_return":0.00772577478673586,"coloract":"#6495ed","x":1523923200000,"y":0.00772577478673586,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-18","adjClose":82.22430897,"daily_return":0.000841396768112013,"coloract":"#6495ed","x":1524009600000,"y":0.000841396768112013,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-19","adjClose":81.5327672629,"daily_return":-0.00844599615384301,"coloract":"#ff9999","x":1524096000000,"y":-0.00844599615384301,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-20","adjClose":81.0980839042,"daily_return":-0.00534565724409486,"coloract":"#ff9999","x":1524182400000,"y":-0.00534565724409486,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-23","adjClose":81.414217256,"daily_return":0.00389058241510565,"coloract":"#6495ed","x":1524441600000,"y":0.00389058241510565,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-24","adjClose":80.8017088869,"daily_return":-0.0075518020282308,"coloract":"#ff9999","x":1524528000000,"y":-0.0075518020282308,"color":"#ff9999"},{"sector":"Health Care","date":"2018-04-25","adjClose":81.1672380749,"daily_return":0.00451357887317361,"coloract":"#6495ed","x":1524614400000,"y":0.00451357887317361,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-26","adjClose":82.1946714682,"daily_return":0.0125787822062131,"coloract":"#6495ed","x":1524700800000,"y":0.0125787822062131,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-27","adjClose":82.5305631545,"daily_return":0.00407821124200858,"coloract":"#6495ed","x":1524787200000,"y":0.00407821124200858,"color":"#6495ed"},{"sector":"Health Care","date":"2018-04-30","adjClose":81.2660297473,"daily_return":-0.0154405962667115,"coloract":"#ff9999","x":1525046400000,"y":-0.0154405962667115,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-01","adjClose":81.2265130783,"daily_return":-0.000486381332851948,"coloract":"#ff9999","x":1525132800000,"y":-0.000486381332851948,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-02","adjClose":80.1101671798,"daily_return":-0.0138389325126882,"coloract":"#ff9999","x":1525219200000,"y":-0.0138389325126882,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-03","adjClose":79.388987971,"daily_return":-0.00904310900978444,"coloract":"#ff9999","x":1525305600000,"y":-0.00904310900978444,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-04","adjClose":80.0212546746,"daily_return":0.00793261472568219,"coloract":"#6495ed","x":1525392000000,"y":0.00793261472568219,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-07","adjClose":79.9027046677,"daily_return":-0.00148257995990608,"coloract":"#ff9999","x":1525651200000,"y":-0.00148257995990608,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-08","adjClose":79.3000754658,"daily_return":-0.00757062256910057,"coloract":"#ff9999","x":1525737600000,"y":-0.00757062256910057,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-09","adjClose":79.754517159,"daily_return":0.00571430126326611,"coloract":"#6495ed","x":1525824000000,"y":0.00571430126326611,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-10","adjClose":80.8214672214,"daily_return":0.0132892321195772,"coloract":"#6495ed","x":1525910400000,"y":0.0132892321195772,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-11","adjClose":82.0267256251,"daily_return":0.0148025027478234,"coloract":"#6495ed","x":1525996800000,"y":0.0148025027478234,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-14","adjClose":82.5700798235,"daily_return":0.006602268745735,"coloract":"#6495ed","x":1526256000000,"y":0.006602268745735,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-15","adjClose":81.5031297612,"daily_return":-0.0130059636787898,"coloract":"#ff9999","x":1526342400000,"y":-0.0130059636787898,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-16","adjClose":81.9575714544,"daily_return":0.00556027058046649,"coloract":"#6495ed","x":1526428800000,"y":0.00556027058046649,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-17","adjClose":81.9872089561,"daily_return":0.000361554688702803,"coloract":"#6495ed","x":1526515200000,"y":0.000361554688702803,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-18","adjClose":82.1946714682,"daily_return":0.00252722921657078,"coloract":"#6495ed","x":1526601600000,"y":0.00252722921657078,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-21","adjClose":82.2737048062,"daily_return":0.000961076480156642,"coloract":"#6495ed","x":1526860800000,"y":0.000961076480156642,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-22","adjClose":82.1156381303,"daily_return":-0.00192307751573573,"coloract":"#ff9999","x":1526947200000,"y":-0.00192307751573573,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-23","adjClose":82.3823756459,"daily_return":0.0032430513081394,"coloract":"#6495ed","x":1527033600000,"y":0.0032430513081394,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-24","adjClose":82.0563631268,"daily_return":-0.00396515989695878,"coloract":"#ff9999","x":1527120000000,"y":-0.00396515989695878,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-25","adjClose":81.9378131199,"daily_return":-0.00144578338406376,"coloract":"#ff9999","x":1527206400000,"y":-0.00144578338406376,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-29","adjClose":81.0980839042,"daily_return":-0.0103012484577993,"coloract":"#ff9999","x":1527552000000,"y":-0.0103012484577993,"color":"#ff9999"},{"sector":"Health Care","date":"2018-05-30","adjClose":82.3132214752,"daily_return":0.0148724100327779,"coloract":"#6495ed","x":1527638400000,"y":0.0148724100327779,"color":"#6495ed"},{"sector":"Health Care","date":"2018-05-31","adjClose":81.414217256,"daily_return":-0.0109818276176723,"coloract":"#ff9999","x":1527724800000,"y":-0.0109818276176723,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-01","adjClose":82.3527381441,"daily_return":0.0114617892290454,"coloract":"#6495ed","x":1527811200000,"y":0.0114617892290454,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-04","adjClose":82.6589923287,"daily_return":0.00371191230297097,"coloract":"#6495ed","x":1528070400000,"y":0.00371191230297097,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-05","adjClose":82.4910464856,"daily_return":-0.00203385845016157,"coloract":"#ff9999","x":1528156800000,"y":-0.00203385845016157,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-06","adjClose":83.4196882065,"daily_return":0.0111945911231217,"coloract":"#6495ed","x":1528243200000,"y":0.0111945911231217,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-07","adjClose":83.5283590461,"daily_return":0.00130185236349245,"coloract":"#6495ed","x":1528329600000,"y":0.00130185236349245,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-08","adjClose":84.0124382411,"daily_return":0.00577865868975991,"coloract":"#6495ed","x":1528416000000,"y":0.00577865868975991,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-11","adjClose":84.170504917,"daily_return":0.00187969980157199,"coloract":"#6495ed","x":1528675200000,"y":0.00187969980157199,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-12","adjClose":84.1211090808,"daily_return":-0.000587026726348583,"coloract":"#ff9999","x":1528761600000,"y":-0.000587026726348583,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-13","adjClose":84.1408674153,"daily_return":0.000234852044440181,"coloract":"#6495ed","x":1528848000000,"y":0.000234852044440181,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-14","adjClose":84.575550774,"daily_return":0.00515283960109159,"coloract":"#6495ed","x":1528934400000,"y":0.00515283960109159,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-15","adjClose":84.7395449502,"daily_return":0.00193714833023595,"coloract":"#6495ed","x":1529020800000,"y":0.00193714833023595,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-18","adjClose":83.9264578117,"daily_return":-0.00964146210547767,"coloract":"#ff9999","x":1529280000000,"y":-0.00964146210547767,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-19","adjClose":84.1446031416,"daily_return":0.00259587166477449,"coloract":"#6495ed","x":1529366400000,"y":0.00259587166477449,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-20","adjClose":84.3230856842,"daily_return":0.00211889425944989,"coloract":"#6495ed","x":1529452800000,"y":0.00211889425944989,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-21","adjClose":83.8372165404,"daily_return":-0.00577865868959293,"coloract":"#ff9999","x":1529539200000,"y":-0.00577865868959293,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-22","adjClose":84.2140130192,"daily_return":0.00448431244693381,"coloract":"#6495ed","x":1529625600000,"y":0.00448431244693381,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-25","adjClose":83.4405886679,"daily_return":-0.00922646715523445,"coloract":"#ff9999","x":1529884800000,"y":-0.00922646715523445,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-26","adjClose":83.1827805508,"daily_return":-0.00309450377865605,"coloract":"#ff9999","x":1529971200000,"y":-0.00309450377865605,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-27","adjClose":82.4787660772,"daily_return":-0.00849948254332755,"coloract":"#ff9999","x":1530057600000,"y":-0.00849948254332755,"color":"#ff9999"},{"sector":"Health Care","date":"2018-06-28","adjClose":82.5878387422,"daily_return":0.00132155963338754,"coloract":"#6495ed","x":1530144000000,"y":0.00132155963338754,"color":"#6495ed"},{"sector":"Health Care","date":"2018-06-29","adjClose":82.756405588,"daily_return":0.0020389812162307,"coloract":"#6495ed","x":1530230400000,"y":0.0020389812162307,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-02","adjClose":83.0142137051,"daily_return":0.0031104224144336,"coloract":"#6495ed","x":1530489600000,"y":0.0031104224144336,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-03","adjClose":83.2125276413,"daily_return":0.00238606650990469,"coloract":"#6495ed","x":1530576000000,"y":0.00238606650990469,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-05","adjClose":84.0751932639,"daily_return":0.0103136472279637,"coloract":"#6495ed","x":1530748800000,"y":0.0103136472279637,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-06","adjClose":85.2849082749,"daily_return":0.0142859572475773,"coloract":"#6495ed","x":1530835200000,"y":0.0142859572475773,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-09","adjClose":85.909597174,"daily_return":0.0072980341291311,"coloract":"#6495ed","x":1531094400000,"y":0.0072980341291311,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-10","adjClose":86.2368151688,"daily_return":0.00380162890921376,"coloract":"#6495ed","x":1531180800000,"y":0.00380162890921376,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-11","adjClose":85.5526320888,"daily_return":-0.00796541008087015,"coloract":"#ff9999","x":1531267200000,"y":-0.00796541008087015,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-12","adjClose":86.5045389827,"daily_return":0.0110651198125327,"coloract":"#6495ed","x":1531353600000,"y":0.0110651198125327,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-13","adjClose":86.6631901316,"daily_return":0.00183234132710908,"coloract":"#6495ed","x":1531440000000,"y":0.00183234132710908,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-16","adjClose":86.1376582006,"daily_return":-0.00608253438961448,"coloract":"#ff9999","x":1531699200000,"y":-0.00608253438961448,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-17","adjClose":86.6136116476,"daily_return":0.00551028830884803,"coloract":"#6495ed","x":1531785600000,"y":0.00551028830884803,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-18","adjClose":86.6830215253,"daily_return":0.00080105285533616,"coloract":"#6495ed","x":1531872000000,"y":0.00080105285533616,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-19","adjClose":86.1971523815,"daily_return":-0.00562089234467322,"coloract":"#ff9999","x":1531958400000,"y":-0.00562089234467322,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-20","adjClose":86.0285855357,"daily_return":-0.00195751113237108,"coloract":"#ff9999","x":1532044800000,"y":-0.00195751113237108,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-23","adjClose":86.2070680783,"daily_return":0.00207253960191167,"coloract":"#6495ed","x":1532304000000,"y":0.00207253960191167,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-24","adjClose":86.9904081264,"daily_return":0.009045690579641,"coloract":"#6495ed","x":1532390400000,"y":0.009045690579641,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-25","adjClose":88.1009661693,"daily_return":0.0126856384606331,"coloract":"#6495ed","x":1532476800000,"y":0.0126856384606331,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-26","adjClose":87.853073749,"daily_return":-0.00281769698979595,"coloract":"#ff9999","x":1532563200000,"y":-0.00281769698979595,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-27","adjClose":87.2184691531,"daily_return":-0.0072496919241356,"coloract":"#ff9999","x":1532649600000,"y":-0.0072496919241356,"color":"#ff9999"},{"sector":"Health Care","date":"2018-07-30","adjClose":87.2680476371,"daily_return":0.000568278698506397,"coloract":"#6495ed","x":1532908800000,"y":0.000568278698506397,"color":"#6495ed"},{"sector":"Health Care","date":"2018-07-31","adjClose":88.1802917438,"daily_return":0.0103990990264133,"coloract":"#6495ed","x":1532995200000,"y":0.0103990990264133,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-01","adjClose":88.2001231374,"daily_return":0.000224870700036739,"coloract":"#6495ed","x":1533081600000,"y":0.000224870700036739,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-02","adjClose":88.5273411322,"daily_return":0.0037030845214252,"coloract":"#6495ed","x":1533168000000,"y":0.0037030845214252,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-03","adjClose":89.0528730632,"daily_return":0.00591882904980956,"coloract":"#6495ed","x":1533254400000,"y":0.00591882904980956,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-06","adjClose":89.2115242122,"daily_return":0.00177995374636541,"coloract":"#6495ed","x":1533513600000,"y":0.00177995374636541,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-07","adjClose":89.221439909,"daily_return":0.000111141983871299,"coloract":"#6495ed","x":1533600000000,"y":0.000111141983871299,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-08","adjClose":89.3602596643,"daily_return":0.00155469215034998,"coloract":"#6495ed","x":1533686400000,"y":0.00155469215034998,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-09","adjClose":89.2611026962,"daily_return":-0.00111024769910006,"coloract":"#ff9999","x":1533772800000,"y":-0.00111024769910006,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-10","adjClose":88.8743905206,"daily_return":-0.0043417824950156,"coloract":"#ff9999","x":1533859200000,"y":-0.0043417824950156,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-13","adjClose":88.904137611,"daily_return":0.000334653357637826,"coloract":"#6495ed","x":1534118400000,"y":0.000334653357637826,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-14","adjClose":89.3205968771,"daily_return":0.0046734256643246,"coloract":"#6495ed","x":1534204800000,"y":0.0046734256643246,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-15","adjClose":89.1718614249,"daily_return":-0.00166657446528085,"coloract":"#ff9999","x":1534291200000,"y":-0.00166657446528085,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-16","adjClose":90.0444427443,"daily_return":0.00973782177527927,"coloract":"#6495ed","x":1534377600000,"y":0.00973782177527927,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-17","adjClose":90.3220822551,"daily_return":0.00307861705587698,"coloract":"#6495ed","x":1534464000000,"y":0.00307861705587698,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-20","adjClose":90.6195531594,"daily_return":0.00328803452692661,"coloract":"#6495ed","x":1534723200000,"y":0.00328803452692661,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-21","adjClose":90.6195531594,"daily_return":0,"coloract":"#ff9999","x":1534809600000,"y":0,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-22","adjClose":90.7087944307,"daily_return":0.000984305870440849,"coloract":"#6495ed","x":1534896000000,"y":0.000984305870440849,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-23","adjClose":90.6790473403,"daily_return":-0.000327994317328439,"coloract":"#ff9999","x":1534982400000,"y":-0.000327994317328439,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-24","adjClose":91.115338,"daily_return":0.00479983467589928,"coloract":"#6495ed","x":1535068800000,"y":0.00479983467589928,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-27","adjClose":91.4425559947,"daily_return":0.00358481726493043,"coloract":"#6495ed","x":1535328000000,"y":0.00358481726493043,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-28","adjClose":91.4921344788,"daily_return":0.000542034812375469,"coloract":"#6495ed","x":1535414400000,"y":0.000542034812375469,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-29","adjClose":92.0870762875,"daily_return":0.00648160419762522,"coloract":"#6495ed","x":1535500800000,"y":0.00648160419762522,"color":"#6495ed"},{"sector":"Health Care","date":"2018-08-30","adjClose":92.0176664098,"daily_return":-0.000754025995981067,"coloract":"#ff9999","x":1535587200000,"y":-0.000754025995981067,"color":"#ff9999"},{"sector":"Health Care","date":"2018-08-31","adjClose":91.9978350162,"daily_return":-0.00021554046830996,"coloract":"#ff9999","x":1535673600000,"y":-0.00021554046830996,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-04","adjClose":91.2640734521,"daily_return":-0.00800783415704753,"coloract":"#ff9999","x":1536019200000,"y":-0.00800783415704753,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-05","adjClose":91.6309542342,"daily_return":0.00401193273363809,"coloract":"#6495ed","x":1536105600000,"y":0.00401193273363809,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-06","adjClose":91.6309542342,"daily_return":0,"coloract":"#ff9999","x":1536192000000,"y":0,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-07","adjClose":91.7697739895,"daily_return":0.00151384111890707,"coloract":"#6495ed","x":1536278400000,"y":0.00151384111890707,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-10","adjClose":91.531797266,"daily_return":-0.00259656101773498,"coloract":"#ff9999","x":1536537600000,"y":-0.00259656101773498,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-11","adjClose":91.4524716916,"daily_return":-0.00086702075343581,"coloract":"#ff9999","x":1536624000000,"y":-0.00086702075343581,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-12","adjClose":91.9085937449,"daily_return":0.00497513463984589,"coloract":"#6495ed","x":1536710400000,"y":0.00497513463984589,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-13","adjClose":93.0488988782,"daily_return":0.0123306124573554,"coloract":"#6495ed","x":1536796800000,"y":0.0123306124573554,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-14","adjClose":92.741512277,"daily_return":-0.00330896389926139,"coloract":"#ff9999","x":1536883200000,"y":-0.00330896389926139,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-17","adjClose":92.4043785854,"daily_return":-0.0036418206490314,"coloract":"#ff9999","x":1537142400000,"y":-0.0036418206490314,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-18","adjClose":92.9398262133,"daily_return":0.00577788896174081,"coloract":"#6495ed","x":1537228800000,"y":0.00577788896174081,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-19","adjClose":92.8109221547,"daily_return":-0.00138792527540499,"coloract":"#ff9999","x":1537315200000,"y":-0.00138792527540499,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-20","adjClose":93.7132505646,"daily_return":0.00967526552408682,"coloract":"#6495ed","x":1537401600000,"y":0.00967526552408682,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-21","adjClose":93.839279071,"daily_return":0.00134392775841086,"coloract":"#6495ed","x":1537488000000,"y":0.00134392775841086,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-24","adjClose":94.0284109584,"daily_return":0.0020134590601053,"coloract":"#6495ed","x":1537747200000,"y":0.0020134590601053,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-25","adjClose":93.7397359724,"daily_return":-0.0030748049459568,"coloract":"#ff9999","x":1537833600000,"y":-0.0030748049459568,"color":"#ff9999"},{"sector":"Health Care","date":"2018-09-26","adjClose":93.9487764795,"daily_return":0.00222752677620175,"coloract":"#6495ed","x":1537920000000,"y":0.00222752677620175,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-27","adjClose":94.4265833529,"daily_return":0.00507293415134402,"coloract":"#6495ed","x":1538006400000,"y":0.00507293415134402,"color":"#6495ed"},{"sector":"Health Care","date":"2018-09-28","adjClose":94.7152583389,"daily_return":0.00305247329267999,"coloract":"#6495ed","x":1538092800000,"y":0.00305247329267999,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-01","adjClose":95.1831109024,"daily_return":0.00492740945554981,"coloract":"#6495ed","x":1538352000000,"y":0.00492740945554981,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-02","adjClose":95.0736134939,"daily_return":-0.00115104915147679,"coloract":"#ff9999","x":1538438400000,"y":-0.00115104915147679,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-03","adjClose":94.8944359164,"daily_return":-0.00188639754095199,"coloract":"#ff9999","x":1538524800000,"y":-0.00188639754095199,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-04","adjClose":93.9686850992,"daily_return":-0.00980348335419112,"coloract":"#ff9999","x":1538611200000,"y":-0.00980348335419112,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-05","adjClose":93.8591876908,"daily_return":-0.00116593367297124,"coloract":"#ff9999","x":1538697600000,"y":-0.00116593367297124,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-08","adjClose":93.8193704513,"daily_return":-0.000424313150011457,"coloract":"#ff9999","x":1538956800000,"y":-0.000424313150011457,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-09","adjClose":93.9786394091,"daily_return":0.00169617341635497,"coloract":"#6495ed","x":1539043200000,"y":0.00169617341635497,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-10","adjClose":91.7588283098,"daily_return":-0.0239038124523656,"coloract":"#ff9999","x":1539129600000,"y":-0.0239038124523656,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-11","adjClose":89.2802051541,"daily_return":-0.0273839071625748,"coloract":"#ff9999","x":1539216000000,"y":-0.0273839071625748,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-12","adjClose":90.6538999151,"daily_return":0.015269161449992,"coloract":"#6495ed","x":1539302400000,"y":0.015269161449992,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-15","adjClose":90.0267783938,"daily_return":-0.00694179416974805,"coloract":"#ff9999","x":1539561600000,"y":-0.00694179416974805,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-16","adjClose":92.4954472396,"daily_return":0.0270522604921437,"coloract":"#6495ed","x":1539648000000,"y":0.0270522604921437,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-17","adjClose":92.9832084229,"daily_return":0.00525949798310776,"coloract":"#6495ed","x":1539734400000,"y":0.00525949798310776,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-18","adjClose":91.9280515775,"daily_return":-0.0114126992395711,"coloract":"#ff9999","x":1539820800000,"y":-0.0114126992395711,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-19","adjClose":91.0918895491,"daily_return":-0.00913745071768179,"coloract":"#ff9999","x":1539907200000,"y":-0.00913745071768179,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-22","adjClose":90.3453163094,"daily_return":-0.00822959601602324,"coloract":"#ff9999","x":1540166400000,"y":-0.00822959601602324,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-23","adjClose":89.8575551261,"daily_return":-0.00541348060215352,"coloract":"#ff9999","x":1540252800000,"y":-0.00541348060215352,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-24","adjClose":86.8911707872,"daily_return":-0.0335692705623876,"coloract":"#ff9999","x":1540339200000,"y":-0.0335692705623876,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-25","adjClose":88.0160078016,"daily_return":0.0128622796505047,"coloract":"#6495ed","x":1540425600000,"y":0.0128622796505047,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-26","adjClose":87.0205768154,"daily_return":-0.0113740989626949,"coloract":"#ff9999","x":1540512000000,"y":-0.0113740989626949,"color":"#ff9999"},{"sector":"Health Care","date":"2018-10-29","adjClose":87.2395716324,"daily_return":0.00251342529245857,"coloract":"#6495ed","x":1540771200000,"y":0.00251342529245857,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-30","adjClose":88.1752767594,"daily_return":0.010668583767246,"coloract":"#6495ed","x":1540857600000,"y":0.010668583767246,"color":"#6495ed"},{"sector":"Health Care","date":"2018-10-31","adjClose":88.2947284778,"daily_return":0.00135379082108766,"coloract":"#6495ed","x":1540944000000,"y":0.00135379082108766,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-01","adjClose":89.4096111823,"daily_return":0.0125477783433032,"coloract":"#6495ed","x":1541030400000,"y":0.0125477783433032,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-02","adjClose":88.8521698301,"daily_return":-0.00625420845752966,"coloract":"#ff9999","x":1541116800000,"y":-0.00625420845752966,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-05","adjClose":89.6385603092,"daily_return":0.00881161242067652,"coloract":"#6495ed","x":1541376000000,"y":0.00881161242067652,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-06","adjClose":90.0964585628,"daily_return":0.00509527021643041,"coloract":"#6495ed","x":1541462400000,"y":0.00509527021643041,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-07","adjClose":92.7443049862,"daily_return":0.0289654396238364,"coloract":"#6495ed","x":1541548800000,"y":0.0289654396238364,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-08","adjClose":92.7940765355,"daily_return":0.000536509482142122,"coloract":"#6495ed","x":1541635200000,"y":0.000536509482142122,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-09","adjClose":92.5253101692,"daily_return":-0.00290057677736222,"coloract":"#ff9999","x":1541721600000,"y":-0.00290057677736222,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-12","adjClose":91.2710671266,"daily_return":-0.0136483921052282,"coloract":"#ff9999","x":1541980800000,"y":-0.0136483921052282,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-13","adjClose":90.6339912954,"daily_return":-0.00700451588839801,"coloract":"#ff9999","x":1542067200000,"y":-0.00700451588839801,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-14","adjClose":89.9073266755,"daily_return":-0.00804988633175263,"coloract":"#ff9999","x":1542153600000,"y":-0.00804988633175263,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-15","adjClose":90.7036714644,"daily_return":0.00881839929667194,"coloract":"#6495ed","x":1542240000000,"y":0.00881839929667194,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-16","adjClose":91.6194679718,"daily_return":0.0100459460290816,"coloract":"#6495ed","x":1542326400000,"y":0.0100459460290816,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-19","adjClose":90.4548137179,"daily_return":-0.0127933514601439,"coloract":"#ff9999","x":1542585600000,"y":-0.0127933514601439,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-20","adjClose":89.6086973796,"daily_return":-0.0093980458426044,"coloract":"#ff9999","x":1542672000000,"y":-0.0093980458426044,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-21","adjClose":89.1010275766,"daily_return":-0.00568151698224639,"coloract":"#ff9999","x":1542758400000,"y":-0.00568151698224639,"color":"#ff9999"},{"sector":"Health Care","date":"2018-11-23","adjClose":89.2304336048,"daily_return":0.00145129804978161,"coloract":"#6495ed","x":1542931200000,"y":0.00145129804978161,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-26","adjClose":90.0964585628,"daily_return":0.00965869290622212,"coloract":"#6495ed","x":1543190400000,"y":0.00965869290622212,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-27","adjClose":91.0321636899,"daily_return":0.0103320329983765,"coloract":"#6495ed","x":1543276800000,"y":0.0103320329983765,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-28","adjClose":93.2221118596,"daily_return":0.0237720540533735,"coloract":"#6495ed","x":1543363200000,"y":0.0237720540533735,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-29","adjClose":93.5306954653,"daily_return":0.00330473090031003,"coloract":"#6495ed","x":1543449600000,"y":0.00330473090031003,"color":"#6495ed"},{"sector":"Health Care","date":"2018-11-30","adjClose":95.431968649,"daily_return":0.0201239472983854,"coloract":"#6495ed","x":1543536000000,"y":0.0201239472983854,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-03","adjClose":94.9740703953,"daily_return":-0.00480971232555483,"coloract":"#ff9999","x":1543795200000,"y":-0.00480971232555483,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-04","adjClose":92.8538023947,"daily_return":-0.0225776721610362,"coloract":"#ff9999","x":1543881600000,"y":-0.0225776721610362,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-06","adjClose":92.5054015495,"daily_return":-0.00375920103317906,"coloract":"#ff9999","x":1544054400000,"y":-0.00375920103317906,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-07","adjClose":90.1462301121,"daily_return":-0.025833907115004,"coloract":"#ff9999","x":1544140800000,"y":-0.025833907115004,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-10","adjClose":90.4946309573,"daily_return":0.00385739167914778,"coloract":"#6495ed","x":1544400000000,"y":0.00385739167914778,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-11","adjClose":90.7733516335,"daily_return":0.00307523581244862,"coloract":"#6495ed","x":1544486400000,"y":0.00307523581244862,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-12","adjClose":91.5497878027,"daily_return":0.00851719496845948,"coloract":"#6495ed","x":1544572800000,"y":0.00851719496845948,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-13","adjClose":91.6393765915,"daily_return":0.000978101474927051,"coloract":"#6495ed","x":1544659200000,"y":0.000978101474927051,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-14","adjClose":88.5535405342,"daily_return":-0.0342537078869931,"coloract":"#ff9999","x":1544745600000,"y":-0.0342537078869931,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-17","adjClose":86.7916276886,"daily_return":-0.0200971850624247,"coloract":"#ff9999","x":1545004800000,"y":-0.0200971850624247,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-18","adjClose":86.0351001391,"daily_return":-0.00875480767485293,"coloract":"#ff9999","x":1545091200000,"y":-0.00875480767485293,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-19","adjClose":84.9102631246,"daily_return":-0.0131603832677376,"coloract":"#ff9999","x":1545177600000,"y":-0.0131603832677376,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-20","adjClose":83.7157459412,"daily_return":-0.0141678875179609,"coloract":"#ff9999","x":1545264000000,"y":-0.0141678875179609,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-21","adjClose":82.68,"daily_return":-0.0124493485396222,"coloract":"#ff9999","x":1545350400000,"y":-0.0124493485396222,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-24","adjClose":80.7,"daily_return":-0.0242391595376645,"coloract":"#ff9999","x":1545609600000,"y":-0.0242391595376645,"color":"#ff9999"},{"sector":"Health Care","date":"2018-12-26","adjClose":84.22,"daily_return":0.0426938474578789,"coloract":"#6495ed","x":1545782400000,"y":0.0426938474578789,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-27","adjClose":85.15,"daily_return":0.010981984374915,"coloract":"#6495ed","x":1545868800000,"y":0.010981984374915,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-28","adjClose":85.25,"daily_return":0.00117370905492908,"coloract":"#6495ed","x":1545955200000,"y":0.00117370905492908,"color":"#6495ed"},{"sector":"Health Care","date":"2018-12-31","adjClose":86.51,"daily_return":0.0146718980286566,"coloract":"#6495ed","x":1546214400000,"y":0.0146718980286566,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Industrials 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Industrials","date":"2018-01-02","adjClose":74.6813098189,"daily_return":0.00592926172055375,"coloract":"#6495ed","x":1514851200000,"y":0.00592926172055375,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-03","adjClose":75.0835606995,"daily_return":0.00537177839484748,"coloract":"#6495ed","x":1514937600000,"y":0.00537177839484748,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-04","adjClose":75.6329765363,"daily_return":0.00729074964909682,"coloract":"#6495ed","x":1515024000000,"y":0.00729074964909682,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-05","adjClose":76.1529593819,"daily_return":0.00685155547011096,"coloract":"#6495ed","x":1515110400000,"y":0.00685155547011096,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-08","adjClose":76.4669112886,"daily_return":0.00411417396910352,"coloract":"#6495ed","x":1515369600000,"y":0.00411417396910352,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-09","adjClose":76.9574611429,"daily_return":0.00639470141755538,"coloract":"#6495ed","x":1515456000000,"y":0.00639470141755538,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-10","adjClose":76.9476501458,"daily_return":-0.00012749410375168,"coloract":"#ff9999","x":1515542400000,"y":-0.00012749410375168,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-11","adjClose":77.9287498544,"daily_return":0.0126696234204164,"coloract":"#6495ed","x":1515628800000,"y":0.0126696234204164,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-12","adjClose":78.6547636388,"daily_return":0.00927324941024121,"coloract":"#6495ed","x":1515715200000,"y":0.00927324941024121,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-16","adjClose":77.9483718486,"daily_return":-0.0090214870721983,"coloract":"#ff9999","x":1516060800000,"y":-0.0090214870721983,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-17","adjClose":78.3800557204,"daily_return":0.00552279551140611,"coloract":"#6495ed","x":1516147200000,"y":0.00552279551140611,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-18","adjClose":77.9581828457,"daily_return":-0.00539693810749942,"coloract":"#ff9999","x":1516233600000,"y":-0.00539693810749942,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-19","adjClose":78.1838357787,"daily_return":0.00289035702347196,"coloract":"#6495ed","x":1516320000000,"y":0.00289035702347196,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-22","adjClose":78.1838357787,"daily_return":0,"coloract":"#ff9999","x":1516579200000,"y":0,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-23","adjClose":78.223079767,"daily_return":0.000501819104182566,"coloract":"#6495ed","x":1516665600000,"y":0.000501819104182566,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-24","adjClose":78.1544027874,"daily_return":-0.000878348760876335,"coloract":"#ff9999","x":1516752000000,"y":-0.000878348760876335,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-25","adjClose":78.2328907641,"daily_return":0.0010037641998597,"coloract":"#6495ed","x":1516838400000,"y":0.0010037641998597,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-26","adjClose":79.135502496,"daily_return":0.0114714474918127,"coloract":"#6495ed","x":1516924800000,"y":0.0114714474918127,"color":"#6495ed"},{"sector":"Industrials","date":"2018-01-29","adjClose":78.6057086534,"daily_return":-0.00671727864701754,"coloract":"#ff9999","x":1517184000000,"y":-0.00671727864701754,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-30","adjClose":77.9876158369,"daily_return":-0.00789428321361019,"coloract":"#ff9999","x":1517270400000,"y":-0.00789428321361019,"color":"#ff9999"},{"sector":"Industrials","date":"2018-01-31","adjClose":78.223079767,"daily_return":0.00301469892983164,"coloract":"#6495ed","x":1517356800000,"y":0.00301469892983164,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-01","adjClose":78.0857258078,"daily_return":-0.00175746969658697,"coloract":"#ff9999","x":1517443200000,"y":-0.00175746969658697,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-02","adjClose":76.515966274,"daily_return":-0.0203078434757886,"coloract":"#ff9999","x":1517529600000,"y":-0.0203078434757886,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-05","adjClose":73.0428733056,"daily_return":-0.0464528542116085,"coloract":"#ff9999","x":1517788800000,"y":-0.0464528542116085,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-06","adjClose":74.3771689093,"daily_return":0.0181024509381666,"coloract":"#6495ed","x":1517875200000,"y":0.0181024509381666,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-07","adjClose":74.5145228685,"daily_return":0.00184501897350753,"coloract":"#6495ed","x":1517961600000,"y":0.00184501897350753,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-08","adjClose":71.6399007223,"daily_return":-0.0393418528141414,"coloract":"#ff9999","x":1518048000000,"y":-0.0393418528141414,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-09","adjClose":72.4149694921,"daily_return":0.0107608475545042,"coloract":"#6495ed","x":1518134400000,"y":0.0107608475545042,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-12","adjClose":73.5824781453,"daily_return":0.0159938897538145,"coloract":"#6495ed","x":1518393600000,"y":0.0159938897538145,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-13","adjClose":73.7492650958,"daily_return":0.00226410165357294,"coloract":"#6495ed","x":1518480000000,"y":0.00226410165357294,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-14","adjClose":74.6813098189,"daily_return":0.0125588272375765,"coloract":"#6495ed","x":1518566400000,"y":0.0125588272375765,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-15","adjClose":75.8095744838,"daily_return":0.0149947395176229,"coloract":"#6495ed","x":1518652800000,"y":0.0149947395176229,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-16","adjClose":75.829196478,"daily_return":0.0002587991736549,"coloract":"#6495ed","x":1518739200000,"y":0.0002587991736549,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-20","adjClose":75.0639387053,"daily_return":-0.0101431298748711,"coloract":"#ff9999","x":1519084800000,"y":-0.0101431298748711,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-21","adjClose":75.0835606995,"daily_return":0.000261369578440807,"coloract":"#6495ed","x":1519171200000,"y":0.000261369578440807,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-22","adjClose":75.5839215509,"daily_return":0.00664194666819551,"coloract":"#6495ed","x":1519257600000,"y":0.00664194666819551,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-23","adjClose":76.2118253644,"daily_return":0.00827305649310794,"coloract":"#6495ed","x":1519344000000,"y":0.00827305649310794,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-26","adjClose":77.2616020526,"daily_return":0.0136804537225848,"coloract":"#6495ed","x":1519603200000,"y":0.0136804537225848,"color":"#6495ed"},{"sector":"Industrials","date":"2018-02-27","adjClose":76.2903133411,"daily_return":-0.0126511175533182,"coloract":"#ff9999","x":1519689600000,"y":-0.0126511175533182,"color":"#ff9999"},{"sector":"Industrials","date":"2018-02-28","adjClose":75.2012926645,"daily_return":-0.0143775548350096,"coloract":"#ff9999","x":1519776000000,"y":-0.0143775548350096,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-01","adjClose":73.7296431016,"daily_return":-0.0197634891187572,"coloract":"#ff9999","x":1519862400000,"y":-0.0197634891187572,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-02","adjClose":73.7100211074,"daily_return":-0.000266169818292639,"coloract":"#ff9999","x":1519948800000,"y":-0.000266169818292639,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-05","adjClose":74.5930108452,"daily_return":0.0119080528600346,"coloract":"#6495ed","x":1520208000000,"y":0.0119080528600346,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-06","adjClose":74.9265847461,"daily_return":0.004461949659607,"coloract":"#6495ed","x":1520294400000,"y":0.004461949659607,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-07","adjClose":74.916773749,"daily_return":-0.000130950042931843,"coloract":"#ff9999","x":1520380800000,"y":-0.000130950042931843,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-08","adjClose":75.3092136325,"daily_return":0.00522467228272738,"coloract":"#6495ed","x":1520467200000,"y":0.00522467228272738,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-09","adjClose":76.96727214,"daily_return":0.0217778080389968,"coloract":"#6495ed","x":1520553600000,"y":0.0217778080389968,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-12","adjClose":76.0156054226,"daily_return":-0.0124416406409553,"coloract":"#ff9999","x":1520812800000,"y":-0.0124416406409553,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-13","adjClose":75.6427875334,"daily_return":-0.00491655796859547,"coloract":"#ff9999","x":1520899200000,"y":-0.00491655796859547,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-14","adjClose":74.8186637782,"daily_return":-0.0109547261394951,"coloract":"#ff9999","x":1520985600000,"y":-0.0109547261394951,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-15","adjClose":75.034505714,"daily_return":0.0028807143124876,"coloract":"#6495ed","x":1521072000000,"y":0.0028807143124876,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-16","adjClose":75.434084079,"daily_return":0.00531113244071779,"coloract":"#6495ed","x":1521158400000,"y":0.00531113244071779,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-19","adjClose":74.8529126294,"daily_return":-0.0077341933681101,"coloract":"#ff9999","x":1521417600000,"y":-0.0077341933681101,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-20","adjClose":75.1090220818,"daily_return":0.00341566280656913,"coloract":"#6495ed","x":1521504000000,"y":0.00341566280656913,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-21","adjClose":75.1976753537,"daily_return":0.00117963182869296,"coloract":"#6495ed","x":1521590400000,"y":0.00117963182869296,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-22","adjClose":72.7153837387,"daily_return":-0.033567349714831,"coloract":"#ff9999","x":1521676800000,"y":-0.033567349714831,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-23","adjClose":71.6515444751,"daily_return":-0.014738258043228,"coloract":"#ff9999","x":1521763200000,"y":-0.014738258043228,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-26","adjClose":73.3852084602,"daily_return":0.0239076858266705,"coloract":"#6495ed","x":1522022400000,"y":0.0239076858266705,"color":"#6495ed"},{"sector":"Industrials","date":"2018-03-27","adjClose":72.3706210144,"daily_return":-0.0139219657529743,"coloract":"#ff9999","x":1522108800000,"y":-0.0139219657529743,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-28","adjClose":72.1243619256,"daily_return":-0.00340855194019696,"coloract":"#ff9999","x":1522195200000,"y":-0.00340855194019696,"color":"#ff9999"},{"sector":"Industrials","date":"2018-03-29","adjClose":73.1783508256,"daily_return":0.0145077454711782,"coloract":"#6495ed","x":1522281600000,"y":0.0145077454711782,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-02","adjClose":71.6712452022,"daily_return":-0.0208099995136459,"coloract":"#ff9999","x":1522627200000,"y":-0.0208099995136459,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-03","adjClose":72.6661319209,"daily_return":0.0137857912459847,"coloract":"#6495ed","x":1522713600000,"y":0.0137857912459847,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-04","adjClose":72.9813435546,"daily_return":0.00432842553297874,"coloract":"#6495ed","x":1522800000000,"y":0.00432842553297874,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-05","adjClose":73.720120821,"daily_return":0.0100719309776212,"coloract":"#6495ed","x":1522886400000,"y":0.0100719309776212,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-06","adjClose":71.6810955658,"daily_return":-0.0280487190468373,"coloract":"#ff9999","x":1522972800000,"y":-0.0280487190468373,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-09","adjClose":71.4643875676,"daily_return":-0.00302780302967065,"coloract":"#ff9999","x":1523232000000,"y":-0.00302780302967065,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-10","adjClose":72.5577779219,"daily_return":0.015183931687563,"coloract":"#6495ed","x":1523318400000,"y":0.015183931687563,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-11","adjClose":72.0258582901,"daily_return":-0.00735798387113018,"coloract":"#ff9999","x":1523404800000,"y":-0.00735798387113018,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-12","adjClose":73.060146463,"daily_return":0.014257828602168,"coloract":"#6495ed","x":1523491200000,"y":0.014257828602168,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-13","adjClose":72.8828399191,"daily_return":-0.00242980681058569,"coloract":"#ff9999","x":1523577600000,"y":-0.00242980681058569,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-16","adjClose":73.6117668219,"daily_return":0.00995166900437905,"coloract":"#6495ed","x":1523836800000,"y":0.00995166900437905,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-17","adjClose":74.2323397257,"daily_return":0.00839501232648132,"coloract":"#6495ed","x":1523923200000,"y":0.00839501232648132,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-18","adjClose":75.0006680827,"daily_return":0.0102971206857969,"coloract":"#6495ed","x":1524009600000,"y":0.0102971206857969,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-19","adjClose":74.7938104481,"daily_return":-0.002761887729398,"coloract":"#ff9999","x":1524096000000,"y":-0.002761887729398,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-20","adjClose":74.4687484509,"daily_return":-0.00435558003957048,"coloract":"#ff9999","x":1524182400000,"y":-0.00435558003957048,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-23","adjClose":74.3800951789,"daily_return":-0.0011911853706188,"coloract":"#ff9999","x":1524441600000,"y":-0.0011911853706188,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-24","adjClose":72.3016684695,"daily_return":-0.0283411621947387,"coloract":"#ff9999","x":1524528000000,"y":-0.0283411621947387,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-25","adjClose":72.5085261041,"daily_return":0.00285695045034018,"coloract":"#6495ed","x":1524614400000,"y":0.00285695045034018,"color":"#6495ed"},{"sector":"Industrials","date":"2018-04-26","adjClose":72.2425662882,"daily_return":-0.00367472342748876,"coloract":"#ff9999","x":1524700800000,"y":-0.00367472342748876,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-27","adjClose":72.0948108349,"daily_return":-0.00204736303038366,"coloract":"#ff9999","x":1524787200000,"y":-0.00204736303038366,"color":"#ff9999"},{"sector":"Industrials","date":"2018-04-30","adjClose":71.1393255704,"daily_return":-0.0133417837636127,"coloract":"#ff9999","x":1525046400000,"y":-0.0133417837636127,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-01","adjClose":70.8142635732,"daily_return":-0.00457984285344448,"coloract":"#ff9999","x":1525132800000,"y":-0.00457984285344448,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-02","adjClose":70.1936906695,"daily_return":-0.00880201281727278,"coloract":"#ff9999","x":1525219200000,"y":-0.00880201281727278,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-03","adjClose":70.3611468498,"daily_return":0.00238278898806676,"coloract":"#6495ed","x":1525305600000,"y":0.00238278898806676,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-04","adjClose":71.1787270246,"daily_return":0.0115527765527368,"coloract":"#6495ed","x":1525392000000,"y":0.0115527765527368,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-07","adjClose":71.6515444751,"daily_return":0.00662071383960416,"coloract":"#6495ed","x":1525651200000,"y":0.00662071383960416,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-08","adjClose":72.1637633798,"daily_return":0.00712331779198294,"coloract":"#6495ed","x":1525737600000,"y":0.00712331779198294,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-09","adjClose":72.9419421004,"daily_return":0.0107257833633483,"coloract":"#6495ed","x":1525824000000,"y":0.0107257833633483,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-10","adjClose":73.434460278,"daily_return":0.00672950049713794,"coloract":"#6495ed","x":1525910400000,"y":0.00672950049713794,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-11","adjClose":73.5920660948,"daily_return":0.00214391077659037,"coloract":"#6495ed","x":1525996800000,"y":0.00214391077659037,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-14","adjClose":73.4640113686,"daily_return":-0.00174157723741342,"coloract":"#ff9999","x":1526256000000,"y":-0.00174157723741342,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-15","adjClose":73.2177522798,"daily_return":-0.00335773601357392,"coloract":"#ff9999","x":1526342400000,"y":-0.00335773601357392,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-16","adjClose":73.4837120957,"daily_return":0.00362586847256807,"coloract":"#6495ed","x":1526428800000,"y":0.00362586847256807,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-17","adjClose":73.7693726387,"daily_return":0.00387986305156929,"coloract":"#6495ed","x":1526515200000,"y":0.00387986305156929,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-18","adjClose":74.202788635,"daily_return":0.00585809157666528,"coloract":"#6495ed","x":1526601600000,"y":0.00585809157666528,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-21","adjClose":75.3257300799,"daily_return":0.0150200452186038,"coloract":"#6495ed","x":1526860800000,"y":0.0150200452186038,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-22","adjClose":74.399795906,"daily_return":-0.0123685787313095,"coloract":"#ff9999","x":1526947200000,"y":-0.0123685787313095,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-23","adjClose":74.3308433612,"daily_return":-0.00092721378835936,"coloract":"#ff9999","x":1527033600000,"y":-0.00092721378835936,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-24","adjClose":74.6953068126,"daily_return":0.00489127817650292,"coloract":"#6495ed","x":1527120000000,"y":0.00489127817650292,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-25","adjClose":74.5574017229,"daily_return":-0.00184794139144717,"coloract":"#ff9999","x":1527206400000,"y":-0.00184794139144717,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-29","adjClose":73.3655077331,"daily_return":-0.0161154183528502,"coloract":"#ff9999","x":1527552000000,"y":-0.0161154183528502,"color":"#ff9999"},{"sector":"Industrials","date":"2018-05-30","adjClose":74.399795906,"daily_return":0.0139992953561539,"coloract":"#6495ed","x":1527638400000,"y":0.0139992953561539,"color":"#6495ed"},{"sector":"Industrials","date":"2018-05-31","adjClose":73.3261062789,"daily_return":-0.0145364965508232,"coloract":"#ff9999","x":1527724800000,"y":-0.0145364965508232,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-01","adjClose":74.1338360901,"daily_return":0.0109553533907034,"coloract":"#6495ed","x":1527811200000,"y":0.0109553533907034,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-04","adjClose":74.0254820911,"daily_return":-0.00146266896537917,"coloract":"#ff9999","x":1528070400000,"y":-0.00146266896537917,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-05","adjClose":74.114135363,"daily_return":0.00119688823296382,"coloract":"#6495ed","x":1528156800000,"y":0.00119688823296382,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-06","adjClose":74.7347082668,"daily_return":0.00833834491772656,"coloract":"#6495ed","x":1528243200000,"y":0.00833834491772656,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-07","adjClose":75.0499199004,"daily_return":0.00420887113420676,"coloract":"#6495ed","x":1528329600000,"y":0.00420887113420676,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-08","adjClose":75.2961789892,"daily_return":0.00327589888725388,"coloract":"#6495ed","x":1528416000000,"y":0.00327589888725388,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-11","adjClose":75.4439344425,"daily_return":0.00196040054975466,"coloract":"#6495ed","x":1528675200000,"y":0.00196040054975466,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-12","adjClose":75.3651315341,"daily_return":-0.00104506867756093,"coloract":"#ff9999","x":1528761600000,"y":-0.00104506867756093,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-13","adjClose":74.7642593574,"daily_return":-0.00800476684279072,"coloract":"#ff9999","x":1528848000000,"y":-0.00800476684279072,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-14","adjClose":74.4785988144,"daily_return":-0.00382813483141575,"coloract":"#ff9999","x":1528934400000,"y":-0.00382813483141575,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-15","adjClose":74.2930179651,"daily_return":-0.00249484343284934,"coloract":"#ff9999","x":1529020800000,"y":-0.00249484343284934,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-18","adjClose":73.9864306972,"daily_return":-0.00413526901487771,"coloract":"#ff9999","x":1529280000000,"y":-0.00413526901487771,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-19","adjClose":72.4238246218,"daily_return":-0.0213463928111688,"coloract":"#ff9999","x":1529366400000,"y":-0.0213463928111688,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-20","adjClose":72.4732741811,"daily_return":0.000682547292226943,"coloract":"#6495ed","x":1529452800000,"y":0.000682547292226943,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-21","adjClose":71.5634022891,"daily_return":-0.0126340598386179,"coloract":"#ff9999","x":1529539200000,"y":-0.0126340598386179,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-22","adjClose":71.8106500858,"daily_return":0.00344899286447209,"coloract":"#6495ed","x":1529625600000,"y":0.00344899286447209,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-25","adjClose":70.9007781938,"daily_return":-0.012751385527217,"coloract":"#ff9999","x":1529884800000,"y":-0.012751385527217,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-26","adjClose":71.1678058143,"daily_return":0.0037591412178104,"coloract":"#6495ed","x":1529971200000,"y":0.0037591412178104,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-27","adjClose":70.5941909259,"daily_return":-0.00809269101972188,"coloract":"#ff9999","x":1530057600000,"y":-0.00809269101972188,"color":"#ff9999"},{"sector":"Industrials","date":"2018-06-28","adjClose":70.6930900446,"daily_return":0.00139997222925636,"coloract":"#6495ed","x":1530144000000,"y":0.00139997222925636,"color":"#6495ed"},{"sector":"Industrials","date":"2018-06-29","adjClose":70.8414387226,"daily_return":0.00209629033449055,"coloract":"#6495ed","x":1530230400000,"y":0.00209629033449055,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-02","adjClose":70.9996773125,"daily_return":0.00223120996181958,"coloract":"#6495ed","x":1530489600000,"y":0.00223120996181958,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-03","adjClose":70.7722093395,"daily_return":-0.00320893194783256,"coloract":"#ff9999","x":1530576000000,"y":-0.00320893194783256,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-05","adjClose":71.118356255,"daily_return":0.00487907847473945,"coloract":"#6495ed","x":1530748800000,"y":0.00487907847473945,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-06","adjClose":71.3656040517,"daily_return":0.00347053863937141,"coloract":"#6495ed","x":1530835200000,"y":0.00347053863937141,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-09","adjClose":72.6908522422,"daily_return":0.0183995304638884,"coloract":"#6495ed","x":1531094400000,"y":0.0183995304638884,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-10","adjClose":72.9183202152,"daily_return":0.00312436578273001,"coloract":"#6495ed","x":1531180800000,"y":0.00312436578273001,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-11","adjClose":71.721640879,"daily_return":-0.0165473861144614,"coloract":"#ff9999","x":1531267200000,"y":-0.0165473861144614,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-12","adjClose":72.5622833879,"daily_return":0.0116527468389256,"coloract":"#6495ed","x":1531353600000,"y":0.0116527468389256,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-13","adjClose":72.938100039,"daily_return":0.00516586249473772,"coloract":"#6495ed","x":1531440000000,"y":0.00516586249473772,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-16","adjClose":72.6414026829,"daily_return":-0.00407609260016972,"coloract":"#ff9999","x":1531699200000,"y":-0.00407609260016972,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-17","adjClose":72.9282101271,"daily_return":0.00394049018582265,"coloract":"#6495ed","x":1531785600000,"y":0.00394049018582265,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-18","adjClose":73.7292929886,"daily_return":0.0109246484054957,"coloract":"#6495ed","x":1531872000000,"y":0.0109246484054957,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-19","adjClose":73.699623253,"daily_return":-0.000402495477236364,"coloract":"#ff9999","x":1531958400000,"y":-0.000402495477236364,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-20","adjClose":73.620503958,"daily_return":-0.00107411395991353,"coloract":"#ff9999","x":1532044800000,"y":-0.00107411395991353,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-23","adjClose":73.165568012,"daily_return":-0.00619864536966119,"coloract":"#ff9999","x":1532304000000,"y":-0.00619864536966119,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-24","adjClose":73.47215528,"daily_return":0.00418156675994386,"coloract":"#6495ed","x":1532390400000,"y":0.00418156675994386,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-25","adjClose":74.5897153212,"daily_return":0.0150961386654762,"coloract":"#6495ed","x":1532476800000,"y":0.0150961386654762,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-26","adjClose":75.1633302097,"daily_return":0.00766084845689186,"coloract":"#6495ed","x":1532563200000,"y":0.00766084845689186,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-27","adjClose":75.1732201215,"daily_return":0.000131570290690775,"coloract":"#6495ed","x":1532649600000,"y":0.000131570290690775,"color":"#6495ed"},{"sector":"Industrials","date":"2018-07-30","adjClose":74.4314767313,"daily_return":-0.00991612541230058,"coloract":"#ff9999","x":1532908800000,"y":-0.00991612541230058,"color":"#ff9999"},{"sector":"Industrials","date":"2018-07-31","adjClose":76.0732021017,"daily_return":0.0218171355556978,"coloract":"#6495ed","x":1532995200000,"y":0.0218171355556978,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-01","adjClose":75.0446512672,"daily_return":-0.0136127756544537,"coloract":"#ff9999","x":1533081600000,"y":-0.0136127756544537,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-02","adjClose":74.9457521485,"daily_return":-0.0013187394763996,"coloract":"#ff9999","x":1533168000000,"y":-0.0013187394763996,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-03","adjClose":75.0149815316,"daily_return":0.000923300204248356,"coloract":"#6495ed","x":1533254400000,"y":0.000923300204248356,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-06","adjClose":75.1237705622,"daily_return":0.00144918014998829,"coloract":"#6495ed","x":1533513600000,"y":0.00144918014998829,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-07","adjClose":75.6578258032,"daily_return":0.00708385488888741,"coloract":"#6495ed","x":1533600000000,"y":0.00708385488888741,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-08","adjClose":75.3215687996,"daily_return":-0.00445435034978114,"coloract":"#ff9999","x":1533686400000,"y":-0.00445435034978114,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-09","adjClose":74.9061925011,"daily_return":-0.00552996800909789,"coloract":"#ff9999","x":1533772800000,"y":-0.00552996800909789,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-10","adjClose":74.2435684058,"daily_return":-0.0088854108891443,"coloract":"#ff9999","x":1533859200000,"y":-0.0088854108891443,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-13","adjClose":73.8875315785,"daily_return":-0.00480705959707883,"coloract":"#ff9999","x":1534118400000,"y":-0.00480705959707883,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-14","adjClose":74.4018069957,"daily_return":0.00693613558409467,"coloract":"#6495ed","x":1534204800000,"y":0.00693613558409467,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-15","adjClose":74.0457701684,"daily_return":-0.00479681132941501,"coloract":"#ff9999","x":1534291200000,"y":-0.00479681132941501,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-16","adjClose":74.985311796,"daily_return":0.0126088338453156,"coloract":"#6495ed","x":1534377600000,"y":0.0126088338453156,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-17","adjClose":75.440247742,"daily_return":0.00604867064395265,"coloract":"#6495ed","x":1534464000000,"y":0.00604867064395265,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-20","adjClose":75.9446332474,"daily_return":0.00666364261083618,"coloract":"#6495ed","x":1534723200000,"y":0.00666364261083618,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-21","adjClose":76.5083582239,"daily_return":0.0073954278016366,"coloract":"#6495ed","x":1534809600000,"y":0.0073954278016366,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-22","adjClose":75.7666148337,"daily_return":-0.0097422346159588,"coloract":"#ff9999","x":1534896000000,"y":-0.0097422346159588,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-23","adjClose":75.5490367726,"daily_return":-0.00287581897502243,"coloract":"#ff9999","x":1534982400000,"y":-0.00287581897502243,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-24","adjClose":75.8754038643,"daily_return":0.00431063302191603,"coloract":"#6495ed","x":1535068800000,"y":0.00431063302191603,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-27","adjClose":76.8347253156,"daily_return":0.0125641183863596,"coloract":"#6495ed","x":1535328000000,"y":0.0125641183863596,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-28","adjClose":76.6764867257,"daily_return":-0.00206159073126599,"coloract":"#ff9999","x":1535414400000,"y":-0.00206159073126599,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-29","adjClose":76.7358261969,"daily_return":0.000773594674754463,"coloract":"#6495ed","x":1535500800000,"y":0.000773594674754463,"color":"#6495ed"},{"sector":"Industrials","date":"2018-08-30","adjClose":76.201770956,"daily_return":-0.00698399113890602,"coloract":"#ff9999","x":1535587200000,"y":-0.00698399113890602,"color":"#ff9999"},{"sector":"Industrials","date":"2018-08-31","adjClose":76.2512205153,"daily_return":0.000648718802524151,"coloract":"#6495ed","x":1535673600000,"y":0.000648718802524151,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-04","adjClose":76.1918810441,"daily_return":-0.00077851307917598,"coloract":"#ff9999","x":1536019200000,"y":-0.00077851307917598,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-05","adjClose":76.7358261969,"daily_return":0.00711378541555785,"coloract":"#6495ed","x":1536105600000,"y":0.00711378541555785,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-06","adjClose":76.9731840818,"daily_return":0.00308840806579624,"coloract":"#6495ed","x":1536192000000,"y":0.00308840806579624,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-07","adjClose":76.7358261969,"daily_return":-0.00308840806579624,"coloract":"#ff9999","x":1536278400000,"y":-0.00308840806579624,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-10","adjClose":77.1314226717,"daily_return":0.00514206043671095,"coloract":"#6495ed","x":1536537600000,"y":0.00514206043671095,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-11","adjClose":77.111642848,"daily_return":-0.000256476020387808,"coloract":"#ff9999","x":1536624000000,"y":-0.000256476020387808,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-12","adjClose":77.3490007329,"daily_return":0.00307337929236517,"coloract":"#6495ed","x":1536710400000,"y":0.00307337929236517,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-13","adjClose":77.8138265907,"daily_return":0.00599147690636492,"coloract":"#6495ed","x":1536796800000,"y":0.00599147690636492,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-14","adjClose":78.1995331537,"daily_return":0.00494454256302834,"coloract":"#6495ed","x":1536883200000,"y":0.00494454256302834,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-17","adjClose":78.2292028893,"daily_return":0.000379338690656539,"coloract":"#6495ed","x":1537142400000,"y":0.000379338690656539,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-18","adjClose":78.9412765439,"daily_return":0.00906122484674921,"coloract":"#6495ed","x":1537228800000,"y":0.00906122484674921,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-19","adjClose":78.8720471608,"daily_return":-0.000877357955787694,"coloract":"#ff9999","x":1537315200000,"y":-0.000877357955787694,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-20","adjClose":78.9907261032,"daily_return":0.00150357126388379,"coloract":"#6495ed","x":1537401600000,"y":0.00150357126388379,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-21","adjClose":79.4988697751,"daily_return":0.00641235041640709,"coloract":"#6495ed","x":1537488000000,"y":0.00641235041640709,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-24","adjClose":78.1374516302,"daily_return":-0.0172733286704752,"coloract":"#ff9999","x":1537747200000,"y":-0.0172733286704752,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-25","adjClose":77.8989550209,"daily_return":-0.00305693780246941,"coloract":"#ff9999","x":1537833600000,"y":-0.00305693780246941,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-26","adjClose":77.8492682273,"daily_return":-0.000638039962823633,"coloract":"#ff9999","x":1537920000000,"y":-0.000638039962823633,"color":"#ff9999"},{"sector":"Industrials","date":"2018-09-27","adjClose":77.9585791732,"daily_return":0.0014031509408321,"coloract":"#6495ed","x":1538006400000,"y":0.0014031509408321,"color":"#6495ed"},{"sector":"Industrials","date":"2018-09-28","adjClose":77.9088923796,"daily_return":-0.000637551822557647,"coloract":"#ff9999","x":1538092800000,"y":-0.000637551822557647,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-01","adjClose":78.5945701314,"daily_return":0.00876251717483267,"coloract":"#6495ed","x":1538352000000,"y":0.00876251717483267,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-02","adjClose":78.7734425884,"daily_return":0.00227330231781586,"coloract":"#6495ed","x":1538438400000,"y":0.00227330231781586,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-03","adjClose":79.1013754262,"daily_return":0.00415434600099118,"coloract":"#6495ed","x":1538524800000,"y":0.00415434600099118,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-04","adjClose":78.8430040995,"daily_return":-0.00327167776327819,"coloract":"#ff9999","x":1538611200000,"y":-0.00327167776327819,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-05","adjClose":78.4355723919,"daily_return":-0.00518103136590398,"coloract":"#ff9999","x":1538697600000,"y":-0.00518103136590398,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-08","adjClose":78.6343195663,"daily_return":0.00253068590031003,"coloract":"#6495ed","x":1538956800000,"y":0.00253068590031003,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-09","adjClose":77.4219618022,"daily_return":-0.0155377552787179,"coloract":"#ff9999","x":1539043200000,"y":-0.0155377552787179,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-10","adjClose":74.927684763,"daily_return":-0.0327470393289513,"coloract":"#ff9999","x":1539129600000,"y":-0.0327470393289513,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-11","adjClose":72.9501503774,"daily_return":-0.0267471088904694,"coloract":"#ff9999","x":1539216000000,"y":-0.0267471088904694,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-12","adjClose":73.4370809548,"daily_return":0.00665266183183899,"coloract":"#6495ed","x":1539302400000,"y":0.00665266183183899,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-15","adjClose":73.5762039769,"daily_return":0.0018926597510518,"coloract":"#6495ed","x":1539561600000,"y":0.0018926597510518,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-16","adjClose":74.8183738171,"daily_return":0.0167418361562435,"coloract":"#6495ed","x":1539648000000,"y":0.0167418361562435,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-17","adjClose":74.2718190874,"daily_return":-0.00733189980464033,"coloract":"#ff9999","x":1539734400000,"y":-0.00733189980464033,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-18","adjClose":72.9898998123,"daily_return":-0.0174105214371272,"coloract":"#ff9999","x":1539820800000,"y":-0.0174105214371272,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-19","adjClose":72.7215911268,"daily_return":-0.00368274302894811,"coloract":"#ff9999","x":1539907200000,"y":-0.00368274302894811,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-22","adjClose":72.4731571587,"daily_return":-0.00342208259564636,"coloract":"#ff9999","x":1540166400000,"y":-0.00342208259564636,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-23","adjClose":71.2806741121,"daily_return":-0.0165910068574329,"coloract":"#ff9999","x":1540252800000,"y":-0.0165910068574329,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-24","adjClose":68.8658959427,"daily_return":-0.0344641639422134,"coloract":"#ff9999","x":1540339200000,"y":-0.0344641639422134,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-25","adjClose":69.3528265201,"daily_return":0.00704582683359689,"coloract":"#6495ed","x":1540425600000,"y":0.00704582683359689,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-26","adjClose":68.6671487682,"daily_return":-0.00993600225673674,"coloract":"#ff9999","x":1540512000000,"y":-0.00993600225673674,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-29","adjClose":67.5243525152,"daily_return":-0.0167825901762289,"coloract":"#ff9999","x":1540771200000,"y":-0.0167825901762289,"color":"#ff9999"},{"sector":"Industrials","date":"2018-10-30","adjClose":68.9155827363,"daily_return":0.0203940061642136,"coloract":"#6495ed","x":1540857600000,"y":0.0203940061642136,"color":"#6495ed"},{"sector":"Industrials","date":"2018-10-31","adjClose":69.4422627486,"daily_return":0.00761333850558987,"coloract":"#6495ed","x":1540944000000,"y":0.00761333850558987,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-01","adjClose":70.6645578713,"daily_return":0.0174484886282542,"coloract":"#6495ed","x":1541030400000,"y":0.0174484886282542,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-02","adjClose":70.5453095667,"daily_return":-0.0016889518432448,"coloract":"#ff9999","x":1541116800000,"y":-0.0016889518432448,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-05","adjClose":70.9129918394,"daily_return":0.00519846622031928,"coloract":"#6495ed","x":1541376000000,"y":0.00519846622031928,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-06","adjClose":71.6582937435,"daily_return":0.0104552426563327,"coloract":"#6495ed","x":1541462400000,"y":0.0104552426563327,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-07","adjClose":72.820964714,"daily_return":0.0160949894377511,"coloract":"#6495ed","x":1541548800000,"y":0.0160949894377511,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-08","adjClose":72.7017164093,"daily_return":-0.00163889684372354,"coloract":"#ff9999","x":1541635200000,"y":-0.00163889684372354,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-09","adjClose":71.9663518639,"daily_return":-0.0101663191849006,"coloract":"#ff9999","x":1541721600000,"y":-0.0101663191849006,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-12","adjClose":70.5453095667,"daily_return":-0.0199434822857789,"coloract":"#ff9999","x":1541980800000,"y":-0.0199434822857789,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-13","adjClose":70.8633050458,"daily_return":0.00449754798891089,"coloract":"#6495ed","x":1542067200000,"y":0.00449754798891089,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-14","adjClose":70.6248084365,"daily_return":-0.00337126320104986,"coloract":"#ff9999","x":1542153600000,"y":-0.00337126320104986,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-15","adjClose":71.5589201563,"daily_return":0.013139691421161,"coloract":"#6495ed","x":1542240000000,"y":0.013139691421161,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-16","adjClose":71.5390454389,"daily_return":-0.000277777778951993,"coloract":"#ff9999","x":1542326400000,"y":-0.000277777778951993,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-19","adjClose":70.4061865446,"daily_return":-0.0159622543445836,"coloract":"#ff9999","x":1542585600000,"y":-0.0159622543445836,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-20","adjClose":68.9453948125,"daily_return":-0.0209663245948244,"coloract":"#ff9999","x":1542672000000,"y":-0.0209663245948244,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-21","adjClose":69.4323253898,"daily_return":0.00703773102170757,"coloract":"#6495ed","x":1542758400000,"y":0.00703773102170757,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-23","adjClose":69.2932023677,"daily_return":-0.00200573133134796,"coloract":"#ff9999","x":1542931200000,"y":-0.00200573133134796,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-26","adjClose":69.8000076625,"daily_return":0.00728730809371037,"coloract":"#6495ed","x":1543190400000,"y":0.00728730809371037,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-27","adjClose":69.6807593579,"daily_return":-0.00170988927292903,"coloract":"#ff9999","x":1543276800000,"y":-0.00170988927292903,"color":"#ff9999"},{"sector":"Industrials","date":"2018-11-28","adjClose":71.3502356232,"daily_return":0.0236764160014573,"coloract":"#6495ed","x":1543363200000,"y":0.0236764160014573,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-29","adjClose":71.389985058,"daily_return":0.000556947938538777,"coloract":"#6495ed","x":1543449600000,"y":0.000556947938538777,"color":"#6495ed"},{"sector":"Industrials","date":"2018-11-30","adjClose":72.0856001686,"daily_return":0.00969670986175952,"coloract":"#6495ed","x":1543536000000,"y":0.00969670986175952,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-03","adjClose":72.9203383012,"daily_return":0.0115132850718469,"coloract":"#6495ed","x":1543795200000,"y":0.0115132850718469,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-04","adjClose":69.81988238,"daily_return":-0.0434487720890475,"coloract":"#ff9999","x":1543881600000,"y":-0.0434487720890475,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-06","adjClose":69.4323253898,"daily_return":-0.00556627427398837,"coloract":"#ff9999","x":1544054400000,"y":-0.00556627427398837,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-07","adjClose":67.603851385,"daily_return":-0.0266875882069968,"coloract":"#ff9999","x":1544140800000,"y":-0.0266875882069968,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-10","adjClose":67.7727864833,"daily_return":0.00249578049285848,"coloract":"#6495ed","x":1544400000000,"y":0.00249578049285848,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-11","adjClose":67.3752921344,"daily_return":-0.00588236990342761,"coloract":"#ff9999","x":1544486400000,"y":-0.00588236990342761,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-12","adjClose":67.7529117658,"daily_return":0.00558907176293832,"coloract":"#6495ed","x":1544572800000,"y":0.00558907176293832,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-13","adjClose":67.5641019501,"daily_return":-0.00279063117115541,"coloract":"#ff9999","x":1544659200000,"y":-0.00279063117115541,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-14","adjClose":66.6299902303,"daily_return":-0.0139220258098209,"coloract":"#ff9999","x":1544745600000,"y":-0.0139220258098209,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-17","adjClose":65.5368807709,"daily_return":-0.0165417305642368,"coloract":"#ff9999","x":1545004800000,"y":-0.0165417305642368,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-18","adjClose":65.8648136087,"daily_return":0.00499131339469638,"coloract":"#6495ed","x":1545091200000,"y":0.00499131339469638,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-19","adjClose":64.6226437684,"daily_return":-0.0190394906782849,"coloract":"#ff9999","x":1545177600000,"y":-0.0190394906782849,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-20","adjClose":63.4400980805,"daily_return":-0.0184687487394442,"coloract":"#ff9999","x":1545264000000,"y":-0.0184687487394442,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-21","adjClose":62.25,"daily_return":-0.0189375880162048,"coloract":"#ff9999","x":1545350400000,"y":-0.0189375880162048,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-24","adjClose":60.34,"daily_return":-0.0311633016139012,"coloract":"#ff9999","x":1545609600000,"y":-0.0311633016139012,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-26","adjClose":63.15,"daily_return":0.0455176150655845,"coloract":"#6495ed","x":1545782400000,"y":0.0455176150655845,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-27","adjClose":63.94,"daily_return":0.0124322948351958,"coloract":"#6495ed","x":1545868800000,"y":0.0124322948351958,"color":"#6495ed"},{"sector":"Industrials","date":"2018-12-28","adjClose":63.77,"daily_return":-0.0026622833045149,"coloract":"#ff9999","x":1545955200000,"y":-0.0026622833045149,"color":"#ff9999"},{"sector":"Industrials","date":"2018-12-31","adjClose":64.41,"daily_return":0.00998604023161853,"coloract":"#6495ed","x":1546214400000,"y":0.00998604023161853,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Information Technology 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Information Technology","date":"2018-01-02","adjClose":63.8049453677,"daily_return":0.0122777204724436,"coloract":"#6495ed","x":1514851200000,"y":0.0122777204724436,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-03","adjClose":64.3371460242,"daily_return":0.00830646215853381,"coloract":"#6495ed","x":1514937600000,"y":0.00830646215853381,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-04","adjClose":64.6623797586,"daily_return":0.00504241269942973,"coloract":"#6495ed","x":1515024000000,"y":0.00504241269942973,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-05","adjClose":65.3424139308,"daily_return":0.0104617738361057,"coloract":"#6495ed","x":1515110400000,"y":0.0104617738361057,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-08","adjClose":65.5888031236,"daily_return":0.00376364764928994,"coloract":"#6495ed","x":1515369600000,"y":0.00376364764928994,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-09","adjClose":65.4212584725,"daily_return":-0.00255773854922214,"coloract":"#ff9999","x":1515456000000,"y":-0.00255773854922214,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-10","adjClose":65.1945804151,"daily_return":-0.00347091573121894,"coloract":"#ff9999","x":1515542400000,"y":-0.00347091573121894,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-11","adjClose":65.4606807433,"daily_return":0.0040733253872558,"coloract":"#6495ed","x":1515628800000,"y":0.0040733253872558,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-12","adjClose":65.8450478841,"daily_return":0.00585455398925383,"coloract":"#6495ed","x":1515715200000,"y":0.00585455398925383,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-16","adjClose":65.5888031236,"daily_return":-0.00389922509606855,"coloract":"#ff9999","x":1516060800000,"y":-0.00389922509606855,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-17","adjClose":66.5743598948,"daily_return":0.0149145195650329,"coloract":"#6495ed","x":1516147200000,"y":0.0149145195650329,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-18","adjClose":66.6926267073,"daily_return":0.00177488583725971,"coloract":"#6495ed","x":1516233600000,"y":0.00177488583725971,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-19","adjClose":66.8207490876,"daily_return":0.00191924470286953,"coloract":"#6495ed","x":1516320000000,"y":0.00191924470286953,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-22","adjClose":67.4712165566,"daily_return":0.00968743815577255,"coloract":"#6495ed","x":1516579200000,"y":0.00968743815577255,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-23","adjClose":67.7668835879,"daily_return":0.00437254741170801,"coloract":"#6495ed","x":1516665600000,"y":0.00437254741170801,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-24","adjClose":67.2445384992,"daily_return":-0.00773782968675896,"coloract":"#ff9999","x":1516752000000,"y":-0.00773782968675896,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-25","adjClose":67.1262716867,"daily_return":-0.00176030557344387,"coloract":"#ff9999","x":1516838400000,"y":-0.00176030557344387,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-26","adjClose":68.1906729996,"daily_return":0.0157322982574888,"coloract":"#6495ed","x":1516924800000,"y":0.0157322982574888,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-01-29","adjClose":67.5697722337,"daily_return":-0.00914706922181008,"coloract":"#ff9999","x":1517184000000,"y":-0.00914706922181008,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-30","adjClose":66.9587270356,"daily_return":-0.00908431155639811,"coloract":"#ff9999","x":1517270400000,"y":-0.00908431155639811,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-01-31","adjClose":67.4613609889,"daily_return":0.00747858900181164,"coloract":"#6495ed","x":1517356800000,"y":0.00747858900181164,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-01","adjClose":67.5204943951,"daily_return":0.000876168279280165,"coloract":"#6495ed","x":1517443200000,"y":0.000876168279280165,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-02","adjClose":65.5198141496,"daily_return":-0.0300785694669807,"coloract":"#ff9999","x":1517529600000,"y":-0.0300785694669807,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-05","adjClose":62.7799663257,"daily_return":-0.0427165879683526,"coloract":"#ff9999","x":1517788800000,"y":-0.0427165879683526,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-06","adjClose":64.583535217,"daily_return":0.0283234904732348,"coloract":"#6495ed","x":1517875200000,"y":0.0283234904732348,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-07","adjClose":63.7556675291,"daily_return":-0.0129014229969018,"coloract":"#ff9999","x":1517961600000,"y":-0.0129014229969018,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-08","adjClose":61.1143753823,"daily_return":-0.0423109676937292,"coloract":"#ff9999","x":1518048000000,"y":-0.0423109676937292,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-09","adjClose":62.6124216745,"daily_return":0.0242165729161989,"coloract":"#6495ed","x":1518134400000,"y":0.0242165729161989,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-12","adjClose":63.7359563937,"daily_return":0.0177851801805149,"coloract":"#6495ed","x":1518393600000,"y":0.0177851801805149,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-13","adjClose":63.8936454771,"daily_return":0.00247104372852025,"coloract":"#6495ed","x":1518480000000,"y":0.00247104372852025,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-14","adjClose":65.0664580348,"daily_return":0.0181892672376547,"coloract":"#6495ed","x":1518566400000,"y":0.0181892672376547,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-15","adjClose":66.3082595666,"daily_return":0.0189052892409229,"coloract":"#6495ed","x":1518652800000,"y":0.0189052892409229,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-16","adjClose":66.2097038894,"daily_return":-0.00148743148174812,"coloract":"#ff9999","x":1518739200000,"y":-0.00148743148174812,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-20","adjClose":66.2688372957,"daily_return":0.000892724356687857,"coloract":"#6495ed","x":1519084800000,"y":0.000892724356687857,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-21","adjClose":65.8450478841,"daily_return":-0.00641553860276556,"coloract":"#ff9999","x":1519171200000,"y":-0.00641553860276556,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-22","adjClose":65.9238924258,"daily_return":0.0011967091929872,"coloract":"#6495ed","x":1519257600000,"y":0.0011967091929872,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-23","adjClose":67.3036719055,"daily_return":0.0207138638429063,"coloract":"#6495ed","x":1519344000000,"y":0.0207138638429063,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-26","adjClose":68.3582176507,"daily_return":0.0155469894994651,"coloract":"#6495ed","x":1519603200000,"y":0.0155469894994651,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-02-27","adjClose":67.6683279108,"daily_return":-0.0101435444435873,"coloract":"#ff9999","x":1519689600000,"y":-0.0101435444435873,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-02-28","adjClose":67.1854050929,"daily_return":-0.00716220265500844,"coloract":"#ff9999","x":1519776000000,"y":-0.00716220265500844,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-01","adjClose":66.0717259415,"daily_return":-0.0167151291999694,"coloract":"#ff9999","x":1519862400000,"y":-0.0167151291999694,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-02","adjClose":66.702482275,"daily_return":0.00950125912308408,"coloract":"#6495ed","x":1519948800000,"y":0.00950125912308408,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-05","adjClose":67.3825164472,"daily_return":0.0101434166287762,"coloract":"#6495ed","x":1520208000000,"y":0.0101434166287762,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-06","adjClose":67.5303499629,"daily_return":0.00219154153050383,"coloract":"#6495ed","x":1520294400000,"y":0.00219154153050383,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-07","adjClose":67.9048615359,"daily_return":0.00553050456284687,"coloract":"#6495ed","x":1520380800000,"y":0.00553050456284687,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-08","adjClose":68.2005285673,"daily_return":0.00434468460458337,"coloract":"#6495ed","x":1520467200000,"y":0.00434468460458337,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-09","adjClose":69.4916079375,"daily_return":0.0187536811062188,"coloract":"#6495ed","x":1520553600000,"y":0.0187536811062188,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-12","adjClose":69.7084304272,"daily_return":0.00311526731745726,"coloract":"#6495ed","x":1520812800000,"y":0.00311526731745726,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-13","adjClose":68.9101294425,"daily_return":-0.0115180797009877,"coloract":"#ff9999","x":1520899200000,"y":-0.0115180797009877,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-14","adjClose":68.8509960363,"daily_return":-0.000858491967545838,"coloract":"#ff9999","x":1520985600000,"y":-0.000858491967545838,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-15","adjClose":68.8904183071,"daily_return":0.00057240986037943,"coloract":"#6495ed","x":1521072000000,"y":0.00057240986037943,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-16","adjClose":68.8192088737,"daily_return":-0.00103419697235019,"coloract":"#ff9999","x":1521158400000,"y":-0.00103419697235019,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-19","adjClose":67.4548861005,"daily_return":-0.0200238843525495,"coloract":"#ff9999","x":1521417600000,"y":-0.0200238843525495,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-20","adjClose":67.4252269098,"daily_return":-0.000439785977578211,"coloract":"#ff9999","x":1521504000000,"y":-0.000439785977578211,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-21","adjClose":67.0198846365,"daily_return":-0.00602987340786409,"coloract":"#ff9999","x":1521590400000,"y":-0.00602987340786409,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-22","adjClose":65.2897651777,"daily_return":-0.0261540723905354,"coloract":"#ff9999","x":1521676800000,"y":-0.0261540723905354,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-23","adjClose":63.549759322,"daily_return":-0.0270120781820617,"coloract":"#ff9999","x":1521763200000,"y":-0.0270120781820617,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-26","adjClose":65.9620401674,"daily_return":0.0372562171803859,"coloract":"#6495ed","x":1522022400000,"y":0.0372562171803859,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-03-27","adjClose":63.8463512292,"daily_return":-0.0325999927200025,"coloract":"#ff9999","x":1522108800000,"y":-0.0325999927200025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-28","adjClose":63.4212361622,"daily_return":-0.00668067426807006,"coloract":"#ff9999","x":1522195200000,"y":-0.00668067426807006,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-03-29","adjClose":64.6768085694,"daily_return":0.0196039310476008,"coloract":"#6495ed","x":1522281600000,"y":0.0196039310476008,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-02","adjClose":63.1345306519,"daily_return":-0.0241348348222914,"coloract":"#ff9999","x":1522627200000,"y":-0.0241348348222914,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-03","adjClose":63.757373657,"daily_return":0.00981698573442014,"coloract":"#6495ed","x":1522713600000,"y":0.00981698573442014,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-04","adjClose":64.6471493787,"daily_return":0.0138591685511695,"coloract":"#6495ed","x":1522800000000,"y":0.0138591685511695,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-05","adjClose":64.9140820952,"daily_return":0.00412057050018877,"coloract":"#6495ed","x":1522886400000,"y":0.00412057050018877,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-06","adjClose":63.3223721931,"daily_return":-0.0248258837303705,"coloract":"#ff9999","x":1522972800000,"y":-0.0248258837303705,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-09","adjClose":63.8166920385,"daily_return":0.00777608895023096,"coloract":"#6495ed","x":1523232000000,"y":0.00777608895023096,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-10","adjClose":65.3886291468,"daily_return":0.0243335902608885,"coloract":"#6495ed","x":1523318400000,"y":0.0243335902608885,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-11","adjClose":65.0030596674,"daily_return":-0.00591403649583366,"coloract":"#ff9999","x":1523404800000,"y":-0.00591403649583366,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-12","adjClose":65.7840850231,"daily_return":0.0119435995324633,"coloract":"#6495ed","x":1523491200000,"y":0.0119435995324633,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-13","adjClose":65.5665842911,"daily_return":-0.00331175976379505,"coloract":"#ff9999","x":1523577600000,"y":-0.00331175976379505,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-16","adjClose":66.0707905334,"daily_return":0.00766057069613879,"coloract":"#6495ed","x":1523836800000,"y":0.00766057069613879,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-17","adjClose":67.29670375,"daily_return":0.018384505937763,"coloract":"#6495ed","x":1523923200000,"y":0.018384505937763,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-18","adjClose":67.1187486056,"daily_return":-0.00264783914724731,"coloract":"#ff9999","x":1524009600000,"y":-0.00264783914724731,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-19","adjClose":66.3772688375,"daily_return":-0.0111087567621349,"coloract":"#ff9999","x":1524096000000,"y":-0.0111087567621349,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-20","adjClose":65.4578339251,"daily_return":-0.0139484826150573,"coloract":"#ff9999","x":1524182400000,"y":-0.0139484826150573,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-23","adjClose":65.2205603994,"daily_return":-0.00363141570071868,"coloract":"#ff9999","x":1524441600000,"y":-0.00363141570071868,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-24","adjClose":64.083624755,"daily_return":-0.017585895521794,"coloract":"#ff9999","x":1524528000000,"y":-0.017585895521794,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-25","adjClose":64.0935111519,"daily_return":0.000154261473384487,"coloract":"#6495ed","x":1524614400000,"y":0.000154261473384487,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-26","adjClose":65.260105987,"daily_return":0.0180377865138439,"coloract":"#6495ed","x":1524700800000,"y":0.0180377865138439,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-04-27","adjClose":65.1414692241,"daily_return":-0.00181956077508794,"coloract":"#ff9999","x":1524787200000,"y":-0.00181956077508794,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-04-30","adjClose":64.7163541571,"daily_return":-0.00654741585228713,"coloract":"#ff9999","x":1525046400000,"y":-0.00654741585228713,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-01","adjClose":65.5270387035,"daily_return":0.0124489234849827,"coloract":"#6495ed","x":1525132800000,"y":0.0124489234849827,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-02","adjClose":65.4578339251,"daily_return":-0.00105668362232336,"coloract":"#ff9999","x":1525219200000,"y":-0.00105668362232336,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-03","adjClose":65.6061298788,"daily_return":0.0022629563868044,"coloract":"#6495ed","x":1525305600000,"y":0.0022629563868044,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-04","adjClose":66.8518158891,"daily_return":0.0188093319566436,"coloract":"#6495ed","x":1525392000000,"y":0.0188093319566436,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-07","adjClose":67.3164765438,"daily_return":0.00692656221578059,"coloract":"#6495ed","x":1525651200000,"y":0.00692656221578059,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-08","adjClose":67.4647724974,"daily_return":0.00220054368834255,"coloract":"#6495ed","x":1525737600000,"y":0.00220054368834255,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-09","adjClose":68.2952298376,"daily_return":0.012234350094503,"coloract":"#6495ed","x":1525824000000,"y":0.012234350094503,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-10","adjClose":69.1850055593,"daily_return":0.0129442336613144,"coloract":"#6495ed","x":1525910400000,"y":0.0129442336613144,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-11","adjClose":69.0861415902,"daily_return":-0.00143000167403518,"coloract":"#ff9999","x":1525996800000,"y":-0.00143000167403518,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-14","adjClose":69.0762551933,"daily_return":-0.00014311270138645,"coloract":"#ff9999","x":1526256000000,"y":-0.00014311270138645,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-15","adjClose":68.4237529974,"daily_return":-0.00949101171057798,"coloract":"#ff9999","x":1526342400000,"y":-0.00949101171057798,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-16","adjClose":68.7302313016,"daily_return":0.00446912010430811,"coloract":"#6495ed","x":1526428800000,"y":0.00446912010430811,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-17","adjClose":68.3743210129,"daily_return":-0.00519182014243569,"coloract":"#ff9999","x":1526515200000,"y":-0.00519182014243569,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-18","adjClose":68.0876155026,"daily_return":-0.00420199125818677,"coloract":"#ff9999","x":1526601600000,"y":-0.00420199125818677,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-21","adjClose":68.680799317,"daily_return":0.00867433514737215,"coloract":"#6495ed","x":1526860800000,"y":0.00867433514737215,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-22","adjClose":68.5819353479,"daily_return":-0.00144050730793133,"coloract":"#ff9999","x":1526947200000,"y":-0.00144050730793133,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-23","adjClose":69.0861415902,"daily_return":0.00732498786883795,"coloract":"#6495ed","x":1527033600000,"y":0.00732498786883795,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-24","adjClose":69.007050415,"daily_return":-0.00114547549665023,"coloract":"#ff9999","x":1527120000000,"y":-0.00114547549665023,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-25","adjClose":68.9576184304,"daily_return":-0.000716589067750739,"coloract":"#ff9999","x":1527206400000,"y":-0.000716589067750739,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-29","adjClose":68.5819353479,"daily_return":-0.00546292330443698,"coloract":"#ff9999","x":1527552000000,"y":-0.00546292330443698,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-05-30","adjClose":69.0861415902,"daily_return":0.00732498786883795,"coloract":"#6495ed","x":1527638400000,"y":0.00732498786883795,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-05-31","adjClose":69.105914384,"daily_return":0.000286163973688858,"coloract":"#6495ed","x":1527724800000,"y":0.000286163973688858,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-01","adjClose":70.282395616,"daily_return":0.0168810307015947,"coloract":"#6495ed","x":1527811200000,"y":0.0168810307015947,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-04","adjClose":70.8459202398,"daily_return":0.00798603193637337,"coloract":"#6495ed","x":1528070400000,"y":0.00798603193637337,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-05","adjClose":71.0930801625,"daily_return":0.0034826252377389,"coloract":"#6495ed","x":1528156800000,"y":0.0034826252377389,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-06","adjClose":71.5577408171,"daily_return":0.00651468102039932,"coloract":"#6495ed","x":1528243200000,"y":0.00651468102039932,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-07","adjClose":70.9843297965,"daily_return":-0.00804554208085584,"coloract":"#ff9999","x":1528329600000,"y":-0.00804554208085584,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-08","adjClose":70.8656930336,"daily_return":-0.00167270738762948,"coloract":"#ff9999","x":1528416000000,"y":-0.00167270738762948,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-11","adjClose":70.9447842089,"daily_return":0.00111544908441985,"coloract":"#6495ed","x":1528675200000,"y":0.00111544908441985,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-12","adjClose":71.2908081006,"daily_return":0.00486551317720441,"coloract":"#6495ed","x":1528761600000,"y":0.00486551317720441,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-13","adjClose":70.925011415,"daily_return":-0.00514425882480474,"coloract":"#ff9999","x":1528848000000,"y":-0.00514425882480474,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-14","adjClose":71.4292176573,"daily_return":0.00708385488859076,"coloract":"#6495ed","x":1528934400000,"y":0.00708385488859076,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-15","adjClose":71.1576383343,"daily_return":-0.00380932238833775,"coloract":"#ff9999","x":1529020800000,"y":-0.00380932238833775,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-18","adjClose":71.2370110485,"daily_return":0.00111482731640056,"coloract":"#6495ed","x":1529280000000,"y":0.00111482731640056,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-19","adjClose":70.8699122451,"daily_return":-0.00516652688654595,"coloract":"#ff9999","x":1529366400000,"y":-0.00516652688654595,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-20","adjClose":71.0187360843,"daily_return":0.00209775617046493,"coloract":"#6495ed","x":1529452800000,"y":0.00209775617046493,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-21","adjClose":70.4730486738,"daily_return":-0.00771338232761121,"coloract":"#ff9999","x":1529539200000,"y":-0.00771338232761121,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-22","adjClose":70.2448521203,"daily_return":-0.00324332231007052,"coloract":"#ff9999","x":1529625600000,"y":-0.00324332231007052,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-25","adjClose":68.7863784957,"daily_return":-0.0209812877462685,"coloract":"#ff9999","x":1529884800000,"y":-0.0209812877462685,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-26","adjClose":69.0641829957,"daily_return":0.00403052222747124,"coloract":"#6495ed","x":1529971200000,"y":0.00403052222747124,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-27","adjClose":68.1216320138,"daily_return":-0.0137414471519026,"coloract":"#ff9999","x":1530057600000,"y":-0.0137414471519026,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-06-28","adjClose":68.9550455136,"daily_return":0.0121599645421879,"coloract":"#6495ed","x":1530144000000,"y":0.0121599645421879,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-06-29","adjClose":68.9252807457,"daily_return":-0.000431747866716847,"coloract":"#ff9999","x":1530230400000,"y":-0.000431747866716847,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-02","adjClose":69.5404192812,"daily_return":0.0088851258072058,"coloract":"#6495ed","x":1530489600000,"y":0.0088851258072058,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-03","adjClose":68.7169273708,"daily_return":-0.0119125915372393,"coloract":"#ff9999","x":1530576000000,"y":-0.0119125915372393,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-05","adjClose":69.6892431205,"daily_return":0.014050410352759,"coloract":"#6495ed","x":1530748800000,"y":0.014050410352759,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-06","adjClose":70.5028134416,"daily_return":0.0116066412650611,"coloract":"#6495ed","x":1530835200000,"y":0.0116066412650611,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-09","adjClose":71.0385792629,"daily_return":0.00757048337433641,"coloract":"#6495ed","x":1531094400000,"y":0.00757048337433641,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-10","adjClose":71.2072462807,"daily_return":0.00237148747533844,"coloract":"#6495ed","x":1531180800000,"y":0.00237148747533844,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-11","adjClose":70.9294417808,"daily_return":-0.00390898166306819,"coloract":"#ff9999","x":1531267200000,"y":-0.00390898166306819,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-12","adjClose":72.0505813697,"daily_return":0.0156827862070719,"coloract":"#6495ed","x":1531353600000,"y":0.0156827862070719,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-13","adjClose":71.9712086554,"daily_return":-0.0011022321319869,"coloract":"#ff9999","x":1531440000000,"y":-0.0011022321319869,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-16","adjClose":71.8025416376,"daily_return":-0.00234628497667977,"coloract":"#ff9999","x":1531699200000,"y":-0.00234628497667977,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-17","adjClose":72.3383074589,"daily_return":0.00743395494090926,"coloract":"#6495ed","x":1531785600000,"y":0.00743395494090926,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-18","adjClose":72.2192483875,"daily_return":-0.00164722068830692,"coloract":"#ff9999","x":1531872000000,"y":-0.00164722068830692,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-19","adjClose":71.9612870662,"daily_return":-0.00357831375421114,"coloract":"#ff9999","x":1531958400000,"y":-0.00357831375421114,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-20","adjClose":71.9811302447,"daily_return":0.000275709953972303,"coloract":"#6495ed","x":1532044800000,"y":0.000275709953972303,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-23","adjClose":72.3482290482,"daily_return":0.00508697048091022,"coloract":"#6495ed","x":1532304000000,"y":0.00508697048091022,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-24","adjClose":72.7450926195,"daily_return":0.00547047316102667,"coloract":"#6495ed","x":1532390400000,"y":0.00547047316102667,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-25","adjClose":73.6578788335,"daily_return":0.0124696655065408,"coloract":"#6495ed","x":1532476800000,"y":0.0124696655065408,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-07-26","adjClose":72.5268176553,"daily_return":-0.0154747217220974,"coloract":"#ff9999","x":1532563200000,"y":-0.0154747217220974,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-27","adjClose":71.2866189949,"daily_return":-0.0172477542318719,"coloract":"#ff9999","x":1532649600000,"y":-0.0172477542318719,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-30","adjClose":70.1754009953,"daily_return":-0.0157108014765353,"coloract":"#ff9999","x":1532908800000,"y":-0.0157108014765353,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-07-31","adjClose":70.3639111917,"daily_return":0.00268267015856427,"coloract":"#6495ed","x":1532995200000,"y":0.00268267015856427,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-01","adjClose":70.9988929058,"daily_return":0.00898377743476608,"coloract":"#6495ed","x":1533081600000,"y":0.00898377743476608,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-02","adjClose":71.8918359412,"daily_return":0.0124984268260251,"coloract":"#6495ed","x":1533168000000,"y":0.0124984268260251,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-03","adjClose":72.1497972625,"daily_return":0.00358176440165803,"coloract":"#6495ed","x":1533254400000,"y":0.00358176440165803,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-06","adjClose":72.5367392445,"daily_return":0.00534870643574781,"coloract":"#6495ed","x":1533513600000,"y":0.00534870643574781,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-07","adjClose":72.8145437445,"daily_return":0.0038225302529753,"coloract":"#6495ed","x":1533600000000,"y":0.0038225302529753,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-08","adjClose":73.0129755301,"daily_return":0.00272146038084298,"coloract":"#6495ed","x":1533686400000,"y":0.00272146038084298,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-09","adjClose":73.042740298,"daily_return":0.000407581013084801,"coloract":"#6495ed","x":1533772800000,"y":0.000407581013084801,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-10","adjClose":72.4573665303,"daily_return":-0.0080464123192785,"coloract":"#ff9999","x":1533859200000,"y":-0.0080464123192785,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-13","adjClose":72.3581506375,"daily_return":-0.00137023863552788,"coloract":"#ff9999","x":1534118400000,"y":-0.00137023863552788,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-14","adjClose":72.8046221552,"daily_return":0.00615134193080369,"coloract":"#6495ed","x":1534204800000,"y":0.00615134193080369,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-15","adjClose":72.1497972625,"daily_return":-0.0090349690586482,"coloract":"#ff9999","x":1534291200000,"y":-0.0090349690586482,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-16","adjClose":72.4672881196,"daily_return":0.00439078641830815,"coloract":"#6495ed","x":1534377600000,"y":0.00439078641830815,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-17","adjClose":72.5764256017,"daily_return":0.0015048911793123,"coloract":"#6495ed","x":1534464000000,"y":0.0015048911793123,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-20","adjClose":72.4672881196,"daily_return":-0.0015048911793123,"coloract":"#ff9999","x":1534723200000,"y":-0.0015048911793123,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-21","adjClose":72.586347191,"daily_return":0.00164158723608399,"coloract":"#6495ed","x":1534809600000,"y":0.00164158723608399,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-22","adjClose":72.8046221552,"daily_return":0.00300259540425607,"coloract":"#6495ed","x":1534896000000,"y":0.00300259540425607,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-23","adjClose":72.9633675837,"daily_return":0.00217805694570927,"coloract":"#6495ed","x":1534982400000,"y":0.00217805694570927,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-24","adjClose":73.6975651906,"daily_return":0.0100122606112842,"coloract":"#6495ed","x":1535068800000,"y":0.0100122606112842,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-27","adjClose":74.3722332618,"daily_return":0.00911290144550403,"coloract":"#6495ed","x":1535328000000,"y":0.00911290144550403,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-28","adjClose":74.5012139225,"daily_return":0.00173275618199131,"coloract":"#6495ed","x":1535414400000,"y":0.00173275618199131,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-29","adjClose":75.1758819937,"daily_return":0.00901504183133106,"coloract":"#6495ed","x":1535500800000,"y":0.00901504183133106,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-08-30","adjClose":74.9476854402,"daily_return":-0.00304011865899678,"coloract":"#ff9999","x":1535587200000,"y":-0.00304011865899678,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-08-31","adjClose":75.0072149759,"daily_return":0.000793965901241478,"coloract":"#6495ed","x":1535673600000,"y":0.000793965901241478,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-04","adjClose":74.7194888867,"daily_return":-0.00384335507231715,"coloract":"#ff9999","x":1536019200000,"y":-0.00384335507231715,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-05","adjClose":73.7868594941,"daily_return":-0.0125602933986286,"coloract":"#ff9999","x":1536105600000,"y":-0.0125602933986286,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-06","adjClose":73.2510936729,"daily_return":-0.00728748164336945,"coloract":"#ff9999","x":1536192000000,"y":-0.00728748164336945,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-07","adjClose":73.0030539408,"daily_return":-0.00339190339495055,"coloract":"#ff9999","x":1536278400000,"y":-0.00339190339495055,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-10","adjClose":73.2312504943,"daily_return":0.00312097410535994,"coloract":"#6495ed","x":1536537600000,"y":0.00312097410535994,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-11","adjClose":73.8563106191,"daily_return":0.00849920799210402,"coloract":"#6495ed","x":1536624000000,"y":0.00849920799210402,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-12","adjClose":73.5487413514,"daily_return":-0.00417312310463025,"coloract":"#ff9999","x":1536710400000,"y":-0.00417312310463025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-13","adjClose":74.4119196189,"daily_return":0.0116678048666046,"coloract":"#6495ed","x":1536796800000,"y":0.0116678048666046,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-14","adjClose":74.3523900832,"daily_return":-0.000800320170834645,"coloract":"#ff9999","x":1536883200000,"y":-0.000800320170834645,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-17","adjClose":73.4197606907,"daily_return":-0.0126227001605983,"coloract":"#ff9999","x":1537142400000,"y":-0.0126227001605983,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-18","adjClose":73.886075387,"daily_return":0.00633126651867233,"coloract":"#6495ed","x":1537228800000,"y":0.00633126651867233,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-19","adjClose":73.6975651906,"daily_return":-0.00255462323848299,"coloract":"#ff9999","x":1537315200000,"y":-0.00255462323848299,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-20","adjClose":74.5706650475,"daily_return":0.0117774380612659,"coloract":"#6495ed","x":1537401600000,"y":0.0117774380612659,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-21","adjClose":74.2773828683,"daily_return":-0.00394069741377745,"coloract":"#ff9999","x":1537488000000,"y":-0.00394069741377745,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-24","adjClose":74.6457333797,"daily_return":0.00494686482331641,"coloract":"#6495ed","x":1537747200000,"y":0.00494686482331641,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-25","adjClose":74.5561346067,"daily_return":-0.00120104104566199,"coloract":"#ff9999","x":1537833600000,"y":-0.00120104104566199,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-26","adjClose":74.2773828683,"daily_return":-0.00374582377765442,"coloract":"#ff9999","x":1537920000000,"y":-0.00374582377765442,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-09-27","adjClose":74.7154213144,"daily_return":0.0058800115963118,"coloract":"#6495ed","x":1538006400000,"y":0.0058800115963118,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-09-28","adjClose":74.9941730528,"daily_return":0.00372390375793419,"coloract":"#6495ed","x":1538092800000,"y":0.00372390375793419,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-01","adjClose":75.352568145,"daily_return":0.00476758948284228,"coloract":"#6495ed","x":1538352000000,"y":0.00476758948284228,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-02","adjClose":75.3625235642,"daily_return":0.000132109121940616,"coloract":"#6495ed","x":1538438400000,"y":0.000132109121940616,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-03","adjClose":75.5914982065,"daily_return":0.00303370278214921,"coloract":"#6495ed","x":1538524800000,"y":0.00303370278214921,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-04","adjClose":74.2276057721,"daily_return":-0.0182076928479997,"coloract":"#ff9999","x":1538611200000,"y":-0.0182076928479997,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-05","adjClose":73.2917963646,"daily_return":-0.0126874424259897,"coloract":"#ff9999","x":1538697600000,"y":-0.0126874424259897,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-08","adjClose":72.4654965686,"daily_return":-0.0113381448205025,"coloract":"#ff9999","x":1538956800000,"y":-0.0113381448205025,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-09","adjClose":72.7243374685,"daily_return":0.00356555506576406,"coloract":"#6495ed","x":1539043200000,"y":0.00356555506576406,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-10","adjClose":69.2001190614,"daily_return":-0.0496735110843458,"coloract":"#ff9999","x":1539129600000,"y":-0.0496735110843458,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-11","adjClose":68.3240421693,"daily_return":-0.0127408701909753,"coloract":"#ff9999","x":1539216000000,"y":-0.0127408701909753,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-12","adjClose":70.5142343997,"daily_return":0.0315528828449656,"coloract":"#6495ed","x":1539302400000,"y":0.0315528828449656,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-15","adjClose":69.3594057691,"daily_return":-0.0165128307238591,"coloract":"#ff9999","x":1539561600000,"y":-0.0165128307238591,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-16","adjClose":71.4500438072,"daily_return":0.0296967523998157,"coloract":"#6495ed","x":1539648000000,"y":0.0296967523998157,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-17","adjClose":71.1215149726,"daily_return":-0.00460862487429825,"coloract":"#ff9999","x":1539734400000,"y":-0.00460862487429825,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-18","adjClose":69.7277562806,"daily_return":-0.0197914291495564,"coloract":"#ff9999","x":1539820800000,"y":-0.0197914291495564,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-19","adjClose":69.6978900229,"daily_return":-0.000428418428727539,"coloract":"#ff9999","x":1539907200000,"y":-0.000428418428727539,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-22","adjClose":70.2753043382,"daily_return":0.00825040241845176,"coloract":"#6495ed","x":1540166400000,"y":0.00825040241845176,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-23","adjClose":70.006508019,"daily_return":-0.00383223803066457,"coloract":"#ff9999","x":1540252800000,"y":-0.00383223803066457,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-24","adjClose":66.8705509618,"daily_return":-0.0458295340986705,"coloract":"#ff9999","x":1540339200000,"y":-0.0458295340986705,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-25","adjClose":69.1702528037,"daily_return":0.0338122220938439,"coloract":"#6495ed","x":1540425600000,"y":0.0338122220938439,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-26","adjClose":67.7864495309,"daily_return":-0.0202085818773927,"coloract":"#ff9999","x":1540512000000,"y":-0.0202085818773927,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-29","adjClose":66.6415763196,"daily_return":-0.0170336637110067,"coloract":"#ff9999","x":1540771200000,"y":-0.0170336637110067,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-10-30","adjClose":67.3882327617,"daily_return":0.0111417627361101,"coloract":"#6495ed","x":1540857600000,"y":0.0111417627361101,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-10-31","adjClose":68.9910552576,"daily_return":0.023506447675584,"coloract":"#6495ed","x":1540944000000,"y":0.023506447675584,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-01","adjClose":69.7974442152,"daily_return":0.0116205310236444,"coloract":"#6495ed","x":1541030400000,"y":0.0116205310236444,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-02","adjClose":68.4335517808,"daily_return":-0.0197341657973888,"coloract":"#ff9999","x":1541116800000,"y":-0.0197341657973888,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-05","adjClose":68.3638638462,"daily_return":-0.00101884878904901,"coloract":"#ff9999","x":1541376000000,"y":-0.00101884878904901,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-06","adjClose":68.791946873,"daily_return":0.0062423081402958,"coloract":"#6495ed","x":1541462400000,"y":0.0062423081402958,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-07","adjClose":70.8128969765,"daily_return":0.0289544579717305,"coloract":"#6495ed","x":1541548800000,"y":0.0289544579717305,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-08","adjClose":70.7531644612,"daily_return":-0.000843881905566946,"coloract":"#ff9999","x":1541635200000,"y":-0.000843881905566946,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-09","adjClose":69.528647896,"daily_return":-0.0174583953077576,"coloract":"#ff9999","x":1541721600000,"y":-0.0174583953077576,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-12","adjClose":67.0796147656,"daily_return":-0.0358586735535757,"coloract":"#ff9999","x":1541980800000,"y":-0.0358586735535757,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-13","adjClose":67.1592581195,"daily_return":0.0011865916560998,"coloract":"#6495ed","x":1542067200000,"y":0.0011865916560998,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-14","adjClose":66.3528691619,"daily_return":-0.012079783009435,"coloract":"#ff9999","x":1542153600000,"y":-0.012079783009435,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-15","adjClose":68.0154241732,"daily_return":0.0247475028562087,"coloract":"#6495ed","x":1542240000000,"y":0.0247475028562087,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-16","adjClose":67.9059145617,"daily_return":-0.00161136781339088,"coloract":"#ff9999","x":1542326400000,"y":-0.00161136781339088,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-19","adjClose":65.3175055621,"daily_return":-0.0388630583103575,"coloract":"#ff9999","x":1542585600000,"y":-0.0388630583103575,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-20","adjClose":63.9137914508,"daily_return":-0.0217249126608303,"coloract":"#ff9999","x":1542672000000,"y":-0.0217249126608303,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-21","adjClose":64.3816961546,"daily_return":0.00729420476308995,"coloract":"#6495ed","x":1542758400000,"y":0.00729420476308995,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-23","adjClose":63.79432642,"daily_return":-0.00916511269969877,"coloract":"#ff9999","x":1542931200000,"y":-0.00916511269969877,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-26","adjClose":65.2378622083,"daily_return":0.0223757502925608,"coloract":"#6495ed","x":1543190400000,"y":0.0223757502925608,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-27","adjClose":65.3672826582,"daily_return":0.00198185902084358,"coloract":"#6495ed","x":1543276800000,"y":0.00198185902084358,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-28","adjClose":67.6570290809,"daily_return":0.0344293847304247,"coloract":"#6495ed","x":1543363200000,"y":0.0344293847304247,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-11-29","adjClose":66.9999714118,"daily_return":-0.00975906015275108,"coloract":"#ff9999","x":1543449600000,"y":-0.00975906015275108,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-11-30","adjClose":67.6371182425,"daily_return":0.0094647260823173,"coloract":"#6495ed","x":1543536000000,"y":0.0094647260823173,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-03","adjClose":69.1304311268,"daily_return":0.0218381076187182,"coloract":"#6495ed","x":1543795200000,"y":0.0218381076187182,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-04","adjClose":66.5121558696,"daily_return":-0.0386103004139473,"coloract":"#ff9999","x":1543881600000,"y":-0.0386103004139473,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-06","adjClose":66.661487158,"daily_return":0.00224265624328712,"coloract":"#6495ed","x":1544054400000,"y":0.00224265624328712,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-07","adjClose":64.3120082199,"daily_return":-0.0358810153931968,"coloract":"#ff9999","x":1544140800000,"y":-0.0358810153931968,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-10","adjClose":65.1980405313,"daily_return":0.0136830484415791,"coloract":"#6495ed","x":1544400000000,"y":0.0136830484415791,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-11","adjClose":65.2776838852,"daily_return":0.00122081504659644,"coloract":"#6495ed","x":1544486400000,"y":0.00122081504659644,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-12","adjClose":65.7854102659,"daily_return":0.00774785493743746,"coloract":"#6495ed","x":1544572800000,"y":0.00774785493743746,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-13","adjClose":65.8949198774,"daily_return":0.00166326491780389,"coloract":"#6495ed","x":1544659200000,"y":0.00166326491780389,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-14","adjClose":64.2821419623,"daily_return":-0.02477948749224,"coloract":"#ff9999","x":1544745600000,"y":-0.02477948749224,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-17","adjClose":62.9182495279,"daily_return":-0.0214456054857752,"coloract":"#ff9999","x":1545004800000,"y":-0.0214456054857752,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-18","adjClose":63.4160204893,"daily_return":0.00788026142444043,"coloract":"#6495ed","x":1545091200000,"y":0.00788026142444043,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-19","adjClose":62.1616376665,"daily_return":-0.0199784669298362,"coloract":"#ff9999","x":1545177600000,"y":-0.0199784669298362,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-20","adjClose":61.0466307128,"daily_return":-0.0181000416442867,"coloract":"#ff9999","x":1545264000000,"y":-0.0181000416442867,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-21","adjClose":59.2,"daily_return":-0.0307164681642602,"coloract":"#ff9999","x":1545350400000,"y":-0.0307164681642602,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-24","adjClose":57.62,"daily_return":-0.0270518122335783,"coloract":"#ff9999","x":1545609600000,"y":-0.0270518122335783,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-26","adjClose":61.1,"daily_return":0.0586421365211676,"coloract":"#6495ed","x":1545782400000,"y":0.0586421365211676,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-27","adjClose":61.54,"daily_return":0.00717550371634612,"coloract":"#6495ed","x":1545868800000,"y":0.00717550371634612,"color":"#6495ed"},{"sector":"Information Technology","date":"2018-12-28","adjClose":61.4,"daily_return":-0.0022775347407995,"coloract":"#ff9999","x":1545955200000,"y":-0.0022775347407995,"color":"#ff9999"},{"sector":"Information Technology","date":"2018-12-31","adjClose":61.98,"daily_return":0.00940191720650585,"coloract":"#6495ed","x":1546214400000,"y":0.00940191720650585,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Market 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Market","date":"2018-01-02","adjClose":263.7269710627,"daily_return":0.00713181896317661,"coloract":"#6495ed","x":1514851200000,"y":0.00713181896317661,"color":"#6495ed"},{"sector":"Market","date":"2018-01-03","adjClose":265.3950733465,"daily_return":0.00630519112845995,"coloract":"#6495ed","x":1514937600000,"y":0.00630519112845995,"color":"#6495ed"},{"sector":"Market","date":"2018-01-04","adjClose":266.5136831132,"daily_return":0.00420602745186649,"coloract":"#6495ed","x":1515024000000,"y":0.00420602745186649,"color":"#6495ed"},{"sector":"Market","date":"2018-01-05","adjClose":268.2897214271,"daily_return":0.00664186064589867,"coloract":"#6495ed","x":1515110400000,"y":0.00664186064589867,"color":"#6495ed"},{"sector":"Market","date":"2018-01-08","adjClose":268.7803397459,"daily_return":0.00182701844970445,"coloract":"#6495ed","x":1515369600000,"y":0.00182701844970445,"color":"#6495ed"},{"sector":"Market","date":"2018-01-09","adjClose":269.3887064611,"daily_return":0.00226087686993459,"coloract":"#6495ed","x":1515456000000,"y":0.00226087686993459,"color":"#6495ed"},{"sector":"Market","date":"2018-01-10","adjClose":268.9765870734,"daily_return":-0.00153100310569432,"coloract":"#ff9999","x":1515542400000,"y":-0.00153100310569432,"color":"#ff9999"},{"sector":"Market","date":"2018-01-11","adjClose":270.9390603484,"daily_return":0.00726958711760073,"coloract":"#6495ed","x":1515628800000,"y":0.00726958711760073,"color":"#6495ed"},{"sector":"Market","date":"2018-01-12","adjClose":272.7052862959,"daily_return":0.0064977486574751,"coloract":"#6495ed","x":1515715200000,"y":0.0064977486574751,"color":"#6495ed"},{"sector":"Market","date":"2018-01-16","adjClose":271.7731114903,"daily_return":-0.00342410541965865,"coloract":"#ff9999","x":1516060800000,"y":-0.00342410541965865,"color":"#ff9999"},{"sector":"Market","date":"2018-01-17","adjClose":274.3635762133,"daily_return":0.00948657802611486,"coloract":"#6495ed","x":1516147200000,"y":0.00948657802611486,"color":"#6495ed"},{"sector":"Market","date":"2018-01-18","adjClose":273.9023949937,"daily_return":-0.00168232701860127,"coloract":"#ff9999","x":1516233600000,"y":-0.00168232701860127,"color":"#ff9999"},{"sector":"Market","date":"2018-01-19","adjClose":275.1485655233,"daily_return":0.00453936978198044,"coloract":"#6495ed","x":1516320000000,"y":0.00453936978198044,"color":"#6495ed"},{"sector":"Market","date":"2018-01-22","adjClose":277.3857850568,"daily_return":0.00809807302411691,"coloract":"#6495ed","x":1516579200000,"y":0.00809807302411691,"color":"#6495ed"},{"sector":"Market","date":"2018-01-23","adjClose":277.9745270393,"daily_return":0.00212021705629795,"coloract":"#6495ed","x":1516665600000,"y":0.00212021705629795,"color":"#6495ed"},{"sector":"Market","date":"2018-01-24","adjClose":277.8665910092,"daily_return":-0.000388370086169765,"coloract":"#ff9999","x":1516752000000,"y":-0.000388370086169765,"color":"#ff9999"},{"sector":"Market","date":"2018-01-25","adjClose":277.9843394057,"daily_return":0.000423668979642855,"coloract":"#6495ed","x":1516838400000,"y":0.000423668979642855,"color":"#6495ed"},{"sector":"Market","date":"2018-01-26","adjClose":281.2027955767,"daily_return":0.0115113224519057,"coloract":"#6495ed","x":1516924800000,"y":0.0115113224519057,"color":"#6495ed"},{"sector":"Market","date":"2018-01-29","adjClose":279.3384459654,"daily_return":-0.006651986857519,"coloract":"#ff9999","x":1517184000000,"y":-0.006651986857519,"color":"#ff9999"},{"sector":"Market","date":"2018-01-30","adjClose":276.4732349839,"daily_return":-0.0103100976831039,"coloract":"#ff9999","x":1517270400000,"y":-0.0103100976831039,"color":"#ff9999"},{"sector":"Market","date":"2018-01-31","adjClose":276.6106081132,"daily_return":0.000496753372347669,"coloract":"#6495ed","x":1517356800000,"y":0.000496753372347669,"color":"#6495ed"},{"sector":"Market","date":"2018-02-01","adjClose":276.2966123892,"daily_return":-0.00113579908567729,"coloract":"#ff9999","x":1517443200000,"y":-0.00113579908567729,"color":"#ff9999"},{"sector":"Market","date":"2018-02-02","adjClose":270.2816318013,"daily_return":-0.0220104751155912,"coloract":"#ff9999","x":1517529600000,"y":-0.0220104751155912,"color":"#ff9999"},{"sector":"Market","date":"2018-02-05","adjClose":258.9777857372,"daily_return":-0.0427222074465137,"coloract":"#ff9999","x":1517788800000,"y":-0.0427222074465137,"color":"#ff9999"},{"sector":"Market","date":"2018-02-06","adjClose":264.0802162522,"daily_return":0.0195106177668789,"coloract":"#6495ed","x":1517875200000,"y":0.0195106177668789,"color":"#6495ed"},{"sector":"Market","date":"2018-02-07","adjClose":262.6476107615,"daily_return":-0.00543965573783911,"coloract":"#ff9999","x":1517961600000,"y":-0.00543965573783911,"color":"#ff9999"},{"sector":"Market","date":"2018-02-08","adjClose":252.7959949209,"daily_return":-0.0382304314247204,"coloract":"#ff9999","x":1518048000000,"y":-0.0382304314247204,"color":"#ff9999"},{"sector":"Market","date":"2018-02-09","adjClose":256.593380708,"daily_return":0.0149098364281439,"coloract":"#6495ed","x":1518134400000,"y":0.0149098364281439,"color":"#6495ed"},{"sector":"Market","date":"2018-02-12","adjClose":260.3613293961,"daily_return":0.0145777389840793,"coloract":"#6495ed","x":1518393600000,"y":0.0145777389840793,"color":"#6495ed"},{"sector":"Market","date":"2018-02-13","adjClose":261.0089455768,"daily_return":0.00248428629271835,"coloract":"#6495ed","x":1518480000000,"y":0.00248428629271835,"color":"#6495ed"},{"sector":"Market","date":"2018-02-14","adjClose":264.5315851055,"daily_return":0.0134059775805895,"coloract":"#6495ed","x":1518566400000,"y":0.0134059775805895,"color":"#6495ed"},{"sector":"Market","date":"2018-02-15","adjClose":267.9070391385,"daily_return":0.0126793928951887,"coloract":"#6495ed","x":1518652800000,"y":0.0126793928951887,"color":"#6495ed"},{"sector":"Market","date":"2018-02-16","adjClose":267.9855380695,"daily_return":0.000292965175858306,"coloract":"#6495ed","x":1518739200000,"y":0.000292965175858306,"color":"#6495ed"},{"sector":"Market","date":"2018-02-20","adjClose":266.3076234194,"daily_return":-0.00628089703232781,"coloract":"#ff9999","x":1519084800000,"y":-0.00628089703232781,"color":"#ff9999"},{"sector":"Market","date":"2018-02-21","adjClose":264.9829539587,"daily_return":-0.00498662036211606,"coloract":"#ff9999","x":1519171200000,"y":-0.00498662036211606,"color":"#ff9999"},{"sector":"Market","date":"2018-02-22","adjClose":265.3263867818,"daily_return":0.00129521712980551,"coloract":"#6495ed","x":1519257600000,"y":0.00129521712980551,"color":"#6495ed"},{"sector":"Market","date":"2018-02-23","adjClose":269.5555166895,"daily_return":0.015813651619113,"coloract":"#6495ed","x":1519344000000,"y":0.015813651619113,"color":"#6495ed"},{"sector":"Market","date":"2018-02-26","adjClose":272.6856615631,"daily_return":0.0115453409605362,"coloract":"#6495ed","x":1519603200000,"y":0.0115453409605362,"color":"#6495ed"},{"sector":"Market","date":"2018-02-27","adjClose":269.280770431,"daily_return":-0.0125651174265133,"coloract":"#ff9999","x":1519689600000,"y":-0.0125651174265133,"color":"#ff9999"},{"sector":"Market","date":"2018-02-28","adjClose":266.5529325787,"daily_return":-0.0101817463243501,"coloract":"#ff9999","x":1519776000000,"y":-0.0101817463243501,"color":"#ff9999"},{"sector":"Market","date":"2018-03-01","adjClose":262.6770478606,"daily_return":-0.0146475224710292,"coloract":"#ff9999","x":1519862400000,"y":-0.0146475224710292,"color":"#ff9999"},{"sector":"Market","date":"2018-03-02","adjClose":264.0311544203,"daily_return":0.00514178263087306,"coloract":"#6495ed","x":1519948800000,"y":0.00514178263087306,"color":"#6495ed"},{"sector":"Market","date":"2018-03-05","adjClose":267.082800363,"daily_return":0.0114916186924452,"coloract":"#6495ed","x":1520208000000,"y":0.0114916186924452,"color":"#6495ed"},{"sector":"Market","date":"2018-03-06","adjClose":267.7598536429,"daily_return":0.00253178626081851,"coloract":"#6495ed","x":1520294400000,"y":0.00253178626081851,"color":"#6495ed"},{"sector":"Market","date":"2018-03-07","adjClose":267.6617299791,"daily_return":-0.000366528611845496,"coloract":"#ff9999","x":1520380800000,"y":-0.000366528611845496,"color":"#ff9999"},{"sector":"Market","date":"2018-03-08","adjClose":268.9569623406,"daily_return":0.0048273938099781,"coloract":"#6495ed","x":1520467200000,"y":0.0048273938099781,"color":"#6495ed"},{"sector":"Market","date":"2018-03-09","adjClose":273.6374611015,"daily_return":0.0172527201034596,"coloract":"#6495ed","x":1520553600000,"y":0.0172527201034596,"color":"#6495ed"},{"sector":"Market","date":"2018-03-12","adjClose":273.2940282784,"daily_return":-0.00125585333778044,"coloract":"#ff9999","x":1520812800000,"y":-0.00125585333778044,"color":"#ff9999"},{"sector":"Market","date":"2018-03-13","adjClose":271.5278023309,"daily_return":-0.00648370544538768,"coloract":"#ff9999","x":1520899200000,"y":-0.00648370544538768,"color":"#ff9999"},{"sector":"Market","date":"2018-03-14","adjClose":270.1344463056,"daily_return":-0.00514475248050061,"coloract":"#ff9999","x":1520985600000,"y":-0.00514475248050061,"color":"#ff9999"},{"sector":"Market","date":"2018-03-15","adjClose":269.8400753144,"daily_return":-0.00109031448179753,"coloract":"#ff9999","x":1521072000000,"y":-0.00109031448179753,"color":"#ff9999"},{"sector":"Market","date":"2018-03-16","adjClose":270.1312867237,"daily_return":0.0010786180823894,"coloract":"#6495ed","x":1521158400000,"y":0.0010786180823894,"color":"#6495ed"},{"sector":"Market","date":"2018-03-19","adjClose":266.4763375123,"daily_return":-0.0136226381020288,"coloract":"#ff9999","x":1521417600000,"y":-0.0136226381020288,"color":"#ff9999"},{"sector":"Market","date":"2018-03-20","adjClose":266.9295118081,"daily_return":0.00169917298586331,"coloract":"#6495ed","x":1521504000000,"y":0.00169917298586331,"color":"#6495ed"},{"sector":"Market","date":"2018-03-21","adjClose":266.4172278216,"daily_return":-0.00192101725191396,"coloract":"#ff9999","x":1521590400000,"y":-0.00192101725191396,"color":"#ff9999"},{"sector":"Market","date":"2018-03-22","adjClose":259.7575359972,"daily_return":-0.0253149635155516,"coloract":"#ff9999","x":1521676800000,"y":-0.0253149635155516,"color":"#ff9999"},{"sector":"Market","date":"2018-03-23","adjClose":254.220928297,"daily_return":-0.0215449566500387,"coloract":"#ff9999","x":1521763200000,"y":-0.0215449566500387,"color":"#ff9999"},{"sector":"Market","date":"2018-03-26","adjClose":261.1761685752,"daily_return":0.026991469603475,"coloract":"#6495ed","x":1522022400000,"y":0.026991469603475,"color":"#6495ed"},{"sector":"Market","date":"2018-03-27","adjClose":256.7330901538,"daily_return":-0.0171581695076188,"coloract":"#ff9999","x":1522108800000,"y":-0.0171581695076188,"color":"#ff9999"},{"sector":"Market","date":"2018-03-28","adjClose":255.9745157892,"daily_return":-0.00295909367962643,"coloract":"#ff9999","x":1522195200000,"y":-0.00295909367962643,"color":"#ff9999"},{"sector":"Market","date":"2018-03-29","adjClose":259.2452520107,"daily_return":0.0126966407889055,"coloract":"#6495ed","x":1522281600000,"y":0.0126966407889055,"color":"#6495ed"},{"sector":"Market","date":"2018-04-02","adjClose":253.6495346198,"daily_return":-0.0218210033375019,"coloract":"#ff9999","x":1522627200000,"y":-0.0218210033375019,"color":"#ff9999"},{"sector":"Market","date":"2018-04-03","adjClose":256.900567611,"daily_return":0.0127355842988948,"coloract":"#6495ed","x":1522713600000,"y":0.0127355842988948,"color":"#6495ed"},{"sector":"Market","date":"2018-04-04","adjClose":259.6491682308,"daily_return":0.010642253284364,"coloract":"#6495ed","x":1522800000000,"y":0.010642253284364,"color":"#6495ed"},{"sector":"Market","date":"2018-04-05","adjClose":261.6983041768,"daily_return":0.00786096262700564,"coloract":"#6495ed","x":1522886400000,"y":0.00786096262700564,"color":"#6495ed"},{"sector":"Market","date":"2018-04-06","adjClose":255.8661480229,"daily_return":-0.0225378810321581,"coloract":"#ff9999","x":1522972800000,"y":-0.0225378810321581,"color":"#ff9999"},{"sector":"Market","date":"2018-04-09","adjClose":257.1271547588,"daily_return":0.00491627968208697,"coloract":"#6495ed","x":1523232000000,"y":0.00491627968208697,"color":"#6495ed"},{"sector":"Market","date":"2018-04-10","adjClose":261.2155750357,"daily_return":0.0157752962607667,"coloract":"#6495ed","x":1523318400000,"y":0.0157752962607667,"color":"#6495ed"},{"sector":"Market","date":"2018-04-11","adjClose":259.8462005333,"daily_return":-0.00525610481983385,"coloract":"#ff9999","x":1523404800000,"y":-0.00525610481983385,"color":"#ff9999"},{"sector":"Market","date":"2018-04-12","adjClose":261.9840010154,"daily_return":0.00819351749139319,"coloract":"#6495ed","x":1523491200000,"y":0.00819351749139319,"color":"#6495ed"},{"sector":"Market","date":"2018-04-13","adjClose":261.2155750357,"daily_return":-0.00293741267155934,"coloract":"#ff9999","x":1523577600000,"y":-0.00293741267155934,"color":"#ff9999"},{"sector":"Market","date":"2018-04-16","adjClose":263.3632271329,"daily_return":0.00818814670952417,"coloract":"#6495ed","x":1523836800000,"y":0.00818814670952417,"color":"#6495ed"},{"sector":"Market","date":"2018-04-17","adjClose":266.1807890586,"daily_return":0.0106415649259475,"coloract":"#6495ed","x":1523923200000,"y":0.0106415649259475,"color":"#6495ed"},{"sector":"Market","date":"2018-04-18","adjClose":266.3778213611,"daily_return":0.000739946017715098,"coloract":"#6495ed","x":1524009600000,"y":0.000739946017715098,"color":"#6495ed"},{"sector":"Market","date":"2018-04-19","adjClose":264.9000790924,"daily_return":-0.00556298719893888,"coloract":"#ff9999","x":1524096000000,"y":-0.00556298719893888,"color":"#ff9999"},{"sector":"Market","date":"2018-04-20","adjClose":262.6539108439,"daily_return":-0.00851545761900674,"coloract":"#ff9999","x":1524182400000,"y":-0.00851545761900674,"color":"#ff9999"},{"sector":"Market","date":"2018-04-23","adjClose":262.6145043834,"daily_return":-0.000150043137685074,"coloract":"#ff9999","x":1524441600000,"y":-0.000150043137685074,"color":"#ff9999"},{"sector":"Market","date":"2018-04-24","adjClose":259.0777745536,"daily_return":-0.0135588896219412,"coloract":"#ff9999","x":1524528000000,"y":-0.0135588896219412,"color":"#ff9999"},{"sector":"Market","date":"2018-04-25","adjClose":259.7181295367,"daily_return":0.00246862129500069,"coloract":"#6495ed","x":1524614400000,"y":0.00246862129500069,"color":"#6495ed"},{"sector":"Market","date":"2018-04-26","adjClose":262.3583623901,"daily_return":0.0101144387942638,"coloract":"#6495ed","x":1524700800000,"y":0.0101144387942638,"color":"#6495ed"},{"sector":"Market","date":"2018-04-27","adjClose":262.6046527683,"daily_return":0.000938315230438747,"coloract":"#6495ed","x":1524787200000,"y":0.000938315230438747,"color":"#6495ed"},{"sector":"Market","date":"2018-04-30","adjClose":260.5850716677,"daily_return":-0.00772030121144596,"coloract":"#ff9999","x":1525046400000,"y":-0.00772030121144596,"color":"#ff9999"},{"sector":"Market","date":"2018-05-01","adjClose":261.0480975785,"daily_return":0.0017752936726696,"coloract":"#6495ed","x":1525132800000,"y":0.0017752936726696,"color":"#6495ed"},{"sector":"Market","date":"2018-05-02","adjClose":259.2945100863,"daily_return":-0.00674015198871913,"coloract":"#ff9999","x":1525219200000,"y":-0.00674015198871913,"color":"#ff9999"},{"sector":"Market","date":"2018-05-03","adjClose":258.7231164091,"daily_return":-0.00220607902014169,"coloract":"#ff9999","x":1525305600000,"y":-0.00220607902014169,"color":"#ff9999"},{"sector":"Market","date":"2018-05-04","adjClose":262.0726655515,"daily_return":0.0128633734940902,"coloract":"#6495ed","x":1525392000000,"y":0.0128633734940902,"color":"#6495ed"},{"sector":"Market","date":"2018-05-07","adjClose":262.9593109128,"daily_return":0.00337749411049426,"coloract":"#6495ed","x":1525651200000,"y":0.00337749411049426,"color":"#6495ed"},{"sector":"Market","date":"2018-05-08","adjClose":262.9593109128,"daily_return":0,"coloract":"#ff9999","x":1525737600000,"y":0,"color":"#ff9999"},{"sector":"Market","date":"2018-05-09","adjClose":265.501027615,"daily_return":0.00961940231359204,"coloract":"#6495ed","x":1525824000000,"y":0.00961940231359204,"color":"#6495ed"},{"sector":"Market","date":"2018-05-10","adjClose":267.9836346264,"daily_return":0.0093072026553136,"coloract":"#6495ed","x":1525910400000,"y":0.0093072026553136,"color":"#6495ed"},{"sector":"Market","date":"2018-05-11","adjClose":268.8013186818,"daily_return":0.00304660062777007,"coloract":"#6495ed","x":1525996800000,"y":0.00304660062777007,"color":"#6495ed"},{"sector":"Market","date":"2018-05-14","adjClose":268.9293896784,"daily_return":0.000476338795722064,"coloract":"#6495ed","x":1526256000000,"y":0.000476338795722064,"color":"#6495ed"},{"sector":"Market","date":"2018-05-15","adjClose":267.077286035,"daily_return":-0.0069107759231537,"coloract":"#ff9999","x":1526342400000,"y":-0.0069107759231537,"color":"#ff9999"},{"sector":"Market","date":"2018-05-16","adjClose":268.2003701592,"daily_return":0.00419627368790287,"coloract":"#6495ed","x":1526428800000,"y":0.00419627368790287,"color":"#6495ed"},{"sector":"Market","date":"2018-05-17","adjClose":267.9737830113,"daily_return":-0.000845199866681412,"coloract":"#ff9999","x":1526515200000,"y":-0.000845199866681412,"color":"#ff9999"},{"sector":"Market","date":"2018-05-18","adjClose":267.3038731828,"daily_return":-0.00250303807942664,"coloract":"#ff9999","x":1526601600000,"y":-0.00250303807942664,"color":"#ff9999"},{"sector":"Market","date":"2018-05-21","adjClose":269.3136026683,"daily_return":0.00749039668825979,"coloract":"#6495ed","x":1526860800000,"y":0.00749039668825979,"color":"#6495ed"},{"sector":"Market","date":"2018-05-22","adjClose":268.5648799188,"daily_return":-0.0027839865595114,"coloract":"#ff9999","x":1526947200000,"y":-0.0027839865595114,"color":"#ff9999"},{"sector":"Market","date":"2018-05-23","adjClose":269.3037510532,"daily_return":0.00274740543180307,"coloract":"#6495ed","x":1527033600000,"y":0.00274740543180307,"color":"#6495ed"},{"sector":"Market","date":"2018-05-24","adjClose":268.7520606062,"daily_return":-0.00205068183775836,"coloract":"#ff9999","x":1527120000000,"y":-0.00205068183775836,"color":"#ff9999"},{"sector":"Market","date":"2018-05-25","adjClose":268.1117056231,"daily_return":-0.00238554108903788,"coloract":"#ff9999","x":1527206400000,"y":-0.00238554108903788,"color":"#ff9999"},{"sector":"Market","date":"2018-05-29","adjClose":265.028150089,"daily_return":-0.0115676585998434,"coloract":"#ff9999","x":1527552000000,"y":-0.0115676585998434,"color":"#ff9999"},{"sector":"Market","date":"2018-05-30","adjClose":268.5648799188,"daily_return":0.0132564760948366,"coloract":"#6495ed","x":1527638400000,"y":0.0132564760948366,"color":"#6495ed"},{"sector":"Market","date":"2018-05-31","adjClose":266.919660193,"daily_return":-0.00614480822258123,"coloract":"#ff9999","x":1527724800000,"y":-0.00614480822258123,"color":"#ff9999"},{"sector":"Market","date":"2018-06-01","adjClose":269.5401898162,"daily_return":0.00976979159575553,"coloract":"#6495ed","x":1527811200000,"y":0.00976979159575553,"color":"#6495ed"},{"sector":"Market","date":"2018-06-04","adjClose":270.8208997824,"daily_return":0.00474020942268716,"coloract":"#6495ed","x":1528070400000,"y":0.00474020942268716,"color":"#6495ed"},{"sector":"Market","date":"2018-06-05","adjClose":271.0179320849,"daily_return":0.000727272759339037,"coloract":"#6495ed","x":1528156800000,"y":0.000727272759339037,"color":"#6495ed"},{"sector":"Market","date":"2018-06-06","adjClose":273.2838035636,"daily_return":0.00832583995013714,"coloract":"#6495ed","x":1528243200000,"y":0.00832583995013714,"color":"#6495ed"},{"sector":"Market","date":"2018-06-07","adjClose":273.2542487182,"daily_return":-0.000108152928438798,"coloract":"#ff9999","x":1528329600000,"y":-0.000108152928438798,"color":"#ff9999"},{"sector":"Market","date":"2018-06-08","adjClose":274.0620811585,"daily_return":0.00295197852808382,"coloract":"#6495ed","x":1528416000000,"y":0.00295197852808382,"color":"#6495ed"},{"sector":"Market","date":"2018-06-11","adjClose":274.4265909181,"daily_return":0.00132914253956251,"coloract":"#6495ed","x":1528675200000,"y":0.00132914253956251,"color":"#6495ed"},{"sector":"Market","date":"2018-06-12","adjClose":274.7812490626,"daily_return":0.00129152633294893,"coloract":"#6495ed","x":1528761600000,"y":0.00129152633294893,"color":"#6495ed"},{"sector":"Market","date":"2018-06-13","adjClose":273.9044553165,"daily_return":-0.00319598081532302,"coloract":"#ff9999","x":1528848000000,"y":-0.00319598081532302,"color":"#ff9999"},{"sector":"Market","date":"2018-06-14","adjClose":274.5940683752,"daily_return":0.00251454978374355,"coloract":"#6495ed","x":1528934400000,"y":0.00251454978374355,"color":"#6495ed"},{"sector":"Market","date":"2018-06-15","adjClose":274.2449271352,"daily_return":-0.00127229038006771,"coloract":"#ff9999","x":1529020800000,"y":-0.00127229038006771,"color":"#ff9999"},{"sector":"Market","date":"2018-06-18","adjClose":273.6808611428,"daily_return":-0.0020589145600729,"coloract":"#ff9999","x":1529280000000,"y":-0.0020589145600729,"color":"#ff9999"},{"sector":"Market","date":"2018-06-19","adjClose":272.6318963149,"daily_return":-0.00384016702030188,"coloract":"#ff9999","x":1529366400000,"y":-0.00384016702030188,"color":"#ff9999"},{"sector":"Market","date":"2018-06-20","adjClose":273.0970033612,"daily_return":0.00170453556404215,"coloract":"#6495ed","x":1529452800000,"y":0.00170453556404215,"color":"#6495ed"},{"sector":"Market","date":"2018-06-21","adjClose":271.3850135949,"daily_return":-0.00628852874763997,"coloract":"#ff9999","x":1529539200000,"y":-0.00628852874763997,"color":"#ff9999"},{"sector":"Market","date":"2018-06-22","adjClose":271.8798083251,"daily_return":0.00182156048781312,"coloract":"#6495ed","x":1529625600000,"y":0.00182156048781312,"color":"#6495ed"},{"sector":"Market","date":"2018-06-25","adjClose":268.1787437435,"daily_return":-0.0137063750175335,"coloract":"#ff9999","x":1529884800000,"y":-0.0137063750175335,"color":"#ff9999"},{"sector":"Market","date":"2018-06-26","adjClose":268.7724974197,"daily_return":0.00221157480489698,"coloract":"#6495ed","x":1529971200000,"y":0.00221157480489698,"color":"#6495ed"},{"sector":"Market","date":"2018-06-27","adjClose":266.545921134,"daily_return":-0.00831874655802345,"coloract":"#ff9999","x":1530057600000,"y":-0.00831874655802345,"color":"#ff9999"},{"sector":"Market","date":"2018-06-28","adjClose":268.0698889029,"daily_return":0.00570118529286123,"coloract":"#6495ed","x":1530144000000,"y":0.00570118529286123,"color":"#6495ed"},{"sector":"Market","date":"2018-06-29","adjClose":268.4558287924,"daily_return":0.00143866339799903,"coloract":"#6495ed","x":1530230400000,"y":0.00143866339799903,"color":"#6495ed"},{"sector":"Market","date":"2018-07-02","adjClose":269.0297906794,"daily_return":0.00213573008979751,"coloract":"#6495ed","x":1530489600000,"y":0.00213573008979751,"color":"#6495ed"},{"sector":"Market","date":"2018-07-03","adjClose":268.0797847975,"daily_return":-0.00353747881606736,"coloract":"#ff9999","x":1530576000000,"y":-0.00353747881606736,"color":"#ff9999"},{"sector":"Market","date":"2018-07-05","adjClose":270.2667775048,"daily_return":0.00812489534225413,"coloract":"#6495ed","x":1530748800000,"y":0.00812489534225413,"color":"#6495ed"},{"sector":"Market","date":"2018-07-06","adjClose":272.5527291581,"daily_return":0.00842256086570092,"coloract":"#6495ed","x":1530835200000,"y":0.00842256086570092,"color":"#6495ed"},{"sector":"Market","date":"2018-07-09","adjClose":275.0069110196,"daily_return":0.00896413144924413,"coloract":"#6495ed","x":1531094400000,"y":0.00896413144924413,"color":"#6495ed"},{"sector":"Market","date":"2018-07-10","adjClose":275.9965004799,"daily_return":0.00359195788495636,"coloract":"#6495ed","x":1531180800000,"y":0.00359195788495636,"color":"#6495ed"},{"sector":"Market","date":"2018-07-11","adjClose":273.9777379809,"daily_return":-0.00734133137375181,"coloract":"#ff9999","x":1531267200000,"y":-0.00734133137375181,"color":"#ff9999"},{"sector":"Market","date":"2018-07-12","adjClose":276.4616075263,"daily_return":0.00902510485646335,"coloract":"#6495ed","x":1531353600000,"y":0.00902510485646335,"color":"#6495ed"},{"sector":"Market","date":"2018-07-13","adjClose":276.6793172076,"daily_return":0.000787176225106379,"coloract":"#6495ed","x":1531440000000,"y":0.000787176225106379,"color":"#6495ed"},{"sector":"Market","date":"2018-07-16","adjClose":276.4319198425,"daily_return":-0.000894566463403024,"coloract":"#ff9999","x":1531699200000,"y":-0.000894566463403024,"color":"#ff9999"},{"sector":"Market","date":"2018-07-17","adjClose":277.5501559326,"daily_return":0.00403708949353465,"coloract":"#6495ed","x":1531785600000,"y":0.00403708949353465,"color":"#6495ed"},{"sector":"Market","date":"2018-07-18","adjClose":278.1340137142,"daily_return":0.0021014023013306,"coloract":"#6495ed","x":1531872000000,"y":0.0021014023013306,"color":"#6495ed"},{"sector":"Market","date":"2018-07-19","adjClose":277.0850488863,"daily_return":-0.0037785665032537,"coloract":"#ff9999","x":1531958400000,"y":-0.0037785665032537,"color":"#ff9999"},{"sector":"Market","date":"2018-07-20","adjClose":276.768380259,"daily_return":-0.00114351070208318,"coloract":"#ff9999","x":1532044800000,"y":-0.00114351070208318,"color":"#ff9999"},{"sector":"Market","date":"2018-07-23","adjClose":277.2829667783,"daily_return":0.00185754143551797,"coloract":"#6495ed","x":1532304000000,"y":0.00185754143551797,"color":"#6495ed"},{"sector":"Market","date":"2018-07-24","adjClose":278.6782879174,"daily_return":0.00501950111433924,"coloract":"#6495ed","x":1532390400000,"y":0.00501950111433924,"color":"#6495ed"},{"sector":"Market","date":"2018-07-25","adjClose":281.0533026221,"daily_return":0.00848631379175835,"coloract":"#6495ed","x":1532476800000,"y":0.00848631379175835,"color":"#6495ed"},{"sector":"Market","date":"2018-07-26","adjClose":280.3902776837,"daily_return":-0.00236185885768148,"coloract":"#ff9999","x":1532563200000,"y":-0.00236185885768148,"color":"#ff9999"},{"sector":"Market","date":"2018-07-27","adjClose":278.4902659199,"daily_return":-0.00679937459112612,"coloract":"#ff9999","x":1532649600000,"y":-0.00679937459112612,"color":"#ff9999"},{"sector":"Market","date":"2018-07-30","adjClose":277.0355694133,"daily_return":-0.00523719956501623,"coloract":"#ff9999","x":1532908800000,"y":-0.00523719956501623,"color":"#ff9999"},{"sector":"Market","date":"2018-07-31","adjClose":278.4012028685,"daily_return":0.00491734172142966,"coloract":"#6495ed","x":1532995200000,"y":0.00491734172142966,"color":"#6495ed"},{"sector":"Market","date":"2018-08-01","adjClose":277.9360958221,"daily_return":-0.0016720329765878,"coloract":"#ff9999","x":1533081600000,"y":-0.0016720329765878,"color":"#ff9999"},{"sector":"Market","date":"2018-08-02","adjClose":279.4501676964,"daily_return":0.00543276968730755,"coloract":"#6495ed","x":1533168000000,"y":0.00543276968730755,"color":"#6495ed"},{"sector":"Market","date":"2018-08-03","adjClose":280.6475709434,"daily_return":0.00427570043083136,"coloract":"#6495ed","x":1533254400000,"y":0.00427570043083136,"color":"#6495ed"},{"sector":"Market","date":"2018-08-06","adjClose":281.6767439821,"daily_return":0.00366042925947951,"coloract":"#6495ed","x":1533513600000,"y":0.00366042925947951,"color":"#6495ed"},{"sector":"Market","date":"2018-08-07","adjClose":282.6069580748,"daily_return":0.00329697608466084,"coloract":"#6495ed","x":1533600000000,"y":0.00329697608466084,"color":"#6495ed"},{"sector":"Market","date":"2018-08-08","adjClose":282.4882073396,"daily_return":-0.000420285800395881,"coloract":"#ff9999","x":1533686400000,"y":-0.000420285800395881,"color":"#ff9999"},{"sector":"Market","date":"2018-08-09","adjClose":282.10226745,"daily_return":-0.0013671500563559,"coloract":"#ff9999","x":1533772800000,"y":-0.0013671500563559,"color":"#ff9999"},{"sector":"Market","date":"2018-08-10","adjClose":280.2121515809,"daily_return":-0.00672265523924587,"coloract":"#ff9999","x":1533859200000,"y":-0.00672265523924587,"color":"#ff9999"},{"sector":"Market","date":"2018-08-13","adjClose":279.1631867529,"daily_return":-0.00375049089829993,"coloract":"#ff9999","x":1534118400000,"y":-0.00375049089829993,"color":"#ff9999"},{"sector":"Market","date":"2018-08-14","adjClose":280.9444477815,"daily_return":0.00636044547113723,"coloract":"#6495ed","x":1534204800000,"y":0.00636044547113723,"color":"#6495ed"},{"sector":"Market","date":"2018-08-15","adjClose":278.8465181256,"daily_return":-0.00749543885396253,"coloract":"#ff9999","x":1534291200000,"y":-0.00749543885396253,"color":"#ff9999"},{"sector":"Market","date":"2018-08-16","adjClose":281.1027820951,"daily_return":0.00805885882784274,"coloract":"#6495ed","x":1534377600000,"y":0.00805885882784274,"color":"#6495ed"},{"sector":"Market","date":"2018-08-17","adjClose":282.0923715554,"daily_return":0.00351420097387489,"coloract":"#6495ed","x":1534464000000,"y":0.00351420097387489,"color":"#6495ed"},{"sector":"Market","date":"2018-08-20","adjClose":282.6960211262,"daily_return":0.00213761404618573,"coloract":"#6495ed","x":1534723200000,"y":0.00213761404618573,"color":"#6495ed"},{"sector":"Market","date":"2018-08-21","adjClose":283.3590460646,"daily_return":0.00234261745913145,"coloract":"#6495ed","x":1534809600000,"y":0.00234261745913145,"color":"#6495ed"},{"sector":"Market","date":"2018-08-22","adjClose":283.1908158564,"daily_return":-0.00059387610677053,"coloract":"#ff9999","x":1534896000000,"y":-0.00059387610677053,"color":"#ff9999"},{"sector":"Market","date":"2018-08-23","adjClose":282.8147718615,"daily_return":-0.0013287644446951,"coloract":"#ff9999","x":1534982400000,"y":-0.0013287644446951,"color":"#ff9999"},{"sector":"Market","date":"2018-08-24","adjClose":284.5168657332,"daily_return":0.006000366860623,"coloract":"#6495ed","x":1535068800000,"y":0.006000366860623,"color":"#6495ed"},{"sector":"Market","date":"2018-08-27","adjClose":286.7632338081,"daily_return":0.00786437215137781,"coloract":"#6495ed","x":1535328000000,"y":0.00786437215137781,"color":"#6495ed"},{"sector":"Market","date":"2018-08-28","adjClose":286.9017763325,"daily_return":0.00048300846188809,"coloract":"#6495ed","x":1535414400000,"y":0.00048300846188809,"color":"#6495ed"},{"sector":"Market","date":"2018-08-29","adjClose":288.4455358906,"daily_return":0.00536636994753437,"coloract":"#6495ed","x":1535500800000,"y":0.00536636994753437,"color":"#6495ed"},{"sector":"Market","date":"2018-08-30","adjClose":287.2778203275,"daily_return":-0.00405652177127624,"coloract":"#ff9999","x":1535587200000,"y":-0.00405652177127624,"color":"#ff9999"},{"sector":"Market","date":"2018-08-31","adjClose":287.2877162221,"daily_return":3.44465303658836e-05,"coloract":"#6495ed","x":1535673600000,"y":3.44465303658836e-05,"color":"#6495ed"},{"sector":"Market","date":"2018-09-04","adjClose":286.7929214919,"daily_return":-0.00172378171362997,"coloract":"#ff9999","x":1536019200000,"y":-0.00172378171362997,"color":"#ff9999"},{"sector":"Market","date":"2018-09-05","adjClose":286.0210417129,"daily_return":-0.00269504689403721,"coloract":"#ff9999","x":1536105600000,"y":-0.00269504689403721,"color":"#ff9999"},{"sector":"Market","date":"2018-09-06","adjClose":285.1600988824,"daily_return":-0.00301460752577754,"coloract":"#ff9999","x":1536192000000,"y":-0.00301460752577754,"color":"#ff9999"},{"sector":"Market","date":"2018-09-07","adjClose":284.6059287846,"daily_return":-0.00194525558085079,"coloract":"#ff9999","x":1536278400000,"y":-0.00194525558085079,"color":"#ff9999"},{"sector":"Market","date":"2018-09-10","adjClose":285.1007235148,"daily_return":0.00173701624375244,"coloract":"#6495ed","x":1536537600000,"y":0.00173701624375244,"color":"#6495ed"},{"sector":"Market","date":"2018-09-11","adjClose":286.0408335021,"daily_return":0.0032920414380273,"coloract":"#6495ed","x":1536624000000,"y":0.0032920414380273,"color":"#6495ed"},{"sector":"Market","date":"2018-09-12","adjClose":286.1101047643,"daily_return":0.000242143315357879,"coloract":"#6495ed","x":1536710400000,"y":0.000242143315357879,"color":"#6495ed"},{"sector":"Market","date":"2018-09-13","adjClose":287.8023027414,"daily_return":0.00589707718072763,"coloract":"#6495ed","x":1536796800000,"y":0.00589707718072763,"color":"#6495ed"},{"sector":"Market","date":"2018-09-14","adjClose":287.8517822144,"daily_return":0.000171906964320456,"coloract":"#6495ed","x":1536883200000,"y":0.000171906964320456,"color":"#6495ed"},{"sector":"Market","date":"2018-09-17","adjClose":286.3278144456,"daily_return":-0.00530834378741041,"coloract":"#ff9999","x":1537142400000,"y":-0.00530834378741041,"color":"#ff9999"},{"sector":"Market","date":"2018-09-18","adjClose":287.8814698982,"daily_return":0.00541147378282947,"coloract":"#6495ed","x":1537228800000,"y":0.00541147378282947,"color":"#6495ed"},{"sector":"Market","date":"2018-09-19","adjClose":288.1882426309,"daily_return":0.00106505429820913,"coloract":"#6495ed","x":1537315200000,"y":0.00106505429820913,"color":"#6495ed"},{"sector":"Market","date":"2018-09-20","adjClose":290.5236737573,"daily_return":0.00807117924658041,"coloract":"#6495ed","x":1537401600000,"y":0.00807117924658041,"color":"#6495ed"},{"sector":"Market","date":"2018-09-21","adjClose":290.2590575356,"daily_return":-0.000911240041251205,"coloract":"#ff9999","x":1537488000000,"y":-0.000911240041251205,"color":"#ff9999"},{"sector":"Market","date":"2018-09-24","adjClose":289.2948077811,"daily_return":-0.00332756177446125,"coloract":"#ff9999","x":1537747200000,"y":-0.00332756177446125,"color":"#ff9999"},{"sector":"Market","date":"2018-09-25","adjClose":289.0264083649,"daily_return":-0.000928201933377615,"coloract":"#ff9999","x":1537833600000,"y":-0.000928201933377615,"color":"#ff9999"},{"sector":"Market","date":"2018-09-26","adjClose":288.1615658016,"daily_return":-0.00299674715771747,"coloract":"#ff9999","x":1537920000000,"y":-0.00299674715771747,"color":"#ff9999"},{"sector":"Market","date":"2018-09-27","adjClose":288.9667640502,"daily_return":0.00279036300732205,"coloract":"#6495ed","x":1538006400000,"y":0.00279036300732205,"color":"#6495ed"},{"sector":"Market","date":"2018-09-28","adjClose":288.9965862076,"daily_return":0.000103197399672794,"coloract":"#6495ed","x":1538092800000,"y":0.000103197399672794,"color":"#6495ed"},{"sector":"Market","date":"2018-10-01","adjClose":290.0005988385,"daily_return":0.00346811232651767,"coloract":"#6495ed","x":1538352000000,"y":0.00346811232651767,"color":"#6495ed"},{"sector":"Market","date":"2018-10-02","adjClose":289.8316066135,"daily_return":-0.000582900460498692,"coloract":"#ff9999","x":1538438400000,"y":-0.000582900460498692,"color":"#ff9999"},{"sector":"Market","date":"2018-10-03","adjClose":289.9906581194,"daily_return":0.000548621602043831,"coloract":"#6495ed","x":1538524800000,"y":0.000548621602043831,"color":"#6495ed"},{"sector":"Market","date":"2018-10-04","adjClose":287.7241741604,"daily_return":-0.00784641646913364,"coloract":"#ff9999","x":1538611200000,"y":-0.00784641646913364,"color":"#ff9999"},{"sector":"Market","date":"2018-10-05","adjClose":286.1137776632,"daily_return":-0.00561273690507491,"coloract":"#ff9999","x":1538697600000,"y":-0.00561273690507491,"color":"#ff9999"},{"sector":"Market","date":"2018-10-08","adjClose":286.1137776632,"daily_return":0,"coloract":"#ff9999","x":1538956800000,"y":0,"color":"#ff9999"},{"sector":"Market","date":"2018-10-09","adjClose":285.6962674603,"daily_return":-0.00146031109686096,"coloract":"#ff9999","x":1539043200000,"y":-0.00146031109686096,"color":"#ff9999"},{"sector":"Market","date":"2018-10-10","adjClose":276.6502130626,"daily_return":-0.0321753051132081,"coloract":"#ff9999","x":1539129600000,"y":-0.0321753051132081,"color":"#ff9999"},{"sector":"Market","date":"2018-10-11","adjClose":270.5565522431,"daily_return":-0.0222727974669148,"coloract":"#ff9999","x":1539216000000,"y":-0.0222727974669148,"color":"#ff9999"},{"sector":"Market","date":"2018-10-12","adjClose":274.3141440698,"daily_return":0.0137928188205914,"coloract":"#6495ed","x":1539302400000,"y":0.0137928188205914,"color":"#6495ed"},{"sector":"Market","date":"2018-10-15","adjClose":272.7733326065,"daily_return":-0.00563279403364003,"coloract":"#ff9999","x":1539561600000,"y":-0.00563279403364003,"color":"#ff9999"},{"sector":"Market","date":"2018-10-16","adjClose":278.7377640775,"daily_return":0.0216302593087487,"coloract":"#6495ed","x":1539648000000,"y":0.0216302593087487,"color":"#6495ed"},{"sector":"Market","date":"2018-10-17","adjClose":278.787467673,"daily_return":0.000178300793582942,"coloract":"#6495ed","x":1539734400000,"y":0.000178300793582942,"color":"#6495ed"},{"sector":"Market","date":"2018-10-18","adjClose":274.7614764301,"daily_return":-0.0145463640607746,"coloract":"#ff9999","x":1539820800000,"y":-0.0145463640607746,"color":"#ff9999"},{"sector":"Market","date":"2018-10-19","adjClose":274.6123656434,"daily_return":-0.000542839061281164,"coloract":"#ff9999","x":1539907200000,"y":-0.000542839061281164,"color":"#ff9999"},{"sector":"Market","date":"2018-10-22","adjClose":273.3797164727,"daily_return":-0.00449879219027505,"coloract":"#ff9999","x":1540166400000,"y":-0.00449879219027505,"color":"#ff9999"},{"sector":"Market","date":"2018-10-23","adjClose":271.9880157961,"daily_return":-0.00510372585385355,"coloract":"#ff9999","x":1540252800000,"y":-0.00510372585385355,"color":"#ff9999"},{"sector":"Market","date":"2018-10-24","adjClose":263.747159647,"daily_return":-0.0307670901307961,"coloract":"#ff9999","x":1540339200000,"y":-0.0307670901307961,"color":"#ff9999"},{"sector":"Market","date":"2018-10-25","adjClose":268.4789419474,"daily_return":0.0177815667505516,"coloract":"#6495ed","x":1540425600000,"y":0.0177815667505516,"color":"#6495ed"},{"sector":"Market","date":"2018-10-26","adjClose":263.7571003662,"daily_return":-0.0177438771243068,"coloract":"#ff9999","x":1540512000000,"y":-0.0177438771243068,"color":"#ff9999"},{"sector":"Market","date":"2018-10-29","adjClose":262.2958146558,"daily_return":-0.00555567482768993,"coloract":"#ff9999","x":1540771200000,"y":-0.00555567482768993,"color":"#ff9999"},{"sector":"Market","date":"2018-10-30","adjClose":266.182635831,"daily_return":0.0147097436276384,"coloract":"#6495ed","x":1540857600000,"y":0.0147097436276384,"color":"#6495ed"},{"sector":"Market","date":"2018-10-31","adjClose":269.0256814989,"daily_return":0.0106241712533963,"coloract":"#6495ed","x":1540944000000,"y":0.0106241712533963,"color":"#6495ed"},{"sector":"Market","date":"2018-11-01","adjClose":271.8886086049,"daily_return":0.0105856099279915,"coloract":"#6495ed","x":1541030400000,"y":0.0105856099279915,"color":"#6495ed"},{"sector":"Market","date":"2018-11-02","adjClose":270.2782121078,"daily_return":-0.00594061152987546,"coloract":"#ff9999","x":1541116800000,"y":-0.00594061152987546,"color":"#ff9999"},{"sector":"Market","date":"2018-11-05","adjClose":271.7693199755,"daily_return":0.00550177444117228,"coloract":"#6495ed","x":1541376000000,"y":0.00550177444117228,"color":"#6495ed"},{"sector":"Market","date":"2018-11-06","adjClose":273.489064383,"daily_return":0.00630801894798338,"coloract":"#6495ed","x":1541462400000,"y":0.00630801894798338,"color":"#6495ed"},{"sector":"Market","date":"2018-11-07","adjClose":279.3441479437,"daily_return":0.0211828897651891,"coloract":"#6495ed","x":1541548800000,"y":0.0211828897651891,"color":"#6495ed"},{"sector":"Market","date":"2018-11-08","adjClose":278.8371712686,"daily_return":-0.00181653092663492,"coloract":"#ff9999","x":1541635200000,"y":-0.00181653092663492,"color":"#ff9999"},{"sector":"Market","date":"2018-11-09","adjClose":276.1134142302,"daily_return":-0.00981629349070356,"coloract":"#ff9999","x":1541721600000,"y":-0.00981629349070356,"color":"#ff9999"},{"sector":"Market","date":"2018-11-12","adjClose":270.9541810078,"daily_return":-0.0188619696229368,"coloract":"#ff9999","x":1541980800000,"y":-0.0188619696229368,"color":"#ff9999"},{"sector":"Market","date":"2018-11-13","adjClose":270.4472043328,"daily_return":-0.00187283164362739,"coloract":"#ff9999","x":1542067200000,"y":-0.00187283164362739,"color":"#ff9999"},{"sector":"Market","date":"2018-11-14","adjClose":268.5982305768,"daily_return":-0.00686020467916304,"coloract":"#ff9999","x":1542153600000,"y":-0.00686020467916304,"color":"#ff9999"},{"sector":"Market","date":"2018-11-15","adjClose":271.4015133681,"daily_return":0.0103826270484966,"coloract":"#6495ed","x":1542240000000,"y":0.0103826270484966,"color":"#6495ed"},{"sector":"Market","date":"2018-11-16","adjClose":272.1073044255,"daily_return":0.00259716652618369,"coloract":"#6495ed","x":1542326400000,"y":0.00259716652618369,"color":"#6495ed"},{"sector":"Market","date":"2018-11-19","adjClose":267.5047514738,"daily_return":-0.0170591613678654,"coloract":"#ff9999","x":1542585600000,"y":-0.0170591613678654,"color":"#ff9999"},{"sector":"Market","date":"2018-11-20","adjClose":262.5542733528,"daily_return":-0.0186795124067949,"coloract":"#ff9999","x":1542672000000,"y":-0.0186795124067949,"color":"#ff9999"},{"sector":"Market","date":"2018-11-21","adjClose":263.4489380735,"daily_return":0.00340174951031802,"coloract":"#6495ed","x":1542758400000,"y":0.00340174951031802,"color":"#6495ed"},{"sector":"Market","date":"2018-11-23","adjClose":261.6894307895,"daily_return":-0.00670114382262987,"coloract":"#ff9999","x":1542931200000,"y":-0.00670114382262987,"color":"#ff9999"},{"sector":"Market","date":"2018-11-26","adjClose":265.9142364148,"daily_return":0.0160154153220455,"coloract":"#6495ed","x":1543190400000,"y":0.0160154153220455,"color":"#6495ed"},{"sector":"Market","date":"2018-11-27","adjClose":266.8089011355,"daily_return":0.00335883876166054,"coloract":"#6495ed","x":1543276800000,"y":0.00335883876166054,"color":"#6495ed"},{"sector":"Market","date":"2018-11-28","adjClose":272.9522655506,"daily_return":0.0227642523718696,"coloract":"#6495ed","x":1543363200000,"y":0.0227642523718696,"color":"#6495ed"},{"sector":"Market","date":"2018-11-29","adjClose":272.3558224035,"daily_return":-0.00218754644621999,"coloract":"#ff9999","x":1543449600000,"y":-0.00218754644621999,"color":"#ff9999"},{"sector":"Market","date":"2018-11-30","adjClose":274.0159224963,"daily_return":0.00607683401260228,"coloract":"#6495ed","x":1543536000000,"y":0.00607683401260228,"color":"#6495ed"},{"sector":"Market","date":"2018-12-03","adjClose":277.6442849744,"daily_return":0.0131545279151348,"coloract":"#6495ed","x":1543795200000,"y":0.0131545279151348,"color":"#6495ed"},{"sector":"Market","date":"2018-12-04","adjClose":268.6479341724,"daily_return":-0.0329390164315502,"coloract":"#ff9999","x":1543881600000,"y":-0.0329390164315502,"color":"#ff9999"},{"sector":"Market","date":"2018-12-06","adjClose":268.2403646885,"daily_return":-0.00151826576610681,"coloract":"#ff9999","x":1544054400000,"y":-0.00151826576610681,"color":"#ff9999"},{"sector":"Market","date":"2018-12-07","adjClose":262.0075338013,"daily_return":-0.0235102034030419,"coloract":"#ff9999","x":1544140800000,"y":-0.0235102034030419,"color":"#ff9999"},{"sector":"Market","date":"2018-12-10","adjClose":262.5045697573,"daily_return":0.00189523216491327,"coloract":"#6495ed","x":1544400000000,"y":0.00189523216491327,"color":"#6495ed"},{"sector":"Market","date":"2018-12-11","adjClose":262.564214072,"daily_return":0.000227186672655755,"coloract":"#6495ed","x":1544486400000,"y":0.000227186672655755,"color":"#6495ed"},{"sector":"Market","date":"2018-12-12","adjClose":263.8863297147,"daily_return":0.00502276401021096,"coloract":"#6495ed","x":1544572800000,"y":0.00502276401021096,"color":"#6495ed"},{"sector":"Market","date":"2018-12-13","adjClose":263.7968632426,"daily_return":-0.000339091614632636,"coloract":"#ff9999","x":1544659200000,"y":-0.000339091614632636,"color":"#ff9999"},{"sector":"Market","date":"2018-12-14","adjClose":258.9259108747,"daily_return":-0.0186373871694343,"coloract":"#ff9999","x":1544745600000,"y":-0.0186373871694343,"color":"#ff9999"},{"sector":"Market","date":"2018-12-17","adjClose":253.8462034052,"daily_return":-0.0198133771525661,"coloract":"#ff9999","x":1545004800000,"y":-0.0198133771525661,"color":"#ff9999"},{"sector":"Market","date":"2018-12-18","adjClose":253.5678632699,"daily_return":-0.00109709281432302,"coloract":"#ff9999","x":1545091200000,"y":-0.00109709281432302,"color":"#ff9999"},{"sector":"Market","date":"2018-12-19","adjClose":249.7705085667,"daily_return":-0.0150889618708181,"coloract":"#ff9999","x":1545177600000,"y":-0.0150889618708181,"color":"#ff9999"},{"sector":"Market","date":"2018-12-20","adjClose":245.7047544473,"daily_return":-0.0164119005807066,"coloract":"#ff9999","x":1545264000000,"y":-0.0164119005807066,"color":"#ff9999"},{"sector":"Market","date":"2018-12-21","adjClose":240.7,"daily_return":-0.020579285170748,"coloract":"#ff9999","x":1545350400000,"y":-0.020579285170748,"color":"#ff9999"},{"sector":"Market","date":"2018-12-24","adjClose":234.34,"daily_return":-0.0267782925490163,"coloract":"#ff9999","x":1545609600000,"y":-0.0267782925490163,"color":"#ff9999"},{"sector":"Market","date":"2018-12-26","adjClose":246.18,"daily_return":0.0492899234421396,"coloract":"#6495ed","x":1545782400000,"y":0.0492899234421396,"color":"#6495ed"},{"sector":"Market","date":"2018-12-27","adjClose":248.07,"daily_return":0.00764798872003603,"coloract":"#6495ed","x":1545868800000,"y":0.00764798872003603,"color":"#6495ed"},{"sector":"Market","date":"2018-12-28","adjClose":247.75,"daily_return":-0.00129079119208786,"coloract":"#ff9999","x":1545955200000,"y":-0.00129079119208786,"color":"#ff9999"},{"sector":"Market","date":"2018-12-31","adjClose":249.92,"daily_return":0.00872069344122384,"coloract":"#6495ed","x":1546214400000,"y":0.00872069344122384,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Materials 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Materials","date":"2018-01-02","adjClose":60.1877354532,"daily_return":0.0141078455347934,"coloract":"#6495ed","x":1514851200000,"y":0.0141078455347934,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-03","adjClose":60.6093143137,"daily_return":0.00697998126489274,"coloract":"#6495ed","x":1514937600000,"y":0.00697998126489274,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-04","adjClose":61.1387389292,"daily_return":0.00869710748581998,"coloract":"#6495ed","x":1515024000000,"y":0.00869710748581998,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-05","adjClose":61.6289469065,"daily_return":0.0079859871798007,"coloract":"#6495ed","x":1515110400000,"y":0.0079859871798007,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-08","adjClose":61.7171843424,"daily_return":0.00143072912069986,"coloract":"#6495ed","x":1515369600000,"y":0.00143072912069986,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-09","adjClose":61.619142747,"daily_return":-0.00158982545311748,"coloract":"#ff9999","x":1515456000000,"y":-0.00158982545311748,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-10","adjClose":61.2465846842,"daily_return":-0.00606449353158833,"coloract":"#ff9999","x":1515542400000,"y":-0.00606449353158833,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-11","adjClose":62.050525767,"daily_return":0.0130408972821154,"coloract":"#6495ed","x":1515628800000,"y":0.0130408972821154,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-12","adjClose":62.1485673625,"daily_return":0.00157878150949564,"coloract":"#6495ed","x":1515715200000,"y":0.00157878150949564,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-16","adjClose":61.423059556,"daily_return":-0.0117424389554834,"coloract":"#ff9999","x":1516060800000,"y":-0.0117424389554834,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-17","adjClose":61.7073801829,"daily_return":0.00461821029522991,"coloract":"#6495ed","x":1516147200000,"y":0.00461821029522991,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-18","adjClose":61.6681635447,"daily_return":-0.000635727930122343,"coloract":"#ff9999","x":1516233600000,"y":-0.000635727930122343,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-19","adjClose":62.0407216074,"daily_return":0.00602315975219536,"coloract":"#6495ed","x":1516320000000,"y":0.00602315975219536,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-22","adjClose":61.8936592143,"daily_return":-0.0023732310783986,"coloract":"#ff9999","x":1516579200000,"y":-0.0023732310783986,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-23","adjClose":61.8838550547,"daily_return":-0.000158415842786752,"coloract":"#ff9999","x":1516665600000,"y":-0.000158415842786752,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-24","adjClose":62.1485673625,"daily_return":0.00426844375936586,"coloract":"#6495ed","x":1516752000000,"y":0.00426844375936586,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-25","adjClose":62.5603420634,"daily_return":0.00660379758362595,"coloract":"#6495ed","x":1516838400000,"y":0.00660379758362595,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-26","adjClose":62.8348585307,"daily_return":0.00437842763604479,"coloract":"#6495ed","x":1516924800000,"y":0.00437842763604479,"color":"#6495ed"},{"sector":"Materials","date":"2018-01-29","adjClose":62.1191548838,"daily_return":-0.0114555980105706,"coloract":"#ff9999","x":1517184000000,"y":-0.0114555980105706,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-30","adjClose":61.6681635447,"daily_return":-0.007286583799476,"coloract":"#ff9999","x":1517270400000,"y":-0.007286583799476,"color":"#ff9999"},{"sector":"Materials","date":"2018-01-31","adjClose":61.7171843424,"daily_return":0.000794596783470602,"coloract":"#6495ed","x":1517356800000,"y":0.000794596783470602,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-01","adjClose":60.8740266215,"daily_return":-0.0137558151125603,"coloract":"#ff9999","x":1517443200000,"y":-0.0137558151125603,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-02","adjClose":59.2759486155,"daily_return":-0.0266029560253527,"coloract":"#ff9999","x":1517529600000,"y":-0.0266029560253527,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-05","adjClose":57.0111877603,"daily_return":-0.0389561103876792,"coloract":"#ff9999","x":1517788800000,"y":-0.0389561103876792,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-06","adjClose":58.8739780741,"daily_return":0.0321516695621664,"coloract":"#6495ed","x":1517875200000,"y":0.0321516695621664,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-07","adjClose":58.3445534586,"daily_return":-0.00903318286944899,"coloract":"#ff9999","x":1517961600000,"y":-0.00903318286944899,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-08","adjClose":56.2954841135,"daily_return":-0.0357516909633731,"coloract":"#ff9999","x":1518048000000,"y":-0.0357516909633731,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-09","adjClose":57.2759000681,"daily_return":0.0172656222665646,"coloract":"#6495ed","x":1518134400000,"y":0.0172656222665646,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-12","adjClose":58.4327908945,"daily_return":0.019997277111103,"coloract":"#6495ed","x":1518393600000,"y":0.019997277111103,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-13","adjClose":58.2857285013,"daily_return":-0.00251995093467006,"coloract":"#ff9999","x":1518480000000,"y":-0.00251995093467006,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-14","adjClose":59.070061265,"daily_return":0.0133669492342374,"coloract":"#6495ed","x":1518566400000,"y":0.0133669492342374,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-15","adjClose":59.5112484446,"daily_return":0.00744112569514765,"coloract":"#6495ed","x":1518652800000,"y":0.00744112569514765,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-16","adjClose":59.2955569346,"daily_return":-0.00363096619394909,"coloract":"#ff9999","x":1518739200000,"y":-0.00363096619394909,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-20","adjClose":59.0308446268,"daily_return":-0.00447428039587372,"coloract":"#ff9999","x":1519084800000,"y":-0.00447428039587372,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-21","adjClose":58.8249572763,"daily_return":-0.00349388925481442,"coloract":"#ff9999","x":1519171200000,"y":-0.00349388925481442,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-22","adjClose":59.2171236582,"daily_return":0.00664454271964843,"coloract":"#6495ed","x":1519257600000,"y":0.00664454271964843,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-23","adjClose":60.0896938578,"daily_return":0.0146275925568826,"coloract":"#6495ed","x":1519344000000,"y":0.0146275925568826,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-26","adjClose":60.3544061655,"daily_return":0.00439561147231515,"coloract":"#6495ed","x":1519603200000,"y":0.00439561147231515,"color":"#6495ed"},{"sector":"Materials","date":"2018-02-27","adjClose":59.5210526041,"daily_return":-0.0139038798280922,"coloract":"#ff9999","x":1519689600000,"y":-0.0139038798280922,"color":"#ff9999"},{"sector":"Materials","date":"2018-02-28","adjClose":58.4622033731,"daily_return":-0.0179496260077743,"coloract":"#ff9999","x":1519776000000,"y":-0.0179496260077743,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-01","adjClose":57.8641496408,"daily_return":-0.0102824336200635,"coloract":"#ff9999","x":1519862400000,"y":-0.0102824336200635,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-02","adjClose":57.8053246836,"daily_return":-0.0010171216323922,"coloract":"#ff9999","x":1519948800000,"y":-0.0010171216323922,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-05","adjClose":58.5700491281,"daily_return":0.0131425649052934,"coloract":"#6495ed","x":1520208000000,"y":0.0131425649052934,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-06","adjClose":59.2171236582,"daily_return":0.010987292153831,"coloract":"#6495ed","x":1520294400000,"y":0.010987292153831,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-07","adjClose":59.0014321482,"daily_return":-0.003649033738645,"coloract":"#ff9999","x":1520380800000,"y":-0.003649033738645,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-08","adjClose":59.0504529459,"daily_return":0.000830495853217705,"coloract":"#6495ed","x":1520467200000,"y":0.000830495853217705,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-09","adjClose":60.1191063364,"daily_return":0.017935486947648,"coloract":"#6495ed","x":1520553600000,"y":0.017935486947648,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-12","adjClose":59.9720439432,"daily_return":-0.00244918074929323,"coloract":"#ff9999","x":1520812800000,"y":-0.00244918074929323,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-13","adjClose":59.7269399546,"daily_return":-0.00409534522665389,"coloract":"#ff9999","x":1520899200000,"y":-0.00409534522665389,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-14","adjClose":58.9916279886,"daily_return":-0.0123876387954711,"coloract":"#ff9999","x":1520985600000,"y":-0.0123876387954711,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-15","adjClose":58.2170993845,"daily_return":-0.0132164198959908,"coloract":"#ff9999","x":1521072000000,"y":-0.0132164198959908,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-16","adjClose":58.2131610536,"daily_return":-6.76513285586822e-05,"coloract":"#ff9999","x":1521158400000,"y":-6.76513285586822e-05,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-19","adjClose":57.3766236589,"daily_return":-0.0144744970682273,"coloract":"#ff9999","x":1521417600000,"y":-0.0144744970682273,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-20","adjClose":57.3175739605,"daily_return":-0.00102968946717397,"coloract":"#ff9999","x":1521504000000,"y":-0.00102968946717397,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-21","adjClose":57.9671206434,"daily_return":0.0112686867685667,"coloract":"#6495ed","x":1521590400000,"y":0.0112686867685667,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-22","adjClose":56.2349961556,"daily_return":-0.0303366938546228,"coloract":"#ff9999","x":1521676800000,"y":-0.0303366938546228,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-23","adjClose":55.1327351179,"daily_return":-0.0197956269706347,"coloract":"#ff9999","x":1521763200000,"y":-0.0197956269706347,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-26","adjClose":56.2645210048,"daily_return":0.0203205154434585,"coloract":"#6495ed","x":1522022400000,"y":0.0203205154434585,"color":"#6495ed"},{"sector":"Materials","date":"2018-03-27","adjClose":55.6937072531,"daily_return":-0.0101969941220457,"coloract":"#ff9999","x":1522108800000,"y":-0.0101969941220457,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-28","adjClose":54.9851108718,"daily_return":-0.0128047276819396,"coloract":"#ff9999","x":1522195200000,"y":-0.0128047276819396,"color":"#ff9999"},{"sector":"Materials","date":"2018-03-29","adjClose":56.0381638274,"daily_return":0.0189705183777304,"coloract":"#6495ed","x":1522281600000,"y":0.0189705183777304,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-02","adjClose":54.8178033928,"daily_return":-0.0220179349167005,"coloract":"#ff9999","x":1522627200000,"y":-0.0220179349167005,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-03","adjClose":55.5952910891,"daily_return":0.0140834844050941,"coloract":"#6495ed","x":1522713600000,"y":0.0140834844050941,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-04","adjClose":55.9594308962,"daily_return":0.00652847488571862,"coloract":"#6495ed","x":1522800000000,"y":0.00652847488571862,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-05","adjClose":57.0026422354,"daily_return":0.0184706418536633,"coloract":"#6495ed","x":1522886400000,"y":0.0184706418536633,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-06","adjClose":55.6149743219,"daily_return":-0.0246451344350902,"coloract":"#ff9999","x":1522972800000,"y":-0.0246451344350902,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-09","adjClose":55.9200644305,"daily_return":0.00547076278340253,"coloract":"#6495ed","x":1523232000000,"y":0.00547076278340253,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-10","adjClose":57.0715335503,"daily_return":0.0203822054633411,"coloract":"#6495ed","x":1523318400000,"y":0.0203822054633411,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-11","adjClose":56.6483440447,"daily_return":-0.00744269987013002,"coloract":"#ff9999","x":1523404800000,"y":-0.00744269987013002,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-12","adjClose":57.2486826456,"daily_return":0.010541875903666,"coloract":"#6495ed","x":1523491200000,"y":0.010541875903666,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-13","adjClose":57.1896329472,"daily_return":-0.00103199183481184,"coloract":"#ff9999","x":1523577600000,"y":-0.00103199183481184,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-16","adjClose":57.957279027,"daily_return":0.0133335308689784,"coloract":"#6495ed","x":1523836800000,"y":0.0133335308689784,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-17","adjClose":58.6166673263,"daily_return":0.0113129108586589,"coloract":"#6495ed","x":1523923200000,"y":0.0113129108586589,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-18","adjClose":59.0398568319,"daily_return":0.00719367385011083,"coloract":"#6495ed","x":1524009600000,"y":0.00719367385011083,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-19","adjClose":58.3804685325,"daily_return":-0.0112313643963073,"coloract":"#ff9999","x":1524096000000,"y":-0.0112313643963073,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-20","adjClose":58.0655368075,"daily_return":-0.00540907336302521,"coloract":"#ff9999","x":1524182400000,"y":-0.00540907336302521,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-23","adjClose":57.8982293285,"daily_return":-0.00288551503044499,"coloract":"#ff9999","x":1524441600000,"y":-0.00288551503044499,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-24","adjClose":56.3334123197,"daily_return":-0.0273989741867231,"coloract":"#ff9999","x":1524528000000,"y":-0.0273989741867231,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-25","adjClose":56.6385024283,"daily_return":0.00540118047876437,"coloract":"#6495ed","x":1524614400000,"y":0.00540118047876437,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-26","adjClose":56.992800619,"daily_return":0.00623594606998878,"coloract":"#6495ed","x":1524700800000,"y":0.00623594606998878,"color":"#6495ed"},{"sector":"Materials","date":"2018-04-27","adjClose":56.8451763729,"daily_return":-0.00259358665276288,"coloract":"#ff9999","x":1524787200000,"y":-0.00259358665276288,"color":"#ff9999"},{"sector":"Materials","date":"2018-04-30","adjClose":56.1070551423,"daily_return":-0.0130698035410131,"coloract":"#ff9999","x":1525046400000,"y":-0.0130698035410131,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-01","adjClose":56.0578470602,"daily_return":-0.000877423940836231,"coloract":"#ff9999","x":1525132800000,"y":-0.000877423940836231,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-02","adjClose":55.9299060469,"daily_return":-0.0022849117946091,"coloract":"#ff9999","x":1525219200000,"y":-0.0022849117946091,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-03","adjClose":56.1857880735,"daily_return":0.00456461466697622,"coloract":"#6495ed","x":1525305600000,"y":0.00456461466697622,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-04","adjClose":56.8845428385,"daily_return":0.012359805702677,"coloract":"#6495ed","x":1525392000000,"y":0.012359805702677,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-07","adjClose":56.8648596057,"daily_return":-0.00034608063996,"coloract":"#ff9999","x":1525651200000,"y":-0.00034608063996,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-08","adjClose":56.7467602088,"daily_return":-0.00207900282789364,"coloract":"#ff9999","x":1525737600000,"y":-0.00207900282789364,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-09","adjClose":57.5636143707,"daily_return":0.014292107245236,"coloract":"#6495ed","x":1525824000000,"y":0.014292107245236,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-10","adjClose":57.9769622598,"daily_return":0.00715505607800271,"coloract":"#6495ed","x":1525910400000,"y":0.00715505607800271,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-11","adjClose":57.957279027,"daily_return":-0.000339558576839316,"coloract":"#ff9999","x":1525996800000,"y":-0.000339558576839316,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-14","adjClose":58.1836362044,"daily_return":0.00389797968372285,"coloract":"#6495ed","x":1526256000000,"y":0.00389797968372285,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-15","adjClose":58.006487109,"daily_return":-0.00304929933134712,"coloract":"#ff9999","x":1526342400000,"y":-0.00304929933134712,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-16","adjClose":58.6954002576,"daily_return":0.0118065125876203,"coloract":"#6495ed","x":1526428800000,"y":0.0118065125876203,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-17","adjClose":58.8331828873,"daily_return":0.00234466695903812,"coloract":"#6495ed","x":1526515200000,"y":0.00234466695903812,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-18","adjClose":58.9119158186,"daily_return":0.00133734556936638,"coloract":"#6495ed","x":1526601600000,"y":0.00133734556936638,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-21","adjClose":59.2268475436,"daily_return":0.00533156877637264,"coloract":"#6495ed","x":1526860800000,"y":0.00533156877637264,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-22","adjClose":58.7347667232,"daily_return":-0.00834311530635734,"coloract":"#ff9999","x":1526947200000,"y":-0.00834311530635734,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-23","adjClose":58.5969840935,"daily_return":-0.00234860030766093,"coloract":"#ff9999","x":1527033600000,"y":-0.00234860030766093,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-24","adjClose":58.3903101489,"daily_return":-0.00353327531760961,"coloract":"#ff9999","x":1527120000000,"y":-0.00353327531760961,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-25","adjClose":58.0753784239,"daily_return":-0.00540815920048843,"coloract":"#ff9999","x":1527206400000,"y":-0.00540815920048843,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-29","adjClose":57.0715335503,"daily_return":-0.0174363391803594,"coloract":"#ff9999","x":1527552000000,"y":-0.0174363391803594,"color":"#ff9999"},{"sector":"Materials","date":"2018-05-30","adjClose":57.740763466,"daily_return":0.0116579410485942,"coloract":"#6495ed","x":1527638400000,"y":0.0116579410485942,"color":"#6495ed"},{"sector":"Materials","date":"2018-05-31","adjClose":57.258524262,"daily_return":-0.00838686987081338,"coloract":"#ff9999","x":1527724800000,"y":-0.00838686987081338,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-01","adjClose":58.1344281223,"daily_return":0.015181528251814,"coloract":"#6495ed","x":1527811200000,"y":0.015181528251814,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-04","adjClose":58.4690430802,"daily_return":0.00573938104896143,"coloract":"#6495ed","x":1528070400000,"y":0.00573938104896143,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-05","adjClose":58.9119158186,"daily_return":0.00754594005754683,"coloract":"#6495ed","x":1528156800000,"y":0.00754594005754683,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-06","adjClose":60.0043352399,"daily_return":0.0183734374952751,"coloract":"#6495ed","x":1528243200000,"y":0.0183734374952751,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-07","adjClose":59.6992451312,"daily_return":-0.00509743766013315,"coloract":"#ff9999","x":1528329600000,"y":-0.00509743766013315,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-08","adjClose":59.8665526101,"daily_return":0.00279858607156491,"coloract":"#6495ed","x":1528416000000,"y":0.00279858607156491,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-11","adjClose":59.9551271578,"daily_return":0.00147843969480821,"coloract":"#6495ed","x":1528675200000,"y":0.00147843969480821,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-12","adjClose":60.0338600891,"daily_return":0.00131233614694448,"coloract":"#6495ed","x":1528761600000,"y":0.00131233614694448,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-13","adjClose":59.3843134062,"daily_return":-0.0108786304418702,"coloract":"#ff9999","x":1528848000000,"y":-0.0108786304418702,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-14","adjClose":59.4728879538,"daily_return":0.0014904366413333,"coloract":"#6495ed","x":1528934400000,"y":0.0014904366413333,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-15","adjClose":59.0593432324,"daily_return":-0.00697778815435335,"coloract":"#ff9999","x":1529020800000,"y":-0.00697778815435335,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-18","adjClose":58.9110274533,"daily_return":-0.00251445945930051,"coloract":"#ff9999","x":1529280000000,"y":-0.00251445945930051,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-19","adjClose":57.8332661252,"daily_return":-0.0184641478313923,"coloract":"#ff9999","x":1529366400000,"y":-0.0184641478313923,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-20","adjClose":57.6453994717,"daily_return":-0.00325370609831754,"coloract":"#ff9999","x":1529452800000,"y":-0.00325370609831754,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-21","adjClose":57.0323609182,"daily_return":-0.0106916003787294,"coloract":"#ff9999","x":1529539200000,"y":-0.0106916003787294,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-22","adjClose":57.8629292811,"daily_return":0.014458083175465,"coloract":"#6495ed","x":1529625600000,"y":0.014458083175465,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-25","adjClose":56.9631468879,"daily_return":-0.0156724124089109,"coloract":"#ff9999","x":1529884800000,"y":-0.0156724124089109,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-26","adjClose":57.1806766973,"daily_return":0.00381150842710909,"coloract":"#6495ed","x":1529971200000,"y":0.00381150842710909,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-27","adjClose":57.0026977624,"daily_return":-0.00311742545498461,"coloract":"#ff9999","x":1530057600000,"y":-0.00311742545498461,"color":"#ff9999"},{"sector":"Materials","date":"2018-06-28","adjClose":57.2202275717,"daily_return":0.00380886887020004,"coloract":"#6495ed","x":1530144000000,"y":0.00380886887020004,"color":"#6495ed"},{"sector":"Materials","date":"2018-06-29","adjClose":57.4179819438,"daily_return":0.00345006379793578,"coloract":"#6495ed","x":1530230400000,"y":0.00345006379793578,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-02","adjClose":57.111462667,"daily_return":-0.00535268479974871,"coloract":"#ff9999","x":1530489600000,"y":-0.00535268479974871,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-03","adjClose":57.012585481,"daily_return":-0.00173280237329987,"coloract":"#ff9999","x":1530576000000,"y":-0.00173280237329987,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-05","adjClose":57.5069714113,"daily_return":0.00863414101518778,"coloract":"#6495ed","x":1530748800000,"y":0.00863414101518778,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-06","adjClose":57.7937152508,"daily_return":0.00497385469163625,"coloract":"#6495ed","x":1530835200000,"y":0.00497385469163625,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-09","adjClose":58.3078766183,"daily_return":0.00885715209432369,"coloract":"#6495ed","x":1531094400000,"y":0.00885715209432369,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-10","adjClose":58.8022625486,"daily_return":0.00844314370627419,"coloract":"#6495ed","x":1531180800000,"y":0.00844314370627419,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-11","adjClose":57.813490688,"daily_return":-0.0169581815312965,"coloract":"#ff9999","x":1531267200000,"y":-0.0169581815312965,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-12","adjClose":57.9519187485,"daily_return":0.00239152830108758,"coloract":"#6495ed","x":1531353600000,"y":0.00239152830108758,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-13","adjClose":57.9222555927,"daily_return":-0.000511989088450626,"coloract":"#ff9999","x":1531440000000,"y":-0.000511989088450626,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-16","adjClose":57.4575328182,"daily_return":-0.00805557531306089,"coloract":"#ff9999","x":1531699200000,"y":-0.00805557531306089,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-17","adjClose":58.2089994323,"daily_return":0.0129938569541963,"coloract":"#6495ed","x":1531785600000,"y":0.0129938569541963,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-18","adjClose":57.6651749089,"daily_return":-0.00938653534117861,"coloract":"#ff9999","x":1531872000000,"y":-0.00938653534117861,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-19","adjClose":57.8728169997,"daily_return":0.00359435560408539,"coloract":"#6495ed","x":1531958400000,"y":0.00359435560408539,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-20","adjClose":57.6355117531,"daily_return":-0.00410889124672931,"coloract":"#ff9999","x":1532044800000,"y":-0.00410889124672931,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-23","adjClose":57.3191047577,"daily_return":-0.00550491670607833,"coloract":"#ff9999","x":1532304000000,"y":-0.00550491670607833,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-24","adjClose":58.0606836532,"daily_return":0.0128547489557649,"coloract":"#6495ed","x":1532390400000,"y":0.0128547489557649,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-25","adjClose":58.515518709,"daily_return":0.00780326266466957,"coloract":"#6495ed","x":1532476800000,"y":0.00780326266466957,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-26","adjClose":58.8517011416,"daily_return":0.00572874355283304,"coloract":"#6495ed","x":1532563200000,"y":0.00572874355283304,"color":"#6495ed"},{"sector":"Materials","date":"2018-07-27","adjClose":58.6341713323,"daily_return":-0.00370308452069334,"coloract":"#ff9999","x":1532649600000,"y":-0.00370308452069334,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-30","adjClose":58.5254064276,"daily_return":-0.00185669730166804,"coloract":"#ff9999","x":1532908800000,"y":-0.00185669730166804,"color":"#ff9999"},{"sector":"Materials","date":"2018-07-31","adjClose":59.0593432324,"daily_return":0.00908179804307085,"coloract":"#6495ed","x":1532995200000,"y":0.00908179804307085,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-01","adjClose":58.4561923974,"daily_return":-0.0102651301050658,"coloract":"#ff9999","x":1533081600000,"y":-0.0102651301050658,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-02","adjClose":58.0705713718,"daily_return":-0.00661860710507778,"coloract":"#ff9999","x":1533168000000,"y":-0.00661860710507778,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-03","adjClose":58.6242836137,"daily_return":0.00948998818443592,"coloract":"#6495ed","x":1533254400000,"y":0.00948998818443592,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-06","adjClose":58.6045081765,"daily_return":-0.000337381919332636,"coloract":"#ff9999","x":1533513600000,"y":-0.000337381919332636,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-07","adjClose":58.8022625486,"daily_return":0.00336870791848831,"coloract":"#6495ed","x":1533600000000,"y":0.00336870791848831,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-08","adjClose":58.5550695835,"daily_return":-0.00421266104429563,"coloract":"#ff9999","x":1533686400000,"y":-0.00421266104429563,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-09","adjClose":58.8714765789,"daily_return":0.00538903291443393,"coloract":"#6495ed","x":1533772800000,"y":0.00538903291443393,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-10","adjClose":58.0211327788,"daily_return":-0.0145494023128778,"coloract":"#ff9999","x":1533859200000,"y":-0.0145494023128778,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-13","adjClose":57.437757381,"daily_return":-0.0101054212713523,"coloract":"#ff9999","x":1534118400000,"y":-0.0101054212713523,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-14","adjClose":57.9222555927,"daily_return":0.00839980939543228,"coloract":"#6495ed","x":1534204800000,"y":0.00839980939543228,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-15","adjClose":57.0026977624,"daily_return":-0.0160030946838496,"coloract":"#ff9999","x":1534291200000,"y":-0.0160030946838496,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-16","adjClose":57.3487679136,"daily_return":0.00605276383130349,"coloract":"#6495ed","x":1534377600000,"y":0.00605276383130349,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-17","adjClose":57.7739398136,"daily_return":0.00738644601907623,"coloract":"#6495ed","x":1534464000000,"y":0.00738644601907623,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-20","adjClose":58.1793362764,"daily_return":0.00699243916625214,"coloract":"#6495ed","x":1534723200000,"y":0.00699243916625214,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-21","adjClose":58.4067538044,"daily_return":0.00390128558705616,"coloract":"#6495ed","x":1534809600000,"y":0.00390128558705616,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-22","adjClose":58.1101222462,"daily_return":-0.00509166069503753,"coloract":"#ff9999","x":1534896000000,"y":-0.00509166069503753,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-23","adjClose":57.714613502,"daily_return":-0.00682946140831575,"coloract":"#ff9999","x":1534982400000,"y":-0.00682946140831575,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-24","adjClose":58.466080116,"daily_return":0.0129363506163536,"coloract":"#6495ed","x":1535068800000,"y":0.0129363506163536,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-27","adjClose":59.2669853231,"daily_return":0.0136056520563104,"coloract":"#6495ed","x":1535328000000,"y":0.0136056520563104,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-28","adjClose":59.0395677951,"daily_return":-0.00384455133074901,"coloract":"#ff9999","x":1535414400000,"y":-0.00384455133074901,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-29","adjClose":59.4845151324,"daily_return":0.00750816908335583,"coloract":"#6495ed","x":1535500800000,"y":0.00750816908335583,"color":"#6495ed"},{"sector":"Materials","date":"2018-08-30","adjClose":58.7824871114,"daily_return":-0.0118720565046111,"coloract":"#ff9999","x":1535587200000,"y":-0.0118720565046111,"color":"#ff9999"},{"sector":"Materials","date":"2018-08-31","adjClose":58.6045081765,"daily_return":-0.00303234733697355,"coloract":"#ff9999","x":1535673600000,"y":-0.00303234733697355,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-04","adjClose":58.1991117137,"daily_return":-0.0069415329937792,"coloract":"#ff9999","x":1536019200000,"y":-0.0069415329937792,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-05","adjClose":58.5847327393,"daily_return":0.00660403720947045,"coloract":"#6495ed","x":1536105600000,"y":0.00660403720947045,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-06","adjClose":58.7033853626,"daily_return":0.00202326826786425,"coloract":"#6495ed","x":1536192000000,"y":0.00202326826786425,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-07","adjClose":58.3177643369,"daily_return":-0.00659064489672367,"coloract":"#ff9999","x":1536278400000,"y":-0.00659064489672367,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-10","adjClose":58.3869783672,"daily_return":0.00118613925726052,"coloract":"#6495ed","x":1536537600000,"y":0.00118613925726052,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-11","adjClose":58.5056309904,"daily_return":0.00203011404404396,"coloract":"#6495ed","x":1536624000000,"y":0.00203011404404396,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-12","adjClose":58.5352941463,"daily_return":0.000506885202769425,"coloract":"#6495ed","x":1536710400000,"y":0.000506885202769425,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-13","adjClose":58.7627116742,"daily_return":0.00387760748804311,"coloract":"#6495ed","x":1536796800000,"y":0.00387760748804311,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-14","adjClose":58.742936237,"daily_return":-0.000336587010722589,"coloract":"#ff9999","x":1536883200000,"y":-0.000336587010722589,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-17","adjClose":58.9505783277,"daily_return":0.00352852588190977,"coloract":"#6495ed","x":1537142400000,"y":0.00352852588190977,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-18","adjClose":59.0099046393,"daily_return":0.00100586764499155,"coloract":"#6495ed","x":1537228800000,"y":0.00100586764499155,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-19","adjClose":59.6526063487,"daily_return":0.0108325365575714,"coloract":"#6495ed","x":1537315200000,"y":0.0108325365575714,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-20","adjClose":60.2953080581,"daily_return":0.0107164491078358,"coloract":"#6495ed","x":1537401600000,"y":0.0107164491078358,"color":"#6495ed"},{"sector":"Materials","date":"2018-09-21","adjClose":60.16558119,"daily_return":-0.0021538429453809,"coloract":"#ff9999","x":1537488000000,"y":-0.0021538429453809,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-24","adjClose":59.3211171211,"daily_return":-0.0141350985705939,"coloract":"#ff9999","x":1537747200000,"y":-0.0141350985705939,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-25","adjClose":59.0131361077,"daily_return":-0.00520528419103172,"coloract":"#ff9999","x":1537833600000,"y":-0.00520528419103172,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-26","adjClose":58.4269786952,"daily_return":-0.00998231789643445,"coloract":"#ff9999","x":1537920000000,"y":-0.00998231789643445,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-27","adjClose":57.9203002539,"daily_return":-0.00870981511491919,"coloract":"#ff9999","x":1538006400000,"y":-0.00870981511491919,"color":"#ff9999"},{"sector":"Materials","date":"2018-09-28","adjClose":57.5527100121,"daily_return":-0.00636670824880703,"coloract":"#ff9999","x":1538092800000,"y":-0.00636670824880703,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-01","adjClose":58.1289325533,"daily_return":0.00996229469300669,"coloract":"#6495ed","x":1538352000000,"y":0.00996229469300669,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-02","adjClose":58.3773043382,"daily_return":0.00426367150441198,"coloract":"#6495ed","x":1538438400000,"y":0.00426367150441198,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-03","adjClose":57.9600397395,"daily_return":-0.00717338686538671,"coloract":"#ff9999","x":1538524800000,"y":-0.00717338686538671,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-04","adjClose":57.6917982117,"daily_return":-0.00463878505626703,"coloract":"#ff9999","x":1538611200000,"y":-0.00463878505626703,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-05","adjClose":57.2645987416,"daily_return":-0.00743240825193858,"coloract":"#ff9999","x":1538697600000,"y":-0.00743240825193858,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-08","adjClose":57.2347941274,"daily_return":-0.000520607387102245,"coloract":"#ff9999","x":1538956800000,"y":-0.000520607387102245,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-09","adjClose":55.3372336903,"daily_return":-0.0337160168104251,"coloract":"#ff9999","x":1539043200000,"y":-0.0337160168104251,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-10","adjClose":53.8867424661,"daily_return":-0.0265615033011319,"coloract":"#ff9999","x":1539129600000,"y":-0.0265615033011319,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-11","adjClose":53.2608455679,"daily_return":-0.0116830257943294,"coloract":"#ff9999","x":1539216000000,"y":-0.0116830257943294,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-12","adjClose":53.4098686389,"daily_return":0.00279407837584067,"coloract":"#6495ed","x":1539302400000,"y":0.00279407837584067,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-15","adjClose":53.2310409537,"daily_return":-0.00335383209890283,"coloract":"#ff9999","x":1539561600000,"y":-0.00335383209890283,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-16","adjClose":54.085439894,"daily_return":0.0159233136671793,"coloract":"#6495ed","x":1539648000000,"y":0.0159233136671793,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-17","adjClose":53.7377193951,"daily_return":-0.00644985189897795,"coloract":"#ff9999","x":1539734400000,"y":-0.00644985189897795,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-18","adjClose":53.1316922398,"daily_return":-0.011341573649303,"coloract":"#ff9999","x":1539820800000,"y":-0.011341573649303,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-19","adjClose":52.7541671266,"daily_return":-0.00713082398684595,"coloract":"#ff9999","x":1539907200000,"y":-0.00713082398684595,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-22","adjClose":52.3369025279,"daily_return":-0.00794105137202061,"coloract":"#ff9999","x":1540166400000,"y":-0.00794105137202061,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-23","adjClose":51.8202892151,"daily_return":-0.00991995925807343,"coloract":"#ff9999","x":1540252800000,"y":-0.00991995925807343,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-24","adjClose":50.1810354344,"daily_return":-0.0321445811370595,"coloract":"#ff9999","x":1540339200000,"y":-0.0321445811370595,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-25","adjClose":50.8268020753,"daily_return":0.0127866402304853,"coloract":"#6495ed","x":1540425600000,"y":0.0127866402304853,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-26","adjClose":50.5287559333,"daily_return":-0.00588121671749242,"coloract":"#ff9999","x":1540512000000,"y":-0.00588121671749242,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-29","adjClose":50.4095374765,"daily_return":-0.00236220582316982,"coloract":"#ff9999","x":1540771200000,"y":-0.00236220582316982,"color":"#ff9999"},{"sector":"Materials","date":"2018-10-30","adjClose":51.5619825588,"daily_return":0.0226042360019156,"coloract":"#6495ed","x":1540857600000,"y":0.0226042360019156,"color":"#6495ed"},{"sector":"Materials","date":"2018-10-31","adjClose":52.2673584281,"daily_return":0.0135874255708441,"coloract":"#6495ed","x":1540944000000,"y":0.0135874255708441,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-01","adjClose":53.7377193951,"daily_return":0.0277431101407197,"coloract":"#6495ed","x":1541030400000,"y":0.0277431101407197,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-02","adjClose":53.6085660669,"daily_return":-0.00240629454411678,"coloract":"#ff9999","x":1541116800000,"y":-0.00240629454411678,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-05","adjClose":53.7675240093,"daily_return":0.00296077196344546,"coloract":"#6495ed","x":1541376000000,"y":0.00296077196344546,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-06","adjClose":54.6517275637,"daily_return":0.0163111835833769,"coloract":"#6495ed","x":1541462400000,"y":0.0163111835833769,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-07","adjClose":55.6352798322,"daily_return":0.0178367038484755,"coloract":"#6495ed","x":1541548800000,"y":0.0178367038484755,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-08","adjClose":55.3968429186,"daily_return":-0.00429492428348421,"coloract":"#ff9999","x":1541635200000,"y":-0.00429492428348421,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-09","adjClose":54.6219229496,"daily_return":-0.0140872837135042,"coloract":"#ff9999","x":1541721600000,"y":-0.0140872837135042,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-12","adjClose":53.8171983663,"daily_return":-0.0148422330675149,"coloract":"#ff9999","x":1541980800000,"y":-0.0148422330675149,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-13","adjClose":53.6582404239,"daily_return":-0.00295803506542036,"coloract":"#ff9999","x":1542067200000,"y":-0.00295803506542036,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-14","adjClose":53.5986311955,"daily_return":-0.00111152290081185,"coloract":"#ff9999","x":1542153600000,"y":-0.00111152290081185,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-15","adjClose":54.333811679,"daily_return":0.0136231856545908,"coloract":"#6495ed","x":1542240000000,"y":0.0136231856545908,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-16","adjClose":54.8802296059,"daily_return":0.0100064511819808,"coloract":"#6495ed","x":1542326400000,"y":0.0100064511819808,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-19","adjClose":54.0953747654,"daily_return":-0.0144044791623092,"coloract":"#ff9999","x":1542585600000,"y":-0.0144044791623092,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-20","adjClose":53.111822497,"daily_return":-0.0183491386670327,"coloract":"#ff9999","x":1542672000000,"y":-0.0183491386670327,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-21","adjClose":53.5390219671,"daily_return":0.00801122123387632,"coloract":"#6495ed","x":1542758400000,"y":0.00801122123387632,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-23","adjClose":52.962799426,"daily_return":-0.0108210011103718,"coloract":"#ff9999","x":1542931200000,"y":-0.0108210011103718,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-26","adjClose":53.5688265813,"daily_return":0.0113775357690962,"coloract":"#6495ed","x":1543190400000,"y":0.0113775357690962,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-27","adjClose":52.913125069,"daily_return":-0.0123158862181105,"coloract":"#ff9999","x":1543276800000,"y":-0.0123158862181105,"color":"#ff9999"},{"sector":"Materials","date":"2018-11-28","adjClose":53.7277845237,"daily_return":0.0152788513491817,"coloract":"#6495ed","x":1543363200000,"y":0.0152788513491817,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-29","adjClose":54.1152445082,"daily_return":0.00718565966002593,"coloract":"#6495ed","x":1543449600000,"y":0.00718565966002593,"color":"#6495ed"},{"sector":"Materials","date":"2018-11-30","adjClose":54.2543327078,"daily_return":0.00256692476883913,"coloract":"#6495ed","x":1543536000000,"y":0.00256692476883913,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-03","adjClose":55.2080803621,"daily_return":0.0174264711283763,"coloract":"#6495ed","x":1543795200000,"y":0.0174264711283763,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-04","adjClose":53.5688265813,"daily_return":-0.0301420206883125,"coloract":"#ff9999","x":1543881600000,"y":-0.0301420206883125,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-06","adjClose":52.8435809692,"daily_return":-0.0136310578498549,"coloract":"#ff9999","x":1544054400000,"y":-0.0136310578498549,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-07","adjClose":51.5719174302,"daily_return":-0.0243589589146631,"coloract":"#ff9999","x":1544140800000,"y":-0.0243589589146631,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-10","adjClose":51.7110056298,"daily_return":0.00269334522221554,"coloract":"#6495ed","x":1544400000000,"y":0.00269334522221554,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-11","adjClose":51.542112816,"daily_return":-0.0032714356131911,"coloract":"#ff9999","x":1544486400000,"y":-0.0032714356131911,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-12","adjClose":51.9891820289,"daily_return":0.00863646093515102,"coloract":"#6495ed","x":1544572800000,"y":0.00863646093515102,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-13","adjClose":51.3831548736,"daily_return":-0.0117252664801697,"coloract":"#ff9999","x":1544659200000,"y":-0.0117252664801697,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-14","adjClose":50.9857600177,"daily_return":-0.00776401415535144,"coloract":"#ff9999","x":1544745600000,"y":-0.00776401415535144,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-17","adjClose":50.1114913346,"daily_return":-0.0172960286511512,"coloract":"#ff9999","x":1545004800000,"y":-0.0172960286511512,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-18","adjClose":50.3896677337,"daily_return":0.00553579903103829,"coloract":"#6495ed","x":1545091200000,"y":0.00553579903103829,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-19","adjClose":49.7041616072,"daily_return":-0.0136974846287878,"coloract":"#ff9999","x":1545177600000,"y":-0.0136974846287878,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-20","adjClose":49.0385252235,"daily_return":-0.013482445902854,"coloract":"#ff9999","x":1545264000000,"y":-0.013482445902854,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-21","adjClose":48.6,"daily_return":-0.00898268733904706,"coloract":"#ff9999","x":1545350400000,"y":-0.00898268733904706,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-24","adjClose":47.34,"daily_return":-0.0262679268206103,"coloract":"#ff9999","x":1545609600000,"y":-0.0262679268206103,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-26","adjClose":49.46,"daily_return":0.0438086580074324,"coloract":"#6495ed","x":1545782400000,"y":0.0438086580074324,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-27","adjClose":50.37,"daily_return":0.018231497664289,"coloract":"#6495ed","x":1545868800000,"y":0.018231497664289,"color":"#6495ed"},{"sector":"Materials","date":"2018-12-28","adjClose":50.1,"daily_return":-0.00537475166674017,"coloract":"#ff9999","x":1545955200000,"y":-0.00537475166674017,"color":"#ff9999"},{"sector":"Materials","date":"2018-12-31","adjClose":50.52,"daily_return":0.00834828939147148,"coloract":"#6495ed","x":1546214400000,"y":0.00834828939147148,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    {"x":{"hc_opts":{"title":{"text":"Real Estate 2018 daily returns"},"yAxis":{"title":{"text":null}},"credits":{"enabled":false},"exporting":{"enabled":true},"plotOptions":{"series":{"label":{"enabled":false},"turboThreshold":0},"treemap":{"layoutAlgorithm":"squarified"}},"series":[{"group":"group","data":[{"sector":"Real Estate","date":"2018-01-02","adjClose":31.5703697515,"daily_return":-0.00578476266834382,"coloract":"#ff9999","x":1514851200000,"y":-0.00578476266834382,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-03","adjClose":31.5800095591,"daily_return":0.00030529690494685,"coloract":"#6495ed","x":1514937600000,"y":0.00030529690494685,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-04","adjClose":31.0401803359,"daily_return":-0.0172418064334598,"coloract":"#ff9999","x":1515024000000,"y":-0.0172418064334598,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-05","adjClose":31.1076589888,"daily_return":0.00217155351337528,"coloract":"#6495ed","x":1515110400000,"y":0.00217155351337528,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-08","adjClose":31.319734755,"daily_return":0.00679434361490028,"coloract":"#6495ed","x":1515369600000,"y":0.00679434361490028,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-09","adjClose":30.9630618754,"daily_return":-0.0114534606013086,"coloract":"#ff9999","x":1515456000000,"y":-0.0114534606013086,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-10","adjClose":30.4810714975,"daily_return":-0.0156890572976929,"coloract":"#ff9999","x":1515542400000,"y":-0.0156890572976929,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-11","adjClose":30.2882753464,"daily_return":-0.0063451989520571,"coloract":"#ff9999","x":1515628800000,"y":-0.0063451989520571,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-12","adjClose":30.0665597725,"daily_return":-0.00734710221016188,"coloract":"#ff9999","x":1515715200000,"y":-0.00734710221016188,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-16","adjClose":30.2111568859,"daily_return":0.00479770630929943,"coloract":"#6495ed","x":1516060800000,"y":0.00479770630929943,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-17","adjClose":30.3846734219,"daily_return":0.00572702806052039,"coloract":"#6495ed","x":1516147200000,"y":0.00572702806052039,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-18","adjClose":30.0954791952,"daily_return":-0.00956334990135277,"coloract":"#ff9999","x":1516233600000,"y":-0.00956334990135277,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-19","adjClose":30.3075549615,"daily_return":0.00702205247471532,"coloract":"#6495ed","x":1516320000000,"y":0.00702205247471532,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-22","adjClose":30.5967491882,"daily_return":0.00949674753621554,"coloract":"#6495ed","x":1516579200000,"y":0.00949674753621554,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-23","adjClose":31.0690997585,"daily_return":0.015319980728175,"coloract":"#6495ed","x":1516665600000,"y":0.015319980728175,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-24","adjClose":30.9823414905,"daily_return":-0.00279633551735392,"coloract":"#ff9999","x":1516752000000,"y":-0.00279633551735392,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-25","adjClose":30.9148628376,"daily_return":-0.00218034660417343,"coloract":"#ff9999","x":1516838400000,"y":-0.00218034660417343,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-26","adjClose":31.0016211056,"daily_return":0.00280243060507468,"coloract":"#6495ed","x":1516924800000,"y":0.00280243060507468,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-01-29","adjClose":30.644948226,"daily_return":-0.0115716693869019,"coloract":"#ff9999","x":1517184000000,"y":-0.0115716693869019,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-30","adjClose":30.5196307277,"daily_return":-0.00409772047147028,"coloract":"#ff9999","x":1517270400000,"y":-0.00409772047147028,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-01-31","adjClose":31.146218219,"daily_return":0.0203227253851157,"coloract":"#6495ed","x":1517356800000,"y":0.0203227253851157,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-01","adjClose":30.5774695731,"daily_return":-0.0184293830695768,"coloract":"#ff9999","x":1517443200000,"y":-0.0184293830695768,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-02","adjClose":30.230436501,"daily_return":-0.0114142012851657,"coloract":"#ff9999","x":1517529600000,"y":-0.0114142012851657,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-05","adjClose":29.4496120888,"daily_return":-0.0261685098654496,"coloract":"#ff9999","x":1517788800000,"y":-0.0261685098654496,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-06","adjClose":29.3917732435,"daily_return":-0.0019659246158672,"coloract":"#ff9999","x":1517875200000,"y":-0.0019659246158672,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-07","adjClose":29.2568159377,"daily_return":-0.00460224349437821,"coloract":"#ff9999","x":1517961600000,"y":-0.00460224349437821,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-08","adjClose":28.3410342197,"daily_return":-0.0318018431614351,"coloract":"#ff9999","x":1518048000000,"y":-0.0318018431614351,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-09","adjClose":29.0061809412,"daily_return":0.0231982162979123,"coloract":"#6495ed","x":1518134400000,"y":0.0231982162979123,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-12","adjClose":29.0832994016,"daily_return":0.00265516252689046,"coloract":"#6495ed","x":1518393600000,"y":0.00265516252689046,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-13","adjClose":29.2953751679,"daily_return":0.00726555375877158,"coloract":"#6495ed","x":1518480000000,"y":0.00726555375877158,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-14","adjClose":29.1122188243,"daily_return":-0.00627168254799404,"coloract":"#ff9999","x":1518566400000,"y":-0.00627168254799404,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-15","adjClose":29.3821334359,"daily_return":0.00922880643707602,"coloract":"#6495ed","x":1518652800000,"y":0.00922880643707602,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-16","adjClose":29.5749295871,"daily_return":0.00654024568215883,"coloract":"#6495ed","x":1518739200000,"y":0.00654024568215883,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-20","adjClose":29.2760955528,"daily_return":-0.0101556974417578,"coloract":"#ff9999","x":1519084800000,"y":-0.0101556974417578,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-21","adjClose":28.7362663296,"daily_return":-0.0186113713665499,"coloract":"#ff9999","x":1519171200000,"y":-0.0186113713665499,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-22","adjClose":29.0640197865,"daily_return":0.0113410154810505,"coloract":"#6495ed","x":1519257600000,"y":0.0113410154810505,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-23","adjClose":29.5942092022,"daily_return":0.0180777314208309,"coloract":"#6495ed","x":1519344000000,"y":0.0180777314208309,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-26","adjClose":29.7002470853,"daily_return":0.00357665801424956,"coloract":"#6495ed","x":1519603200000,"y":0.00357665801424956,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-02-27","adjClose":29.0640197865,"daily_return":-0.0216543894350805,"coloract":"#ff9999","x":1519689600000,"y":-0.0216543894350805,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-02-28","adjClose":29.0254605563,"daily_return":-0.00132758067848959,"coloract":"#ff9999","x":1519776000000,"y":-0.00132758067848959,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-01","adjClose":28.8808634429,"daily_return":-0.00499418384580697,"coloract":"#ff9999","x":1519862400000,"y":-0.00499418384580697,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-02","adjClose":28.7844653674,"daily_return":-0.00334336653529554,"coloract":"#ff9999","x":1519948800000,"y":-0.00334336653529554,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-05","adjClose":29.1893372848,"daily_return":0.01396763645735,"coloract":"#6495ed","x":1520208000000,"y":0.01396763645735,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-06","adjClose":29.3050149755,"daily_return":0.00395517984317584,"coloract":"#6495ed","x":1520294400000,"y":0.00395517984317584,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-07","adjClose":29.4303324737,"daily_return":0.00426719833289457,"coloract":"#6495ed","x":1520380800000,"y":0.00426719833289457,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-08","adjClose":29.6616878551,"daily_return":0.00783038258766533,"coloract":"#6495ed","x":1520467200000,"y":0.00783038258766533,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-09","adjClose":29.8544840063,"daily_return":0.0064788046526898,"coloract":"#6495ed","x":1520553600000,"y":0.0064788046526898,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-12","adjClose":29.9990811196,"daily_return":0.00483170532287902,"coloract":"#6495ed","x":1520812800000,"y":0.00483170532287902,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-13","adjClose":30.0954791952,"daily_return":0.00320821577785546,"coloract":"#6495ed","x":1520899200000,"y":0.00320821577785546,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-14","adjClose":30.1533180406,"daily_return":0.00192000059160469,"coloract":"#6495ed","x":1520985600000,"y":0.00192000059160469,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-15","adjClose":30.1533180406,"daily_return":0,"coloract":"#ff9999","x":1521072000000,"y":0,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-16","adjClose":30.3107042866,"daily_return":0.00520595869739049,"coloract":"#6495ed","x":1521158400000,"y":0.00520595869739049,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-19","adjClose":30.0101182876,"daily_return":-0.00996632586261237,"coloract":"#ff9999","x":1521417600000,"y":-0.00996632586261237,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-20","adjClose":30.0004219651,"daily_return":-0.000323153984068458,"coloract":"#ff9999","x":1521504000000,"y":-0.000323153984068458,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-21","adjClose":29.7289249337,"daily_return":-0.00909097170265216,"coloract":"#ff9999","x":1521590400000,"y":-0.00909097170265216,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-22","adjClose":29.6222653857,"daily_return":-0.00359418782493304,"coloract":"#ff9999","x":1521676800000,"y":-0.00359418782493304,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-23","adjClose":29.1568419033,"daily_return":-0.0158366886196184,"coloract":"#ff9999","x":1521763200000,"y":-0.0158366886196184,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-03-26","adjClose":29.5543911278,"daily_return":0.0135427338184151,"coloract":"#6495ed","x":1522022400000,"y":0.0135427338184151,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-27","adjClose":29.6028727406,"daily_return":0.00163907593028467,"coloract":"#6495ed","x":1522108800000,"y":0.00163907593028467,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-28","adjClose":30.1458668033,"daily_return":0.0181764173233274,"coloract":"#6495ed","x":1522195200000,"y":0.0181764173233274,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-03-29","adjClose":30.1361704807,"daily_return":-0.000321698572924412,"coloract":"#ff9999","x":1522281600000,"y":-0.000321698572924412,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-02","adjClose":29.7677102239,"daily_return":-0.0123018709048663,"coloract":"#ff9999","x":1522627200000,"y":-0.0123018709048663,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-03","adjClose":29.8743697719,"daily_return":0.00357665801430285,"coloract":"#6495ed","x":1522713600000,"y":0.00357665801430285,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-04","adjClose":30.2234373837,"daily_return":0.0116167811724672,"coloract":"#6495ed","x":1522800000000,"y":0.0116167811724672,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-05","adjClose":30.2525263513,"daily_return":0.000962001034686022,"coloract":"#6495ed","x":1522886400000,"y":0.000962001034686022,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-06","adjClose":29.9422440298,"daily_return":-0.0103093696571315,"coloract":"#ff9999","x":1522972800000,"y":-0.0103093696571315,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-09","adjClose":29.9325477072,"daily_return":-0.000323886644227667,"coloract":"#ff9999","x":1523232000000,"y":-0.000323886644227667,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-10","adjClose":29.7289249337,"daily_return":-0.00682596506978195,"coloract":"#ff9999","x":1523318400000,"y":-0.00682596506978195,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-11","adjClose":29.8064955141,"daily_return":0.00260586466718449,"coloract":"#6495ed","x":1523404800000,"y":0.00260586466718449,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-12","adjClose":29.4574279023,"daily_return":-0.0117802409446521,"coloract":"#ff9999","x":1523491200000,"y":-0.0117802409446521,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-13","adjClose":29.6125690631,"daily_return":0.00525280262367778,"coloract":"#6495ed","x":1523577600000,"y":0.00525280262367778,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-16","adjClose":29.7483175788,"daily_return":0.00457367670927811,"coloract":"#6495ed","x":1523836800000,"y":0.00457367670927811,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-17","adjClose":30.1458668033,"daily_return":0.0132752475719875,"coloract":"#6495ed","x":1523923200000,"y":0.0132752475719875,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-18","adjClose":30.0682962229,"daily_return":-0.00257649095870294,"coloract":"#ff9999","x":1524009600000,"y":-0.00257649095870294,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-19","adjClose":29.5640874504,"daily_return":-0.0169109721114489,"coloract":"#ff9999","x":1524096000000,"y":-0.0169109721114489,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-20","adjClose":29.3022867416,"daily_return":-0.00889480415523858,"coloract":"#ff9999","x":1524182400000,"y":-0.00889480415523858,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-23","adjClose":29.3604646769,"daily_return":0.00198347172495872,"coloract":"#6495ed","x":1524441600000,"y":0.00198347172495872,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-24","adjClose":29.3895536445,"daily_return":0.000990262498913985,"coloract":"#6495ed","x":1524528000000,"y":0.000990262498913985,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-25","adjClose":29.292590419,"daily_return":-0.00330469567164338,"coloract":"#ff9999","x":1524614400000,"y":-0.00330469567164338,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-04-26","adjClose":29.6707469984,"daily_return":0.0128270135600488,"coloract":"#6495ed","x":1524700800000,"y":0.0128270135600488,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-27","adjClose":30.0682962229,"daily_return":0.0133097241544093,"coloract":"#6495ed","x":1524787200000,"y":0.0133097241544093,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-04-30","adjClose":29.9519403523,"daily_return":-0.003877226182468,"coloract":"#ff9999","x":1525046400000,"y":-0.003877226182468,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-01","adjClose":30.1652594484,"daily_return":0.00709680398015333,"coloract":"#6495ed","x":1525132800000,"y":0.00709680398015333,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-02","adjClose":30.0295109327,"daily_return":-0.00451031692513126,"coloract":"#ff9999","x":1525219200000,"y":-0.00451031692513126,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-03","adjClose":30.0198146102,"daily_return":-0.000322945261969299,"coloract":"#ff9999","x":1525305600000,"y":-0.000322945261969299,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-04","adjClose":30.3591858993,"daily_return":0.0112414866135602,"coloract":"#6495ed","x":1525392000000,"y":0.0112414866135602,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-07","adjClose":30.4173638346,"daily_return":0.00191448686457152,"coloract":"#6495ed","x":1525651200000,"y":0.00191448686457152,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-08","adjClose":30.2040447386,"daily_return":-0.00703777696691654,"coloract":"#ff9999","x":1525737600000,"y":-0.00703777696691654,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-09","adjClose":30.4367564797,"daily_return":0.00767512561829164,"coloract":"#6495ed","x":1525824000000,"y":0.00767512561829164,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-10","adjClose":30.7179498336,"daily_return":0.0091961960921636,"coloract":"#6495ed","x":1525910400000,"y":0.0091961960921636,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-11","adjClose":30.5725049954,"daily_return":-0.00474609338836363,"coloract":"#ff9999","x":1525996800000,"y":-0.00474609338836363,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-14","adjClose":30.3591858993,"daily_return":-0.0070019382197466,"coloract":"#ff9999","x":1526256000000,"y":-0.0070019382197466,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-15","adjClose":29.8452808043,"daily_return":-0.0170724069252497,"coloract":"#ff9999","x":1526342400000,"y":-0.0170724069252497,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-16","adjClose":29.7677102239,"daily_return":-0.00260247381798306,"coloract":"#ff9999","x":1526428800000,"y":-0.00260247381798306,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-17","adjClose":29.6125690631,"daily_return":-0.00522535480347486,"coloract":"#ff9999","x":1526515200000,"y":-0.00522535480347486,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-18","adjClose":29.6319617082,"daily_return":0.000654664507935276,"coloract":"#6495ed","x":1526601600000,"y":0.000654664507935276,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-21","adjClose":29.9325477072,"daily_return":0.0100928742156365,"coloract":"#6495ed","x":1526860800000,"y":0.0100928742156365,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-22","adjClose":29.9713329974,"daily_return":0.00129491763015821,"coloract":"#6495ed","x":1526947200000,"y":0.00129491763015821,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-23","adjClose":30.2137410611,"daily_return":0.00805546485811215,"coloract":"#6495ed","x":1527033600000,"y":0.00805546485811215,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-24","adjClose":30.0973851905,"daily_return":-0.00385852568813094,"coloract":"#ff9999","x":1527120000000,"y":-0.00385852568813094,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-05-25","adjClose":30.2428300288,"daily_return":0.0048208353070982,"coloract":"#6495ed","x":1527206400000,"y":0.0048208353070982,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-29","adjClose":30.3204006092,"daily_return":0.00256164085043142,"coloract":"#6495ed","x":1527552000000,"y":0.00256164085043142,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-30","adjClose":30.7179498336,"daily_return":0.013026395473577,"coloract":"#6495ed","x":1527638400000,"y":0.013026395473577,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-05-31","adjClose":30.6209866082,"daily_return":-0.00316155811595831,"coloract":"#ff9999","x":1527724800000,"y":-0.00316155811595831,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-01","adjClose":30.7470388013,"daily_return":0.00410807972176341,"coloract":"#6495ed","x":1527811200000,"y":0.00410807972176341,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-04","adjClose":31.0476248003,"daily_return":0.00972861901819755,"coloract":"#6495ed","x":1528070400000,"y":0.00972861901819755,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-05","adjClose":30.8924836395,"daily_return":-0.00500940308744235,"coloract":"#ff9999","x":1528156800000,"y":-0.00500940308744235,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-06","adjClose":30.9797505425,"daily_return":0.00282087634369299,"coloract":"#6495ed","x":1528243200000,"y":0.00282087634369299,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-07","adjClose":30.9797505425,"daily_return":0,"coloract":"#ff9999","x":1528329600000,"y":0,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-08","adjClose":31.0864100905,"daily_return":0.00343696635678059,"coloract":"#6495ed","x":1528416000000,"y":0.00343696635678059,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-11","adjClose":31.0767137679,"daily_return":-0.000311963816384875,"coloract":"#ff9999","x":1528675200000,"y":-0.000311963816384875,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-12","adjClose":31.2512475738,"daily_return":0.00560051246153881,"coloract":"#6495ed","x":1528761600000,"y":0.00560051246153881,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-13","adjClose":30.5531123503,"daily_return":-0.0225927400584363,"coloract":"#ff9999","x":1528848000000,"y":-0.0225927400584363,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-14","adjClose":30.8440020268,"daily_return":0.00947574999333556,"coloract":"#6495ed","x":1528934400000,"y":0.00947574999333556,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-15","adjClose":30.7941629289,"daily_return":-0.0016171509582521,"coloract":"#ff9999","x":1529020800000,"y":-0.0016171509582521,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-18","adjClose":30.7648258413,"daily_return":-0.000953137483479694,"coloract":"#ff9999","x":1529280000000,"y":-0.000953137483479694,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-19","adjClose":30.8039419581,"daily_return":0.00127064820235967,"coloract":"#6495ed","x":1529366400000,"y":0.00127064820235967,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-20","adjClose":31.1364289506,"daily_return":0.0107358151425516,"coloract":"#6495ed","x":1529452800000,"y":0.0107358151425516,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-21","adjClose":31.3222305053,"daily_return":0.00594960264592137,"coloract":"#6495ed","x":1529539200000,"y":0.00594960264592137,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-22","adjClose":31.5960433227,"daily_return":0.00870381621518002,"coloract":"#6495ed","x":1529625600000,"y":0.00870381621518002,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-25","adjClose":31.5178110892,"daily_return":-0.00247908400765517,"coloract":"#ff9999","x":1529884800000,"y":-0.00247908400765517,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-26","adjClose":31.6840545854,"daily_return":0.00526072696835378,"coloract":"#6495ed","x":1529971200000,"y":0.00526072696835378,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-27","adjClose":31.5960433227,"daily_return":-0.0027816429606986,"coloract":"#ff9999","x":1530057600000,"y":-0.0027816429606986,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-06-28","adjClose":31.9089722569,"daily_return":0.00985533076953837,"coloract":"#6495ed","x":1530144000000,"y":0.00985533076953837,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-06-29","adjClose":31.9872044904,"daily_return":0.00244873094367692,"coloract":"#6495ed","x":1530230400000,"y":0.00244873094367692,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-02","adjClose":31.8014029358,"daily_return":-0.00582555686855812,"coloract":"#ff9999","x":1530489600000,"y":-0.00582555686855812,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-03","adjClose":31.9872044904,"daily_return":0.00582555686855812,"coloract":"#6495ed","x":1530576000000,"y":0.00582555686855812,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-05","adjClose":32.4077027457,"daily_return":0.0130601704481159,"coloract":"#6495ed","x":1530748800000,"y":0.0130601704481159,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-06","adjClose":32.5446091544,"daily_return":0.00421560395451648,"coloract":"#6495ed","x":1530835200000,"y":0.00421560395451648,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-09","adjClose":32.2414592494,"daily_return":-0.00935855886986747,"coloract":"#ff9999","x":1531094400000,"y":-0.00935855886986747,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-10","adjClose":32.3979237165,"daily_return":0.00484115922852357,"coloract":"#6495ed","x":1531180800000,"y":0.00484115922852357,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-11","adjClose":32.3001334246,"daily_return":-0.00302297690816911,"coloract":"#ff9999","x":1531267200000,"y":-0.00302297690816911,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-12","adjClose":32.3783656581,"daily_return":0.0024191121550885,"coloract":"#6495ed","x":1531353600000,"y":0.0024191121550885,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-13","adjClose":32.270796337,"daily_return":-0.00332779009195416,"coloract":"#ff9999","x":1531440000000,"y":-0.00332779009195416,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-16","adjClose":32.0947738115,"daily_return":-0.00546947580532819,"coloract":"#ff9999","x":1531699200000,"y":-0.00546947580532819,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-17","adjClose":31.8796351693,"daily_return":-0.00672579728782452,"coloract":"#ff9999","x":1531785600000,"y":-0.00672579728782452,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-18","adjClose":31.762286819,"daily_return":-0.00368777307866708,"coloract":"#ff9999","x":1531872000000,"y":-0.00368777307866708,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-19","adjClose":32.065436724,"daily_return":0.00949907556356955,"coloract":"#6495ed","x":1531958400000,"y":0.00949907556356955,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-20","adjClose":31.7818448774,"daily_return":-0.00888350152091721,"coloract":"#ff9999","x":1532044800000,"y":-0.00888350152091721,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-23","adjClose":31.6938336146,"daily_return":-0.00277307218421052,"coloract":"#ff9999","x":1532304000000,"y":-0.00277307218421052,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-24","adjClose":31.6058223519,"daily_return":-0.00278078349938271,"coloract":"#ff9999","x":1532390400000,"y":-0.00278078349938271,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-25","adjClose":31.9187512861,"daily_return":0.00985229644372509,"coloract":"#6495ed","x":1532476800000,"y":0.00985229644372509,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-26","adjClose":32.0263206072,"daily_return":0.00336443198462089,"coloract":"#6495ed","x":1532563200000,"y":0.00336443198462089,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-07-27","adjClose":31.7329497314,"daily_return":-0.00920251893144108,"coloract":"#ff9999","x":1532649600000,"y":-0.00920251893144108,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-30","adjClose":31.7036126438,"daily_return":-0.000924926843227869,"coloract":"#ff9999","x":1532908800000,"y":-0.000924926843227869,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-07-31","adjClose":32.319691483,"daily_return":0.0192460499913771,"coloract":"#6495ed","x":1532995200000,"y":0.0192460499913771,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-01","adjClose":32.5348301252,"daily_return":0.00663452373124862,"coloract":"#6495ed","x":1533081600000,"y":0.00663452373124862,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-02","adjClose":32.3783656581,"daily_return":-0.00482073847158793,"coloract":"#ff9999","x":1533168000000,"y":-0.00482073847158793,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-03","adjClose":32.7988639134,"daily_return":0.012903404835908,"coloract":"#6495ed","x":1533254400000,"y":0.012903404835908,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-06","adjClose":32.7304107091,"daily_return":-0.00208924117026443,"coloract":"#ff9999","x":1533513600000,"y":-0.00208924117026443,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-07","adjClose":32.6619575047,"daily_return":-0.00209361524207274,"coloract":"#ff9999","x":1533600000000,"y":-0.00209361524207274,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-08","adjClose":32.4565978917,"daily_return":-0.00630727424912303,"coloract":"#ff9999","x":1533686400000,"y":-0.00630727424912303,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-09","adjClose":32.5152720668,"daily_return":0.00180614136818891,"coloract":"#6495ed","x":1533772800000,"y":0.00180614136818891,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-10","adjClose":32.2023431327,"daily_return":-0.00967067071120775,"coloract":"#ff9999","x":1533859200000,"y":-0.00967067071120775,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-13","adjClose":32.1925641035,"daily_return":-0.000303720579619693,"coloract":"#ff9999","x":1534118400000,"y":-0.000303720579619693,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-14","adjClose":32.319691483,"daily_return":0.00394119048853003,"coloract":"#6495ed","x":1534204800000,"y":0.00394119048853003,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-15","adjClose":32.6032833296,"daily_return":0.00873631102500827,"coloract":"#6495ed","x":1534291200000,"y":0.00873631102500827,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-16","adjClose":32.8575380886,"daily_return":0.00776818964593007,"coloract":"#6495ed","x":1534377600000,"y":0.00776818964593007,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-17","adjClose":33.1704670228,"daily_return":0.00947874395523263,"coloract":"#6495ed","x":1534464000000,"y":0.00947874395523263,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-20","adjClose":33.2095831396,"daily_return":0.0011785505202826,"coloract":"#6495ed","x":1534723200000,"y":0.0011785505202826,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-21","adjClose":32.9064332346,"daily_return":-0.00917030535287866,"coloract":"#ff9999","x":1534809600000,"y":-0.00917030535287866,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-22","adjClose":32.7010736215,"daily_return":-0.0062602678756436,"coloract":"#ff9999","x":1534896000000,"y":-0.0062602678756436,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-23","adjClose":32.622841388,"daily_return":-0.00239521072459814,"coloract":"#ff9999","x":1534982400000,"y":-0.00239521072459814,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-24","adjClose":32.8477590594,"daily_return":0.00687082613243595,"coloract":"#6495ed","x":1535068800000,"y":0.00687082613243595,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-27","adjClose":32.7988639134,"daily_return":-0.0014896472302004,"coloract":"#ff9999","x":1535328000000,"y":-0.0014896472302004,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-28","adjClose":33.1998041104,"daily_return":0.012150097612234,"coloract":"#6495ed","x":1535414400000,"y":0.012150097612234,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-08-29","adjClose":33.1509089644,"daily_return":-0.00147383961934899,"coloract":"#ff9999","x":1535500800000,"y":-0.00147383961934899,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-30","adjClose":32.9748864389,"daily_return":-0.00532388125351746,"coloract":"#ff9999","x":1535587200000,"y":-0.00532388125351746,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-08-31","adjClose":33.1020138184,"daily_return":0.00384786622434552,"coloract":"#6495ed","x":1535673600000,"y":0.00384786622434552,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-04","adjClose":32.8086429426,"daily_return":-0.0089021359408723,"coloract":"#ff9999","x":1536019200000,"y":-0.0089021359408723,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-05","adjClose":33.0140025557,"daily_return":0.00623980631147303,"coloract":"#6495ed","x":1536105600000,"y":0.00623980631147303,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-06","adjClose":33.1215718768,"daily_return":0.00325299710121651,"coloract":"#6495ed","x":1536192000000,"y":0.00325299710121651,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-07","adjClose":32.7010736215,"daily_return":-0.0127768786131677,"coloract":"#ff9999","x":1536278400000,"y":-0.0127768786131677,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-10","adjClose":32.877096147,"daily_return":0.00536833976474194,"coloract":"#6495ed","x":1536537600000,"y":0.00536833976474194,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-11","adjClose":32.8868751762,"daily_return":0.00029739777192006,"coloract":"#6495ed","x":1536624000000,"y":0.00029739777192006,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-12","adjClose":32.9162122638,"daily_return":0.000891663011115984,"coloract":"#6495ed","x":1536710400000,"y":0.000891663011115984,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-13","adjClose":33.1215718768,"daily_return":0.00621947806538969,"coloract":"#6495ed","x":1536796800000,"y":0.00621947806538969,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-14","adjClose":32.8379800302,"daily_return":-0.00859901518034834,"coloract":"#ff9999","x":1536883200000,"y":-0.00859901518034834,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-17","adjClose":33.0237815849,"daily_return":0.00564218274906247,"coloract":"#6495ed","x":1537142400000,"y":0.00564218274906247,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-18","adjClose":32.828201001,"daily_return":-0.00594002340672617,"coloract":"#ff9999","x":1537228800000,"y":-0.00594002340672617,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-19","adjClose":32.5152720668,"daily_return":-0.00957804389078953,"coloract":"#ff9999","x":1537315200000,"y":-0.00957804389078953,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-20","adjClose":32.7597477967,"daily_return":0.00749067173142981,"coloract":"#6495ed","x":1537401600000,"y":0.00749067173142981,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-21","adjClose":32.759845587,"daily_return":2.98507041796015e-06,"coloract":"#6495ed","x":1537488000000,"y":2.98507041796015e-06,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-24","adjClose":32.1174956735,"daily_return":-0.0198026272970955,"coloract":"#ff9999","x":1537747200000,"y":-0.0198026272970955,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-25","adjClose":32.0878487544,"daily_return":-0.000923503221459843,"coloract":"#ff9999","x":1537833600000,"y":-0.000923503221459843,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-26","adjClose":31.7320857254,"daily_return":-0.0111490780133767,"coloract":"#ff9999","x":1537920000000,"y":-0.0111490780133767,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-09-27","adjClose":31.830908789,"daily_return":0.00310945524134842,"coloract":"#6495ed","x":1538006400000,"y":0.00310945524134842,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-09-28","adjClose":32.2262010435,"daily_return":0.0123420264598977,"coloract":"#6495ed","x":1538092800000,"y":0.0123420264598977,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-01","adjClose":31.9791433844,"daily_return":-0.00769589761321532,"coloract":"#ff9999","x":1538352000000,"y":-0.00769589761321532,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-02","adjClose":31.8803203208,"daily_return":-0.00309501949289448,"coloract":"#ff9999","x":1538438400000,"y":-0.00309501949289448,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-03","adjClose":31.5146749855,"daily_return":-0.0115355916732103,"coloract":"#ff9999","x":1538524800000,"y":-0.0115355916732103,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-04","adjClose":31.3664403901,"daily_return":-0.00471476592318432,"coloract":"#ff9999","x":1538611200000,"y":-0.00471476592318432,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-05","adjClose":31.3763226964,"daily_return":0.000315010238490565,"coloract":"#6495ed","x":1538697600000,"y":0.000315010238490565,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-08","adjClose":31.7814972572,"daily_return":0.0128307189719421,"coloract":"#6495ed","x":1538956800000,"y":0.0128307189719421,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-09","adjClose":31.8902026272,"daily_return":0.00341456175399024,"coloract":"#6495ed","x":1539043200000,"y":0.00341456175399024,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-10","adjClose":31.3862050028,"daily_return":-0.0159303696844577,"coloract":"#ff9999","x":1539129600000,"y":-0.0159303696844577,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-11","adjClose":30.4671505112,"daily_return":-0.0297193944815084,"coloract":"#ff9999","x":1539216000000,"y":-0.0297193944815084,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-12","adjClose":30.4473858985,"daily_return":-0.000648929288754818,"coloract":"#ff9999","x":1539302400000,"y":-0.000648929288754818,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-15","adjClose":30.6351497193,"daily_return":0.00614789187459186,"coloract":"#6495ed","x":1539561600000,"y":0.00614789187459186,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-16","adjClose":31.2083234883,"daily_return":0.0185368043442162,"coloract":"#6495ed","x":1539648000000,"y":0.0185368043442162,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-17","adjClose":31.119382731,"daily_return":-0.00285397371617746,"coloract":"#ff9999","x":1539734400000,"y":-0.00285397371617746,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-18","adjClose":31.1292650374,"daily_return":0.000317510719904934,"coloract":"#6495ed","x":1539820800000,"y":0.000317510719904934,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-19","adjClose":31.4454988409,"daily_return":0.010107477076319,"coloract":"#6495ed","x":1539907200000,"y":0.010107477076319,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-22","adjClose":31.0007950547,"daily_return":-0.0142430007055121,"coloract":"#ff9999","x":1540166400000,"y":-0.0142430007055121,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-23","adjClose":31.1984411819,"daily_return":0.00635528036662292,"coloract":"#6495ed","x":1540252800000,"y":0.00635528036662292,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-24","adjClose":31.5640865173,"daily_return":0.0116518402182453,"coloract":"#6495ed","x":1540339200000,"y":0.0116518402182453,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-25","adjClose":31.939614159,"daily_return":0.0118270908653657,"coloract":"#6495ed","x":1540425600000,"y":0.0118270908653657,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-26","adjClose":31.1095004247,"daily_return":-0.0263338101027135,"coloract":"#ff9999","x":1540512000000,"y":-0.0263338101027135,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-10-29","adjClose":31.6233803554,"daily_return":0.016383479248105,"coloract":"#6495ed","x":1540771200000,"y":0.016383479248105,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-30","adjClose":32.1471425926,"daily_return":0.016426837687515,"coloract":"#6495ed","x":1540857600000,"y":0.016426837687515,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-10-31","adjClose":31.7123211127,"daily_return":-0.0136182853638855,"coloract":"#ff9999","x":1540944000000,"y":-0.0136182853638855,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-01","adjClose":31.830908789,"daily_return":0.00373250822030746,"coloract":"#6495ed","x":1541030400000,"y":0.00373250822030746,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-02","adjClose":31.5640865173,"daily_return":-0.00841782055469409,"coloract":"#ff9999","x":1541116800000,"y":-0.00841782055469409,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-05","adjClose":32.0878487544,"daily_return":0.0164574433267224,"coloract":"#6495ed","x":1541376000000,"y":0.0164574433267224,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-06","adjClose":32.2657302689,"daily_return":0.00552826960770725,"coloract":"#6495ed","x":1541462400000,"y":0.00552826960770725,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-07","adjClose":32.6214932979,"daily_return":0.0109656901427049,"coloract":"#6495ed","x":1541548800000,"y":0.0109656901427049,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-08","adjClose":32.6906694424,"daily_return":0.0021183242895475,"coloract":"#6495ed","x":1541635200000,"y":0.0021183242895475,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-09","adjClose":32.7301986679,"daily_return":0.00120845936327152,"coloract":"#6495ed","x":1541721600000,"y":0.00120845936327152,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-12","adjClose":32.7993748124,"daily_return":0.00211129621398376,"coloract":"#6495ed","x":1541980800000,"y":0.00211129621398376,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-13","adjClose":32.8685509569,"daily_return":0.0021068480320614,"coloract":"#6495ed","x":1542067200000,"y":0.0021068480320614,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-14","adjClose":32.8586686506,"daily_return":-0.000300706661060079,"coloract":"#ff9999","x":1542153600000,"y":-0.000300706661060079,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-15","adjClose":32.6017286852,"daily_return":-0.00785028186173653,"coloract":"#ff9999","x":1542240000000,"y":-0.00785028186173653,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-16","adjClose":33.0661970842,"daily_return":0.0141462103190735,"coloract":"#6495ed","x":1542326400000,"y":0.0141462103190735,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-19","adjClose":33.1551378414,"daily_return":0.00268616785751119,"coloract":"#6495ed","x":1542585600000,"y":0.00268616785751119,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-20","adjClose":32.7203163615,"daily_return":-0.0132015118589268,"coloract":"#ff9999","x":1542672000000,"y":-0.0132015118589268,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-21","adjClose":32.7005517488,"daily_return":-0.000604229624956876,"coloract":"#ff9999","x":1542758400000,"y":-0.000604229624956876,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-23","adjClose":32.5819640725,"daily_return":-0.00363306484887094,"coloract":"#ff9999","x":1542931200000,"y":-0.00363306484887094,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-11-26","adjClose":32.651140217,"daily_return":0.0021208915682922,"coloract":"#6495ed","x":1543190400000,"y":0.0021208915682922,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-27","adjClose":32.8290217315,"daily_return":0.00543315553238966,"coloract":"#6495ed","x":1543276800000,"y":0.00543315553238966,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-28","adjClose":33.0958440032,"daily_return":0.00809478261948104,"coloract":"#6495ed","x":1543363200000,"y":0.00809478261948104,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-29","adjClose":33.1353732287,"daily_return":0.00119367367370637,"coloract":"#6495ed","x":1543449600000,"y":0.00119367367370637,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-11-30","adjClose":33.4516070322,"daily_return":0.00949843887851642,"coloract":"#6495ed","x":1543536000000,"y":0.00949843887851642,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-03","adjClose":33.609723934,"daily_return":0.00471559966150359,"coloract":"#6495ed","x":1543795200000,"y":0.00471559966150359,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-04","adjClose":33.1650201478,"daily_return":-0.0133197174186463,"coloract":"#ff9999","x":1543881600000,"y":-0.0133197174186463,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-06","adjClose":34.074192333,"daily_return":0.0270445641959061,"coloract":"#6495ed","x":1544054400000,"y":0.0270445641959061,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-07","adjClose":33.5603124022,"daily_return":-0.0151960843530579,"coloract":"#ff9999","x":1544140800000,"y":-0.0151960843530579,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-10","adjClose":33.4318424195,"daily_return":-0.00383537865071082,"coloract":"#ff9999","x":1544400000000,"y":-0.00383537865071082,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-11","adjClose":33.4911362577,"daily_return":0.0017720028273458,"coloract":"#6495ed","x":1544486400000,"y":0.0017720028273458,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-12","adjClose":32.8586686506,"daily_return":-0.0190652185168196,"coloract":"#ff9999","x":1544572800000,"y":-0.0190652185168196,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-13","adjClose":33.0859616969,"daily_return":0.00689347851926359,"coloract":"#6495ed","x":1544659200000,"y":0.00689347851926359,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-14","adjClose":33.0266678587,"daily_return":-0.00179372245504172,"coloract":"#ff9999","x":1544745600000,"y":-0.00179372245504172,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-17","adjClose":31.7913795636,"daily_return":-0.0381201819152466,"coloract":"#ff9999","x":1545004800000,"y":-0.0381201819152466,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-18","adjClose":32.1076133671,"daily_return":0.00989800842837329,"coloract":"#6495ed","x":1545091200000,"y":0.00989800842837329,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-19","adjClose":31.8111441763,"daily_return":-0.00927650436928795,"coloract":"#ff9999","x":1545177600000,"y":-0.00927650436928795,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-20","adjClose":31.4257342282,"daily_return":-0.0121895555251612,"coloract":"#ff9999","x":1545264000000,"y":-0.0121895555251612,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-21","adjClose":30.95,"daily_return":-0.0152541195341773,"coloract":"#ff9999","x":1545350400000,"y":-0.0152541195341773,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-24","adjClose":29.81,"daily_return":-0.037529091440625,"coloract":"#ff9999","x":1545609600000,"y":-0.037529091440625,"color":"#ff9999"},{"sector":"Real Estate","date":"2018-12-26","adjClose":30.76,"daily_return":0.0313712369474635,"coloract":"#6495ed","x":1545782400000,"y":0.0313712369474635,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-27","adjClose":30.83,"daily_return":0.00227309726061575,"coloract":"#6495ed","x":1545868800000,"y":0.00227309726061575,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-28","adjClose":30.94,"daily_return":0.00356160324686083,"coloract":"#6495ed","x":1545955200000,"y":0.00356160324686083,"color":"#6495ed"},{"sector":"Real Estate","date":"2018-12-31","adjClose":31,"daily_return":0.00193735934022632,"coloract":"#6495ed","x":1546214400000,"y":0.00193735934022632,"color":"#6495ed"}],"type":"column","pointWidth":4,"name":"daily return"}],"xAxis":{"type":"datetime"},"tooltip":{"pointFormat":"{point.date}: {point.daily_return: .4f}%"},"legend":{"enabled":false}},"theme":{"chart":{"backgroundColor":"transparent"}},"conf_opts":{"global":{"Date":null,"VMLRadialGradientURL":"http =//code.highcharts.com/list(version)/gfx/vml-radial-gradient.png","canvasToolsURL":"http =//code.highcharts.com/list(version)/modules/canvas-tools.js","getTimezoneOffset":null,"timezoneOffset":0,"useUTC":true},"lang":{"contextButtonTitle":"Chart context menu","decimalPoint":".","downloadJPEG":"Download JPEG image","downloadPDF":"Download PDF document","downloadPNG":"Download PNG image","downloadSVG":"Download SVG vector image","drillUpText":"Back to {series.name}","invalidDate":null,"loading":"Loading...","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"noData":"No data to display","numericSymbols":["k","M","G","T","P","E"],"printChart":"Print chart","resetZoom":"Reset zoom","resetZoomTitle":"Reset zoom level 1:1","shortMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"thousandsSep":" ","weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},"type":"chart","fonts":[],"debug":false},"evals":[],"jsHooks":[]}

    That’s all for today. In general, the flow here was to create a tibble of tickers and labels, grab price data, and visualize daily returns organized by the original labels. We applied it to sectors, but it could just as easily be applied to other labels like risk levels, geography, beta, etc.

    Shameless book plug for those who read to the end: if you like this sort of thing, check out my new book Reproducible Finance with R!

    Thanks for reading and see you next time.

    _____='https://rviews.rstudio.com/2019/01/10/a-look-back-on-2018-part-1/';

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R Views. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    baRcodeR 0.1.2 release – new linear barcodes

    Thu, 01/10/2019 - 01:00

    (This article was first published on R on YIHAN WU, and kindly contributed to R-bloggers)

    baRcodeR 0.1.2 is released on CRAN today!

    Download and install by

    install.packages("baRcodeR")

    Example linear barcode

    The major feature of this release is the ability to print linear (a.k.a normal) barcodes through specifying type = "linear" in create_PDF() rather than type = "matrix" which prints the usual QR code.

    The github repository is at yihanwu/baRcodeR.

    Minor notes on the implementation of these linear barcodes

    The linear barcodes are based on the code 128B specification (Wikipedia). All ASCII characters are allowed, and non-ASCII characters are replaced by a dash. To replace characters such as é with ASCII equivalent rather than have them be replaced, use the stringi package and functions such as stringi::stri_enc_toascii.

    The barcode itself is drawn using the image function, a one-D version of the heatmap function in R using the binary string for the barcode. All graphics are produced with grid if anyone wishes to move the text to the bottom of the label rather than the top.

    Also, there is no error correction included in linear barcodes and barcodes which are too small will have indistinguishable bars to barcode scanners depending on their capabilities.

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R on YIHAN WU. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Considering sensitivity to unmeasured confounding: part 2

    Thu, 01/10/2019 - 01:00

    (This article was first published on ouR data generation, and kindly contributed to R-bloggers)

    In part 1 of this 2-part series, I introduced the notion of sensitivity to unmeasured confounding in the context of an observational data analysis. I argued that an estimate of an association between an observed exposure \(D\) and outcome \(Y\) is sensitive to unmeasured confounding if we can conceive of a reasonable alternative data generating process (DGP) that includes some unmeasured confounder that will generate the same observed distribution the observed data. I further argued that reasonableness can be quantified or parameterized by the two correlation coefficients \(\rho_{UD}\) and \(\rho_{UY}\), which measure the strength of the relationship of the unmeasured confounder \(U\) with each of the observed measures. Alternative DGPs that are characterized by high correlation coefficients can be viewed as less realistic, and the observed data could be considered less sensitive to unmeasured confounding. On the other hand, DGPs characterized by lower correlation coefficients would be considered more sensitive.

    I need to pause here for a moment to point out that something similar has been described much more thoroughly by a group at NYU’s PRIISM (see Carnegie, Harada & Hill and Dorie et al). In fact, this group of researchers has actually created an R package called treatSens to facilitate sensitivity analysis. I believe the discussion in these posts here is consistent with the PRIISM methodology, except treatSens is far more flexible (e.g. it can handle binary exposures) and provides more informative output than what I am describing. I am hoping that the examples and derivation of an equivalent DGP that I show here provide some additional insight into what sensitivity means.

    I’ve been wrestling with these issues for a while, but the ideas for the derivation of an alternative DGP were actually motivated by this recent note by Fei Wan on an unrelated topic. (Wan shows how a valid instrumental variable may appear to violate a key assumption even though it does not.) The key element of Wan’s argument for my purposes is how the coefficient estimates of an observed model relate to the coefficients of an alternative (possibly true) data generation process/model.

    OK – now we are ready to walk through the derivation of alternative DGPs for an observed data set.

    Two DGPs, same data

    Recall from Part 1 that we have an observed data model

    \[ Y = k_0 + k_1D + \epsilon_Y\]
    where \(\epsilon_Y \sim N\left(0, \sigma^2_Y\right)\). We are wondering if there is another DGP that could have generated the data that we have actually observed:

    \[
    \begin{aligned}
    D &= \alpha_0 + \alpha_1 U + \epsilon_D \\
    Y &= \beta_0 + \beta_1 D + \beta_2 U + \epsilon_{Y^*},
    \end{aligned}
    \]

    where \(U\) is some unmeasured confounder, and \(\epsilon_D \sim N\left(0, \sigma^2_D\right)\) and \(\epsilon_{Y^*} \sim N\left(0, \sigma^2_{Y^*}\right)\). Can we go even further and find an alternative DGP where \(D\) has no direct effect on \(Y\) at all?

    \[
    \begin{aligned}
    D &= \alpha_0 + \alpha_1 U + \epsilon_D \\
    Y &= \beta_0 + \beta_2 U + \epsilon_{Y^*},
    \end{aligned}
    \]

    \(\alpha_1\) (and \(\sigma_{\epsilon_D}^2\)) derived from \(\rho_{UD}\)

    In a simple linear regression model with a single predictor, the coefficient \(\alpha_1\) can be specified directly in terms \(\rho_{UD}\), the correlation between \(U\) and \(D\):

    \[ \alpha_1 = \rho_{UD} \frac{\sigma_D}{\sigma_U}\]
    We can estimate \(\sigma_D\) from the observed data set, and we can reasonably assume that \(\sigma_U = 1\) (since we could always normalize the original measurement of \(U\)). Finally, we can specify a range of \(\rho_{UD}\) (I am keeping everything positive here for simplicity), such that \(0 < \rho_{UD} < 0.90\) (where I assume a correlation of \(0.90\) is at or beyond the realm of reasonableness). By plugging these three parameters into the formula, we can generate a range of \(\alpha_1\)’s.

    Furthermore, we can derive an estimate of the variance for \(\epsilon_D\) ( \(\sigma_{\epsilon_D}^2\)) at each level of \(\rho_{UD}\):

    \[
    \begin{aligned}
    Var(D) &= Var(\alpha_0 + \alpha_1 U + \epsilon_D) \\
    \\
    \sigma_D^2 &= \alpha_1^2 \sigma_U^2 + \sigma_{\epsilon_D}^2 \\
    \\
    \sigma_{\epsilon_D}^2 &= \sigma_D^2 – \alpha_1^2 \; \text{(since } \sigma_U^2=1)
    \end{aligned}
    \]

    So, for each value of \(\rho_{UD}\) that we generated, there is a corresponding pair \((\alpha_1, \; \sigma_{\epsilon_D}^2)\).

    Determine \(\beta_2\)

    In the addendum I go through a bit of an elaborate derivation of \(\beta_2\), the coefficient of \(U\) in the alternative outcome model. Here is the bottom line:

    \[
    \beta_2 = \frac{\alpha_1}{1-\frac{\sigma_{\epsilon_D}^2}{\sigma_D^2}}\left( k_1 – \beta_1\right)
    \]

    In the equation, we have \(\sigma^2_D\) and \(k_1\), which are both estimated from the observed data and the pair of derived parameters \(\alpha_1\) and \(\sigma_{\epsilon_D}^2\) based on \(\rho_{UD}\). \(\beta_1\), the coefficient of \(D\) in the outcome model is a free parameter, set externally. That is, we can choose to evaluate all \(\beta_2\)’s the are generated when \(\beta_1 = 0\). More generally, we can set \(\beta_1 = pk_1\), where \(0 \le p \le 1\). (We could go negative if we want, though I won’t do that here.) If \(p=1\) , \(\beta_1 = k_1\) and \(\beta_2 = 0\); we end up with the original model with no confounding.

    So, once we specify \(\rho_{UD}\) and \(p\), we get the corresponding triplet \((\alpha_1, \; \sigma_{\epsilon_D}^2, \; \beta_2)\).

    Determine \(\rho_{UY}\)

    In this last step, we can identify the correlation of \(U\) and \(Y\), \(\rho_{UY}\), that is associated with all the observed, specified, and derived parameters up until this point. We start by writing the alternative outcome model, and then replace \(D\) with the alternative exposure model, and do some algebraic manipulation to end up with a re-parameterized alternative outcome model that has a single predictor:

    \[
    \begin{aligned}
    Y &= \beta_0 + \beta_1 D + \beta_2 U + \epsilon_Y^* \\
    &= \beta_0 + \beta_1 \left( \alpha_0 + \alpha_1 U + \epsilon_D \right) + \beta_2 U + \epsilon_Y^* \\
    &=\beta_0 + \beta_1 \alpha_0 + \beta_1 \alpha_1 U + \beta_1 \epsilon_D + \beta_2 U +
    \epsilon_Y^* \\
    &=\beta_0^* + \left( \beta_1 \alpha_1 + \beta_2 \right)U + \epsilon_Y^+ \\
    &=\beta_0^* + \beta_1^*U + \epsilon_Y^+ , \\
    \end{aligned}
    \]

    where \(\beta_0^* = \beta_0 + \beta_1 \alpha_0\), \(\beta_1^* = \left( \beta_1 \alpha_1 + \beta_2 \right)\), and \(\epsilon_Y^+ = \beta_1 \epsilon_D + \epsilon_Y*\).

    As before, the coefficient in a simple linear regression model with a single predictor is related to the correlation of the two variables as follows:

    \[
    \beta_1^* = \rho_{UY} \frac{\sigma_Y}{\sigma_U}
    \]

    Since \(\beta_1^* = \left( \beta_1 \alpha_1 + \beta_2 \right)\),

    \[
    \begin{aligned}
    \beta_1 \alpha_1 + \beta_2 &= \rho_{UY} \frac{\sigma_Y}{\sigma_U} \\
    \\
    \rho_{UY} &= \frac{\sigma_U}{\sigma_Y} \left( \beta_1 \alpha_1 + \beta_2 \right) \\
    \\
    &= \frac{\left( \beta_1 \alpha_1 + \beta_2 \right)}{\sigma_Y}
    \end{aligned}
    \]

    Determine \(\sigma^2_{Y*}\)

    In order to simulate data from the alternative DGPs, we need to derive the variation for the noise of the alternative model. That is, we need an estimate of \(\sigma^2_{Y*}\).

    \[
    \begin{aligned}
    Var(Y) &= Var(\beta_0 + \beta_1 D + \beta_2 U + \epsilon_{Y^*}) \\
    \\
    &= \beta_1^2 Var(D) + \beta_2^2 Var(U) + 2\beta_1\beta_2Cov(D, U) + Var(\epsilon_{y*}) \\
    \\
    &= \beta_1^2 \sigma^2_D + \beta_2^2 + 2\beta_1\beta_2\rho_{UD}\sigma_D + \sigma^2_{Y*} \\
    \end{aligned}
    \]

    So,

    \[
    \sigma^2_{Y*} = Var(Y) – (\beta_1^2 \sigma^2_D + \beta_2^2 + 2\beta_1\beta_2\rho_{UD}\sigma_D),
    \]

    where \(Var(Y)\) is the variation of \(Y\) from the observed data. Now we are ready to implement this in R.

    Implementing in R

    If we have an observed data set with observed \(D\) and \(Y\), and some target \(\beta_1\) determined by \(p\), we can calculate/generate all the quantities that we just derived.

    Before getting to the function, I want to make a brief point about what we do if we have other measured confounders. We can essentially eliminate measured confounders by regressing the exposure \(D\) on the confounders and conducting the entire sensitivity analysis with the residual exposure measurements derived from this initial regression model. I won’t be doing this here, but if anyone wants to see an example of this, let me know, and I can do a short post.

    OK – here is the function, which essentially follows the path of the derivation above:

    altDGP <- function(dd, p) { # Create values of rhoUD dp <- data.table(p = p, rhoUD = seq(0.0, 0.9, length = 1000)) # Parameters estimated from data dp[, `:=`(sdD = sd(dd$D), s2D = var(dd$D), sdY = sd(dd$Y))] dp[, k1:= coef(lm(Y ~ D, data = dd))[2]] # Generate b1 based on p dp[, b1 := p * k1] # Determine a1 dp[, a1 := rhoUD * sdD ] # Determine s2ed dp[, s2ed := s2D - (a1^2)] # Determine b2 dp[, g:= s2ed/s2D] dp <- dp[g != 1] dp[, b2 := (a1 / (1 - g) ) * ( k1 - b1 )] # Determine rhoUY dp[, rhoUY := ( (b1 * a1) + b2 ) / sdY ] # Eliminate impossible correlations dp <- dp[rhoUY > 0 & rhoUY <= .9] # Determine s2eyx dp[, s2eyx := sdY^2 - (b1^2 * s2D + b2^2 + 2 * b1 * b2 * rhoUD * sdD)] dp <- dp[s2eyx > 0] # Determine standard deviations dp[, sdeyx := sqrt(s2eyx)] dp[, sdedx := sqrt(s2ed)] # Finished dp[] } Assessing sensitivity

    If we generate the same data set we started out with last post, we can use the function to assess the sensitivity of this association.

    defO <- defData(varname = "D", formula = 0, variance = 1) defO <- defData(defO, varname = "Y", formula = "1.5 * D", variance = 25) set.seed(20181201) dtO <- genData(1200, defO)

    In this first example, I am looking for the DGP with \(\beta_1 = 0\), which is implemented as \(p = 0\) in the call to function altDGP. Each row of output represents an alternative set of parameters that will result in a DGP with \(\beta_1 = 0\).

    dp <- altDGP(dtO, p = 0) dp[, .(rhoUD, rhoUY, k1, b1, a1, s2ed, b2, s2eyx)] ## rhoUD rhoUY k1 b1 a1 s2ed b2 s2eyx ## 1: 0.295 0.898 1.41 0 0.294 0.904 4.74 5.36 ## 2: 0.296 0.896 1.41 0 0.295 0.903 4.72 5.50 ## 3: 0.297 0.893 1.41 0 0.296 0.903 4.71 5.63 ## 4: 0.298 0.890 1.41 0 0.297 0.902 4.69 5.76 ## 5: 0.299 0.888 1.41 0 0.298 0.902 4.68 5.90 ## --- ## 668: 0.896 0.296 1.41 0 0.892 0.195 1.56 25.35 ## 669: 0.897 0.296 1.41 0 0.893 0.193 1.56 25.35 ## 670: 0.898 0.296 1.41 0 0.894 0.191 1.56 25.36 ## 671: 0.899 0.295 1.41 0 0.895 0.190 1.56 25.36 ## 672: 0.900 0.295 1.41 0 0.896 0.188 1.55 25.37

    Now, I am creating a data set that will be based on four levels of \(\beta_1\). I do this by creating a vector \(p = \; <0.0, \; 0.2, \; 0.5, \; 0.8>\). The idea is to create a plot that shows the curve for each value of \(p\). The most extreme curve (in this case, the curve all the way to the right, since we are dealing with positive associations only) represents the scenario where \(p = 0\) (i.e. \(\beta_1 = 0\)). The curves moving to the left reflect increasing sensitivity as \(p\) increases.

    dsenO <- rbindlist(lapply(c(0.0, 0.2, 0.5, 0.8), function(x) altDGP(dtO, x)))

    I would say that in this first case the observed association is moderately sensitive to unmeasured confounding, as correlations as low as 0.5 would enough to erase the association.

    In the next case, if the association remains unchanged but the variation of \(Y\) is considerably reduced, the observed association is much less sensitive. However, it is still quite possible that the observed overestimation is at least partially overstated, as relatively low levels of correlation could reduce the estimated association.

    defA1 <- updateDef(defO, changevar = "Y", newvariance = 4)

    In this last scenario, variance is the same as the initial scenario, but the association is considerably weaker. Here, we see that the estimate of the association is extremely sensitive to unmeasured confounding, as low levels of correlation are required to entirely erase the association.

    defA2 <- updateDef(defO, changevar = "Y", newformula = "0.25 * D")

    treatSens package

    I want to show output generated by the treatSens package I referenced earlier. treatSens requires a formula that includes an outcome vector \(Y\), an exposure vector \(Z\), and at least one vector of measured of confounders \(X\). In my examples, I have included no measured confounders, so I generate a vector of independent noise that is not related to the outcome.

    library(treatSens) X <- rnorm(1200) Y <- dtO$Y Z <- dtO$D testsens <- treatSens(Y ~ Z + X, nsim = 5) sensPlot(testsens)

    Once treatSens has been executed, it is possible to generate a sensitivity plot, which looks substantively similar to the ones I have created. The package uses sensitivity parameters \(\zeta^Z\) and \(\zeta^Y\), which represent the coefficients of \(U\), the unmeasured confounder. Since treatSens normalizes the data (in the default setting), these coefficients are actually equivalent to the correlations \(\rho_{UD}\) and \(\rho_{UY}\) that are the basis of my sensitivity analysis. A important difference in the output is that treatSens provides uncertainty bands, and extends into regions of negative correlation. (And of course, a more significant difference is that treatSens is flexible enough to handle binary exposures, whereas I have not yet extended my analytic approach in that direction, and I suspect it is no possible for me to do so due to non-collapsibility of logistic regression estimands – I hope to revisit this in the future.)

    Observed data scenario 1: \(\small{Y \sim N(1.50Z, \; 25)}\)

    Observed data scenario 2: \(\small{Y \sim N(1.50Z, \; 4)}\)

    Observed data scenario 3: \(\small{Y \sim N(0.25Z, \; 25)}\)

    Addendum: Derivation of \(\beta_2\)

    In case you want more detail on how we derive \(\beta_2\) from the observed data model and assumed correlation parameters, here it is. We start by specifying the simple observed outcome model:

    \[ Y = k_0 + k_1D + \epsilon_Y\]

    We can estimate the parameters \(k_0\) and \(k_1\) using this standard matrix solution:

    \[ \; = (W^TW)^{-1}W^TY,\]

    where \(W\) is the \(n \times 2\) design matrix:

    \[ W = [\mathbf{1}, D]_{n \times 2}.\]

    We can replace \(Y\) with the alternative outcome model:

    \[
    \begin{aligned}
    \; &= (W^TW)^{-1}W^T(\beta_0 + \beta_1 D + \beta_2 U + \epsilon_Y^*) \\
    &= \;<\beta_0, 0> + <0, \beta_1> +\; (W^TW)^{-1}W^T(\beta_2U) + \mathbf{0} \\
    &= \;<\beta_0, \beta_1> +\; (W^TW)^{-1}W^T(\beta_2U)
    \end{aligned}
    \]

    Note that

    \[
    \begin{aligned}
    (W^TW)^{-1}W^T(\beta_0) &= \; <\beta_0,\; 0> \; \; and\\
    \\
    (W^TW)^{-1}W^T(\beta_1D) &= \; <0,\; \beta_1>.
    \end{aligned}
    \]

    Now, we need to figure out what \((W^TW)^{-1}W^T(\beta_2U)\) is. First, we rearrange the alternate exposure model:
    \[
    \begin{aligned}
    D &= \alpha_0 + \alpha_1 U + \epsilon_D \\
    \alpha_1 U &= D – \alpha_0 – \epsilon_D \\
    U &= \frac{1}{\alpha_1} \left( D – \alpha_0 – \epsilon_D \right) \\
    \beta_2 U &= \frac{\beta_2}{\alpha_1} \left( D – \alpha_0 – \epsilon_D \right)
    \end{aligned}
    \]

    We can replace \(\beta_2 U\):

    \[
    \begin{aligned}
    (W^TW)^{-1}W^T(\beta_2U) &= (W^TW)^{-1}W^T \left[ \frac{\beta_2}{\alpha_1} \left( D – \alpha_0 – \epsilon_D \right) \right] \\
    &= <-\frac{\beta_2}{\alpha_1}\alpha_0, 0> + <0,\frac{\beta_2}{\alpha_1}>-\;\frac{\beta_2}{\alpha_1}(W^TW)^{-1}W^T \epsilon_D \\
    &= <-\frac{\beta_2}{\alpha_1}\alpha_0, \frac{\beta_2}{\alpha_1}>-\;\frac{\beta_2}{\alpha_1}(W^TW)^{-1}W^T \epsilon_D \\
    \end{aligned}
    \]

    And now we get back to \(\) :

    \[
    \begin{aligned}
    \; &= \;<\beta_0,\; \beta_1> +\; (W^TW)^{-1}W^T(\beta_2U) \\
    &= \;<\beta_0-\frac{\beta_2}{\alpha_1}\alpha_0, \; \beta_1 + \frac{\beta_2}{\alpha_1}>-\;\frac{\beta_2}{\alpha_1}(W^TW)^{-1}W^T \epsilon_D \\
    &= \;<\beta_0-\frac{\beta_2}{\alpha_1}\alpha_0, \; \beta_1 + \frac{\beta_2}{\alpha_1}>-\;\frac{\beta_2}{\alpha_1}<\gamma_0, \; \gamma_1>
    \end{aligned}
    \]

    where \(\gamma_0\) and \(\gamma_1\) come from regressing \(\epsilon_D\) on \(D\):

    \[ \epsilon_D = \gamma_0 + \gamma_1 D\]
    so,

    \[
    \begin{aligned}
    \; &= \;<\beta_0-\frac{\beta_2}{\alpha_1}\alpha_0 – \frac{\beta_2}{\alpha_1}\gamma_0, \; \beta_1 + \frac{\beta_2}{\alpha_1} – \frac{\beta_2}{\alpha_1}\gamma_1 > \\
    &= \;<\beta_0-\frac{\beta_2}{\alpha_1}\left(\alpha_0 + \gamma_0\right), \; \beta_1 + \frac{\beta_2}{\alpha_1}\left(1 – \gamma_1 \right) >
    \end{aligned}
    \]

    Since we can center all the observed data, we can easily assume that \(k_0 = 0\). All we need to worry about is \(k_1\):

    \[
    \begin{aligned}
    k_1 &= \beta_1 + \frac{\beta_2}{\alpha_1}\left(1 – \gamma_1 \right) \\
    \frac{\beta_2}{\alpha_1}\left(1 – \gamma_1 \right) &= k_1 – \beta_1 \\
    \beta_2 &= \frac{\alpha_1}{1-\gamma_1}\left( k_1 – \beta_1\right)
    \end{aligned}
    \]

    We have generated \(\alpha_1\) based on \(\rho_{UD}\), \(k_1\) is a estimated from the data, and \(\beta_1\) is fixed based on some \(p, \; 0 \le p \le 1\) such that \(\beta_1 = pk_1\). All that remains is \(\gamma_1\):

    \[
    \gamma_1 = \rho_{\epsilon_D D} \frac{\sigma_{\epsilon_D}}{\sigma_D}
    \]

    Since \(D = \alpha_0 + \alpha_1 U + \epsilon_D\) (and \(\epsilon_D \perp \! \! \! \perp U\))

    \[
    \begin{aligned}
    \rho_{\epsilon_D D} &= \frac{Cov(\epsilon_D, D)}{\sigma_{\epsilon_D} \sigma_D} \\
    \\
    &=\frac{Cov(\epsilon_D, \;\alpha_0 + \alpha_1 U + \epsilon_D )}{\sigma_{\epsilon_D} \sigma_D} \\
    \\
    &= \frac{\sigma_{\epsilon_D}^2}{\sigma_{\epsilon_D} \sigma_D} \\
    \\
    &= \frac{\sigma_{\epsilon_D}}{\sigma_D}
    \end{aligned}
    \]

    It follows that

    \[
    \begin{aligned}
    \gamma_1 &= \rho_{\epsilon_D D} \frac{\sigma_{\epsilon_D}}{\sigma_D} \\
    \\
    &=\frac{\sigma_{\epsilon_D}}{\sigma_D} \times \frac{\sigma_{\epsilon_D}}{\sigma_D} \\
    \\
    &=\frac{\sigma_{\epsilon_D}^2}{\sigma_D^2}
    \end{aligned}
    \]

    So, now, we have all the elements to generate \(\beta_2\) for a range of \(\alpha_1\)’s and \(\sigma_{\epsilon_D}^2\)’s:

    \[
    \beta_2 = \frac{\alpha_1}{1-\frac{\sigma_{\epsilon_D}^2}{\sigma_D^2}}\left( k_1 – \beta_1\right)
    \]

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: ouR data generation. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Updated Review: jamovi User Interface to R

    Thu, 01/10/2019 - 00:18

    (This article was first published on R – r4stats.com, and kindly contributed to R-bloggers)

    Last February I reviewed the jamovi menu-based front end to R.  I’ve reviewed five more user interfaces since then, and have developed a more comprehensive template to make it easier to compare them all. Now I’m cycling back to jamovi, using that template to write a far more comprehensive review. I’ve added this review to the previous set, and I’m releasing it as a blog post so that it will be syndicated on R-Bloggers, StatsBlogs, et al.

    Introduction

    jamovi (spelled with a lower-case “j”) is a free and open source graphical user interface for the R software that targets beginners looking to point-and-click their way through analyses. It is available for Windows, Mac, Linux, and even ChromeOS. Versions are also planned for servers and tablets.

    This post is one of a series of reviews which aim to help non-programmers choose the Graphical User Interface (GUI) for R that is best for them. Additionally, these reviews include cursory descriptions of the programming support that each GUI offers.

    Figure 1. jamovi’s main screen.

     

    Terminology

    There are various definitions of user interface types, so here’s how I’ll be using these terms:

    GUI = Graphical User Interface using menus and dialog boxes to avoid having to type programming code. I do not include any assistance for programming in this definition. So, GUI users are people who prefer using a GUI to perform their analyses. They don’t have the time or inclination to become good programmers.

    IDE = Integrated Development Environment which helps programmers write code. I do not include point-and-click style menus and dialog boxes when using this term. IDE users are people who prefer to write R code to perform their analyses.

     

    Installation

    The various user interfaces available for R differ quite a lot in how they’re installed. Some, such as BlueSky Statistics or RKWard, install in a single step. Others install in multiple steps, such as R Commander (two steps), and Deducer (up to seven steps). Advanced computer users often don’t appreciate how lost beginners can become while attempting even a simple installation. The HelpDesks at most universities are flooded with such calls at the beginning of each semester!

    jamovi’s single-step installation is extremely easy and includes its own copy of R. So if you already have a copy of R installed, you’ll have two after installing jamovi. That’s a good idea though, as it guarantees compatibility with the version of R that it uses, plus a standard R installation by itself is harder than jamovi’s. Python is also installed with jamovi, but it is used only for internal purposes. You can directly control only R through jamovi.

    Plug-in Modules

    When choosing a GUI, one of the most fundamental questions is: what can it do for you? What the initial software installation of each GUI gets you is covered in the Graphics, Analysis, and Modeling sections of this series of articles. Regardless of what comes built-in, it’s good to know how active the development community is. They contribute “plug-ins” which add new menus and dialog boxes to the GUI. This level of activity ranges from very low (RKWard, Deducer) to very high (R Commander).

    For jamovi, plug-ins are called “modules” and they are found in the “jamovi library” rather than on the Comprehensive R Archive Network (CRAN) where R and most of its packages are found. This makes locating and installing jamovi modules especially easy.

    Although jamovi is one of the most recent GUIs to appear on the R scene, it has already attracted a respectable number of developers. The list of modules at publication time is listed below. You can check on the latest ones on this web page.

    1. Base R – converts jamovi analyses into standard R functions
    2. blandr – Bland-Altman method comparison analysis, and is also available as an R package from CRAN
    3. Death Watch – survival analysis
    4. Distraction – quantiles and probabilities of continuous and discrete distributions
    5. GAMLj –  general linear model, linear mixed model, generalized linear models, etc.
    6. jpower – power analysis for common research designs
    7. Learning Statistics with jamovi – example data sets to accompany the book learning statistics with jamovi
    8. MAJOR – meta-analysis based on R’s metafor package
    9. medmod – basic mediation and moderation analysis
    10. jAMM – advanced mediation analysis (similar to the popular Process Macro for SAS and SPSS)
    11. R Data Sets
    12. RJ – editor to run R code inside jamovi
    13. scatr – scatter plots with marginal density or box plots
    14. Statkat – helps you choose a statistical test.
    15. TOSTER – tests of equivalence for t-tests and correlation
    16. Walrus – robust descriptive stats & tests
    17. jamovi Arcade – hangman & blackjack games
    Startup

    Some user interfaces for R, such as BlueSky and Rkward, start by double-clicking on a single icon, which is great for people who prefer to not write code. Others, such as R commander and JGR, have you start R, then load a package from your library, and then call a function to finally activate the GUI. That’s more appropriate for people looking to learn R, as those are among the first tasks they’ll have to learn anyway.

    You start jamovi directly by double-clicking its icon from your desktop, or choosing it from your Start Menu (i.e. not from within R itself). It interacts with R in the background; you never need to be aware that R is running.

     

    Data Editor

    A data editor is a fundamental feature in data analysis software. It puts you in touch with your data and lets you get a feel for it, if only in a rough way. A data editor is such a simple concept that you might think there would be hardly any differences in how they work in different GUIs. While there are technical differences, to a beginner what matters the most are the differences in simplicity. Some GUIs, including BlueSky, let you create only what R calls a data frame. They use more common terminology and call it a data set: you create one, you save one, later you open one, then you use one. Others, such as RKWard trade this simplicity for the full R language perspective: a data set is stored in a workspace. So the process goes: you create a data set, you save a workspace, you open a workspace, and choose a dataset from within it.

    jamovi’s data editor appears at start-up (Figure 1, left) and prompts you to enter data with an empty spreadsheet-style data editor. You can start entering data immediately, though at first, the variables are simply named A, B, C….

    To change metadata, such as variable names, you double click on a name, and window (Figure 2) will slide open from the top with settings for variable name, description, measurement level (continuous, ordinal, nominal, or ID), data type (integer, decimal, text), variable levels (labels) and a “retain unused levels” switch. Currently, jamovi has no date format, which is a serious limitation if you deal with that popular data format.

    Figure 2. The jamovi data editor with the variable attributes window open, allowing you to make changes.

    When choosing variable terminology, R GUI designers have two choices: follow what most statistics books use, or instead use R jargon. The jamovi designers have opted for the statistics book terminology. For example, what jamovi calls categorical, decimal, or text are called factor, numeric, or character in R. Both sets of terms are fairly easy to learn, but given that some jamovi users may wish to learn R code, I find that choice puzzling. Changing variable settings can be done to many variables at once, which is an important time saver.

    You can enter integer, decimal, or character data in the editor right after starting jamovi. It will recognize those types and set their metadata accordingly.

    To enter nominal/factor data, you are free to enter numbers, such as 1/2 and later set levels to see Male/Female appear. Or you can set it up in advance and enter the numbers which will instantly turn into labels. That is a feature that saves time and helps assure accuracy. All data editors should offer that choice!

    Adding variables or observations is as simple as scrolling beyond the set’s current limits and entering additional data. jamovi does not require “add more” buttons as some of its competitors (e.g. BlueSky) do. Adding variables or observations in between existing ones is also easy. Under the “Data” tab, there are two sets of “Add” and “Delete” buttons. The first set deals with variables and the second with cases. You can use the first set to insert, compute, transform variables or delete variables. The second inserts, appends, or deletes cases. These two sets of buttons are labeled “Variables” and “Rows”, but the font used is so small that I used jamovi for quite a while before noticing these labels.

     

    Data Import

    The ability to import data from a wide variety of formats is extremely important; you can’t analyze what you can’t access. Most of the GUIs evaluated in this series can open a wide range of file types and even pull data from relational databases. jamovi can’t read data from databases, but it can import the following file formats:

    • Comma Separated Values (.csv)
    • Plain text files (.txt)
    • SPSS (.sav, .zsav, .por)
    • SAS binary files (.sas7bdat, .xpt)
    • JASP (.jasp)

    While jamovi doesn’t support true date/time variables, when you import a dataset that contains them, it will convert them to an integer value representing the number of days since 1970-01-01 and assign them labels in the YYYY-MM-DD format.

     

    Data Export

    The ability to export data to a wide range of file types helps when you have to use multiple tools to complete a task. Research is commonly a team effort, and in my experience, it’s rare to have all team members prefer to use the same tool. For these reasons, GUIs such as BlueSky and Deducer offer many export formats. Others, such as R Commander and RKward can create only delimited text files.

    A fairly unique feature of jamovi is that it doesn’t save just a dataset, but instead it saves the combination of a dataset plus its associated analyses. To save just the dataset, you use the menu (a.k.a. hamburger) menu to select “Export” then “Data.”  The export formats supported are the same as those provided for import, except for the more rarely-used ones such as SAS xpt and SPSS por and zsav:

    • Comma Separated Values (.csv)
    • Plain text files (.txt)
    • SPSS (.sav)
    • SAS binary files (.sas7bdat)
    Data Management

    It’s often said that 80% of data analysis time is spent preparing the data. Variables need to be transformed, recoded, or created; strings and dates need to be manipulated; missing values need to be handled; datasets need to be sorted, stacked, merged, aggregated, transposed, or reshaped (e.g. from “wide” format to “long” and back).

    A critically important aspect of data management is the ability to transform many variables at once. For example, social scientists need to recode many survey items, biologists need to take the logarithms of many variables. Doing these types of tasks one variable at a time is tedious.

    Some GUIs, such as BlueSky and R Commander can handle nearly all of these tasks. Others, such as RKWard handle only a few of these functions.

    jamovi’s data management capabilities are minimal. You can transform or recode variables, and doing so across many variables is easy. The transformations are stored in the variable itself, making it easy to see what it was by double-clicking its name. However, the R code for the transformation is not available, even in with Syntax Mode turned on.

    You can also filter cases to work on a subset of your data. However, jamovi can’t sort, stack, merge, aggregate, transpose, or reshape datasets. The lack of combining datasets may be a result of the fact that jamovi can only have one dataset open in a given session.

     

    Menus & Dialog Boxes

    The goal of pointing and clicking your way through an analysis is to save time by recognizing menu settings rather than performing the more difficult task of recalling programming commands. Some GUIs, such as BlueSky, make this easy by sticking to menu standards and using simpler dialog boxes; others, such as RKWard, use non-standard menus that are unique to it and hence require more learning.

    jamovi uses standard menu choices for running steps listed on the Data and Analyses tabs. Dialog boxes appear and you select variables to place into their various roles. This is accomplished by either dragging the variable names or by selecting them and clicking an arrow located next to the particular role box. A unique feature of jamovi is that as soon as you fill in enough options to perform an analysis, its output appears instantly. There is no “OK” or “Run” button as the other GUIs reviewed here have. Thereafter, every option chosen adds to the output immediately; every option turned off is removed.

    While nearly all GUIs keep your dialog box settings during your session, jamovi keeps those settings in its main “workspace” file. This allows you to return to a given analysis at a future date and try some model variations. You only need to click on the output of any analysis to have the dialog box appear to the right of it, complete with all settings intact.

    Under the triple-dot menu on the upper right side of the screen, you can choose to run “Syntax Mode.” When you turn that on, the R syntax appears immediately, and when you turn it off, it vanishes just as quickly. Turning on syntax mode is the only way a jamovi user would be aware that R is doing the work in the background.

    Output is saved by using the standard “Menu> Save” selection.

     

    Documentation & Training

    The jamovi User Guide covers the basics of using the software. The Resources by the Community web page provides links to a helpful array of documentation and tutorials in written and video form.

     

    Help

    R GUIs provide simple task-by-task dialog boxes which generate much more complex code. So for a particular task, you might want to get help on 1) the dialog box’s settings, 2) the custom functions it uses (if any), and 3) the R functions that the custom functions use. Nearly all R GUIs provide all three levels of help when needed. The notable exception that is the R Commander, which lacks help on the dialog boxes themselves.

    jamovi doesn’t offer any integrated help files, only the documentation described in the Documentation & Training section above. The search for help can become very confusing. For example, after doing the scatterplot shown in the next section, I wondered if the scat() function offered a facet argument, normally this would be an easy question to answer. My initial attempt was to go to RStudio, load jamovi’s jmv package knowing that I routinely get help from it. However, the scat() function is not built into jamovi (or jmv); it comes in the scatr add-on module. So I had to return to jamovi and install Rj Editor module. That module lets you execute R code from within jamovi. However, running “help(scat)” yielded no result. After so much confusion, I never was able to find any help on that function. Hopefully, this situation will improve as jamovi matures.

     

    Graphics

    The various GUIs available for R handle graphics in several ways. Some, such as RKWard, focus on R’s built-in graphics. Others, such as BlueSky, focus on R’s popular ggplot graphics. GUIs also differ quite a lot in how they control the style of the graphs they generate. Ideally, you could set the style once, and then all graphs would follow it.

    jamovi uses its own graphics functions to create plots. By default, they have the look of the popular ggplot2 package. jamovi is the only R GUI reviewed that lets you set the plot style in advance, and all future plots will use that style. It does this using four popular themes. jamovi also lets you choose color palettes in advance, from a set of eight.

    [Continued…]

    var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' }; (function(d, t) { var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; s.src = '//cdn.viglink.com/api/vglnk.js'; var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); }(document, 'script'));

    To leave a comment for the author, please follow the link and comment on their blog: R – r4stats.com. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

    Pages