Files
drift/archive/06_Ensemble_Modeling.ipynb
T
Mark Aron Szulyovszky d047b7417e feat(WalkForward): added regression/classification switch, archived old experiments, wrapped the process into run_whole_pipeline() (#10)
* refactor(WalkForward): cleaned up training & evaluation code

* refactor: added run_whole_pipeline(), moved all previous models to archive
2021-12-14 18:16:17 +01:00

4018 lines
506 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"#ignore\n",
"from IPython.core.display import HTML,Image\n",
"import sys"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Markets are, in my view, mostly random. However, they're not _completely_ random. Many small inefficiencies and patterns exist in markets which can be identified and used to gain slight edge on the market. \n",
"\n",
"These edges are rarely large enough to trade in isolation - transaction costs and overhead can easily exceed the expected profits offered. But when we are able to combine many such small edges together, the rewards can be great. \n",
"\n",
"In this article, I'll present a framework for blending together outputs from multiple models using a type of ensemble modeling known as _stacked generalization_. This approach excels at creating models which \"generalize\" well to unknown future data, making them an excellent choice for the financial domain, where overfitting to past data is a major challenge. \n",
"\n",
"This post is the sixth and final installment in my tutorial series on applying machine learning to financial time series data. If you haven't already read the prior articles, you may want to do that before starting this one. \n",
"* [Data management](ML_data_management.html)\n",
"* [Feature engineering](feature_engineering.html)\n",
"* [Feature selection](feature_selection.html)\n",
"* [Walk-forward modeling](walk_forward_model_building.html)\n",
"* [Model evaluation](model_evaluation.html)\n",
"\n",
"### Ensemble Learning \n",
"\n",
"_Ensemble learning_ is a powerful - and widely used - technique for improving model performance (especially it's _generalization_) by combining predictions made by multiple different machine learning models. The idea behind ensemble learning is not dissimilar from the concept [\"wisdom of the crowd\"](https://en.wikipedia.org/wiki/Wisdom_of_the_crowd), which posits that the aggregated/consensus answer of several diverse, well-informed individuals is typically better than any one individual within the group. \n",
"\n",
"In the world of machine learning, this concept of combining multiple models takes many forms. The first form appears _within_ a number of commonly used algorithms such as [Random Forests](https://en.wikipedia.org/wiki/Random_forest), [Bagging](https://en.wikipedia.org/wiki/Bootstrap_aggregating), and [Boosting](https://en.wikipedia.org/wiki/Boosting_(machine_learning) (though this one works somewhat differently). Each of these algorithms takes a single base model (e.g., a decision tree) and trains many versions of that single algorithm on differing sets of features or samples. The resulting collection of trained models are often more robust out of sample because they're likely to be less overfitted to certain features or samples in the training data.\n",
"\n",
"A second form of ensembling methods involves aggregating across multiple _different model types_ (e.g., an SVM, a logistic regression, and a decision tree) - or with _different hyperparameters_. Since each learning algorithm or set of hyperparameters tends to have different biases, it will tend to make different prediction errors - and extract different signals - from the same set of data. Assuming all models are reasonably good - and that the errors are reasonably uncorrelated to one another - they will partially cancel each other out and the aggregated predictions will be more useful than any single model's predictions. \n",
"\n",
"One particularly flexible approach to this latter type of ensemble modeling is \"stacked generalization\", or \"stacking\". In this post, I will walk through a simple example of stacked generalization applied to time series data. If you'd like to replicate and experiment with the below code, _you can download the source notebook for this post by right-clicking on the below button and choosing \"save link as\"_ \n",
"\n",
"<a style=\"text-align: center;\" href=\"https://github.com/convergenceIM/alpha-scientist/blob/master/content/06_Ensemble_Modeling.ipynb\"><img src=\"images/button_ipynb-notebook.png\" title=\"download ipynb\" /></a>\n",
"\n",
"\n",
"\n",
"### Overview of Stacked Generalization \n",
"The \"stacked generalization\" framework was initially proposed by Wolpert in a [1992 academic paper](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.1533). Since it was first proposed, stacked generalization (aka \"stacking\") has received a modest but consistent amount of attention from the ML research community. \n",
"\n",
"Stacked generalization is an ensemble modeling technique. The core concept of stacked generalization is to generate a single, optimally robust prediction for a regression or classification task by (a) building multiple different models (with varying learning algorithms, varying hyperparameters, and/or different features) to make predictions then (b) training a \"meta-model\" or \"blending model\" to determine how to combine the predictions of each of these multiple models. \n",
"\n",
"A nice way to visualize this (borrowed from documentation for Sebastian Rashka's excellent [mlxtend package](http://rasbt.github.io/mlxtend/user_guide/regressor/StackingRegressor/)) is shown below. Each model R<sub>1</sub> thru R<sub>m</sub> is trained on historical data and used to make predictions P<sub>1</sub> thru P<sub>m</sub>. Those predictions then become the features used to train a meta-model to determine how to combine these predictions. \n",
"\n",
"\n",
"<img src=\"http://rasbt.github.io/mlxtend/user_guide/regressor/StackingRegressor_files/stackingregression_overview.png\" width=\"400\">\n",
"\n",
"I think of this using an analogy. Imagine that there is a team of investment analysts whose manager has asked each of them to make earnings forecasts for the same set of companies across many quarters. The manager \"learns\" which analysts have historically been most accurate, somewhat accurate, and inaccurate. When future predictions are needed, the manager can assign greater and lesser (and in some cases, zero) weighting to each analyst's prediction.\n",
"\n",
"It's clear why it's referred to as \"stacked\". But why \"generalization\"? The principal motivation for applying this technique is to achieve greater \"generalization\" of models to out-of-sample (i.e., unseen) data by de-emphasizing models which appear to be overfitted to the data. This is achieved by allowing the meta-model to learn which of the base models' predictions have held up well (and poorly) out-of-sample and to weight models appropriately. \n",
"\n",
"\n",
"### Motivations\n",
"In my view, stacked generalization is perfectly suited to the challenges we face when making predictions in noisy, non-stationary, regime-switching financial markets. When properly implemented (see next section), stacking help to defend against the scourge of overfitting - something which virtually all practitioners of investing ML will agree is a major challenge. \n",
"\n",
"Better yet, stacking allows us to blend together relatively weak (but orthogonal and additive) signals together in a way that doesn't get drowned out by stronger signals. \n",
"\n",
"To illustrate, consider a canonical trend-following strategy which is predicated on 12 month minus 1 month price change. Perhaps we also believe that month-of-year or recent IBIS earnings trend have a weak, but still useful effect on price changes. If we were to train a model that lumped together dominant features (12 minus 1 momentum) and weaker features (seasonality or IBIS trend), our model may miss the subtle information because the dominant features overshadow them. \n",
"\n",
"A stacked model, which has one component (i.e., a base model) focused on solely momentum features, another component focused on solely seasonality features, and a third one focused on analyst revisions features can capture and use the more subtle effects alongside the more dominant momentum effect.\n",
"\n",
"\n",
"### Keys to Success\n",
"Stacked generalization is sometimes referred to as a \"black art\" and there is truth to that view. However, there are also two concrete principles that will get you a long way towards robust results.\n",
"\n",
"__1. Out of Sample Training__ \n",
"First, it's _absolutely critical_ that the predictions P<sub>1</sub> thru P<sub>m</sub> used to train the meta-model are exclusively _out of sample_ predictions. Why? Because in order to determine which models are likely to generalize best to out of sample (ie those with least overfit), we must judge that based on past predictions which were themselves made out-of-sample. \n",
"\n",
"Imagine that you trained two models using different algorithms, say logistic regression and decision trees. Both could be very useful (out of sample) but decision trees have a greater tendency to overfit training data. If we used in-sample predictions as features to our meta-learner, we'd likely give much more weight to the model with a tendancy to overfit the most. \n",
"\n",
"Several methods can be used for this purpose. Some advise splitting training data into Train<sub>1</sub> and Train<sub>2</sub> sets so base models can be trained on Train<sub>1</sub> and then can make predictions on Train<sub>2</sub> data for use in training the ensemble model. Predictions of the ensemble model must, of course, be evaluated on yet another dataset. \n",
"\n",
"Others use K-fold cross-validation prediction (such as scikit's `cross_val_predict`) on base models to simulate out-of-sample(ish) predictions to feed into the ensemble layer. \n",
"\n",
"However, in my view, the best method for financial time series data is to use walk-forward training and prediction on the base models, as described in my [Walk-forward modeling](walk_forward_model_building.html) post. In addition to ensuring that every base prediction is true out-of-sample, it simulates the impact of non-stationarity (a.k.a. regime change) over time. \n",
"\n",
"__2. Non-Negativity__ \n",
"Second - and this is less of a hard-and-fast rule - is to constrain the meta-model to learning non-negative coefficients only, using an algorithm like ElasticNet or lasso which allows non-negativity constraints. \n",
"\n",
"This technique is important because quite often (and sometimes by design) there will be very high collinearity of the \"features\" fed into the meta-model (P<sub>1</sub> thru P<sub>m</sub>). In periods of high collinearity, learning algorithms can do funky things, such as finding a slightly better fit to past data by assigning a high positive coefficient to one model and a large negative coefficient to another. This is rarely what we really want. \n",
"\n",
"Call me crazy, but if a model is useful only in that it consistently predicts the wrong outcome, it's probably not a model I want to trust. \n",
"\n",
"\n",
"\n",
"### Further Reading\n",
"That's enough (too much?) background for now. Those interested in more about the theory and practice of stacked generalization should check out the below research papers:\n",
"* [Wolpert, 1992](http://www.machine-learning.martinsewell.com/ensembles/stacking/Wolpert1992.pdf)\n",
"* [Ting and Witten, 1997](https://pdfs.semanticscholar.org/fd97/e40ef6c310213fae017fdbf328c8bdf5cb68.pdf)\n",
"* [Ting and Witten, 1999](https://arxiv.org/pdf/1105.5466.pdf)\n",
"* [Breiman, 1996](https://link.springer.com/content/pdf/10.1007/BF00117832.pdf)\n",
"* [Sigletos et al, 2005](http://www.jmlr.org/papers/volume6/sigletos05a/sigletos05a.pdf)\n",
"* [Why do stacked ensemble models win data science competitions?](https://blogs.sas.com/content/subconsciousmusings/2017/05/18/stacked-ensemble-models-win-data-science-competitions/)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Preparing the Data\n",
"For this simple example, I will create synthetic data rather than using real market prices to remove the ambiguity about what features and transformations may be necessary to extract maximum value from the model. \n",
"\n",
"Note: to make the dataset more realistic, I will extract an _index_ from actual stock prices using quandl's API, but all features and target values will be constructed below. \n",
"\n",
"With index in hand, we will generate four \"hidden factors\". These are the non-random drivers of the target variable, and are the \"signal\" we ideally want to learn. \n",
"\n",
"To ensure that these factors are meaningful, we will _create the target variable (`y`) using combinations of these factors_. The first two hidden factors have a __linear__ relationship to the target. The second two hidden factors have a more complex relationship involving interaction effects between variables. Lastly, we will add a noise component to make our learners work for it. \n",
"\n",
"Finally, we'll create several features that are each related to one or more hidden factors, including generous amounts of noise and bias. \n",
"\n",
"Key point: we've created X and y data which we know is related by several different linkages, some of which are linear and some of which aren't. This is what our modeling will seek to learn. "
]
},
{
"cell_type": "code",
"execution_count": 142,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th></th>\n",
" <th>f1</th>\n",
" <th>f2</th>\n",
" <th>f3</th>\n",
" <th>f4</th>\n",
" <th>f5</th>\n",
" <th>f6</th>\n",
" <th>f7</th>\n",
" <th>f8</th>\n",
" <th>f9</th>\n",
" <th>f10</th>\n",
" </tr>\n",
" <tr>\n",
" <th>date</th>\n",
" <th>symbol</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th rowspan=\"4\" valign=\"top\">2012-01-03</th>\n",
" <th>AAPL</th>\n",
" <td>0.290710</td>\n",
" <td>-0.891838</td>\n",
" <td>2.716568</td>\n",
" <td>-2.150783</td>\n",
" <td>-0.705256</td>\n",
" <td>-0.452650</td>\n",
" <td>-1.681323</td>\n",
" <td>2.315719</td>\n",
" <td>-2.074949</td>\n",
" <td>0.195330</td>\n",
" </tr>\n",
" <tr>\n",
" <th>CSCO</th>\n",
" <td>0.684334</td>\n",
" <td>-0.243884</td>\n",
" <td>1.427696</td>\n",
" <td>-1.840774</td>\n",
" <td>-0.060560</td>\n",
" <td>2.298205</td>\n",
" <td>-1.252799</td>\n",
" <td>1.553487</td>\n",
" <td>-3.292124</td>\n",
" <td>-1.953685</td>\n",
" </tr>\n",
" <tr>\n",
" <th>INTC</th>\n",
" <td>0.261258</td>\n",
" <td>0.520605</td>\n",
" <td>1.846479</td>\n",
" <td>-1.650393</td>\n",
" <td>0.651065</td>\n",
" <td>0.178868</td>\n",
" <td>0.051921</td>\n",
" <td>1.194534</td>\n",
" <td>-1.717330</td>\n",
" <td>4.514711</td>\n",
" </tr>\n",
" <tr>\n",
" <th>MSFT</th>\n",
" <td>1.026038</td>\n",
" <td>0.122784</td>\n",
" <td>-0.091722</td>\n",
" <td>-4.462153</td>\n",
" <td>0.032104</td>\n",
" <td>1.076377</td>\n",
" <td>0.288104</td>\n",
" <td>0.504962</td>\n",
" <td>-2.324226</td>\n",
" <td>-0.570928</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2012-01-04</th>\n",
" <th>AAPL</th>\n",
" <td>-1.182916</td>\n",
" <td>-2.676495</td>\n",
" <td>2.087499</td>\n",
" <td>-2.474870</td>\n",
" <td>-0.968875</td>\n",
" <td>0.655539</td>\n",
" <td>0.567816</td>\n",
" <td>4.224116</td>\n",
" <td>-0.748807</td>\n",
" <td>1.383618</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2018-03-26</th>\n",
" <th>MSFT</th>\n",
" <td>-1.678099</td>\n",
" <td>-2.300153</td>\n",
" <td>2.644520</td>\n",
" <td>-2.186149</td>\n",
" <td>-2.277767</td>\n",
" <td>-0.177903</td>\n",
" <td>-3.435729</td>\n",
" <td>5.015973</td>\n",
" <td>-2.384433</td>\n",
" <td>-2.592677</td>\n",
" </tr>\n",
" <tr>\n",
" <th rowspan=\"4\" valign=\"top\">2018-03-27</th>\n",
" <th>AAPL</th>\n",
" <td>2.425041</td>\n",
" <td>0.408673</td>\n",
" <td>1.817243</td>\n",
" <td>-3.249701</td>\n",
" <td>-0.675492</td>\n",
" <td>0.393031</td>\n",
" <td>1.332007</td>\n",
" <td>2.384243</td>\n",
" <td>-3.372531</td>\n",
" <td>-1.509449</td>\n",
" </tr>\n",
" <tr>\n",
" <th>CSCO</th>\n",
" <td>0.743400</td>\n",
" <td>0.284298</td>\n",
" <td>1.787818</td>\n",
" <td>-3.457743</td>\n",
" <td>0.545880</td>\n",
" <td>0.890898</td>\n",
" <td>-2.346138</td>\n",
" <td>2.344296</td>\n",
" <td>-0.666132</td>\n",
" <td>2.443742</td>\n",
" </tr>\n",
" <tr>\n",
" <th>INTC</th>\n",
" <td>1.992259</td>\n",
" <td>-0.691250</td>\n",
" <td>-0.086637</td>\n",
" <td>-2.517395</td>\n",
" <td>-0.913152</td>\n",
" <td>1.121162</td>\n",
" <td>-0.618323</td>\n",
" <td>1.892296</td>\n",
" <td>-2.282686</td>\n",
" <td>-2.508796</td>\n",
" </tr>\n",
" <tr>\n",
" <th>MSFT</th>\n",
" <td>1.097342</td>\n",
" <td>-0.552628</td>\n",
" <td>0.211335</td>\n",
" <td>1.053797</td>\n",
" <td>-0.462206</td>\n",
" <td>1.230167</td>\n",
" <td>0.150094</td>\n",
" <td>-0.408570</td>\n",
" <td>-3.068049</td>\n",
" <td>0.807234</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>6266 rows × 10 columns</p>\n",
"</div>"
],
"text/plain": [
" f1 f2 f3 f4 f5 f6 \\\n",
"date symbol \n",
"2012-01-03 AAPL 0.290710 -0.891838 2.716568 -2.150783 -0.705256 -0.452650 \n",
" CSCO 0.684334 -0.243884 1.427696 -1.840774 -0.060560 2.298205 \n",
" INTC 0.261258 0.520605 1.846479 -1.650393 0.651065 0.178868 \n",
" MSFT 1.026038 0.122784 -0.091722 -4.462153 0.032104 1.076377 \n",
"2012-01-04 AAPL -1.182916 -2.676495 2.087499 -2.474870 -0.968875 0.655539 \n",
"... ... ... ... ... ... ... \n",
"2018-03-26 MSFT -1.678099 -2.300153 2.644520 -2.186149 -2.277767 -0.177903 \n",
"2018-03-27 AAPL 2.425041 0.408673 1.817243 -3.249701 -0.675492 0.393031 \n",
" CSCO 0.743400 0.284298 1.787818 -3.457743 0.545880 0.890898 \n",
" INTC 1.992259 -0.691250 -0.086637 -2.517395 -0.913152 1.121162 \n",
" MSFT 1.097342 -0.552628 0.211335 1.053797 -0.462206 1.230167 \n",
"\n",
" f7 f8 f9 f10 \n",
"date symbol \n",
"2012-01-03 AAPL -1.681323 2.315719 -2.074949 0.195330 \n",
" CSCO -1.252799 1.553487 -3.292124 -1.953685 \n",
" INTC 0.051921 1.194534 -1.717330 4.514711 \n",
" MSFT 0.288104 0.504962 -2.324226 -0.570928 \n",
"2012-01-04 AAPL 0.567816 4.224116 -0.748807 1.383618 \n",
"... ... ... ... ... \n",
"2018-03-26 MSFT -3.435729 5.015973 -2.384433 -2.592677 \n",
"2018-03-27 AAPL 1.332007 2.384243 -3.372531 -1.509449 \n",
" CSCO -2.346138 2.344296 -0.666132 2.443742 \n",
" INTC -0.618323 1.892296 -2.282686 -2.508796 \n",
" MSFT 0.150094 -0.408570 -3.068049 0.807234 \n",
"\n",
"[6266 rows x 10 columns]"
]
},
"execution_count": 142,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"pd.core.common.is_list_like = pd.api.types.is_list_like # remove once updated pandas-datareader issue is fixed\n",
"# https://github.com/pydata/pandas-datareader/issues/534\n",
"import pandas_datareader.data as web\n",
"%matplotlib inline\n",
"\n",
"from IPython.core.display import HTML,Image\n",
"\n",
"\n",
"def get_symbols(symbols,data_source, begin_date=None,end_date=None):\n",
" out = pd.DataFrame()\n",
" for symbol in symbols:\n",
" df = web.DataReader(symbol, data_source,begin_date, end_date, api_key = \"-Wx-uQogeBXd-rhXjUBQ\")[['AdjOpen','AdjHigh','AdjLow','AdjClose','AdjVolume']].reset_index()\n",
" df.columns = ['date','open','high','low','close','volume'] #my convention: always lowercase\n",
" df['symbol'] = symbol # add a new column which contains the symbol so we can keep multiple symbols in the same dataframe\n",
" df = df.set_index(['date','symbol'])\n",
" out = pd.concat([out,df],axis=0) #stacks on top of previously collected data\n",
" return out.sort_index()\n",
" \n",
"idx = get_symbols(['AAPL','CSCO','MSFT','INTC'],data_source='quandl',begin_date='2012-01-01',end_date=None).index\n",
"# note, we're only using quandl prices to generate a realistic multi-index of dates and symbols\n",
"\n",
"num_obs = len(idx)\n",
"split = int(num_obs*.80)\n",
"\n",
"## First, create factors hidden within feature set\n",
"hidden_factor_1 = pd.Series(np.random.randn(num_obs),index=idx)\n",
"hidden_factor_2 = pd.Series(np.random.randn(num_obs),index=idx)\n",
"hidden_factor_3 = pd.Series(np.random.randn(num_obs),index=idx)\n",
"hidden_factor_4 = pd.Series(np.random.randn(num_obs),index=idx)\n",
"\n",
"## Next, generate outcome variable y that is related to these hidden factors\n",
"y = (0.5*hidden_factor_1 + 0.5*hidden_factor_2 + # factors linearly related to outcome\n",
" hidden_factor_3 * np.sign(hidden_factor_4) + hidden_factor_4*np.sign(hidden_factor_3)+ # factors with non-linear relationships\n",
" pd.Series(np.random.randn(num_obs),index=idx)).rename('y') # noise\n",
"\n",
"## Generate features which contain a mix of one or more hidden factors plus noise and bias\n",
"\n",
"f1 = 0.25*hidden_factor_1 + pd.Series(np.random.randn(num_obs),index=idx) + 0.5\n",
"f2 = 0.5*hidden_factor_1 + pd.Series(np.random.randn(num_obs),index=idx) - 0.5\n",
"f3 = 0.25*hidden_factor_2 + pd.Series(np.random.randn(num_obs),index=idx) + 2.0\n",
"f4 = 0.5*hidden_factor_2 + pd.Series(np.random.randn(num_obs),index=idx) - 2.0\n",
"f5 = 0.25*hidden_factor_1 + 0.25*hidden_factor_2 + pd.Series(np.random.randn(num_obs),index=idx) \n",
"f6 = 0.25*hidden_factor_3 + pd.Series(np.random.randn(num_obs),index=idx) + 0.5\n",
"f7 = 0.5*hidden_factor_3 + pd.Series(np.random.randn(num_obs),index=idx) - 0.5\n",
"f8 = 0.25*hidden_factor_4 + pd.Series(np.random.randn(num_obs),index=idx) + 2.0\n",
"f9 = 0.5*hidden_factor_4 + pd.Series(np.random.randn(num_obs),index=idx) - 2.0\n",
"f10 = hidden_factor_3 + hidden_factor_4 + pd.Series(np.random.randn(num_obs),index=idx) \n",
"\n",
"## From these features, create an X dataframe\n",
"X = pd.concat([f1.rename('f1'),f2.rename('f2'),f3.rename('f3'),f4.rename('f4'),f5.rename('f5'),\n",
" f6.rename('f6'),f7.rename('f7'),f8.rename('f8'),f9.rename('f9'),f10.rename('f10')],axis=1)\n",
"\n",
"X"
]
},
{
"cell_type": "code",
"execution_count": 136,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/pandas/core/arraylike.py:364: RuntimeWarning: divide by zero encountered in log\n",
" result = getattr(ufunc, method)(*inputs, **kwargs)\n"
]
}
],
"source": [
"from load_data import create_target_cum_forward_returns, create_target_classes, load_files\n",
"from sklearn.preprocessing import MinMaxScaler\n",
"\n",
"ticker_to_predict = 'BTC_ETH'\n",
"data = load_files(path='data/',\n",
" own_asset=ticker_to_predict,\n",
" load_other_assets=True,\n",
" log_returns=True,\n",
" add_date_features=False,\n",
" own_technical_features='level1',\n",
" other_technical_features='level1',\n",
" exogenous_features='none',\n",
" index_column='date',\n",
" narrow_format=True\n",
")\n",
"data = data.set_index([data.index, 'ticker'])\n",
"data\n",
"\n",
"target_col = 'target'\n",
"returns_col = 'returns'\n",
"data = create_target_cum_forward_returns(data, returns_col, 1)\n",
"\n",
" \n",
"X = data.drop(columns=[target_col])\n",
"X_cols = X.columns\n",
"y = data[target_col]\n",
"\n",
"feature_scaler = MinMaxScaler(feature_range= (-1, 1))\n",
"X_orig = X.copy()\n",
"X = pd.DataFrame(feature_scaler.fit_transform(X), columns = X_cols)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Exploratory Data Analysis\n",
"We'll avoid going too deeply into exploratory data analysis (refer to [Feature engineering](feature_engineering.html) for more exploration of that topic). I will, however, plot three simple views:\n",
"1. Distributions of the features and target variables.\n",
"2. Simple univariate regressions for each of the ten features vs. the target variable. \n",
"3. A clustermap showing correlations between the features (see [Feature selection](feature_selection.html) for more on this technique):"
]
},
{
"cell_type": "code",
"execution_count": 137,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'Distributions - Features and Target'}, ylabel='Density'>"
]
},
"execution_count": 137,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"## Distribution of features and target\n",
"X.plot.kde(legend=True,xlim=(-5,5),color=['green']*5+['orange']*5,title='Distributions - Features and Target')\n",
"y.plot.kde(legend=True,linestyle='--',color='red') # target"
]
},
{
"cell_type": "code",
"execution_count": 138,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n",
"/usr/local/anaconda3/envs/quant/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n",
" warnings.warn(\n"
]
},
{
"data": {
"text/plain": [
"Text(0.5, 1.05, 'Univariate Regressions for Features')"
]
},
"execution_count": 138,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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mvz33/0kCZlarebSpX8oUKAARYtqZw3Pa7EMaUhyBg4cyJdffklERASxsbFMnDiRAQMGULNmTfz8/FJ7exINGzbkxIkTPHv2jJiYGAIDA2natGmGKp9bdejQiejoaMaPH4udnT2ensk/7K5//0E0atSEvXt38cUXn+ivnepER0cz5PgFdv57k0alijOsbs0U9+1VyR0VMPHgnzyJiqZbFY+XXxxq/a2KqBO0XyxxLyA+DtTxJBQoTELBIiiaBBIKFSWhUFFUL14YDEL285vC6dN/Ubt2XX77bTMODsl3a3p798Dc3JxZs6bz4sUL/fLvv59NREQ4/foNSPE43jZZ3U5yi6yO5ZEjR7B3724alivLBz+s1D+GxFinvdFYVpRXXyZgEMuKRqNNltRqEpwKapN1M3PCPpoEL15gv2kpoH3advv2HXn69CmLFs032Ofy5Uv5++9ztG7dVn/yJbEssZxiLJcuwccN66LvbzFPej+P0VgGQHmVFGk0oFaDOh7i1doxYfHxL08E4lDUaiwv/IXFtYtg8WoiP91drV99Nc6gR2fx4oU8ePAfPj699GN18losQxrurvL29mb79u00adLEYHnVqlUztMPChQszcuRI+vXrR3x8PN7e3lSvXj1D28qt2rZth5WVFWfPnqZrV2/93DHGqFQqVq9ez8cfD2bNmpXs3bub1q3bUrhwER49esiBA4E8fRpMq1ZtWLTIn4j8BYw+2VanpJMDtYsX4a/7DynmYEeDksXSVGez58GvbsN9+diIxL04jx8/ZvnynwHw8KjAwoXzjG7n00+/wNramvLl3Rk27FMWLpxHy5aNadOmHf/+e4X9+/dRt259PvhgQJrq9bbI6naSW2RHLLetUpHlndvguFmbdJg9D0Z5+SEcV6M+2i8LJV2xrFhYosnvoo9jXfyaPQ/GftPPScp//fU3nDx5nGnTJvPnn39QuXJVLl68wNGjv1OqVBlmz36V/Egsa0ksJx/L5ppXPYIqI72DaY1l5WXyoothwOBzOPGcULr1vXp9wL59e9izZyeeno3w9GzN9ev/cuBAIOXKlWfMGF/9+/NaLEMakhwbGxsePXpEkSJFsmynHTt2pGPHjlm2vdzG0dGJJk2acfDgfjp08Eq1vL29PatWrePQof2sXLmMY8eO8vjxI1xcXKlduy59+vSjTZv30jx2yauSO6f/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bmDJkiVoamrSowQiIiKawHRrckbT39+P2tparF69GgBw/fp1pKWl4eTJk8EqgYiIiCaIoD6TExERgYqKCnz77bcAgOrqaixZsiSYJRAREdEEEdQrOQDQ3NyMt956C4ODg5gxYwa2b9+OSZMmBbMEIiIimgCC3uQQERERBQP/4jEREREZEpscIiIiMiQ2OURERGRIbHKIiIjIkNjkEBERkSEFfVuH/0cgO5a73W5s2bIFbW1tCA8Px86dOxEfH69rXS0tLdi2bRs8Hg8sFgvefvttTJ061WfO5cuXkZmZienTpwMAJk+ejPfff1+XelwuF/bv34/h4WHk5ubixRdf9Blvb2/Hli1bMDAwgEceeQRvvPEG7rxT/2/9nj170NDQAABITExEcXGx33htbS3uvvtuAMALL7zgV7seVq1ahd7eXm0NHA4H5s2bp43rsV7McuBUzLOqWQaY55uplmcVswyom2ddsiwKczgc4nK5bjmnoqJCSktLRUSkqalJnn/+ed3rSkpKkvb2dhER+fjjj2XdunV+cxobG7W69NTV1SVJSUny22+/ycDAgGRlZcn58+d95mRkZMiZM2dEROS1116TgwcP6l7X8ePHZeXKlTI0NCRut1tycnLk2LFjPnMKCwvl9OnTutdyM6/XK08++aR4PJ5/nKPHejHLgVExz6pmWYR5HkmlPKuYZRF186xXlpW+XRXIjuVffPEFbDYbAODRRx9Fb28vrly5oltNbrcbr776KubMmQMAmD17Njo7O0et/dy5c1i2bBlycnLw448/6lLPiRMnsGjRIlgsFkRERCA1NRWNjY3a+OXLlzE4OIj58+cDALKzs33G9WK1WmG322E2mxEaGor4+Hi/70tbWxvKy8uRlZUFh8OBoaEh3eu6ePEiACAvLw82mw3V1dU+43qtF7McGBXzrGqWAeb5ZqrlWcUsA+rmWa8sK93kWK1WrF+/HvX19YiNjYXD4fCb093dDavV6vOerq4u3Woym81YtmwZAMDr9WLPnj1YvHix37ywsDDYbDY4nU6sWbMGRUVFcLvd417PyK9/ypQpuHr16j+OW61Wn3G9PPDAA1oYOzo60NDQgMTERG18YGAAc+fOxebNm+F0OtHX14d9+/bpXldfXx8SEhKwd+9eVFZW4tChQzh+/Lg2rtd6McuBUTHPqmYZYJ5vplqeVcwyoG6e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",
"text/plain": [
"<Figure size 576x432 with 12 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"## Univariate Regressions\n",
"\n",
"import numpy as np\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"\n",
"sns.set(style=\"dark\")\n",
"\n",
"# Set up the matplotlib figure\n",
"fig, axes = plt.subplots(4, 3, figsize=(8, 6), sharex=True, sharey=True)\n",
"\n",
"# Rotate the starting point around the cubehelix hue circle\n",
"for ax, s in zip(axes.flat, range(10)):\n",
" cmap = sns.cubehelix_palette(start=s, light=1, as_cmap=True)\n",
" x = X.iloc[:,s]\n",
" sns.regplot(x, y,fit_reg = True, marker=',', scatter_kws={'s':1},ax=ax,color='salmon')\n",
" ax.set(xlim=(-5, 5), ylim=(-5, 5))\n",
" ax.text(x=0,y=0,s=x.name.upper(),color='black',\n",
" **{'ha': 'center', 'va': 'center', 'family': 'sans-serif'},fontsize=20)\n",
"\n",
"fig.tight_layout()\n",
"fig.suptitle(\"Univariate Regressions for Features\", y=1.05,fontsize=20)\n"
]
},
{
"cell_type": "code",
"execution_count": 139,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 360x360 with 4 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"## Feature correlations\n",
"\n",
"from scipy.cluster import hierarchy\n",
"from scipy.spatial import distance\n",
"\n",
"corr_matrix = X.corr()\n",
"correlations_array = np.asarray(corr_matrix)\n",
"linkage = hierarchy.linkage(distance.pdist(correlations_array), \\\n",
" method='average')\n",
"g = sns.clustermap(corr_matrix,row_linkage=linkage,col_linkage=linkage,\\\n",
" row_cluster=True,col_cluster=True,figsize=(5,5),cmap='Greens',center=0.5)\n",
"plt.setp(g.ax_heatmap.yaxis.get_majorticklabels(), rotation=0)\n",
"plt.show()\n",
"label_order = corr_matrix.iloc[:,g.dendrogram_row.reordered_ind].columns\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Making Base Models\n",
"\n",
"The first step in a stacked generalization system is to generate the \"base models\", meaning the models which are learning from our input features. We'll create two base models to use in our ensemble:\n",
"1. A collection of simple linear regression models \n",
"2. A collection of tree models - in this case, using the ExtraTrees algorithm \n",
"\n",
"As described above _it's absolutely critical_ to build models which provide realistic _out-of-sample_ predictions, I am going to apply the methodology presented in [Walk-forward modeling](walk_forward_model_building.html). In short, this will retrain at the end of each calendar quarter, using only data which would have been available at that time. Predictions are made using the most recently trained model. \n",
"\n",
"To make this easier to follow, I'll define a simple function called `make_walkforward_model` that trains a series of models at various points in time and generates out of sample predictions using those trained models."
]
},
{
"cell_type": "code",
"execution_count": 149,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.base import clone\n",
"from sklearn.linear_model import LinearRegression\n",
"\n",
"\n",
"def make_walkforward_model(features,outcome,algo=LinearRegression()):\n",
" recalc_dates = features.resample('Q',level='date').mean().index.values[:-1]\n",
" print(recalc_dates)\n",
" ## Train models\n",
" models = pd.Series(index=recalc_dates)\n",
" for date in recalc_dates:\n",
" data = pd.to_datetime(date)\n",
" X_train = features.xs(slice(date-pd.Timedelta('90 days'),date),level='date',drop_level=False)\n",
" print(X_train.shape)\n",
" y_train = outcome.xs(slice(date-pd.Timedelta('90 days'),date),level='date',drop_level=False)\n",
" print(y_train.to_numpy())\n",
" print(f'Train with data prior to: {date} ({y_train.count()} obs)')\n",
" \n",
" model = clone(algo)\n",
" model.fit(X_train,y_train)\n",
" models.loc[date] = model\n",
"\n",
" begin_dates = models.index\n",
" end_dates = models.index[1:].append(pd.to_datetime(['2099-12-31']))\n",
"\n",
" ## Generate OUT OF SAMPLE walk-forward predictions\n",
" predictions = pd.Series(index=features.index)\n",
" for i,model in enumerate(models): #loop thru each models object in collection\n",
" #print(f'Using model trained on {begin_dates[i]}, Predict from: {begin_dates[i]} to: {end_dates[i]}')\n",
" X = features.xs(slice(begin_dates[i],end_dates[i]),level='date',drop_level=False)\n",
" p = pd.Series(model.predict(X),index=X.index)\n",
" predictions.loc[X.index] = p\n",
" \n",
" return models,predictions"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To create a series of walk-forward models, simply pass in X and y data along with a scikit estimator object. It returns a series of models and a series of predictions. Here, we'll create two base models on all features, one using linear regression and one with extra trees."
]
},
{
"cell_type": "code",
"execution_count": 150,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['2012-03-31T00:00:00.000000000' '2012-06-30T00:00:00.000000000'\n",
" '2012-09-30T00:00:00.000000000' '2012-12-31T00:00:00.000000000'\n",
" '2013-03-31T00:00:00.000000000' '2013-06-30T00:00:00.000000000'\n",
" '2013-09-30T00:00:00.000000000' '2013-12-31T00:00:00.000000000'\n",
" '2014-03-31T00:00:00.000000000' '2014-06-30T00:00:00.000000000'\n",
" '2014-09-30T00:00:00.000000000' '2014-12-31T00:00:00.000000000'\n",
" '2015-03-31T00:00:00.000000000' '2015-06-30T00:00:00.000000000'\n",
" '2015-09-30T00:00:00.000000000' '2015-12-31T00:00:00.000000000'\n",
" '2016-03-31T00:00:00.000000000' '2016-06-30T00:00:00.000000000'\n",
" '2016-09-30T00:00:00.000000000' '2016-12-31T00:00:00.000000000'\n",
" '2017-03-31T00:00:00.000000000' '2017-06-30T00:00:00.000000000'\n",
" '2017-09-30T00:00:00.000000000' '2017-12-31T00:00:00.000000000']\n",
"(248, 10)\n",
"[-8.63900450e-01 9.90038253e-02 2.54932144e+00 -1.50562489e+00\n",
" 1.15462603e+00 -2.89453865e+00 2.87883826e+00 3.13902567e-01\n",
" 1.84217337e+00 -1.73476139e-01 -2.52202316e+00 1.13881751e+00\n",
" 1.66686044e-01 4.41712013e+00 -2.08768810e-01 4.60857796e+00\n",
" -1.91298886e+00 1.50977320e+00 -1.02868831e+00 -4.92001924e-01\n",
" 4.29923603e+00 1.56145827e+00 -3.83012971e+00 -1.28634609e+00\n",
" -8.40531591e-01 -1.73918792e+00 2.41068970e+00 -3.28491233e+00\n",
" 6.15930525e-01 -3.59491094e+00 -1.28922212e+00 -3.20893043e+00\n",
" -1.28386359e+00 -1.44366650e+00 1.15246870e+00 -1.78843466e+00\n",
" 3.87338764e-01 -3.88121457e+00 -1.81323742e+00 3.14140126e+00\n",
" 1.01437831e+00 -9.83055965e-01 -4.28494997e+00 2.10944398e+00\n",
" 1.60241455e+00 -3.11508506e+00 -2.23248273e+00 1.44479336e-01\n",
" 1.65272893e+00 3.58678546e+00 -4.92315083e-01 2.42663466e+00\n",
" 2.89752961e+00 2.68295647e+00 -1.05222578e+00 2.06286672e+00\n",
" 3.92283701e+00 -1.73114996e+00 1.16064072e+00 2.80140433e+00\n",
" 2.95785781e+00 -4.64768525e+00 2.04291973e+00 -8.60026859e-01\n",
" 2.51406361e+00 9.72385128e-01 9.02279204e-01 -1.64049358e+00\n",
" -1.27294563e+00 -3.83243684e+00 4.63741998e+00 -1.03671710e+00\n",
" 1.42065094e+00 -2.18208194e+00 -3.13359237e+00 8.42119642e-01\n",
" -1.16979010e+00 -2.59843144e+00 1.79048441e+00 -4.83309603e-01\n",
" -1.23817696e+00 2.56310365e+00 -4.79188824e+00 -1.45713691e+00\n",
" 2.50389360e+00 4.97607033e+00 1.50993285e+00 -9.72756586e-01\n",
" 1.54774920e+00 -2.67576778e+00 1.15662434e+00 1.96147867e-01\n",
" -1.27706016e+00 2.36214054e+00 -1.75078105e+00 7.55298169e-01\n",
" 4.43612091e+00 -1.53906329e+00 -2.30371723e+00 4.50275127e+00\n",
" -1.07456958e+00 7.47236284e-01 -1.80035255e+00 6.20264182e-01\n",
" -4.47841284e-01 -2.23420919e+00 -2.35410970e-01 -1.90152444e+00\n",
" 1.54642909e+00 -2.06216273e+00 1.41128404e+00 4.46923591e-01\n",
" 1.30536190e+00 2.53788107e-01 3.77943568e-02 1.12657397e+00\n",
" -1.79316700e+00 2.00992359e+00 -8.40690559e-01 5.29401021e-01\n",
" 1.88584316e+00 4.85307771e+00 -5.37956576e-01 -1.74326896e+00\n",
" 2.30853698e+00 2.15803417e+00 -1.71104761e+00 -5.12722183e+00\n",
" -1.27292108e+00 -5.42140170e-01 2.21198723e+00 1.67660510e+00\n",
" -2.20954680e+00 -2.32025590e+00 2.79263261e+00 -1.66011906e+00\n",
" 1.64722900e+00 -4.02776544e-01 1.12749317e+00 4.67524931e+00\n",
" 7.67502778e-01 -2.45472006e+00 -1.20670342e+00 3.28073714e-01\n",
" 3.16009562e-01 8.95911869e-01 9.32205207e-01 3.37666796e+00\n",
" 7.38984986e-01 -2.52053311e+00 2.57695237e+00 -3.15960505e+00\n",
" -2.38263697e+00 -3.79275091e+00 -1.90367819e-02 2.62785191e+00\n",
" 2.37214075e+00 -7.08564732e-01 -3.43613229e+00 -3.51343136e+00\n",
" 3.71107000e-01 1.05775191e-01 -2.97308455e+00 -5.03747406e+00\n",
" -1.32010436e+00 9.58675080e-01 1.49995371e+00 3.75657128e-01\n",
" -2.52004989e+00 5.50071820e+00 2.14529518e+00 -1.00888754e+00\n",
" 4.31891125e-01 -1.37185235e+00 5.10156872e-01 2.16933015e+00\n",
" -7.59621748e-01 -3.15103572e-01 -3.14071739e+00 -3.74628154e+00\n",
" 3.94630516e+00 -1.39755143e+00 -6.42221674e-01 3.71068910e+00\n",
" 1.85765721e+00 3.02391112e+00 1.72964650e+00 -1.70821349e+00\n",
" 1.17478974e+00 9.42955597e-01 -2.46737807e+00 4.25297208e-01\n",
" -1.88423107e-01 1.33329474e+00 2.74404890e+00 -1.20608923e+00\n",
" 2.17675683e+00 2.40094867e+00 1.44632210e+00 1.66804865e+00\n",
" -3.21983975e+00 -4.68054070e+00 -3.44985708e-01 -1.49401782e+00\n",
" 2.49529130e+00 9.78372997e-02 1.34165145e+00 -3.09753126e+00\n",
" -6.71328086e-01 1.58817204e+00 3.30914783e-01 1.01420168e+00\n",
" -2.56822030e+00 -1.67541371e-01 -4.21663719e+00 -3.31524814e+00\n",
" 3.10402504e+00 -1.36272491e+00 -1.45750510e+00 1.67840790e+00\n",
" -6.95949003e-01 -1.33647542e+00 3.01663309e+00 -3.47116035e-01\n",
" -3.64177910e+00 1.56705383e+00 2.77198971e+00 -2.39036043e+00\n",
" -2.54340469e-01 -1.77013594e-01 -1.32677918e+00 2.52365001e-01\n",
" 1.03256208e-01 1.71554279e+00 -4.74858295e-03 -1.67922844e+00\n",
" 3.52838949e+00 6.92239924e+00 2.17024356e+00 2.77512848e+00\n",
" 2.12724311e+00 -2.25791255e+00 -9.58609083e-01 8.22808853e-01\n",
" 2.19285773e+00 -1.55841179e+00 -1.92045656e+00 -2.91712132e+00]\n",
"Train with data prior to: 2012-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[-0.3528897 -4.02321763 1.58037704 1.70071047 0.64190986 -2.22867652\n",
" -1.35897097 0.93544629 -1.7322991 -1.34240651 -0.03000227 2.43065823\n",
" 0.74184189 0.46211937 -0.37808817 0.40311117 -0.57973688 -2.64417\n",
" 0.21077043 -2.08097878 2.18872447 -2.71188592 -0.30948918 -3.49277735\n",
" 0.52854451 3.36868744 0.0862339 0.05257853 -1.32047978 4.38949621\n",
" 2.3165803 -0.38431829 2.85986419 -2.98948348 -3.28879448 1.35796951\n",
" -2.24016453 -2.07201991 1.42162748 0.40402374 -2.10504936 -0.73669962\n",
" -1.28526459 -2.5769126 -2.88510868 -3.01822027 -2.07277846 0.4294993\n",
" 2.5405978 -2.80789423 0.5522193 1.28490683 0.43939956 -0.06426456\n",
" 0.78210919 -2.27903073 1.43398308 0.8719537 0.7948972 -0.63819231\n",
" 3.67901613 -1.23629204 1.24044839 -2.24884253 4.00353139 0.73241758\n",
" -0.53418056 -2.39613032 3.16824825 -2.35293118 2.9863721 2.76101399\n",
" -1.95926936 -1.48424011 -1.80000974 1.54795785 1.2512607 -0.1185434\n",
" 2.02823897 3.05354411 -3.21739052 -0.87531344 -0.88556898 0.07163933\n",
" -1.24332453 1.35969373 -0.3371918 1.46948514 -1.91236268 1.87130721\n",
" 2.24768142 -0.98111902 1.63788069 2.26733282 0.87394647 -0.71496335\n",
" 1.78332885 -0.59295118 -2.72002955 1.97713204 -0.89984025 -1.36277279\n",
" 0.54613191 -0.64007449 1.77050442 -2.81726563 1.59456567 2.98538118\n",
" 1.58553357 2.37473743 3.1938839 1.57167975 -1.25869803 -0.303557\n",
" -3.50445407 -1.24160976 3.02941968 2.0827068 -2.30040562 5.14867605\n",
" 0.05059296 -1.47295884 -1.24470059 3.39107929 0.13083192 -2.13813229\n",
" 1.55674193 0.59220021 1.65793838 -0.03273157 -0.40560832 2.82244441\n",
" -3.63506568 -2.26156963 -1.37618926 -1.50093774 -0.12799267 -1.04110214\n",
" 0.22903385 -4.03611529 -1.3366529 2.60104299 0.81052089 2.04957692\n",
" 2.75023936 -0.72144412 3.23639218 -3.19903853 -1.88166579 2.71162581\n",
" 1.50572447 1.73488857 -3.31903396 -0.91592114 0.39624773 -3.66616389\n",
" 0.30404811 0.76806505 -0.38393967 2.82537772 -2.57297254 -0.453639\n",
" 0.17575632 1.18675636 -1.56167055 2.37181882 0.67623427 -1.42859084\n",
" 3.30837158 -2.71577458 -1.99898851 -0.8599589 -2.42009008 0.06032743\n",
" 2.50372823 -1.64405567 -1.29618054 -0.02321746 -0.04345562 -1.15334852\n",
" -1.47176274 -2.02390692 -2.72345047 1.64998466 1.49230992 1.78375229\n",
" 0.18257063 -2.36551679 -0.20361436 -0.2407543 -0.10010618 5.32592498\n",
" -0.78492753 -2.64041789 -0.91781448 2.05080631 1.05190169 0.09664896\n",
" 1.47225759 3.43878091 0.25598946 0.04974454 -3.09028481 -1.86098526\n",
" 0.56643576 1.52414776 -0.30301434 -2.62712014 0.89458714 -0.50912838\n",
" 0.25541925 -0.69924353 1.29402518 -3.99702922 -1.86558055 2.49334066\n",
" -0.63882965 3.58938087 0.51219002 2.84292453 0.75086298 2.57411441\n",
" 0.91042006 2.14755683 1.97410647 -0.76324306 -1.78418008 0.50501483\n",
" -0.67451904 -1.23886924 -2.89087042 -0.96972347 0.80781765 -0.87848748\n",
" -0.34938844 -0.35079364 -1.55621401 -0.67166277 -0.00615069 0.4997965\n",
" -1.04971013 -4.87105398 -2.04285019 -1.21479864 -1.26439314 -1.0530523\n",
" 1.97675687 0.8328361 2.85982352 3.25064564 0.22047235 0.49928653]\n",
"Train with data prior to: 2012-06-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-3.32155171 -1.91644985 1.64873827 -2.57101087 1.12393399 -1.27599899\n",
" 1.36787749 -0.50023864 -3.79579875 0.37909828 1.66136742 -2.63819046\n",
" 1.58988776 2.33357534 -4.11049228 -1.54890003 -3.42957627 -1.61467242\n",
" 0.631063 0.20796483 -0.54854319 3.63188117 2.65795535 -1.63803508\n",
" -5.31239976 -0.34278223 -1.64308148 -1.61773203 -2.22226543 1.31292671\n",
" 4.22993273 -0.07425307 -1.66105125 5.23248817 -1.81058247 0.14546608\n",
" -2.36522895 -3.12792935 2.17441295 -2.12577178 4.77424335 3.40655919\n",
" -3.65285637 1.1588638 -1.91063993 1.02885042 -2.99411678 -2.10872405\n",
" -1.20189275 -1.78793514 -0.6657667 1.39336769 -0.02251173 -2.67795006\n",
" 0.72062542 -2.37875348 -4.80551157 -3.38237293 3.3045177 -1.02005836\n",
" 1.38553133 -2.52650834 1.91734809 -1.64137441 -2.91737602 -1.72576254\n",
" -2.77220061 0.00866795 3.44223938 2.07265574 -1.9544851 0.7391264\n",
" -4.05011633 -4.61545015 2.45039231 -3.74657235 -2.6976682 -1.26028125\n",
" 0.81562087 1.06421307 -2.35185541 2.27304652 -1.92311872 0.96820114\n",
" -3.48147206 -0.72304177 4.2492859 -2.37525874 4.02336843 -2.86839147\n",
" 3.77720094 -1.36784704 -0.04322346 2.19824591 -0.94651016 -1.44884492\n",
" 2.27061739 0.08879645 -1.76908072 1.28081212 3.62934655 2.24196113\n",
" -1.58437248 -1.07198369 -3.07444563 3.36178288 0.0211792 3.55309398\n",
" 4.48238038 -0.19147472 -3.89477185 -1.15251107 1.50322096 0.82173378\n",
" -2.28767995 3.25355184 -2.41789251 0.15881085 -2.97386979 -1.09971317\n",
" 0.59872666 -3.02150297 1.33372267 -2.96648523 2.32577414 1.58120262\n",
" -1.1381604 -1.37557599 -1.15186351 -0.11669907 6.93887303 2.53645672\n",
" -2.85611854 2.86086422 0.54788663 -3.27066728 -2.49642185 3.12491095\n",
" 1.16059933 -1.25286235 4.02435854 -4.56192019 0.94672052 1.30500125\n",
" -0.18827818 -2.66072244 0.22671808 0.20812975 -2.41399464 0.16696527\n",
" 1.55819991 1.85805661 -1.93172251 -0.87341726 -0.77832959 -2.4491091\n",
" -3.02572267 2.6375055 -0.2109908 1.13853108 0.6878872 0.57084328\n",
" -2.74815259 2.70173216 -1.45190944 -2.24629366 -1.34180263 -0.48580164\n",
" -2.07407932 1.58102181 -1.59797723 -4.20576404 2.1456758 3.07448309\n",
" 1.54002326 -1.87880324 0.25863007 0.06354703 1.44387121 0.49650337\n",
" -1.71705587 1.72532705 -1.25639259 -1.82990847 -0.52930183 3.28865123\n",
" 1.45202949 3.87904908 0.95903456 -5.2874864 1.30636171 0.1713203\n",
" 2.9788732 -0.24537606 -1.20144611 2.75587874 -2.91344438 -0.91356071\n",
" -3.3168606 0.656052 1.07213068 4.88266219 -1.58633897 -4.95750427\n",
" 5.38338779 1.97152254 2.84718135 0.14270053 -2.57652169 0.02529239\n",
" -1.20430733 1.61113017 3.5271165 -1.33750508 -4.77286654 -2.19094813\n",
" 2.43085302 2.18983571 0.96776338 3.11733059 -0.91648569 -0.35552014\n",
" 2.97860231 3.13835255 -3.50978615 -0.24356031 2.29700219 -0.59479534\n",
" -2.83563251 -1.14583753 -0.83433253 -2.40808125 -2.18609459 -2.03333536\n",
" 2.34336262 1.14367325 -3.03994322 -0.85698361 2.79662773 -0.24916368\n",
" -2.79444377 -1.41988038 1.12754236 2.7351155 0.58898597 3.06723469\n",
" -0.67660597 -2.52699471 1.44099949 -1.732472 0.91489153 -1.61333175]\n",
"Train with data prior to: 2012-09-30T00:00:00.000000000 (252 obs)\n",
"(244, 10)\n",
"[-3.11863481 -2.14152072 -1.62505364 -1.31848715 1.24116385 -3.24279151\n",
" -2.34671311 -3.78254107 0.75885574 -0.43769352 -1.12801695 -0.2832084\n",
" -0.03804781 -0.31223047 -1.02779663 -1.58255864 1.93368689 -0.37728965\n",
" 0.02272039 -2.72907601 -1.19148621 0.35002048 2.54072663 -1.2715933\n",
" 2.68300473 0.48638914 2.45942635 1.94693101 2.71024889 0.56147194\n",
" -1.18669695 1.42831044 -0.66160528 0.11337726 -1.91930162 2.90932781\n",
" 5.63043195 -0.53662982 0.18817981 -0.73460025 1.1948817 2.1866827\n",
" -1.44011434 2.55183508 -0.17297152 0.38986292 1.12669964 -2.06927591\n",
" -2.98676388 3.72702775 -1.18311236 -0.24401372 1.65261595 1.28213212\n",
" -0.32168474 0.76915165 4.05261813 -0.95357267 1.82244446 -1.13973352\n",
" 0.78695665 3.70253555 0.8642741 -0.82575537 -3.21389801 2.68854748\n",
" -1.39009226 3.2351808 -1.29901187 0.84381105 -0.45005025 0.39236672\n",
" -3.03331984 -3.36378968 0.88059084 -1.04458818 -1.26599473 1.23390972\n",
" -0.23996773 -0.21770728 -3.76197735 0.9258118 1.39351808 -4.94756291\n",
" 0.85061517 2.45767637 0.26456316 2.67663537 0.17922539 -2.37083728\n",
" 2.40852643 0.51010673 -2.03326347 0.47850688 -0.811406 -0.81118137\n",
" -3.37667587 -2.13862493 -2.02764333 0.1124547 -4.55408863 -3.19152641\n",
" 0.16504413 2.18222756 1.70776821 -3.73093429 -1.40111839 0.82835906\n",
" -2.32804229 -0.98997695 0.93965755 -1.5141715 3.10615825 1.07583961\n",
" 0.18419453 0.56363121 4.34430097 -2.33808133 2.54011028 0.07787488\n",
" -5.53213133 -0.69862958 -2.66372079 1.58392125 1.02281055 -1.48524193\n",
" 0.50342309 0.17996882 3.20723525 0.33245725 0.94696855 3.78569558\n",
" -2.22215863 0.82587743 -1.61628644 -2.43556718 -1.16862164 -1.38251121\n",
" 4.46940027 1.08889859 1.0418765 -1.5993793 1.47117313 0.96743989\n",
" 4.66359579 -1.07910842 0.21011096 3.09841227 0.82483052 -3.97803871\n",
" 1.26385875 -2.57122409 1.50616011 -3.1340636 3.31691887 4.6087851\n",
" -2.70043169 -0.5941126 1.26945225 -0.09717446 2.16806333 4.35900947\n",
" 2.60035764 -0.80176868 -2.07179841 1.2346018 -3.4586638 -0.18225555\n",
" -0.75914589 -0.59647454 -2.33092395 -1.40406813 -3.01711969 2.8217445\n",
" 0.09262644 -0.19176192 -2.4612124 2.42749027 -3.10223904 -3.21888368\n",
" -0.8920591 -1.39287602 2.73485628 -1.26202309 -1.98503113 -1.49129436\n",
" 2.52494341 -1.8180879 0.08333404 -1.77838875 0.89391768 2.92059327\n",
" -1.47501122 0.24705073 4.20558694 -2.88418693 -2.17741084 -1.85347146\n",
" -1.16879029 1.90054826 0.33185041 -0.94020159 2.06823529 1.24555035\n",
" 2.70952405 -1.69617115 0.07234562 0.55166981 0.70522383 -0.9098935\n",
" -0.48389546 0.0945737 2.31888852 -1.61975247 0.20621464 0.58819283\n",
" -0.24241853 2.16438936 2.01078461 -0.92952745 0.56536878 0.27217631\n",
" 0.81921108 1.63579392 -1.44529425 2.99328518 -0.6683935 2.73009647\n",
" 0.11499431 -3.34561267 2.02093533 -1.10217737 -2.05808327 -0.77300459\n",
" 1.27932348 1.20565203 -2.11518129 -1.21100588 -0.60942715 -2.22042911\n",
" 0.7854547 3.22987856 1.17301636 4.32059881]\n",
"Train with data prior to: 2012-12-31T00:00:00.000000000 (244 obs)\n",
"(244, 10)\n",
"[ 7.85454699e-01 3.22987856e+00 1.17301636e+00 4.32059881e+00\n",
" -1.02500197e+00 5.21508017e-01 1.19221194e+00 1.20030493e+00\n",
" -2.78791414e+00 2.01090319e+00 -1.05657897e+00 -3.10132828e+00\n",
" 2.04729623e+00 1.75967000e+00 -1.30533682e+00 -4.39635261e+00\n",
" -3.28545522e+00 1.39588752e+00 1.33790850e+00 3.18339690e+00\n",
" -3.38091538e+00 -7.86128279e-01 -3.89161969e+00 -4.65249134e-01\n",
" -3.21238289e+00 1.94045180e+00 1.90641029e+00 2.46595085e+00\n",
" -1.47077637e+00 -1.60907676e+00 3.40951653e+00 2.50352302e+00\n",
" 1.49886946e+00 2.83780303e-01 -3.61858653e+00 -2.45281341e+00\n",
" 8.94713792e-01 -1.43694319e+00 8.24600165e-01 4.52295452e+00\n",
" 6.54577895e-01 3.20453728e+00 2.65692294e+00 1.28349266e+00\n",
" -1.61412908e+00 6.21278095e-01 2.56752506e+00 7.90084921e-01\n",
" 4.62140551e-01 7.64384925e-01 1.10310578e+00 7.40209769e-01\n",
" 4.14210605e-01 -2.67085952e+00 4.04832174e-01 -2.91353996e+00\n",
" 3.52044067e+00 -2.60636107e+00 -1.28615052e-01 4.11618121e-01\n",
" 2.71444017e+00 1.03878681e+00 3.33395215e+00 2.98682981e+00\n",
" -1.38424548e-01 -1.41025542e+00 4.28464019e-01 -4.09853828e+00\n",
" -3.04253811e+00 -9.73181305e-01 -3.81507924e+00 1.10738396e+00\n",
" 2.02057140e+00 1.03145061e+00 4.04448106e+00 -2.18842370e+00\n",
" 1.60687581e+00 -1.15502168e-01 -3.18707903e+00 2.83745210e+00\n",
" -5.18578201e-01 -3.70825771e+00 -4.14731014e+00 -4.77143516e+00\n",
" 7.14194920e-01 -6.33668615e-01 3.05569318e+00 -1.69065921e+00\n",
" -1.07406020e+00 1.23766889e+00 3.09127668e+00 1.40974261e+00\n",
" -5.16895494e-01 -1.08479425e+00 -1.64364218e+00 3.95414147e-01\n",
" -4.58013828e-01 -2.35458490e+00 3.54596001e+00 5.97714653e-01\n",
" 1.94417145e+00 3.99906013e+00 2.19354811e+00 -2.31047871e+00\n",
" 8.74926856e-02 -2.55164298e+00 2.06053951e+00 -7.45083349e-01\n",
" 1.75452603e+00 7.48827043e-01 -1.71104102e-02 2.49155217e+00\n",
" 3.00554706e+00 2.70619869e-01 -1.20993210e+00 6.84872759e-01\n",
" 1.95793718e+00 -1.89536985e+00 -9.05630567e-01 7.91485732e-01\n",
" -2.41671474e+00 2.06699107e+00 4.39602064e-01 2.88029130e+00\n",
" -1.53494626e+00 -1.65074495e+00 -1.59651719e+00 -5.35204363e-01\n",
" 7.40464367e-01 -2.63730201e+00 2.85145591e+00 -1.22019396e+00\n",
" -1.52128921e+00 -1.22911130e+00 2.81670562e+00 1.55738380e+00\n",
" 1.29163172e+00 1.19266178e-01 -5.87443580e-01 -2.58685417e+00\n",
" 2.35100272e+00 -2.22814193e+00 -1.83915886e+00 3.34097594e+00\n",
" -6.81529855e-01 -5.51669638e+00 -3.57923421e+00 -3.50765845e+00\n",
" -3.91581010e+00 -2.63713682e+00 -8.68527848e-01 4.21602070e+00\n",
" -4.31416170e-01 3.24473812e+00 2.53353290e-01 9.96780594e-01\n",
" -2.62411261e+00 -3.72550011e+00 -2.10670022e+00 -6.94098793e-01\n",
" -1.84149799e+00 -2.35240356e+00 -1.80152633e+00 -2.34861414e+00\n",
" -2.48224913e-01 1.29659668e+00 -2.29507206e+00 -2.91694112e+00\n",
" -6.11458200e-01 3.05759084e-01 -6.76624889e-01 -7.86033506e-01\n",
" -2.25424239e+00 -5.24436196e-02 -1.50141303e+00 -3.55925341e+00\n",
" 2.34963377e+00 6.82655904e-01 -3.10804833e-01 2.56840076e+00\n",
" -3.35649332e-01 -6.50490177e-01 1.66339725e+00 -4.29164309e+00\n",
" -2.01294455e+00 3.32137497e+00 1.11029166e-03 -5.16927599e-01\n",
" -8.47573079e-01 -3.95797771e+00 -1.18191585e+00 1.16513648e+00\n",
" 3.16674608e+00 3.93054849e+00 -2.22998855e+00 -2.46885490e+00\n",
" 3.30399119e+00 2.73351059e+00 -2.34852396e-01 -3.87470161e+00\n",
" -7.37744735e-01 1.76202418e-02 -3.76133074e+00 2.93943193e+00\n",
" -9.50659901e-01 -5.10304830e-01 -2.83188958e+00 8.28385406e-01\n",
" 2.40035491e+00 -8.27951645e-01 -2.07863201e+00 4.30807581e+00\n",
" 1.58377781e-01 -1.44936299e+00 -1.98512598e+00 4.15145742e-01\n",
" -2.42637889e+00 -5.30670180e+00 -4.96647400e-01 3.45474135e+00\n",
" 2.20783763e+00 -5.31818913e-01 -3.27352514e+00 4.76654580e+00\n",
" -2.44730168e+00 5.15912133e-01 3.35472103e-01 -2.76341852e+00\n",
" 5.07523461e-01 -9.37068932e-01 1.17268011e+00 -4.01930268e+00\n",
" 1.29197512e+00 -1.94007407e+00 -2.37030445e+00 -1.04361364e+00\n",
" 2.28657570e-01 -1.55654894e+00 1.91009986e+00 -1.21546689e+00\n",
" -1.58107239e+00 -2.66801616e+00 -2.65366168e+00 1.58347205e+00]\n",
"Train with data prior to: 2013-03-31T00:00:00.000000000 (244 obs)\n",
"(256, 10)\n",
"[-3.10423379e-01 1.49063764e+00 -2.78216771e+00 8.20893219e-01\n",
" 2.42808918e+00 1.83885812e+00 -2.11267084e+00 1.21099964e+00\n",
" 6.55186404e-01 -9.45845283e-01 1.31856061e+00 -2.03769045e+00\n",
" -5.19130401e+00 -6.57753265e-01 -4.30646799e+00 1.77184133e+00\n",
" -1.40609668e+00 -2.81719334e+00 7.57071142e-02 2.66692443e+00\n",
" 3.11793330e+00 -1.29757942e+00 2.06298104e+00 3.16217945e-01\n",
" 1.43116656e+00 -2.54813370e+00 1.73639876e+00 1.64963570e+00\n",
" -1.74632442e+00 2.87711214e+00 -1.10689533e-01 -2.99355405e+00\n",
" 8.08717154e-02 -7.20552049e-01 -1.85461042e-02 -2.29221061e-01\n",
" -4.25729314e+00 -2.76457849e-01 4.90158256e-01 -6.33597266e-01\n",
" 2.40150678e+00 2.36836817e+00 1.77149229e+00 -8.34496733e-01\n",
" -1.60346308e-02 7.85649621e-01 1.79526379e+00 -1.85830697e+00\n",
" 2.78311115e+00 -1.60865674e+00 -4.28399686e-01 -3.09534380e+00\n",
" 7.04959306e-01 -3.62047580e-01 3.15769453e+00 -1.41576332e+00\n",
" 3.98273996e-01 -9.48547240e-01 -3.68312469e-01 -2.86347474e+00\n",
" 4.63880717e+00 1.86755969e+00 -1.21630526e+00 4.37921717e-01\n",
" -2.99527231e+00 2.28948717e+00 -5.93074511e-01 -1.72146396e+00\n",
" 1.64875348e+00 5.27236205e-02 6.11256251e-01 -3.08625327e+00\n",
" 8.47251086e-01 3.75955737e-01 1.38988585e+00 -2.42112641e-01\n",
" -2.20431424e+00 -1.01063387e+00 -1.16257187e-01 1.56083525e+00\n",
" -2.30099070e+00 1.07095348e-01 -5.14027622e-01 1.39148546e+00\n",
" -1.67538907e+00 -2.16759435e+00 -5.00737969e-01 2.93659460e-01\n",
" -2.20971360e+00 -7.61407986e-01 -4.04152958e-01 5.43006545e-01\n",
" -1.76510530e+00 -1.11709174e+00 -2.94243504e+00 -3.24219234e+00\n",
" 1.56240942e+00 1.76540712e+00 -2.04328601e-02 -1.58759427e+00\n",
" 1.79980930e+00 -1.01963740e-01 2.59516234e+00 3.30711263e+00\n",
" 3.33545884e+00 2.32514446e+00 6.60195453e-01 -2.98820047e-02\n",
" 4.94968674e-01 -1.28766437e+00 5.14067405e-01 3.97622933e-01\n",
" -3.49002417e+00 3.22681190e-01 5.27251729e+00 -3.38880905e-01\n",
" -1.38586429e+00 1.37295325e+00 5.38980580e-01 3.39000761e+00\n",
" -1.14696415e-01 4.57028839e+00 -1.55641292e+00 -2.64547711e+00\n",
" -2.46399347e+00 1.22495774e+00 -1.00349208e+00 7.41343831e-01\n",
" 6.76544365e-01 2.91721372e+00 -3.12928288e+00 4.83126376e-01\n",
" -4.51111289e+00 -7.14305302e-01 -1.87270579e+00 3.57408345e+00\n",
" 2.34368995e+00 -3.22214638e+00 -1.19520059e+00 3.97003408e-01\n",
" 8.63058518e-01 1.18852232e+00 3.24964684e+00 -1.70547424e+00\n",
" -5.04654799e-01 -8.55621847e-01 -8.13108504e-01 8.06261489e-01\n",
" 1.92270221e+00 3.79960606e-01 3.11743256e+00 -1.02531804e+00\n",
" -3.72823645e+00 1.67908825e+00 1.10114400e+00 6.98170737e-01\n",
" -1.43010610e+00 3.13117759e+00 6.83627267e-01 1.57613672e+00\n",
" -8.17041736e-01 2.51507469e-01 -5.51135055e-01 5.81775087e-01\n",
" 1.97952867e+00 1.08336909e+00 -2.68774334e-01 -2.85066251e-01\n",
" 2.19297212e+00 6.23009009e-01 3.29403048e+00 -7.87981424e-01\n",
" 1.85969506e+00 -1.66288640e+00 -8.61945431e-01 1.61451730e-01\n",
" 3.95704976e-01 3.44973502e+00 -4.12988247e+00 1.21381509e+00\n",
" -4.36647171e+00 -2.10893462e+00 3.91076899e+00 -1.89196950e+00\n",
" 1.20589407e+00 -1.36809331e+00 8.34547552e-01 -2.08456986e-02\n",
" 1.54871170e+00 8.97880808e-01 3.51635073e+00 4.08995556e-01\n",
" -1.22812462e+00 -1.92004618e+00 -1.84486334e+00 2.17820251e+00\n",
" -3.07520960e+00 -2.57803111e+00 -1.23011578e+00 2.45875943e+00\n",
" 4.45560124e+00 4.99023973e-03 8.05488444e-01 -4.73766304e-01\n",
" -1.58229444e+00 -7.02565003e-01 2.76309752e+00 -8.04877415e-01\n",
" -3.53021732e+00 2.76039127e+00 -1.29925767e+00 7.91040049e-01\n",
" -3.32059068e+00 -3.01771285e+00 8.04035176e-01 -4.71644604e+00\n",
" -1.98959543e+00 -1.23278776e+00 -3.58626708e+00 9.27096278e-01\n",
" 2.25973770e+00 -2.82093920e+00 -1.47597032e+00 3.01844863e+00\n",
" -9.69483695e-01 7.78241310e-01 2.92044864e+00 2.24570244e+00\n",
" -1.88162727e+00 5.79166526e-01 -5.02228482e+00 -2.90883536e+00\n",
" 2.39627239e+00 2.24053612e+00 2.42676372e-01 -3.96476229e-01\n",
" 3.05587456e+00 3.45652615e+00 -3.79867693e+00 4.23301387e+00\n",
" -1.64536072e+00 2.46978988e+00 -6.44398971e-01 -4.75000535e-01\n",
" -2.71562395e-01 -1.69924498e+00 6.44762053e-01 5.47852670e-01\n",
" 2.31380454e+00 -1.76353926e+00 -1.01579341e+00 -3.00114496e+00\n",
" -4.16669729e-02 -2.08437574e+00 -1.44180104e+00 -2.38752732e-01]\n",
"Train with data prior to: 2013-06-30T00:00:00.000000000 (256 obs)\n",
"(252, 10)\n",
"[ 2.45189325e+00 -2.55841098e+00 -6.29027682e-01 1.70181911e+00\n",
" 9.40253016e-01 -1.42735034e+00 -3.51300860e+00 -1.89751449e+00\n",
" -1.43828713e+00 -2.27754936e+00 1.92855412e+00 -1.08397687e+00\n",
" 5.93538352e-01 2.56135165e-01 3.22372855e+00 2.41385122e+00\n",
" 9.20009988e-01 2.33617040e+00 -2.16824799e+00 2.77447270e+00\n",
" -2.08520133e+00 -1.05519409e+00 -1.61030374e+00 5.83631254e+00\n",
" -5.11706081e+00 -4.70240039e-01 -3.44411474e+00 -6.48348186e-01\n",
" 1.62707283e+00 -2.98906179e-01 1.01658478e+00 2.30649435e+00\n",
" -3.43214228e+00 1.48220823e+00 1.15168948e-01 5.89941265e-01\n",
" -2.30172737e+00 3.00627313e+00 -1.22996105e-01 -1.10501463e+00\n",
" 1.55790760e+00 2.22836177e+00 1.59627665e+00 -1.67890981e+00\n",
" 5.23712707e-01 -1.11709599e+00 -4.01527057e+00 2.47026519e-01\n",
" 1.88787428e+00 2.99139369e+00 5.26040268e-01 -1.87087044e+00\n",
" 2.33464713e-02 -1.06809197e+00 -3.68254517e+00 -1.63014695e+00\n",
" 2.07769032e+00 6.74775503e-01 -1.75196976e+00 1.18306942e+00\n",
" 2.84441221e+00 1.77734500e+00 1.87650886e+00 1.47004915e+00\n",
" 3.34492532e+00 1.79764909e+00 2.70526463e+00 -3.93290757e-01\n",
" 3.43322579e-01 -1.97459137e-01 2.78204634e+00 2.20665241e+00\n",
" 2.37746204e+00 1.90760539e+00 -1.37965239e+00 2.97467283e+00\n",
" -1.94263383e+00 5.64210154e-02 -1.98861099e+00 -4.42796781e+00\n",
" -5.18433300e+00 1.48782447e+00 2.41029826e+00 -3.49062630e+00\n",
" 1.84532128e-02 2.86579012e-01 2.06549624e+00 7.15881598e-01\n",
" 1.90272337e+00 2.48950320e+00 -1.68286339e+00 -1.85882686e+00\n",
" 1.91309386e+00 7.41220241e-02 2.10187012e+00 -3.49173930e+00\n",
" -1.27195225e-01 3.95994239e-01 -3.54993319e+00 -3.01730357e+00\n",
" 2.34210174e+00 5.01484006e-01 -1.65759079e+00 1.56531564e+00\n",
" 2.24569187e+00 1.46717128e-01 -2.98920021e+00 1.29724716e+00\n",
" -1.65097508e+00 3.11831217e+00 -2.27471184e+00 -9.53264711e-01\n",
" 4.24667091e+00 3.41426940e+00 1.56707935e+00 8.12545250e-01\n",
" 1.01196440e+00 -2.12196305e+00 -1.42215284e-02 2.57215029e+00\n",
" -6.82244873e-01 -3.20140785e+00 -8.51122136e-01 -1.86936922e+00\n",
" 1.21779135e-01 7.40953347e-01 9.53310505e-03 -3.11820996e-01\n",
" -4.04799607e+00 -2.64503029e+00 -6.43488278e-01 2.34827227e+00\n",
" -8.21226426e-01 1.03618734e+00 2.05290966e+00 1.85181495e+00\n",
" 2.62045997e+00 -8.18516845e-01 -1.80874177e-01 -1.31957613e+00\n",
" 4.06977303e+00 2.36438814e+00 -2.84479767e-01 -1.14971359e+00\n",
" -1.19750542e+00 -1.99884863e+00 7.05531874e-01 2.04941718e+00\n",
" -2.53202474e+00 -8.27054279e-01 -2.76575330e+00 6.31380060e-01\n",
" -2.46094136e+00 2.10581173e+00 2.09057314e+00 -2.27726460e+00\n",
" -1.16854645e+00 1.01272117e+00 3.44942873e+00 4.61973899e+00\n",
" 8.36639518e-01 3.59738564e-01 4.01372142e+00 -8.50716874e-01\n",
" 3.07962679e-02 -7.58944079e-01 1.39619169e+00 -4.56031888e-01\n",
" -6.22365388e-01 4.38651228e+00 -1.32671476e+00 -5.03407163e-01\n",
" -5.17932254e-01 2.34683485e+00 3.18974602e+00 -1.42547429e-01\n",
" 2.58551097e+00 -1.69573174e+00 2.58700167e+00 -2.56677114e+00\n",
" -4.39446609e+00 -4.01607034e+00 3.50416657e+00 2.43847071e+00\n",
" -7.14480186e-02 -7.91243807e-01 -7.08857921e-02 -1.26841646e+00\n",
" 1.55228954e+00 -1.21395241e-01 -1.18505934e+00 9.28667000e-01\n",
" 1.62469442e+00 6.22870543e-01 8.57231040e-01 7.12169152e-01\n",
" -5.42895565e-01 -3.42108970e-01 -1.34880059e+00 1.81935124e+00\n",
" 1.76905997e+00 1.39847378e+00 -1.64705287e-01 -2.40262232e+00\n",
" 1.19636980e+00 -2.27816570e+00 -1.86898846e+00 1.54415328e+00\n",
" 4.05733050e-01 -1.15487900e+00 -1.70674395e+00 5.91854197e-01\n",
" -2.96032214e+00 -1.02557217e+00 2.50467413e+00 2.23674210e+00\n",
" 1.36462441e-04 1.21245150e+00 1.44286857e+00 -1.40857727e+00\n",
" 2.02964846e+00 2.80787318e-01 -2.67426353e+00 -4.02534501e+00\n",
" 1.93818613e+00 1.45263975e+00 -6.43888079e-01 -5.71060492e-01\n",
" -2.59487852e+00 -2.27070699e+00 4.52798221e-01 -1.93807239e+00\n",
" 2.54666903e+00 5.00091572e+00 -4.10682935e+00 -1.77775184e-01\n",
" 2.40786927e+00 -4.34960788e+00 -8.93875239e-01 3.99905579e+00\n",
" 1.20617370e+00 -2.03223939e+00 -2.26948322e+00 -6.81209012e-01\n",
" -1.44342061e+00 -4.29821160e-01 3.44401615e+00 8.74383703e-01\n",
" 2.48794350e-02 7.06499651e-01 4.54337477e-01 1.02124915e+00]\n",
"Train with data prior to: 2013-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-0.23276187 -0.36117792 -5.36980562 2.75609471 1.9708718 -2.10099263\n",
" 1.13295744 2.78030762 -1.80083 -2.54362271 -0.10502928 -0.40471074\n",
" -1.06924708 -1.8565876 0.39080726 2.84345426 0.56089609 2.65780109\n",
" -3.53151442 0.82287113 -2.57272217 -0.41700326 -0.17819195 1.62463801\n",
" 0.27006392 0.53159117 -2.0214959 -2.32178792 1.05520556 3.22282818\n",
" -1.49259561 3.27263286 1.44635084 2.41972231 0.71835604 1.79476505\n",
" -0.06140526 0.92690662 2.883293 -2.01369624 -4.06935402 1.05477961\n",
" 1.82484981 -0.49036087 -3.58207879 -1.77188925 -1.28867582 1.30482162\n",
" 0.38812758 -0.70421083 -3.60730632 -3.31876381 -3.18229818 2.25295872\n",
" -3.22237932 4.06308671 0.62942712 -0.69708416 -5.48177568 -2.16903696\n",
" 0.14264803 0.68485394 -0.06053794 3.75617923 -3.26124543 -1.11584297\n",
" -2.40461291 1.86248323 -3.51855519 0.30551811 -2.78304054 -1.12813105\n",
" 1.99599421 -0.42713234 -1.86508533 0.97814687 -3.63234032 -4.53610589\n",
" 4.62643768 0.39686093 -2.16892485 1.97344293 1.25201496 1.42208377\n",
" -0.96703736 -1.07378006 -0.29558432 1.90708638 2.23195653 1.27112367\n",
" -2.72008323 -1.60319433 3.2382675 -0.8203882 -4.96571343 0.01703499\n",
" -0.83306715 2.44083648 0.25081387 -4.96102945 1.6001987 -0.93885664\n",
" -1.38674475 -0.1824514 0.38055157 -2.58441687 -1.59413828 -2.2087351\n",
" -0.39507019 -0.22232445 1.87099738 1.65629201 2.62753541 -1.43401215\n",
" -1.35332707 1.694398 -4.68879559 -1.47726398 0.80459957 0.40975197\n",
" -1.14265074 -1.59779049 1.58105635 -2.31931543 1.67366796 -1.0414084\n",
" 0.14065786 -0.46557209 -3.32963008 0.10533205 -3.1001652 -2.55371403\n",
" 1.94578004 -4.19610655 -0.02754947 -0.98597901 -0.62110246 -1.61208337\n",
" -0.37318178 1.28051552 -3.9230124 3.17953937 -0.24410186 1.58089723\n",
" -3.5528884 -4.24587712 0.23269714 4.13275603 1.00176019 0.84636412\n",
" 2.19462448 -2.19852303 -0.62978318 -2.4791235 2.95035683 -0.61247655\n",
" -1.58409509 1.44885163 -1.18917926 2.5211178 1.06814537 -3.32354236\n",
" -1.06270537 1.74069872 -0.4737863 -2.81858455 0.62950433 -3.21734415\n",
" -2.74753148 -1.34420718 2.72498094 -3.08509494 3.83775114 -0.33154039\n",
" -0.81631013 -3.87020483 -0.401817 0.56694604 4.13624429 -3.36417906\n",
" 1.52475877 2.21503718 1.19633976 2.00363944 3.28619136 -1.26959822\n",
" -2.45014613 0.12336812 -1.68681897 1.53160004 -3.65331532 1.99068806\n",
" 0.68477324 -3.36554183 -0.28408067 1.43928822 -1.35466556 -1.294893\n",
" -2.58629455 0.13836937 -6.70457477 -1.93806001 -3.06752211 2.13313152\n",
" 2.55624589 2.27284502 0.70283302 -0.40064469 -0.68420545 -3.5706186\n",
" -1.53271719 -1.63370948 1.80446402 -2.96838178 2.98563415 -2.80104328\n",
" 3.14606938 0.29947391 -2.01772033 4.969802 -2.12115541 -1.22998736\n",
" 2.32674562 2.10915336 3.55852618 -2.27676879 1.50310093 2.95640699\n",
" -1.01890041 -1.31012218 -2.31992652 2.25065763 -0.14157363 1.67927687\n",
" 1.57097484 2.20379597 -0.36740365 3.95161542 -0.57894811 2.98113047\n",
" -2.5567144 -1.09545996 -2.48810704 0.59789363 2.60796653 0.37149851\n",
" 1.24033996 0.4770059 2.65028645 1.04073609 0.85678255 1.54190749]\n",
"Train with data prior to: 2013-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 2.65028645 1.04073609 0.85678255 1.54190749 -1.42534806 -2.86169966\n",
" -0.26561737 0.74317489 -1.1279091 -2.80529393 2.58291615 3.44828402\n",
" -2.56904156 0.81608015 -0.04079967 0.93269092 2.32876527 -0.165239\n",
" 1.53441021 -0.93496543 4.16944149 1.5830515 1.83388223 1.57018722\n",
" 0.88523877 -1.23962148 1.85077387 -1.77564038 0.43795445 2.80593145\n",
" -2.49241211 2.31322944 0.91915367 0.53757335 3.07039133 0.33751617\n",
" -0.23590013 1.98462078 -0.0829091 1.52202514 -0.65920082 -1.34124447\n",
" -1.72670967 -2.56603181 0.63106373 -1.42668261 5.25069203 0.5551988\n",
" -1.58033073 -0.29443284 -2.94634835 -0.07814191 -2.0029792 -0.52563959\n",
" -2.571035 -1.47849903 -2.89713577 4.37286949 -1.34122813 -0.46617116\n",
" 1.65938988 1.08803054 -0.64997821 -1.3022897 -0.42140668 -3.54107877\n",
" 0.34455796 1.50115324 -2.07569153 0.70520713 1.19600738 1.32744789\n",
" 0.77786415 3.61384911 2.35641025 1.47196521 -0.96796779 2.98276371\n",
" 1.40020291 1.37298953 1.30934852 1.2582418 -1.40304499 -0.77822109\n",
" 2.23608829 2.06665179 1.72391592 -1.21239636 -3.93661607 -3.13420559\n",
" -0.57738395 0.73885786 0.06395479 3.63752379 -0.11010271 0.37402693\n",
" -2.15941332 0.14131538 -4.88856363 -3.40046625 -1.95220538 0.32664598\n",
" -1.90957969 1.17459168 -1.95675413 0.03548865 -0.4148194 -2.35053486\n",
" -2.77707899 2.99490842 0.4545309 0.73855857 3.20839065 0.53234561\n",
" -0.87808356 -0.25632595 2.15626876 3.73664109 2.47825151 -2.45602636\n",
" -1.11207421 0.98481015 1.25736213 1.32917155 1.65078804 3.21404955\n",
" -0.49050948 1.89310665 -0.3246943 -3.1734762 -0.0182526 0.38899903\n",
" -0.81722385 0.18603577 1.54524808 1.33802024 -0.34240474 2.18028961\n",
" 0.52635253 -2.66378006 -0.48065113 -2.564291 1.22962042 0.12745466\n",
" 3.06425636 2.00682621 3.0475846 -0.20615328 -2.02244341 1.01418346\n",
" -2.48828647 2.18183534 -2.4760881 -3.9854922 1.5762797 1.75385185\n",
" 3.79730337 1.21895888 -3.02435193 0.38135205 -3.78085481 -1.24258035\n",
" -0.37795878 -2.24381818 2.3302428 2.04978826 1.6791978 -1.41384567\n",
" -4.22763519 -2.0600381 1.44894766 4.9326893 -2.30031637 1.92560575\n",
" -2.37684814 -3.4105704 -1.31232077 -0.29920635 0.71914399 -1.34760158\n",
" -0.81431624 0.95148066 -4.13822954 -4.16443768 5.20620304 1.45920738\n",
" -2.41994096 -0.25125763 0.14757044 -0.49436383 1.82477698 1.2761733\n",
" 1.87660534 3.56836122 -1.27377442 0.08526019 -0.9503908 -1.22997233\n",
" 0.09887023 3.00202594 0.06881862 3.00343446 2.23284583 0.13051183\n",
" 0.64453202 -1.79515684 1.58343532 0.97040477 2.28298514 -2.52979383\n",
" -3.53323356 -0.71891423 -3.22955976 -1.36797254 2.20796192 -1.21649252\n",
" -1.69440962 -2.7778675 -0.91491596 -1.37125523 1.61219508 2.76291139\n",
" 0.60618411 -0.6931215 0.58531645 -0.63109615 1.05289422 0.81574459\n",
" -2.5533921 1.50419412 0.09666538 0.5330089 -1.14459152 -1.87463189\n",
" 3.3256948 -3.79039425 0.91199089 2.03764336 3.51081332 -2.28837413\n",
" 1.20646337 -3.43926868 1.43403851 -0.52910205 0.08069126 1.04166344\n",
" 0.52599245 3.74901573]\n",
"Train with data prior to: 2014-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[ 1.03646002 -1.53655754 1.54267274 -6.00473547 -1.29690507 4.77954613\n",
" 0.6000666 -3.98607036 -1.60305354 -0.47044061 -2.38736785 -0.4200242\n",
" 1.16966085 3.21569739 -2.57519453 4.29499353 -0.84637049 -3.9537566\n",
" 1.82283396 1.05388049 0.97574329 -2.54136113 3.44842115 -3.595173\n",
" 0.67364204 0.40759601 1.22016445 1.99814949 -1.41653211 0.1270679\n",
" 2.08576644 -0.39708042 -3.14815634 3.29287267 1.02643385 3.94453363\n",
" 2.81559176 0.45570306 -2.58674783 -2.3310528 2.51098743 -1.44425271\n",
" 1.14667862 -3.89137118 1.56438564 0.55166207 0.09885717 2.48532037\n",
" -3.82001635 1.95262688 0.43791651 -2.09050485 -5.08471523 -1.48556211\n",
" 3.01246364 -0.70048413 0.37884014 1.51337168 -4.295909 -1.29835394\n",
" 0.84774804 2.2289699 4.18938723 0.9902567 -4.33753632 0.91058116\n",
" -1.41782857 1.41083896 -0.39687009 0.15578678 0.36169215 -3.55075646\n",
" 0.20729292 3.73848422 -0.38577676 -0.44756572 -0.27478714 3.18630426\n",
" -1.71869337 -0.98051334 0.99807047 3.53584242 -0.91010258 -0.5928833\n",
" 3.45930925 -1.82960665 2.83920838 4.26439017 -3.16995979 -0.19883823\n",
" -3.93203894 -2.15100068 2.21603903 -2.60343738 2.07505733 -1.0347439\n",
" -1.75827257 1.6243541 1.34025733 -1.62262246 -0.9892158 -0.24703729\n",
" -0.5140495 -1.69567483 -1.8668532 -1.76153831 1.36031731 -0.42130849\n",
" 1.9115333 -3.13525644 -2.00597897 1.94522356 0.21829688 1.00205425\n",
" -3.09339224 -2.70035831 -1.54480151 -1.81362485 2.30279917 -3.58965884\n",
" 4.34666902 -2.81975381 -0.86138659 0.14578375 -0.83972848 2.08454621\n",
" -3.42976235 4.22512964 1.41728657 -0.96933453 2.11926178 -3.1819513\n",
" -2.9092509 0.34949384 -3.3704901 0.26545785 -5.93008329 0.24061035\n",
" -0.0573682 2.77638391 3.72262336 1.32696053 -1.68228729 0.25093991\n",
" 1.09362788 -2.30862109 -3.04620068 -2.11544591 2.5761235 1.2813221\n",
" 2.51614866 4.55393033 -4.35203758 2.94765379 1.83291652 -3.38918667\n",
" -3.61000705 -2.13248406 1.01101833 0.49146983 1.32693908 -2.25650664\n",
" -1.57923073 -2.45077045 1.5767886 0.89452184 2.48179022 2.12713167\n",
" 2.45007759 1.55004307 1.15095396 -0.19727208 1.21138781 0.87493311\n",
" -0.85332028 -0.35866205 0.86227067 1.39473161 3.56724324 -2.05363769\n",
" 2.18797244 -2.07247927 -2.88435832 -1.20099324 -2.66783377 -1.69087035\n",
" -0.28804658 -0.26576245 -1.59310571 -2.04640081 2.32648586 0.71644052\n",
" 1.80404666 -0.14155976 -1.98865618 -3.65126186 3.8014312 1.01374768\n",
" -1.98411958 -0.50828312 1.88014082 1.18405177 -2.29190135 -2.27011581\n",
" -1.00875737 1.00556783 -1.62254029 -2.1308679 3.15673774 0.5457167\n",
" -0.89730411 2.16516504 -0.50484505 0.03825157 0.3322463 -4.64809533\n",
" 0.78521673 -4.12694799 -0.88682424 0.86646491 1.54167533 -0.21440364\n",
" 1.55559162 -5.09212443 -3.97604325 -3.08910989 2.54878051 4.36681652\n",
" -3.11765374 1.09428786 -0.84933044 -2.12689678 2.16433183 2.00784482\n",
" 2.28228378 2.36684538 -0.76208509 2.00784674 -1.39833222 -3.42560788\n",
" -0.68738398 1.90655862 3.77123186 -4.35282179 0.5513459 -0.91961392\n",
" -0.2536501 -0.73991772 -1.49180506 0.03938578 -5.78687296 -0.09063791]\n",
"Train with data prior to: 2014-06-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-0.06732493 -2.42156447 4.45845787 -2.3664467 2.24197279 0.45978218\n",
" 0.99517106 1.12147866 -0.09429951 -3.7126647 1.71035146 2.7417449\n",
" 3.39643399 -2.42440595 2.01601515 -2.83962949 3.30443211 0.08939891\n",
" -2.76980912 1.01444706 -3.89565135 0.6296448 1.72211869 -3.15689176\n",
" 0.4721853 1.11841182 4.44678163 0.74670874 -1.55054056 -1.90180526\n",
" -0.07186359 1.5863162 2.93016506 2.14414025 -0.64567031 -0.98018915\n",
" 1.08029671 -2.78372989 -0.94024971 1.62602773 1.32929399 -0.04811665\n",
" -1.5614805 -2.10191821 -0.97957004 2.49927328 1.50022951 2.52276667\n",
" -0.11001579 2.00354199 0.8004744 -3.40770333 -0.6792533 0.31672797\n",
" 1.44636329 -7.0690489 -0.48120594 2.23066797 1.06406422 0.41099599\n",
" 0.9779976 0.86722806 -0.0493476 0.03496055 2.58292974 1.93439963\n",
" -2.74541438 1.04835579 3.53634587 -0.54333898 -1.33870962 1.70525773\n",
" 5.1669868 -1.8687382 -1.12628281 -1.76598944 -3.28859591 1.77729437\n",
" -0.12448497 3.53646414 -1.83641336 -1.95494758 -0.72347067 0.45631935\n",
" -1.70522729 1.75835672 -1.58777077 -0.33665161 -2.18109578 -3.44387139\n",
" 1.17786513 -2.70973151 2.14539158 0.22813619 2.88440984 5.22776702\n",
" 0.863083 0.89222746 1.2890128 2.33863498 -0.25979817 0.94720715\n",
" 2.69088113 -4.05352468 -2.58924626 -1.75713105 2.84825597 -1.24858562\n",
" -1.78074686 1.61796692 0.30040645 3.74814677 2.081124 -3.75585243\n",
" 1.35374282 -2.15446426 0.63288807 1.58602148 2.31634325 1.10775238\n",
" 2.84886684 -2.02676073 -0.56551043 -0.22953214 -3.55001373 1.55822518\n",
" 4.12873306 4.7744299 3.29150483 0.23886126 -1.30641817 1.52670932\n",
" -3.76049302 -3.19041306 -0.96759931 2.66508947 -1.68961193 4.13422871\n",
" -0.14394639 -0.80376402 0.75539908 0.02575042 0.3549344 3.11847052\n",
" -1.74313596 -2.23285463 -1.57138058 2.34405995 3.31324059 0.0082621\n",
" 1.04564693 2.45473211 2.79070773 1.857645 1.89286635 -3.59727105\n",
" 1.76971861 -3.12776528 -1.54845645 -1.22510218 1.946806 3.09814963\n",
" 3.7119284 -1.69802708 -0.24407832 -1.16210316 3.41102477 2.40852669\n",
" 0.63402991 -4.75206776 1.01473732 -1.16633473 -1.54716323 0.93424819\n",
" 0.61900261 -2.22956169 4.486795 -1.76263293 -2.00896455 1.85702367\n",
" 2.99754599 0.8166375 -1.57091682 -1.43569125 -3.61820417 1.26783804\n",
" 1.01012525 3.17420059 0.52542738 0.93490919 5.02845316 0.91436677\n",
" -2.63204624 -0.14358048 -2.54847284 3.0291274 1.80726763 2.9061842\n",
" -0.89979272 -0.23040534 0.50119028 -3.48772226 -2.15583348 0.14957176\n",
" -0.17750826 -2.16383543 1.65045239 0.49588198 -3.35664353 2.45371334\n",
" 1.06454274 -0.51064145 5.49399958 2.09784028 1.1252661 -1.41676367\n",
" -1.82909416 -0.51251085 -0.21546225 0.58698432 -2.21375138 -0.8452155\n",
" 3.38179868 -2.53596149 -1.52630549 0.08108649 -2.48624929 -1.74804549\n",
" 0.26468283 -1.34797397 1.47136263 -1.61918666 -2.81718091 -3.69023628\n",
" -1.52134549 -0.18452803 -0.20304335 1.21658783 -2.27382406 0.6664214\n",
" 2.84627866 -0.88486564 -0.15738256 -1.99389059 3.78515142 1.18221231\n",
" -2.43862456 1.81024234 0.98121307 -2.91176105 -0.40746942 -1.58038935]\n",
"Train with data prior to: 2014-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[ 2.65203886 0.55385466 -3.76376576 -0.99274737 2.10967047 -2.90859194\n",
" -0.77053498 -1.44768079 -2.67429051 2.65113489 -1.70889339 -3.71899766\n",
" -2.14749466 1.39842141 3.03655566 -6.62659428 3.57676158 2.47907821\n",
" 0.942963 -2.96346135 0.38322411 2.82299201 0.9800127 -2.03100157\n",
" 4.44775314 -1.74759085 1.24064353 1.56269079 1.82845903 0.98357339\n",
" -5.26143794 -2.78416288 -0.80476193 1.15621457 2.49354775 2.18542478\n",
" -1.87537762 1.83026636 0.92741731 -1.64832897 1.77835794 3.29965296\n",
" -1.84016158 2.0534422 -0.52909562 0.3797715 -2.49988341 1.76812878\n",
" -2.52047803 6.30775278 -2.05386902 1.29349314 0.80463677 -4.21058024\n",
" -1.24171784 0.10306839 4.24273908 -0.11254952 -0.81339409 3.91372334\n",
" 0.54764542 -1.32462238 2.0122385 1.95800296 -0.66036885 2.31682103\n",
" -2.20239992 -1.90213391 4.58736342 -2.87751071 1.22088855 2.72526514\n",
" 1.07148655 0.67251585 -0.21960969 1.27771951 -2.71121951 -3.0998317\n",
" 0.39104781 -3.80755883 -1.85820052 1.50532991 -0.26585116 0.73752952\n",
" 1.53883279 2.11450755 0.57494943 -2.82291005 -0.26273878 0.15928015\n",
" -0.96517857 3.803728 0.37129139 -0.43607271 -0.39745774 3.83979966\n",
" -2.81584773 0.90047007 3.82339823 -2.07159109 -2.52060705 4.40968988\n",
" 2.68106978 -0.0095477 -1.93664713 -0.59678553 -0.76465288 -2.4198182\n",
" 2.22117711 1.41648382 4.50041934 3.65585766 1.95753506 3.66770008\n",
" 2.29833975 -1.73239553 -4.99582167 -1.1129021 1.71474567 1.18695523\n",
" 3.72648007 -0.53272364 2.40117244 -3.40641376 1.31641894 5.05144236\n",
" 1.07711926 -2.77925256 0.71617042 -2.9729882 -3.19237286 2.48472178\n",
" -0.66830932 -2.0385583 0.5628358 -2.12256618 -0.48839877 4.81359282\n",
" -2.94036711 -2.45029333 1.11349502 2.96738612 -2.21737177 -2.60252051\n",
" 0.97068793 -4.00399524 0.15057887 3.06218042 -0.01723226 1.96751404\n",
" 3.37423594 -0.45848737 2.64066668 2.8463112 0.5764239 2.92243072\n",
" 0.99616478 2.52567377 -1.55390749 2.5564175 0.82181966 -1.4145481\n",
" 0.44468074 -1.17996973 1.46803912 -4.01279647 1.80148652 4.9248324\n",
" 2.19568203 -0.76826308 1.20205484 -1.3905005 1.02508146 3.26077088\n",
" 1.41433762 1.1002823 0.32594645 -2.08323206 -1.19874281 -0.02927776\n",
" -0.28247372 -0.35230721 1.89042756 -1.79224808 1.54758423 -3.86548119\n",
" 0.68499341 1.04372725 -3.66280568 0.01985586 -2.12672826 2.75522226\n",
" -2.16457392 -2.15515363 -0.34049868 4.05964603 -0.81638172 2.20196818\n",
" -1.07161416 -2.58215976 3.08037001 -1.2368638 -0.81338275 3.52193887\n",
" -0.64394483 -0.91211256 -0.75006228 -2.51191716 1.47015616 -0.30599754\n",
" 1.80081191 0.83525942 2.31218559 -1.99018523 1.53608368 -4.30644532\n",
" -2.50323183 -0.783993 1.82921421 1.15656043 2.63332071 -0.3462422\n",
" -0.3607582 1.12769293 0.34717123 3.99690538 -2.41300123 -2.0195778\n",
" 2.10528571 -0.69715192 0.06416363 -1.64041638 2.56923953 -0.85804875\n",
" -4.03053514 1.50822337 -0.0201147 -4.70809578 1.00262947 2.24762003\n",
" 1.07074201 0.55219513 1.64069672 -5.05956505 1.2697474 -4.88881547\n",
" -1.15718808 4.29894073 1.93718691 0.63295475 3.79152413 2.12079076]\n",
"Train with data prior to: 2014-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 1.93718691 0.63295475 3.79152413 2.12079076 -1.91365252 -0.09003302\n",
" 5.5625399 -2.17802567 3.71252414 0.89364567 2.5275463 -0.95567406\n",
" -0.86885179 2.03316468 0.18795943 -0.85027116 0.50520848 -0.23090168\n",
" -0.40272398 1.03464592 2.03887317 -2.34880584 1.31246075 4.46225662\n",
" 2.60775884 -0.13752292 1.62956053 0.00574071 1.66247818 2.07593788\n",
" 2.42675581 -2.38219843 -1.06489727 3.46756133 -4.29956577 1.50927807\n",
" -3.76544858 -0.39441557 0.13974614 -1.94278464 2.56008889 0.87727246\n",
" -0.1456099 0.84694035 -1.55644125 -1.23645962 -3.48992271 -0.14074345\n",
" -2.30217429 -0.38892983 1.75843416 1.86513156 -3.36091117 0.08091657\n",
" -1.88125572 3.71490221 0.72521894 1.26300504 -2.65742063 1.98773173\n",
" 3.61833435 4.0167739 4.01816512 4.64754378 2.3955484 -0.66687725\n",
" 2.5357405 -3.6071934 -1.72948439 0.44331313 1.51459279 -1.2996886\n",
" -2.00239818 1.47471251 1.48025607 -1.26174303 3.13637438 -2.42312973\n",
" 1.73673279 0.82160488 -1.70886895 1.40768801 0.94315402 -2.18012625\n",
" 2.00989237 -2.11840166 1.98960936 -3.86793688 -0.45618679 -1.5919391\n",
" 2.36846382 -0.83131795 1.14691418 0.16463864 -3.71358287 2.70533798\n",
" 0.75507607 2.52362354 -1.78090235 -0.77019887 1.90237146 3.06448111\n",
" 1.33185501 -0.30989501 0.08639097 1.27389169 -1.99817669 -1.69261754\n",
" -2.19241624 -2.96989169 1.84451637 -1.77658196 -1.17414455 1.36155142\n",
" 2.23447816 -2.63221506 3.30530944 4.21523455 2.00012753 1.08014694\n",
" -2.0960114 1.5223659 -0.84763625 -1.65489538 3.12875706 1.45875902\n",
" -0.91111938 0.71921031 -1.67599103 -3.64850816 2.51910855 1.69197437\n",
" 0.33101241 -3.5590215 -0.90683336 0.1001865 1.45086545 -1.14587094\n",
" -0.43940489 -0.35577941 -3.70814646 -1.86929391 -1.13467511 -3.47933762\n",
" 0.77114002 -1.16540018 0.28079012 -2.40275354 2.43000396 2.8446714\n",
" 0.08616818 -0.72831315 -0.35028377 -0.18942333 -1.44258776 -1.01581164\n",
" -0.06274526 -1.30789267 -1.5221442 -2.11409864 -0.9467429 1.23125825\n",
" 2.07076851 1.80496464 -1.15927867 0.60575072 1.81658888 3.8200318\n",
" -1.92011955 2.31484919 0.59742429 -0.77742489 -1.15518206 3.28042478\n",
" -1.74767003 -2.80641223 2.20233446 -1.79173961 -0.7096727 -0.61565608\n",
" -4.30219309 2.47090162 4.41487306 -1.12043599 3.87658482 -0.93416408\n",
" -5.25557079 -3.08496786 -0.21935701 -1.92746739 0.87372143 -2.67542892\n",
" -0.46518222 0.4982337 -2.43704083 1.27011478 4.8964477 2.25421516\n",
" 2.66708448 2.39829281 2.15152503 1.4464579 1.15381189 2.16791449\n",
" 3.15044064 -1.35095624 -1.19047385 -3.20868114 0.23255731 2.06127588\n",
" -2.29527261 -0.97575131 0.83193705 3.36420284 -0.93907643 -1.75633202\n",
" 0.06107416 3.57449915 -0.13676719 4.94764048 0.38842133 -1.34493069\n",
" 2.36985023 2.01972667 -2.48443102 3.4900007 1.76135301 2.43856534\n",
" -2.62379765 2.76339886 0.3155577 -1.02568834 -0.24411138 3.91260268\n",
" -1.41003015 3.84094148 -3.13013077 2.58125261 -2.82867039 -3.08101604\n",
" -0.66277314 0.1657446 0.74506132 0.79444344 -1.8538991 1.06815407\n",
" 1.82752238 1.84109776]\n",
"Train with data prior to: 2015-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[-0.58634023 0.39864461 1.09816148 2.11868354 0.16906456 2.58316648\n",
" 1.60009298 -0.46358484 2.78106493 -1.02845636 -1.63423715 -2.81104568\n",
" 0.35603138 -2.52474778 -2.43991051 1.0567411 -3.14975567 -1.91395191\n",
" -1.98392621 2.27202285 1.20217593 -1.2414418 1.61249868 2.25165935\n",
" 1.01650971 1.77547193 -2.38646046 1.27270837 2.86900222 2.5378714\n",
" -2.18926275 2.32584298 -3.59351304 -3.02112116 1.04115204 0.75008384\n",
" 0.80210469 0.55188934 1.24451318 -2.55336965 3.57327529 -3.37069975\n",
" 1.96199046 -2.48657592 -0.0917332 5.04943201 2.22664178 2.39127899\n",
" 2.62028642 2.87119384 -0.34388393 0.80304518 -0.90774275 -0.35048873\n",
" -2.79258464 2.9034264 -0.50258112 0.62128909 0.75876985 -1.89383397\n",
" 0.95304078 -2.15257319 1.74811475 1.38540798 -2.92815698 -1.45879833\n",
" 0.32945403 0.90518408 -1.47613879 2.29556651 -2.81163638 -0.22183257\n",
" -1.59628668 2.47100681 1.13377426 -3.31522552 1.04830713 1.34422198\n",
" 0.12179665 -3.10320636 0.46723944 -3.44225859 -2.81892973 -1.15528504\n",
" 2.17758234 1.81256975 1.21622051 0.91103957 0.14476327 -2.94568965\n",
" 3.25728311 1.48967199 2.94875982 -1.40062107 -1.27666772 1.69846216\n",
" -0.29029832 0.61811491 3.0833044 -0.88132141 -0.14003058 2.29108237\n",
" -1.05153699 -2.07729895 -0.13003883 6.28268931 -2.30840299 -5.03123523\n",
" -0.78562392 -1.34851893 -2.92412173 2.07195755 -1.92058211 2.68422393\n",
" 6.34608139 -1.35457233 -1.39908236 -3.16340946 -0.4669856 -1.76414297\n",
" -3.07670733 0.50492993 1.7575677 -0.9244233 0.61266987 3.40207138\n",
" 2.51159306 -0.21520831 0.92234578 -1.18221656 -1.94507201 -1.62462487\n",
" 1.16882752 -1.24861626 -1.87689928 -1.97196757 -3.88477233 4.20599398\n",
" 1.43754798 -1.57351519 1.84617601 -0.63359796 1.61322042 1.70793252\n",
" 2.37747195 -2.47351714 1.51379854 0.75374844 0.22770197 -1.25385181\n",
" -2.23301116 -1.45638984 -0.88259642 -0.57671923 0.60192565 -0.21475577\n",
" -0.07416112 2.22982205 -2.47073969 -2.31418519 0.63252999 2.24068811\n",
" -0.23982893 1.51287031 0.39558514 2.68446332 -4.20882224 -5.75179527\n",
" 3.07604964 3.00212097 -3.21485136 -1.70378219 -1.11006258 1.24932924\n",
" 0.14010665 -1.02736379 -1.1410761 0.8575784 -0.60723232 5.21825951\n",
" -3.24000452 -1.80930598 1.41150402 1.71511986 3.65507457 -3.09359104\n",
" 0.20275585 -1.29352719 1.93458321 -0.85443866 -0.15248664 -0.58329457\n",
" -2.02627901 1.08318648 1.15242076 -1.82909031 0.54354267 -2.45330161\n",
" 1.41113812 -0.34332903 2.65808572 2.4746767 0.29483105 -1.92486218\n",
" -0.95236388 -3.89059929 -1.4509123 -1.91307825 -0.02574088 -4.13574691\n",
" 1.85539628 -2.27218276 -1.69381116 2.03269948 -1.35079223 -0.18072895\n",
" 0.18834894 -0.11230978 3.54565668 3.67994015 -1.62512622 3.63872962\n",
" 0.42413087 2.00427976 -0.08574049 -4.86177046 2.52618766 1.05319453\n",
" -0.32764244 -0.01337997 -2.24544779 -1.26216348 0.22078278 0.20427243\n",
" 1.92269875 -2.15777895 1.96737861 -0.66084856 3.38389297 0.73745248\n",
" 0.25188024 2.96729174 -0.48398162 1.58303476 1.62131474 1.49582183\n",
" 2.2269708 1.77084932 1.45590687 2.00263311 -1.44961728 2.28969003]\n",
"Train with data prior to: 2015-06-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[ 7.09243374e-01 -5.59490922e-02 1.86911016e+00 1.11975179e+00\n",
" 4.81696913e-01 4.81310649e-01 3.88131940e+00 -1.14034238e+00\n",
" -3.90765422e+00 -8.82057199e-01 2.99362807e+00 1.55007598e+00\n",
" 1.72184717e+00 2.24747077e+00 4.05427662e-01 -1.76315781e+00\n",
" 2.13710682e-01 2.09325979e+00 -1.02283351e-01 -1.52626144e+00\n",
" 1.99222374e-01 1.00885516e+00 5.00623768e+00 -1.61702862e-01\n",
" -1.38194323e+00 4.14632082e-01 -2.71632720e+00 -2.75040437e+00\n",
" -3.87604522e+00 2.63613211e+00 -1.20056973e+00 -2.20797838e-01\n",
" -3.00768146e+00 -3.68819631e-01 2.71151778e+00 2.25508287e+00\n",
" -2.52268709e+00 -1.47407407e+00 1.93034359e+00 1.49163371e+00\n",
" -2.16481944e+00 2.95228450e+00 2.59602139e+00 -4.87884562e-01\n",
" -2.94423688e-02 -3.31628181e+00 -2.52187811e-01 -2.95094303e+00\n",
" 8.31583238e-01 -2.55478759e-01 -1.54505177e+00 -8.47166318e-01\n",
" 2.64441527e+00 -2.40021736e+00 3.58156390e-01 -3.24509226e+00\n",
" -1.37756851e+00 -4.03070524e-01 2.22764945e+00 5.34524991e-01\n",
" 4.36268890e+00 -1.92761974e+00 1.42749912e+00 -1.94209134e+00\n",
" 2.55519480e+00 2.48966694e+00 3.18443135e+00 -2.77525893e+00\n",
" -1.39288581e+00 7.07773628e-01 1.13990113e+00 -3.68328944e-01\n",
" 2.64556675e+00 2.14551099e-01 -3.32682785e+00 -1.71913614e+00\n",
" 4.76366880e-01 2.85843750e-01 -1.21395495e+00 2.61849549e-01\n",
" -6.01952090e-01 -3.80682731e+00 3.76071123e+00 -3.80233535e+00\n",
" -6.32660619e-01 -6.85487334e-01 1.44779161e+00 5.52606211e-01\n",
" -2.22625914e-03 1.26745787e+00 -2.82577378e+00 -3.78747927e-01\n",
" -1.92338502e-01 -8.14506983e-02 -1.40351961e+00 -7.10765765e-01\n",
" 1.81333850e+00 -3.50556524e-01 -1.00188674e+00 5.28831644e+00\n",
" -1.56589244e+00 3.70058742e+00 1.80217706e+00 3.10900001e-01\n",
" 2.77532876e+00 -1.03758014e+00 6.49404558e-01 -4.87581170e+00\n",
" 7.66390284e-01 8.66545623e-01 -5.96644610e-01 -2.25273822e+00\n",
" -9.53678930e-01 -2.12086660e+00 3.50517279e-02 1.60473823e-01\n",
" 4.30993289e+00 -1.23719268e+00 1.19819813e+00 2.03000104e+00\n",
" -9.43568243e-01 -2.50142989e+00 2.46597997e+00 -3.51415081e+00\n",
" 2.21030923e+00 -7.80069890e-01 1.63768732e+00 4.26307733e+00\n",
" -5.95439392e-01 -1.53527513e+00 -4.00016072e+00 -3.92563100e+00\n",
" -2.48171655e-01 1.24975039e+00 -1.80809113e+00 -3.45983617e-01\n",
" -5.55010343e-02 9.04337590e-01 3.32331521e+00 9.23293421e-01\n",
" 2.67129416e-02 -3.59048771e-01 1.40154271e+00 -4.01155137e+00\n",
" 1.75724245e+00 1.70732417e+00 -1.31265484e+00 -3.45082192e+00\n",
" -4.24683034e-01 -3.06916457e+00 1.97258840e+00 1.09334460e+00\n",
" 1.88864713e+00 -1.60722874e+00 -1.73915484e+00 1.76555588e+00\n",
" 1.81187588e+00 7.35718702e-01 7.06048380e-01 -9.37376877e-01\n",
" 2.61555396e+00 -1.73186538e-02 -2.24442079e-01 6.83636672e-01\n",
" 7.80658187e-01 9.46348065e-01 6.74943493e-02 -2.90280929e+00\n",
" -1.05918473e+00 6.51126128e-01 -9.87663715e-01 2.46542281e+00\n",
" 4.52267277e+00 -2.84844039e+00 1.74603620e+00 -5.82567926e-01\n",
" -1.75318081e+00 3.20365717e+00 -5.32551354e-01 -7.65484639e-01\n",
" -4.08535972e-01 -9.11722081e-02 1.12041252e+00 3.30933699e+00\n",
" 3.85219395e+00 4.54188467e+00 -3.56211431e+00 -2.77154919e+00\n",
" 2.33394551e+00 2.21157934e+00 4.71525828e-01 -1.28395954e+00\n",
" -1.19915508e+00 3.71036215e+00 5.28351031e-01 2.41896495e-01\n",
" -6.18868217e-01 1.72172940e+00 -2.72700139e+00 2.72565955e+00\n",
" 6.14198143e-01 -2.73782890e+00 1.44685466e+00 -1.83092908e+00\n",
" -1.62414195e+00 -3.11885822e+00 6.61401535e-01 3.03606210e+00\n",
" -2.56451777e+00 -2.63581817e-01 -1.06428100e+00 -2.90351928e+00\n",
" 7.26945291e-01 -1.69141284e-01 -2.73221277e+00 -1.06881244e+00\n",
" 2.18323854e+00 -2.52034120e+00 -2.40953065e+00 3.35790492e+00\n",
" 3.60782559e-01 4.81247859e-02 -2.65671656e+00 -1.96442580e+00\n",
" 3.22436823e+00 -4.75067635e+00 -9.25642418e-01 3.98712382e-02\n",
" -1.98481679e-01 3.56684278e+00 7.21188625e-02 -2.79188596e+00\n",
" 2.49709816e+00 3.43364384e+00 1.64381871e+00 -1.80342903e+00\n",
" -1.18076513e+00 5.46892226e+00 1.62826350e+00 1.42896919e+00\n",
" -3.87698752e+00 -9.96388955e-01 5.30107782e+00 -1.37688222e+00\n",
" -1.84561813e+00 1.10146923e+00 1.28737266e+00 1.05028227e+00\n",
" -2.90177921e+00 3.90427676e-01 -1.69764719e+00 -2.72313202e+00]\n",
"Train with data prior to: 2015-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-4.57760767e+00 1.00892733e+00 1.55592828e+00 -3.24396312e+00\n",
" 4.84865098e-01 -1.53530054e+00 2.01710413e+00 -1.95532395e+00\n",
" -2.27196325e+00 8.51836268e-01 -5.74768841e-01 -3.90322663e-02\n",
" 2.15531768e+00 3.76288453e+00 6.85876356e-01 -1.97442058e+00\n",
" 1.77970829e+00 -1.10588575e+00 2.90022269e+00 1.69155613e+00\n",
" 2.99406861e+00 -2.07062460e+00 -4.58667368e-01 -1.20088249e+00\n",
" -2.44810062e+00 4.55899500e+00 3.10348569e+00 1.70592737e-01\n",
" -1.26346991e+00 -1.33689264e+00 2.47524351e-01 -3.89449514e+00\n",
" 6.54989905e-01 -1.05058487e-01 3.06148201e+00 -2.95930095e+00\n",
" -1.84930767e+00 -1.77651785e+00 4.49441181e+00 2.55455882e+00\n",
" 1.89981344e+00 -8.62168707e-01 2.93930512e+00 -2.47720341e+00\n",
" 1.08780073e+00 -3.60811415e+00 -6.74345443e-01 -1.77952501e+00\n",
" -1.86147145e-01 -3.07577227e+00 1.82268605e+00 2.45442116e+00\n",
" -1.61012996e+00 -4.48021926e-01 -3.60664373e-02 2.46903289e-01\n",
" 3.74399863e+00 -4.69180278e+00 -2.05833734e+00 7.40602835e-01\n",
" -2.59489257e+00 1.93371726e+00 1.69500600e+00 -3.34631702e+00\n",
" 1.15190945e+00 3.96988551e+00 -1.09008241e+00 -2.10977017e+00\n",
" -2.00683589e+00 2.86827455e+00 3.16660133e+00 3.18421061e+00\n",
" -1.55894571e-01 2.16761470e+00 -2.04736291e+00 5.72078592e-01\n",
" 9.44766016e-01 -1.72518184e+00 -8.32708157e-01 -1.16403949e+00\n",
" -4.04985100e+00 2.73857549e+00 1.51570529e+00 1.77672033e+00\n",
" 1.87164999e+00 -5.12110983e-01 4.96333064e-01 2.62361561e+00\n",
" 9.74496208e-01 -4.63462008e+00 2.83013007e+00 1.72546942e+00\n",
" -2.39484077e+00 -1.44806958e+00 -2.44179259e+00 3.56404720e+00\n",
" 3.76195127e-01 -4.50128274e+00 -1.82063111e+00 -2.64445000e+00\n",
" 1.39188498e+00 -5.22986065e-01 -3.33091068e-01 -1.59008407e-02\n",
" -1.83313160e+00 -2.39654986e+00 7.52281608e-01 2.62169287e+00\n",
" -1.01828941e+00 2.25038159e+00 -4.23144483e+00 1.42958164e+00\n",
" 2.25131646e+00 1.58075685e+00 -4.18725780e-01 9.66372945e-01\n",
" 7.99211332e-01 -5.33018330e+00 -3.32344136e+00 8.12727613e-01\n",
" 3.96114084e+00 -5.85136487e+00 2.69967124e+00 -1.16605398e+00\n",
" -1.16523429e+00 -2.00942433e+00 7.64019594e-01 1.46039161e+00\n",
" 3.16063250e+00 -1.39380266e+00 -5.19483729e-01 -2.67914937e+00\n",
" 1.94630252e+00 1.47821128e+00 -9.88282241e-01 -7.37847479e+00\n",
" 3.91040338e-03 2.55973448e+00 2.54028721e+00 -1.60677075e-01\n",
" 3.99742784e-01 -2.02835677e+00 1.43944470e+00 3.61846994e-01\n",
" -5.13001697e-01 -2.01410015e+00 5.29031710e-01 -2.84988329e+00\n",
" -2.21047349e-01 -5.81417200e-01 -9.29275744e-01 -9.25677426e-01\n",
" -2.57475141e+00 1.40476970e+00 -3.44831160e-01 2.67486582e+00\n",
" -1.05400183e+00 -5.20651545e-01 3.91881094e-01 -1.95757799e+00\n",
" -3.25784152e+00 5.81658921e-01 -2.70563058e+00 6.01146056e-01\n",
" 4.15678990e-01 1.25869145e+00 1.74222085e+00 -2.09462752e+00\n",
" 1.20484842e-01 3.86180374e-01 -2.88836548e+00 -3.37781151e+00\n",
" -2.16731634e-01 2.27790520e+00 -2.35539305e+00 -3.51192838e+00\n",
" 2.42589232e-01 3.82108533e+00 -2.29991454e+00 3.45118366e+00\n",
" 8.61640603e-02 1.59299056e-01 1.09860704e+00 -1.15544489e-01\n",
" -4.92412428e+00 -1.81844014e-01 -1.98850666e+00 -1.53391771e-01\n",
" 3.38722502e+00 1.20692416e+00 2.83789056e+00 4.53532622e+00\n",
" -3.11993826e-01 2.56105868e-01 7.42080725e-01 -1.01225460e+00\n",
" 2.33335039e+00 2.01828374e+00 -2.37033289e-01 3.43476596e+00\n",
" -2.28379114e+00 -6.46214740e-02 6.47477252e-01 2.29568273e+00\n",
" -4.67034904e-01 1.78226439e+00 5.13730632e-01 1.52730144e+00\n",
" -5.54658182e-01 -3.22965523e+00 2.53895585e+00 -1.15173310e+00\n",
" 5.07354326e-01 1.57616544e-01 -3.60215152e+00 2.56066065e+00\n",
" -2.42036589e+00 1.89242430e+00 9.09293187e-02 -1.53883195e+00\n",
" 5.54539646e-01 -1.63838743e-02 8.49951087e-01 1.21505211e+00\n",
" 4.03021082e-01 -1.15214334e+00 3.66109070e-01 1.21625107e-01\n",
" 1.17072818e+00 3.46458223e+00 2.27826808e+00 4.54267207e+00\n",
" 1.28101558e+00 -2.71024075e+00 1.67769834e+00 3.77956828e+00\n",
" 9.89562242e-01 -4.49124658e-02 6.33546164e-01 1.80265928e+00\n",
" 3.66550552e+00 -2.88504014e+00 -2.52580934e+00 -1.76528166e+00\n",
" 1.66407624e-01 -1.28959417e+00 -1.48147587e+00 -4.12632210e+00\n",
" 1.36846395e+00 1.42384552e+00 3.72265422e+00 1.89811972e+00]\n",
"Train with data prior to: 2015-12-31T00:00:00.000000000 (252 obs)\n",
"(244, 10)\n",
"[-0.9978397 2.27602851 -2.81835037 0.66977016 -0.45618031 2.98020234\n",
" 1.33747176 0.04526273 0.84489087 1.86189903 3.37179987 4.09265239\n",
" 5.21795872 -3.40676216 1.77736194 -0.57676594 -3.46188995 -2.87204795\n",
" 0.76393599 0.09683464 -1.38861174 -0.13321427 0.67411365 0.34222592\n",
" 0.33145807 -0.06133362 0.20817884 0.4376827 -2.41223412 -0.59705356\n",
" -4.01796835 -0.70163348 -2.45802569 -1.18766141 -1.11795492 0.92299897\n",
" -2.15105741 -5.36389059 -1.05386437 0.55601399 -2.77386018 0.78824036\n",
" 0.65930549 -1.51733438 1.19184986 0.14248214 1.13247375 0.94384151\n",
" -2.36526833 0.94562489 0.60122113 -2.6014647 1.90837268 0.52053486\n",
" 3.27655006 -1.31536953 2.85723398 -2.86460063 3.09398298 -2.24780611\n",
" 1.7966973 3.52907396 1.32944501 -2.88288708 1.24790851 2.98367146\n",
" 1.64740109 -1.75597403 1.68961762 -0.86007067 1.36956789 -1.28043159\n",
" -2.32180878 3.04153067 2.1378761 1.2610378 4.63672701 -1.65601823\n",
" 0.68806861 -1.51372428 3.21760013 -0.39412384 -0.66323627 1.90145432\n",
" 0.70133387 1.75945409 3.40617503 2.12275779 -2.71262054 -0.78152513\n",
" 2.35502567 1.12388031 -0.26353549 1.01557175 1.34198046 -1.10981888\n",
" -2.56653071 -2.61906669 -0.96046659 -4.42928461 -1.42466679 2.7278386\n",
" -2.97273731 2.12848535 2.46600698 2.3208484 4.03937767 5.04635081\n",
" 1.01586831 -5.35937252 -1.20052308 -1.32450264 -1.03019187 -4.96897986\n",
" -3.55959268 -1.45347888 0.38428867 -1.06701194 1.59141565 5.26717828\n",
" -1.93136961 -4.54846993 -0.28723017 0.60832909 -3.61737728 -4.04849121\n",
" -3.36459084 0.92290609 -2.21239223 2.6153581 3.49920485 4.47341687\n",
" -0.33471591 -2.63884708 -1.32065949 -0.29359132 -1.37901305 2.76760307\n",
" -2.75369309 5.34050877 -0.87913095 0.05807721 -2.30504773 -0.18345683\n",
" 0.75466516 -0.70700869 -0.13908208 1.78033085 -1.07990076 0.92413881\n",
" 2.19112477 1.95186166 -1.43704259 -0.12166703 3.18778368 -0.07882676\n",
" 2.40312245 -3.69707948 2.0572219 -1.82778616 -1.76818964 -3.69928234\n",
" -3.24951037 3.19616389 -1.0821079 -2.04031708 1.83856089 2.50769835\n",
" 1.32862682 0.62706981 -1.19845781 -2.08689167 2.37698544 -0.58421509\n",
" 0.12341355 2.73384113 -4.23134731 2.73597579 -1.718314 3.72475901\n",
" 1.33919869 -0.11668577 0.39067702 0.42251497 -0.60926154 0.99444604\n",
" -0.67105758 -2.84831387 1.11368225 1.88140466 -1.72703733 -2.92407518\n",
" 3.11170659 0.39211243 0.66471167 -1.38680723 1.09380013 2.04638738\n",
" 1.61179316 3.74625377 -0.35009375 2.11786403 -0.60388471 0.62315644\n",
" 1.54572334 -3.24524609 1.663901 0.43269586 -0.75893974 0.25107126\n",
" 4.07481333 -1.67950478 2.58100988 1.51268323 -3.39274806 2.16531611\n",
" -2.51302913 1.34453011 1.84883861 -2.83482923 1.42613351 -2.59987769\n",
" -3.80203199 -3.1809057 -1.98560659 2.16579124 1.45966419 -1.83329411\n",
" 1.1536974 -0.35437275 3.45760765 -0.98554301 -0.44220896 1.48848913\n",
" -0.61693816 -1.08730551 -1.25679331 -1.92075022 0.4247255 -2.68796513\n",
" 0.23543068 2.55677503 -2.02471236 1.84758612]\n",
"Train with data prior to: 2016-03-31T00:00:00.000000000 (244 obs)\n",
"(256, 10)\n",
"[-2.13467740e+00 -1.71758169e+00 1.12859359e-02 3.42860229e-01\n",
" 1.47323902e+00 -1.80900352e+00 -1.19585619e+00 -2.43910342e+00\n",
" 2.92623569e-01 -4.55648363e+00 -1.33245921e+00 -8.48278424e-01\n",
" 3.33129992e+00 3.43746302e-01 -2.35402922e-01 -1.17880758e+00\n",
" 3.53618425e+00 -4.22783646e+00 -1.66936402e+00 2.63358892e+00\n",
" 3.11772762e-01 1.02030869e+00 -2.17420660e+00 2.40759489e+00\n",
" -4.19601876e-01 5.63069682e-01 -8.39801542e-01 3.63278820e+00\n",
" 4.59360454e-01 1.53566441e-01 2.78264608e+00 -1.46935546e+00\n",
" -1.28832865e-02 2.33320635e+00 5.67361265e-01 -2.37362395e+00\n",
" 2.77748640e+00 -3.31828537e+00 -2.45024198e+00 -3.42229573e-01\n",
" -2.51521616e-01 2.72481393e+00 1.20544819e+00 -3.05080846e+00\n",
" 5.11284381e-01 -2.06397761e+00 -3.14586394e+00 -1.89398776e+00\n",
" 5.97756913e-01 -7.63266899e-01 1.45414796e+00 -1.55118039e+00\n",
" 5.42859444e+00 2.08657446e+00 4.73292072e+00 2.00487874e+00\n",
" 3.46014378e+00 3.29265376e+00 -1.85844123e+00 -8.38221184e-01\n",
" 4.69576493e-01 1.73921125e-01 -1.95954433e-02 3.23348507e+00\n",
" 3.02396687e+00 -2.83686739e+00 1.69335884e+00 -1.39249704e-01\n",
" -1.49773592e+00 2.40356361e+00 1.38048923e+00 2.81470130e+00\n",
" -2.61087883e+00 -2.92016087e+00 8.30500045e-01 8.15138368e-01\n",
" -2.25867004e+00 1.85615800e+00 -1.47577350e+00 2.50732044e+00\n",
" -3.83713428e+00 2.08086084e+00 -1.78319096e+00 -1.27624975e-01\n",
" -2.03500753e+00 1.41909986e+00 -1.40825231e+00 -1.27859736e+00\n",
" 7.59933867e-02 3.09160734e+00 3.91383417e-01 -2.73372297e+00\n",
" -7.76079167e-02 9.32222919e-02 2.71122381e+00 4.96958852e-01\n",
" 4.46612662e-01 -3.42296610e-01 3.28693497e-01 -3.43547597e+00\n",
" 1.15456928e+00 1.79320540e+00 3.77929268e+00 -3.24275016e+00\n",
" 3.22979168e+00 3.78654564e+00 2.75850819e-01 5.10389925e-01\n",
" -6.29581981e-01 2.92122077e-01 -4.15841203e-01 2.93161851e+00\n",
" 1.02668859e+00 -1.51446847e+00 8.28603802e-01 1.33491969e+00\n",
" 1.57963758e+00 -3.39559894e+00 1.40681824e+00 1.41497885e-01\n",
" -1.76296271e+00 -3.47416017e+00 1.35696768e+00 -1.45765167e+00\n",
" -2.33098247e+00 -2.92894851e+00 -4.00175324e+00 -7.48530969e-01\n",
" 1.68433184e+00 -2.38653175e+00 -2.53627366e+00 7.54415171e-02\n",
" 3.56042549e-01 -2.23198977e+00 -1.46250238e+00 -1.83847710e-01\n",
" 3.06424498e+00 -2.20628961e+00 -3.84892815e-01 -6.35967169e-01\n",
" 2.60107636e+00 3.33186351e+00 3.14623574e+00 3.73250075e+00\n",
" -2.32686207e+00 7.94972735e-01 2.99110293e+00 -1.55983171e+00\n",
" -6.25712579e-01 8.09322810e-01 2.86492224e+00 4.12030214e+00\n",
" -3.07051916e+00 7.35965773e-01 1.68769039e+00 -2.88873485e+00\n",
" 6.16279906e-02 2.32160403e+00 -1.98683697e+00 6.58943846e-01\n",
" -1.49239739e-01 2.47532303e-01 8.39675397e-01 -3.00285041e+00\n",
" 2.85242380e+00 -1.26587206e+00 -2.10463222e-02 3.70942232e+00\n",
" -6.07753147e-02 -6.27982555e-01 -5.77012952e-01 -1.15120115e+00\n",
" 3.53392770e-01 3.01947167e+00 7.39539214e-01 -1.76981484e+00\n",
" -2.49030370e-01 -3.36769236e+00 -1.56355044e+00 3.94925402e-02\n",
" 3.98793667e+00 -2.20773838e-01 1.81853368e+00 1.86495606e+00\n",
" 3.70488114e+00 6.57440250e-01 2.42060030e+00 3.09649240e+00\n",
" 1.22408039e+00 6.12695965e-01 -2.92098045e+00 2.67788450e+00\n",
" 3.39525723e+00 -4.13161948e+00 -8.59138820e-01 3.17644204e+00\n",
" 2.32387795e+00 1.51381252e+00 -2.59593554e+00 4.61379120e+00\n",
" 1.19178185e+00 3.39345705e+00 1.15408316e+00 1.97977835e+00\n",
" 3.82574135e-01 1.11617533e+00 -2.65870924e-01 2.14627967e+00\n",
" -2.39977359e+00 4.69050892e+00 -2.55615089e+00 2.61842553e+00\n",
" 1.74425869e+00 -1.89789516e+00 2.09695683e+00 1.41190403e+00\n",
" -9.82352835e-01 1.08346117e+00 1.45942976e+00 -5.20779227e-01\n",
" -2.18260308e+00 -7.61926233e-01 -1.91073824e+00 4.20606500e-03\n",
" 4.00963418e+00 1.64493134e+00 5.00704504e+00 -7.18111808e-01\n",
" 1.71919997e+00 -3.64346181e+00 1.86410082e+00 3.91065553e+00\n",
" -1.88432423e+00 2.07684321e+00 -2.62033854e+00 -2.61807185e+00\n",
" -6.71087255e-01 -2.89000274e+00 -1.54303446e+00 9.58465144e-01\n",
" -2.52209842e+00 -4.50129920e+00 3.98607435e+00 -2.59588346e+00\n",
" -1.34365671e-01 -1.47037094e+00 -2.67486616e+00 7.84615110e-01\n",
" -4.20562942e-01 -1.21669923e+00 7.23514997e-01 -2.59491351e+00\n",
" 3.54713023e+00 -2.16093315e+00 -2.70219176e+00 -7.95153999e-01]\n",
"Train with data prior to: 2016-06-30T00:00:00.000000000 (256 obs)\n",
"(252, 10)\n",
"[-3.45781894 2.84183856 -2.58495853 1.77898241 0.11250938 -1.41329417\n",
" 3.26658323 1.46620622 -1.47637179 -3.1200725 1.1719048 1.68978612\n",
" 0.22348762 -2.65298784 -1.5224493 2.81560225 1.98440189 0.61156864\n",
" -2.10113911 -3.93958497 2.96054018 -2.20365653 0.7149137 1.65279822\n",
" 0.20828288 -1.65475116 2.69407036 -1.89757071 -3.70623678 -2.20180906\n",
" 0.30871231 -0.36072927 -0.31198333 -3.29750943 0.89023695 2.04780412\n",
" 2.51145501 -2.38125274 2.13984795 -0.53745236 2.29205521 3.38069516\n",
" -1.98878859 2.32848375 1.73369547 2.31074671 1.20346225 -2.13467985\n",
" -5.2775185 -4.63057261 -2.24909316 1.27157793 -2.94189785 -1.21742194\n",
" 4.17494684 3.61160997 -1.90881217 2.59960876 -4.01863065 3.19450919\n",
" -0.57199213 -3.82955942 2.48351662 2.97774646 -0.3904928 -1.79537363\n",
" 0.64167373 0.60800093 1.21487018 -1.27066323 -2.24236845 0.13680625\n",
" 2.65873523 1.97577153 4.06849355 3.18140362 -1.18827405 -0.37733785\n",
" -1.66915989 1.02891646 3.64164829 3.00965694 2.34576982 -1.48781808\n",
" 2.20014518 -2.71568378 -1.06402846 -3.2433965 2.06198435 -2.78274476\n",
" -1.21708343 -2.11064593 -0.93759454 3.62002884 1.98895681 1.64792808\n",
" -0.62491628 -4.3019975 2.45273094 1.87277002 -1.9963755 1.80333287\n",
" -1.55133534 4.58858976 0.52047746 -1.758724 1.72914295 -1.61212313\n",
" -1.04813608 1.78705967 -3.31388667 0.53206432 1.82400833 3.56266947\n",
" 2.78813605 2.64882779 2.83176346 -1.03004941 -1.56985949 0.15255655\n",
" -1.26613756 -0.590403 -0.67097644 -3.15046149 -1.89326304 -3.10938762\n",
" -1.51391437 -0.93931144 -1.34225197 -2.02705841 0.87147143 -1.6841098\n",
" 1.44868161 -1.19598856 0.78295579 -1.76803147 3.75212589 2.51811859\n",
" 1.74871358 -4.44101023 0.39871067 1.57067111 -0.95862484 -3.14392207\n",
" 1.75866339 -0.46047545 3.28800965 -1.79334343 1.94440625 -2.43625239\n",
" -2.42680304 -3.06943282 -5.01255718 1.16163961 -2.88054329 1.24871314\n",
" 1.21425866 1.10817892 -0.05080172 2.2048079 2.04285114 -0.08811295\n",
" -1.92107448 -1.9024738 -1.90923147 -0.54596298 0.21010033 -2.72591203\n",
" 1.57312462 -1.24611966 1.22867962 3.34095123 -2.60881908 2.59092309\n",
" -0.72970109 0.2106966 1.13743223 -1.80945392 0.07887924 -3.11793118\n",
" 1.70288958 1.03939857 -2.77318108 -1.8095004 2.18797629 2.21111077\n",
" -1.42612549 3.71486392 2.04529761 0.40095568 0.64498286 2.17654544\n",
" 0.03212577 -1.19300916 -0.46796372 -0.12989284 -0.13422315 -3.64310122\n",
" 0.56786036 -1.81597715 0.34835789 1.37631082 1.53922142 -0.49252278\n",
" -2.22081172 -0.59829697 -0.8207233 -1.32311243 0.17394469 3.84928099\n",
" 2.85343013 -0.35143197 -0.76052369 4.38707733 -3.10361145 1.30604566\n",
" -1.93910676 -0.18834107 -0.80888352 -1.9501066 -0.29330384 -0.0615496\n",
" 1.20320804 2.40234599 2.92992738 -1.88077651 2.0960312 2.47375805\n",
" -1.09046559 -0.76920611 -1.31293324 1.03145707 -2.01616489 1.14857073\n",
" 2.88482326 -1.78847605 -2.83078889 -3.58553569 -3.43641675 -2.41592585\n",
" -0.7345702 2.7600638 0.47412846 0.57468943 3.2442316 1.14304205\n",
" -0.00576865 -2.39047772 -1.45363718 -0.65591977 -3.62179007 -0.45243949]\n",
"Train with data prior to: 2016-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-2.67494711 0.15032632 1.57055392 -2.99703305 2.51868703 -0.84595691\n",
" -1.62796827 0.09379997 -0.16484931 0.05799773 4.67052401 -0.59467527\n",
" 0.18546618 0.75320128 0.27898077 -1.56105775 1.94029137 -1.99374292\n",
" -0.24407233 -2.33763505 -0.87883818 -0.76370469 0.62063162 5.80222805\n",
" 1.85765361 -3.77789571 2.01753743 0.6202473 -1.13694048 3.46395019\n",
" 0.64758203 -0.54705628 -1.4665431 -4.81063239 -1.7779289 0.54986845\n",
" 3.04047641 0.36546106 3.62104985 2.49414039 1.99872139 1.4715893\n",
" 2.17286904 -2.95599217 -0.23609967 -0.99860479 1.04551208 0.59552352\n",
" -0.95499356 0.8872808 3.45131629 0.14122697 -0.44282566 -0.60137401\n",
" 0.04875855 -0.63100895 -0.43315967 -2.4678312 1.71963211 -0.79051947\n",
" -1.21499863 -0.23264895 0.76858716 -0.43015562 3.93480916 0.01748083\n",
" 1.17208787 -2.58786636 -1.13895402 -2.2474489 -0.27102202 3.89415794\n",
" -2.59987017 -1.05737774 -1.37221908 -0.62033882 1.30540645 0.25935701\n",
" -3.61058242 0.54791963 -3.86574563 -0.70566234 -4.89451262 4.32298882\n",
" -2.08825187 1.70843901 -5.05685466 2.09281944 -0.56520748 -5.94376268\n",
" -2.77410012 -0.3285724 4.34525975 3.2102779 -0.63924366 -1.65813762\n",
" -2.54878601 -1.34269663 -1.35155445 -4.73831657 0.23586016 -1.14294451\n",
" -0.0996155 -3.15474992 1.1750328 4.68700932 -2.94137513 -1.86261946\n",
" -4.80381584 2.79194821 -1.6747716 1.44972681 0.04479477 -0.84929068\n",
" 1.13492774 5.59623276 -2.28047066 0.70981963 -2.58742662 -2.35171195\n",
" -1.98945228 -0.50478039 2.73435184 2.27792351 -0.62331704 3.09588445\n",
" -2.31013134 -2.1920974 -0.94073863 4.09777152 2.24625676 -1.47996521\n",
" 2.23522273 2.19186467 4.59544745 1.0344097 -3.30721956 -1.74213305\n",
" -1.01076797 -2.8658343 -0.49660487 2.35718511 3.69531987 -2.99593034\n",
" 1.92367323 -0.45930769 1.30017534 1.47036888 -4.8094225 -0.64382541\n",
" 1.45428709 -0.83139684 3.57349402 -1.40366247 -1.95994493 0.45462625\n",
" -3.14049428 0.32226546 -1.88059045 -4.63098165 1.23628058 1.24417102\n",
" 0.81580676 -2.5295482 0.6811711 0.79487027 -0.66809694 2.24637899\n",
" -3.55052275 -0.93693192 1.44105298 -0.11043809 -3.21068786 -0.29371001\n",
" -2.85749646 4.28772983 0.51198122 -2.34765368 1.07429126 2.39178045\n",
" -1.20574569 0.94202808 3.42649346 2.90963944 2.3764368 -5.17514004\n",
" 0.83304608 1.0815178 -0.13583894 2.49987808 -3.45911941 3.62168185\n",
" 2.10145476 1.8392216 -0.16259373 1.49810305 -1.29760494 -0.39769609\n",
" 0.69118697 1.56615249 1.72176443 -2.60578037 1.59915585 -1.23783609\n",
" -2.19242378 -0.52901466 -3.14870498 0.09362302 1.29427157 -2.32355265\n",
" -1.41320155 -0.23287082 -1.9071189 1.16984836 1.21872107 -2.04837159\n",
" -2.67581717 0.74728457 2.05115139 -2.34787221 0.91135114 3.32525778\n",
" -3.31193875 3.29890798 1.81209647 -2.41706593 0.3094802 -0.16423577\n",
" -1.6492119 3.12499938 -0.80945514 2.4638041 1.91650851 0.49566152\n",
" -1.64396027 1.13576966 -0.89390031 1.24912196 1.09597766 0.1292553\n",
" -2.27069072 -0.03828106 0.72323019 -2.66864908 -1.93868781 -0.68994044\n",
" 0.75513829 2.46293051 3.67764919 -3.22396112 -1.46446213 0.14137035]\n",
"Train with data prior to: 2016-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 2.37560533 2.9219649 0.68482441 0.01526294 1.55171467 4.30953441\n",
" -1.76189161 1.63112425 -1.72646923 3.40554793 -3.76144097 2.18663904\n",
" -2.43825478 3.76453418 1.58684465 0.14677014 -0.65358036 2.58467793\n",
" 1.23548936 -2.10561942 1.22174969 4.25483989 -2.69894803 0.35318784\n",
" 2.66361495 0.14080117 -4.48760378 2.02948389 -1.39408895 -3.55122067\n",
" -1.08325544 0.75039808 -0.4625473 -2.91566146 0.94345116 -3.83555676\n",
" -0.61530838 -3.32124914 0.243049 -2.00250401 0.09739443 -2.77039534\n",
" -1.04045332 -0.89701172 -0.7287501 -0.73180408 -2.51709452 -1.5771936\n",
" -2.5033122 -0.60918555 1.05871569 -1.01492891 -0.46679445 3.79135947\n",
" -1.41317148 -1.51150625 0.58096324 2.32245507 -1.06898236 1.6133893\n",
" 2.04890544 -0.51883966 4.97739845 0.37037471 -0.53323769 1.26587869\n",
" -2.12515124 1.14721324 -3.79832481 -0.11821513 1.66473172 1.08866099\n",
" 3.3253401 -1.01202106 -2.45440138 4.57589925 3.83232281 1.68685582\n",
" -1.26417882 -0.56323783 -4.6693857 4.03482765 0.0242757 -2.78104615\n",
" -3.06306269 4.48792009 -0.99168912 0.31995002 1.30195549 -4.59812385\n",
" 0.07267202 -2.69431496 -1.05939325 0.23143093 0.76264355 -1.55520673\n",
" 4.11051739 3.24515033 -2.5313066 -0.86208057 -1.11998562 -0.79341065\n",
" 0.05959746 3.99870963 1.38599861 0.59260645 -2.33989481 2.6440987\n",
" -2.01486458 0.85847879 1.43020132 0.09640746 -4.7021373 -3.17693216\n",
" 1.47034185 -1.42283318 -1.07202673 -1.95199229 0.05898006 -0.7018278\n",
" -3.72326092 0.14434388 0.81101666 1.84969715 0.12605591 -0.69057105\n",
" -1.35430138 -3.06188375 -2.45422468 3.82179455 -0.65863654 0.38545923\n",
" 1.43802331 2.61285287 0.93349585 -1.32614663 3.37507464 -3.29039756\n",
" 1.09611632 -4.77926693 -0.6677434 0.11684858 2.23983368 -1.34830082\n",
" -0.95619258 -1.94718838 3.0628053 -1.45472826 2.53655597 -0.74580842\n",
" -1.00150572 1.97220531 -5.38040417 -3.02583749 0.16265782 -1.69248803\n",
" 1.24157964 -2.59512396 -1.07361222 -2.70882703 6.36589652 2.54717408\n",
" -4.14754791 2.50970549 2.58305991 3.82950681 1.23615661 0.91899217\n",
" 1.91808838 0.96247948 2.8321779 0.692444 -1.25796531 -1.93768727\n",
" 3.69719221 -1.18674056 -2.25994756 -0.06233947 1.85417341 1.15728531\n",
" -0.78054814 -0.87184077 2.32416382 0.29563538 -1.37575326 1.35033947\n",
" 1.12665983 1.0962886 2.89821391 -3.52263246 1.09388657 -2.84206488\n",
" 2.89022619 1.39634906 -1.8665654 0.32193766 -2.64644558 -2.70019706\n",
" -2.92124867 -0.10461636 -0.89601919 -2.16121386 3.56997781 -2.44957946\n",
" 3.37332233 1.42751816 0.84017941 -0.10714209 -2.99604859 -1.17554466\n",
" -0.56293262 0.50066626 1.35563763 2.73035171 -4.4618575 0.52450525\n",
" -0.70130156 -0.522232 -2.93431577 -3.07700852 1.41145733 4.10151275\n",
" -0.94566029 1.21977656 0.76486467 -2.39264956 2.39563617 1.76217759\n",
" 1.19267042 -1.33668208 2.86245315 -0.15583553 2.38635471 1.21302342\n",
" -0.40663432 0.48687417 0.87237169 -3.24494341 -2.04316617 2.00479185\n",
" -1.69932656 3.04718076 0.24946891 0.28722797 -1.73246219 -2.5214448\n",
" 2.19872843 -1.89031376]\n",
"Train with data prior to: 2017-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[ 3.35956779e+00 2.48776730e+00 -3.29583562e+00 -2.42734803e-01\n",
" 3.12294681e+00 -8.59942909e-02 -3.29018065e+00 -1.36282771e+00\n",
" -8.82829886e-01 -1.80109039e+00 -1.50001025e+00 -1.02910217e+00\n",
" 1.53559775e+00 5.47374117e-01 -1.32088218e+00 -1.97008984e+00\n",
" 3.29778707e+00 -7.18259049e-01 -2.27148910e+00 -9.59141328e-02\n",
" -1.97077457e+00 2.32987831e-01 4.30763824e+00 1.48920973e+00\n",
" -2.54592829e-01 -4.05262386e+00 1.76288811e+00 4.07554545e+00\n",
" 1.35256093e-01 6.56576978e-01 -2.93350803e+00 5.40795920e-01\n",
" -4.72951765e+00 1.67948338e+00 8.92036741e-01 -1.17914948e+00\n",
" -2.36421811e+00 2.27022068e+00 3.18337033e+00 2.21785929e+00\n",
" 1.10977513e+00 2.53430046e+00 1.71701194e+00 -1.94087561e+00\n",
" -1.90593733e+00 -1.55655741e+00 -2.97939674e+00 -2.92343341e+00\n",
" -1.85996645e+00 2.43780488e+00 -1.20144050e+00 8.17072476e-01\n",
" 2.18212550e+00 -2.52777804e-01 -2.84709264e+00 2.69218450e+00\n",
" -2.51964338e+00 1.44227398e+00 -9.85146430e-01 -2.50677586e+00\n",
" -2.78881827e+00 7.74330773e-01 -1.94060957e+00 -2.86786650e+00\n",
" 1.75852855e+00 -4.44305982e+00 -6.81204807e-01 -5.05032115e+00\n",
" 5.28627158e+00 2.68859398e+00 -2.92433364e+00 2.57094940e+00\n",
" 1.37564652e+00 -2.57942147e+00 -2.04811099e+00 -4.83887337e-01\n",
" -1.38026603e+00 -1.77942603e+00 9.97672525e-01 1.01490272e+00\n",
" -3.14195169e+00 3.58652238e+00 -1.43862083e+00 -3.45362080e+00\n",
" -6.23216919e+00 2.24271464e+00 4.58909896e-01 8.52641494e-01\n",
" 9.66300741e-01 -4.11629542e+00 -1.32436360e+00 -2.17870386e-01\n",
" -2.03424762e+00 -1.02868768e+00 1.10295000e-03 1.79872792e+00\n",
" -1.54523860e+00 1.02309644e+00 -1.94769116e-01 -1.87679095e+00\n",
" 1.40028689e-01 -2.07964322e+00 1.50673460e+00 1.06815857e+00\n",
" -2.39227153e+00 2.49650933e+00 -1.20712724e-01 4.49401542e+00\n",
" -6.84051885e-01 1.19440726e+00 5.85455452e-01 -7.25294938e-01\n",
" 8.41643616e-02 -7.74277153e-01 -3.36534927e+00 2.27357440e+00\n",
" 1.88224226e-01 7.03248146e-01 -3.96221517e+00 6.46653982e-01\n",
" 1.57394111e+00 -1.62008225e+00 -1.91353342e+00 -9.98011403e-01\n",
" -3.87911831e+00 -3.43243765e+00 1.94567697e+00 3.79947526e-01\n",
" -7.92203957e-01 -1.74439952e+00 1.55422758e-02 1.45609675e+00\n",
" 3.14859016e+00 2.81420548e-01 2.01471346e+00 3.38070938e+00\n",
" 1.46252801e-01 9.68040086e-03 -1.90296413e+00 -2.17933676e+00\n",
" 8.50053965e-01 -3.72028428e-01 -7.23923173e-01 1.79107372e+00\n",
" -3.88897555e-01 1.17728499e-01 3.36440365e+00 3.44802335e+00\n",
" -1.59329070e+00 1.22095408e+00 -2.77547612e+00 1.35087301e+00\n",
" -1.26330081e+00 7.96471193e-02 1.20148946e-01 -4.58984710e+00\n",
" 1.10596959e-01 -7.88150531e-01 1.79783050e+00 4.09962257e+00\n",
" 1.33073824e+00 2.41813874e+00 3.80259368e+00 -5.07135413e-01\n",
" 2.17569277e+00 5.23167504e-01 -1.08442726e+00 -1.19110812e+00\n",
" -9.02628159e-01 -9.15813931e-01 -6.59167192e-01 1.41200375e+00\n",
" -8.77269020e-01 7.15534475e-01 -2.96521859e+00 -1.68949365e+00\n",
" 2.12987663e+00 1.97952105e+00 2.44776243e+00 -2.87995280e+00\n",
" -1.00687024e+00 1.39420026e+00 3.39596080e+00 1.95171287e+00\n",
" -3.12346600e+00 1.65667972e+00 -7.49036476e-01 3.21093869e+00\n",
" 3.55249655e-01 2.91399168e+00 -8.72230246e-01 -4.51166614e-01\n",
" 4.01668788e-01 -4.13269521e+00 2.22918447e+00 -3.37554597e+00\n",
" -2.66411510e+00 5.54279299e+00 1.89629566e-01 -8.04002640e-01\n",
" -7.20085056e-01 4.50683038e+00 5.18006993e-01 1.97492930e+00\n",
" 1.04439703e+00 -8.12754455e-01 6.99188264e-01 1.57830404e+00\n",
" 6.05898635e-01 -3.34057941e+00 1.10190672e+00 1.88449928e+00\n",
" 1.18733530e+00 -1.12222942e-01 1.96995504e-01 1.43437444e+00\n",
" -4.92085143e+00 6.03427298e-01 -3.86117031e-01 2.57904569e+00\n",
" 2.79959886e+00 -2.32688985e+00 -1.67629996e+00 1.95376894e+00\n",
" -8.58775488e-01 -2.04511790e+00 2.97102406e-02 -3.16369163e-01\n",
" -8.00430521e-01 -1.61806714e+00 2.17310826e+00 -1.58889535e+00\n",
" -1.31416483e+00 2.14147485e+00 -6.24255969e-01 9.26834639e-01\n",
" 2.32180179e-01 8.14483829e-01 6.00136848e-01 -2.50411036e+00\n",
" 1.52563681e+00 5.10746272e-01 4.40776339e+00 -3.06864283e+00\n",
" -1.20868801e+00 6.11519847e-01 -3.55649812e+00 -2.36629365e-01\n",
" 4.04877675e+00 -2.83385080e-01 -3.04533380e+00 9.99547445e-01]\n",
"Train with data prior to: 2017-06-30T00:00:00.000000000 (252 obs)\n",
"(250, 10)\n",
"[ 1.40143333e+00 -1.29864824e+00 4.02771434e-01 -3.79215483e+00\n",
" 3.19396996e-01 1.84302899e+00 2.86730528e+00 -1.60162365e+00\n",
" -2.06392042e+00 -1.93372405e+00 1.45602797e+00 -7.81409701e-01\n",
" -1.63568027e+00 2.88452029e+00 2.57382194e+00 9.11684818e-02\n",
" -1.28576167e+00 5.74142008e-01 -3.76119903e+00 1.62352125e+00\n",
" 3.42971802e+00 1.21439473e+00 -5.51824480e+00 -3.06308838e+00\n",
" -8.86388684e-02 1.66383035e+00 -2.15028682e+00 9.33928400e-01\n",
" 2.01783726e+00 -4.25380889e-01 1.58834742e+00 -9.64827937e-01\n",
" -6.39867765e-01 -4.69476077e-01 3.09045712e-01 -4.10097259e+00\n",
" 2.97756804e+00 2.69938275e+00 2.61605759e+00 -2.93037410e+00\n",
" 8.43025753e-01 3.35921492e+00 -1.52263734e+00 -1.12080518e+00\n",
" -1.65459413e+00 1.68348326e+00 2.31217261e-01 -1.08402608e+00\n",
" 3.89679942e+00 -1.40038764e+00 -2.70578086e+00 -3.33404066e-01\n",
" 2.76860360e+00 -6.48511681e-01 -1.56057622e+00 2.85921534e-01\n",
" -2.79369876e+00 2.09559071e-01 -2.45853992e+00 -2.87644124e+00\n",
" 1.89738045e+00 -4.76223189e-01 3.98886152e+00 3.67542011e+00\n",
" -3.65879451e-01 2.56520772e+00 -1.91253485e+00 1.90907376e+00\n",
" 1.65547150e+00 1.80174353e+00 1.02841115e+00 2.40883719e+00\n",
" 3.67960960e+00 5.83985611e-01 -1.08216768e+00 1.89329093e+00\n",
" 4.34275727e+00 -3.79165181e-02 3.85157259e+00 3.45386638e-01\n",
" -4.44572200e-01 -2.10135997e+00 9.51220912e-01 2.72166558e-01\n",
" -2.81907282e+00 -4.44639824e+00 -3.33444271e+00 1.60029806e+00\n",
" 2.76409179e+00 1.53381320e+00 -3.92552374e-01 2.43898418e+00\n",
" -3.27025355e+00 -3.03368526e+00 2.19080632e+00 9.07455731e-01\n",
" 2.96054209e+00 -3.10969805e+00 1.87661736e+00 2.30596731e+00\n",
" -4.58148008e-01 -2.19897934e+00 2.97182419e+00 2.90170256e+00\n",
" 2.26786665e+00 -2.52126412e+00 -6.71086151e-01 -1.05265872e-03\n",
" -4.95608763e-01 -2.02489795e+00 -3.57597399e+00 2.38092857e+00\n",
" -2.18102626e+00 6.80551273e-01 -5.69031115e-01 -1.26531568e+00\n",
" -2.93564286e+00 -2.09936695e+00 2.25953947e+00 4.33521099e+00\n",
" 1.17361112e+00 -4.77810878e-01 5.68082466e-01 -3.40771886e+00\n",
" 2.34041056e+00 -3.37335793e+00 2.49103883e-01 1.93083417e+00\n",
" -2.75593397e-01 1.22266091e+00 1.08690072e+00 3.39820560e+00\n",
" 1.28506099e+00 -2.86067582e+00 3.26526845e-01 -5.86670593e-02\n",
" -2.13048750e+00 8.60614766e-01 1.31687115e-01 -1.47327702e+00\n",
" 2.49442013e-01 1.81417699e+00 4.33340502e+00 -9.20384552e-02\n",
" -2.11083274e+00 -1.25002971e-02 2.41539759e+00 4.56743650e-01\n",
" -1.15728286e+00 -9.16134838e-01 -3.07512491e+00 7.66410136e-01\n",
" 3.12388120e+00 -2.43273782e-01 2.56834690e+00 -2.82189673e+00\n",
" 2.58047354e-01 4.00095532e+00 -2.21698231e+00 -2.99537282e+00\n",
" 4.52940371e-01 1.16193862e+00 -6.99559761e-01 2.93838555e+00\n",
" 1.47359811e+00 7.00340279e-01 4.01141286e+00 -2.86780743e-01\n",
" 7.19814721e-01 -1.80806375e-01 -1.34567452e+00 -1.20997130e+00\n",
" -6.95865065e-01 3.35810182e+00 5.00341068e-01 1.50681551e-01\n",
" -1.67752573e-01 6.49523896e-01 -4.00795944e-01 -8.46765698e-01\n",
" -3.65546765e+00 1.55517854e+00 -3.78789362e-01 2.39004596e+00\n",
" 2.10922590e+00 -4.29487571e+00 -9.50918646e-01 -3.12351998e+00\n",
" -1.24687827e+00 -1.70994900e+00 -2.08594678e+00 -1.22057658e+00\n",
" -9.96302707e-02 1.45838321e+00 -1.59669970e+00 -4.45878729e-02\n",
" 4.37326183e+00 2.08741980e+00 -1.41846244e+00 -2.91393493e+00\n",
" -2.99558423e-01 -8.40436883e-01 -4.07783654e+00 -2.12320850e+00\n",
" 2.74170972e+00 -3.03806395e+00 2.60961419e+00 6.07073141e-02\n",
" 3.36294570e+00 -2.69616318e+00 8.09998768e-01 -1.72941781e-01\n",
" -1.66766953e+00 -2.72410922e+00 3.01865554e+00 4.16681113e-01\n",
" -3.41455494e+00 -8.79964894e-01 2.51088309e+00 3.39334052e+00\n",
" 1.51505474e+00 -2.43271819e+00 -1.95832652e+00 -5.23817157e-01\n",
" -2.74475633e+00 1.87242604e+00 2.23260028e+00 3.11949217e+00\n",
" -1.09655217e+00 1.92830739e+00 -3.77625435e+00 -2.77792813e+00\n",
" -2.33936867e+00 9.91573805e-01 -3.01717332e-01 2.73635763e+00\n",
" 1.58909869e+00 -2.15572636e-01 2.88845645e+00 2.35089619e+00\n",
" 2.88384648e+00 -2.52028836e+00 4.18987028e+00 -8.09362806e-01\n",
" -2.47066605e+00 6.07513051e-01 -1.62554120e+00 3.14501998e-01\n",
" -4.68879870e-01 -1.39702770e+00]\n",
"Train with data prior to: 2017-09-30T00:00:00.000000000 (250 obs)\n",
"(248, 10)\n",
"[ 4.59978437e+00 3.57650332e+00 -1.83388653e-03 1.07634932e-01\n",
" 2.63980542e+00 9.66862679e-01 6.57785134e-01 1.12533008e+00\n",
" 4.17631022e-01 -7.76582516e-01 -4.05897701e+00 -1.08358453e+00\n",
" -1.17967790e+00 -2.06910208e+00 -3.20511096e+00 1.05300551e-01\n",
" 9.23317602e-01 5.33831321e+00 -1.55708891e+00 8.11451791e-01\n",
" -2.33322591e+00 5.12861998e-01 -1.38328259e+00 3.45105938e-01\n",
" 1.97448346e+00 -3.96331624e-01 -3.43589609e+00 -2.46434611e+00\n",
" -5.84556949e-01 -5.59945888e-01 2.33292345e+00 -1.65331501e+00\n",
" 3.01332158e+00 3.11698279e+00 -4.35410875e-01 -3.48996194e+00\n",
" -3.61354828e-01 4.30062911e+00 1.06520360e+00 -2.42653905e+00\n",
" -4.41089252e-01 -9.37514755e-01 -1.74850020e+00 -3.44218300e+00\n",
" 1.85363006e+00 -4.49801499e-01 2.51193649e+00 -2.73908555e+00\n",
" -8.18994629e-01 -1.83990297e+00 2.60549798e+00 -3.40258645e-01\n",
" 3.12242175e+00 6.03370161e-01 -4.31959017e+00 -2.55212882e+00\n",
" -4.60376904e+00 -1.55682212e+00 -5.39332311e-01 -1.99345342e+00\n",
" 1.88065658e+00 6.17950199e-01 -1.42190422e+00 -2.77204272e+00\n",
" -1.76615162e-02 -1.67397541e+00 1.40783867e+00 -1.71560995e+00\n",
" -1.85395051e+00 -9.26556506e-01 9.83542914e-01 -1.49594792e+00\n",
" 4.34901975e-02 1.49476277e+00 5.86127581e-01 2.30808531e-01\n",
" -1.55743146e+00 -4.97547690e-01 3.11191311e+00 -3.49429011e+00\n",
" 1.99406138e+00 4.57666811e+00 -1.58115357e+00 -3.62941404e+00\n",
" -7.32042260e-01 -1.80022705e-01 -1.77181494e+00 -3.93411882e+00\n",
" 2.20246870e+00 7.76954362e-01 -2.16680889e+00 1.89298288e-01\n",
" -4.18229769e-01 -3.17989184e+00 3.17817490e+00 -4.12933047e-01\n",
" 3.11637618e+00 -1.06662356e+00 -2.16879499e+00 1.17147895e-01\n",
" 3.63284480e+00 -1.55657188e+00 -7.21883292e-01 -4.44230990e+00\n",
" 2.04939242e+00 3.45070132e+00 -1.46025385e+00 6.57077135e-01\n",
" -9.10194842e-01 5.20315065e-01 2.50962738e+00 -1.67894344e+00\n",
" 1.90852144e+00 -1.66835699e+00 -2.62243001e+00 2.15466452e+00\n",
" -2.76371430e+00 -2.44994192e+00 -5.10237842e+00 8.79251623e-01\n",
" 6.25361920e-01 -2.56115933e+00 3.99474222e+00 -9.17917504e-01\n",
" 3.01621634e+00 -2.88213085e+00 -7.16722033e-01 3.93642908e+00\n",
" -1.15228982e+00 -1.53862591e+00 -2.65831871e+00 3.10929522e+00\n",
" 5.62335612e-01 2.78500409e+00 3.90367940e+00 4.63808280e-02\n",
" -4.70517228e-01 3.63216108e-01 3.03254989e+00 -2.98278695e-01\n",
" -3.49022165e+00 1.52633902e+00 -1.06638138e+00 3.38003829e+00\n",
" -4.02678109e+00 -5.18289357e-01 -2.28904706e+00 -9.67844291e-01\n",
" 3.13723408e+00 -1.98751400e+00 2.38779238e+00 6.89893957e-01\n",
" 1.01689812e+00 -1.15981559e+00 -1.37801905e+00 -9.68318221e-01\n",
" 2.93498306e-01 -4.31747545e-02 2.69089426e+00 -7.92715945e-01\n",
" 5.03015231e+00 -1.15292435e+00 -1.35471405e+00 -6.76725163e-01\n",
" -2.34664505e-01 -1.00678201e+00 1.58807407e-01 -2.47484584e+00\n",
" 3.58119121e-01 4.34188029e+00 -3.06212608e+00 -1.91411491e+00\n",
" 1.67386762e+00 3.61214471e+00 3.98598666e+00 2.65083052e-01\n",
" 2.27779384e-01 2.67839837e+00 2.93129300e+00 -3.94992411e+00\n",
" 3.01815778e+00 -3.68359914e-01 -9.15563624e-01 1.76643227e+00\n",
" -2.11863158e+00 -3.13846786e-01 -4.32256376e-01 -6.40754065e+00\n",
" -1.78945229e+00 -5.33366951e+00 2.54006669e+00 1.35825359e+00\n",
" -6.78709273e-01 -7.00980889e-01 2.45282331e-01 2.14709492e+00\n",
" -2.63885191e+00 -3.58437941e+00 7.02142735e-01 -3.08526603e+00\n",
" 2.44167521e+00 -2.08562012e+00 -1.37458482e+00 8.83810517e-01\n",
" -7.98936062e-01 -3.76958926e+00 3.88227282e+00 3.79868845e+00\n",
" -1.38545201e+00 -3.14638751e+00 -9.39833864e-01 1.91760136e+00\n",
" 6.29097207e-01 -5.97131759e-01 3.03842650e+00 -7.66926269e-01\n",
" -8.07099660e-01 -3.38846581e-01 2.49255731e+00 1.65177415e+00\n",
" 3.23683482e+00 -1.16169342e+00 -3.42558016e+00 1.88582086e+00\n",
" -3.10441647e+00 -2.21831363e+00 -1.81098438e+00 -3.65708694e+00\n",
" 3.01641044e+00 2.38015995e+00 2.92211876e-01 -3.37975644e+00\n",
" -2.01965694e+00 3.08003937e+00 4.88420768e+00 -1.85595359e+00\n",
" -8.24002124e-01 1.45331886e+00 2.27667189e+00 9.17233433e-01\n",
" -3.74104460e-01 -1.82383080e+00 3.48952273e-02 -8.50020776e-01\n",
" -9.00298924e-01 2.07407883e+00 -1.06131863e+00 7.78687109e-01]\n",
"Train with data prior to: 2017-12-31T00:00:00.000000000 (248 obs)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3844662304.py:9: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" models = pd.Series(index=recalc_dates)\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3844662304.py:26: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" predictions = pd.Series(index=features.index)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"['2012-03-31T00:00:00.000000000' '2012-06-30T00:00:00.000000000'\n",
" '2012-09-30T00:00:00.000000000' '2012-12-31T00:00:00.000000000'\n",
" '2013-03-31T00:00:00.000000000' '2013-06-30T00:00:00.000000000'\n",
" '2013-09-30T00:00:00.000000000' '2013-12-31T00:00:00.000000000'\n",
" '2014-03-31T00:00:00.000000000' '2014-06-30T00:00:00.000000000'\n",
" '2014-09-30T00:00:00.000000000' '2014-12-31T00:00:00.000000000'\n",
" '2015-03-31T00:00:00.000000000' '2015-06-30T00:00:00.000000000'\n",
" '2015-09-30T00:00:00.000000000' '2015-12-31T00:00:00.000000000'\n",
" '2016-03-31T00:00:00.000000000' '2016-06-30T00:00:00.000000000'\n",
" '2016-09-30T00:00:00.000000000' '2016-12-31T00:00:00.000000000'\n",
" '2017-03-31T00:00:00.000000000' '2017-06-30T00:00:00.000000000'\n",
" '2017-09-30T00:00:00.000000000' '2017-12-31T00:00:00.000000000']\n",
"(248, 10)\n",
"[-8.63900450e-01 9.90038253e-02 2.54932144e+00 -1.50562489e+00\n",
" 1.15462603e+00 -2.89453865e+00 2.87883826e+00 3.13902567e-01\n",
" 1.84217337e+00 -1.73476139e-01 -2.52202316e+00 1.13881751e+00\n",
" 1.66686044e-01 4.41712013e+00 -2.08768810e-01 4.60857796e+00\n",
" -1.91298886e+00 1.50977320e+00 -1.02868831e+00 -4.92001924e-01\n",
" 4.29923603e+00 1.56145827e+00 -3.83012971e+00 -1.28634609e+00\n",
" -8.40531591e-01 -1.73918792e+00 2.41068970e+00 -3.28491233e+00\n",
" 6.15930525e-01 -3.59491094e+00 -1.28922212e+00 -3.20893043e+00\n",
" -1.28386359e+00 -1.44366650e+00 1.15246870e+00 -1.78843466e+00\n",
" 3.87338764e-01 -3.88121457e+00 -1.81323742e+00 3.14140126e+00\n",
" 1.01437831e+00 -9.83055965e-01 -4.28494997e+00 2.10944398e+00\n",
" 1.60241455e+00 -3.11508506e+00 -2.23248273e+00 1.44479336e-01\n",
" 1.65272893e+00 3.58678546e+00 -4.92315083e-01 2.42663466e+00\n",
" 2.89752961e+00 2.68295647e+00 -1.05222578e+00 2.06286672e+00\n",
" 3.92283701e+00 -1.73114996e+00 1.16064072e+00 2.80140433e+00\n",
" 2.95785781e+00 -4.64768525e+00 2.04291973e+00 -8.60026859e-01\n",
" 2.51406361e+00 9.72385128e-01 9.02279204e-01 -1.64049358e+00\n",
" -1.27294563e+00 -3.83243684e+00 4.63741998e+00 -1.03671710e+00\n",
" 1.42065094e+00 -2.18208194e+00 -3.13359237e+00 8.42119642e-01\n",
" -1.16979010e+00 -2.59843144e+00 1.79048441e+00 -4.83309603e-01\n",
" -1.23817696e+00 2.56310365e+00 -4.79188824e+00 -1.45713691e+00\n",
" 2.50389360e+00 4.97607033e+00 1.50993285e+00 -9.72756586e-01\n",
" 1.54774920e+00 -2.67576778e+00 1.15662434e+00 1.96147867e-01\n",
" -1.27706016e+00 2.36214054e+00 -1.75078105e+00 7.55298169e-01\n",
" 4.43612091e+00 -1.53906329e+00 -2.30371723e+00 4.50275127e+00\n",
" -1.07456958e+00 7.47236284e-01 -1.80035255e+00 6.20264182e-01\n",
" -4.47841284e-01 -2.23420919e+00 -2.35410970e-01 -1.90152444e+00\n",
" 1.54642909e+00 -2.06216273e+00 1.41128404e+00 4.46923591e-01\n",
" 1.30536190e+00 2.53788107e-01 3.77943568e-02 1.12657397e+00\n",
" -1.79316700e+00 2.00992359e+00 -8.40690559e-01 5.29401021e-01\n",
" 1.88584316e+00 4.85307771e+00 -5.37956576e-01 -1.74326896e+00\n",
" 2.30853698e+00 2.15803417e+00 -1.71104761e+00 -5.12722183e+00\n",
" -1.27292108e+00 -5.42140170e-01 2.21198723e+00 1.67660510e+00\n",
" -2.20954680e+00 -2.32025590e+00 2.79263261e+00 -1.66011906e+00\n",
" 1.64722900e+00 -4.02776544e-01 1.12749317e+00 4.67524931e+00\n",
" 7.67502778e-01 -2.45472006e+00 -1.20670342e+00 3.28073714e-01\n",
" 3.16009562e-01 8.95911869e-01 9.32205207e-01 3.37666796e+00\n",
" 7.38984986e-01 -2.52053311e+00 2.57695237e+00 -3.15960505e+00\n",
" -2.38263697e+00 -3.79275091e+00 -1.90367819e-02 2.62785191e+00\n",
" 2.37214075e+00 -7.08564732e-01 -3.43613229e+00 -3.51343136e+00\n",
" 3.71107000e-01 1.05775191e-01 -2.97308455e+00 -5.03747406e+00\n",
" -1.32010436e+00 9.58675080e-01 1.49995371e+00 3.75657128e-01\n",
" -2.52004989e+00 5.50071820e+00 2.14529518e+00 -1.00888754e+00\n",
" 4.31891125e-01 -1.37185235e+00 5.10156872e-01 2.16933015e+00\n",
" -7.59621748e-01 -3.15103572e-01 -3.14071739e+00 -3.74628154e+00\n",
" 3.94630516e+00 -1.39755143e+00 -6.42221674e-01 3.71068910e+00\n",
" 1.85765721e+00 3.02391112e+00 1.72964650e+00 -1.70821349e+00\n",
" 1.17478974e+00 9.42955597e-01 -2.46737807e+00 4.25297208e-01\n",
" -1.88423107e-01 1.33329474e+00 2.74404890e+00 -1.20608923e+00\n",
" 2.17675683e+00 2.40094867e+00 1.44632210e+00 1.66804865e+00\n",
" -3.21983975e+00 -4.68054070e+00 -3.44985708e-01 -1.49401782e+00\n",
" 2.49529130e+00 9.78372997e-02 1.34165145e+00 -3.09753126e+00\n",
" -6.71328086e-01 1.58817204e+00 3.30914783e-01 1.01420168e+00\n",
" -2.56822030e+00 -1.67541371e-01 -4.21663719e+00 -3.31524814e+00\n",
" 3.10402504e+00 -1.36272491e+00 -1.45750510e+00 1.67840790e+00\n",
" -6.95949003e-01 -1.33647542e+00 3.01663309e+00 -3.47116035e-01\n",
" -3.64177910e+00 1.56705383e+00 2.77198971e+00 -2.39036043e+00\n",
" -2.54340469e-01 -1.77013594e-01 -1.32677918e+00 2.52365001e-01\n",
" 1.03256208e-01 1.71554279e+00 -4.74858295e-03 -1.67922844e+00\n",
" 3.52838949e+00 6.92239924e+00 2.17024356e+00 2.77512848e+00\n",
" 2.12724311e+00 -2.25791255e+00 -9.58609083e-01 8.22808853e-01\n",
" 2.19285773e+00 -1.55841179e+00 -1.92045656e+00 -2.91712132e+00]\n",
"Train with data prior to: 2012-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[-0.3528897 -4.02321763 1.58037704 1.70071047 0.64190986 -2.22867652\n",
" -1.35897097 0.93544629 -1.7322991 -1.34240651 -0.03000227 2.43065823\n",
" 0.74184189 0.46211937 -0.37808817 0.40311117 -0.57973688 -2.64417\n",
" 0.21077043 -2.08097878 2.18872447 -2.71188592 -0.30948918 -3.49277735\n",
" 0.52854451 3.36868744 0.0862339 0.05257853 -1.32047978 4.38949621\n",
" 2.3165803 -0.38431829 2.85986419 -2.98948348 -3.28879448 1.35796951\n",
" -2.24016453 -2.07201991 1.42162748 0.40402374 -2.10504936 -0.73669962\n",
" -1.28526459 -2.5769126 -2.88510868 -3.01822027 -2.07277846 0.4294993\n",
" 2.5405978 -2.80789423 0.5522193 1.28490683 0.43939956 -0.06426456\n",
" 0.78210919 -2.27903073 1.43398308 0.8719537 0.7948972 -0.63819231\n",
" 3.67901613 -1.23629204 1.24044839 -2.24884253 4.00353139 0.73241758\n",
" -0.53418056 -2.39613032 3.16824825 -2.35293118 2.9863721 2.76101399\n",
" -1.95926936 -1.48424011 -1.80000974 1.54795785 1.2512607 -0.1185434\n",
" 2.02823897 3.05354411 -3.21739052 -0.87531344 -0.88556898 0.07163933\n",
" -1.24332453 1.35969373 -0.3371918 1.46948514 -1.91236268 1.87130721\n",
" 2.24768142 -0.98111902 1.63788069 2.26733282 0.87394647 -0.71496335\n",
" 1.78332885 -0.59295118 -2.72002955 1.97713204 -0.89984025 -1.36277279\n",
" 0.54613191 -0.64007449 1.77050442 -2.81726563 1.59456567 2.98538118\n",
" 1.58553357 2.37473743 3.1938839 1.57167975 -1.25869803 -0.303557\n",
" -3.50445407 -1.24160976 3.02941968 2.0827068 -2.30040562 5.14867605\n",
" 0.05059296 -1.47295884 -1.24470059 3.39107929 0.13083192 -2.13813229\n",
" 1.55674193 0.59220021 1.65793838 -0.03273157 -0.40560832 2.82244441\n",
" -3.63506568 -2.26156963 -1.37618926 -1.50093774 -0.12799267 -1.04110214\n",
" 0.22903385 -4.03611529 -1.3366529 2.60104299 0.81052089 2.04957692\n",
" 2.75023936 -0.72144412 3.23639218 -3.19903853 -1.88166579 2.71162581\n",
" 1.50572447 1.73488857 -3.31903396 -0.91592114 0.39624773 -3.66616389\n",
" 0.30404811 0.76806505 -0.38393967 2.82537772 -2.57297254 -0.453639\n",
" 0.17575632 1.18675636 -1.56167055 2.37181882 0.67623427 -1.42859084\n",
" 3.30837158 -2.71577458 -1.99898851 -0.8599589 -2.42009008 0.06032743\n",
" 2.50372823 -1.64405567 -1.29618054 -0.02321746 -0.04345562 -1.15334852\n",
" -1.47176274 -2.02390692 -2.72345047 1.64998466 1.49230992 1.78375229\n",
" 0.18257063 -2.36551679 -0.20361436 -0.2407543 -0.10010618 5.32592498\n",
" -0.78492753 -2.64041789 -0.91781448 2.05080631 1.05190169 0.09664896\n",
" 1.47225759 3.43878091 0.25598946 0.04974454 -3.09028481 -1.86098526\n",
" 0.56643576 1.52414776 -0.30301434 -2.62712014 0.89458714 -0.50912838\n",
" 0.25541925 -0.69924353 1.29402518 -3.99702922 -1.86558055 2.49334066\n",
" -0.63882965 3.58938087 0.51219002 2.84292453 0.75086298 2.57411441\n",
" 0.91042006 2.14755683 1.97410647 -0.76324306 -1.78418008 0.50501483\n",
" -0.67451904 -1.23886924 -2.89087042 -0.96972347 0.80781765 -0.87848748\n",
" -0.34938844 -0.35079364 -1.55621401 -0.67166277 -0.00615069 0.4997965\n",
" -1.04971013 -4.87105398 -2.04285019 -1.21479864 -1.26439314 -1.0530523\n",
" 1.97675687 0.8328361 2.85982352 3.25064564 0.22047235 0.49928653]\n",
"Train with data prior to: 2012-06-30T00:00:00.000000000 (252 obs)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3844662304.py:9: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" models = pd.Series(index=recalc_dates)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"(252, 10)\n",
"[-3.32155171 -1.91644985 1.64873827 -2.57101087 1.12393399 -1.27599899\n",
" 1.36787749 -0.50023864 -3.79579875 0.37909828 1.66136742 -2.63819046\n",
" 1.58988776 2.33357534 -4.11049228 -1.54890003 -3.42957627 -1.61467242\n",
" 0.631063 0.20796483 -0.54854319 3.63188117 2.65795535 -1.63803508\n",
" -5.31239976 -0.34278223 -1.64308148 -1.61773203 -2.22226543 1.31292671\n",
" 4.22993273 -0.07425307 -1.66105125 5.23248817 -1.81058247 0.14546608\n",
" -2.36522895 -3.12792935 2.17441295 -2.12577178 4.77424335 3.40655919\n",
" -3.65285637 1.1588638 -1.91063993 1.02885042 -2.99411678 -2.10872405\n",
" -1.20189275 -1.78793514 -0.6657667 1.39336769 -0.02251173 -2.67795006\n",
" 0.72062542 -2.37875348 -4.80551157 -3.38237293 3.3045177 -1.02005836\n",
" 1.38553133 -2.52650834 1.91734809 -1.64137441 -2.91737602 -1.72576254\n",
" -2.77220061 0.00866795 3.44223938 2.07265574 -1.9544851 0.7391264\n",
" -4.05011633 -4.61545015 2.45039231 -3.74657235 -2.6976682 -1.26028125\n",
" 0.81562087 1.06421307 -2.35185541 2.27304652 -1.92311872 0.96820114\n",
" -3.48147206 -0.72304177 4.2492859 -2.37525874 4.02336843 -2.86839147\n",
" 3.77720094 -1.36784704 -0.04322346 2.19824591 -0.94651016 -1.44884492\n",
" 2.27061739 0.08879645 -1.76908072 1.28081212 3.62934655 2.24196113\n",
" -1.58437248 -1.07198369 -3.07444563 3.36178288 0.0211792 3.55309398\n",
" 4.48238038 -0.19147472 -3.89477185 -1.15251107 1.50322096 0.82173378\n",
" -2.28767995 3.25355184 -2.41789251 0.15881085 -2.97386979 -1.09971317\n",
" 0.59872666 -3.02150297 1.33372267 -2.96648523 2.32577414 1.58120262\n",
" -1.1381604 -1.37557599 -1.15186351 -0.11669907 6.93887303 2.53645672\n",
" -2.85611854 2.86086422 0.54788663 -3.27066728 -2.49642185 3.12491095\n",
" 1.16059933 -1.25286235 4.02435854 -4.56192019 0.94672052 1.30500125\n",
" -0.18827818 -2.66072244 0.22671808 0.20812975 -2.41399464 0.16696527\n",
" 1.55819991 1.85805661 -1.93172251 -0.87341726 -0.77832959 -2.4491091\n",
" -3.02572267 2.6375055 -0.2109908 1.13853108 0.6878872 0.57084328\n",
" -2.74815259 2.70173216 -1.45190944 -2.24629366 -1.34180263 -0.48580164\n",
" -2.07407932 1.58102181 -1.59797723 -4.20576404 2.1456758 3.07448309\n",
" 1.54002326 -1.87880324 0.25863007 0.06354703 1.44387121 0.49650337\n",
" -1.71705587 1.72532705 -1.25639259 -1.82990847 -0.52930183 3.28865123\n",
" 1.45202949 3.87904908 0.95903456 -5.2874864 1.30636171 0.1713203\n",
" 2.9788732 -0.24537606 -1.20144611 2.75587874 -2.91344438 -0.91356071\n",
" -3.3168606 0.656052 1.07213068 4.88266219 -1.58633897 -4.95750427\n",
" 5.38338779 1.97152254 2.84718135 0.14270053 -2.57652169 0.02529239\n",
" -1.20430733 1.61113017 3.5271165 -1.33750508 -4.77286654 -2.19094813\n",
" 2.43085302 2.18983571 0.96776338 3.11733059 -0.91648569 -0.35552014\n",
" 2.97860231 3.13835255 -3.50978615 -0.24356031 2.29700219 -0.59479534\n",
" -2.83563251 -1.14583753 -0.83433253 -2.40808125 -2.18609459 -2.03333536\n",
" 2.34336262 1.14367325 -3.03994322 -0.85698361 2.79662773 -0.24916368\n",
" -2.79444377 -1.41988038 1.12754236 2.7351155 0.58898597 3.06723469\n",
" -0.67660597 -2.52699471 1.44099949 -1.732472 0.91489153 -1.61333175]\n",
"Train with data prior to: 2012-09-30T00:00:00.000000000 (252 obs)\n",
"(244, 10)\n",
"[-3.11863481 -2.14152072 -1.62505364 -1.31848715 1.24116385 -3.24279151\n",
" -2.34671311 -3.78254107 0.75885574 -0.43769352 -1.12801695 -0.2832084\n",
" -0.03804781 -0.31223047 -1.02779663 -1.58255864 1.93368689 -0.37728965\n",
" 0.02272039 -2.72907601 -1.19148621 0.35002048 2.54072663 -1.2715933\n",
" 2.68300473 0.48638914 2.45942635 1.94693101 2.71024889 0.56147194\n",
" -1.18669695 1.42831044 -0.66160528 0.11337726 -1.91930162 2.90932781\n",
" 5.63043195 -0.53662982 0.18817981 -0.73460025 1.1948817 2.1866827\n",
" -1.44011434 2.55183508 -0.17297152 0.38986292 1.12669964 -2.06927591\n",
" -2.98676388 3.72702775 -1.18311236 -0.24401372 1.65261595 1.28213212\n",
" -0.32168474 0.76915165 4.05261813 -0.95357267 1.82244446 -1.13973352\n",
" 0.78695665 3.70253555 0.8642741 -0.82575537 -3.21389801 2.68854748\n",
" -1.39009226 3.2351808 -1.29901187 0.84381105 -0.45005025 0.39236672\n",
" -3.03331984 -3.36378968 0.88059084 -1.04458818 -1.26599473 1.23390972\n",
" -0.23996773 -0.21770728 -3.76197735 0.9258118 1.39351808 -4.94756291\n",
" 0.85061517 2.45767637 0.26456316 2.67663537 0.17922539 -2.37083728\n",
" 2.40852643 0.51010673 -2.03326347 0.47850688 -0.811406 -0.81118137\n",
" -3.37667587 -2.13862493 -2.02764333 0.1124547 -4.55408863 -3.19152641\n",
" 0.16504413 2.18222756 1.70776821 -3.73093429 -1.40111839 0.82835906\n",
" -2.32804229 -0.98997695 0.93965755 -1.5141715 3.10615825 1.07583961\n",
" 0.18419453 0.56363121 4.34430097 -2.33808133 2.54011028 0.07787488\n",
" -5.53213133 -0.69862958 -2.66372079 1.58392125 1.02281055 -1.48524193\n",
" 0.50342309 0.17996882 3.20723525 0.33245725 0.94696855 3.78569558\n",
" -2.22215863 0.82587743 -1.61628644 -2.43556718 -1.16862164 -1.38251121\n",
" 4.46940027 1.08889859 1.0418765 -1.5993793 1.47117313 0.96743989\n",
" 4.66359579 -1.07910842 0.21011096 3.09841227 0.82483052 -3.97803871\n",
" 1.26385875 -2.57122409 1.50616011 -3.1340636 3.31691887 4.6087851\n",
" -2.70043169 -0.5941126 1.26945225 -0.09717446 2.16806333 4.35900947\n",
" 2.60035764 -0.80176868 -2.07179841 1.2346018 -3.4586638 -0.18225555\n",
" -0.75914589 -0.59647454 -2.33092395 -1.40406813 -3.01711969 2.8217445\n",
" 0.09262644 -0.19176192 -2.4612124 2.42749027 -3.10223904 -3.21888368\n",
" -0.8920591 -1.39287602 2.73485628 -1.26202309 -1.98503113 -1.49129436\n",
" 2.52494341 -1.8180879 0.08333404 -1.77838875 0.89391768 2.92059327\n",
" -1.47501122 0.24705073 4.20558694 -2.88418693 -2.17741084 -1.85347146\n",
" -1.16879029 1.90054826 0.33185041 -0.94020159 2.06823529 1.24555035\n",
" 2.70952405 -1.69617115 0.07234562 0.55166981 0.70522383 -0.9098935\n",
" -0.48389546 0.0945737 2.31888852 -1.61975247 0.20621464 0.58819283\n",
" -0.24241853 2.16438936 2.01078461 -0.92952745 0.56536878 0.27217631\n",
" 0.81921108 1.63579392 -1.44529425 2.99328518 -0.6683935 2.73009647\n",
" 0.11499431 -3.34561267 2.02093533 -1.10217737 -2.05808327 -0.77300459\n",
" 1.27932348 1.20565203 -2.11518129 -1.21100588 -0.60942715 -2.22042911\n",
" 0.7854547 3.22987856 1.17301636 4.32059881]\n",
"Train with data prior to: 2012-12-31T00:00:00.000000000 (244 obs)\n",
"(244, 10)\n",
"[ 7.85454699e-01 3.22987856e+00 1.17301636e+00 4.32059881e+00\n",
" -1.02500197e+00 5.21508017e-01 1.19221194e+00 1.20030493e+00\n",
" -2.78791414e+00 2.01090319e+00 -1.05657897e+00 -3.10132828e+00\n",
" 2.04729623e+00 1.75967000e+00 -1.30533682e+00 -4.39635261e+00\n",
" -3.28545522e+00 1.39588752e+00 1.33790850e+00 3.18339690e+00\n",
" -3.38091538e+00 -7.86128279e-01 -3.89161969e+00 -4.65249134e-01\n",
" -3.21238289e+00 1.94045180e+00 1.90641029e+00 2.46595085e+00\n",
" -1.47077637e+00 -1.60907676e+00 3.40951653e+00 2.50352302e+00\n",
" 1.49886946e+00 2.83780303e-01 -3.61858653e+00 -2.45281341e+00\n",
" 8.94713792e-01 -1.43694319e+00 8.24600165e-01 4.52295452e+00\n",
" 6.54577895e-01 3.20453728e+00 2.65692294e+00 1.28349266e+00\n",
" -1.61412908e+00 6.21278095e-01 2.56752506e+00 7.90084921e-01\n",
" 4.62140551e-01 7.64384925e-01 1.10310578e+00 7.40209769e-01\n",
" 4.14210605e-01 -2.67085952e+00 4.04832174e-01 -2.91353996e+00\n",
" 3.52044067e+00 -2.60636107e+00 -1.28615052e-01 4.11618121e-01\n",
" 2.71444017e+00 1.03878681e+00 3.33395215e+00 2.98682981e+00\n",
" -1.38424548e-01 -1.41025542e+00 4.28464019e-01 -4.09853828e+00\n",
" -3.04253811e+00 -9.73181305e-01 -3.81507924e+00 1.10738396e+00\n",
" 2.02057140e+00 1.03145061e+00 4.04448106e+00 -2.18842370e+00\n",
" 1.60687581e+00 -1.15502168e-01 -3.18707903e+00 2.83745210e+00\n",
" -5.18578201e-01 -3.70825771e+00 -4.14731014e+00 -4.77143516e+00\n",
" 7.14194920e-01 -6.33668615e-01 3.05569318e+00 -1.69065921e+00\n",
" -1.07406020e+00 1.23766889e+00 3.09127668e+00 1.40974261e+00\n",
" -5.16895494e-01 -1.08479425e+00 -1.64364218e+00 3.95414147e-01\n",
" -4.58013828e-01 -2.35458490e+00 3.54596001e+00 5.97714653e-01\n",
" 1.94417145e+00 3.99906013e+00 2.19354811e+00 -2.31047871e+00\n",
" 8.74926856e-02 -2.55164298e+00 2.06053951e+00 -7.45083349e-01\n",
" 1.75452603e+00 7.48827043e-01 -1.71104102e-02 2.49155217e+00\n",
" 3.00554706e+00 2.70619869e-01 -1.20993210e+00 6.84872759e-01\n",
" 1.95793718e+00 -1.89536985e+00 -9.05630567e-01 7.91485732e-01\n",
" -2.41671474e+00 2.06699107e+00 4.39602064e-01 2.88029130e+00\n",
" -1.53494626e+00 -1.65074495e+00 -1.59651719e+00 -5.35204363e-01\n",
" 7.40464367e-01 -2.63730201e+00 2.85145591e+00 -1.22019396e+00\n",
" -1.52128921e+00 -1.22911130e+00 2.81670562e+00 1.55738380e+00\n",
" 1.29163172e+00 1.19266178e-01 -5.87443580e-01 -2.58685417e+00\n",
" 2.35100272e+00 -2.22814193e+00 -1.83915886e+00 3.34097594e+00\n",
" -6.81529855e-01 -5.51669638e+00 -3.57923421e+00 -3.50765845e+00\n",
" -3.91581010e+00 -2.63713682e+00 -8.68527848e-01 4.21602070e+00\n",
" -4.31416170e-01 3.24473812e+00 2.53353290e-01 9.96780594e-01\n",
" -2.62411261e+00 -3.72550011e+00 -2.10670022e+00 -6.94098793e-01\n",
" -1.84149799e+00 -2.35240356e+00 -1.80152633e+00 -2.34861414e+00\n",
" -2.48224913e-01 1.29659668e+00 -2.29507206e+00 -2.91694112e+00\n",
" -6.11458200e-01 3.05759084e-01 -6.76624889e-01 -7.86033506e-01\n",
" -2.25424239e+00 -5.24436196e-02 -1.50141303e+00 -3.55925341e+00\n",
" 2.34963377e+00 6.82655904e-01 -3.10804833e-01 2.56840076e+00\n",
" -3.35649332e-01 -6.50490177e-01 1.66339725e+00 -4.29164309e+00\n",
" -2.01294455e+00 3.32137497e+00 1.11029166e-03 -5.16927599e-01\n",
" -8.47573079e-01 -3.95797771e+00 -1.18191585e+00 1.16513648e+00\n",
" 3.16674608e+00 3.93054849e+00 -2.22998855e+00 -2.46885490e+00\n",
" 3.30399119e+00 2.73351059e+00 -2.34852396e-01 -3.87470161e+00\n",
" -7.37744735e-01 1.76202418e-02 -3.76133074e+00 2.93943193e+00\n",
" -9.50659901e-01 -5.10304830e-01 -2.83188958e+00 8.28385406e-01\n",
" 2.40035491e+00 -8.27951645e-01 -2.07863201e+00 4.30807581e+00\n",
" 1.58377781e-01 -1.44936299e+00 -1.98512598e+00 4.15145742e-01\n",
" -2.42637889e+00 -5.30670180e+00 -4.96647400e-01 3.45474135e+00\n",
" 2.20783763e+00 -5.31818913e-01 -3.27352514e+00 4.76654580e+00\n",
" -2.44730168e+00 5.15912133e-01 3.35472103e-01 -2.76341852e+00\n",
" 5.07523461e-01 -9.37068932e-01 1.17268011e+00 -4.01930268e+00\n",
" 1.29197512e+00 -1.94007407e+00 -2.37030445e+00 -1.04361364e+00\n",
" 2.28657570e-01 -1.55654894e+00 1.91009986e+00 -1.21546689e+00\n",
" -1.58107239e+00 -2.66801616e+00 -2.65366168e+00 1.58347205e+00]\n",
"Train with data prior to: 2013-03-31T00:00:00.000000000 (244 obs)\n",
"(256, 10)\n",
"[-3.10423379e-01 1.49063764e+00 -2.78216771e+00 8.20893219e-01\n",
" 2.42808918e+00 1.83885812e+00 -2.11267084e+00 1.21099964e+00\n",
" 6.55186404e-01 -9.45845283e-01 1.31856061e+00 -2.03769045e+00\n",
" -5.19130401e+00 -6.57753265e-01 -4.30646799e+00 1.77184133e+00\n",
" -1.40609668e+00 -2.81719334e+00 7.57071142e-02 2.66692443e+00\n",
" 3.11793330e+00 -1.29757942e+00 2.06298104e+00 3.16217945e-01\n",
" 1.43116656e+00 -2.54813370e+00 1.73639876e+00 1.64963570e+00\n",
" -1.74632442e+00 2.87711214e+00 -1.10689533e-01 -2.99355405e+00\n",
" 8.08717154e-02 -7.20552049e-01 -1.85461042e-02 -2.29221061e-01\n",
" -4.25729314e+00 -2.76457849e-01 4.90158256e-01 -6.33597266e-01\n",
" 2.40150678e+00 2.36836817e+00 1.77149229e+00 -8.34496733e-01\n",
" -1.60346308e-02 7.85649621e-01 1.79526379e+00 -1.85830697e+00\n",
" 2.78311115e+00 -1.60865674e+00 -4.28399686e-01 -3.09534380e+00\n",
" 7.04959306e-01 -3.62047580e-01 3.15769453e+00 -1.41576332e+00\n",
" 3.98273996e-01 -9.48547240e-01 -3.68312469e-01 -2.86347474e+00\n",
" 4.63880717e+00 1.86755969e+00 -1.21630526e+00 4.37921717e-01\n",
" -2.99527231e+00 2.28948717e+00 -5.93074511e-01 -1.72146396e+00\n",
" 1.64875348e+00 5.27236205e-02 6.11256251e-01 -3.08625327e+00\n",
" 8.47251086e-01 3.75955737e-01 1.38988585e+00 -2.42112641e-01\n",
" -2.20431424e+00 -1.01063387e+00 -1.16257187e-01 1.56083525e+00\n",
" -2.30099070e+00 1.07095348e-01 -5.14027622e-01 1.39148546e+00\n",
" -1.67538907e+00 -2.16759435e+00 -5.00737969e-01 2.93659460e-01\n",
" -2.20971360e+00 -7.61407986e-01 -4.04152958e-01 5.43006545e-01\n",
" -1.76510530e+00 -1.11709174e+00 -2.94243504e+00 -3.24219234e+00\n",
" 1.56240942e+00 1.76540712e+00 -2.04328601e-02 -1.58759427e+00\n",
" 1.79980930e+00 -1.01963740e-01 2.59516234e+00 3.30711263e+00\n",
" 3.33545884e+00 2.32514446e+00 6.60195453e-01 -2.98820047e-02\n",
" 4.94968674e-01 -1.28766437e+00 5.14067405e-01 3.97622933e-01\n",
" -3.49002417e+00 3.22681190e-01 5.27251729e+00 -3.38880905e-01\n",
" -1.38586429e+00 1.37295325e+00 5.38980580e-01 3.39000761e+00\n",
" -1.14696415e-01 4.57028839e+00 -1.55641292e+00 -2.64547711e+00\n",
" -2.46399347e+00 1.22495774e+00 -1.00349208e+00 7.41343831e-01\n",
" 6.76544365e-01 2.91721372e+00 -3.12928288e+00 4.83126376e-01\n",
" -4.51111289e+00 -7.14305302e-01 -1.87270579e+00 3.57408345e+00\n",
" 2.34368995e+00 -3.22214638e+00 -1.19520059e+00 3.97003408e-01\n",
" 8.63058518e-01 1.18852232e+00 3.24964684e+00 -1.70547424e+00\n",
" -5.04654799e-01 -8.55621847e-01 -8.13108504e-01 8.06261489e-01\n",
" 1.92270221e+00 3.79960606e-01 3.11743256e+00 -1.02531804e+00\n",
" -3.72823645e+00 1.67908825e+00 1.10114400e+00 6.98170737e-01\n",
" -1.43010610e+00 3.13117759e+00 6.83627267e-01 1.57613672e+00\n",
" -8.17041736e-01 2.51507469e-01 -5.51135055e-01 5.81775087e-01\n",
" 1.97952867e+00 1.08336909e+00 -2.68774334e-01 -2.85066251e-01\n",
" 2.19297212e+00 6.23009009e-01 3.29403048e+00 -7.87981424e-01\n",
" 1.85969506e+00 -1.66288640e+00 -8.61945431e-01 1.61451730e-01\n",
" 3.95704976e-01 3.44973502e+00 -4.12988247e+00 1.21381509e+00\n",
" -4.36647171e+00 -2.10893462e+00 3.91076899e+00 -1.89196950e+00\n",
" 1.20589407e+00 -1.36809331e+00 8.34547552e-01 -2.08456986e-02\n",
" 1.54871170e+00 8.97880808e-01 3.51635073e+00 4.08995556e-01\n",
" -1.22812462e+00 -1.92004618e+00 -1.84486334e+00 2.17820251e+00\n",
" -3.07520960e+00 -2.57803111e+00 -1.23011578e+00 2.45875943e+00\n",
" 4.45560124e+00 4.99023973e-03 8.05488444e-01 -4.73766304e-01\n",
" -1.58229444e+00 -7.02565003e-01 2.76309752e+00 -8.04877415e-01\n",
" -3.53021732e+00 2.76039127e+00 -1.29925767e+00 7.91040049e-01\n",
" -3.32059068e+00 -3.01771285e+00 8.04035176e-01 -4.71644604e+00\n",
" -1.98959543e+00 -1.23278776e+00 -3.58626708e+00 9.27096278e-01\n",
" 2.25973770e+00 -2.82093920e+00 -1.47597032e+00 3.01844863e+00\n",
" -9.69483695e-01 7.78241310e-01 2.92044864e+00 2.24570244e+00\n",
" -1.88162727e+00 5.79166526e-01 -5.02228482e+00 -2.90883536e+00\n",
" 2.39627239e+00 2.24053612e+00 2.42676372e-01 -3.96476229e-01\n",
" 3.05587456e+00 3.45652615e+00 -3.79867693e+00 4.23301387e+00\n",
" -1.64536072e+00 2.46978988e+00 -6.44398971e-01 -4.75000535e-01\n",
" -2.71562395e-01 -1.69924498e+00 6.44762053e-01 5.47852670e-01\n",
" 2.31380454e+00 -1.76353926e+00 -1.01579341e+00 -3.00114496e+00\n",
" -4.16669729e-02 -2.08437574e+00 -1.44180104e+00 -2.38752732e-01]\n",
"Train with data prior to: 2013-06-30T00:00:00.000000000 (256 obs)\n",
"(252, 10)\n",
"[ 2.45189325e+00 -2.55841098e+00 -6.29027682e-01 1.70181911e+00\n",
" 9.40253016e-01 -1.42735034e+00 -3.51300860e+00 -1.89751449e+00\n",
" -1.43828713e+00 -2.27754936e+00 1.92855412e+00 -1.08397687e+00\n",
" 5.93538352e-01 2.56135165e-01 3.22372855e+00 2.41385122e+00\n",
" 9.20009988e-01 2.33617040e+00 -2.16824799e+00 2.77447270e+00\n",
" -2.08520133e+00 -1.05519409e+00 -1.61030374e+00 5.83631254e+00\n",
" -5.11706081e+00 -4.70240039e-01 -3.44411474e+00 -6.48348186e-01\n",
" 1.62707283e+00 -2.98906179e-01 1.01658478e+00 2.30649435e+00\n",
" -3.43214228e+00 1.48220823e+00 1.15168948e-01 5.89941265e-01\n",
" -2.30172737e+00 3.00627313e+00 -1.22996105e-01 -1.10501463e+00\n",
" 1.55790760e+00 2.22836177e+00 1.59627665e+00 -1.67890981e+00\n",
" 5.23712707e-01 -1.11709599e+00 -4.01527057e+00 2.47026519e-01\n",
" 1.88787428e+00 2.99139369e+00 5.26040268e-01 -1.87087044e+00\n",
" 2.33464713e-02 -1.06809197e+00 -3.68254517e+00 -1.63014695e+00\n",
" 2.07769032e+00 6.74775503e-01 -1.75196976e+00 1.18306942e+00\n",
" 2.84441221e+00 1.77734500e+00 1.87650886e+00 1.47004915e+00\n",
" 3.34492532e+00 1.79764909e+00 2.70526463e+00 -3.93290757e-01\n",
" 3.43322579e-01 -1.97459137e-01 2.78204634e+00 2.20665241e+00\n",
" 2.37746204e+00 1.90760539e+00 -1.37965239e+00 2.97467283e+00\n",
" -1.94263383e+00 5.64210154e-02 -1.98861099e+00 -4.42796781e+00\n",
" -5.18433300e+00 1.48782447e+00 2.41029826e+00 -3.49062630e+00\n",
" 1.84532128e-02 2.86579012e-01 2.06549624e+00 7.15881598e-01\n",
" 1.90272337e+00 2.48950320e+00 -1.68286339e+00 -1.85882686e+00\n",
" 1.91309386e+00 7.41220241e-02 2.10187012e+00 -3.49173930e+00\n",
" -1.27195225e-01 3.95994239e-01 -3.54993319e+00 -3.01730357e+00\n",
" 2.34210174e+00 5.01484006e-01 -1.65759079e+00 1.56531564e+00\n",
" 2.24569187e+00 1.46717128e-01 -2.98920021e+00 1.29724716e+00\n",
" -1.65097508e+00 3.11831217e+00 -2.27471184e+00 -9.53264711e-01\n",
" 4.24667091e+00 3.41426940e+00 1.56707935e+00 8.12545250e-01\n",
" 1.01196440e+00 -2.12196305e+00 -1.42215284e-02 2.57215029e+00\n",
" -6.82244873e-01 -3.20140785e+00 -8.51122136e-01 -1.86936922e+00\n",
" 1.21779135e-01 7.40953347e-01 9.53310505e-03 -3.11820996e-01\n",
" -4.04799607e+00 -2.64503029e+00 -6.43488278e-01 2.34827227e+00\n",
" -8.21226426e-01 1.03618734e+00 2.05290966e+00 1.85181495e+00\n",
" 2.62045997e+00 -8.18516845e-01 -1.80874177e-01 -1.31957613e+00\n",
" 4.06977303e+00 2.36438814e+00 -2.84479767e-01 -1.14971359e+00\n",
" -1.19750542e+00 -1.99884863e+00 7.05531874e-01 2.04941718e+00\n",
" -2.53202474e+00 -8.27054279e-01 -2.76575330e+00 6.31380060e-01\n",
" -2.46094136e+00 2.10581173e+00 2.09057314e+00 -2.27726460e+00\n",
" -1.16854645e+00 1.01272117e+00 3.44942873e+00 4.61973899e+00\n",
" 8.36639518e-01 3.59738564e-01 4.01372142e+00 -8.50716874e-01\n",
" 3.07962679e-02 -7.58944079e-01 1.39619169e+00 -4.56031888e-01\n",
" -6.22365388e-01 4.38651228e+00 -1.32671476e+00 -5.03407163e-01\n",
" -5.17932254e-01 2.34683485e+00 3.18974602e+00 -1.42547429e-01\n",
" 2.58551097e+00 -1.69573174e+00 2.58700167e+00 -2.56677114e+00\n",
" -4.39446609e+00 -4.01607034e+00 3.50416657e+00 2.43847071e+00\n",
" -7.14480186e-02 -7.91243807e-01 -7.08857921e-02 -1.26841646e+00\n",
" 1.55228954e+00 -1.21395241e-01 -1.18505934e+00 9.28667000e-01\n",
" 1.62469442e+00 6.22870543e-01 8.57231040e-01 7.12169152e-01\n",
" -5.42895565e-01 -3.42108970e-01 -1.34880059e+00 1.81935124e+00\n",
" 1.76905997e+00 1.39847378e+00 -1.64705287e-01 -2.40262232e+00\n",
" 1.19636980e+00 -2.27816570e+00 -1.86898846e+00 1.54415328e+00\n",
" 4.05733050e-01 -1.15487900e+00 -1.70674395e+00 5.91854197e-01\n",
" -2.96032214e+00 -1.02557217e+00 2.50467413e+00 2.23674210e+00\n",
" 1.36462441e-04 1.21245150e+00 1.44286857e+00 -1.40857727e+00\n",
" 2.02964846e+00 2.80787318e-01 -2.67426353e+00 -4.02534501e+00\n",
" 1.93818613e+00 1.45263975e+00 -6.43888079e-01 -5.71060492e-01\n",
" -2.59487852e+00 -2.27070699e+00 4.52798221e-01 -1.93807239e+00\n",
" 2.54666903e+00 5.00091572e+00 -4.10682935e+00 -1.77775184e-01\n",
" 2.40786927e+00 -4.34960788e+00 -8.93875239e-01 3.99905579e+00\n",
" 1.20617370e+00 -2.03223939e+00 -2.26948322e+00 -6.81209012e-01\n",
" -1.44342061e+00 -4.29821160e-01 3.44401615e+00 8.74383703e-01\n",
" 2.48794350e-02 7.06499651e-01 4.54337477e-01 1.02124915e+00]\n",
"Train with data prior to: 2013-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-0.23276187 -0.36117792 -5.36980562 2.75609471 1.9708718 -2.10099263\n",
" 1.13295744 2.78030762 -1.80083 -2.54362271 -0.10502928 -0.40471074\n",
" -1.06924708 -1.8565876 0.39080726 2.84345426 0.56089609 2.65780109\n",
" -3.53151442 0.82287113 -2.57272217 -0.41700326 -0.17819195 1.62463801\n",
" 0.27006392 0.53159117 -2.0214959 -2.32178792 1.05520556 3.22282818\n",
" -1.49259561 3.27263286 1.44635084 2.41972231 0.71835604 1.79476505\n",
" -0.06140526 0.92690662 2.883293 -2.01369624 -4.06935402 1.05477961\n",
" 1.82484981 -0.49036087 -3.58207879 -1.77188925 -1.28867582 1.30482162\n",
" 0.38812758 -0.70421083 -3.60730632 -3.31876381 -3.18229818 2.25295872\n",
" -3.22237932 4.06308671 0.62942712 -0.69708416 -5.48177568 -2.16903696\n",
" 0.14264803 0.68485394 -0.06053794 3.75617923 -3.26124543 -1.11584297\n",
" -2.40461291 1.86248323 -3.51855519 0.30551811 -2.78304054 -1.12813105\n",
" 1.99599421 -0.42713234 -1.86508533 0.97814687 -3.63234032 -4.53610589\n",
" 4.62643768 0.39686093 -2.16892485 1.97344293 1.25201496 1.42208377\n",
" -0.96703736 -1.07378006 -0.29558432 1.90708638 2.23195653 1.27112367\n",
" -2.72008323 -1.60319433 3.2382675 -0.8203882 -4.96571343 0.01703499\n",
" -0.83306715 2.44083648 0.25081387 -4.96102945 1.6001987 -0.93885664\n",
" -1.38674475 -0.1824514 0.38055157 -2.58441687 -1.59413828 -2.2087351\n",
" -0.39507019 -0.22232445 1.87099738 1.65629201 2.62753541 -1.43401215\n",
" -1.35332707 1.694398 -4.68879559 -1.47726398 0.80459957 0.40975197\n",
" -1.14265074 -1.59779049 1.58105635 -2.31931543 1.67366796 -1.0414084\n",
" 0.14065786 -0.46557209 -3.32963008 0.10533205 -3.1001652 -2.55371403\n",
" 1.94578004 -4.19610655 -0.02754947 -0.98597901 -0.62110246 -1.61208337\n",
" -0.37318178 1.28051552 -3.9230124 3.17953937 -0.24410186 1.58089723\n",
" -3.5528884 -4.24587712 0.23269714 4.13275603 1.00176019 0.84636412\n",
" 2.19462448 -2.19852303 -0.62978318 -2.4791235 2.95035683 -0.61247655\n",
" -1.58409509 1.44885163 -1.18917926 2.5211178 1.06814537 -3.32354236\n",
" -1.06270537 1.74069872 -0.4737863 -2.81858455 0.62950433 -3.21734415\n",
" -2.74753148 -1.34420718 2.72498094 -3.08509494 3.83775114 -0.33154039\n",
" -0.81631013 -3.87020483 -0.401817 0.56694604 4.13624429 -3.36417906\n",
" 1.52475877 2.21503718 1.19633976 2.00363944 3.28619136 -1.26959822\n",
" -2.45014613 0.12336812 -1.68681897 1.53160004 -3.65331532 1.99068806\n",
" 0.68477324 -3.36554183 -0.28408067 1.43928822 -1.35466556 -1.294893\n",
" -2.58629455 0.13836937 -6.70457477 -1.93806001 -3.06752211 2.13313152\n",
" 2.55624589 2.27284502 0.70283302 -0.40064469 -0.68420545 -3.5706186\n",
" -1.53271719 -1.63370948 1.80446402 -2.96838178 2.98563415 -2.80104328\n",
" 3.14606938 0.29947391 -2.01772033 4.969802 -2.12115541 -1.22998736\n",
" 2.32674562 2.10915336 3.55852618 -2.27676879 1.50310093 2.95640699\n",
" -1.01890041 -1.31012218 -2.31992652 2.25065763 -0.14157363 1.67927687\n",
" 1.57097484 2.20379597 -0.36740365 3.95161542 -0.57894811 2.98113047\n",
" -2.5567144 -1.09545996 -2.48810704 0.59789363 2.60796653 0.37149851\n",
" 1.24033996 0.4770059 2.65028645 1.04073609 0.85678255 1.54190749]\n",
"Train with data prior to: 2013-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 2.65028645 1.04073609 0.85678255 1.54190749 -1.42534806 -2.86169966\n",
" -0.26561737 0.74317489 -1.1279091 -2.80529393 2.58291615 3.44828402\n",
" -2.56904156 0.81608015 -0.04079967 0.93269092 2.32876527 -0.165239\n",
" 1.53441021 -0.93496543 4.16944149 1.5830515 1.83388223 1.57018722\n",
" 0.88523877 -1.23962148 1.85077387 -1.77564038 0.43795445 2.80593145\n",
" -2.49241211 2.31322944 0.91915367 0.53757335 3.07039133 0.33751617\n",
" -0.23590013 1.98462078 -0.0829091 1.52202514 -0.65920082 -1.34124447\n",
" -1.72670967 -2.56603181 0.63106373 -1.42668261 5.25069203 0.5551988\n",
" -1.58033073 -0.29443284 -2.94634835 -0.07814191 -2.0029792 -0.52563959\n",
" -2.571035 -1.47849903 -2.89713577 4.37286949 -1.34122813 -0.46617116\n",
" 1.65938988 1.08803054 -0.64997821 -1.3022897 -0.42140668 -3.54107877\n",
" 0.34455796 1.50115324 -2.07569153 0.70520713 1.19600738 1.32744789\n",
" 0.77786415 3.61384911 2.35641025 1.47196521 -0.96796779 2.98276371\n",
" 1.40020291 1.37298953 1.30934852 1.2582418 -1.40304499 -0.77822109\n",
" 2.23608829 2.06665179 1.72391592 -1.21239636 -3.93661607 -3.13420559\n",
" -0.57738395 0.73885786 0.06395479 3.63752379 -0.11010271 0.37402693\n",
" -2.15941332 0.14131538 -4.88856363 -3.40046625 -1.95220538 0.32664598\n",
" -1.90957969 1.17459168 -1.95675413 0.03548865 -0.4148194 -2.35053486\n",
" -2.77707899 2.99490842 0.4545309 0.73855857 3.20839065 0.53234561\n",
" -0.87808356 -0.25632595 2.15626876 3.73664109 2.47825151 -2.45602636\n",
" -1.11207421 0.98481015 1.25736213 1.32917155 1.65078804 3.21404955\n",
" -0.49050948 1.89310665 -0.3246943 -3.1734762 -0.0182526 0.38899903\n",
" -0.81722385 0.18603577 1.54524808 1.33802024 -0.34240474 2.18028961\n",
" 0.52635253 -2.66378006 -0.48065113 -2.564291 1.22962042 0.12745466\n",
" 3.06425636 2.00682621 3.0475846 -0.20615328 -2.02244341 1.01418346\n",
" -2.48828647 2.18183534 -2.4760881 -3.9854922 1.5762797 1.75385185\n",
" 3.79730337 1.21895888 -3.02435193 0.38135205 -3.78085481 -1.24258035\n",
" -0.37795878 -2.24381818 2.3302428 2.04978826 1.6791978 -1.41384567\n",
" -4.22763519 -2.0600381 1.44894766 4.9326893 -2.30031637 1.92560575\n",
" -2.37684814 -3.4105704 -1.31232077 -0.29920635 0.71914399 -1.34760158\n",
" -0.81431624 0.95148066 -4.13822954 -4.16443768 5.20620304 1.45920738\n",
" -2.41994096 -0.25125763 0.14757044 -0.49436383 1.82477698 1.2761733\n",
" 1.87660534 3.56836122 -1.27377442 0.08526019 -0.9503908 -1.22997233\n",
" 0.09887023 3.00202594 0.06881862 3.00343446 2.23284583 0.13051183\n",
" 0.64453202 -1.79515684 1.58343532 0.97040477 2.28298514 -2.52979383\n",
" -3.53323356 -0.71891423 -3.22955976 -1.36797254 2.20796192 -1.21649252\n",
" -1.69440962 -2.7778675 -0.91491596 -1.37125523 1.61219508 2.76291139\n",
" 0.60618411 -0.6931215 0.58531645 -0.63109615 1.05289422 0.81574459\n",
" -2.5533921 1.50419412 0.09666538 0.5330089 -1.14459152 -1.87463189\n",
" 3.3256948 -3.79039425 0.91199089 2.03764336 3.51081332 -2.28837413\n",
" 1.20646337 -3.43926868 1.43403851 -0.52910205 0.08069126 1.04166344\n",
" 0.52599245 3.74901573]\n",
"Train with data prior to: 2014-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[ 1.03646002 -1.53655754 1.54267274 -6.00473547 -1.29690507 4.77954613\n",
" 0.6000666 -3.98607036 -1.60305354 -0.47044061 -2.38736785 -0.4200242\n",
" 1.16966085 3.21569739 -2.57519453 4.29499353 -0.84637049 -3.9537566\n",
" 1.82283396 1.05388049 0.97574329 -2.54136113 3.44842115 -3.595173\n",
" 0.67364204 0.40759601 1.22016445 1.99814949 -1.41653211 0.1270679\n",
" 2.08576644 -0.39708042 -3.14815634 3.29287267 1.02643385 3.94453363\n",
" 2.81559176 0.45570306 -2.58674783 -2.3310528 2.51098743 -1.44425271\n",
" 1.14667862 -3.89137118 1.56438564 0.55166207 0.09885717 2.48532037\n",
" -3.82001635 1.95262688 0.43791651 -2.09050485 -5.08471523 -1.48556211\n",
" 3.01246364 -0.70048413 0.37884014 1.51337168 -4.295909 -1.29835394\n",
" 0.84774804 2.2289699 4.18938723 0.9902567 -4.33753632 0.91058116\n",
" -1.41782857 1.41083896 -0.39687009 0.15578678 0.36169215 -3.55075646\n",
" 0.20729292 3.73848422 -0.38577676 -0.44756572 -0.27478714 3.18630426\n",
" -1.71869337 -0.98051334 0.99807047 3.53584242 -0.91010258 -0.5928833\n",
" 3.45930925 -1.82960665 2.83920838 4.26439017 -3.16995979 -0.19883823\n",
" -3.93203894 -2.15100068 2.21603903 -2.60343738 2.07505733 -1.0347439\n",
" -1.75827257 1.6243541 1.34025733 -1.62262246 -0.9892158 -0.24703729\n",
" -0.5140495 -1.69567483 -1.8668532 -1.76153831 1.36031731 -0.42130849\n",
" 1.9115333 -3.13525644 -2.00597897 1.94522356 0.21829688 1.00205425\n",
" -3.09339224 -2.70035831 -1.54480151 -1.81362485 2.30279917 -3.58965884\n",
" 4.34666902 -2.81975381 -0.86138659 0.14578375 -0.83972848 2.08454621\n",
" -3.42976235 4.22512964 1.41728657 -0.96933453 2.11926178 -3.1819513\n",
" -2.9092509 0.34949384 -3.3704901 0.26545785 -5.93008329 0.24061035\n",
" -0.0573682 2.77638391 3.72262336 1.32696053 -1.68228729 0.25093991\n",
" 1.09362788 -2.30862109 -3.04620068 -2.11544591 2.5761235 1.2813221\n",
" 2.51614866 4.55393033 -4.35203758 2.94765379 1.83291652 -3.38918667\n",
" -3.61000705 -2.13248406 1.01101833 0.49146983 1.32693908 -2.25650664\n",
" -1.57923073 -2.45077045 1.5767886 0.89452184 2.48179022 2.12713167\n",
" 2.45007759 1.55004307 1.15095396 -0.19727208 1.21138781 0.87493311\n",
" -0.85332028 -0.35866205 0.86227067 1.39473161 3.56724324 -2.05363769\n",
" 2.18797244 -2.07247927 -2.88435832 -1.20099324 -2.66783377 -1.69087035\n",
" -0.28804658 -0.26576245 -1.59310571 -2.04640081 2.32648586 0.71644052\n",
" 1.80404666 -0.14155976 -1.98865618 -3.65126186 3.8014312 1.01374768\n",
" -1.98411958 -0.50828312 1.88014082 1.18405177 -2.29190135 -2.27011581\n",
" -1.00875737 1.00556783 -1.62254029 -2.1308679 3.15673774 0.5457167\n",
" -0.89730411 2.16516504 -0.50484505 0.03825157 0.3322463 -4.64809533\n",
" 0.78521673 -4.12694799 -0.88682424 0.86646491 1.54167533 -0.21440364\n",
" 1.55559162 -5.09212443 -3.97604325 -3.08910989 2.54878051 4.36681652\n",
" -3.11765374 1.09428786 -0.84933044 -2.12689678 2.16433183 2.00784482\n",
" 2.28228378 2.36684538 -0.76208509 2.00784674 -1.39833222 -3.42560788\n",
" -0.68738398 1.90655862 3.77123186 -4.35282179 0.5513459 -0.91961392\n",
" -0.2536501 -0.73991772 -1.49180506 0.03938578 -5.78687296 -0.09063791]\n",
"Train with data prior to: 2014-06-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-0.06732493 -2.42156447 4.45845787 -2.3664467 2.24197279 0.45978218\n",
" 0.99517106 1.12147866 -0.09429951 -3.7126647 1.71035146 2.7417449\n",
" 3.39643399 -2.42440595 2.01601515 -2.83962949 3.30443211 0.08939891\n",
" -2.76980912 1.01444706 -3.89565135 0.6296448 1.72211869 -3.15689176\n",
" 0.4721853 1.11841182 4.44678163 0.74670874 -1.55054056 -1.90180526\n",
" -0.07186359 1.5863162 2.93016506 2.14414025 -0.64567031 -0.98018915\n",
" 1.08029671 -2.78372989 -0.94024971 1.62602773 1.32929399 -0.04811665\n",
" -1.5614805 -2.10191821 -0.97957004 2.49927328 1.50022951 2.52276667\n",
" -0.11001579 2.00354199 0.8004744 -3.40770333 -0.6792533 0.31672797\n",
" 1.44636329 -7.0690489 -0.48120594 2.23066797 1.06406422 0.41099599\n",
" 0.9779976 0.86722806 -0.0493476 0.03496055 2.58292974 1.93439963\n",
" -2.74541438 1.04835579 3.53634587 -0.54333898 -1.33870962 1.70525773\n",
" 5.1669868 -1.8687382 -1.12628281 -1.76598944 -3.28859591 1.77729437\n",
" -0.12448497 3.53646414 -1.83641336 -1.95494758 -0.72347067 0.45631935\n",
" -1.70522729 1.75835672 -1.58777077 -0.33665161 -2.18109578 -3.44387139\n",
" 1.17786513 -2.70973151 2.14539158 0.22813619 2.88440984 5.22776702\n",
" 0.863083 0.89222746 1.2890128 2.33863498 -0.25979817 0.94720715\n",
" 2.69088113 -4.05352468 -2.58924626 -1.75713105 2.84825597 -1.24858562\n",
" -1.78074686 1.61796692 0.30040645 3.74814677 2.081124 -3.75585243\n",
" 1.35374282 -2.15446426 0.63288807 1.58602148 2.31634325 1.10775238\n",
" 2.84886684 -2.02676073 -0.56551043 -0.22953214 -3.55001373 1.55822518\n",
" 4.12873306 4.7744299 3.29150483 0.23886126 -1.30641817 1.52670932\n",
" -3.76049302 -3.19041306 -0.96759931 2.66508947 -1.68961193 4.13422871\n",
" -0.14394639 -0.80376402 0.75539908 0.02575042 0.3549344 3.11847052\n",
" -1.74313596 -2.23285463 -1.57138058 2.34405995 3.31324059 0.0082621\n",
" 1.04564693 2.45473211 2.79070773 1.857645 1.89286635 -3.59727105\n",
" 1.76971861 -3.12776528 -1.54845645 -1.22510218 1.946806 3.09814963\n",
" 3.7119284 -1.69802708 -0.24407832 -1.16210316 3.41102477 2.40852669\n",
" 0.63402991 -4.75206776 1.01473732 -1.16633473 -1.54716323 0.93424819\n",
" 0.61900261 -2.22956169 4.486795 -1.76263293 -2.00896455 1.85702367\n",
" 2.99754599 0.8166375 -1.57091682 -1.43569125 -3.61820417 1.26783804\n",
" 1.01012525 3.17420059 0.52542738 0.93490919 5.02845316 0.91436677\n",
" -2.63204624 -0.14358048 -2.54847284 3.0291274 1.80726763 2.9061842\n",
" -0.89979272 -0.23040534 0.50119028 -3.48772226 -2.15583348 0.14957176\n",
" -0.17750826 -2.16383543 1.65045239 0.49588198 -3.35664353 2.45371334\n",
" 1.06454274 -0.51064145 5.49399958 2.09784028 1.1252661 -1.41676367\n",
" -1.82909416 -0.51251085 -0.21546225 0.58698432 -2.21375138 -0.8452155\n",
" 3.38179868 -2.53596149 -1.52630549 0.08108649 -2.48624929 -1.74804549\n",
" 0.26468283 -1.34797397 1.47136263 -1.61918666 -2.81718091 -3.69023628\n",
" -1.52134549 -0.18452803 -0.20304335 1.21658783 -2.27382406 0.6664214\n",
" 2.84627866 -0.88486564 -0.15738256 -1.99389059 3.78515142 1.18221231\n",
" -2.43862456 1.81024234 0.98121307 -2.91176105 -0.40746942 -1.58038935]\n",
"Train with data prior to: 2014-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[ 2.65203886 0.55385466 -3.76376576 -0.99274737 2.10967047 -2.90859194\n",
" -0.77053498 -1.44768079 -2.67429051 2.65113489 -1.70889339 -3.71899766\n",
" -2.14749466 1.39842141 3.03655566 -6.62659428 3.57676158 2.47907821\n",
" 0.942963 -2.96346135 0.38322411 2.82299201 0.9800127 -2.03100157\n",
" 4.44775314 -1.74759085 1.24064353 1.56269079 1.82845903 0.98357339\n",
" -5.26143794 -2.78416288 -0.80476193 1.15621457 2.49354775 2.18542478\n",
" -1.87537762 1.83026636 0.92741731 -1.64832897 1.77835794 3.29965296\n",
" -1.84016158 2.0534422 -0.52909562 0.3797715 -2.49988341 1.76812878\n",
" -2.52047803 6.30775278 -2.05386902 1.29349314 0.80463677 -4.21058024\n",
" -1.24171784 0.10306839 4.24273908 -0.11254952 -0.81339409 3.91372334\n",
" 0.54764542 -1.32462238 2.0122385 1.95800296 -0.66036885 2.31682103\n",
" -2.20239992 -1.90213391 4.58736342 -2.87751071 1.22088855 2.72526514\n",
" 1.07148655 0.67251585 -0.21960969 1.27771951 -2.71121951 -3.0998317\n",
" 0.39104781 -3.80755883 -1.85820052 1.50532991 -0.26585116 0.73752952\n",
" 1.53883279 2.11450755 0.57494943 -2.82291005 -0.26273878 0.15928015\n",
" -0.96517857 3.803728 0.37129139 -0.43607271 -0.39745774 3.83979966\n",
" -2.81584773 0.90047007 3.82339823 -2.07159109 -2.52060705 4.40968988\n",
" 2.68106978 -0.0095477 -1.93664713 -0.59678553 -0.76465288 -2.4198182\n",
" 2.22117711 1.41648382 4.50041934 3.65585766 1.95753506 3.66770008\n",
" 2.29833975 -1.73239553 -4.99582167 -1.1129021 1.71474567 1.18695523\n",
" 3.72648007 -0.53272364 2.40117244 -3.40641376 1.31641894 5.05144236\n",
" 1.07711926 -2.77925256 0.71617042 -2.9729882 -3.19237286 2.48472178\n",
" -0.66830932 -2.0385583 0.5628358 -2.12256618 -0.48839877 4.81359282\n",
" -2.94036711 -2.45029333 1.11349502 2.96738612 -2.21737177 -2.60252051\n",
" 0.97068793 -4.00399524 0.15057887 3.06218042 -0.01723226 1.96751404\n",
" 3.37423594 -0.45848737 2.64066668 2.8463112 0.5764239 2.92243072\n",
" 0.99616478 2.52567377 -1.55390749 2.5564175 0.82181966 -1.4145481\n",
" 0.44468074 -1.17996973 1.46803912 -4.01279647 1.80148652 4.9248324\n",
" 2.19568203 -0.76826308 1.20205484 -1.3905005 1.02508146 3.26077088\n",
" 1.41433762 1.1002823 0.32594645 -2.08323206 -1.19874281 -0.02927776\n",
" -0.28247372 -0.35230721 1.89042756 -1.79224808 1.54758423 -3.86548119\n",
" 0.68499341 1.04372725 -3.66280568 0.01985586 -2.12672826 2.75522226\n",
" -2.16457392 -2.15515363 -0.34049868 4.05964603 -0.81638172 2.20196818\n",
" -1.07161416 -2.58215976 3.08037001 -1.2368638 -0.81338275 3.52193887\n",
" -0.64394483 -0.91211256 -0.75006228 -2.51191716 1.47015616 -0.30599754\n",
" 1.80081191 0.83525942 2.31218559 -1.99018523 1.53608368 -4.30644532\n",
" -2.50323183 -0.783993 1.82921421 1.15656043 2.63332071 -0.3462422\n",
" -0.3607582 1.12769293 0.34717123 3.99690538 -2.41300123 -2.0195778\n",
" 2.10528571 -0.69715192 0.06416363 -1.64041638 2.56923953 -0.85804875\n",
" -4.03053514 1.50822337 -0.0201147 -4.70809578 1.00262947 2.24762003\n",
" 1.07074201 0.55219513 1.64069672 -5.05956505 1.2697474 -4.88881547\n",
" -1.15718808 4.29894073 1.93718691 0.63295475 3.79152413 2.12079076]\n",
"Train with data prior to: 2014-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 1.93718691 0.63295475 3.79152413 2.12079076 -1.91365252 -0.09003302\n",
" 5.5625399 -2.17802567 3.71252414 0.89364567 2.5275463 -0.95567406\n",
" -0.86885179 2.03316468 0.18795943 -0.85027116 0.50520848 -0.23090168\n",
" -0.40272398 1.03464592 2.03887317 -2.34880584 1.31246075 4.46225662\n",
" 2.60775884 -0.13752292 1.62956053 0.00574071 1.66247818 2.07593788\n",
" 2.42675581 -2.38219843 -1.06489727 3.46756133 -4.29956577 1.50927807\n",
" -3.76544858 -0.39441557 0.13974614 -1.94278464 2.56008889 0.87727246\n",
" -0.1456099 0.84694035 -1.55644125 -1.23645962 -3.48992271 -0.14074345\n",
" -2.30217429 -0.38892983 1.75843416 1.86513156 -3.36091117 0.08091657\n",
" -1.88125572 3.71490221 0.72521894 1.26300504 -2.65742063 1.98773173\n",
" 3.61833435 4.0167739 4.01816512 4.64754378 2.3955484 -0.66687725\n",
" 2.5357405 -3.6071934 -1.72948439 0.44331313 1.51459279 -1.2996886\n",
" -2.00239818 1.47471251 1.48025607 -1.26174303 3.13637438 -2.42312973\n",
" 1.73673279 0.82160488 -1.70886895 1.40768801 0.94315402 -2.18012625\n",
" 2.00989237 -2.11840166 1.98960936 -3.86793688 -0.45618679 -1.5919391\n",
" 2.36846382 -0.83131795 1.14691418 0.16463864 -3.71358287 2.70533798\n",
" 0.75507607 2.52362354 -1.78090235 -0.77019887 1.90237146 3.06448111\n",
" 1.33185501 -0.30989501 0.08639097 1.27389169 -1.99817669 -1.69261754\n",
" -2.19241624 -2.96989169 1.84451637 -1.77658196 -1.17414455 1.36155142\n",
" 2.23447816 -2.63221506 3.30530944 4.21523455 2.00012753 1.08014694\n",
" -2.0960114 1.5223659 -0.84763625 -1.65489538 3.12875706 1.45875902\n",
" -0.91111938 0.71921031 -1.67599103 -3.64850816 2.51910855 1.69197437\n",
" 0.33101241 -3.5590215 -0.90683336 0.1001865 1.45086545 -1.14587094\n",
" -0.43940489 -0.35577941 -3.70814646 -1.86929391 -1.13467511 -3.47933762\n",
" 0.77114002 -1.16540018 0.28079012 -2.40275354 2.43000396 2.8446714\n",
" 0.08616818 -0.72831315 -0.35028377 -0.18942333 -1.44258776 -1.01581164\n",
" -0.06274526 -1.30789267 -1.5221442 -2.11409864 -0.9467429 1.23125825\n",
" 2.07076851 1.80496464 -1.15927867 0.60575072 1.81658888 3.8200318\n",
" -1.92011955 2.31484919 0.59742429 -0.77742489 -1.15518206 3.28042478\n",
" -1.74767003 -2.80641223 2.20233446 -1.79173961 -0.7096727 -0.61565608\n",
" -4.30219309 2.47090162 4.41487306 -1.12043599 3.87658482 -0.93416408\n",
" -5.25557079 -3.08496786 -0.21935701 -1.92746739 0.87372143 -2.67542892\n",
" -0.46518222 0.4982337 -2.43704083 1.27011478 4.8964477 2.25421516\n",
" 2.66708448 2.39829281 2.15152503 1.4464579 1.15381189 2.16791449\n",
" 3.15044064 -1.35095624 -1.19047385 -3.20868114 0.23255731 2.06127588\n",
" -2.29527261 -0.97575131 0.83193705 3.36420284 -0.93907643 -1.75633202\n",
" 0.06107416 3.57449915 -0.13676719 4.94764048 0.38842133 -1.34493069\n",
" 2.36985023 2.01972667 -2.48443102 3.4900007 1.76135301 2.43856534\n",
" -2.62379765 2.76339886 0.3155577 -1.02568834 -0.24411138 3.91260268\n",
" -1.41003015 3.84094148 -3.13013077 2.58125261 -2.82867039 -3.08101604\n",
" -0.66277314 0.1657446 0.74506132 0.79444344 -1.8538991 1.06815407\n",
" 1.82752238 1.84109776]\n",
"Train with data prior to: 2015-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[-0.58634023 0.39864461 1.09816148 2.11868354 0.16906456 2.58316648\n",
" 1.60009298 -0.46358484 2.78106493 -1.02845636 -1.63423715 -2.81104568\n",
" 0.35603138 -2.52474778 -2.43991051 1.0567411 -3.14975567 -1.91395191\n",
" -1.98392621 2.27202285 1.20217593 -1.2414418 1.61249868 2.25165935\n",
" 1.01650971 1.77547193 -2.38646046 1.27270837 2.86900222 2.5378714\n",
" -2.18926275 2.32584298 -3.59351304 -3.02112116 1.04115204 0.75008384\n",
" 0.80210469 0.55188934 1.24451318 -2.55336965 3.57327529 -3.37069975\n",
" 1.96199046 -2.48657592 -0.0917332 5.04943201 2.22664178 2.39127899\n",
" 2.62028642 2.87119384 -0.34388393 0.80304518 -0.90774275 -0.35048873\n",
" -2.79258464 2.9034264 -0.50258112 0.62128909 0.75876985 -1.89383397\n",
" 0.95304078 -2.15257319 1.74811475 1.38540798 -2.92815698 -1.45879833\n",
" 0.32945403 0.90518408 -1.47613879 2.29556651 -2.81163638 -0.22183257\n",
" -1.59628668 2.47100681 1.13377426 -3.31522552 1.04830713 1.34422198\n",
" 0.12179665 -3.10320636 0.46723944 -3.44225859 -2.81892973 -1.15528504\n",
" 2.17758234 1.81256975 1.21622051 0.91103957 0.14476327 -2.94568965\n",
" 3.25728311 1.48967199 2.94875982 -1.40062107 -1.27666772 1.69846216\n",
" -0.29029832 0.61811491 3.0833044 -0.88132141 -0.14003058 2.29108237\n",
" -1.05153699 -2.07729895 -0.13003883 6.28268931 -2.30840299 -5.03123523\n",
" -0.78562392 -1.34851893 -2.92412173 2.07195755 -1.92058211 2.68422393\n",
" 6.34608139 -1.35457233 -1.39908236 -3.16340946 -0.4669856 -1.76414297\n",
" -3.07670733 0.50492993 1.7575677 -0.9244233 0.61266987 3.40207138\n",
" 2.51159306 -0.21520831 0.92234578 -1.18221656 -1.94507201 -1.62462487\n",
" 1.16882752 -1.24861626 -1.87689928 -1.97196757 -3.88477233 4.20599398\n",
" 1.43754798 -1.57351519 1.84617601 -0.63359796 1.61322042 1.70793252\n",
" 2.37747195 -2.47351714 1.51379854 0.75374844 0.22770197 -1.25385181\n",
" -2.23301116 -1.45638984 -0.88259642 -0.57671923 0.60192565 -0.21475577\n",
" -0.07416112 2.22982205 -2.47073969 -2.31418519 0.63252999 2.24068811\n",
" -0.23982893 1.51287031 0.39558514 2.68446332 -4.20882224 -5.75179527\n",
" 3.07604964 3.00212097 -3.21485136 -1.70378219 -1.11006258 1.24932924\n",
" 0.14010665 -1.02736379 -1.1410761 0.8575784 -0.60723232 5.21825951\n",
" -3.24000452 -1.80930598 1.41150402 1.71511986 3.65507457 -3.09359104\n",
" 0.20275585 -1.29352719 1.93458321 -0.85443866 -0.15248664 -0.58329457\n",
" -2.02627901 1.08318648 1.15242076 -1.82909031 0.54354267 -2.45330161\n",
" 1.41113812 -0.34332903 2.65808572 2.4746767 0.29483105 -1.92486218\n",
" -0.95236388 -3.89059929 -1.4509123 -1.91307825 -0.02574088 -4.13574691\n",
" 1.85539628 -2.27218276 -1.69381116 2.03269948 -1.35079223 -0.18072895\n",
" 0.18834894 -0.11230978 3.54565668 3.67994015 -1.62512622 3.63872962\n",
" 0.42413087 2.00427976 -0.08574049 -4.86177046 2.52618766 1.05319453\n",
" -0.32764244 -0.01337997 -2.24544779 -1.26216348 0.22078278 0.20427243\n",
" 1.92269875 -2.15777895 1.96737861 -0.66084856 3.38389297 0.73745248\n",
" 0.25188024 2.96729174 -0.48398162 1.58303476 1.62131474 1.49582183\n",
" 2.2269708 1.77084932 1.45590687 2.00263311 -1.44961728 2.28969003]\n",
"Train with data prior to: 2015-06-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[ 7.09243374e-01 -5.59490922e-02 1.86911016e+00 1.11975179e+00\n",
" 4.81696913e-01 4.81310649e-01 3.88131940e+00 -1.14034238e+00\n",
" -3.90765422e+00 -8.82057199e-01 2.99362807e+00 1.55007598e+00\n",
" 1.72184717e+00 2.24747077e+00 4.05427662e-01 -1.76315781e+00\n",
" 2.13710682e-01 2.09325979e+00 -1.02283351e-01 -1.52626144e+00\n",
" 1.99222374e-01 1.00885516e+00 5.00623768e+00 -1.61702862e-01\n",
" -1.38194323e+00 4.14632082e-01 -2.71632720e+00 -2.75040437e+00\n",
" -3.87604522e+00 2.63613211e+00 -1.20056973e+00 -2.20797838e-01\n",
" -3.00768146e+00 -3.68819631e-01 2.71151778e+00 2.25508287e+00\n",
" -2.52268709e+00 -1.47407407e+00 1.93034359e+00 1.49163371e+00\n",
" -2.16481944e+00 2.95228450e+00 2.59602139e+00 -4.87884562e-01\n",
" -2.94423688e-02 -3.31628181e+00 -2.52187811e-01 -2.95094303e+00\n",
" 8.31583238e-01 -2.55478759e-01 -1.54505177e+00 -8.47166318e-01\n",
" 2.64441527e+00 -2.40021736e+00 3.58156390e-01 -3.24509226e+00\n",
" -1.37756851e+00 -4.03070524e-01 2.22764945e+00 5.34524991e-01\n",
" 4.36268890e+00 -1.92761974e+00 1.42749912e+00 -1.94209134e+00\n",
" 2.55519480e+00 2.48966694e+00 3.18443135e+00 -2.77525893e+00\n",
" -1.39288581e+00 7.07773628e-01 1.13990113e+00 -3.68328944e-01\n",
" 2.64556675e+00 2.14551099e-01 -3.32682785e+00 -1.71913614e+00\n",
" 4.76366880e-01 2.85843750e-01 -1.21395495e+00 2.61849549e-01\n",
" -6.01952090e-01 -3.80682731e+00 3.76071123e+00 -3.80233535e+00\n",
" -6.32660619e-01 -6.85487334e-01 1.44779161e+00 5.52606211e-01\n",
" -2.22625914e-03 1.26745787e+00 -2.82577378e+00 -3.78747927e-01\n",
" -1.92338502e-01 -8.14506983e-02 -1.40351961e+00 -7.10765765e-01\n",
" 1.81333850e+00 -3.50556524e-01 -1.00188674e+00 5.28831644e+00\n",
" -1.56589244e+00 3.70058742e+00 1.80217706e+00 3.10900001e-01\n",
" 2.77532876e+00 -1.03758014e+00 6.49404558e-01 -4.87581170e+00\n",
" 7.66390284e-01 8.66545623e-01 -5.96644610e-01 -2.25273822e+00\n",
" -9.53678930e-01 -2.12086660e+00 3.50517279e-02 1.60473823e-01\n",
" 4.30993289e+00 -1.23719268e+00 1.19819813e+00 2.03000104e+00\n",
" -9.43568243e-01 -2.50142989e+00 2.46597997e+00 -3.51415081e+00\n",
" 2.21030923e+00 -7.80069890e-01 1.63768732e+00 4.26307733e+00\n",
" -5.95439392e-01 -1.53527513e+00 -4.00016072e+00 -3.92563100e+00\n",
" -2.48171655e-01 1.24975039e+00 -1.80809113e+00 -3.45983617e-01\n",
" -5.55010343e-02 9.04337590e-01 3.32331521e+00 9.23293421e-01\n",
" 2.67129416e-02 -3.59048771e-01 1.40154271e+00 -4.01155137e+00\n",
" 1.75724245e+00 1.70732417e+00 -1.31265484e+00 -3.45082192e+00\n",
" -4.24683034e-01 -3.06916457e+00 1.97258840e+00 1.09334460e+00\n",
" 1.88864713e+00 -1.60722874e+00 -1.73915484e+00 1.76555588e+00\n",
" 1.81187588e+00 7.35718702e-01 7.06048380e-01 -9.37376877e-01\n",
" 2.61555396e+00 -1.73186538e-02 -2.24442079e-01 6.83636672e-01\n",
" 7.80658187e-01 9.46348065e-01 6.74943493e-02 -2.90280929e+00\n",
" -1.05918473e+00 6.51126128e-01 -9.87663715e-01 2.46542281e+00\n",
" 4.52267277e+00 -2.84844039e+00 1.74603620e+00 -5.82567926e-01\n",
" -1.75318081e+00 3.20365717e+00 -5.32551354e-01 -7.65484639e-01\n",
" -4.08535972e-01 -9.11722081e-02 1.12041252e+00 3.30933699e+00\n",
" 3.85219395e+00 4.54188467e+00 -3.56211431e+00 -2.77154919e+00\n",
" 2.33394551e+00 2.21157934e+00 4.71525828e-01 -1.28395954e+00\n",
" -1.19915508e+00 3.71036215e+00 5.28351031e-01 2.41896495e-01\n",
" -6.18868217e-01 1.72172940e+00 -2.72700139e+00 2.72565955e+00\n",
" 6.14198143e-01 -2.73782890e+00 1.44685466e+00 -1.83092908e+00\n",
" -1.62414195e+00 -3.11885822e+00 6.61401535e-01 3.03606210e+00\n",
" -2.56451777e+00 -2.63581817e-01 -1.06428100e+00 -2.90351928e+00\n",
" 7.26945291e-01 -1.69141284e-01 -2.73221277e+00 -1.06881244e+00\n",
" 2.18323854e+00 -2.52034120e+00 -2.40953065e+00 3.35790492e+00\n",
" 3.60782559e-01 4.81247859e-02 -2.65671656e+00 -1.96442580e+00\n",
" 3.22436823e+00 -4.75067635e+00 -9.25642418e-01 3.98712382e-02\n",
" -1.98481679e-01 3.56684278e+00 7.21188625e-02 -2.79188596e+00\n",
" 2.49709816e+00 3.43364384e+00 1.64381871e+00 -1.80342903e+00\n",
" -1.18076513e+00 5.46892226e+00 1.62826350e+00 1.42896919e+00\n",
" -3.87698752e+00 -9.96388955e-01 5.30107782e+00 -1.37688222e+00\n",
" -1.84561813e+00 1.10146923e+00 1.28737266e+00 1.05028227e+00\n",
" -2.90177921e+00 3.90427676e-01 -1.69764719e+00 -2.72313202e+00]\n",
"Train with data prior to: 2015-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-4.57760767e+00 1.00892733e+00 1.55592828e+00 -3.24396312e+00\n",
" 4.84865098e-01 -1.53530054e+00 2.01710413e+00 -1.95532395e+00\n",
" -2.27196325e+00 8.51836268e-01 -5.74768841e-01 -3.90322663e-02\n",
" 2.15531768e+00 3.76288453e+00 6.85876356e-01 -1.97442058e+00\n",
" 1.77970829e+00 -1.10588575e+00 2.90022269e+00 1.69155613e+00\n",
" 2.99406861e+00 -2.07062460e+00 -4.58667368e-01 -1.20088249e+00\n",
" -2.44810062e+00 4.55899500e+00 3.10348569e+00 1.70592737e-01\n",
" -1.26346991e+00 -1.33689264e+00 2.47524351e-01 -3.89449514e+00\n",
" 6.54989905e-01 -1.05058487e-01 3.06148201e+00 -2.95930095e+00\n",
" -1.84930767e+00 -1.77651785e+00 4.49441181e+00 2.55455882e+00\n",
" 1.89981344e+00 -8.62168707e-01 2.93930512e+00 -2.47720341e+00\n",
" 1.08780073e+00 -3.60811415e+00 -6.74345443e-01 -1.77952501e+00\n",
" -1.86147145e-01 -3.07577227e+00 1.82268605e+00 2.45442116e+00\n",
" -1.61012996e+00 -4.48021926e-01 -3.60664373e-02 2.46903289e-01\n",
" 3.74399863e+00 -4.69180278e+00 -2.05833734e+00 7.40602835e-01\n",
" -2.59489257e+00 1.93371726e+00 1.69500600e+00 -3.34631702e+00\n",
" 1.15190945e+00 3.96988551e+00 -1.09008241e+00 -2.10977017e+00\n",
" -2.00683589e+00 2.86827455e+00 3.16660133e+00 3.18421061e+00\n",
" -1.55894571e-01 2.16761470e+00 -2.04736291e+00 5.72078592e-01\n",
" 9.44766016e-01 -1.72518184e+00 -8.32708157e-01 -1.16403949e+00\n",
" -4.04985100e+00 2.73857549e+00 1.51570529e+00 1.77672033e+00\n",
" 1.87164999e+00 -5.12110983e-01 4.96333064e-01 2.62361561e+00\n",
" 9.74496208e-01 -4.63462008e+00 2.83013007e+00 1.72546942e+00\n",
" -2.39484077e+00 -1.44806958e+00 -2.44179259e+00 3.56404720e+00\n",
" 3.76195127e-01 -4.50128274e+00 -1.82063111e+00 -2.64445000e+00\n",
" 1.39188498e+00 -5.22986065e-01 -3.33091068e-01 -1.59008407e-02\n",
" -1.83313160e+00 -2.39654986e+00 7.52281608e-01 2.62169287e+00\n",
" -1.01828941e+00 2.25038159e+00 -4.23144483e+00 1.42958164e+00\n",
" 2.25131646e+00 1.58075685e+00 -4.18725780e-01 9.66372945e-01\n",
" 7.99211332e-01 -5.33018330e+00 -3.32344136e+00 8.12727613e-01\n",
" 3.96114084e+00 -5.85136487e+00 2.69967124e+00 -1.16605398e+00\n",
" -1.16523429e+00 -2.00942433e+00 7.64019594e-01 1.46039161e+00\n",
" 3.16063250e+00 -1.39380266e+00 -5.19483729e-01 -2.67914937e+00\n",
" 1.94630252e+00 1.47821128e+00 -9.88282241e-01 -7.37847479e+00\n",
" 3.91040338e-03 2.55973448e+00 2.54028721e+00 -1.60677075e-01\n",
" 3.99742784e-01 -2.02835677e+00 1.43944470e+00 3.61846994e-01\n",
" -5.13001697e-01 -2.01410015e+00 5.29031710e-01 -2.84988329e+00\n",
" -2.21047349e-01 -5.81417200e-01 -9.29275744e-01 -9.25677426e-01\n",
" -2.57475141e+00 1.40476970e+00 -3.44831160e-01 2.67486582e+00\n",
" -1.05400183e+00 -5.20651545e-01 3.91881094e-01 -1.95757799e+00\n",
" -3.25784152e+00 5.81658921e-01 -2.70563058e+00 6.01146056e-01\n",
" 4.15678990e-01 1.25869145e+00 1.74222085e+00 -2.09462752e+00\n",
" 1.20484842e-01 3.86180374e-01 -2.88836548e+00 -3.37781151e+00\n",
" -2.16731634e-01 2.27790520e+00 -2.35539305e+00 -3.51192838e+00\n",
" 2.42589232e-01 3.82108533e+00 -2.29991454e+00 3.45118366e+00\n",
" 8.61640603e-02 1.59299056e-01 1.09860704e+00 -1.15544489e-01\n",
" -4.92412428e+00 -1.81844014e-01 -1.98850666e+00 -1.53391771e-01\n",
" 3.38722502e+00 1.20692416e+00 2.83789056e+00 4.53532622e+00\n",
" -3.11993826e-01 2.56105868e-01 7.42080725e-01 -1.01225460e+00\n",
" 2.33335039e+00 2.01828374e+00 -2.37033289e-01 3.43476596e+00\n",
" -2.28379114e+00 -6.46214740e-02 6.47477252e-01 2.29568273e+00\n",
" -4.67034904e-01 1.78226439e+00 5.13730632e-01 1.52730144e+00\n",
" -5.54658182e-01 -3.22965523e+00 2.53895585e+00 -1.15173310e+00\n",
" 5.07354326e-01 1.57616544e-01 -3.60215152e+00 2.56066065e+00\n",
" -2.42036589e+00 1.89242430e+00 9.09293187e-02 -1.53883195e+00\n",
" 5.54539646e-01 -1.63838743e-02 8.49951087e-01 1.21505211e+00\n",
" 4.03021082e-01 -1.15214334e+00 3.66109070e-01 1.21625107e-01\n",
" 1.17072818e+00 3.46458223e+00 2.27826808e+00 4.54267207e+00\n",
" 1.28101558e+00 -2.71024075e+00 1.67769834e+00 3.77956828e+00\n",
" 9.89562242e-01 -4.49124658e-02 6.33546164e-01 1.80265928e+00\n",
" 3.66550552e+00 -2.88504014e+00 -2.52580934e+00 -1.76528166e+00\n",
" 1.66407624e-01 -1.28959417e+00 -1.48147587e+00 -4.12632210e+00\n",
" 1.36846395e+00 1.42384552e+00 3.72265422e+00 1.89811972e+00]\n",
"Train with data prior to: 2015-12-31T00:00:00.000000000 (252 obs)\n",
"(244, 10)\n",
"[-0.9978397 2.27602851 -2.81835037 0.66977016 -0.45618031 2.98020234\n",
" 1.33747176 0.04526273 0.84489087 1.86189903 3.37179987 4.09265239\n",
" 5.21795872 -3.40676216 1.77736194 -0.57676594 -3.46188995 -2.87204795\n",
" 0.76393599 0.09683464 -1.38861174 -0.13321427 0.67411365 0.34222592\n",
" 0.33145807 -0.06133362 0.20817884 0.4376827 -2.41223412 -0.59705356\n",
" -4.01796835 -0.70163348 -2.45802569 -1.18766141 -1.11795492 0.92299897\n",
" -2.15105741 -5.36389059 -1.05386437 0.55601399 -2.77386018 0.78824036\n",
" 0.65930549 -1.51733438 1.19184986 0.14248214 1.13247375 0.94384151\n",
" -2.36526833 0.94562489 0.60122113 -2.6014647 1.90837268 0.52053486\n",
" 3.27655006 -1.31536953 2.85723398 -2.86460063 3.09398298 -2.24780611\n",
" 1.7966973 3.52907396 1.32944501 -2.88288708 1.24790851 2.98367146\n",
" 1.64740109 -1.75597403 1.68961762 -0.86007067 1.36956789 -1.28043159\n",
" -2.32180878 3.04153067 2.1378761 1.2610378 4.63672701 -1.65601823\n",
" 0.68806861 -1.51372428 3.21760013 -0.39412384 -0.66323627 1.90145432\n",
" 0.70133387 1.75945409 3.40617503 2.12275779 -2.71262054 -0.78152513\n",
" 2.35502567 1.12388031 -0.26353549 1.01557175 1.34198046 -1.10981888\n",
" -2.56653071 -2.61906669 -0.96046659 -4.42928461 -1.42466679 2.7278386\n",
" -2.97273731 2.12848535 2.46600698 2.3208484 4.03937767 5.04635081\n",
" 1.01586831 -5.35937252 -1.20052308 -1.32450264 -1.03019187 -4.96897986\n",
" -3.55959268 -1.45347888 0.38428867 -1.06701194 1.59141565 5.26717828\n",
" -1.93136961 -4.54846993 -0.28723017 0.60832909 -3.61737728 -4.04849121\n",
" -3.36459084 0.92290609 -2.21239223 2.6153581 3.49920485 4.47341687\n",
" -0.33471591 -2.63884708 -1.32065949 -0.29359132 -1.37901305 2.76760307\n",
" -2.75369309 5.34050877 -0.87913095 0.05807721 -2.30504773 -0.18345683\n",
" 0.75466516 -0.70700869 -0.13908208 1.78033085 -1.07990076 0.92413881\n",
" 2.19112477 1.95186166 -1.43704259 -0.12166703 3.18778368 -0.07882676\n",
" 2.40312245 -3.69707948 2.0572219 -1.82778616 -1.76818964 -3.69928234\n",
" -3.24951037 3.19616389 -1.0821079 -2.04031708 1.83856089 2.50769835\n",
" 1.32862682 0.62706981 -1.19845781 -2.08689167 2.37698544 -0.58421509\n",
" 0.12341355 2.73384113 -4.23134731 2.73597579 -1.718314 3.72475901\n",
" 1.33919869 -0.11668577 0.39067702 0.42251497 -0.60926154 0.99444604\n",
" -0.67105758 -2.84831387 1.11368225 1.88140466 -1.72703733 -2.92407518\n",
" 3.11170659 0.39211243 0.66471167 -1.38680723 1.09380013 2.04638738\n",
" 1.61179316 3.74625377 -0.35009375 2.11786403 -0.60388471 0.62315644\n",
" 1.54572334 -3.24524609 1.663901 0.43269586 -0.75893974 0.25107126\n",
" 4.07481333 -1.67950478 2.58100988 1.51268323 -3.39274806 2.16531611\n",
" -2.51302913 1.34453011 1.84883861 -2.83482923 1.42613351 -2.59987769\n",
" -3.80203199 -3.1809057 -1.98560659 2.16579124 1.45966419 -1.83329411\n",
" 1.1536974 -0.35437275 3.45760765 -0.98554301 -0.44220896 1.48848913\n",
" -0.61693816 -1.08730551 -1.25679331 -1.92075022 0.4247255 -2.68796513\n",
" 0.23543068 2.55677503 -2.02471236 1.84758612]\n",
"Train with data prior to: 2016-03-31T00:00:00.000000000 (244 obs)\n",
"(256, 10)\n",
"[-2.13467740e+00 -1.71758169e+00 1.12859359e-02 3.42860229e-01\n",
" 1.47323902e+00 -1.80900352e+00 -1.19585619e+00 -2.43910342e+00\n",
" 2.92623569e-01 -4.55648363e+00 -1.33245921e+00 -8.48278424e-01\n",
" 3.33129992e+00 3.43746302e-01 -2.35402922e-01 -1.17880758e+00\n",
" 3.53618425e+00 -4.22783646e+00 -1.66936402e+00 2.63358892e+00\n",
" 3.11772762e-01 1.02030869e+00 -2.17420660e+00 2.40759489e+00\n",
" -4.19601876e-01 5.63069682e-01 -8.39801542e-01 3.63278820e+00\n",
" 4.59360454e-01 1.53566441e-01 2.78264608e+00 -1.46935546e+00\n",
" -1.28832865e-02 2.33320635e+00 5.67361265e-01 -2.37362395e+00\n",
" 2.77748640e+00 -3.31828537e+00 -2.45024198e+00 -3.42229573e-01\n",
" -2.51521616e-01 2.72481393e+00 1.20544819e+00 -3.05080846e+00\n",
" 5.11284381e-01 -2.06397761e+00 -3.14586394e+00 -1.89398776e+00\n",
" 5.97756913e-01 -7.63266899e-01 1.45414796e+00 -1.55118039e+00\n",
" 5.42859444e+00 2.08657446e+00 4.73292072e+00 2.00487874e+00\n",
" 3.46014378e+00 3.29265376e+00 -1.85844123e+00 -8.38221184e-01\n",
" 4.69576493e-01 1.73921125e-01 -1.95954433e-02 3.23348507e+00\n",
" 3.02396687e+00 -2.83686739e+00 1.69335884e+00 -1.39249704e-01\n",
" -1.49773592e+00 2.40356361e+00 1.38048923e+00 2.81470130e+00\n",
" -2.61087883e+00 -2.92016087e+00 8.30500045e-01 8.15138368e-01\n",
" -2.25867004e+00 1.85615800e+00 -1.47577350e+00 2.50732044e+00\n",
" -3.83713428e+00 2.08086084e+00 -1.78319096e+00 -1.27624975e-01\n",
" -2.03500753e+00 1.41909986e+00 -1.40825231e+00 -1.27859736e+00\n",
" 7.59933867e-02 3.09160734e+00 3.91383417e-01 -2.73372297e+00\n",
" -7.76079167e-02 9.32222919e-02 2.71122381e+00 4.96958852e-01\n",
" 4.46612662e-01 -3.42296610e-01 3.28693497e-01 -3.43547597e+00\n",
" 1.15456928e+00 1.79320540e+00 3.77929268e+00 -3.24275016e+00\n",
" 3.22979168e+00 3.78654564e+00 2.75850819e-01 5.10389925e-01\n",
" -6.29581981e-01 2.92122077e-01 -4.15841203e-01 2.93161851e+00\n",
" 1.02668859e+00 -1.51446847e+00 8.28603802e-01 1.33491969e+00\n",
" 1.57963758e+00 -3.39559894e+00 1.40681824e+00 1.41497885e-01\n",
" -1.76296271e+00 -3.47416017e+00 1.35696768e+00 -1.45765167e+00\n",
" -2.33098247e+00 -2.92894851e+00 -4.00175324e+00 -7.48530969e-01\n",
" 1.68433184e+00 -2.38653175e+00 -2.53627366e+00 7.54415171e-02\n",
" 3.56042549e-01 -2.23198977e+00 -1.46250238e+00 -1.83847710e-01\n",
" 3.06424498e+00 -2.20628961e+00 -3.84892815e-01 -6.35967169e-01\n",
" 2.60107636e+00 3.33186351e+00 3.14623574e+00 3.73250075e+00\n",
" -2.32686207e+00 7.94972735e-01 2.99110293e+00 -1.55983171e+00\n",
" -6.25712579e-01 8.09322810e-01 2.86492224e+00 4.12030214e+00\n",
" -3.07051916e+00 7.35965773e-01 1.68769039e+00 -2.88873485e+00\n",
" 6.16279906e-02 2.32160403e+00 -1.98683697e+00 6.58943846e-01\n",
" -1.49239739e-01 2.47532303e-01 8.39675397e-01 -3.00285041e+00\n",
" 2.85242380e+00 -1.26587206e+00 -2.10463222e-02 3.70942232e+00\n",
" -6.07753147e-02 -6.27982555e-01 -5.77012952e-01 -1.15120115e+00\n",
" 3.53392770e-01 3.01947167e+00 7.39539214e-01 -1.76981484e+00\n",
" -2.49030370e-01 -3.36769236e+00 -1.56355044e+00 3.94925402e-02\n",
" 3.98793667e+00 -2.20773838e-01 1.81853368e+00 1.86495606e+00\n",
" 3.70488114e+00 6.57440250e-01 2.42060030e+00 3.09649240e+00\n",
" 1.22408039e+00 6.12695965e-01 -2.92098045e+00 2.67788450e+00\n",
" 3.39525723e+00 -4.13161948e+00 -8.59138820e-01 3.17644204e+00\n",
" 2.32387795e+00 1.51381252e+00 -2.59593554e+00 4.61379120e+00\n",
" 1.19178185e+00 3.39345705e+00 1.15408316e+00 1.97977835e+00\n",
" 3.82574135e-01 1.11617533e+00 -2.65870924e-01 2.14627967e+00\n",
" -2.39977359e+00 4.69050892e+00 -2.55615089e+00 2.61842553e+00\n",
" 1.74425869e+00 -1.89789516e+00 2.09695683e+00 1.41190403e+00\n",
" -9.82352835e-01 1.08346117e+00 1.45942976e+00 -5.20779227e-01\n",
" -2.18260308e+00 -7.61926233e-01 -1.91073824e+00 4.20606500e-03\n",
" 4.00963418e+00 1.64493134e+00 5.00704504e+00 -7.18111808e-01\n",
" 1.71919997e+00 -3.64346181e+00 1.86410082e+00 3.91065553e+00\n",
" -1.88432423e+00 2.07684321e+00 -2.62033854e+00 -2.61807185e+00\n",
" -6.71087255e-01 -2.89000274e+00 -1.54303446e+00 9.58465144e-01\n",
" -2.52209842e+00 -4.50129920e+00 3.98607435e+00 -2.59588346e+00\n",
" -1.34365671e-01 -1.47037094e+00 -2.67486616e+00 7.84615110e-01\n",
" -4.20562942e-01 -1.21669923e+00 7.23514997e-01 -2.59491351e+00\n",
" 3.54713023e+00 -2.16093315e+00 -2.70219176e+00 -7.95153999e-01]\n",
"Train with data prior to: 2016-06-30T00:00:00.000000000 (256 obs)\n",
"(252, 10)\n",
"[-3.45781894 2.84183856 -2.58495853 1.77898241 0.11250938 -1.41329417\n",
" 3.26658323 1.46620622 -1.47637179 -3.1200725 1.1719048 1.68978612\n",
" 0.22348762 -2.65298784 -1.5224493 2.81560225 1.98440189 0.61156864\n",
" -2.10113911 -3.93958497 2.96054018 -2.20365653 0.7149137 1.65279822\n",
" 0.20828288 -1.65475116 2.69407036 -1.89757071 -3.70623678 -2.20180906\n",
" 0.30871231 -0.36072927 -0.31198333 -3.29750943 0.89023695 2.04780412\n",
" 2.51145501 -2.38125274 2.13984795 -0.53745236 2.29205521 3.38069516\n",
" -1.98878859 2.32848375 1.73369547 2.31074671 1.20346225 -2.13467985\n",
" -5.2775185 -4.63057261 -2.24909316 1.27157793 -2.94189785 -1.21742194\n",
" 4.17494684 3.61160997 -1.90881217 2.59960876 -4.01863065 3.19450919\n",
" -0.57199213 -3.82955942 2.48351662 2.97774646 -0.3904928 -1.79537363\n",
" 0.64167373 0.60800093 1.21487018 -1.27066323 -2.24236845 0.13680625\n",
" 2.65873523 1.97577153 4.06849355 3.18140362 -1.18827405 -0.37733785\n",
" -1.66915989 1.02891646 3.64164829 3.00965694 2.34576982 -1.48781808\n",
" 2.20014518 -2.71568378 -1.06402846 -3.2433965 2.06198435 -2.78274476\n",
" -1.21708343 -2.11064593 -0.93759454 3.62002884 1.98895681 1.64792808\n",
" -0.62491628 -4.3019975 2.45273094 1.87277002 -1.9963755 1.80333287\n",
" -1.55133534 4.58858976 0.52047746 -1.758724 1.72914295 -1.61212313\n",
" -1.04813608 1.78705967 -3.31388667 0.53206432 1.82400833 3.56266947\n",
" 2.78813605 2.64882779 2.83176346 -1.03004941 -1.56985949 0.15255655\n",
" -1.26613756 -0.590403 -0.67097644 -3.15046149 -1.89326304 -3.10938762\n",
" -1.51391437 -0.93931144 -1.34225197 -2.02705841 0.87147143 -1.6841098\n",
" 1.44868161 -1.19598856 0.78295579 -1.76803147 3.75212589 2.51811859\n",
" 1.74871358 -4.44101023 0.39871067 1.57067111 -0.95862484 -3.14392207\n",
" 1.75866339 -0.46047545 3.28800965 -1.79334343 1.94440625 -2.43625239\n",
" -2.42680304 -3.06943282 -5.01255718 1.16163961 -2.88054329 1.24871314\n",
" 1.21425866 1.10817892 -0.05080172 2.2048079 2.04285114 -0.08811295\n",
" -1.92107448 -1.9024738 -1.90923147 -0.54596298 0.21010033 -2.72591203\n",
" 1.57312462 -1.24611966 1.22867962 3.34095123 -2.60881908 2.59092309\n",
" -0.72970109 0.2106966 1.13743223 -1.80945392 0.07887924 -3.11793118\n",
" 1.70288958 1.03939857 -2.77318108 -1.8095004 2.18797629 2.21111077\n",
" -1.42612549 3.71486392 2.04529761 0.40095568 0.64498286 2.17654544\n",
" 0.03212577 -1.19300916 -0.46796372 -0.12989284 -0.13422315 -3.64310122\n",
" 0.56786036 -1.81597715 0.34835789 1.37631082 1.53922142 -0.49252278\n",
" -2.22081172 -0.59829697 -0.8207233 -1.32311243 0.17394469 3.84928099\n",
" 2.85343013 -0.35143197 -0.76052369 4.38707733 -3.10361145 1.30604566\n",
" -1.93910676 -0.18834107 -0.80888352 -1.9501066 -0.29330384 -0.0615496\n",
" 1.20320804 2.40234599 2.92992738 -1.88077651 2.0960312 2.47375805\n",
" -1.09046559 -0.76920611 -1.31293324 1.03145707 -2.01616489 1.14857073\n",
" 2.88482326 -1.78847605 -2.83078889 -3.58553569 -3.43641675 -2.41592585\n",
" -0.7345702 2.7600638 0.47412846 0.57468943 3.2442316 1.14304205\n",
" -0.00576865 -2.39047772 -1.45363718 -0.65591977 -3.62179007 -0.45243949]\n",
"Train with data prior to: 2016-09-30T00:00:00.000000000 (252 obs)\n",
"(252, 10)\n",
"[-2.67494711 0.15032632 1.57055392 -2.99703305 2.51868703 -0.84595691\n",
" -1.62796827 0.09379997 -0.16484931 0.05799773 4.67052401 -0.59467527\n",
" 0.18546618 0.75320128 0.27898077 -1.56105775 1.94029137 -1.99374292\n",
" -0.24407233 -2.33763505 -0.87883818 -0.76370469 0.62063162 5.80222805\n",
" 1.85765361 -3.77789571 2.01753743 0.6202473 -1.13694048 3.46395019\n",
" 0.64758203 -0.54705628 -1.4665431 -4.81063239 -1.7779289 0.54986845\n",
" 3.04047641 0.36546106 3.62104985 2.49414039 1.99872139 1.4715893\n",
" 2.17286904 -2.95599217 -0.23609967 -0.99860479 1.04551208 0.59552352\n",
" -0.95499356 0.8872808 3.45131629 0.14122697 -0.44282566 -0.60137401\n",
" 0.04875855 -0.63100895 -0.43315967 -2.4678312 1.71963211 -0.79051947\n",
" -1.21499863 -0.23264895 0.76858716 -0.43015562 3.93480916 0.01748083\n",
" 1.17208787 -2.58786636 -1.13895402 -2.2474489 -0.27102202 3.89415794\n",
" -2.59987017 -1.05737774 -1.37221908 -0.62033882 1.30540645 0.25935701\n",
" -3.61058242 0.54791963 -3.86574563 -0.70566234 -4.89451262 4.32298882\n",
" -2.08825187 1.70843901 -5.05685466 2.09281944 -0.56520748 -5.94376268\n",
" -2.77410012 -0.3285724 4.34525975 3.2102779 -0.63924366 -1.65813762\n",
" -2.54878601 -1.34269663 -1.35155445 -4.73831657 0.23586016 -1.14294451\n",
" -0.0996155 -3.15474992 1.1750328 4.68700932 -2.94137513 -1.86261946\n",
" -4.80381584 2.79194821 -1.6747716 1.44972681 0.04479477 -0.84929068\n",
" 1.13492774 5.59623276 -2.28047066 0.70981963 -2.58742662 -2.35171195\n",
" -1.98945228 -0.50478039 2.73435184 2.27792351 -0.62331704 3.09588445\n",
" -2.31013134 -2.1920974 -0.94073863 4.09777152 2.24625676 -1.47996521\n",
" 2.23522273 2.19186467 4.59544745 1.0344097 -3.30721956 -1.74213305\n",
" -1.01076797 -2.8658343 -0.49660487 2.35718511 3.69531987 -2.99593034\n",
" 1.92367323 -0.45930769 1.30017534 1.47036888 -4.8094225 -0.64382541\n",
" 1.45428709 -0.83139684 3.57349402 -1.40366247 -1.95994493 0.45462625\n",
" -3.14049428 0.32226546 -1.88059045 -4.63098165 1.23628058 1.24417102\n",
" 0.81580676 -2.5295482 0.6811711 0.79487027 -0.66809694 2.24637899\n",
" -3.55052275 -0.93693192 1.44105298 -0.11043809 -3.21068786 -0.29371001\n",
" -2.85749646 4.28772983 0.51198122 -2.34765368 1.07429126 2.39178045\n",
" -1.20574569 0.94202808 3.42649346 2.90963944 2.3764368 -5.17514004\n",
" 0.83304608 1.0815178 -0.13583894 2.49987808 -3.45911941 3.62168185\n",
" 2.10145476 1.8392216 -0.16259373 1.49810305 -1.29760494 -0.39769609\n",
" 0.69118697 1.56615249 1.72176443 -2.60578037 1.59915585 -1.23783609\n",
" -2.19242378 -0.52901466 -3.14870498 0.09362302 1.29427157 -2.32355265\n",
" -1.41320155 -0.23287082 -1.9071189 1.16984836 1.21872107 -2.04837159\n",
" -2.67581717 0.74728457 2.05115139 -2.34787221 0.91135114 3.32525778\n",
" -3.31193875 3.29890798 1.81209647 -2.41706593 0.3094802 -0.16423577\n",
" -1.6492119 3.12499938 -0.80945514 2.4638041 1.91650851 0.49566152\n",
" -1.64396027 1.13576966 -0.89390031 1.24912196 1.09597766 0.1292553\n",
" -2.27069072 -0.03828106 0.72323019 -2.66864908 -1.93868781 -0.68994044\n",
" 0.75513829 2.46293051 3.67764919 -3.22396112 -1.46446213 0.14137035]\n",
"Train with data prior to: 2016-12-31T00:00:00.000000000 (252 obs)\n",
"(248, 10)\n",
"[ 2.37560533 2.9219649 0.68482441 0.01526294 1.55171467 4.30953441\n",
" -1.76189161 1.63112425 -1.72646923 3.40554793 -3.76144097 2.18663904\n",
" -2.43825478 3.76453418 1.58684465 0.14677014 -0.65358036 2.58467793\n",
" 1.23548936 -2.10561942 1.22174969 4.25483989 -2.69894803 0.35318784\n",
" 2.66361495 0.14080117 -4.48760378 2.02948389 -1.39408895 -3.55122067\n",
" -1.08325544 0.75039808 -0.4625473 -2.91566146 0.94345116 -3.83555676\n",
" -0.61530838 -3.32124914 0.243049 -2.00250401 0.09739443 -2.77039534\n",
" -1.04045332 -0.89701172 -0.7287501 -0.73180408 -2.51709452 -1.5771936\n",
" -2.5033122 -0.60918555 1.05871569 -1.01492891 -0.46679445 3.79135947\n",
" -1.41317148 -1.51150625 0.58096324 2.32245507 -1.06898236 1.6133893\n",
" 2.04890544 -0.51883966 4.97739845 0.37037471 -0.53323769 1.26587869\n",
" -2.12515124 1.14721324 -3.79832481 -0.11821513 1.66473172 1.08866099\n",
" 3.3253401 -1.01202106 -2.45440138 4.57589925 3.83232281 1.68685582\n",
" -1.26417882 -0.56323783 -4.6693857 4.03482765 0.0242757 -2.78104615\n",
" -3.06306269 4.48792009 -0.99168912 0.31995002 1.30195549 -4.59812385\n",
" 0.07267202 -2.69431496 -1.05939325 0.23143093 0.76264355 -1.55520673\n",
" 4.11051739 3.24515033 -2.5313066 -0.86208057 -1.11998562 -0.79341065\n",
" 0.05959746 3.99870963 1.38599861 0.59260645 -2.33989481 2.6440987\n",
" -2.01486458 0.85847879 1.43020132 0.09640746 -4.7021373 -3.17693216\n",
" 1.47034185 -1.42283318 -1.07202673 -1.95199229 0.05898006 -0.7018278\n",
" -3.72326092 0.14434388 0.81101666 1.84969715 0.12605591 -0.69057105\n",
" -1.35430138 -3.06188375 -2.45422468 3.82179455 -0.65863654 0.38545923\n",
" 1.43802331 2.61285287 0.93349585 -1.32614663 3.37507464 -3.29039756\n",
" 1.09611632 -4.77926693 -0.6677434 0.11684858 2.23983368 -1.34830082\n",
" -0.95619258 -1.94718838 3.0628053 -1.45472826 2.53655597 -0.74580842\n",
" -1.00150572 1.97220531 -5.38040417 -3.02583749 0.16265782 -1.69248803\n",
" 1.24157964 -2.59512396 -1.07361222 -2.70882703 6.36589652 2.54717408\n",
" -4.14754791 2.50970549 2.58305991 3.82950681 1.23615661 0.91899217\n",
" 1.91808838 0.96247948 2.8321779 0.692444 -1.25796531 -1.93768727\n",
" 3.69719221 -1.18674056 -2.25994756 -0.06233947 1.85417341 1.15728531\n",
" -0.78054814 -0.87184077 2.32416382 0.29563538 -1.37575326 1.35033947\n",
" 1.12665983 1.0962886 2.89821391 -3.52263246 1.09388657 -2.84206488\n",
" 2.89022619 1.39634906 -1.8665654 0.32193766 -2.64644558 -2.70019706\n",
" -2.92124867 -0.10461636 -0.89601919 -2.16121386 3.56997781 -2.44957946\n",
" 3.37332233 1.42751816 0.84017941 -0.10714209 -2.99604859 -1.17554466\n",
" -0.56293262 0.50066626 1.35563763 2.73035171 -4.4618575 0.52450525\n",
" -0.70130156 -0.522232 -2.93431577 -3.07700852 1.41145733 4.10151275\n",
" -0.94566029 1.21977656 0.76486467 -2.39264956 2.39563617 1.76217759\n",
" 1.19267042 -1.33668208 2.86245315 -0.15583553 2.38635471 1.21302342\n",
" -0.40663432 0.48687417 0.87237169 -3.24494341 -2.04316617 2.00479185\n",
" -1.69932656 3.04718076 0.24946891 0.28722797 -1.73246219 -2.5214448\n",
" 2.19872843 -1.89031376]\n",
"Train with data prior to: 2017-03-31T00:00:00.000000000 (248 obs)\n",
"(252, 10)\n",
"[ 3.35956779e+00 2.48776730e+00 -3.29583562e+00 -2.42734803e-01\n",
" 3.12294681e+00 -8.59942909e-02 -3.29018065e+00 -1.36282771e+00\n",
" -8.82829886e-01 -1.80109039e+00 -1.50001025e+00 -1.02910217e+00\n",
" 1.53559775e+00 5.47374117e-01 -1.32088218e+00 -1.97008984e+00\n",
" 3.29778707e+00 -7.18259049e-01 -2.27148910e+00 -9.59141328e-02\n",
" -1.97077457e+00 2.32987831e-01 4.30763824e+00 1.48920973e+00\n",
" -2.54592829e-01 -4.05262386e+00 1.76288811e+00 4.07554545e+00\n",
" 1.35256093e-01 6.56576978e-01 -2.93350803e+00 5.40795920e-01\n",
" -4.72951765e+00 1.67948338e+00 8.92036741e-01 -1.17914948e+00\n",
" -2.36421811e+00 2.27022068e+00 3.18337033e+00 2.21785929e+00\n",
" 1.10977513e+00 2.53430046e+00 1.71701194e+00 -1.94087561e+00\n",
" -1.90593733e+00 -1.55655741e+00 -2.97939674e+00 -2.92343341e+00\n",
" -1.85996645e+00 2.43780488e+00 -1.20144050e+00 8.17072476e-01\n",
" 2.18212550e+00 -2.52777804e-01 -2.84709264e+00 2.69218450e+00\n",
" -2.51964338e+00 1.44227398e+00 -9.85146430e-01 -2.50677586e+00\n",
" -2.78881827e+00 7.74330773e-01 -1.94060957e+00 -2.86786650e+00\n",
" 1.75852855e+00 -4.44305982e+00 -6.81204807e-01 -5.05032115e+00\n",
" 5.28627158e+00 2.68859398e+00 -2.92433364e+00 2.57094940e+00\n",
" 1.37564652e+00 -2.57942147e+00 -2.04811099e+00 -4.83887337e-01\n",
" -1.38026603e+00 -1.77942603e+00 9.97672525e-01 1.01490272e+00\n",
" -3.14195169e+00 3.58652238e+00 -1.43862083e+00 -3.45362080e+00\n",
" -6.23216919e+00 2.24271464e+00 4.58909896e-01 8.52641494e-01\n",
" 9.66300741e-01 -4.11629542e+00 -1.32436360e+00 -2.17870386e-01\n",
" -2.03424762e+00 -1.02868768e+00 1.10295000e-03 1.79872792e+00\n",
" -1.54523860e+00 1.02309644e+00 -1.94769116e-01 -1.87679095e+00\n",
" 1.40028689e-01 -2.07964322e+00 1.50673460e+00 1.06815857e+00\n",
" -2.39227153e+00 2.49650933e+00 -1.20712724e-01 4.49401542e+00\n",
" -6.84051885e-01 1.19440726e+00 5.85455452e-01 -7.25294938e-01\n",
" 8.41643616e-02 -7.74277153e-01 -3.36534927e+00 2.27357440e+00\n",
" 1.88224226e-01 7.03248146e-01 -3.96221517e+00 6.46653982e-01\n",
" 1.57394111e+00 -1.62008225e+00 -1.91353342e+00 -9.98011403e-01\n",
" -3.87911831e+00 -3.43243765e+00 1.94567697e+00 3.79947526e-01\n",
" -7.92203957e-01 -1.74439952e+00 1.55422758e-02 1.45609675e+00\n",
" 3.14859016e+00 2.81420548e-01 2.01471346e+00 3.38070938e+00\n",
" 1.46252801e-01 9.68040086e-03 -1.90296413e+00 -2.17933676e+00\n",
" 8.50053965e-01 -3.72028428e-01 -7.23923173e-01 1.79107372e+00\n",
" -3.88897555e-01 1.17728499e-01 3.36440365e+00 3.44802335e+00\n",
" -1.59329070e+00 1.22095408e+00 -2.77547612e+00 1.35087301e+00\n",
" -1.26330081e+00 7.96471193e-02 1.20148946e-01 -4.58984710e+00\n",
" 1.10596959e-01 -7.88150531e-01 1.79783050e+00 4.09962257e+00\n",
" 1.33073824e+00 2.41813874e+00 3.80259368e+00 -5.07135413e-01\n",
" 2.17569277e+00 5.23167504e-01 -1.08442726e+00 -1.19110812e+00\n",
" -9.02628159e-01 -9.15813931e-01 -6.59167192e-01 1.41200375e+00\n",
" -8.77269020e-01 7.15534475e-01 -2.96521859e+00 -1.68949365e+00\n",
" 2.12987663e+00 1.97952105e+00 2.44776243e+00 -2.87995280e+00\n",
" -1.00687024e+00 1.39420026e+00 3.39596080e+00 1.95171287e+00\n",
" -3.12346600e+00 1.65667972e+00 -7.49036476e-01 3.21093869e+00\n",
" 3.55249655e-01 2.91399168e+00 -8.72230246e-01 -4.51166614e-01\n",
" 4.01668788e-01 -4.13269521e+00 2.22918447e+00 -3.37554597e+00\n",
" -2.66411510e+00 5.54279299e+00 1.89629566e-01 -8.04002640e-01\n",
" -7.20085056e-01 4.50683038e+00 5.18006993e-01 1.97492930e+00\n",
" 1.04439703e+00 -8.12754455e-01 6.99188264e-01 1.57830404e+00\n",
" 6.05898635e-01 -3.34057941e+00 1.10190672e+00 1.88449928e+00\n",
" 1.18733530e+00 -1.12222942e-01 1.96995504e-01 1.43437444e+00\n",
" -4.92085143e+00 6.03427298e-01 -3.86117031e-01 2.57904569e+00\n",
" 2.79959886e+00 -2.32688985e+00 -1.67629996e+00 1.95376894e+00\n",
" -8.58775488e-01 -2.04511790e+00 2.97102406e-02 -3.16369163e-01\n",
" -8.00430521e-01 -1.61806714e+00 2.17310826e+00 -1.58889535e+00\n",
" -1.31416483e+00 2.14147485e+00 -6.24255969e-01 9.26834639e-01\n",
" 2.32180179e-01 8.14483829e-01 6.00136848e-01 -2.50411036e+00\n",
" 1.52563681e+00 5.10746272e-01 4.40776339e+00 -3.06864283e+00\n",
" -1.20868801e+00 6.11519847e-01 -3.55649812e+00 -2.36629365e-01\n",
" 4.04877675e+00 -2.83385080e-01 -3.04533380e+00 9.99547445e-01]\n",
"Train with data prior to: 2017-06-30T00:00:00.000000000 (252 obs)\n",
"(250, 10)\n",
"[ 1.40143333e+00 -1.29864824e+00 4.02771434e-01 -3.79215483e+00\n",
" 3.19396996e-01 1.84302899e+00 2.86730528e+00 -1.60162365e+00\n",
" -2.06392042e+00 -1.93372405e+00 1.45602797e+00 -7.81409701e-01\n",
" -1.63568027e+00 2.88452029e+00 2.57382194e+00 9.11684818e-02\n",
" -1.28576167e+00 5.74142008e-01 -3.76119903e+00 1.62352125e+00\n",
" 3.42971802e+00 1.21439473e+00 -5.51824480e+00 -3.06308838e+00\n",
" -8.86388684e-02 1.66383035e+00 -2.15028682e+00 9.33928400e-01\n",
" 2.01783726e+00 -4.25380889e-01 1.58834742e+00 -9.64827937e-01\n",
" -6.39867765e-01 -4.69476077e-01 3.09045712e-01 -4.10097259e+00\n",
" 2.97756804e+00 2.69938275e+00 2.61605759e+00 -2.93037410e+00\n",
" 8.43025753e-01 3.35921492e+00 -1.52263734e+00 -1.12080518e+00\n",
" -1.65459413e+00 1.68348326e+00 2.31217261e-01 -1.08402608e+00\n",
" 3.89679942e+00 -1.40038764e+00 -2.70578086e+00 -3.33404066e-01\n",
" 2.76860360e+00 -6.48511681e-01 -1.56057622e+00 2.85921534e-01\n",
" -2.79369876e+00 2.09559071e-01 -2.45853992e+00 -2.87644124e+00\n",
" 1.89738045e+00 -4.76223189e-01 3.98886152e+00 3.67542011e+00\n",
" -3.65879451e-01 2.56520772e+00 -1.91253485e+00 1.90907376e+00\n",
" 1.65547150e+00 1.80174353e+00 1.02841115e+00 2.40883719e+00\n",
" 3.67960960e+00 5.83985611e-01 -1.08216768e+00 1.89329093e+00\n",
" 4.34275727e+00 -3.79165181e-02 3.85157259e+00 3.45386638e-01\n",
" -4.44572200e-01 -2.10135997e+00 9.51220912e-01 2.72166558e-01\n",
" -2.81907282e+00 -4.44639824e+00 -3.33444271e+00 1.60029806e+00\n",
" 2.76409179e+00 1.53381320e+00 -3.92552374e-01 2.43898418e+00\n",
" -3.27025355e+00 -3.03368526e+00 2.19080632e+00 9.07455731e-01\n",
" 2.96054209e+00 -3.10969805e+00 1.87661736e+00 2.30596731e+00\n",
" -4.58148008e-01 -2.19897934e+00 2.97182419e+00 2.90170256e+00\n",
" 2.26786665e+00 -2.52126412e+00 -6.71086151e-01 -1.05265872e-03\n",
" -4.95608763e-01 -2.02489795e+00 -3.57597399e+00 2.38092857e+00\n",
" -2.18102626e+00 6.80551273e-01 -5.69031115e-01 -1.26531568e+00\n",
" -2.93564286e+00 -2.09936695e+00 2.25953947e+00 4.33521099e+00\n",
" 1.17361112e+00 -4.77810878e-01 5.68082466e-01 -3.40771886e+00\n",
" 2.34041056e+00 -3.37335793e+00 2.49103883e-01 1.93083417e+00\n",
" -2.75593397e-01 1.22266091e+00 1.08690072e+00 3.39820560e+00\n",
" 1.28506099e+00 -2.86067582e+00 3.26526845e-01 -5.86670593e-02\n",
" -2.13048750e+00 8.60614766e-01 1.31687115e-01 -1.47327702e+00\n",
" 2.49442013e-01 1.81417699e+00 4.33340502e+00 -9.20384552e-02\n",
" -2.11083274e+00 -1.25002971e-02 2.41539759e+00 4.56743650e-01\n",
" -1.15728286e+00 -9.16134838e-01 -3.07512491e+00 7.66410136e-01\n",
" 3.12388120e+00 -2.43273782e-01 2.56834690e+00 -2.82189673e+00\n",
" 2.58047354e-01 4.00095532e+00 -2.21698231e+00 -2.99537282e+00\n",
" 4.52940371e-01 1.16193862e+00 -6.99559761e-01 2.93838555e+00\n",
" 1.47359811e+00 7.00340279e-01 4.01141286e+00 -2.86780743e-01\n",
" 7.19814721e-01 -1.80806375e-01 -1.34567452e+00 -1.20997130e+00\n",
" -6.95865065e-01 3.35810182e+00 5.00341068e-01 1.50681551e-01\n",
" -1.67752573e-01 6.49523896e-01 -4.00795944e-01 -8.46765698e-01\n",
" -3.65546765e+00 1.55517854e+00 -3.78789362e-01 2.39004596e+00\n",
" 2.10922590e+00 -4.29487571e+00 -9.50918646e-01 -3.12351998e+00\n",
" -1.24687827e+00 -1.70994900e+00 -2.08594678e+00 -1.22057658e+00\n",
" -9.96302707e-02 1.45838321e+00 -1.59669970e+00 -4.45878729e-02\n",
" 4.37326183e+00 2.08741980e+00 -1.41846244e+00 -2.91393493e+00\n",
" -2.99558423e-01 -8.40436883e-01 -4.07783654e+00 -2.12320850e+00\n",
" 2.74170972e+00 -3.03806395e+00 2.60961419e+00 6.07073141e-02\n",
" 3.36294570e+00 -2.69616318e+00 8.09998768e-01 -1.72941781e-01\n",
" -1.66766953e+00 -2.72410922e+00 3.01865554e+00 4.16681113e-01\n",
" -3.41455494e+00 -8.79964894e-01 2.51088309e+00 3.39334052e+00\n",
" 1.51505474e+00 -2.43271819e+00 -1.95832652e+00 -5.23817157e-01\n",
" -2.74475633e+00 1.87242604e+00 2.23260028e+00 3.11949217e+00\n",
" -1.09655217e+00 1.92830739e+00 -3.77625435e+00 -2.77792813e+00\n",
" -2.33936867e+00 9.91573805e-01 -3.01717332e-01 2.73635763e+00\n",
" 1.58909869e+00 -2.15572636e-01 2.88845645e+00 2.35089619e+00\n",
" 2.88384648e+00 -2.52028836e+00 4.18987028e+00 -8.09362806e-01\n",
" -2.47066605e+00 6.07513051e-01 -1.62554120e+00 3.14501998e-01\n",
" -4.68879870e-01 -1.39702770e+00]\n",
"Train with data prior to: 2017-09-30T00:00:00.000000000 (250 obs)\n",
"(248, 10)\n",
"[ 4.59978437e+00 3.57650332e+00 -1.83388653e-03 1.07634932e-01\n",
" 2.63980542e+00 9.66862679e-01 6.57785134e-01 1.12533008e+00\n",
" 4.17631022e-01 -7.76582516e-01 -4.05897701e+00 -1.08358453e+00\n",
" -1.17967790e+00 -2.06910208e+00 -3.20511096e+00 1.05300551e-01\n",
" 9.23317602e-01 5.33831321e+00 -1.55708891e+00 8.11451791e-01\n",
" -2.33322591e+00 5.12861998e-01 -1.38328259e+00 3.45105938e-01\n",
" 1.97448346e+00 -3.96331624e-01 -3.43589609e+00 -2.46434611e+00\n",
" -5.84556949e-01 -5.59945888e-01 2.33292345e+00 -1.65331501e+00\n",
" 3.01332158e+00 3.11698279e+00 -4.35410875e-01 -3.48996194e+00\n",
" -3.61354828e-01 4.30062911e+00 1.06520360e+00 -2.42653905e+00\n",
" -4.41089252e-01 -9.37514755e-01 -1.74850020e+00 -3.44218300e+00\n",
" 1.85363006e+00 -4.49801499e-01 2.51193649e+00 -2.73908555e+00\n",
" -8.18994629e-01 -1.83990297e+00 2.60549798e+00 -3.40258645e-01\n",
" 3.12242175e+00 6.03370161e-01 -4.31959017e+00 -2.55212882e+00\n",
" -4.60376904e+00 -1.55682212e+00 -5.39332311e-01 -1.99345342e+00\n",
" 1.88065658e+00 6.17950199e-01 -1.42190422e+00 -2.77204272e+00\n",
" -1.76615162e-02 -1.67397541e+00 1.40783867e+00 -1.71560995e+00\n",
" -1.85395051e+00 -9.26556506e-01 9.83542914e-01 -1.49594792e+00\n",
" 4.34901975e-02 1.49476277e+00 5.86127581e-01 2.30808531e-01\n",
" -1.55743146e+00 -4.97547690e-01 3.11191311e+00 -3.49429011e+00\n",
" 1.99406138e+00 4.57666811e+00 -1.58115357e+00 -3.62941404e+00\n",
" -7.32042260e-01 -1.80022705e-01 -1.77181494e+00 -3.93411882e+00\n",
" 2.20246870e+00 7.76954362e-01 -2.16680889e+00 1.89298288e-01\n",
" -4.18229769e-01 -3.17989184e+00 3.17817490e+00 -4.12933047e-01\n",
" 3.11637618e+00 -1.06662356e+00 -2.16879499e+00 1.17147895e-01\n",
" 3.63284480e+00 -1.55657188e+00 -7.21883292e-01 -4.44230990e+00\n",
" 2.04939242e+00 3.45070132e+00 -1.46025385e+00 6.57077135e-01\n",
" -9.10194842e-01 5.20315065e-01 2.50962738e+00 -1.67894344e+00\n",
" 1.90852144e+00 -1.66835699e+00 -2.62243001e+00 2.15466452e+00\n",
" -2.76371430e+00 -2.44994192e+00 -5.10237842e+00 8.79251623e-01\n",
" 6.25361920e-01 -2.56115933e+00 3.99474222e+00 -9.17917504e-01\n",
" 3.01621634e+00 -2.88213085e+00 -7.16722033e-01 3.93642908e+00\n",
" -1.15228982e+00 -1.53862591e+00 -2.65831871e+00 3.10929522e+00\n",
" 5.62335612e-01 2.78500409e+00 3.90367940e+00 4.63808280e-02\n",
" -4.70517228e-01 3.63216108e-01 3.03254989e+00 -2.98278695e-01\n",
" -3.49022165e+00 1.52633902e+00 -1.06638138e+00 3.38003829e+00\n",
" -4.02678109e+00 -5.18289357e-01 -2.28904706e+00 -9.67844291e-01\n",
" 3.13723408e+00 -1.98751400e+00 2.38779238e+00 6.89893957e-01\n",
" 1.01689812e+00 -1.15981559e+00 -1.37801905e+00 -9.68318221e-01\n",
" 2.93498306e-01 -4.31747545e-02 2.69089426e+00 -7.92715945e-01\n",
" 5.03015231e+00 -1.15292435e+00 -1.35471405e+00 -6.76725163e-01\n",
" -2.34664505e-01 -1.00678201e+00 1.58807407e-01 -2.47484584e+00\n",
" 3.58119121e-01 4.34188029e+00 -3.06212608e+00 -1.91411491e+00\n",
" 1.67386762e+00 3.61214471e+00 3.98598666e+00 2.65083052e-01\n",
" 2.27779384e-01 2.67839837e+00 2.93129300e+00 -3.94992411e+00\n",
" 3.01815778e+00 -3.68359914e-01 -9.15563624e-01 1.76643227e+00\n",
" -2.11863158e+00 -3.13846786e-01 -4.32256376e-01 -6.40754065e+00\n",
" -1.78945229e+00 -5.33366951e+00 2.54006669e+00 1.35825359e+00\n",
" -6.78709273e-01 -7.00980889e-01 2.45282331e-01 2.14709492e+00\n",
" -2.63885191e+00 -3.58437941e+00 7.02142735e-01 -3.08526603e+00\n",
" 2.44167521e+00 -2.08562012e+00 -1.37458482e+00 8.83810517e-01\n",
" -7.98936062e-01 -3.76958926e+00 3.88227282e+00 3.79868845e+00\n",
" -1.38545201e+00 -3.14638751e+00 -9.39833864e-01 1.91760136e+00\n",
" 6.29097207e-01 -5.97131759e-01 3.03842650e+00 -7.66926269e-01\n",
" -8.07099660e-01 -3.38846581e-01 2.49255731e+00 1.65177415e+00\n",
" 3.23683482e+00 -1.16169342e+00 -3.42558016e+00 1.88582086e+00\n",
" -3.10441647e+00 -2.21831363e+00 -1.81098438e+00 -3.65708694e+00\n",
" 3.01641044e+00 2.38015995e+00 2.92211876e-01 -3.37975644e+00\n",
" -2.01965694e+00 3.08003937e+00 4.88420768e+00 -1.85595359e+00\n",
" -8.24002124e-01 1.45331886e+00 2.27667189e+00 9.17233433e-01\n",
" -3.74104460e-01 -1.82383080e+00 3.48952273e-02 -8.50020776e-01\n",
" -9.00298924e-01 2.07407883e+00 -1.06131863e+00 7.78687109e-01]\n",
"Train with data prior to: 2017-12-31T00:00:00.000000000 (248 obs)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3844662304.py:26: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" predictions = pd.Series(index=features.index)\n"
]
}
],
"source": [
"from sklearn.linear_model import LinearRegression\n",
"from sklearn.ensemble import ExtraTreesRegressor\n",
"\n",
"linear_models,linear_preds = make_walkforward_model(X,y,algo=LinearRegression())\n",
"tree_models,tree_preds = make_walkforward_model(X,y,algo=ExtraTreesRegressor())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that no predictions can be made prior to the first trained model, so it's important to `dropna()` on predictions prior to use. "
]
},
{
"cell_type": "code",
"execution_count": 117,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Models:\n",
"2017-12-31 LinearRegression()\n",
"2018-03-31 LinearRegression()\n",
"2018-06-30 LinearRegression()\n",
"2018-09-30 LinearRegression()\n",
"2018-12-31 LinearRegression()\n",
"dtype: object\n",
"\n",
"Predictions:\n",
"time ticker \n",
"2017-12-31 XRP_USD -0.033506\n",
"2018-01-01 XRP_USD -0.021429\n",
"2018-01-02 XRP_USD -0.059872\n",
"2018-01-03 XRP_USD -0.226922\n",
"2018-01-04 XRP_USD -0.013675\n",
"dtype: float64\n"
]
}
],
"source": [
"print(\"Models:\")\n",
"print(linear_models.head())\n",
"print()\n",
"print(\"Predictions:\")\n",
"print(linear_preds.dropna().head())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It can be instructive to see how the linear model coefficients evolve over time:"
]
},
{
"cell_type": "code",
"execution_count": 118,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'Weighting Coefficients for \\nLinear Model'}>"
]
},
"execution_count": 118,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"pd.DataFrame([model.coef_ for model in linear_models],\n",
" columns=X.columns,index=linear_models.index).plot(title='Weighting Coefficients for \\nLinear Model')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Next, I'll create a simple function to evaluate multiple model performance metrics, called `calc_scorecard`. Further detail on this method of model evaluation is provided in the earlier post [Model evaluation](model_evaluation.html). "
]
},
{
"cell_type": "code",
"execution_count": 119,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n"
]
},
{
"data": {
"text/plain": [
"RSQ 0.514434\n",
"MAE 0.024298\n",
"directional_accuracy 74.096441\n",
"edge 0.023101\n",
"noise 0.036503\n",
"edge_to_noise 0.632873\n",
"edge_to_mae 0.950754\n",
"Name: Linear, dtype: float64"
]
},
"execution_count": 119,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn.metrics import r2_score,mean_absolute_error\n",
"\n",
"def calc_scorecard(y_pred,y_true):\n",
" \n",
" def make_df(y_pred,y_true):\n",
" y_pred.name = 'y_pred'\n",
" y_true.name = 'y_true'\n",
"\n",
" df = pd.concat([y_pred,y_true],axis=1).dropna()\n",
"\n",
" df['sign_pred'] = df.y_pred.apply(np.sign)\n",
" df['sign_true'] = df.y_true.apply(np.sign)\n",
" df['is_correct'] = 0\n",
" df.loc[df.sign_pred * df.sign_true > 0 ,'is_correct'] = 1 # only registers 1 when prediction was made AND it was correct\n",
" df['is_incorrect'] = 0\n",
" df.loc[df.sign_pred * df.sign_true < 0,'is_incorrect'] = 1 # only registers 1 when prediction was made AND it was wrong\n",
" df['is_predicted'] = df.is_correct + df.is_incorrect\n",
" df['result'] = df.sign_pred * df.y_true \n",
" return df\n",
" \n",
" df = make_df(y_pred,y_true)\n",
" \n",
" scorecard = pd.Series()\n",
" # building block metrics\n",
" scorecard.loc['RSQ'] = r2_score(df.y_true,df.y_pred)\n",
" scorecard.loc['MAE'] = mean_absolute_error(df.y_true,df.y_pred)\n",
" scorecard.loc['directional_accuracy'] = df.is_correct.sum()*1. / (df.is_predicted.sum()*1.)*100\n",
" scorecard.loc['edge'] = df.result.mean()\n",
" scorecard.loc['noise'] = df.y_pred.diff().abs().mean()\n",
" # derived metrics\n",
" scorecard.loc['edge_to_noise'] = scorecard.loc['edge'] / scorecard.loc['noise']\n",
" scorecard.loc['edge_to_mae'] = scorecard.loc['edge'] / scorecard.loc['MAE']\n",
" return scorecard \n",
"\n",
"calc_scorecard(y_pred=linear_preds,y_true=y).rename('Linear')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Since we are concerned about not only average performance but also period-to-period consistency, I'll create a simple wrapper function which recalculates our metrics by quarter. "
]
},
{
"cell_type": "code",
"execution_count": 121,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"time 2019-12-31 2020-12-31 2021-12-31\n",
"RSQ 0.574333 0.539131 0.493258\n",
"MAE 0.011714 0.028011 0.042786\n",
"directional_accuracy 74.529617 73.463781 74.762359\n",
"edge 0.010995 0.026091 0.042421\n",
"noise 0.021044 0.047610 0.067754\n",
"edge_to_noise 0.522479 0.548008 0.626110\n",
"edge_to_mae 0.938615 0.931456 0.991477\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n"
]
},
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'Prediction Edge vs. MAE'}, xlabel='time'>"
]
},
"execution_count": 121,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"def scores_over_time(y_pred,y_true):\n",
" df = pd.concat([y_pred,y_true],axis=1).dropna().reset_index().set_index('time')\n",
" scores = df.resample('A').apply(lambda df: calc_scorecard(df[y_pred.name],df[y_true.name]))\n",
" return scores\n",
"\n",
"scores_by_year = scores_over_time(y_pred=linear_preds,y_true=y)\n",
"print(scores_by_year.tail(3).T)\n",
"scores_by_year['edge_to_mae'].plot(title='Prediction Edge vs. MAE')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Making the Ensemble Model\n",
"Now that we've trained base models and generated out-of-sample predictions, it's time to train the stacked generalization ensemble model. \n",
"\n",
"Training the ensemble model simply requires feeding in the base models' predictions in as the X dataframe. To clean up the data and ensure the X and y are of compatible dimensions, I've created a short data preparation function. \n",
"\n",
"Here, we'll use Lasso to train the ensemble becuase it is one of a few linear models which can be constrained to `positive = True`. This will ensure that the ensemble will assign either a positive or zero weight to each model, for reasons described above. "
]
},
{
"cell_type": "code",
"execution_count": 122,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['2017-12-31T00:00:00.000000000' '2018-03-31T00:00:00.000000000'\n",
" '2018-06-30T00:00:00.000000000' '2018-09-30T00:00:00.000000000'\n",
" '2018-12-31T00:00:00.000000000' '2019-03-31T00:00:00.000000000'\n",
" '2019-06-30T00:00:00.000000000' '2019-09-30T00:00:00.000000000'\n",
" '2019-12-31T00:00:00.000000000' '2020-03-31T00:00:00.000000000'\n",
" '2020-06-30T00:00:00.000000000' '2020-09-30T00:00:00.000000000'\n",
" '2020-12-31T00:00:00.000000000' '2021-03-31T00:00:00.000000000'\n",
" '2021-06-30T00:00:00.000000000' '2021-09-30T00:00:00.000000000']\n",
"2017-12-31T00:00:00.000000000\n",
"Train with data prior to: 2017-12-31T00:00:00.000000000 (66 obs)\n",
"2018-03-31T00:00:00.000000000\n",
"Train with data prior to: 2018-03-31T00:00:00.000000000 (6311 obs)\n",
"2018-06-30T00:00:00.000000000\n",
"Train with data prior to: 2018-06-30T00:00:00.000000000 (6326 obs)\n",
"2018-09-30T00:00:00.000000000\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3564051913.py:9: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" models = pd.Series(index=recalc_dates)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Train with data prior to: 2018-09-30T00:00:00.000000000 (6321 obs)\n",
"2018-12-31T00:00:00.000000000\n",
"Train with data prior to: 2018-12-31T00:00:00.000000000 (6316 obs)\n",
"2019-03-31T00:00:00.000000000\n",
"Train with data prior to: 2019-03-31T00:00:00.000000000 (6316 obs)\n",
"2019-06-30T00:00:00.000000000\n",
"Train with data prior to: 2019-06-30T00:00:00.000000000 (6321 obs)\n",
"2019-09-30T00:00:00.000000000\n",
"Train with data prior to: 2019-09-30T00:00:00.000000000 (6321 obs)\n",
"2019-12-31T00:00:00.000000000\n",
"Train with data prior to: 2019-12-31T00:00:00.000000000 (6321 obs)\n",
"2020-03-31T00:00:00.000000000\n",
"Train with data prior to: 2020-03-31T00:00:00.000000000 (6316 obs)\n",
"2020-06-30T00:00:00.000000000\n",
"Train with data prior to: 2020-06-30T00:00:00.000000000 (6321 obs)\n",
"2020-09-30T00:00:00.000000000\n",
"Train with data prior to: 2020-09-30T00:00:00.000000000 (6321 obs)\n",
"2020-12-31T00:00:00.000000000\n",
"Train with data prior to: 2020-12-31T00:00:00.000000000 (6321 obs)\n",
"2021-03-31T00:00:00.000000000\n",
"Train with data prior to: 2021-03-31T00:00:00.000000000 (6316 obs)\n",
"2021-06-30T00:00:00.000000000\n",
"Train with data prior to: 2021-06-30T00:00:00.000000000 (6321 obs)\n",
"2021-09-30T00:00:00.000000000\n",
"Train with data prior to: 2021-09-30T00:00:00.000000000 (6321 obs)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/3564051913.py:27: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" predictions = pd.Series(index=features.index)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"time ticker \n",
"2017-12-31 XRP_USD -0.027641\n",
"2018-01-01 XRP_USD 0.106651\n",
"2018-01-02 XRP_USD 0.012918\n",
"2018-01-03 XRP_USD -0.069425\n",
"2018-01-04 XRP_USD -0.006091\n",
"Name: ensemble, dtype: float64\n"
]
}
],
"source": [
"from sklearn.linear_model import LassoCV\n",
"def prepare_Xy(X_raw,y_raw):\n",
" ''' Utility function to drop any samples without both valid X and y values'''\n",
" Xy = X_raw.join(y_raw).replace({np.inf:None,-np.inf:None}).dropna()\n",
" X = Xy.iloc[:,:-1]\n",
" y = Xy.iloc[:,-1]\n",
" return X,y\n",
"X_ens, y_ens = prepare_Xy(X_raw=pd.concat([linear_preds.rename('linear'),tree_preds.rename('tree')],\n",
" axis=1),y_raw=y)\n",
"\n",
"ensemble_models,ensemble_preds = make_walkforward_model(X_ens,y_ens,algo=LassoCV(positive=True))\n",
"ensemble_preds = ensemble_preds.rename('ensemble')\n",
"print(ensemble_preds.dropna().head())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that the ensemble's predictions don't begin until July, since the earliest trained ensemble model isn't available until end of Q2. This is necessary to make sure the ensemble model is trained on out of sample data - and that its predictions are _also_ out of sample. \n",
"\n",
"Again, we can look at the coefficients over time of the ensemble model. Keep in mind that the coefficients of the ensemble model represents how much weight is being given to each base model. In this case, it appears that our tree model is much more useful relative to the linear model, though the linear model is gradually catching up. "
]
},
{
"cell_type": "code",
"execution_count": 123,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'Weighting Coefficients for \\nSimple Two-Model Ensemble'}>"
]
},
"execution_count": 123,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"pd.DataFrame([model.coef_ for model in ensemble_models],\n",
" columns=X_ens.columns,index=ensemble_models.index).plot(title='Weighting Coefficients for \\nSimple Two-Model Ensemble')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Performance of Ensemble vs. Base Models\n",
"\n",
"Now that we have predictions from both the base models and ensemble model, we can explore how the ensemble performs relative to base models. Is the whole really more than the sum of the parts?"
]
},
{
"cell_type": "code",
"execution_count": 124,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Linear Tree Ensemble\n",
"RSQ 0.514434 0.413459 0.475730\n",
"MAE 0.024298 0.026169 0.025543\n",
"directional_accuracy 74.096441 71.701108 73.512556\n",
"edge 0.023101 0.021521 0.022577\n",
"noise 0.036048 0.036588 0.035562\n",
"edge_to_noise 0.640854 0.588184 0.634869\n",
"edge_to_mae 0.950754 0.822380 0.883900\n"
]
}
],
"source": [
"# calculate scores for each model\n",
"score_ens = calc_scorecard(y_pred=ensemble_preds,y_true=y_ens).rename('Ensemble')\n",
"score_linear = calc_scorecard(y_pred=linear_preds,y_true=y_ens).rename('Linear')\n",
"score_tree = calc_scorecard(y_pred=tree_preds,y_true=y_ens).rename('Tree')\n",
"\n",
"\n",
"scores = pd.concat([score_linear,score_tree,score_ens],axis=1)\n",
"scores.loc['edge_to_noise'].plot.bar(color='grey',legend=True)\n",
"scores.loc['edge'].plot(color='green',legend=True)\n",
"scores.loc['noise'].plot(color='red',legend=True)\n",
"\n",
"plt.show()\n",
"print(scores)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": []
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"### Observations:\n",
"* The tree model is relatively high accuracy and high \"edge\" - but it's very noisy (i.e., its predictions swing wildly from day to day, making it difficult to trade). \n",
"* The linear model has lower accuracy & edge, but is much less noisy. \n",
"* Ensembling the two models together preserves the accuracy of the tree model but cuts the prediction noise nearly in half. \n",
"* While not the most meaningful measurement metric, it's amazing to see the ensemble's RSQ more than doubled the better of the two base models. \n",
"\n",
"In real-world trading, it's also very important to understand how consistenly perform, and if performance is trending better or worse. Below, we'll plot four of the performance statistics by year across time "
]
},
{
"cell_type": "code",
"execution_count": 125,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n",
"/var/folders/tf/6j1p9w152qscfmn1hcd_06qh0000gn/T/ipykernel_11235/2664411021.py:23: DeprecationWarning: The default dtype for empty Series will be 'object' instead of 'float64' in a future version. Specify a dtype explicitly to silence this warning.\n",
" scorecard = pd.Series()\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 648x432 with 4 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"fig,[[ax1,ax2],[ax3,ax4]] = plt.subplots(2,2,figsize=(9,6))\n",
"metric = 'RSQ'\n",
"scores_over_time(y_pred=ensemble_preds.rename('ensemble'),y_true=y)[metric].rename('Ensemble').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True,ax=ax1)\n",
"scores_over_time(y_pred=linear_preds.rename('linear'),y_true=y)[metric].rename('Linear').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax1)\n",
"scores_over_time(y_pred=tree_preds.rename('tree'),y_true=y)[metric].rename(\"Tree\").\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax1)\n",
"\n",
"metric = 'edge'\n",
"scores_over_time(y_pred=ensemble_preds.rename('ensemble'),y_true=y)[metric].rename('Ensemble').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True,ax=ax2)\n",
"scores_over_time(y_pred=linear_preds.rename('linear'),y_true=y)[metric].rename('Linear').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax2)\n",
"scores_over_time(y_pred=tree_preds.rename('tree'),y_true=y)[metric].rename(\"Tree\").\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax2)\n",
"\n",
"metric = 'noise'\n",
"scores_over_time(y_pred=ensemble_preds.rename('ensemble'),y_true=y)[metric].rename('Ensemble').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True,ax=ax3)\n",
"scores_over_time(y_pred=linear_preds.rename('linear'),y_true=y)[metric].rename('Linear').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax3)\n",
"scores_over_time(y_pred=tree_preds.rename('tree'),y_true=y)[metric].rename(\"Tree\").\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax3)\n",
"\n",
"metric = 'edge_to_noise'\n",
"scores_over_time(y_pred=ensemble_preds.rename('ensemble'),y_true=y)[metric].rename('Ensemble').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True,ax=ax4)\n",
"scores_over_time(y_pred=linear_preds.rename('linear'),y_true=y)[metric].rename('Linear').\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax4)\n",
"scores_over_time(y_pred=tree_preds.rename('tree'),y_true=y)[metric].rename(\"Tree\").\\\n",
"plot(title=f'{metric.upper()} over time',legend=True, alpha = 0.5, linestyle='--',ax=ax4)\n",
"\n",
"plt.tight_layout()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Observations:\n",
"* We can see that the ensemble is fairly consistently more effective than either of the base models. \n",
"* All models seem to be getting better over time (and as they have more data on which to train). \n",
"* The ensemble also appears to be a bit more consistent over time. Much like a diversified portfolio of stocks should be less volatile than the individual stocks within it, an ensemble of diverse models will often perform more consistently across time"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Next Steps\n",
"The stacked generalization methodology is highly flexible. There are countless directions you can take this, including:\n",
"* __More model types__: add SVMs, deep learning models, regularlized regressions, and dimensionality reduction models to the mix\n",
"* __More hyperparameter combinations__: try multiple sets of hyperparameters on a particular algorithm.\n",
"* __Orthogonal feature sets__: try training base models on different subsets of features. Avoid the \"curse of dimensionality\" by limiting each base model to an appropriately small number of features. \n",
"\n",
"## Summary\n",
"\n",
"This final post, combined with the five previous posts, presents an end-to-end framework for applying supervised machine learning techniques to financial time series data, in a way which helps mitigate the several unique challenges of this domain. \n",
"\n",
"* [Data management](ML_data_management.html)\n",
"* [Feature engineering](feature_engineering.html)\n",
"* [Feature selection](feature_selection.html)\n",
"* [Walk-forward modeling](walk_forward_model_building.html)\n",
"* [Model evaluation](model_evaluation.html)\n",
"\n",
"Please feel free to add to the comment section with your comments and questions on this post. I'm also interested in ideas for future posts. \n",
"\n",
"Going forward, I plan to shift gears from tutorials to research on market anomalies and trading opportunities. \n",
"\n",
"## One more thing...\n",
"If you've found this post useful, please consider subscribing to the email list to be notified of future posts (email addresses will only be used for this purpose...). \n",
"\n",
"You can also follow me on [twitter](https://twitter.com/data2alpha) and forward to a friend or colleague who may find this topic interesting. "
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.7"
}
},
"nbformat": 4,
"nbformat_minor": 2
}