{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "cd59315b", "metadata": {}, "outputs": [], "source": [ "# Created by: Sergiu Iatco / 2021.10.01\n", "# https://github.com/itsergiu/Predict-S-P-500-correction-with-Shiller-PE-Ratio\n", "# How to predict S&P 500 correction\n", "\n", "# Nadeem Walayat - The Market Oracle\n", "# http://www.marketoracle.co.uk/Article69423.html\n", "\n", "# Vitaliy Katsenelson \n", "# https://contrarianedge.com/sideways-market/\n", "\n", "# https://www.marketwatch.com/story/market-analysts-cant-agree-on-where-stocks-are-going-next-so-double-check-the-data-before-you-buy-or-sell-11632447577\n", "\n", "# Purpose: to build a machine learning model to predict S&P 500 correction within next 6 months" ] }, { "cell_type": "markdown", "id": "cb086286", "metadata": {}, "source": [ "Disclaimer:\n", "\n", "Author do not assume and hereby disclaim any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from negligence, accident, or any other cause. The software is provided \"as is\", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement.\n", "\n", "The below is a matter of opinion provided for general information purposes only and is not intended as investment advice. Information and analysis above are derived from sources and utilising methods believed to be reliable, but I cannot accept responsibility for any trading losses you may incur as a result of this analysis. Individuals should consult with their personal financial advisors before engaging in any trading activities." ] }, { "cell_type": "code", "execution_count": 2, "id": "c589f872", "metadata": {}, "outputs": [], "source": [ "# !pip install pandas\n", "# !pip install dateparser\n", "# !pip install xgboost\n", "# !pip install sklearn\n", "# !pip install numpy\n", "# !pip install plotly_express\n", "# !pip install fredapi" ] }, { "cell_type": "code", "execution_count": 3, "id": "11aeffbf", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "# import dateparser\n", "import xgboost as xgb\n", "from sklearn import model_selection\n", "from sklearn.metrics import r2_score\n", "import numpy as np\n", "from fredapi import Fred\n", "import plotly.express as px\n", "from IPython.display import display" ] }, { "cell_type": "code", "execution_count": 4, "id": "80127d24", "metadata": {}, "outputs": [], "source": [ "url_per='https://www.multpl.com/shiller-pe/table/by-month'" ] }, { "cell_type": "code", "execution_count": 5, "id": "53e93d08", "metadata": {}, "outputs": [], "source": [ "ls_tables = pd.read_html(url_per)" ] }, { "cell_type": "code", "execution_count": 6, "id": "67622917", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "list" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(ls_tables)" ] }, { "cell_type": "code", "execution_count": 7, "id": "7705f269", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(ls_tables)" ] }, { "cell_type": "code", "execution_count": 8, "id": "40737471", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DateValue Value
0Oct 1, 202137.63
1Aug 1, 202138.44
2Jul 1, 202137.68
3Jun 1, 202136.86
4May 1, 202136.62
.........
1803Jun 1, 187112.59
1804May 1, 187112.59
1805Apr 1, 187112.05
1806Mar 1, 187111.19
1807Feb 1, 187110.92
\n", "

1808 rows × 2 columns

\n", "
" ], "text/plain": [ " Date Value Value\n", "0 Oct 1, 2021 37.63\n", "1 Aug 1, 2021 38.44\n", "2 Jul 1, 2021 37.68\n", "3 Jun 1, 2021 36.86\n", "4 May 1, 2021 36.62\n", "... ... ...\n", "1803 Jun 1, 1871 12.59\n", "1804 May 1, 1871 12.59\n", "1805 Apr 1, 1871 12.05\n", "1806 Mar 1, 1871 11.19\n", "1807 Feb 1, 1871 10.92\n", "\n", "[1808 rows x 2 columns]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ls_tables[0]" ] }, { "cell_type": "code", "execution_count": 9, "id": "b1d25959", "metadata": {}, "outputs": [], "source": [ "df_per=ls_tables[0]" ] }, { "cell_type": "code", "execution_count": 10, "id": "446abb4b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Date object\n", "Value Value float64\n", "dtype: object" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_per.dtypes" ] }, { "cell_type": "code", "execution_count": 11, "id": "90fd8321", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Date', 'Value Value']" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cols = df_per.columns.tolist()\n", "cols" ] }, { "cell_type": "code", "execution_count": 12, "id": "b86cecc5", "metadata": {}, "outputs": [], "source": [ "df_per.rename(\n", " columns=({ cols[1]: 'PER'}), \n", " inplace=True,)" ] }, { "cell_type": "code", "execution_count": 13, "id": "e7e7c386", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePER
0Oct 1, 202137.63
1Aug 1, 202138.44
2Jul 1, 202137.68
3Jun 1, 202136.86
4May 1, 202136.62
\n", "
" ], "text/plain": [ " Date PER\n", "0 Oct 1, 2021 37.63\n", "1 Aug 1, 2021 38.44\n", "2 Jul 1, 2021 37.68\n", "3 Jun 1, 2021 36.86\n", "4 May 1, 2021 36.62" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_per.head()" ] }, { "cell_type": "code", "execution_count": 14, "id": "f79dc51e", "metadata": {}, "outputs": [], "source": [ "url_sp='https://www.multpl.com/s-p-500-historical-prices/table/by-month'" ] }, { "cell_type": "code", "execution_count": 15, "id": "d9a9425a", "metadata": {}, "outputs": [], "source": [ "ls_tables = pd.read_html(url_sp)" ] }, { "cell_type": "code", "execution_count": 16, "id": "fc0e89f4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(ls_tables)" ] }, { "cell_type": "code", "execution_count": 17, "id": "b3722252", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePrice Value
0Oct 1, 20214357.04
1Aug 1, 20214450.37
2Jul 1, 20214358.13
3Jun 1, 20214238.49
4May 1, 20214167.85
\n", "
" ], "text/plain": [ " Date Price Value\n", "0 Oct 1, 2021 4357.04\n", "1 Aug 1, 2021 4450.37\n", "2 Jul 1, 2021 4358.13\n", "3 Jun 1, 2021 4238.49\n", "4 May 1, 2021 4167.85" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_sp=ls_tables[0]\n", "df_sp.head()" ] }, { "cell_type": "code", "execution_count": 18, "id": "5c491856", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Date', 'Price Value']" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cols = df_sp.columns.tolist()\n", "cols" ] }, { "cell_type": "code", "execution_count": 19, "id": "af4beb58", "metadata": {}, "outputs": [], "source": [ "df_sp.rename(\n", " columns=({ cols[1]: 'Price'}), \n", " inplace=True,)" ] }, { "cell_type": "code", "execution_count": 20, "id": "8b90a5dd", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePrice
0Oct 1, 20214357.04
1Aug 1, 20214450.37
2Jul 1, 20214358.13
3Jun 1, 20214238.49
4May 1, 20214167.85
\n", "
" ], "text/plain": [ " Date Price\n", "0 Oct 1, 2021 4357.04\n", "1 Aug 1, 2021 4450.37\n", "2 Jul 1, 2021 4358.13\n", "3 Jun 1, 2021 4238.49\n", "4 May 1, 2021 4167.85" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_sp.head()" ] }, { "cell_type": "code", "execution_count": 21, "id": "5b997b76", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(RangeIndex(start=0, stop=1808, step=1),\n", " RangeIndex(start=0, stop=1809, step=1))" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_per.index, df_sp.index" ] }, { "cell_type": "code", "execution_count": 22, "id": "e617af59", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPrice
0Oct 1, 202137.634357.04
1Aug 1, 202138.444450.37
2Jul 1, 202137.684358.13
3Jun 1, 202136.864238.49
4May 1, 202136.624167.85
............
1803Jun 1, 187112.594.82
1804May 1, 187112.594.86
1805Apr 1, 187112.054.74
1806Mar 1, 187111.194.61
1807Feb 1, 187110.924.50
\n", "

1808 rows × 3 columns

\n", "
" ], "text/plain": [ " Date PER Price\n", "0 Oct 1, 2021 37.63 4357.04\n", "1 Aug 1, 2021 38.44 4450.37\n", "2 Jul 1, 2021 37.68 4358.13\n", "3 Jun 1, 2021 36.86 4238.49\n", "4 May 1, 2021 36.62 4167.85\n", "... ... ... ...\n", "1803 Jun 1, 1871 12.59 4.82\n", "1804 May 1, 1871 12.59 4.86\n", "1805 Apr 1, 1871 12.05 4.74\n", "1806 Mar 1, 1871 11.19 4.61\n", "1807 Feb 1, 1871 10.92 4.50\n", "\n", "[1808 rows x 3 columns]" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = df_per.merge(df_sp, left_on='Date', right_on='Date')\n", "df" ] }, { "cell_type": "code", "execution_count": 23, "id": "cd7d49a5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Date object\n", "PER float64\n", "Price float64\n", "dtype: object" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.dtypes" ] }, { "cell_type": "code", "execution_count": 24, "id": "77fb9d85", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPrice
02021-10-0137.634357.04
12021-08-0138.444450.37
22021-07-0137.684358.13
32021-06-0136.864238.49
42021-05-0136.624167.85
............
18031871-06-0112.594.82
18041871-05-0112.594.86
18051871-04-0112.054.74
18061871-03-0111.194.61
18071871-02-0110.924.50
\n", "

1808 rows × 3 columns

\n", "
" ], "text/plain": [ " Date PER Price\n", "0 2021-10-01 37.63 4357.04\n", "1 2021-08-01 38.44 4450.37\n", "2 2021-07-01 37.68 4358.13\n", "3 2021-06-01 36.86 4238.49\n", "4 2021-05-01 36.62 4167.85\n", "... ... ... ...\n", "1803 1871-06-01 12.59 4.82\n", "1804 1871-05-01 12.59 4.86\n", "1805 1871-04-01 12.05 4.74\n", "1806 1871-03-01 11.19 4.61\n", "1807 1871-02-01 10.92 4.50\n", "\n", "[1808 rows x 3 columns]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['Date']=pd.to_datetime(df['Date'])\n", "df" ] }, { "cell_type": "code", "execution_count": 25, "id": "8001ff05", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPrice
02021-10-0137.634357.04
12021-08-0138.444450.37
22021-07-0137.684358.13
32021-06-0136.864238.49
42021-05-0136.624167.85
\n", "
" ], "text/plain": [ " Date PER Price\n", "0 2021-10-01 37.63 4357.04\n", "1 2021-08-01 38.44 4450.37\n", "2 2021-07-01 37.68 4358.13\n", "3 2021-06-01 36.86 4238.49\n", "4 2021-05-01 36.62 4167.85" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 26, "id": "f7b5b129", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDate
Date
2021-10-0137.634357.042021-10-01
2021-08-0138.444450.372021-08-01
2021-07-0137.684358.132021-07-01
2021-06-0136.864238.492021-06-01
2021-05-0136.624167.852021-05-01
............
1871-06-0112.594.821871-06-01
1871-05-0112.594.861871-05-01
1871-04-0112.054.741871-04-01
1871-03-0111.194.611871-03-01
1871-02-0110.924.501871-02-01
\n", "

1808 rows × 3 columns

\n", "
" ], "text/plain": [ " PER Price Date\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01\n", "2021-08-01 38.44 4450.37 2021-08-01\n", "2021-07-01 37.68 4358.13 2021-07-01\n", "2021-06-01 36.86 4238.49 2021-06-01\n", "2021-05-01 36.62 4167.85 2021-05-01\n", "... ... ... ...\n", "1871-06-01 12.59 4.82 1871-06-01\n", "1871-05-01 12.59 4.86 1871-05-01\n", "1871-04-01 12.05 4.74 1871-04-01\n", "1871-03-01 11.19 4.61 1871-03-01\n", "1871-02-01 10.92 4.50 1871-02-01\n", "\n", "[1808 rows x 3 columns]" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.set_index(['Date'], inplace=True)\n", "df['Date']=df.index\n", "df" ] }, { "cell_type": "code", "execution_count": 27, "id": "2c559fb8", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "variable=PER
Date=%{x}
value=%{y}", "legendgroup": "PER", "line": { "color": "#636efa", "dash": "solid" }, "mode": "lines", "name": "PER", "showlegend": true, "type": "scattergl", "x": [ "2021-10-01T00:00:00", "2021-08-01T00:00:00", "2021-07-01T00:00:00", "2021-06-01T00:00:00", "2021-05-01T00:00:00", "2021-04-01T00:00:00", "2021-03-01T00:00:00", "2021-02-01T00:00:00", "2021-01-01T00:00:00", "2020-12-01T00:00:00", "2020-11-01T00:00:00", "2020-10-01T00:00:00", "2020-09-01T00:00:00", "2020-08-01T00:00:00", "2020-07-01T00:00:00", "2020-06-01T00:00:00", "2020-05-01T00:00:00", "2020-04-01T00:00:00", "2020-03-01T00:00:00", "2020-02-01T00:00:00", "2020-01-01T00:00:00", "2019-12-01T00:00:00", "2019-11-01T00:00:00", "2019-10-01T00:00:00", "2019-09-01T00:00:00", "2019-08-01T00:00:00", "2019-07-01T00:00:00", "2019-06-01T00:00:00", "2019-05-01T00:00:00", "2019-04-01T00:00:00", "2019-03-01T00:00:00", "2019-02-01T00:00:00", "2019-01-01T00:00:00", "2018-12-01T00:00:00", "2018-11-01T00:00:00", "2018-10-01T00:00:00", "2018-09-01T00:00:00", "2018-08-01T00:00:00", "2018-07-01T00:00:00", "2018-06-01T00:00:00", "2018-05-01T00:00:00", "2018-04-01T00:00:00", "2018-03-01T00:00:00", "2018-02-01T00:00:00", "2018-01-01T00:00:00", "2017-12-01T00:00:00", "2017-11-01T00:00:00", "2017-10-01T00:00:00", "2017-09-01T00:00:00", "2017-08-01T00:00:00", "2017-07-01T00:00:00", "2017-06-01T00:00:00", "2017-05-01T00:00:00", "2017-04-01T00:00:00", "2017-03-01T00:00:00", "2017-02-01T00:00:00", "2017-01-01T00:00:00", "2016-12-01T00:00:00", "2016-11-01T00:00:00", "2016-10-01T00:00:00", "2016-09-01T00:00:00", "2016-08-01T00:00:00", "2016-07-01T00:00:00", "2016-06-01T00:00:00", "2016-05-01T00:00:00", "2016-04-01T00:00:00", "2016-03-01T00:00:00", "2016-02-01T00:00:00", "2016-01-01T00:00:00", "2015-12-01T00:00:00", "2015-11-01T00:00:00", "2015-10-01T00:00:00", "2015-09-01T00:00:00", "2015-08-01T00:00:00", "2015-07-01T00:00:00", "2015-06-01T00:00:00", "2015-05-01T00:00:00", "2015-04-01T00:00:00", "2015-03-01T00:00:00", "2015-02-01T00:00:00", "2015-01-01T00:00:00", "2014-12-01T00:00:00", "2014-11-01T00:00:00", "2014-10-01T00:00:00", "2014-09-01T00:00:00", "2014-08-01T00:00:00", "2014-07-01T00:00:00", "2014-06-01T00:00:00", "2014-05-01T00:00:00", "2014-04-01T00:00:00", "2014-03-01T00:00:00", "2014-02-01T00:00:00", "2014-01-01T00:00:00", "2013-12-01T00:00:00", "2013-11-01T00:00:00", "2013-10-01T00:00:00", "2013-09-01T00:00:00", "2013-08-01T00:00:00", "2013-07-01T00:00:00", "2013-06-01T00:00:00", "2013-05-01T00:00:00", "2013-04-01T00:00:00", "2013-03-01T00:00:00", "2013-02-01T00:00:00", "2013-01-01T00:00:00", "2012-12-01T00:00:00", "2012-11-01T00:00:00", "2012-10-01T00:00:00", "2012-09-01T00:00:00", "2012-08-01T00:00:00", "2012-07-01T00:00:00", "2012-06-01T00:00:00", "2012-05-01T00:00:00", "2012-04-01T00:00:00", "2012-03-01T00:00:00", "2012-02-01T00:00:00", "2012-01-01T00:00:00", "2011-12-01T00:00:00", "2011-11-01T00:00:00", "2011-10-01T00:00:00", "2011-09-01T00:00:00", "2011-08-01T00:00:00", "2011-07-01T00:00:00", "2011-06-01T00:00:00", "2011-05-01T00:00:00", "2011-04-01T00:00:00", "2011-03-01T00:00:00", "2011-02-01T00:00:00", "2011-01-01T00:00:00", "2010-12-01T00:00:00", "2010-11-01T00:00:00", "2010-10-01T00:00:00", "2010-09-01T00:00:00", "2010-08-01T00:00:00", "2010-07-01T00:00:00", "2010-06-01T00:00:00", "2010-05-01T00:00:00", "2010-04-01T00:00:00", "2010-03-01T00:00:00", "2010-02-01T00:00:00", "2010-01-01T00:00:00", "2009-12-01T00:00:00", "2009-11-01T00:00:00", "2009-10-01T00:00:00", "2009-09-01T00:00:00", "2009-08-01T00:00:00", "2009-07-01T00:00:00", "2009-06-01T00:00:00", "2009-05-01T00:00:00", "2009-04-01T00:00:00", "2009-03-01T00:00:00", "2009-02-01T00:00:00", "2009-01-01T00:00:00", "2008-12-01T00:00:00", "2008-11-01T00:00:00", "2008-10-01T00:00:00", "2008-09-01T00:00:00", "2008-08-01T00:00:00", "2008-07-01T00:00:00", "2008-06-01T00:00:00", "2008-05-01T00:00:00", "2008-04-01T00:00:00", "2008-03-01T00:00:00", "2008-02-01T00:00:00", "2008-01-01T00:00:00", "2007-12-01T00:00:00", "2007-11-01T00:00:00", "2007-10-01T00:00:00", "2007-09-01T00:00:00", "2007-08-01T00:00:00", "2007-07-01T00:00:00", "2007-06-01T00:00:00", "2007-05-01T00:00:00", "2007-04-01T00:00:00", "2007-03-01T00:00:00", "2007-02-01T00:00:00", "2007-01-01T00:00:00", "2006-12-01T00:00:00", "2006-11-01T00:00:00", "2006-10-01T00:00:00", "2006-09-01T00:00:00", "2006-08-01T00:00:00", "2006-07-01T00:00:00", "2006-06-01T00:00:00", "2006-05-01T00:00:00", "2006-04-01T00:00:00", "2006-03-01T00:00:00", "2006-02-01T00:00:00", "2006-01-01T00:00:00", "2005-12-01T00:00:00", "2005-11-01T00:00:00", "2005-10-01T00:00:00", "2005-09-01T00:00:00", "2005-08-01T00:00:00", "2005-07-01T00:00:00", "2005-06-01T00:00:00", "2005-05-01T00:00:00", "2005-04-01T00:00:00", "2005-03-01T00:00:00", "2005-02-01T00:00:00", "2005-01-01T00:00:00", "2004-12-01T00:00:00", "2004-11-01T00:00:00", "2004-10-01T00:00:00", "2004-09-01T00:00:00", "2004-08-01T00:00:00", "2004-07-01T00:00:00", "2004-06-01T00:00:00", "2004-05-01T00:00:00", "2004-04-01T00:00:00", "2004-03-01T00:00:00", "2004-02-01T00:00:00", "2004-01-01T00:00:00", "2003-12-01T00:00:00", "2003-11-01T00:00:00", "2003-10-01T00:00:00", "2003-09-01T00:00:00", "2003-08-01T00:00:00", "2003-07-01T00:00:00", "2003-06-01T00:00:00", "2003-05-01T00:00:00", "2003-04-01T00:00:00", "2003-03-01T00:00:00", "2003-02-01T00:00:00", "2003-01-01T00:00:00", "2002-12-01T00:00:00", "2002-11-01T00:00:00", "2002-10-01T00:00:00", "2002-09-01T00:00:00", "2002-08-01T00:00:00", "2002-07-01T00:00:00", "2002-06-01T00:00:00", "2002-05-01T00:00:00", "2002-04-01T00:00:00", "2002-03-01T00:00:00", "2002-02-01T00:00:00", "2002-01-01T00:00:00", "2001-12-01T00:00:00", "2001-11-01T00:00:00", "2001-10-01T00:00:00", "2001-09-01T00:00:00", "2001-08-01T00:00:00", "2001-07-01T00:00:00", "2001-06-01T00:00:00", "2001-05-01T00:00:00", "2001-04-01T00:00:00", "2001-03-01T00:00:00", "2001-02-01T00:00:00", "2001-01-01T00:00:00", "2000-12-01T00:00:00", "2000-11-01T00:00:00", "2000-10-01T00:00:00", "2000-09-01T00:00:00", "2000-08-01T00:00:00", "2000-07-01T00:00:00", "2000-06-01T00:00:00", "2000-05-01T00:00:00", "2000-04-01T00:00:00", "2000-03-01T00:00:00", "2000-02-01T00:00:00", "2000-01-01T00:00:00", "1999-12-01T00:00:00", "1999-11-01T00:00:00", "1999-10-01T00:00:00", "1999-09-01T00:00:00", "1999-08-01T00:00:00", "1999-07-01T00:00:00", "1999-06-01T00:00:00", "1999-05-01T00:00:00", "1999-04-01T00:00:00", "1999-03-01T00:00:00", "1999-02-01T00:00:00", "1999-01-01T00:00:00", "1998-12-01T00:00:00", "1998-11-01T00:00:00", "1998-10-01T00:00:00", "1998-09-01T00:00:00", "1998-08-01T00:00:00", "1998-07-01T00:00:00", "1998-06-01T00:00:00", "1998-05-01T00:00:00", "1998-04-01T00:00:00", "1998-03-01T00:00:00", "1998-02-01T00:00:00", "1998-01-01T00:00:00", "1997-12-01T00:00:00", "1997-11-01T00:00:00", "1997-10-01T00:00:00", "1997-09-01T00:00:00", "1997-08-01T00:00:00", "1997-07-01T00:00:00", "1997-06-01T00:00:00", "1997-05-01T00:00:00", "1997-04-01T00:00:00", "1997-03-01T00:00:00", "1997-02-01T00:00:00", "1997-01-01T00:00:00", "1996-12-01T00:00:00", "1996-11-01T00:00:00", "1996-10-01T00:00:00", "1996-09-01T00:00:00", "1996-08-01T00:00:00", "1996-07-01T00:00:00", "1996-06-01T00:00:00", "1996-05-01T00:00:00", "1996-04-01T00:00:00", "1996-03-01T00:00:00", "1996-02-01T00:00:00", "1996-01-01T00:00:00", "1995-12-01T00:00:00", "1995-11-01T00:00:00", "1995-10-01T00:00:00", "1995-09-01T00:00:00", "1995-08-01T00:00:00", "1995-07-01T00:00:00", "1995-06-01T00:00:00", "1995-05-01T00:00:00", "1995-04-01T00:00:00", "1995-03-01T00:00:00", "1995-02-01T00:00:00", "1995-01-01T00:00:00", "1994-12-01T00:00:00", "1994-11-01T00:00:00", "1994-10-01T00:00:00", "1994-09-01T00:00:00", "1994-08-01T00:00:00", "1994-07-01T00:00:00", "1994-06-01T00:00:00", "1994-05-01T00:00:00", "1994-04-01T00:00:00", "1994-03-01T00:00:00", "1994-02-01T00:00:00", "1994-01-01T00:00:00", "1993-12-01T00:00:00", "1993-11-01T00:00:00", "1993-10-01T00:00:00", "1993-09-01T00:00:00", "1993-08-01T00:00:00", "1993-07-01T00:00:00", "1993-06-01T00:00:00", "1993-05-01T00:00:00", "1993-04-01T00:00:00", "1993-03-01T00:00:00", "1993-02-01T00:00:00", "1993-01-01T00:00:00", "1992-12-01T00:00:00", "1992-11-01T00:00:00", "1992-10-01T00:00:00", "1992-09-01T00:00:00", "1992-08-01T00:00:00", "1992-07-01T00:00:00", "1992-06-01T00:00:00", "1992-05-01T00:00:00", "1992-04-01T00:00:00", "1992-03-01T00:00:00", "1992-02-01T00:00:00", "1992-01-01T00:00:00", "1991-12-01T00:00:00", "1991-11-01T00:00:00", "1991-10-01T00:00:00", "1991-09-01T00:00:00", "1991-08-01T00:00:00", "1991-07-01T00:00:00", "1991-06-01T00:00:00", "1991-05-01T00:00:00", "1991-04-01T00:00:00", "1991-03-01T00:00:00", "1991-02-01T00:00:00", "1991-01-01T00:00:00", "1990-12-01T00:00:00", "1990-11-01T00:00:00", "1990-10-01T00:00:00", "1990-09-01T00:00:00", "1990-08-01T00:00:00", "1990-07-01T00:00:00", "1990-06-01T00:00:00", "1990-05-01T00:00:00", "1990-04-01T00:00:00", "1990-03-01T00:00:00", "1990-02-01T00:00:00", "1990-01-01T00:00:00", "1989-12-01T00:00:00", "1989-11-01T00:00:00", "1989-10-01T00:00:00", "1989-09-01T00:00:00", "1989-08-01T00:00:00", "1989-07-01T00:00:00", "1989-06-01T00:00:00", "1989-05-01T00:00:00", "1989-04-01T00:00:00", "1989-03-01T00:00:00", "1989-02-01T00:00:00", "1989-01-01T00:00:00", "1988-12-01T00:00:00", "1988-11-01T00:00:00", "1988-10-01T00:00:00", "1988-09-01T00:00:00", "1988-08-01T00:00:00", "1988-07-01T00:00:00", "1988-06-01T00:00:00", "1988-05-01T00:00:00", "1988-04-01T00:00:00", "1988-03-01T00:00:00", "1988-02-01T00:00:00", "1988-01-01T00:00:00", "1987-12-01T00:00:00", "1987-11-01T00:00:00", "1987-10-01T00:00:00", "1987-09-01T00:00:00", "1987-08-01T00:00:00", "1987-07-01T00:00:00", "1987-06-01T00:00:00", "1987-05-01T00:00:00", "1987-04-01T00:00:00", "1987-03-01T00:00:00", "1987-02-01T00:00:00", "1987-01-01T00:00:00", "1986-12-01T00:00:00", "1986-11-01T00:00:00", "1986-10-01T00:00:00", "1986-09-01T00:00:00", "1986-08-01T00:00:00", "1986-07-01T00:00:00", "1986-06-01T00:00:00", "1986-05-01T00:00:00", "1986-04-01T00:00:00", "1986-03-01T00:00:00", "1986-02-01T00:00:00", "1986-01-01T00:00:00", "1985-12-01T00:00:00", "1985-11-01T00:00:00", "1985-10-01T00:00:00", "1985-09-01T00:00:00", "1985-08-01T00:00:00", "1985-07-01T00:00:00", "1985-06-01T00:00:00", "1985-05-01T00:00:00", "1985-04-01T00:00:00", "1985-03-01T00:00:00", "1985-02-01T00:00:00", "1985-01-01T00:00:00", "1984-12-01T00:00:00", "1984-11-01T00:00:00", "1984-10-01T00:00:00", "1984-09-01T00:00:00", "1984-08-01T00:00:00", "1984-07-01T00:00:00", "1984-06-01T00:00:00", "1984-05-01T00:00:00", "1984-04-01T00:00:00", "1984-03-01T00:00:00", "1984-02-01T00:00:00", "1984-01-01T00:00:00", "1983-12-01T00:00:00", "1983-11-01T00:00:00", "1983-10-01T00:00:00", "1983-09-01T00:00:00", "1983-08-01T00:00:00", "1983-07-01T00:00:00", "1983-06-01T00:00:00", "1983-05-01T00:00:00", "1983-04-01T00:00:00", "1983-03-01T00:00:00", "1983-02-01T00:00:00", "1983-01-01T00:00:00", "1982-12-01T00:00:00", "1982-11-01T00:00:00", "1982-10-01T00:00:00", "1982-09-01T00:00:00", "1982-08-01T00:00:00", "1982-07-01T00:00:00", "1982-06-01T00:00:00", "1982-05-01T00:00:00", "1982-04-01T00:00:00", "1982-03-01T00:00:00", "1982-02-01T00:00:00", "1982-01-01T00:00:00", "1981-12-01T00:00:00", "1981-11-01T00:00:00", "1981-10-01T00:00:00", "1981-09-01T00:00:00", "1981-08-01T00:00:00", "1981-07-01T00:00:00", "1981-06-01T00:00:00", "1981-05-01T00:00:00", "1981-04-01T00:00:00", "1981-03-01T00:00:00", "1981-02-01T00:00:00", "1981-01-01T00:00:00", "1980-12-01T00:00:00", "1980-11-01T00:00:00", "1980-10-01T00:00:00", "1980-09-01T00:00:00", "1980-08-01T00:00:00", "1980-07-01T00:00:00", "1980-06-01T00:00:00", "1980-05-01T00:00:00", "1980-04-01T00:00:00", "1980-03-01T00:00:00", "1980-02-01T00:00:00", "1980-01-01T00:00:00", "1979-12-01T00:00:00", "1979-11-01T00:00:00", "1979-10-01T00:00:00", "1979-09-01T00:00:00", "1979-08-01T00:00:00", "1979-07-01T00:00:00", "1979-06-01T00:00:00", "1979-05-01T00:00:00", "1979-04-01T00:00:00", "1979-03-01T00:00:00", "1979-02-01T00:00:00", "1979-01-01T00:00:00", "1978-12-01T00:00:00", "1978-11-01T00:00:00", "1978-10-01T00:00:00", "1978-09-01T00:00:00", "1978-08-01T00:00:00", "1978-07-01T00:00:00", "1978-06-01T00:00:00", "1978-05-01T00:00:00", "1978-04-01T00:00:00", "1978-03-01T00:00:00", "1978-02-01T00:00:00", "1978-01-01T00:00:00", "1977-12-01T00:00:00", "1977-11-01T00:00:00", "1977-10-01T00:00:00", "1977-09-01T00:00:00", "1977-08-01T00:00:00", "1977-07-01T00:00:00", "1977-06-01T00:00:00", "1977-05-01T00:00:00", "1977-04-01T00:00:00", "1977-03-01T00:00:00", "1977-02-01T00:00:00", "1977-01-01T00:00:00", "1976-12-01T00:00:00", "1976-11-01T00:00:00", "1976-10-01T00:00:00", "1976-09-01T00:00:00", "1976-08-01T00:00:00", "1976-07-01T00:00:00", "1976-06-01T00:00:00", "1976-05-01T00:00:00", "1976-04-01T00:00:00", "1976-03-01T00:00:00", "1976-02-01T00:00:00", "1976-01-01T00:00:00", "1975-12-01T00:00:00", "1975-11-01T00:00:00", "1975-10-01T00:00:00", "1975-09-01T00:00:00", "1975-08-01T00:00:00", "1975-07-01T00:00:00", "1975-06-01T00:00:00", "1975-05-01T00:00:00", "1975-04-01T00:00:00", "1975-03-01T00:00:00", "1975-02-01T00:00:00", "1975-01-01T00:00:00", "1974-12-01T00:00:00", "1974-11-01T00:00:00", "1974-10-01T00:00:00", "1974-09-01T00:00:00", "1974-08-01T00:00:00", "1974-07-01T00:00:00", "1974-06-01T00:00:00", "1974-05-01T00:00:00", "1974-04-01T00:00:00", "1974-03-01T00:00:00", "1974-02-01T00:00:00", "1974-01-01T00:00:00", "1973-12-01T00:00:00", "1973-11-01T00:00:00", "1973-10-01T00:00:00", "1973-09-01T00:00:00", "1973-08-01T00:00:00", "1973-07-01T00:00:00", "1973-06-01T00:00:00", "1973-05-01T00:00:00", "1973-04-01T00:00:00", "1973-03-01T00:00:00", "1973-02-01T00:00:00", "1973-01-01T00:00:00", "1972-12-01T00:00:00", "1972-11-01T00:00:00", "1972-10-01T00:00:00", "1972-09-01T00:00:00", "1972-08-01T00:00:00", "1972-07-01T00:00:00", "1972-06-01T00:00:00", "1972-05-01T00:00:00", "1972-04-01T00:00:00", "1972-03-01T00:00:00", "1972-02-01T00:00:00", "1972-01-01T00:00:00", "1971-12-01T00:00:00", "1971-11-01T00:00:00", "1971-10-01T00:00:00", "1971-09-01T00:00:00", "1971-08-01T00:00:00", "1971-07-01T00:00:00", "1971-06-01T00:00:00", "1971-05-01T00:00:00", "1971-04-01T00:00:00", "1971-03-01T00:00:00", "1971-02-01T00:00:00", "1971-01-01T00:00:00", "1970-12-01T00:00:00", "1970-11-01T00:00:00", "1970-10-01T00:00:00", "1970-09-01T00:00:00", "1970-08-01T00:00:00", "1970-07-01T00:00:00", "1970-06-01T00:00:00", "1970-05-01T00:00:00", "1970-04-01T00:00:00", "1970-03-01T00:00:00", "1970-02-01T00:00:00", "1970-01-01T00:00:00", "1969-12-01T00:00:00", "1969-11-01T00:00:00", "1969-10-01T00:00:00", "1969-09-01T00:00:00", "1969-08-01T00:00:00", "1969-07-01T00:00:00", "1969-06-01T00:00:00", "1969-05-01T00:00:00", "1969-04-01T00:00:00", "1969-03-01T00:00:00", "1969-02-01T00:00:00", "1969-01-01T00:00:00", "1968-12-01T00:00:00", "1968-11-01T00:00:00", "1968-10-01T00:00:00", "1968-09-01T00:00:00", "1968-08-01T00:00:00", "1968-07-01T00:00:00", "1968-06-01T00:00:00", "1968-05-01T00:00:00", "1968-04-01T00:00:00", "1968-03-01T00:00:00", "1968-02-01T00:00:00", "1968-01-01T00:00:00", "1967-12-01T00:00:00", "1967-11-01T00:00:00", "1967-10-01T00:00:00", "1967-09-01T00:00:00", "1967-08-01T00:00:00", "1967-07-01T00:00:00", "1967-06-01T00:00:00", "1967-05-01T00:00:00", "1967-04-01T00:00:00", "1967-03-01T00:00:00", "1967-02-01T00:00:00", "1967-01-01T00:00:00", "1966-12-01T00:00:00", "1966-11-01T00:00:00", "1966-10-01T00:00:00", "1966-09-01T00:00:00", "1966-08-01T00:00:00", "1966-07-01T00:00:00", "1966-06-01T00:00:00", "1966-05-01T00:00:00", "1966-04-01T00:00:00", "1966-03-01T00:00:00", "1966-02-01T00:00:00", "1966-01-01T00:00:00", "1965-12-01T00:00:00", "1965-11-01T00:00:00", "1965-10-01T00:00:00", "1965-09-01T00:00:00", "1965-08-01T00:00:00", "1965-07-01T00:00:00", "1965-06-01T00:00:00", "1965-05-01T00:00:00", "1965-04-01T00:00:00", "1965-03-01T00:00:00", "1965-02-01T00:00:00", "1965-01-01T00:00:00", "1964-12-01T00:00:00", "1964-11-01T00:00:00", "1964-10-01T00:00:00", "1964-09-01T00:00:00", "1964-08-01T00:00:00", "1964-07-01T00:00:00", "1964-06-01T00:00:00", "1964-05-01T00:00:00", "1964-04-01T00:00:00", "1964-03-01T00:00:00", "1964-02-01T00:00:00", "1964-01-01T00:00:00", "1963-12-01T00:00:00", "1963-11-01T00:00:00", "1963-10-01T00:00:00", "1963-09-01T00:00:00", "1963-08-01T00:00:00", "1963-07-01T00:00:00", "1963-06-01T00:00:00", "1963-05-01T00:00:00", "1963-04-01T00:00:00", "1963-03-01T00:00:00", "1963-02-01T00:00:00", "1963-01-01T00:00:00", "1962-12-01T00:00:00", "1962-11-01T00:00:00", "1962-10-01T00:00:00", "1962-09-01T00:00:00", "1962-08-01T00:00:00", "1962-07-01T00:00:00", "1962-06-01T00:00:00", "1962-05-01T00:00:00", "1962-04-01T00:00:00", "1962-03-01T00:00:00", "1962-02-01T00:00:00", "1962-01-01T00:00:00", "1961-12-01T00:00:00", "1961-11-01T00:00:00", "1961-10-01T00:00:00", "1961-09-01T00:00:00", "1961-08-01T00:00:00", "1961-07-01T00:00:00", "1961-06-01T00:00:00", "1961-05-01T00:00:00", "1961-04-01T00:00:00", "1961-03-01T00:00:00", "1961-02-01T00:00:00", "1961-01-01T00:00:00", "1960-12-01T00:00:00", "1960-11-01T00:00:00", "1960-10-01T00:00:00", "1960-09-01T00:00:00", "1960-08-01T00:00:00", "1960-07-01T00:00:00", "1960-06-01T00:00:00", "1960-05-01T00:00:00", "1960-04-01T00:00:00", "1960-03-01T00:00:00", "1960-02-01T00:00:00", "1960-01-01T00:00:00", "1959-12-01T00:00:00", "1959-11-01T00:00:00", "1959-10-01T00:00:00", "1959-09-01T00:00:00", "1959-08-01T00:00:00", "1959-07-01T00:00:00", "1959-06-01T00:00:00", "1959-05-01T00:00:00", "1959-04-01T00:00:00", "1959-03-01T00:00:00", "1959-02-01T00:00:00", "1959-01-01T00:00:00", "1958-12-01T00:00:00", "1958-11-01T00:00:00", "1958-10-01T00:00:00", "1958-09-01T00:00:00", "1958-08-01T00:00:00", "1958-07-01T00:00:00", "1958-06-01T00:00:00", "1958-05-01T00:00:00", "1958-04-01T00:00:00", "1958-03-01T00:00:00", "1958-02-01T00:00:00", "1958-01-01T00:00:00", "1957-12-01T00:00:00", "1957-11-01T00:00:00", "1957-10-01T00:00:00", "1957-09-01T00:00:00", "1957-08-01T00:00:00", "1957-07-01T00:00:00", "1957-06-01T00:00:00", "1957-05-01T00:00:00", "1957-04-01T00:00:00", "1957-03-01T00:00:00", "1957-02-01T00:00:00", "1957-01-01T00:00:00", "1956-12-01T00:00:00", "1956-11-01T00:00:00", "1956-10-01T00:00:00", "1956-09-01T00:00:00", "1956-08-01T00:00:00", "1956-07-01T00:00:00", "1956-06-01T00:00:00", "1956-05-01T00:00:00", "1956-04-01T00:00:00", "1956-03-01T00:00:00", "1956-02-01T00:00:00", "1956-01-01T00:00:00", "1955-12-01T00:00:00", "1955-11-01T00:00:00", "1955-10-01T00:00:00", "1955-09-01T00:00:00", "1955-08-01T00:00:00", "1955-07-01T00:00:00", "1955-06-01T00:00:00", "1955-05-01T00:00:00", "1955-04-01T00:00:00", "1955-03-01T00:00:00", "1955-02-01T00:00:00", "1955-01-01T00:00:00", "1954-12-01T00:00:00", "1954-11-01T00:00:00", "1954-10-01T00:00:00", "1954-09-01T00:00:00", "1954-08-01T00:00:00", "1954-07-01T00:00:00", "1954-06-01T00:00:00", "1954-05-01T00:00:00", "1954-04-01T00:00:00", "1954-03-01T00:00:00", "1954-02-01T00:00:00", "1954-01-01T00:00:00", "1953-12-01T00:00:00", "1953-11-01T00:00:00", "1953-10-01T00:00:00", "1953-09-01T00:00:00", "1953-08-01T00:00:00", "1953-07-01T00:00:00", "1953-06-01T00:00:00", "1953-05-01T00:00:00", "1953-04-01T00:00:00", "1953-03-01T00:00:00", "1953-02-01T00:00:00", "1953-01-01T00:00:00", "1952-12-01T00:00:00", "1952-11-01T00:00:00", "1952-10-01T00:00:00", "1952-09-01T00:00:00", "1952-08-01T00:00:00", "1952-07-01T00:00:00", "1952-06-01T00:00:00", "1952-05-01T00:00:00", "1952-04-01T00:00:00", "1952-03-01T00:00:00", "1952-02-01T00:00:00", "1952-01-01T00:00:00", "1951-12-01T00:00:00", "1951-11-01T00:00:00", "1951-10-01T00:00:00", "1951-09-01T00:00:00", "1951-08-01T00:00:00", "1951-07-01T00:00:00", "1951-06-01T00:00:00", "1951-05-01T00:00:00", "1951-04-01T00:00:00", "1951-03-01T00:00:00", "1951-02-01T00:00:00", "1951-01-01T00:00:00", "1950-12-01T00:00:00", "1950-11-01T00:00:00", "1950-10-01T00:00:00", "1950-09-01T00:00:00", "1950-08-01T00:00:00", "1950-07-01T00:00:00", "1950-06-01T00:00:00", "1950-05-01T00:00:00", "1950-04-01T00:00:00", "1950-03-01T00:00:00", "1950-02-01T00:00:00", "1950-01-01T00:00:00", "1949-12-01T00:00:00", "1949-11-01T00:00:00", "1949-10-01T00:00:00", "1949-09-01T00:00:00", "1949-08-01T00:00:00", "1949-07-01T00:00:00", "1949-06-01T00:00:00", "1949-05-01T00:00:00", "1949-04-01T00:00:00", "1949-03-01T00:00:00", "1949-02-01T00:00:00", "1949-01-01T00:00:00", "1948-12-01T00:00:00", "1948-11-01T00:00:00", "1948-10-01T00:00:00", "1948-09-01T00:00:00", "1948-08-01T00:00:00", "1948-07-01T00:00:00", "1948-06-01T00:00:00", "1948-05-01T00:00:00", "1948-04-01T00:00:00", "1948-03-01T00:00:00", "1948-02-01T00:00:00", "1948-01-01T00:00:00", "1947-12-01T00:00:00", "1947-11-01T00:00:00", "1947-10-01T00:00:00", "1947-09-01T00:00:00", "1947-08-01T00:00:00", "1947-07-01T00:00:00", "1947-06-01T00:00:00", "1947-05-01T00:00:00", "1947-04-01T00:00:00", "1947-03-01T00:00:00", "1947-02-01T00:00:00", "1947-01-01T00:00:00", "1946-12-01T00:00:00", "1946-11-01T00:00:00", "1946-10-01T00:00:00", "1946-09-01T00:00:00", "1946-08-01T00:00:00", "1946-07-01T00:00:00", "1946-06-01T00:00:00", "1946-05-01T00:00:00", "1946-04-01T00:00:00", "1946-03-01T00:00:00", "1946-02-01T00:00:00", "1946-01-01T00:00:00", "1945-12-01T00:00:00", "1945-11-01T00:00:00", "1945-10-01T00:00:00", "1945-09-01T00:00:00", "1945-08-01T00:00:00", "1945-07-01T00:00:00", "1945-06-01T00:00:00", "1945-05-01T00:00:00", "1945-04-01T00:00:00", "1945-03-01T00:00:00", "1945-02-01T00:00:00", "1945-01-01T00:00:00", "1944-12-01T00:00:00", "1944-11-01T00:00:00", "1944-10-01T00:00:00", "1944-09-01T00:00:00", "1944-08-01T00:00:00", "1944-07-01T00:00:00", "1944-06-01T00:00:00", "1944-05-01T00:00:00", "1944-04-01T00:00:00", "1944-03-01T00:00:00", "1944-02-01T00:00:00", "1944-01-01T00:00:00", "1943-12-01T00:00:00", "1943-11-01T00:00:00", "1943-10-01T00:00:00", "1943-09-01T00:00:00", "1943-08-01T00:00:00", "1943-07-01T00:00:00", "1943-06-01T00:00:00", "1943-05-01T00:00:00", "1943-04-01T00:00:00", "1943-03-01T00:00:00", "1943-02-01T00:00:00", "1943-01-01T00:00:00", "1942-12-01T00:00:00", "1942-11-01T00:00:00", "1942-10-01T00:00:00", "1942-09-01T00:00:00", "1942-08-01T00:00:00", "1942-07-01T00:00:00", "1942-06-01T00:00:00", "1942-05-01T00:00:00", "1942-04-01T00:00:00", "1942-03-01T00:00:00", "1942-02-01T00:00:00", "1942-01-01T00:00:00", "1941-12-01T00:00:00", "1941-11-01T00:00:00", "1941-10-01T00:00:00", "1941-09-01T00:00:00", "1941-08-01T00:00:00", "1941-07-01T00:00:00", "1941-06-01T00:00:00", "1941-05-01T00:00:00", "1941-04-01T00:00:00", "1941-03-01T00:00:00", "1941-02-01T00:00:00", "1941-01-01T00:00:00", "1940-12-01T00:00:00", "1940-11-01T00:00:00", "1940-10-01T00:00:00", "1940-09-01T00:00:00", "1940-08-01T00:00:00", "1940-07-01T00:00:00", "1940-06-01T00:00:00", "1940-05-01T00:00:00", "1940-04-01T00:00:00", "1940-03-01T00:00:00", "1940-02-01T00:00:00", "1940-01-01T00:00:00", "1939-12-01T00:00:00", "1939-11-01T00:00:00", "1939-10-01T00:00:00", "1939-09-01T00:00:00", "1939-08-01T00:00:00", "1939-07-01T00:00:00", "1939-06-01T00:00:00", "1939-05-01T00:00:00", "1939-04-01T00:00:00", "1939-03-01T00:00:00", "1939-02-01T00:00:00", "1939-01-01T00:00:00", "1938-12-01T00:00:00", "1938-11-01T00:00:00", "1938-10-01T00:00:00", "1938-09-01T00:00:00", "1938-08-01T00:00:00", "1938-07-01T00:00:00", "1938-06-01T00:00:00", "1938-05-01T00:00:00", "1938-04-01T00:00:00", "1938-03-01T00:00:00", "1938-02-01T00:00:00", "1938-01-01T00:00:00", "1937-12-01T00:00:00", "1937-11-01T00:00:00", "1937-10-01T00:00:00", "1937-09-01T00:00:00", "1937-08-01T00:00:00", "1937-07-01T00:00:00", "1937-06-01T00:00:00", "1937-05-01T00:00:00", "1937-04-01T00:00:00", "1937-03-01T00:00:00", "1937-02-01T00:00:00", "1937-01-01T00:00:00", "1936-12-01T00:00:00", "1936-11-01T00:00:00", "1936-10-01T00:00:00", "1936-09-01T00:00:00", "1936-08-01T00:00:00", "1936-07-01T00:00:00", "1936-06-01T00:00:00", "1936-05-01T00:00:00", "1936-04-01T00:00:00", "1936-03-01T00:00:00", "1936-02-01T00:00:00", "1936-01-01T00:00:00", "1935-12-01T00:00:00", "1935-11-01T00:00:00", "1935-10-01T00:00:00", "1935-09-01T00:00:00", "1935-08-01T00:00:00", "1935-07-01T00:00:00", "1935-06-01T00:00:00", "1935-05-01T00:00:00", "1935-04-01T00:00:00", "1935-03-01T00:00:00", "1935-02-01T00:00:00", "1935-01-01T00:00:00", "1934-12-01T00:00:00", "1934-11-01T00:00:00", "1934-10-01T00:00:00", "1934-09-01T00:00:00", "1934-08-01T00:00:00", "1934-07-01T00:00:00", "1934-06-01T00:00:00", "1934-05-01T00:00:00", "1934-04-01T00:00:00", "1934-03-01T00:00:00", "1934-02-01T00:00:00", "1934-01-01T00:00:00", "1933-12-01T00:00:00", "1933-11-01T00:00:00", "1933-10-01T00:00:00", "1933-09-01T00:00:00", "1933-08-01T00:00:00", "1933-07-01T00:00:00", "1933-06-01T00:00:00", "1933-05-01T00:00:00", "1933-04-01T00:00:00", "1933-03-01T00:00:00", "1933-02-01T00:00:00", "1933-01-01T00:00:00", "1932-12-01T00:00:00", "1932-11-01T00:00:00", "1932-10-01T00:00:00", "1932-09-01T00:00:00", "1932-08-01T00:00:00", "1932-07-01T00:00:00", "1932-06-01T00:00:00", "1932-05-01T00:00:00", "1932-04-01T00:00:00", "1932-03-01T00:00:00", "1932-02-01T00:00:00", "1932-01-01T00:00:00", "1931-12-01T00:00:00", "1931-11-01T00:00:00", "1931-10-01T00:00:00", "1931-09-01T00:00:00", "1931-08-01T00:00:00", "1931-07-01T00:00:00", "1931-06-01T00:00:00", "1931-05-01T00:00:00", "1931-04-01T00:00:00", "1931-03-01T00:00:00", "1931-02-01T00:00:00", "1931-01-01T00:00:00", "1930-12-01T00:00:00", "1930-11-01T00:00:00", "1930-10-01T00:00:00", "1930-09-01T00:00:00", "1930-08-01T00:00:00", "1930-07-01T00:00:00", "1930-06-01T00:00:00", "1930-05-01T00:00:00", "1930-04-01T00:00:00", "1930-03-01T00:00:00", "1930-02-01T00:00:00", "1930-01-01T00:00:00", "1929-12-01T00:00:00", "1929-11-01T00:00:00", "1929-10-01T00:00:00", "1929-09-01T00:00:00", "1929-08-01T00:00:00", "1929-07-01T00:00:00", "1929-06-01T00:00:00", "1929-05-01T00:00:00", "1929-04-01T00:00:00", "1929-03-01T00:00:00", "1929-02-01T00:00:00", "1929-01-01T00:00:00", "1928-12-01T00:00:00", "1928-11-01T00:00:00", "1928-10-01T00:00:00", "1928-09-01T00:00:00", "1928-08-01T00:00:00", "1928-07-01T00:00:00", "1928-06-01T00:00:00", "1928-05-01T00:00:00", "1928-04-01T00:00:00", "1928-03-01T00:00:00", "1928-02-01T00:00:00", "1928-01-01T00:00:00", "1927-12-01T00:00:00", "1927-11-01T00:00:00", "1927-10-01T00:00:00", "1927-09-01T00:00:00", "1927-08-01T00:00:00", "1927-07-01T00:00:00", "1927-06-01T00:00:00", "1927-05-01T00:00:00", "1927-04-01T00:00:00", "1927-03-01T00:00:00", "1927-02-01T00:00:00", "1927-01-01T00:00:00", "1926-12-01T00:00:00", "1926-11-01T00:00:00", "1926-10-01T00:00:00", "1926-09-01T00:00:00", "1926-08-01T00:00:00", "1926-07-01T00:00:00", "1926-06-01T00:00:00", "1926-05-01T00:00:00", "1926-04-01T00:00:00", "1926-03-01T00:00:00", "1926-02-01T00:00:00", "1926-01-01T00:00:00", "1925-12-01T00:00:00", "1925-11-01T00:00:00", "1925-10-01T00:00:00", "1925-09-01T00:00:00", "1925-08-01T00:00:00", "1925-07-01T00:00:00", "1925-06-01T00:00:00", "1925-05-01T00:00:00", "1925-04-01T00:00:00", "1925-03-01T00:00:00", "1925-02-01T00:00:00", "1925-01-01T00:00:00", "1924-12-01T00:00:00", "1924-11-01T00:00:00", "1924-10-01T00:00:00", "1924-09-01T00:00:00", "1924-08-01T00:00:00", "1924-07-01T00:00:00", "1924-06-01T00:00:00", "1924-05-01T00:00:00", "1924-04-01T00:00:00", "1924-03-01T00:00:00", "1924-02-01T00:00:00", "1924-01-01T00:00:00", "1923-12-01T00:00:00", "1923-11-01T00:00:00", "1923-10-01T00:00:00", "1923-09-01T00:00:00", "1923-08-01T00:00:00", "1923-07-01T00:00:00", "1923-06-01T00:00:00", "1923-05-01T00:00:00", "1923-04-01T00:00:00", "1923-03-01T00:00:00", "1923-02-01T00:00:00", "1923-01-01T00:00:00", "1922-12-01T00:00:00", "1922-11-01T00:00:00", "1922-10-01T00:00:00", "1922-09-01T00:00:00", "1922-08-01T00:00:00", "1922-07-01T00:00:00", "1922-06-01T00:00:00", "1922-05-01T00:00:00", "1922-04-01T00:00:00", "1922-03-01T00:00:00", "1922-02-01T00:00:00", "1922-01-01T00:00:00", "1921-12-01T00:00:00", "1921-11-01T00:00:00", "1921-10-01T00:00:00", "1921-09-01T00:00:00", "1921-08-01T00:00:00", "1921-07-01T00:00:00", "1921-06-01T00:00:00", "1921-05-01T00:00:00", "1921-04-01T00:00:00", "1921-03-01T00:00:00", "1921-02-01T00:00:00", "1921-01-01T00:00:00", "1920-12-01T00:00:00", "1920-11-01T00:00:00", "1920-10-01T00:00:00", "1920-09-01T00:00:00", "1920-08-01T00:00:00", "1920-07-01T00:00:00", "1920-06-01T00:00:00", "1920-05-01T00:00:00", "1920-04-01T00:00:00", "1920-03-01T00:00:00", "1920-02-01T00:00:00", "1920-01-01T00:00:00", "1919-12-01T00:00:00", "1919-11-01T00:00:00", "1919-10-01T00:00:00", "1919-09-01T00:00:00", "1919-08-01T00:00:00", "1919-07-01T00:00:00", "1919-06-01T00:00:00", "1919-05-01T00:00:00", "1919-04-01T00:00:00", "1919-03-01T00:00:00", "1919-02-01T00:00:00", "1919-01-01T00:00:00", "1918-12-01T00:00:00", "1918-11-01T00:00:00", "1918-10-01T00:00:00", "1918-09-01T00:00:00", "1918-08-01T00:00:00", "1918-07-01T00:00:00", "1918-06-01T00:00:00", "1918-05-01T00:00:00", "1918-04-01T00:00:00", "1918-03-01T00:00:00", "1918-02-01T00:00:00", "1918-01-01T00:00:00", "1917-12-01T00:00:00", "1917-11-01T00:00:00", "1917-10-01T00:00:00", "1917-09-01T00:00:00", "1917-08-01T00:00:00", "1917-07-01T00:00:00", "1917-06-01T00:00:00", "1917-05-01T00:00:00", "1917-04-01T00:00:00", "1917-03-01T00:00:00", "1917-02-01T00:00:00", "1917-01-01T00:00:00", "1916-12-01T00:00:00", "1916-11-01T00:00:00", "1916-10-01T00:00:00", "1916-09-01T00:00:00", "1916-08-01T00:00:00", "1916-07-01T00:00:00", "1916-06-01T00:00:00", "1916-05-01T00:00:00", "1916-04-01T00:00:00", "1916-03-01T00:00:00", "1916-02-01T00:00:00", "1916-01-01T00:00:00", "1915-12-01T00:00:00", "1915-11-01T00:00:00", "1915-10-01T00:00:00", "1915-09-01T00:00:00", "1915-08-01T00:00:00", "1915-07-01T00:00:00", "1915-06-01T00:00:00", "1915-05-01T00:00:00", "1915-04-01T00:00:00", "1915-03-01T00:00:00", "1915-02-01T00:00:00", "1915-01-01T00:00:00", "1914-12-01T00:00:00", "1914-11-01T00:00:00", "1914-10-01T00:00:00", "1914-09-01T00:00:00", "1914-08-01T00:00:00", "1914-07-01T00:00:00", "1914-06-01T00:00:00", "1914-05-01T00:00:00", "1914-04-01T00:00:00", "1914-03-01T00:00:00", "1914-02-01T00:00:00", "1914-01-01T00:00:00", "1913-12-01T00:00:00", "1913-11-01T00:00:00", "1913-10-01T00:00:00", "1913-09-01T00:00:00", "1913-08-01T00:00:00", "1913-07-01T00:00:00", "1913-06-01T00:00:00", "1913-05-01T00:00:00", "1913-04-01T00:00:00", "1913-03-01T00:00:00", "1913-02-01T00:00:00", "1913-01-01T00:00:00", "1912-12-01T00:00:00", "1912-11-01T00:00:00", "1912-10-01T00:00:00", "1912-09-01T00:00:00", "1912-08-01T00:00:00", "1912-07-01T00:00:00", "1912-06-01T00:00:00", "1912-05-01T00:00:00", "1912-04-01T00:00:00", "1912-03-01T00:00:00", "1912-02-01T00:00:00", "1912-01-01T00:00:00", "1911-12-01T00:00:00", "1911-11-01T00:00:00", "1911-10-01T00:00:00", "1911-09-01T00:00:00", "1911-08-01T00:00:00", "1911-07-01T00:00:00", "1911-06-01T00:00:00", "1911-05-01T00:00:00", "1911-04-01T00:00:00", "1911-03-01T00:00:00", "1911-02-01T00:00:00", "1911-01-01T00:00:00", "1910-12-01T00:00:00", "1910-11-01T00:00:00", "1910-10-01T00:00:00", "1910-09-01T00:00:00", "1910-08-01T00:00:00", "1910-07-01T00:00:00", "1910-06-01T00:00:00", "1910-05-01T00:00:00", "1910-04-01T00:00:00", "1910-03-01T00:00:00", "1910-02-01T00:00:00", "1910-01-01T00:00:00", "1909-12-01T00:00:00", "1909-11-01T00:00:00", "1909-10-01T00:00:00", "1909-09-01T00:00:00", "1909-08-01T00:00:00", "1909-07-01T00:00:00", "1909-06-01T00:00:00", "1909-05-01T00:00:00", "1909-04-01T00:00:00", "1909-03-01T00:00:00", "1909-02-01T00:00:00", "1909-01-01T00:00:00", "1908-12-01T00:00:00", "1908-11-01T00:00:00", "1908-10-01T00:00:00", "1908-09-01T00:00:00", "1908-08-01T00:00:00", "1908-07-01T00:00:00", "1908-06-01T00:00:00", "1908-05-01T00:00:00", "1908-04-01T00:00:00", "1908-03-01T00:00:00", "1908-02-01T00:00:00", "1908-01-01T00:00:00", "1907-12-01T00:00:00", "1907-11-01T00:00:00", "1907-10-01T00:00:00", "1907-09-01T00:00:00", "1907-08-01T00:00:00", "1907-07-01T00:00:00", "1907-06-01T00:00:00", "1907-05-01T00:00:00", "1907-04-01T00:00:00", "1907-03-01T00:00:00", "1907-02-01T00:00:00", "1907-01-01T00:00:00", "1906-12-01T00:00:00", "1906-11-01T00:00:00", "1906-10-01T00:00:00", "1906-09-01T00:00:00", "1906-08-01T00:00:00", "1906-07-01T00:00:00", "1906-06-01T00:00:00", "1906-05-01T00:00:00", "1906-04-01T00:00:00", "1906-03-01T00:00:00", "1906-02-01T00:00:00", "1906-01-01T00:00:00", "1905-12-01T00:00:00", "1905-11-01T00:00:00", "1905-10-01T00:00:00", "1905-09-01T00:00:00", "1905-08-01T00:00:00", "1905-07-01T00:00:00", "1905-06-01T00:00:00", "1905-05-01T00:00:00", "1905-04-01T00:00:00", "1905-03-01T00:00:00", "1905-02-01T00:00:00", "1905-01-01T00:00:00", "1904-12-01T00:00:00", "1904-11-01T00:00:00", "1904-10-01T00:00:00", "1904-09-01T00:00:00", "1904-08-01T00:00:00", "1904-07-01T00:00:00", "1904-06-01T00:00:00", "1904-05-01T00:00:00", "1904-04-01T00:00:00", "1904-03-01T00:00:00", "1904-02-01T00:00:00", "1904-01-01T00:00:00", "1903-12-01T00:00:00", "1903-11-01T00:00:00", "1903-10-01T00:00:00", "1903-09-01T00:00:00", "1903-08-01T00:00:00", "1903-07-01T00:00:00", "1903-06-01T00:00:00", "1903-05-01T00:00:00", "1903-04-01T00:00:00", "1903-03-01T00:00:00", "1903-02-01T00:00:00", "1903-01-01T00:00:00", "1902-12-01T00:00:00", "1902-11-01T00:00:00", "1902-10-01T00:00:00", "1902-09-01T00:00:00", "1902-08-01T00:00:00", "1902-07-01T00:00:00", "1902-06-01T00:00:00", "1902-05-01T00:00:00", "1902-04-01T00:00:00", "1902-03-01T00:00:00", "1902-02-01T00:00:00", "1902-01-01T00:00:00", "1901-12-01T00:00:00", "1901-11-01T00:00:00", "1901-10-01T00:00:00", "1901-09-01T00:00:00", "1901-08-01T00:00:00", "1901-07-01T00:00:00", "1901-06-01T00:00:00", "1901-05-01T00:00:00", "1901-04-01T00:00:00", "1901-03-01T00:00:00", "1901-02-01T00:00:00", "1901-01-01T00:00:00", "1900-12-01T00:00:00", "1900-11-01T00:00:00", "1900-10-01T00:00:00", "1900-09-01T00:00:00", "1900-08-01T00:00:00", "1900-07-01T00:00:00", "1900-06-01T00:00:00", "1900-05-01T00:00:00", "1900-04-01T00:00:00", "1900-03-01T00:00:00", "1900-02-01T00:00:00", "1900-01-01T00:00:00", "1899-12-01T00:00:00", "1899-11-01T00:00:00", "1899-10-01T00:00:00", "1899-09-01T00:00:00", "1899-08-01T00:00:00", "1899-07-01T00:00:00", "1899-06-01T00:00:00", "1899-05-01T00:00:00", "1899-04-01T00:00:00", "1899-03-01T00:00:00", "1899-02-01T00:00:00", "1899-01-01T00:00:00", "1898-12-01T00:00:00", "1898-11-01T00:00:00", "1898-10-01T00:00:00", "1898-09-01T00:00:00", "1898-08-01T00:00:00", "1898-07-01T00:00:00", "1898-06-01T00:00:00", "1898-05-01T00:00:00", "1898-04-01T00:00:00", "1898-03-01T00:00:00", "1898-02-01T00:00:00", "1898-01-01T00:00:00", "1897-12-01T00:00:00", "1897-11-01T00:00:00", "1897-10-01T00:00:00", "1897-09-01T00:00:00", "1897-08-01T00:00:00", "1897-07-01T00:00:00", "1897-06-01T00:00:00", "1897-05-01T00:00:00", "1897-04-01T00:00:00", "1897-03-01T00:00:00", "1897-02-01T00:00:00", "1897-01-01T00:00:00", "1896-12-01T00:00:00", "1896-11-01T00:00:00", "1896-10-01T00:00:00", "1896-09-01T00:00:00", "1896-08-01T00:00:00", "1896-07-01T00:00:00", "1896-06-01T00:00:00", "1896-05-01T00:00:00", "1896-04-01T00:00:00", "1896-03-01T00:00:00", "1896-02-01T00:00:00", "1896-01-01T00:00:00", "1895-12-01T00:00:00", "1895-11-01T00:00:00", "1895-10-01T00:00:00", "1895-09-01T00:00:00", "1895-08-01T00:00:00", "1895-07-01T00:00:00", "1895-06-01T00:00:00", "1895-05-01T00:00:00", "1895-04-01T00:00:00", "1895-03-01T00:00:00", "1895-02-01T00:00:00", "1895-01-01T00:00:00", "1894-12-01T00:00:00", "1894-11-01T00:00:00", "1894-10-01T00:00:00", "1894-09-01T00:00:00", "1894-08-01T00:00:00", "1894-07-01T00:00:00", "1894-06-01T00:00:00", "1894-05-01T00:00:00", "1894-04-01T00:00:00", "1894-03-01T00:00:00", "1894-02-01T00:00:00", "1894-01-01T00:00:00", "1893-12-01T00:00:00", "1893-11-01T00:00:00", "1893-10-01T00:00:00", "1893-09-01T00:00:00", "1893-08-01T00:00:00", "1893-07-01T00:00:00", "1893-06-01T00:00:00", "1893-05-01T00:00:00", "1893-04-01T00:00:00", "1893-03-01T00:00:00", "1893-02-01T00:00:00", "1893-01-01T00:00:00", "1892-12-01T00:00:00", "1892-11-01T00:00:00", "1892-10-01T00:00:00", "1892-09-01T00:00:00", "1892-08-01T00:00:00", "1892-07-01T00:00:00", "1892-06-01T00:00:00", "1892-05-01T00:00:00", "1892-04-01T00:00:00", "1892-03-01T00:00:00", "1892-02-01T00:00:00", "1892-01-01T00:00:00", "1891-12-01T00:00:00", "1891-11-01T00:00:00", "1891-10-01T00:00:00", "1891-09-01T00:00:00", "1891-08-01T00:00:00", "1891-07-01T00:00:00", "1891-06-01T00:00:00", "1891-05-01T00:00:00", "1891-04-01T00:00:00", "1891-03-01T00:00:00", "1891-02-01T00:00:00", "1891-01-01T00:00:00", "1890-12-01T00:00:00", "1890-11-01T00:00:00", "1890-10-01T00:00:00", "1890-09-01T00:00:00", "1890-08-01T00:00:00", "1890-07-01T00:00:00", "1890-06-01T00:00:00", "1890-05-01T00:00:00", "1890-04-01T00:00:00", "1890-03-01T00:00:00", "1890-02-01T00:00:00", "1890-01-01T00:00:00", "1889-12-01T00:00:00", "1889-11-01T00:00:00", "1889-10-01T00:00:00", "1889-09-01T00:00:00", "1889-08-01T00:00:00", "1889-07-01T00:00:00", "1889-06-01T00:00:00", "1889-05-01T00:00:00", "1889-04-01T00:00:00", "1889-03-01T00:00:00", "1889-02-01T00:00:00", "1889-01-01T00:00:00", "1888-12-01T00:00:00", "1888-11-01T00:00:00", "1888-10-01T00:00:00", "1888-09-01T00:00:00", "1888-08-01T00:00:00", "1888-07-01T00:00:00", "1888-06-01T00:00:00", "1888-05-01T00:00:00", "1888-04-01T00:00:00", "1888-03-01T00:00:00", "1888-02-01T00:00:00", "1888-01-01T00:00:00", "1887-12-01T00:00:00", "1887-11-01T00:00:00", "1887-10-01T00:00:00", "1887-09-01T00:00:00", "1887-08-01T00:00:00", "1887-07-01T00:00:00", "1887-06-01T00:00:00", "1887-05-01T00:00:00", "1887-04-01T00:00:00", "1887-03-01T00:00:00", "1887-02-01T00:00:00", "1887-01-01T00:00:00", "1886-12-01T00:00:00", "1886-11-01T00:00:00", "1886-10-01T00:00:00", "1886-09-01T00:00:00", "1886-08-01T00:00:00", "1886-07-01T00:00:00", "1886-06-01T00:00:00", "1886-05-01T00:00:00", "1886-04-01T00:00:00", "1886-03-01T00:00:00", "1886-02-01T00:00:00", "1886-01-01T00:00:00", "1885-12-01T00:00:00", "1885-11-01T00:00:00", "1885-10-01T00:00:00", "1885-09-01T00:00:00", "1885-08-01T00:00:00", "1885-07-01T00:00:00", "1885-06-01T00:00:00", "1885-05-01T00:00:00", "1885-04-01T00:00:00", "1885-03-01T00:00:00", "1885-02-01T00:00:00", "1885-01-01T00:00:00", "1884-12-01T00:00:00", "1884-11-01T00:00:00", "1884-10-01T00:00:00", "1884-09-01T00:00:00", "1884-08-01T00:00:00", "1884-07-01T00:00:00", "1884-06-01T00:00:00", "1884-05-01T00:00:00", "1884-04-01T00:00:00", "1884-03-01T00:00:00", "1884-02-01T00:00:00", "1884-01-01T00:00:00", "1883-12-01T00:00:00", "1883-11-01T00:00:00", "1883-10-01T00:00:00", "1883-09-01T00:00:00", "1883-08-01T00:00:00", "1883-07-01T00:00:00", "1883-06-01T00:00:00", "1883-05-01T00:00:00", "1883-04-01T00:00:00", "1883-03-01T00:00:00", "1883-02-01T00:00:00", "1883-01-01T00:00:00", "1882-12-01T00:00:00", "1882-11-01T00:00:00", "1882-10-01T00:00:00", "1882-09-01T00:00:00", "1882-08-01T00:00:00", "1882-07-01T00:00:00", "1882-06-01T00:00:00", "1882-05-01T00:00:00", "1882-04-01T00:00:00", "1882-03-01T00:00:00", "1882-02-01T00:00:00", "1882-01-01T00:00:00", "1881-12-01T00:00:00", "1881-11-01T00:00:00", "1881-10-01T00:00:00", "1881-09-01T00:00:00", "1881-08-01T00:00:00", "1881-07-01T00:00:00", "1881-06-01T00:00:00", "1881-05-01T00:00:00", "1881-04-01T00:00:00", "1881-03-01T00:00:00", "1881-02-01T00:00:00", "1881-01-01T00:00:00", "1880-12-01T00:00:00", "1880-11-01T00:00:00", "1880-10-01T00:00:00", "1880-09-01T00:00:00", "1880-08-01T00:00:00", "1880-07-01T00:00:00", "1880-06-01T00:00:00", "1880-05-01T00:00:00", "1880-04-01T00:00:00", "1880-03-01T00:00:00", "1880-02-01T00:00:00", "1880-01-01T00:00:00", "1879-12-01T00:00:00", "1879-11-01T00:00:00", "1879-10-01T00:00:00", "1879-09-01T00:00:00", "1879-08-01T00:00:00", "1879-07-01T00:00:00", "1879-06-01T00:00:00", "1879-05-01T00:00:00", "1879-04-01T00:00:00", "1879-03-01T00:00:00", "1879-02-01T00:00:00", "1879-01-01T00:00:00", "1878-12-01T00:00:00", "1878-11-01T00:00:00", "1878-10-01T00:00:00", "1878-09-01T00:00:00", "1878-08-01T00:00:00", "1878-07-01T00:00:00", "1878-06-01T00:00:00", "1878-05-01T00:00:00", "1878-04-01T00:00:00", "1878-03-01T00:00:00", "1878-02-01T00:00:00", "1878-01-01T00:00:00", "1877-12-01T00:00:00", "1877-11-01T00:00:00", "1877-10-01T00:00:00", "1877-09-01T00:00:00", "1877-08-01T00:00:00", "1877-07-01T00:00:00", "1877-06-01T00:00:00", "1877-05-01T00:00:00", "1877-04-01T00:00:00", "1877-03-01T00:00:00", "1877-02-01T00:00:00", "1877-01-01T00:00:00", "1876-12-01T00:00:00", "1876-11-01T00:00:00", "1876-10-01T00:00:00", "1876-09-01T00:00:00", "1876-08-01T00:00:00", "1876-07-01T00:00:00", "1876-06-01T00:00:00", "1876-05-01T00:00:00", "1876-04-01T00:00:00", "1876-03-01T00:00:00", "1876-02-01T00:00:00", "1876-01-01T00:00:00", "1875-12-01T00:00:00", "1875-11-01T00:00:00", "1875-10-01T00:00:00", "1875-09-01T00:00:00", "1875-08-01T00:00:00", "1875-07-01T00:00:00", "1875-06-01T00:00:00", "1875-05-01T00:00:00", "1875-04-01T00:00:00", "1875-03-01T00:00:00", "1875-02-01T00:00:00", "1875-01-01T00:00:00", "1874-12-01T00:00:00", "1874-11-01T00:00:00", "1874-10-01T00:00:00", "1874-09-01T00:00:00", "1874-08-01T00:00:00", "1874-07-01T00:00:00", "1874-06-01T00:00:00", "1874-05-01T00:00:00", "1874-04-01T00:00:00", "1874-03-01T00:00:00", "1874-02-01T00:00:00", "1874-01-01T00:00:00", "1873-12-01T00:00:00", "1873-11-01T00:00:00", "1873-10-01T00:00:00", "1873-09-01T00:00:00", "1873-08-01T00:00:00", "1873-07-01T00:00:00", "1873-06-01T00:00:00", "1873-05-01T00:00:00", "1873-04-01T00:00:00", "1873-03-01T00:00:00", "1873-02-01T00:00:00", "1873-01-01T00:00:00", "1872-12-01T00:00:00", "1872-11-01T00:00:00", "1872-10-01T00:00:00", "1872-09-01T00:00:00", "1872-08-01T00:00:00", "1872-07-01T00:00:00", "1872-06-01T00:00:00", "1872-05-01T00:00:00", "1872-04-01T00:00:00", "1872-03-01T00:00:00", "1872-02-01T00:00:00", "1872-01-01T00:00:00", "1871-12-01T00:00:00", "1871-11-01T00:00:00", "1871-10-01T00:00:00", "1871-09-01T00:00:00", "1871-08-01T00:00:00", "1871-07-01T00:00:00", "1871-06-01T00:00:00", "1871-05-01T00:00:00", "1871-04-01T00:00:00", "1871-03-01T00:00:00", "1871-02-01T00:00:00" ], "xaxis": "x", "y": [ 37.63, 38.44, 37.68, 36.86, 36.62, 36.72, 35.04, 35.1, 34.51, 33.77, 32.47, 31.28, 30.84, 31.16, 29.6, 28.84, 27.33, 25.93, 24.82, 30.73, 30.99, 30.33, 29.84, 28.84, 29.23, 28.71, 29.99, 29.28, 29.24, 30.13, 29.58, 29.54, 28.38, 28.29, 30.2, 31.04, 32.62, 32.39, 31.89, 31.63, 31.24, 30.97, 31.81, 32.04, 33.31, 32.09, 31.3, 30.92, 30.17, 29.91, 30, 29.75, 29.31, 28.9, 29.09, 28.66, 28.06, 27.87, 26.85, 26.53, 26.73, 26.95, 26.69, 25.84, 25.69, 25.92, 25.37, 24, 24.21, 25.97, 26.23, 25.49, 24.5, 25.69, 26.38, 26.5, 26.81, 26.79, 26.73, 27, 26.49, 26.79, 26.61, 25.16, 25.92, 25.62, 25.82, 25.56, 24.94, 24.79, 24.96, 24.59, 24.86, 24.86, 24.64, 23.83, 23.44, 23.36, 23.49, 22.93, 23.41, 22.6, 22.42, 22.05, 21.9, 21.24, 20.9, 21.58, 21.78, 21.41, 21, 20.55, 20.94, 21.78, 22.05, 21.8, 21.21, 20.52, 20.35, 20.16, 19.7, 20.05, 22.61, 22.1, 23.06, 23.14, 22.9, 23.49, 22.98, 22.4, 21.7, 21.24, 20.38, 19.77, 19.67, 19.74, 20.48, 21.8, 21, 19.92, 20.53, 20.32, 19.81, 19.36, 18.83, 18.09, 16.69, 16.38, 16, 14.98, 13.32, 14.12, 15.17, 15.38, 15.26, 16.39, 20.36, 21.4, 20.91, 22.42, 23.7, 23.36, 22.61, 23.5, 24.02, 25.96, 25.73, 27.32, 26.73, 26.15, 27.41, 27.42, 27.55, 26.98, 26.23, 27.32, 27.21, 27.28, 26.93, 26.54, 25.64, 25.05, 24.7, 24.75, 25.65, 26.15, 26.33, 26.25, 26.47, 26.44, 25.93, 24.88, 25.73, 26.1, 26.29, 26.07, 25.65, 25.41, 26.34, 26.74, 26.59, 27.14, 26.47, 25.41, 25.67, 25.17, 25.7, 26.4, 25.9, 26.9, 26.89, 27.65, 27.66, 26.64, 25.95, 25.68, 25.24, 24.64, 24.87, 24.83, 23.59, 22.43, 21.31, 21.21, 22.9, 23.1, 23.35, 21.96, 22.36, 23.59, 23.46, 26.39, 28.13, 29.01, 30.29, 29.09, 30.28, 30.5, 30.01, 28.58, 27.67, 31.4, 32.16, 33.07, 34.07, 32.17, 32.32, 35.83, 36.98, 37.27, 38.78, 39.37, 41.89, 42.87, 42.75, 42.78, 41.96, 43.53, 43.22, 42.18, 43.77, 44.19, 43.21, 40.55, 41.32, 41.93, 43.83, 42.18, 42.55, 42.7, 41.35, 40.4, 40.57, 38.82, 37.37, 33.77, 33.53, 35.42, 38.26, 36.8, 36.95, 37.27, 36.29, 34.71, 32.86, 33.03, 32.33, 32.9, 32.66, 32.58, 32.76, 31.25, 29.93, 27.58, 28.8, 29.26, 28.33, 27.72, 27.58, 26.48, 25.68, 25.41, 24.86, 25.96, 25.81, 25.42, 25.63, 25.97, 24.76, 25.03, 24.35, 23.93, 23.94, 23.28, 23.37, 22.72, 22.19, 21.64, 21.15, 20.8, 20.22, 19.91, 20.21, 20.39, 20.57, 20.53, 20.07, 20.29, 20.19, 20.05, 20.83, 21.26, 21.41, 21.16, 21.04, 21.11, 20.99, 20.81, 20.56, 20.61, 20.52, 20.46, 20.85, 20.54, 20.32, 20.45, 19.83, 19.37, 19.71, 19.72, 19.62, 19.31, 19.66, 19.3, 19.28, 19.58, 19.77, 18.44, 18.29, 18.35, 18.36, 18.51, 18.1, 18.01, 18.03, 18.16, 17.82, 17.36, 15.61, 15.85, 15.19, 14.82, 15.3, 16.17, 17.75, 17.82, 17.39, 16.81, 16.83, 16.51, 17.05, 17.65, 17.24, 17.64, 17.71, 17.73, 17.01, 16.64, 16.19, 15.69, 15.3, 15.47, 15.09, 14.7, 14.45, 14.81, 14.37, 14.24, 14.61, 14.77, 14.03, 14.43, 14.67, 14.3, 13.9, 13.39, 13.59, 15.53, 17.68, 18.33, 17.31, 16.83, 16.16, 16.2, 16.43, 15.82, 14.92, 14.09, 13.87, 13.43, 13.47, 13.89, 13.62, 13.89, 13.56, 13.55, 13.19, 12.39, 11.72, 11.69, 11.16, 10.55, 10.47, 10.74, 11, 10.81, 10.61, 10.4, 10.37, 10.49, 10, 9.6, 9.69, 9.6, 9.69, 9.62, 8.87, 9.01, 9.23, 9.31, 9.33, 9.32, 9.89, 9.82, 9.85, 10, 9.98, 9.73, 10.01, 10, 9.87, 9.53, 9.23, 8.91, 8.76, 8.47, 8.35, 8, 7.4, 6.64, 6.64, 6.69, 7.19, 7.26, 6.95, 7.18, 7.39, 7.83, 7.81, 7.65, 7.58, 8.4, 8.45, 8.77, 8.82, 9.09, 9.08, 8.83, 9.26, 9.39, 9.65, 9.36, 9.2, 9.07, 8.88, 8.51, 8.1, 7.84, 8.08, 9.05, 8.85, 8.75, 8.52, 8.68, 9.11, 9.13, 8.83, 8.85, 8.79, 9.13, 9.07, 9, 9.26, 9.01, 8.93, 9.53, 9.94, 10.02, 9.43, 9.55, 9.63, 9.26, 8.95, 9.05, 9.24, 9.68, 9.77, 9.77, 10.07, 10.27, 10.57, 10.53, 10.55, 10.64, 10.9, 11.01, 11.44, 11.6, 11.25, 11.35, 11.81, 11.6, 11.76, 11.54, 11.53, 11.69, 11.63, 11.59, 11.19, 10.25, 10.44, 10.33, 9.92, 10.09, 10.9, 11.01, 10.82, 10.23, 10.16, 9.76, 8.92, 8.29, 8.95, 8.74, 8.68, 9.82, 10.39, 11.89, 12, 12.55, 13.31, 12.96, 13.53, 13.49, 14.65, 15.91, 15.48, 15.28, 15.89, 15.81, 16.31, 16.94, 17.41, 17.89, 18.71, 18.65, 18.34, 17.53, 17.61, 17.94, 17.4, 17.64, 17.66, 17.92, 17.81, 17.46, 17.26, 16.6, 15.64, 16.43, 16.86, 16.52, 16.89, 17.08, 17.56, 17.92, 17.4, 17.03, 16.46, 15.87, 14.95, 15.06, 14.84, 14.1, 13.73, 13.8, 13.98, 15.87, 16.53, 16.37, 17.09, 17.33, 18.44, 18.45, 18.4, 18.43, 18.68, 19.71, 20.97, 20.43, 20.2, 20.9, 21.19, 22.28, 22.2, 22, 21.68, 21.14, 21.75, 22, 21.63, 21.28, 19.93, 20.42, 21.51, 21.75, 21.26, 22.07, 22.22, 22.03, 21.8, 21.55, 21.95, 21.69, 21.44, 21.07, 20.43, 19.74, 19.71, 18.83, 19.16, 19.91, 21.38, 21.56, 21.85, 23.11, 22.61, 23.7, 24.06, 23.69, 23.93, 23.78, 23.37, 22.67, 22.3, 22.39, 23.71, 23.42, 23.25, 23.37, 23.27, 22.75, 23.23, 23.21, 22.89, 22.65, 22.98, 22.3, 22.57, 22.42, 22.17, 21.83, 21.63, 21.04, 20.72, 20.89, 20.96, 20.47, 19.97, 20.38, 20.51, 20.15, 19.29, 19.47, 19.26, 18.59, 17.85, 16.74, 17.32, 17.57, 17.14, 16.83, 19.09, 20.66, 21.44, 21.45, 21.2, 22.04, 21.86, 20.92, 20.71, 20.94, 20.15, 20.33, 20.6, 20.38, 19.84, 19.23, 18.47, 17.56, 17.15, 16.61, 17.05, 17.58, 17.38, 17.82, 17.26, 17.43, 17.29, 17.55, 18.34, 18.62, 18.07, 18.02, 18.12, 18.96, 19.09, 18.45, 18.69, 18.43, 18.2, 17.76, 17.98, 17.36, 16.99, 16.56, 15.93, 15.54, 14.96, 14.64, 14.32, 13.91, 13.93, 13.78, 13.79, 13.67, 13.74, 14.15, 15.16, 15.87, 16.87, 16.73, 16.6, 16.12, 15.9, 15.84, 16.72, 17.2, 17.12, 17.42, 17.84, 18.67, 18.86, 18.16, 18.54, 19.37, 19.37, 18.27, 18.29, 18.94, 18.84, 17.77, 18.84, 18.22, 18.45, 17.37, 16.52, 16.69, 16.22, 16.44, 15.99, 15.79, 15.12, 14.62, 14.36, 14.04, 13.83, 13.36, 13.31, 12.91, 12.42, 12.22, 12, 11.75, 11.64, 11.39, 11.14, 11.72, 11.75, 11.62, 12.14, 12.16, 12.83, 12.86, 13.01, 12.93, 12.47, 12.13, 12.43, 12.68, 12.67, 12.45, 12.2, 12.24, 12.36, 12.36, 12.53, 12.15, 11.85, 12.31, 12.44, 12.26, 11.78, 11.62, 11.86, 11.95, 11.84, 12.14, 11.9, 11.31, 11.54, 11.66, 11.34, 11.04, 10.54, 11.55, 11.46, 11.18, 10.91, 10.91, 10.75, 10.53, 10.22, 10.17, 9.88, 9.85, 9.61, 9.07, 9.69, 9.78, 9.9, 9.87, 10.25, 10.16, 10.25, 10.83, 10.55, 10.72, 11.13, 11.58, 11.24, 10.78, 10.19, 10, 10.42, 10.68, 10.98, 11.13, 10.83, 11.34, 11.7, 11.08, 10.73, 10.9, 11.29, 11.95, 11.47, 11.37, 11.11, 11.39, 11.84, 13.98, 14.51, 15.77, 16.01, 16.04, 15.13, 15.76, 15.62, 15.02, 14.85, 14.37, 13.8, 12.92, 12.87, 13.13, 13.04, 12.63, 12.32, 12.34, 11.96, 11.64, 11.48, 11.58, 11.33, 11.54, 11.74, 11.53, 11.1, 10.94, 11.22, 10.95, 11.05, 10.74, 10.63, 11.19, 11.34, 11.21, 11.77, 11.52, 11.36, 11.04, 10.85, 10.71, 10.15, 9.62, 9.66, 9.6, 9.08, 9.01, 9.15, 8.91, 8.51, 8.54, 9, 9.68, 10.1, 10.09, 10.91, 11.58, 12.28, 12.46, 12.74, 12.16, 12.04, 12.43, 12.96, 13, 13.9, 13.91, 14.64, 14.33, 14.21, 13.65, 13.37, 12.84, 14.14, 16.37, 16.17, 16.22, 16.38, 16.28, 16.6, 16.82, 16.45, 15.12, 15.27, 14.83, 14.5, 13.92, 15.73, 15.66, 15.6, 15.76, 16.15, 16.06, 14.28, 14.9, 14.77, 12.29, 11.99, 11.79, 12.38, 13.26, 13.51, 13.01, 13.16, 14.36, 16.85, 19.81, 19.65, 18.71, 19.47, 20.56, 22.04, 22.24, 21.62, 21.13, 21.5, 20.91, 19.86, 19.62, 19.36, 18.39, 17.75, 18.72, 18.66, 18.1, 17.09, 16.16, 16.13, 14.83, 14.42, 14.11, 13.2, 12.54, 11.99, 11.1, 10.4, 11.09, 11.5, 11.64, 11.45, 11.11, 10.91, 11.32, 11.74, 12.29, 12.18, 13.52, 13.25, 13.93, 13.03, 12.28, 12.01, 11.7, 12.92, 13, 13.75, 13.1, 11.25, 8.72, 7.87, 7.83, 8.73, 8.26, 8.46, 8.48, 9.76, 8.83, 5.84, 5.57, 6.39, 7.19, 9.41, 9.34, 9.31, 9.31, 11.42, 11.15, 12.82, 15.01, 15.52, 15.06, 15.4, 16.87, 18.58, 18.16, 16.71, 16.06, 16.94, 18.21, 21.07, 21.3, 21.55, 21.87, 24.31, 25.84, 24.59, 23.7, 22.31, 22.01, 21.17, 28.96, 32.56, 31.48, 29.93, 27.94, 27.7, 27.57, 27.68, 27.13, 27.08, 25.3, 25.12, 23.58, 23, 21.76, 21.08, 20.91, 21.83, 21.26, 19.94, 18.87, 18.81, 18.65, 18.13, 17.54, 17.82, 16.86, 15.82, 15.12, 15, 14.49, 14.03, 13.63, 13.19, 13.01, 12.62, 12.43, 12.69, 12.49, 11.87, 11.2, 10.58, 10.4, 10.71, 11.39, 11.34, 11.15, 10.89, 10.72, 10.36, 10.11, 9.96, 9.8, 9.73, 9.48, 9.52, 9.83, 9.69, 9.31, 8.89, 8.42, 8.58, 8.72, 8.38, 8.05, 7.9, 7.92, 8.06, 8.16, 8.07, 7.81, 7.55, 7.32, 7.46, 7.44, 7.35, 7.67, 8, 8.37, 8.7, 8.53, 8.15, 7.96, 8, 8.43, 8.27, 8.02, 7.6, 7.56, 7.59, 7.27, 6.82, 6.46, 6.29, 6.11, 5.84, 5.48, 5.38, 5.16, 5.2, 5.22, 5.61, 5.3, 5.19, 5.27, 5.12, 4.78, 5.13, 5.35, 5.3, 5.02, 5.08, 5.04, 5.19, 5.6, 5.8, 5.46, 5.99, 6.16, 6.47, 6.79, 6.56, 6.48, 7.05, 7.02, 6.83, 6.46, 6.36, 6.24, 6.1, 6.13, 6.33, 6.29, 6.15, 6.3, 6.37, 6.5, 6.58, 6.52, 6.69, 6.78, 6.64, 6.41, 6.75, 7.39, 7.95, 8.57, 9, 9.15, 9.14, 9.64, 10.33, 10.06, 10.99, 11.41, 12.05, 12.05, 11.94, 11.73, 11.79, 12, 12.03, 11.91, 12.18, 12.35, 12.54, 12.88, 12.86, 12.55, 12.01, 11.58, 11.11, 11.15, 11.03, 11.4, 10.71, 10.33, 10.36, 10.17, 10.52, 10.61, 10.5, 10.49, 10.69, 11.43, 11.48, 11.52, 11.69, 11.91, 11.64, 11.17, 11.07, 11.47, 11.84, 11.85, 11.53, 11.49, 12.22, 12.43, 12.44, 12.68, 13.15, 13.4, 13.75, 13.9, 13.93, 13.99, 13.8, 13.78, 13.65, 13.66, 13.64, 13.53, 13.8, 13.93, 13.73, 13.07, 13, 13.91, 15.08, 15.33, 15.05, 14.76, 14.37, 14.73, 14.05, 13.74, 14.16, 13.92, 12.94, 12.75, 12.34, 13.01, 13.57, 13.56, 14.04, 14, 14.54, 14.75, 14.74, 14.99, 15.25, 15.43, 15.23, 15.04, 14.96, 14.64, 14.33, 14.17, 14.77, 14.58, 14.44, 13.69, 13.71, 13.89, 13.35, 13.05, 13.08, 12.45, 11.99, 11.56, 11.9, 11.34, 10.6, 10.84, 12.33, 12.51, 13.58, 13.14, 13.8, 14.68, 14.69, 16.22, 17.22, 17.67, 18.14, 18.1, 19.21, 18.96, 18.19, 18.18, 18.06, 18.87, 19.26, 19.86, 20.13, 19.57, 19.45, 19.89, 19.74, 19.58, 19.2, 18.73, 18.63, 19.49, 19.84, 19.17, 18.46, 18.16, 18.07, 17.63, 16.74, 16.31, 16.03, 15.47, 15.52, 15.56, 15.09, 15.02, 15.86, 16.04, 15.4, 15.26, 15.65, 16.31, 16.93, 17.83, 18.96, 18.99, 19.89, 20.11, 20.32, 19.64, 20.41, 20.62, 22.87, 23.17, 22.4, 21.97, 22.42, 22.83, 22.41, 22.46, 22.34, 21.69, 22.37, 22.26, 22.6, 23.07, 23.15, 25.23, 23.06, 24.4, 22.36, 21.69, 20.97, 20.75, 19.42, 18.1, 17.35, 18.07, 17.7, 17.99, 18.41, 18.95, 18.78, 18.71, 18.67, 18.51, 20.21, 20.15, 20.6, 21.72, 21.57, 21.2, 22.1, 23.16, 23.27, 23.04, 22.92, 21.39, 20.53, 19.95, 20.45, 20.55, 19.86, 19.53, 17.6, 17.7, 18.03, 18.91, 19.25, 18.75, 18.36, 19.03, 19.36, 18.99, 18.65, 17.85, 17.05, 16.71, 16.96, 16.9, 17.03, 16.5, 17.09, 16.44, 16.55, 15.7, 16.64, 17.78, 17.84, 17.65, 17.22, 17.5, 16.58, 16.54, 17.35, 17.95, 18.2, 18.08, 17.54, 17.21, 17.07, 16.39, 16.35, 16.32, 16.51, 16.66, 16.55, 16.51, 16.53, 16.45, 16.28, 16.6, 16.8, 17.42, 17.18, 16.19, 15.74, 15.62, 15.93, 15.27, 15.02, 14.58, 14.35, 15.42, 15.79, 17.1, 16.9, 17.13, 17.65, 18.02, 18.46, 19.03, 18.69, 19.2, 19.22, 19.77, 19.92, 19.95, 19.73, 19.03, 19.01, 18.2, 17.66, 17.72, 17.72, 16.16, 15.61, 15.66, 15.57, 15.4, 15.06, 15.47, 15.43, 14.44, 14.74, 15.48, 16.16, 16.6, 17.58, 17.68, 17.78, 17.26, 16.9, 17.03, 17.22, 16.61, 16.9, 17.05, 17.34, 17.14, 16.89, 17.22, 16.92, 16.05, 16.07, 16.19, 15.81, 14.94, 15.22, 15.72, 15.98, 15.6, 15.27, 15.08, 15.38, 15.02, 14.8, 15.41, 15.36, 15.45, 15.95, 15.88, 16.67, 16.74, 17.42, 17.71, 18.07, 17.82, 17.47, 17.12, 17.52, 18.2, 18.96, 18.55, 18.14, 17.72, 17.85, 17.82, 16.87, 16.81, 16.84, 17.01, 16.7, 16.31, 16.83, 15.98, 15.11, 15.13, 14.33, 13.97, 13.71, 13.54, 13.74, 13.39, 13.13, 13.43, 13.31, 13.28, 13.57, 13.86, 13.05, 12.9, 13.46, 14.35, 14.73, 14.8, 14.43, 14.89, 15.41, 15.05, 15.49, 15.2, 15.96, 15.91, 15.33, 15.47, 15.05, 14.75, 15.27, 15.38, 15.19, 15.76, 16.07, 15.53, 15.23, 14.33, 14.56, 14.92, 15.08, 15.15, 15.68, 15.96, 16.48, 16.25, 16.72, 17.28, 18.11, 19.04, 18.88, 17.95, 18.28, 18.15, 18.47, 17.33, 16.87, 16.26, 15.86, 16.1, 15.59, 14.95, 14.63, 15.46, 15.23, 15.12, 14.87, 14.77, 15.26, 15.29, 14.59, 14.61, 14.54, 14.45, 14.25, 13.66, 13.09, 13.18, 12.87, 12.58, 12.37, 12.28, 12.3, 12.06, 12.31, 12.21, 11.71, 11.29, 10.88, 10.45, 10.57, 10.25, 10.27, 10.22, 9.99, 9.29, 8.35, 8.05, 8.18, 8.31, 9.2, 9.23, 9.52, 9.74, 9.94, 10.2, 10.42, 11.18, 11.75, 11.88, 11.63, 11.63, 11.95, 11.96, 11.79, 11.45, 11.34, 11.06, 11.24, 11.24, 11.29, 11.28, 11.33, 11.51, 11.48, 11.35, 11.41, 11.45, 11.56, 11.4, 11.28, 11.14, 11.07, 11.19, 11.02, 11.26, 11.43, 11.63, 11.33, 10.96, 10.31, 10.4, 11.16, 12.12, 12.16, 12.22, 12.05, 11.78, 11.95, 12.05, 12.25, 12.17, 11.71, 12.13, 11.83, 12.13, 12.38, 12.27, 12.28, 12.25, 12.18, 11.96, 11.9, 11.59, 11.6, 11.47, 12.31, 12.55, 12.27, 12.59, 12.59, 12.05, 11.19, 10.92 ], "yaxis": "y" } ], "layout": { "legend": { "title": { "text": "variable" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Date" } }, "yaxis": { "anchor": "x", "domain": [ 0, 1 ], "title": { "text": "value" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# https://pandas.pydata.org/docs/reference/api/pandas.melt.html\n", "df_per = pd.melt(df, id_vars=['Date'], value_vars=['PER'])\n", "px.line(df_per, x='Date', y='value', color='variable')" ] }, { "cell_type": "code", "execution_count": 28, "id": "bb794873", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPrice
count1808.0000001808.000000
mean16.864635326.200664
std6.937856680.270104
min4.7800002.730000
25%11.6825007.907500
50%15.85500017.370000
75%20.472500164.400000
max44.1900004450.370000
\n", "
" ], "text/plain": [ " PER Price\n", "count 1808.000000 1808.000000\n", "mean 16.864635 326.200664\n", "std 6.937856 680.270104\n", "min 4.780000 2.730000\n", "25% 11.682500 7.907500\n", "50% 15.855000 17.370000\n", "75% 20.472500 164.400000\n", "max 44.190000 4450.370000" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.describe()" ] }, { "cell_type": "code", "execution_count": 29, "id": "48364adc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "PER float64\n", "Price float64\n", "Date datetime64[ns]\n", "dtype: object" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.dtypes" ] }, { "cell_type": "code", "execution_count": 30, "id": "e6f38512", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Price0F', 'Price1F', 'Price2F', 'Price3F', 'Price4F', 'Price5F', 'Price6F']" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ls_price_p = ['Price'+str(i)+'F' for i in range(7)]\n", "ls_price_p" ] }, { "cell_type": "code", "execution_count": 31, "id": "ea0ae7f3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Price1F', 'Price2F', 'Price3F', 'Price4F', 'Price5F', 'Price6F']" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ls_price_p[1:]" ] }, { "cell_type": "code", "execution_count": 32, "id": "573de1ed", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Price0F'" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ls_price_p[0]" ] }, { "cell_type": "code", "execution_count": 33, "id": "d3d05748", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['PER', 'Price', 'Date']" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.columns.tolist()" ] }, { "cell_type": "code", "execution_count": 34, "id": "4af47687", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDate
Date
2021-10-0137.634357.042021-10-01
2021-08-0138.444450.372021-08-01
2021-07-0137.684358.132021-07-01
2021-06-0136.864238.492021-06-01
2021-05-0136.624167.852021-05-01
2021-04-0136.724141.182021-04-01
2021-03-0135.043910.512021-03-01
2021-02-0135.103883.432021-02-01
2021-01-0134.513793.752021-01-01
2020-12-0133.773695.312020-12-01
\n", "
" ], "text/plain": [ " PER Price Date\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01\n", "2021-08-01 38.44 4450.37 2021-08-01\n", "2021-07-01 37.68 4358.13 2021-07-01\n", "2021-06-01 36.86 4238.49 2021-06-01\n", "2021-05-01 36.62 4167.85 2021-05-01\n", "2021-04-01 36.72 4141.18 2021-04-01\n", "2021-03-01 35.04 3910.51 2021-03-01\n", "2021-02-01 35.10 3883.43 2021-02-01\n", "2021-01-01 34.51 3793.75 2021-01-01\n", "2020-12-01 33.77 3695.31 2020-12-01" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "code", "execution_count": 35, "id": "394f98b0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDate
Date
1871-11-0111.604.641871-11-01
1871-10-0111.474.591871-10-01
1871-09-0112.314.841871-09-01
1871-08-0112.554.791871-08-01
1871-07-0112.274.731871-07-01
1871-06-0112.594.821871-06-01
1871-05-0112.594.861871-05-01
1871-04-0112.054.741871-04-01
1871-03-0111.194.611871-03-01
1871-02-0110.924.501871-02-01
\n", "
" ], "text/plain": [ " PER Price Date\n", "Date \n", "1871-11-01 11.60 4.64 1871-11-01\n", "1871-10-01 11.47 4.59 1871-10-01\n", "1871-09-01 12.31 4.84 1871-09-01\n", "1871-08-01 12.55 4.79 1871-08-01\n", "1871-07-01 12.27 4.73 1871-07-01\n", "1871-06-01 12.59 4.82 1871-06-01\n", "1871-05-01 12.59 4.86 1871-05-01\n", "1871-04-01 12.05 4.74 1871-04-01\n", "1871-03-01 11.19 4.61 1871-03-01\n", "1871-02-01 10.92 4.50 1871-02-01" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.tail(10)" ] }, { "cell_type": "code", "execution_count": 36, "id": "f2067658", "metadata": {}, "outputs": [], "source": [ "for i,e in enumerate(ls_price_p):\n", " df[e]=df.Price.shift(i) " ] }, { "cell_type": "code", "execution_count": 37, "id": "ed19bd10", "metadata": {}, "outputs": [], "source": [ "df['Price1P'] = df['Price'].shift(-1)\n", "df['Price_Var']=df['Price']/df['Price1P']-1" ] }, { "cell_type": "code", "execution_count": 38, "id": "7b7bd9a9", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_Var
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.020971
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.021165
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.028227
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.016949
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.006440
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.058987
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.006973
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.023639
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.026639
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.041229
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var \n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 " ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "code", "execution_count": 39, "id": "5e64e4bf", "metadata": {}, "outputs": [], "source": [ "df['PriceFmin']=df[ls_price_p].min(axis=1)" ] }, { "cell_type": "code", "execution_count": 40, "id": "7f2da36b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFmin
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.18
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.51
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.43
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.75
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.31
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 " ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "code", "execution_count": 41, "id": "fe718f3d", "metadata": {}, "outputs": [], "source": [ "col_y = 'Price_Corr_6M'\n", "df[col_y]=1-df['PriceFmin']/df['Price0F']" ] }, { "cell_type": "code", "execution_count": 42, "id": "c543089f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.040.000000
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.040.020971
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.040.000250
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.490.000000
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.850.000000
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.180.000000
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.000000
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.000000
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.000000
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.000000
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-10-01 0.000000 \n", "2021-08-01 0.020971 \n", "2021-07-01 0.000250 \n", "2021-06-01 0.000000 \n", "2021-05-01 0.000000 \n", "2021-04-01 0.000000 \n", "2021-03-01 0.000000 \n", "2021-02-01 0.000000 \n", "2021-01-01 0.000000 \n", "2020-12-01 0.000000 " ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "code", "execution_count": 43, "id": "9fc94002", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.040.000000
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.040.020971
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.040.000250
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.490.000000
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.850.000000
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.180.000000
1871-02-0110.924.501871-02-014.504.614.744.864.824.734.79NaNNaN4.500.000000
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "1871-02-01 10.92 4.50 1871-02-01 4.50 4.61 4.74 4.86 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "1871-02-01 4.82 4.73 4.79 NaN NaN 4.50 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-10-01 0.000000 \n", "2021-08-01 0.020971 \n", "2021-07-01 0.000250 \n", "2021-06-01 0.000000 \n", "2021-05-01 0.000000 \n", "2021-04-01 0.000000 \n", "1871-02-01 0.000000 " ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[df.isna().any(axis=1)]" ] }, { "cell_type": "code", "execution_count": 44, "id": "d3d7a944", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04NaN
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04NaN
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04NaN
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49NaN
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85NaN
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.18NaN
1871-02-0110.924.501871-02-014.504.614.744.864.824.734.79NaNNaN4.50NaN
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "1871-02-01 10.92 4.50 1871-02-01 4.50 4.61 4.74 4.86 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "1871-02-01 4.82 4.73 4.79 NaN NaN 4.50 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-10-01 NaN \n", "2021-08-01 NaN \n", "2021-07-01 NaN \n", "2021-06-01 NaN \n", "2021-05-01 NaN \n", "2021-04-01 NaN \n", "1871-02-01 NaN " ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.loc[df.isna().any(axis=1),col_y]=np.nan # set to zero corrections with Nan rows\n", "df[df.isna().any(axis=1)]" ] }, { "cell_type": "code", "execution_count": 45, "id": "dabaa03b", "metadata": {}, "outputs": [], "source": [ "df_initial=df.copy()" ] }, { "cell_type": "code", "execution_count": 46, "id": "8cdcd6d1", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04NaN
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04NaN
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04NaN
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49NaN
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85NaN
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-10-01 NaN \n", "2021-08-01 NaN \n", "2021-07-01 NaN \n", "2021-06-01 NaN \n", "2021-05-01 NaN " ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_initial.head()" ] }, { "cell_type": "code", "execution_count": 47, "id": "7a7139f4", "metadata": {}, "outputs": [], "source": [ "df.dropna(axis=0, how='any', inplace=True) # remove NaN rowss" ] }, { "cell_type": "code", "execution_count": 48, "id": "48a091aa", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPricePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
count1165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.0000001165.000000
mean16.717880269.130712269.130712266.352798264.965476264.704695264.783270265.672489266.778481268.215039-0.000321250.4022660.073373
std6.885325577.596722577.596722571.992545569.557731569.693467570.415241573.627227577.305673573.2467420.041202537.5711010.074285
min4.7800002.9400002.9400002.7300002.7300002.7300002.7300002.7300002.7300002.940000-0.2397092.7300000.000244
25%11.6900007.0900007.0900006.8500006.8000006.7000006.6800006.7000006.7800007.180000-0.0204086.2600000.020737
50%15.81000014.82000014.82000014.60000014.33000014.33000014.30000014.10000013.97000014.8600000.00158113.8700000.050343
75%19.920000107.700000107.700000107.200000106.500000106.500000107.200000107.400000107.200000107.4000000.023299103.0000000.101518
max44.1900003391.7100003391.7100003365.5200003418.7000003548.9900003695.3100003793.7500003883.4300003278.2000000.5029943365.5200000.469682
\n", "
" ], "text/plain": [ " PER Price Price0F Price1F Price2F \\\n", "count 1165.000000 1165.000000 1165.000000 1165.000000 1165.000000 \n", "mean 16.717880 269.130712 269.130712 266.352798 264.965476 \n", "std 6.885325 577.596722 577.596722 571.992545 569.557731 \n", "min 4.780000 2.940000 2.940000 2.730000 2.730000 \n", "25% 11.690000 7.090000 7.090000 6.850000 6.800000 \n", "50% 15.810000 14.820000 14.820000 14.600000 14.330000 \n", "75% 19.920000 107.700000 107.700000 107.200000 106.500000 \n", "max 44.190000 3391.710000 3391.710000 3365.520000 3418.700000 \n", "\n", " Price3F Price4F Price5F Price6F Price1P \\\n", "count 1165.000000 1165.000000 1165.000000 1165.000000 1165.000000 \n", "mean 264.704695 264.783270 265.672489 266.778481 268.215039 \n", "std 569.693467 570.415241 573.627227 577.305673 573.246742 \n", "min 2.730000 2.730000 2.730000 2.730000 2.940000 \n", "25% 6.700000 6.680000 6.700000 6.780000 7.180000 \n", "50% 14.330000 14.300000 14.100000 13.970000 14.860000 \n", "75% 106.500000 107.200000 107.400000 107.200000 107.400000 \n", "max 3548.990000 3695.310000 3793.750000 3883.430000 3278.200000 \n", "\n", " Price_Var PriceFmin Price_Corr_6M \n", "count 1165.000000 1165.000000 1165.000000 \n", "mean -0.000321 250.402266 0.073373 \n", "std 0.041202 537.571101 0.074285 \n", "min -0.239709 2.730000 0.000244 \n", "25% -0.020408 6.260000 0.020737 \n", "50% 0.001581 13.870000 0.050343 \n", "75% 0.023299 103.000000 0.101518 \n", "max 0.502994 3365.520000 0.469682 " ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[df[col_y]>0].describe()" ] }, { "cell_type": "code", "execution_count": 49, "id": "2cbccefc", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "variable=Price
Date=%{x}
value=%{y}", "legendgroup": "Price", "line": { "color": "#636efa", "dash": "solid" }, "mode": "lines", "name": "Price", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ "2021-03-01T00:00:00", "2021-02-01T00:00:00", "2021-01-01T00:00:00", "2020-12-01T00:00:00", "2020-11-01T00:00:00", "2020-10-01T00:00:00", "2020-09-01T00:00:00", "2020-08-01T00:00:00", "2020-07-01T00:00:00", "2020-06-01T00:00:00", "2020-05-01T00:00:00", "2020-04-01T00:00:00", "2020-03-01T00:00:00", "2020-02-01T00:00:00", "2020-01-01T00:00:00", "2019-12-01T00:00:00", "2019-11-01T00:00:00", "2019-10-01T00:00:00", "2019-09-01T00:00:00", "2019-08-01T00:00:00", "2019-07-01T00:00:00", "2019-06-01T00:00:00", "2019-05-01T00:00:00", "2019-04-01T00:00:00", "2019-03-01T00:00:00", "2019-02-01T00:00:00", "2019-01-01T00:00:00", "2018-12-01T00:00:00", "2018-11-01T00:00:00", "2018-10-01T00:00:00", "2018-09-01T00:00:00", "2018-08-01T00:00:00", "2018-07-01T00:00:00", "2018-06-01T00:00:00", "2018-05-01T00:00:00", "2018-04-01T00:00:00", "2018-03-01T00:00:00", "2018-02-01T00:00:00", "2018-01-01T00:00:00", "2017-12-01T00:00:00", "2017-11-01T00:00:00", "2017-10-01T00:00:00", "2017-09-01T00:00:00", "2017-08-01T00:00:00", "2017-07-01T00:00:00", "2017-06-01T00:00:00", "2017-05-01T00:00:00", "2017-04-01T00:00:00", "2017-03-01T00:00:00", "2017-02-01T00:00:00", "2017-01-01T00:00:00", "2016-12-01T00:00:00", "2016-11-01T00:00:00", "2016-10-01T00:00:00", "2016-09-01T00:00:00", "2016-08-01T00:00:00", "2016-07-01T00:00:00", "2016-06-01T00:00:00", "2016-05-01T00:00:00", "2016-04-01T00:00:00", "2016-03-01T00:00:00", "2016-02-01T00:00:00", "2016-01-01T00:00:00", "2015-12-01T00:00:00", "2015-11-01T00:00:00", "2015-10-01T00:00:00", "2015-09-01T00:00:00", "2015-08-01T00:00:00", "2015-07-01T00:00:00", "2015-06-01T00:00:00", "2015-05-01T00:00:00", "2015-04-01T00:00:00", "2015-03-01T00:00:00", "2015-02-01T00:00:00", "2015-01-01T00:00:00", "2014-12-01T00:00:00", "2014-11-01T00:00:00", "2014-10-01T00:00:00", "2014-09-01T00:00:00", "2014-08-01T00:00:00", "2014-07-01T00:00:00", "2014-06-01T00:00:00", "2014-05-01T00:00:00", "2014-04-01T00:00:00", "2014-03-01T00:00:00", "2014-02-01T00:00:00", "2014-01-01T00:00:00", "2013-12-01T00:00:00", "2013-11-01T00:00:00", "2013-10-01T00:00:00", "2013-09-01T00:00:00", "2013-08-01T00:00:00", "2013-07-01T00:00:00", "2013-06-01T00:00:00", "2013-05-01T00:00:00", "2013-04-01T00:00:00", "2013-03-01T00:00:00", "2013-02-01T00:00:00", "2013-01-01T00:00:00", "2012-12-01T00:00:00", "2012-11-01T00:00:00", "2012-10-01T00:00:00", "2012-09-01T00:00:00", "2012-08-01T00:00:00", "2012-07-01T00:00:00", "2012-06-01T00:00:00", "2012-05-01T00:00:00", "2012-04-01T00:00:00", "2012-03-01T00:00:00", "2012-02-01T00:00:00", "2012-01-01T00:00:00", "2011-12-01T00:00:00", "2011-11-01T00:00:00", "2011-10-01T00:00:00", "2011-09-01T00:00:00", "2011-08-01T00:00:00", "2011-07-01T00:00:00", "2011-06-01T00:00:00", "2011-05-01T00:00:00", "2011-04-01T00:00:00", "2011-03-01T00:00:00", "2011-02-01T00:00:00", "2011-01-01T00:00:00", "2010-12-01T00:00:00", "2010-11-01T00:00:00", "2010-10-01T00:00:00", "2010-09-01T00:00:00", "2010-08-01T00:00:00", "2010-07-01T00:00:00", "2010-06-01T00:00:00", "2010-05-01T00:00:00", "2010-04-01T00:00:00", "2010-03-01T00:00:00", "2010-02-01T00:00:00", "2010-01-01T00:00:00", "2009-12-01T00:00:00", "2009-11-01T00:00:00", "2009-10-01T00:00:00", "2009-09-01T00:00:00", "2009-08-01T00:00:00", "2009-07-01T00:00:00", "2009-06-01T00:00:00", "2009-05-01T00:00:00", "2009-04-01T00:00:00", "2009-03-01T00:00:00", "2009-02-01T00:00:00", "2009-01-01T00:00:00", "2008-12-01T00:00:00", "2008-11-01T00:00:00", "2008-10-01T00:00:00", "2008-09-01T00:00:00", "2008-08-01T00:00:00", "2008-07-01T00:00:00", "2008-06-01T00:00:00", "2008-05-01T00:00:00", "2008-04-01T00:00:00", "2008-03-01T00:00:00", "2008-02-01T00:00:00", "2008-01-01T00:00:00", "2007-12-01T00:00:00", "2007-11-01T00:00:00", "2007-10-01T00:00:00", "2007-09-01T00:00:00", "2007-08-01T00:00:00", "2007-07-01T00:00:00", "2007-06-01T00:00:00", "2007-05-01T00:00:00", "2007-04-01T00:00:00", "2007-03-01T00:00:00", "2007-02-01T00:00:00", "2007-01-01T00:00:00", "2006-12-01T00:00:00", "2006-11-01T00:00:00", "2006-10-01T00:00:00", "2006-09-01T00:00:00", "2006-08-01T00:00:00", "2006-07-01T00:00:00", "2006-06-01T00:00:00", "2006-05-01T00:00:00", "2006-04-01T00:00:00", "2006-03-01T00:00:00", "2006-02-01T00:00:00", "2006-01-01T00:00:00", "2005-12-01T00:00:00", "2005-11-01T00:00:00", "2005-10-01T00:00:00", "2005-09-01T00:00:00", "2005-08-01T00:00:00", "2005-07-01T00:00:00", "2005-06-01T00:00:00", "2005-05-01T00:00:00", "2005-04-01T00:00:00", "2005-03-01T00:00:00", "2005-02-01T00:00:00", "2005-01-01T00:00:00", "2004-12-01T00:00:00", "2004-11-01T00:00:00", "2004-10-01T00:00:00", "2004-09-01T00:00:00", "2004-08-01T00:00:00", "2004-07-01T00:00:00", "2004-06-01T00:00:00", "2004-05-01T00:00:00", "2004-04-01T00:00:00", "2004-03-01T00:00:00", "2004-02-01T00:00:00", "2004-01-01T00:00:00", "2003-12-01T00:00:00", "2003-11-01T00:00:00", "2003-10-01T00:00:00", "2003-09-01T00:00:00", "2003-08-01T00:00:00", "2003-07-01T00:00:00", "2003-06-01T00:00:00", "2003-05-01T00:00:00", "2003-04-01T00:00:00", "2003-03-01T00:00:00", "2003-02-01T00:00:00", "2003-01-01T00:00:00", "2002-12-01T00:00:00", "2002-11-01T00:00:00", "2002-10-01T00:00:00", "2002-09-01T00:00:00", "2002-08-01T00:00:00", "2002-07-01T00:00:00", "2002-06-01T00:00:00", "2002-05-01T00:00:00", "2002-04-01T00:00:00", "2002-03-01T00:00:00", "2002-02-01T00:00:00", "2002-01-01T00:00:00", "2001-12-01T00:00:00", "2001-11-01T00:00:00", "2001-10-01T00:00:00", "2001-09-01T00:00:00", "2001-08-01T00:00:00", "2001-07-01T00:00:00", "2001-06-01T00:00:00", "2001-05-01T00:00:00", "2001-04-01T00:00:00" ], "xaxis": "x", "y": [ 3910.51, 3883.43, 3793.75, 3695.31, 3548.99, 3418.7, 3365.52, 3391.71, 3207.62, 3104.66, 2919.61, 2761.98, 2652.39, 3277.31, 3278.2, 3176.75, 3104.9, 2977.68, 2982.16, 2897.5, 2996.11, 2890.17, 2854.71, 2903.8, 2803.98, 2754.86, 2607.39, 2567.31, 2723.23, 2785.46, 2901.5, 2857.82, 2793.64, 2754.35, 2701.49, 2653.63, 2702.77, 2705.16, 2789.8, 2664.34, 2593.61, 2557, 2492.84, 2456.22, 2454.1, 2433.99, 2395.35, 2359.31, 2366.82, 2329.91, 2275.12, 2246.63, 2164.99, 2143.02, 2157.69, 2170.95, 2148.9, 2083.89, 2065.55, 2075.54, 2021.95, 1904.42, 1918.6, 2054.08, 2080.62, 2024.81, 1944.41, 2039.87, 2094.14, 2099.29, 2111.94, 2094.86, 2079.99, 2082.2, 2028.18, 2054.27, 2044.57, 1937.27, 1993.23, 1961.53, 1973.1, 1947.09, 1889.77, 1864.26, 1863.52, 1817.04, 1822.36, 1807.78, 1783.54, 1720.03, 1687.17, 1670.09, 1668.68, 1618.77, 1639.84, 1570.7, 1550.83, 1512.31, 1480.4, 1422.29, 1394.51, 1437.82, 1443.42, 1403.45, 1359.78, 1323.48, 1341.27, 1386.43, 1389.24, 1352.49, 1300.58, 1243.32, 1226.42, 1207.22, 1173.88, 1185.31, 1325.19, 1287.29, 1338.31, 1331.51, 1304.49, 1321.12, 1282.62, 1241.53, 1198.89, 1171.58, 1122.08, 1087.28, 1079.8, 1083.36, 1125.06, 1197.32, 1152.05, 1089.16, 1123.58, 1110.38, 1088.07, 1067.66, 1044.55, 1009.73, 935.82, 926.12, 902.41, 848.15, 757.13, 805.23, 865.58, 877.56, 883.04, 968.8, 1216.95, 1281.47, 1257.33, 1341.25, 1403.22, 1370.47, 1316.94, 1354.87, 1378.76, 1479.22, 1463.39, 1539.66, 1497.12, 1454.62, 1520.71, 1514.19, 1511.14, 1463.64, 1406.95, 1444.8, 1424.16, 1416.42, 1388.64, 1363.38, 1317.74, 1287.15, 1260.24, 1253.17, 1290.01, 1302.17, 1293.74, 1276.65, 1278.73, 1262.07, 1237.37, 1191.96, 1225.92, 1224.27, 1222.24, 1202.25, 1178.28, 1164.43, 1194.9, 1199.63, 1181.41, 1199.21, 1168.94, 1117.21, 1117.66, 1088.94, 1105.85, 1132.76, 1102.78, 1133.36, 1123.98, 1143.36, 1132.52, 1080.64, 1049.9, 1038.73, 1019.44, 989.53, 992.54, 988, 935.96, 890.03, 846.63, 837.03, 895.84, 899.18, 909.93, 854.63, 867.81, 912.55, 903.59, 1014.02, 1079.25, 1111.93, 1153.79, 1100.67, 1140.21, 1144.93, 1129.68, 1076.59, 1044.64, 1178.5, 1204.45, 1238.71, 1270.37, 1189.84 ], "yaxis": "y" } ], "layout": { "legend": { "title": { "text": "variable" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Date" } }, "yaxis": { "anchor": "x", "domain": [ 0, 1 ], "title": { "text": "value" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "last_months=240\n", "df_per = pd.melt(df.head(last_months), id_vars='Date', value_vars=['Price'])\n", "px.line(df_per, x='Date', y='value', color='variable')" ] }, { "cell_type": "code", "execution_count": 50, "id": "18f66901", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2020-02-0130.733277.312020-02-013277.312652.392761.982919.613104.663207.623391.713278.20-0.0002712652.390.190681
2020-01-0130.993278.202020-01-013278.203277.312652.392761.982919.613104.663207.623176.750.0319352652.390.190900
2019-12-0130.333176.752019-12-013176.753278.203277.312652.392761.982919.613104.663104.900.0231412652.390.165062
2008-10-0116.39968.802008-10-01968.80883.04877.56865.58805.23757.13848.151216.95-0.203911757.130.218487
2008-09-0120.361216.952008-09-011216.95968.80883.04877.56865.58805.23757.131281.47-0.050348757.130.377846
2008-08-0121.401281.472008-08-011281.471216.95968.80883.04877.56865.58805.231257.330.019199805.230.371636
2008-07-0120.911257.332008-07-011257.331281.471216.95968.80883.04877.56865.581341.25-0.062568865.580.311573
2008-06-0122.421341.252008-06-011341.251257.331281.471216.95968.80883.04877.561403.22-0.044163877.560.345715
2008-05-0123.701403.222008-05-011403.221341.251257.331281.471216.95968.80883.041370.470.023897883.040.370705
2008-04-0123.361370.472008-04-011370.471403.221341.251257.331281.471216.95968.801316.940.040647968.800.293089
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2020-02-01 30.73 3277.31 2020-02-01 3277.31 2652.39 2761.98 2919.61 \n", "2020-01-01 30.99 3278.20 2020-01-01 3278.20 3277.31 2652.39 2761.98 \n", "2019-12-01 30.33 3176.75 2019-12-01 3176.75 3278.20 3277.31 2652.39 \n", "2008-10-01 16.39 968.80 2008-10-01 968.80 883.04 877.56 865.58 \n", "2008-09-01 20.36 1216.95 2008-09-01 1216.95 968.80 883.04 877.56 \n", "2008-08-01 21.40 1281.47 2008-08-01 1281.47 1216.95 968.80 883.04 \n", "2008-07-01 20.91 1257.33 2008-07-01 1257.33 1281.47 1216.95 968.80 \n", "2008-06-01 22.42 1341.25 2008-06-01 1341.25 1257.33 1281.47 1216.95 \n", "2008-05-01 23.70 1403.22 2008-05-01 1403.22 1341.25 1257.33 1281.47 \n", "2008-04-01 23.36 1370.47 2008-04-01 1370.47 1403.22 1341.25 1257.33 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2020-02-01 3104.66 3207.62 3391.71 3278.20 -0.000271 2652.39 \n", "2020-01-01 2919.61 3104.66 3207.62 3176.75 0.031935 2652.39 \n", "2019-12-01 2761.98 2919.61 3104.66 3104.90 0.023141 2652.39 \n", "2008-10-01 805.23 757.13 848.15 1216.95 -0.203911 757.13 \n", "2008-09-01 865.58 805.23 757.13 1281.47 -0.050348 757.13 \n", "2008-08-01 877.56 865.58 805.23 1257.33 0.019199 805.23 \n", "2008-07-01 883.04 877.56 865.58 1341.25 -0.062568 865.58 \n", "2008-06-01 968.80 883.04 877.56 1403.22 -0.044163 877.56 \n", "2008-05-01 1216.95 968.80 883.04 1370.47 0.023897 883.04 \n", "2008-04-01 1281.47 1216.95 968.80 1316.94 0.040647 968.80 \n", "\n", " Price_Corr_6M \n", "Date \n", "2020-02-01 0.190681 \n", "2020-01-01 0.190900 \n", "2019-12-01 0.165062 \n", "2008-10-01 0.218487 \n", "2008-09-01 0.377846 \n", "2008-08-01 0.371636 \n", "2008-07-01 0.311573 \n", "2008-06-01 0.345715 \n", "2008-05-01 0.370705 \n", "2008-04-01 0.293089 " ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# min_correction=0.15\n", "min_correction=0.15 # take a look at big corrections\n", "df[df[col_y]>min_correction].head(10)" ] }, { "cell_type": "code", "execution_count": 51, "id": "e0cc41cd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "count 147.000000\n", "mean 0.229457\n", "std 0.072282\n", "min 0.150127\n", "25% 0.177002\n", "50% 0.205638\n", "75% 0.257215\n", "max 0.469682\n", "Name: Price_Corr_6M, dtype: float64" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[df[col_y]>min_correction][col_y].describe()" ] }, { "cell_type": "code", "execution_count": 52, "id": "8ecfcda4", "metadata": {}, "outputs": [], "source": [ "# plot PER & Price_correction" ] }, { "cell_type": "code", "execution_count": 53, "id": "faa3e844", "metadata": {}, "outputs": [], "source": [ "min_correction=0.05 # force learning above ?\n", "# min_correction=0\n", "if min_correction!=0:\n", " df[col_y] = df[col_y].apply(lambda x: 0 if xDate=%{x}
value=%{y}", "legendgroup": "PER", "line": { "color": "#636efa", "dash": "solid" }, "mode": "lines", "name": "PER", "showlegend": true, "type": "scattergl", "x": [ "2021-03-01T00:00:00", "2021-02-01T00:00:00", "2021-01-01T00:00:00", "2020-12-01T00:00:00", "2020-11-01T00:00:00", "2020-10-01T00:00:00", "2020-09-01T00:00:00", "2020-08-01T00:00:00", "2020-07-01T00:00:00", "2020-06-01T00:00:00", "2020-05-01T00:00:00", "2020-04-01T00:00:00", "2020-03-01T00:00:00", "2020-02-01T00:00:00", "2020-01-01T00:00:00", "2019-12-01T00:00:00", "2019-11-01T00:00:00", "2019-10-01T00:00:00", "2019-09-01T00:00:00", "2019-08-01T00:00:00", "2019-07-01T00:00:00", "2019-06-01T00:00:00", "2019-05-01T00:00:00", "2019-04-01T00:00:00", "2019-03-01T00:00:00", "2019-02-01T00:00:00", "2019-01-01T00:00:00", "2018-12-01T00:00:00", "2018-11-01T00:00:00", "2018-10-01T00:00:00", "2018-09-01T00:00:00", "2018-08-01T00:00:00", "2018-07-01T00:00:00", "2018-06-01T00:00:00", "2018-05-01T00:00:00", "2018-04-01T00:00:00", "2018-03-01T00:00:00", "2018-02-01T00:00:00", "2018-01-01T00:00:00", "2017-12-01T00:00:00", "2017-11-01T00:00:00", "2017-10-01T00:00:00", "2017-09-01T00:00:00", "2017-08-01T00:00:00", "2017-07-01T00:00:00", "2017-06-01T00:00:00", "2017-05-01T00:00:00", "2017-04-01T00:00:00", "2017-03-01T00:00:00", "2017-02-01T00:00:00", "2017-01-01T00:00:00", "2016-12-01T00:00:00", "2016-11-01T00:00:00", "2016-10-01T00:00:00", "2016-09-01T00:00:00", "2016-08-01T00:00:00", "2016-07-01T00:00:00", "2016-06-01T00:00:00", "2016-05-01T00:00:00", "2016-04-01T00:00:00", "2016-03-01T00:00:00", "2016-02-01T00:00:00", "2016-01-01T00:00:00", "2015-12-01T00:00:00", "2015-11-01T00:00:00", "2015-10-01T00:00:00", "2015-09-01T00:00:00", "2015-08-01T00:00:00", "2015-07-01T00:00:00", "2015-06-01T00:00:00", "2015-05-01T00:00:00", "2015-04-01T00:00:00", "2015-03-01T00:00:00", "2015-02-01T00:00:00", "2015-01-01T00:00:00", "2014-12-01T00:00:00", "2014-11-01T00:00:00", "2014-10-01T00:00:00", "2014-09-01T00:00:00", "2014-08-01T00:00:00", "2014-07-01T00:00:00", "2014-06-01T00:00:00", "2014-05-01T00:00:00", "2014-04-01T00:00:00", "2014-03-01T00:00:00", "2014-02-01T00:00:00", "2014-01-01T00:00:00", "2013-12-01T00:00:00", "2013-11-01T00:00:00", "2013-10-01T00:00:00", "2013-09-01T00:00:00", "2013-08-01T00:00:00", "2013-07-01T00:00:00", "2013-06-01T00:00:00", "2013-05-01T00:00:00", "2013-04-01T00:00:00", "2013-03-01T00:00:00", "2013-02-01T00:00:00", "2013-01-01T00:00:00", "2012-12-01T00:00:00", "2012-11-01T00:00:00", "2012-10-01T00:00:00", "2012-09-01T00:00:00", "2012-08-01T00:00:00", "2012-07-01T00:00:00", "2012-06-01T00:00:00", "2012-05-01T00:00:00", "2012-04-01T00:00:00", "2012-03-01T00:00:00", "2012-02-01T00:00:00", "2012-01-01T00:00:00", "2011-12-01T00:00:00", "2011-11-01T00:00:00", "2011-10-01T00:00:00", "2011-09-01T00:00:00", "2011-08-01T00:00:00", "2011-07-01T00:00:00", "2011-06-01T00:00:00", "2011-05-01T00:00:00", "2011-04-01T00:00:00", "2011-03-01T00:00:00", "2011-02-01T00:00:00", "2011-01-01T00:00:00", "2010-12-01T00:00:00", "2010-11-01T00:00:00", "2010-10-01T00:00:00", "2010-09-01T00:00:00", "2010-08-01T00:00:00", "2010-07-01T00:00:00", "2010-06-01T00:00:00", "2010-05-01T00:00:00", "2010-04-01T00:00:00", "2010-03-01T00:00:00", "2010-02-01T00:00:00", "2010-01-01T00:00:00", "2009-12-01T00:00:00", "2009-11-01T00:00:00", "2009-10-01T00:00:00", "2009-09-01T00:00:00", "2009-08-01T00:00:00", "2009-07-01T00:00:00", "2009-06-01T00:00:00", "2009-05-01T00:00:00", "2009-04-01T00:00:00", "2009-03-01T00:00:00", "2009-02-01T00:00:00", "2009-01-01T00:00:00", "2008-12-01T00:00:00", "2008-11-01T00:00:00", "2008-10-01T00:00:00", "2008-09-01T00:00:00", "2008-08-01T00:00:00", "2008-07-01T00:00:00", "2008-06-01T00:00:00", "2008-05-01T00:00:00", "2008-04-01T00:00:00", "2008-03-01T00:00:00", "2008-02-01T00:00:00", "2008-01-01T00:00:00", "2007-12-01T00:00:00", "2007-11-01T00:00:00", "2007-10-01T00:00:00", "2007-09-01T00:00:00", "2007-08-01T00:00:00", "2007-07-01T00:00:00", "2007-06-01T00:00:00", "2007-05-01T00:00:00", "2007-04-01T00:00:00", "2007-03-01T00:00:00", "2007-02-01T00:00:00", "2007-01-01T00:00:00", "2006-12-01T00:00:00", "2006-11-01T00:00:00", "2006-10-01T00:00:00", "2006-09-01T00:00:00", "2006-08-01T00:00:00", "2006-07-01T00:00:00", "2006-06-01T00:00:00", "2006-05-01T00:00:00", "2006-04-01T00:00:00", "2006-03-01T00:00:00", "2006-02-01T00:00:00", "2006-01-01T00:00:00", "2005-12-01T00:00:00", "2005-11-01T00:00:00", "2005-10-01T00:00:00", "2005-09-01T00:00:00", "2005-08-01T00:00:00", "2005-07-01T00:00:00", "2005-06-01T00:00:00", "2005-05-01T00:00:00", "2005-04-01T00:00:00", "2005-03-01T00:00:00", "2005-02-01T00:00:00", "2005-01-01T00:00:00", "2004-12-01T00:00:00", "2004-11-01T00:00:00", "2004-10-01T00:00:00", "2004-09-01T00:00:00", "2004-08-01T00:00:00", "2004-07-01T00:00:00", "2004-06-01T00:00:00", "2004-05-01T00:00:00", "2004-04-01T00:00:00", "2004-03-01T00:00:00", "2004-02-01T00:00:00", "2004-01-01T00:00:00", "2003-12-01T00:00:00", "2003-11-01T00:00:00", "2003-10-01T00:00:00", "2003-09-01T00:00:00", "2003-08-01T00:00:00", "2003-07-01T00:00:00", "2003-06-01T00:00:00", "2003-05-01T00:00:00", "2003-04-01T00:00:00", "2003-03-01T00:00:00", "2003-02-01T00:00:00", "2003-01-01T00:00:00", "2002-12-01T00:00:00", "2002-11-01T00:00:00", "2002-10-01T00:00:00", "2002-09-01T00:00:00", "2002-08-01T00:00:00", "2002-07-01T00:00:00", "2002-06-01T00:00:00", "2002-05-01T00:00:00", "2002-04-01T00:00:00", "2002-03-01T00:00:00", "2002-02-01T00:00:00", "2002-01-01T00:00:00", "2001-12-01T00:00:00", "2001-11-01T00:00:00", "2001-10-01T00:00:00", "2001-09-01T00:00:00", "2001-08-01T00:00:00", "2001-07-01T00:00:00", "2001-06-01T00:00:00", "2001-05-01T00:00:00", "2001-04-01T00:00:00", "2001-03-01T00:00:00", "2001-02-01T00:00:00", "2001-01-01T00:00:00", "2000-12-01T00:00:00", "2000-11-01T00:00:00", "2000-10-01T00:00:00", "2000-09-01T00:00:00", "2000-08-01T00:00:00", "2000-07-01T00:00:00", "2000-06-01T00:00:00", "2000-05-01T00:00:00", "2000-04-01T00:00:00", "2000-03-01T00:00:00", "2000-02-01T00:00:00", "2000-01-01T00:00:00", "1999-12-01T00:00:00", "1999-11-01T00:00:00", "1999-10-01T00:00:00", "1999-09-01T00:00:00", "1999-08-01T00:00:00", "1999-07-01T00:00:00", "1999-06-01T00:00:00", "1999-05-01T00:00:00", "1999-04-01T00:00:00", "1999-03-01T00:00:00", "1999-02-01T00:00:00", "1999-01-01T00:00:00", "1998-12-01T00:00:00", "1998-11-01T00:00:00", "1998-10-01T00:00:00", "1998-09-01T00:00:00", "1998-08-01T00:00:00", "1998-07-01T00:00:00", "1998-06-01T00:00:00", "1998-05-01T00:00:00", "1998-04-01T00:00:00", "1998-03-01T00:00:00", "1998-02-01T00:00:00", "1998-01-01T00:00:00", "1997-12-01T00:00:00", "1997-11-01T00:00:00", "1997-10-01T00:00:00", "1997-09-01T00:00:00", "1997-08-01T00:00:00", "1997-07-01T00:00:00", "1997-06-01T00:00:00", "1997-05-01T00:00:00", "1997-04-01T00:00:00", "1997-03-01T00:00:00", "1997-02-01T00:00:00", "1997-01-01T00:00:00", "1996-12-01T00:00:00", "1996-11-01T00:00:00", "1996-10-01T00:00:00", "1996-09-01T00:00:00", "1996-08-01T00:00:00", "1996-07-01T00:00:00", "1996-06-01T00:00:00", "1996-05-01T00:00:00", "1996-04-01T00:00:00", "1996-03-01T00:00:00", "1996-02-01T00:00:00", "1996-01-01T00:00:00", "1995-12-01T00:00:00", "1995-11-01T00:00:00", "1995-10-01T00:00:00", "1995-09-01T00:00:00", "1995-08-01T00:00:00", "1995-07-01T00:00:00", "1995-06-01T00:00:00", "1995-05-01T00:00:00", "1995-04-01T00:00:00", "1995-03-01T00:00:00", "1995-02-01T00:00:00", "1995-01-01T00:00:00", "1994-12-01T00:00:00", "1994-11-01T00:00:00", "1994-10-01T00:00:00", "1994-09-01T00:00:00", "1994-08-01T00:00:00", "1994-07-01T00:00:00", "1994-06-01T00:00:00", "1994-05-01T00:00:00", "1994-04-01T00:00:00", "1994-03-01T00:00:00", "1994-02-01T00:00:00", "1994-01-01T00:00:00", "1993-12-01T00:00:00", "1993-11-01T00:00:00", "1993-10-01T00:00:00", "1993-09-01T00:00:00", "1993-08-01T00:00:00", "1993-07-01T00:00:00", "1993-06-01T00:00:00", "1993-05-01T00:00:00", "1993-04-01T00:00:00", "1993-03-01T00:00:00", "1993-02-01T00:00:00", "1993-01-01T00:00:00", "1992-12-01T00:00:00", "1992-11-01T00:00:00", "1992-10-01T00:00:00", "1992-09-01T00:00:00", "1992-08-01T00:00:00", "1992-07-01T00:00:00", "1992-06-01T00:00:00", "1992-05-01T00:00:00", "1992-04-01T00:00:00", "1992-03-01T00:00:00", "1992-02-01T00:00:00", "1992-01-01T00:00:00", "1991-12-01T00:00:00", "1991-11-01T00:00:00", "1991-10-01T00:00:00", "1991-09-01T00:00:00", "1991-08-01T00:00:00", "1991-07-01T00:00:00", "1991-06-01T00:00:00", "1991-05-01T00:00:00", "1991-04-01T00:00:00", "1991-03-01T00:00:00", "1991-02-01T00:00:00", "1991-01-01T00:00:00", "1990-12-01T00:00:00", "1990-11-01T00:00:00", "1990-10-01T00:00:00", "1990-09-01T00:00:00", "1990-08-01T00:00:00", "1990-07-01T00:00:00", "1990-06-01T00:00:00", "1990-05-01T00:00:00", "1990-04-01T00:00:00", "1990-03-01T00:00:00", "1990-02-01T00:00:00", "1990-01-01T00:00:00", "1989-12-01T00:00:00", "1989-11-01T00:00:00", "1989-10-01T00:00:00", "1989-09-01T00:00:00", "1989-08-01T00:00:00", "1989-07-01T00:00:00", "1989-06-01T00:00:00", "1989-05-01T00:00:00", "1989-04-01T00:00:00", "1989-03-01T00:00:00", "1989-02-01T00:00:00", "1989-01-01T00:00:00", "1988-12-01T00:00:00", "1988-11-01T00:00:00", "1988-10-01T00:00:00", "1988-09-01T00:00:00", "1988-08-01T00:00:00", "1988-07-01T00:00:00", "1988-06-01T00:00:00", "1988-05-01T00:00:00", "1988-04-01T00:00:00", "1988-03-01T00:00:00", "1988-02-01T00:00:00", "1988-01-01T00:00:00", "1987-12-01T00:00:00", "1987-11-01T00:00:00", "1987-10-01T00:00:00", "1987-09-01T00:00:00", "1987-08-01T00:00:00", "1987-07-01T00:00:00", "1987-06-01T00:00:00", "1987-05-01T00:00:00", "1987-04-01T00:00:00", "1987-03-01T00:00:00", "1987-02-01T00:00:00", "1987-01-01T00:00:00", "1986-12-01T00:00:00", "1986-11-01T00:00:00", "1986-10-01T00:00:00", "1986-09-01T00:00:00", "1986-08-01T00:00:00", "1986-07-01T00:00:00", "1986-06-01T00:00:00", "1986-05-01T00:00:00", "1986-04-01T00:00:00", "1986-03-01T00:00:00", "1986-02-01T00:00:00", "1986-01-01T00:00:00", "1985-12-01T00:00:00", "1985-11-01T00:00:00", "1985-10-01T00:00:00", "1985-09-01T00:00:00", "1985-08-01T00:00:00", "1985-07-01T00:00:00", "1985-06-01T00:00:00", "1985-05-01T00:00:00", "1985-04-01T00:00:00", "1985-03-01T00:00:00", "1985-02-01T00:00:00", "1985-01-01T00:00:00", "1984-12-01T00:00:00", "1984-11-01T00:00:00", "1984-10-01T00:00:00", "1984-09-01T00:00:00", "1984-08-01T00:00:00", "1984-07-01T00:00:00", "1984-06-01T00:00:00", "1984-05-01T00:00:00", "1984-04-01T00:00:00", "1984-03-01T00:00:00", "1984-02-01T00:00:00", "1984-01-01T00:00:00", "1983-12-01T00:00:00", "1983-11-01T00:00:00", "1983-10-01T00:00:00", "1983-09-01T00:00:00", "1983-08-01T00:00:00", "1983-07-01T00:00:00", "1983-06-01T00:00:00", "1983-05-01T00:00:00", "1983-04-01T00:00:00", "1983-03-01T00:00:00", "1983-02-01T00:00:00", "1983-01-01T00:00:00", "1982-12-01T00:00:00", "1982-11-01T00:00:00", "1982-10-01T00:00:00", "1982-09-01T00:00:00", "1982-08-01T00:00:00", "1982-07-01T00:00:00", "1982-06-01T00:00:00", "1982-05-01T00:00:00", "1982-04-01T00:00:00", "1982-03-01T00:00:00", "1982-02-01T00:00:00", "1982-01-01T00:00:00", "1981-12-01T00:00:00", "1981-11-01T00:00:00", "1981-10-01T00:00:00", "1981-09-01T00:00:00", "1981-08-01T00:00:00", "1981-07-01T00:00:00", "1981-06-01T00:00:00", "1981-05-01T00:00:00", "1981-04-01T00:00:00", "1981-03-01T00:00:00", "1981-02-01T00:00:00", "1981-01-01T00:00:00", "1980-12-01T00:00:00", "1980-11-01T00:00:00", "1980-10-01T00:00:00", "1980-09-01T00:00:00", "1980-08-01T00:00:00", "1980-07-01T00:00:00", "1980-06-01T00:00:00", "1980-05-01T00:00:00", "1980-04-01T00:00:00", "1980-03-01T00:00:00", "1980-02-01T00:00:00", "1980-01-01T00:00:00", "1979-12-01T00:00:00", "1979-11-01T00:00:00", "1979-10-01T00:00:00", "1979-09-01T00:00:00", "1979-08-01T00:00:00", "1979-07-01T00:00:00", "1979-06-01T00:00:00", "1979-05-01T00:00:00", "1979-04-01T00:00:00", "1979-03-01T00:00:00", "1979-02-01T00:00:00", "1979-01-01T00:00:00", "1978-12-01T00:00:00", "1978-11-01T00:00:00", "1978-10-01T00:00:00", "1978-09-01T00:00:00", "1978-08-01T00:00:00", "1978-07-01T00:00:00", "1978-06-01T00:00:00", "1978-05-01T00:00:00", "1978-04-01T00:00:00", "1978-03-01T00:00:00", "1978-02-01T00:00:00", "1978-01-01T00:00:00", "1977-12-01T00:00:00", "1977-11-01T00:00:00", "1977-10-01T00:00:00", "1977-09-01T00:00:00", "1977-08-01T00:00:00", "1977-07-01T00:00:00", "1977-06-01T00:00:00", "1977-05-01T00:00:00", "1977-04-01T00:00:00", "1977-03-01T00:00:00", "1977-02-01T00:00:00", "1977-01-01T00:00:00", "1976-12-01T00:00:00", "1976-11-01T00:00:00", "1976-10-01T00:00:00", "1976-09-01T00:00:00", "1976-08-01T00:00:00", "1976-07-01T00:00:00", "1976-06-01T00:00:00", "1976-05-01T00:00:00", "1976-04-01T00:00:00", "1976-03-01T00:00:00", "1976-02-01T00:00:00", "1976-01-01T00:00:00", "1975-12-01T00:00:00", "1975-11-01T00:00:00", "1975-10-01T00:00:00", "1975-09-01T00:00:00", "1975-08-01T00:00:00", "1975-07-01T00:00:00", "1975-06-01T00:00:00", "1975-05-01T00:00:00", "1975-04-01T00:00:00", "1975-03-01T00:00:00", "1975-02-01T00:00:00", "1975-01-01T00:00:00", "1974-12-01T00:00:00", "1974-11-01T00:00:00", "1974-10-01T00:00:00", "1974-09-01T00:00:00", "1974-08-01T00:00:00", "1974-07-01T00:00:00", "1974-06-01T00:00:00", "1974-05-01T00:00:00", "1974-04-01T00:00:00", "1974-03-01T00:00:00", "1974-02-01T00:00:00", "1974-01-01T00:00:00", "1973-12-01T00:00:00", "1973-11-01T00:00:00", "1973-10-01T00:00:00", "1973-09-01T00:00:00", "1973-08-01T00:00:00", "1973-07-01T00:00:00", "1973-06-01T00:00:00", "1973-05-01T00:00:00", "1973-04-01T00:00:00", "1973-03-01T00:00:00", "1973-02-01T00:00:00", "1973-01-01T00:00:00", "1972-12-01T00:00:00", "1972-11-01T00:00:00", "1972-10-01T00:00:00", "1972-09-01T00:00:00", "1972-08-01T00:00:00", "1972-07-01T00:00:00", "1972-06-01T00:00:00", "1972-05-01T00:00:00", "1972-04-01T00:00:00", "1972-03-01T00:00:00", "1972-02-01T00:00:00", "1972-01-01T00:00:00", "1971-12-01T00:00:00", "1971-11-01T00:00:00", "1971-10-01T00:00:00", "1971-09-01T00:00:00", "1971-08-01T00:00:00", "1971-07-01T00:00:00", "1971-06-01T00:00:00", "1971-05-01T00:00:00", "1971-04-01T00:00:00", "1971-03-01T00:00:00", "1971-02-01T00:00:00", "1971-01-01T00:00:00", "1970-12-01T00:00:00", "1970-11-01T00:00:00", "1970-10-01T00:00:00", "1970-09-01T00:00:00", "1970-08-01T00:00:00", "1970-07-01T00:00:00", "1970-06-01T00:00:00", "1970-05-01T00:00:00", "1970-04-01T00:00:00", "1970-03-01T00:00:00", "1970-02-01T00:00:00", "1970-01-01T00:00:00", "1969-12-01T00:00:00", "1969-11-01T00:00:00", "1969-10-01T00:00:00", "1969-09-01T00:00:00", "1969-08-01T00:00:00", "1969-07-01T00:00:00", "1969-06-01T00:00:00", "1969-05-01T00:00:00", "1969-04-01T00:00:00", "1969-03-01T00:00:00", "1969-02-01T00:00:00", "1969-01-01T00:00:00", "1968-12-01T00:00:00", "1968-11-01T00:00:00", "1968-10-01T00:00:00", "1968-09-01T00:00:00", "1968-08-01T00:00:00", "1968-07-01T00:00:00", "1968-06-01T00:00:00", "1968-05-01T00:00:00", "1968-04-01T00:00:00", "1968-03-01T00:00:00", "1968-02-01T00:00:00", "1968-01-01T00:00:00", "1967-12-01T00:00:00", "1967-11-01T00:00:00", "1967-10-01T00:00:00", "1967-09-01T00:00:00", "1967-08-01T00:00:00", "1967-07-01T00:00:00", "1967-06-01T00:00:00", "1967-05-01T00:00:00", "1967-04-01T00:00:00", "1967-03-01T00:00:00", "1967-02-01T00:00:00", "1967-01-01T00:00:00", "1966-12-01T00:00:00", "1966-11-01T00:00:00", "1966-10-01T00:00:00", "1966-09-01T00:00:00", "1966-08-01T00:00:00", "1966-07-01T00:00:00", "1966-06-01T00:00:00", "1966-05-01T00:00:00", "1966-04-01T00:00:00", "1966-03-01T00:00:00", "1966-02-01T00:00:00", "1966-01-01T00:00:00", "1965-12-01T00:00:00", "1965-11-01T00:00:00", "1965-10-01T00:00:00", "1965-09-01T00:00:00", "1965-08-01T00:00:00", "1965-07-01T00:00:00", "1965-06-01T00:00:00", "1965-05-01T00:00:00", "1965-04-01T00:00:00", "1965-03-01T00:00:00", "1965-02-01T00:00:00", "1965-01-01T00:00:00", "1964-12-01T00:00:00", "1964-11-01T00:00:00", "1964-10-01T00:00:00", "1964-09-01T00:00:00", "1964-08-01T00:00:00", "1964-07-01T00:00:00", "1964-06-01T00:00:00", "1964-05-01T00:00:00", "1964-04-01T00:00:00", "1964-03-01T00:00:00", "1964-02-01T00:00:00", "1964-01-01T00:00:00", "1963-12-01T00:00:00", "1963-11-01T00:00:00", "1963-10-01T00:00:00", "1963-09-01T00:00:00", "1963-08-01T00:00:00", "1963-07-01T00:00:00", "1963-06-01T00:00:00", "1963-05-01T00:00:00", "1963-04-01T00:00:00", "1963-03-01T00:00:00", "1963-02-01T00:00:00", "1963-01-01T00:00:00", "1962-12-01T00:00:00", "1962-11-01T00:00:00", "1962-10-01T00:00:00", "1962-09-01T00:00:00", "1962-08-01T00:00:00", "1962-07-01T00:00:00", "1962-06-01T00:00:00", "1962-05-01T00:00:00", "1962-04-01T00:00:00", "1962-03-01T00:00:00", "1962-02-01T00:00:00", "1962-01-01T00:00:00", "1961-12-01T00:00:00", "1961-11-01T00:00:00", "1961-10-01T00:00:00", "1961-09-01T00:00:00", "1961-08-01T00:00:00", "1961-07-01T00:00:00", "1961-06-01T00:00:00", "1961-05-01T00:00:00", "1961-04-01T00:00:00", "1961-03-01T00:00:00", "1961-02-01T00:00:00", "1961-01-01T00:00:00", "1960-12-01T00:00:00", "1960-11-01T00:00:00", "1960-10-01T00:00:00", "1960-09-01T00:00:00", "1960-08-01T00:00:00", "1960-07-01T00:00:00", "1960-06-01T00:00:00", "1960-05-01T00:00:00", "1960-04-01T00:00:00", "1960-03-01T00:00:00", "1960-02-01T00:00:00", "1960-01-01T00:00:00", "1959-12-01T00:00:00", "1959-11-01T00:00:00", "1959-10-01T00:00:00", "1959-09-01T00:00:00", "1959-08-01T00:00:00", "1959-07-01T00:00:00", "1959-06-01T00:00:00", "1959-05-01T00:00:00", "1959-04-01T00:00:00", "1959-03-01T00:00:00", "1959-02-01T00:00:00", "1959-01-01T00:00:00", "1958-12-01T00:00:00", "1958-11-01T00:00:00", "1958-10-01T00:00:00", "1958-09-01T00:00:00", "1958-08-01T00:00:00", "1958-07-01T00:00:00", "1958-06-01T00:00:00", "1958-05-01T00:00:00", "1958-04-01T00:00:00", "1958-03-01T00:00:00", "1958-02-01T00:00:00", "1958-01-01T00:00:00", "1957-12-01T00:00:00", "1957-11-01T00:00:00", "1957-10-01T00:00:00", "1957-09-01T00:00:00", "1957-08-01T00:00:00", "1957-07-01T00:00:00", "1957-06-01T00:00:00", "1957-05-01T00:00:00", "1957-04-01T00:00:00", "1957-03-01T00:00:00", "1957-02-01T00:00:00", "1957-01-01T00:00:00", "1956-12-01T00:00:00", "1956-11-01T00:00:00", "1956-10-01T00:00:00", "1956-09-01T00:00:00", "1956-08-01T00:00:00", "1956-07-01T00:00:00", "1956-06-01T00:00:00", "1956-05-01T00:00:00", "1956-04-01T00:00:00", "1956-03-01T00:00:00", "1956-02-01T00:00:00", "1956-01-01T00:00:00", "1955-12-01T00:00:00", "1955-11-01T00:00:00", "1955-10-01T00:00:00", "1955-09-01T00:00:00", "1955-08-01T00:00:00", "1955-07-01T00:00:00", "1955-06-01T00:00:00", "1955-05-01T00:00:00", "1955-04-01T00:00:00", "1955-03-01T00:00:00", "1955-02-01T00:00:00", "1955-01-01T00:00:00", "1954-12-01T00:00:00", "1954-11-01T00:00:00", "1954-10-01T00:00:00", "1954-09-01T00:00:00", "1954-08-01T00:00:00", "1954-07-01T00:00:00", "1954-06-01T00:00:00", "1954-05-01T00:00:00", "1954-04-01T00:00:00", "1954-03-01T00:00:00", "1954-02-01T00:00:00", "1954-01-01T00:00:00", "1953-12-01T00:00:00", "1953-11-01T00:00:00", "1953-10-01T00:00:00", "1953-09-01T00:00:00", "1953-08-01T00:00:00", "1953-07-01T00:00:00", "1953-06-01T00:00:00", "1953-05-01T00:00:00", "1953-04-01T00:00:00", "1953-03-01T00:00:00", "1953-02-01T00:00:00", "1953-01-01T00:00:00", "1952-12-01T00:00:00", "1952-11-01T00:00:00", "1952-10-01T00:00:00", "1952-09-01T00:00:00", "1952-08-01T00:00:00", "1952-07-01T00:00:00", "1952-06-01T00:00:00", "1952-05-01T00:00:00", "1952-04-01T00:00:00", "1952-03-01T00:00:00", "1952-02-01T00:00:00", "1952-01-01T00:00:00", "1951-12-01T00:00:00", "1951-11-01T00:00:00", "1951-10-01T00:00:00", "1951-09-01T00:00:00", "1951-08-01T00:00:00", "1951-07-01T00:00:00", "1951-06-01T00:00:00", "1951-05-01T00:00:00", "1951-04-01T00:00:00", "1951-03-01T00:00:00", "1951-02-01T00:00:00", "1951-01-01T00:00:00", "1950-12-01T00:00:00", "1950-11-01T00:00:00", "1950-10-01T00:00:00", "1950-09-01T00:00:00", "1950-08-01T00:00:00", "1950-07-01T00:00:00", "1950-06-01T00:00:00", "1950-05-01T00:00:00", "1950-04-01T00:00:00", "1950-03-01T00:00:00", "1950-02-01T00:00:00", "1950-01-01T00:00:00", "1949-12-01T00:00:00", "1949-11-01T00:00:00", "1949-10-01T00:00:00", "1949-09-01T00:00:00", "1949-08-01T00:00:00", "1949-07-01T00:00:00", "1949-06-01T00:00:00", "1949-05-01T00:00:00", "1949-04-01T00:00:00", "1949-03-01T00:00:00", "1949-02-01T00:00:00", "1949-01-01T00:00:00", "1948-12-01T00:00:00", "1948-11-01T00:00:00", "1948-10-01T00:00:00", "1948-09-01T00:00:00", "1948-08-01T00:00:00", "1948-07-01T00:00:00", "1948-06-01T00:00:00", "1948-05-01T00:00:00", "1948-04-01T00:00:00", "1948-03-01T00:00:00", "1948-02-01T00:00:00", "1948-01-01T00:00:00", "1947-12-01T00:00:00", "1947-11-01T00:00:00", "1947-10-01T00:00:00", "1947-09-01T00:00:00", "1947-08-01T00:00:00", "1947-07-01T00:00:00", "1947-06-01T00:00:00", "1947-05-01T00:00:00", "1947-04-01T00:00:00", "1947-03-01T00:00:00", "1947-02-01T00:00:00", "1947-01-01T00:00:00", "1946-12-01T00:00:00", "1946-11-01T00:00:00", "1946-10-01T00:00:00", "1946-09-01T00:00:00", "1946-08-01T00:00:00", "1946-07-01T00:00:00", "1946-06-01T00:00:00", "1946-05-01T00:00:00", "1946-04-01T00:00:00", "1946-03-01T00:00:00", "1946-02-01T00:00:00", "1946-01-01T00:00:00", "1945-12-01T00:00:00", "1945-11-01T00:00:00", "1945-10-01T00:00:00", "1945-09-01T00:00:00", "1945-08-01T00:00:00", "1945-07-01T00:00:00", "1945-06-01T00:00:00", "1945-05-01T00:00:00", "1945-04-01T00:00:00", "1945-03-01T00:00:00", "1945-02-01T00:00:00", "1945-01-01T00:00:00", "1944-12-01T00:00:00", "1944-11-01T00:00:00", "1944-10-01T00:00:00", "1944-09-01T00:00:00", "1944-08-01T00:00:00", "1944-07-01T00:00:00", "1944-06-01T00:00:00", "1944-05-01T00:00:00", "1944-04-01T00:00:00", "1944-03-01T00:00:00", "1944-02-01T00:00:00", "1944-01-01T00:00:00", "1943-12-01T00:00:00", "1943-11-01T00:00:00", "1943-10-01T00:00:00", "1943-09-01T00:00:00", "1943-08-01T00:00:00", "1943-07-01T00:00:00", "1943-06-01T00:00:00", "1943-05-01T00:00:00", "1943-04-01T00:00:00", "1943-03-01T00:00:00", "1943-02-01T00:00:00", "1943-01-01T00:00:00", "1942-12-01T00:00:00", "1942-11-01T00:00:00", "1942-10-01T00:00:00", "1942-09-01T00:00:00", "1942-08-01T00:00:00", "1942-07-01T00:00:00", "1942-06-01T00:00:00", "1942-05-01T00:00:00", "1942-04-01T00:00:00", "1942-03-01T00:00:00", "1942-02-01T00:00:00", "1942-01-01T00:00:00", "1941-12-01T00:00:00", "1941-11-01T00:00:00", "1941-10-01T00:00:00", "1941-09-01T00:00:00", "1941-08-01T00:00:00", "1941-07-01T00:00:00", "1941-06-01T00:00:00", "1941-05-01T00:00:00", "1941-04-01T00:00:00", "1941-03-01T00:00:00", "1941-02-01T00:00:00", "1941-01-01T00:00:00", "1940-12-01T00:00:00", "1940-11-01T00:00:00", "1940-10-01T00:00:00", "1940-09-01T00:00:00", "1940-08-01T00:00:00", "1940-07-01T00:00:00", "1940-06-01T00:00:00", "1940-05-01T00:00:00", "1940-04-01T00:00:00", "1940-03-01T00:00:00", "1940-02-01T00:00:00", "1940-01-01T00:00:00", "1939-12-01T00:00:00", "1939-11-01T00:00:00", "1939-10-01T00:00:00", "1939-09-01T00:00:00", "1939-08-01T00:00:00", "1939-07-01T00:00:00", "1939-06-01T00:00:00", "1939-05-01T00:00:00", "1939-04-01T00:00:00", "1939-03-01T00:00:00", "1939-02-01T00:00:00", "1939-01-01T00:00:00", "1938-12-01T00:00:00", "1938-11-01T00:00:00", "1938-10-01T00:00:00", "1938-09-01T00:00:00", "1938-08-01T00:00:00", "1938-07-01T00:00:00", "1938-06-01T00:00:00", "1938-05-01T00:00:00", "1938-04-01T00:00:00", "1938-03-01T00:00:00", "1938-02-01T00:00:00", "1938-01-01T00:00:00", "1937-12-01T00:00:00", "1937-11-01T00:00:00", "1937-10-01T00:00:00", "1937-09-01T00:00:00", "1937-08-01T00:00:00", "1937-07-01T00:00:00", "1937-06-01T00:00:00", "1937-05-01T00:00:00", "1937-04-01T00:00:00", "1937-03-01T00:00:00", "1937-02-01T00:00:00", "1937-01-01T00:00:00", "1936-12-01T00:00:00", "1936-11-01T00:00:00", "1936-10-01T00:00:00", "1936-09-01T00:00:00", "1936-08-01T00:00:00", "1936-07-01T00:00:00", "1936-06-01T00:00:00", "1936-05-01T00:00:00", "1936-04-01T00:00:00", "1936-03-01T00:00:00", "1936-02-01T00:00:00", "1936-01-01T00:00:00", "1935-12-01T00:00:00", "1935-11-01T00:00:00", "1935-10-01T00:00:00", "1935-09-01T00:00:00", "1935-08-01T00:00:00", "1935-07-01T00:00:00", "1935-06-01T00:00:00", "1935-05-01T00:00:00", "1935-04-01T00:00:00", "1935-03-01T00:00:00", "1935-02-01T00:00:00", "1935-01-01T00:00:00", "1934-12-01T00:00:00", "1934-11-01T00:00:00", "1934-10-01T00:00:00", "1934-09-01T00:00:00", "1934-08-01T00:00:00", "1934-07-01T00:00:00", "1934-06-01T00:00:00", "1934-05-01T00:00:00", "1934-04-01T00:00:00", "1934-03-01T00:00:00", "1934-02-01T00:00:00", "1934-01-01T00:00:00", "1933-12-01T00:00:00", "1933-11-01T00:00:00", "1933-10-01T00:00:00", "1933-09-01T00:00:00", "1933-08-01T00:00:00", "1933-07-01T00:00:00", "1933-06-01T00:00:00", "1933-05-01T00:00:00", "1933-04-01T00:00:00", "1933-03-01T00:00:00", "1933-02-01T00:00:00", "1933-01-01T00:00:00", "1932-12-01T00:00:00", "1932-11-01T00:00:00", "1932-10-01T00:00:00", "1932-09-01T00:00:00", "1932-08-01T00:00:00", "1932-07-01T00:00:00", "1932-06-01T00:00:00", "1932-05-01T00:00:00", "1932-04-01T00:00:00", "1932-03-01T00:00:00", "1932-02-01T00:00:00", "1932-01-01T00:00:00", "1931-12-01T00:00:00", "1931-11-01T00:00:00", "1931-10-01T00:00:00", "1931-09-01T00:00:00", "1931-08-01T00:00:00", "1931-07-01T00:00:00", "1931-06-01T00:00:00", "1931-05-01T00:00:00", "1931-04-01T00:00:00", "1931-03-01T00:00:00", "1931-02-01T00:00:00", "1931-01-01T00:00:00", "1930-12-01T00:00:00", "1930-11-01T00:00:00", "1930-10-01T00:00:00", "1930-09-01T00:00:00", "1930-08-01T00:00:00", "1930-07-01T00:00:00", "1930-06-01T00:00:00", "1930-05-01T00:00:00", "1930-04-01T00:00:00", "1930-03-01T00:00:00", "1930-02-01T00:00:00", "1930-01-01T00:00:00", "1929-12-01T00:00:00", "1929-11-01T00:00:00", "1929-10-01T00:00:00", "1929-09-01T00:00:00", "1929-08-01T00:00:00", "1929-07-01T00:00:00", "1929-06-01T00:00:00", "1929-05-01T00:00:00", "1929-04-01T00:00:00", "1929-03-01T00:00:00", "1929-02-01T00:00:00", "1929-01-01T00:00:00", "1928-12-01T00:00:00", "1928-11-01T00:00:00", "1928-10-01T00:00:00", "1928-09-01T00:00:00", "1928-08-01T00:00:00", "1928-07-01T00:00:00", "1928-06-01T00:00:00", "1928-05-01T00:00:00", "1928-04-01T00:00:00", "1928-03-01T00:00:00", "1928-02-01T00:00:00", "1928-01-01T00:00:00", "1927-12-01T00:00:00", "1927-11-01T00:00:00", "1927-10-01T00:00:00", "1927-09-01T00:00:00", "1927-08-01T00:00:00", "1927-07-01T00:00:00", "1927-06-01T00:00:00", "1927-05-01T00:00:00", "1927-04-01T00:00:00", "1927-03-01T00:00:00", "1927-02-01T00:00:00", "1927-01-01T00:00:00", "1926-12-01T00:00:00", "1926-11-01T00:00:00", "1926-10-01T00:00:00", "1926-09-01T00:00:00", "1926-08-01T00:00:00", "1926-07-01T00:00:00", "1926-06-01T00:00:00", "1926-05-01T00:00:00", "1926-04-01T00:00:00", "1926-03-01T00:00:00", "1926-02-01T00:00:00", "1926-01-01T00:00:00", "1925-12-01T00:00:00", "1925-11-01T00:00:00", "1925-10-01T00:00:00", "1925-09-01T00:00:00", "1925-08-01T00:00:00", "1925-07-01T00:00:00", "1925-06-01T00:00:00", "1925-05-01T00:00:00", "1925-04-01T00:00:00", "1925-03-01T00:00:00", "1925-02-01T00:00:00", "1925-01-01T00:00:00", "1924-12-01T00:00:00", "1924-11-01T00:00:00", "1924-10-01T00:00:00", "1924-09-01T00:00:00", "1924-08-01T00:00:00", "1924-07-01T00:00:00", "1924-06-01T00:00:00", "1924-05-01T00:00:00", "1924-04-01T00:00:00", "1924-03-01T00:00:00", "1924-02-01T00:00:00", "1924-01-01T00:00:00", "1923-12-01T00:00:00", "1923-11-01T00:00:00", "1923-10-01T00:00:00", "1923-09-01T00:00:00", "1923-08-01T00:00:00", "1923-07-01T00:00:00", "1923-06-01T00:00:00", "1923-05-01T00:00:00", "1923-04-01T00:00:00", "1923-03-01T00:00:00", "1923-02-01T00:00:00", "1923-01-01T00:00:00", "1922-12-01T00:00:00", "1922-11-01T00:00:00", "1922-10-01T00:00:00", "1922-09-01T00:00:00", "1922-08-01T00:00:00", "1922-07-01T00:00:00", "1922-06-01T00:00:00", "1922-05-01T00:00:00", "1922-04-01T00:00:00", "1922-03-01T00:00:00", "1922-02-01T00:00:00", "1922-01-01T00:00:00", "1921-12-01T00:00:00", "1921-11-01T00:00:00", "1921-10-01T00:00:00", "1921-09-01T00:00:00", "1921-08-01T00:00:00", "1921-07-01T00:00:00", "1921-06-01T00:00:00", "1921-05-01T00:00:00", "1921-04-01T00:00:00", "1921-03-01T00:00:00", "1921-02-01T00:00:00", "1921-01-01T00:00:00", "1920-12-01T00:00:00", "1920-11-01T00:00:00", "1920-10-01T00:00:00", "1920-09-01T00:00:00", "1920-08-01T00:00:00", "1920-07-01T00:00:00", "1920-06-01T00:00:00", "1920-05-01T00:00:00", "1920-04-01T00:00:00", "1920-03-01T00:00:00", "1920-02-01T00:00:00", "1920-01-01T00:00:00", "1919-12-01T00:00:00", "1919-11-01T00:00:00", "1919-10-01T00:00:00", "1919-09-01T00:00:00", "1919-08-01T00:00:00", "1919-07-01T00:00:00", "1919-06-01T00:00:00", "1919-05-01T00:00:00", "1919-04-01T00:00:00", "1919-03-01T00:00:00", "1919-02-01T00:00:00", "1919-01-01T00:00:00", "1918-12-01T00:00:00", "1918-11-01T00:00:00", "1918-10-01T00:00:00", "1918-09-01T00:00:00", "1918-08-01T00:00:00", "1918-07-01T00:00:00", "1918-06-01T00:00:00", "1918-05-01T00:00:00", "1918-04-01T00:00:00", "1918-03-01T00:00:00", "1918-02-01T00:00:00", "1918-01-01T00:00:00", "1917-12-01T00:00:00", "1917-11-01T00:00:00", "1917-10-01T00:00:00", "1917-09-01T00:00:00", "1917-08-01T00:00:00", "1917-07-01T00:00:00", "1917-06-01T00:00:00", "1917-05-01T00:00:00", "1917-04-01T00:00:00", "1917-03-01T00:00:00", "1917-02-01T00:00:00", "1917-01-01T00:00:00", "1916-12-01T00:00:00", "1916-11-01T00:00:00", "1916-10-01T00:00:00", "1916-09-01T00:00:00", "1916-08-01T00:00:00", "1916-07-01T00:00:00", "1916-06-01T00:00:00", "1916-05-01T00:00:00", "1916-04-01T00:00:00", "1916-03-01T00:00:00", "1916-02-01T00:00:00", "1916-01-01T00:00:00", "1915-12-01T00:00:00", "1915-11-01T00:00:00", "1915-10-01T00:00:00", "1915-09-01T00:00:00", "1915-08-01T00:00:00", "1915-07-01T00:00:00", "1915-06-01T00:00:00", "1915-05-01T00:00:00", "1915-04-01T00:00:00", "1915-03-01T00:00:00", "1915-02-01T00:00:00", "1915-01-01T00:00:00", "1914-12-01T00:00:00", "1914-11-01T00:00:00", "1914-10-01T00:00:00", "1914-09-01T00:00:00", "1914-08-01T00:00:00", "1914-07-01T00:00:00", "1914-06-01T00:00:00", "1914-05-01T00:00:00", "1914-04-01T00:00:00", "1914-03-01T00:00:00", "1914-02-01T00:00:00", "1914-01-01T00:00:00", "1913-12-01T00:00:00", "1913-11-01T00:00:00", "1913-10-01T00:00:00", "1913-09-01T00:00:00", "1913-08-01T00:00:00", "1913-07-01T00:00:00", "1913-06-01T00:00:00", "1913-05-01T00:00:00", "1913-04-01T00:00:00", "1913-03-01T00:00:00", "1913-02-01T00:00:00", "1913-01-01T00:00:00", "1912-12-01T00:00:00", "1912-11-01T00:00:00", "1912-10-01T00:00:00", "1912-09-01T00:00:00", "1912-08-01T00:00:00", "1912-07-01T00:00:00", "1912-06-01T00:00:00", "1912-05-01T00:00:00", "1912-04-01T00:00:00", "1912-03-01T00:00:00", "1912-02-01T00:00:00", "1912-01-01T00:00:00", "1911-12-01T00:00:00", "1911-11-01T00:00:00", "1911-10-01T00:00:00", "1911-09-01T00:00:00", "1911-08-01T00:00:00", "1911-07-01T00:00:00", "1911-06-01T00:00:00", "1911-05-01T00:00:00", "1911-04-01T00:00:00", "1911-03-01T00:00:00", "1911-02-01T00:00:00", "1911-01-01T00:00:00", "1910-12-01T00:00:00", "1910-11-01T00:00:00", "1910-10-01T00:00:00", "1910-09-01T00:00:00", "1910-08-01T00:00:00", "1910-07-01T00:00:00", "1910-06-01T00:00:00", "1910-05-01T00:00:00", "1910-04-01T00:00:00", "1910-03-01T00:00:00", "1910-02-01T00:00:00", "1910-01-01T00:00:00", "1909-12-01T00:00:00", "1909-11-01T00:00:00", "1909-10-01T00:00:00", "1909-09-01T00:00:00", "1909-08-01T00:00:00", "1909-07-01T00:00:00", "1909-06-01T00:00:00", "1909-05-01T00:00:00", "1909-04-01T00:00:00", "1909-03-01T00:00:00", "1909-02-01T00:00:00", "1909-01-01T00:00:00", "1908-12-01T00:00:00", "1908-11-01T00:00:00", "1908-10-01T00:00:00", "1908-09-01T00:00:00", "1908-08-01T00:00:00", "1908-07-01T00:00:00", "1908-06-01T00:00:00", "1908-05-01T00:00:00", "1908-04-01T00:00:00", "1908-03-01T00:00:00", "1908-02-01T00:00:00", "1908-01-01T00:00:00", "1907-12-01T00:00:00", "1907-11-01T00:00:00", "1907-10-01T00:00:00", "1907-09-01T00:00:00", "1907-08-01T00:00:00", "1907-07-01T00:00:00", "1907-06-01T00:00:00", "1907-05-01T00:00:00", "1907-04-01T00:00:00", "1907-03-01T00:00:00", "1907-02-01T00:00:00", "1907-01-01T00:00:00", "1906-12-01T00:00:00", "1906-11-01T00:00:00", "1906-10-01T00:00:00", "1906-09-01T00:00:00", "1906-08-01T00:00:00", "1906-07-01T00:00:00", "1906-06-01T00:00:00", "1906-05-01T00:00:00", "1906-04-01T00:00:00", "1906-03-01T00:00:00", "1906-02-01T00:00:00", "1906-01-01T00:00:00", "1905-12-01T00:00:00", "1905-11-01T00:00:00", "1905-10-01T00:00:00", "1905-09-01T00:00:00", "1905-08-01T00:00:00", "1905-07-01T00:00:00", "1905-06-01T00:00:00", "1905-05-01T00:00:00", "1905-04-01T00:00:00", "1905-03-01T00:00:00", "1905-02-01T00:00:00", "1905-01-01T00:00:00", "1904-12-01T00:00:00", "1904-11-01T00:00:00", "1904-10-01T00:00:00", "1904-09-01T00:00:00", "1904-08-01T00:00:00", "1904-07-01T00:00:00", "1904-06-01T00:00:00", "1904-05-01T00:00:00", "1904-04-01T00:00:00", "1904-03-01T00:00:00", "1904-02-01T00:00:00", "1904-01-01T00:00:00", "1903-12-01T00:00:00", "1903-11-01T00:00:00", "1903-10-01T00:00:00", "1903-09-01T00:00:00", "1903-08-01T00:00:00", "1903-07-01T00:00:00", "1903-06-01T00:00:00", "1903-05-01T00:00:00", "1903-04-01T00:00:00", "1903-03-01T00:00:00", "1903-02-01T00:00:00", "1903-01-01T00:00:00", "1902-12-01T00:00:00", "1902-11-01T00:00:00", "1902-10-01T00:00:00", "1902-09-01T00:00:00", "1902-08-01T00:00:00", "1902-07-01T00:00:00", "1902-06-01T00:00:00", "1902-05-01T00:00:00", "1902-04-01T00:00:00", "1902-03-01T00:00:00", "1902-02-01T00:00:00", "1902-01-01T00:00:00", "1901-12-01T00:00:00", "1901-11-01T00:00:00", "1901-10-01T00:00:00", "1901-09-01T00:00:00", "1901-08-01T00:00:00", "1901-07-01T00:00:00", "1901-06-01T00:00:00", "1901-05-01T00:00:00", "1901-04-01T00:00:00", "1901-03-01T00:00:00", "1901-02-01T00:00:00", "1901-01-01T00:00:00", "1900-12-01T00:00:00", "1900-11-01T00:00:00", "1900-10-01T00:00:00", "1900-09-01T00:00:00", "1900-08-01T00:00:00", "1900-07-01T00:00:00", "1900-06-01T00:00:00", "1900-05-01T00:00:00", "1900-04-01T00:00:00", "1900-03-01T00:00:00", "1900-02-01T00:00:00", "1900-01-01T00:00:00", "1899-12-01T00:00:00", "1899-11-01T00:00:00", "1899-10-01T00:00:00", "1899-09-01T00:00:00", "1899-08-01T00:00:00", "1899-07-01T00:00:00", "1899-06-01T00:00:00", "1899-05-01T00:00:00", "1899-04-01T00:00:00", "1899-03-01T00:00:00", "1899-02-01T00:00:00", "1899-01-01T00:00:00", "1898-12-01T00:00:00", "1898-11-01T00:00:00", "1898-10-01T00:00:00", "1898-09-01T00:00:00", "1898-08-01T00:00:00", "1898-07-01T00:00:00", "1898-06-01T00:00:00", "1898-05-01T00:00:00", "1898-04-01T00:00:00", "1898-03-01T00:00:00", "1898-02-01T00:00:00", "1898-01-01T00:00:00", "1897-12-01T00:00:00", "1897-11-01T00:00:00", "1897-10-01T00:00:00", "1897-09-01T00:00:00", "1897-08-01T00:00:00", "1897-07-01T00:00:00", "1897-06-01T00:00:00", "1897-05-01T00:00:00", "1897-04-01T00:00:00", "1897-03-01T00:00:00", "1897-02-01T00:00:00", "1897-01-01T00:00:00", "1896-12-01T00:00:00", "1896-11-01T00:00:00", "1896-10-01T00:00:00", "1896-09-01T00:00:00", "1896-08-01T00:00:00", "1896-07-01T00:00:00", "1896-06-01T00:00:00", "1896-05-01T00:00:00", "1896-04-01T00:00:00", "1896-03-01T00:00:00", "1896-02-01T00:00:00", "1896-01-01T00:00:00", "1895-12-01T00:00:00", "1895-11-01T00:00:00", "1895-10-01T00:00:00", "1895-09-01T00:00:00", "1895-08-01T00:00:00", "1895-07-01T00:00:00", "1895-06-01T00:00:00", "1895-05-01T00:00:00", "1895-04-01T00:00:00", "1895-03-01T00:00:00", "1895-02-01T00:00:00", "1895-01-01T00:00:00", "1894-12-01T00:00:00", "1894-11-01T00:00:00", "1894-10-01T00:00:00", "1894-09-01T00:00:00", "1894-08-01T00:00:00", "1894-07-01T00:00:00", "1894-06-01T00:00:00", "1894-05-01T00:00:00", "1894-04-01T00:00:00", "1894-03-01T00:00:00", "1894-02-01T00:00:00", "1894-01-01T00:00:00", "1893-12-01T00:00:00", "1893-11-01T00:00:00", "1893-10-01T00:00:00", "1893-09-01T00:00:00", "1893-08-01T00:00:00", "1893-07-01T00:00:00", "1893-06-01T00:00:00", "1893-05-01T00:00:00", "1893-04-01T00:00:00", "1893-03-01T00:00:00", "1893-02-01T00:00:00", "1893-01-01T00:00:00", "1892-12-01T00:00:00", "1892-11-01T00:00:00", "1892-10-01T00:00:00", "1892-09-01T00:00:00", "1892-08-01T00:00:00", "1892-07-01T00:00:00", "1892-06-01T00:00:00", "1892-05-01T00:00:00", "1892-04-01T00:00:00", "1892-03-01T00:00:00", "1892-02-01T00:00:00", "1892-01-01T00:00:00", "1891-12-01T00:00:00", "1891-11-01T00:00:00", "1891-10-01T00:00:00", "1891-09-01T00:00:00", "1891-08-01T00:00:00", "1891-07-01T00:00:00", "1891-06-01T00:00:00", "1891-05-01T00:00:00", "1891-04-01T00:00:00", "1891-03-01T00:00:00", "1891-02-01T00:00:00", "1891-01-01T00:00:00", "1890-12-01T00:00:00", "1890-11-01T00:00:00", "1890-10-01T00:00:00", "1890-09-01T00:00:00", "1890-08-01T00:00:00", "1890-07-01T00:00:00", "1890-06-01T00:00:00", "1890-05-01T00:00:00", "1890-04-01T00:00:00", "1890-03-01T00:00:00", "1890-02-01T00:00:00", "1890-01-01T00:00:00", "1889-12-01T00:00:00", "1889-11-01T00:00:00", "1889-10-01T00:00:00", "1889-09-01T00:00:00", "1889-08-01T00:00:00", "1889-07-01T00:00:00", "1889-06-01T00:00:00", "1889-05-01T00:00:00", "1889-04-01T00:00:00", "1889-03-01T00:00:00", "1889-02-01T00:00:00", "1889-01-01T00:00:00", "1888-12-01T00:00:00", "1888-11-01T00:00:00", "1888-10-01T00:00:00", "1888-09-01T00:00:00", "1888-08-01T00:00:00", "1888-07-01T00:00:00", "1888-06-01T00:00:00", "1888-05-01T00:00:00", "1888-04-01T00:00:00", "1888-03-01T00:00:00", "1888-02-01T00:00:00", "1888-01-01T00:00:00", "1887-12-01T00:00:00", "1887-11-01T00:00:00", "1887-10-01T00:00:00", "1887-09-01T00:00:00", "1887-08-01T00:00:00", "1887-07-01T00:00:00", "1887-06-01T00:00:00", "1887-05-01T00:00:00", "1887-04-01T00:00:00", "1887-03-01T00:00:00", "1887-02-01T00:00:00", "1887-01-01T00:00:00", "1886-12-01T00:00:00", "1886-11-01T00:00:00", "1886-10-01T00:00:00", "1886-09-01T00:00:00", "1886-08-01T00:00:00", "1886-07-01T00:00:00", "1886-06-01T00:00:00", "1886-05-01T00:00:00", "1886-04-01T00:00:00", "1886-03-01T00:00:00", "1886-02-01T00:00:00", "1886-01-01T00:00:00", "1885-12-01T00:00:00", "1885-11-01T00:00:00", "1885-10-01T00:00:00", "1885-09-01T00:00:00", "1885-08-01T00:00:00", "1885-07-01T00:00:00", "1885-06-01T00:00:00", "1885-05-01T00:00:00", "1885-04-01T00:00:00", "1885-03-01T00:00:00", "1885-02-01T00:00:00", "1885-01-01T00:00:00", "1884-12-01T00:00:00", "1884-11-01T00:00:00", "1884-10-01T00:00:00", "1884-09-01T00:00:00", "1884-08-01T00:00:00", "1884-07-01T00:00:00", "1884-06-01T00:00:00", "1884-05-01T00:00:00", "1884-04-01T00:00:00", "1884-03-01T00:00:00", "1884-02-01T00:00:00", "1884-01-01T00:00:00", "1883-12-01T00:00:00", "1883-11-01T00:00:00", "1883-10-01T00:00:00", "1883-09-01T00:00:00", "1883-08-01T00:00:00", "1883-07-01T00:00:00", "1883-06-01T00:00:00", "1883-05-01T00:00:00", "1883-04-01T00:00:00", "1883-03-01T00:00:00", "1883-02-01T00:00:00", "1883-01-01T00:00:00", "1882-12-01T00:00:00", "1882-11-01T00:00:00", "1882-10-01T00:00:00", "1882-09-01T00:00:00", "1882-08-01T00:00:00", "1882-07-01T00:00:00", "1882-06-01T00:00:00", "1882-05-01T00:00:00", "1882-04-01T00:00:00", "1882-03-01T00:00:00", "1882-02-01T00:00:00", "1882-01-01T00:00:00", "1881-12-01T00:00:00", "1881-11-01T00:00:00", "1881-10-01T00:00:00", "1881-09-01T00:00:00", "1881-08-01T00:00:00", "1881-07-01T00:00:00", "1881-06-01T00:00:00", "1881-05-01T00:00:00", "1881-04-01T00:00:00", "1881-03-01T00:00:00", "1881-02-01T00:00:00", "1881-01-01T00:00:00", "1880-12-01T00:00:00", "1880-11-01T00:00:00", "1880-10-01T00:00:00", "1880-09-01T00:00:00", "1880-08-01T00:00:00", "1880-07-01T00:00:00", "1880-06-01T00:00:00", "1880-05-01T00:00:00", "1880-04-01T00:00:00", "1880-03-01T00:00:00", "1880-02-01T00:00:00", "1880-01-01T00:00:00", "1879-12-01T00:00:00", "1879-11-01T00:00:00", "1879-10-01T00:00:00", "1879-09-01T00:00:00", "1879-08-01T00:00:00", "1879-07-01T00:00:00", "1879-06-01T00:00:00", "1879-05-01T00:00:00", "1879-04-01T00:00:00", "1879-03-01T00:00:00", "1879-02-01T00:00:00", "1879-01-01T00:00:00", "1878-12-01T00:00:00", "1878-11-01T00:00:00", "1878-10-01T00:00:00", "1878-09-01T00:00:00", "1878-08-01T00:00:00", "1878-07-01T00:00:00", "1878-06-01T00:00:00", "1878-05-01T00:00:00", "1878-04-01T00:00:00", "1878-03-01T00:00:00", "1878-02-01T00:00:00", "1878-01-01T00:00:00", "1877-12-01T00:00:00", "1877-11-01T00:00:00", "1877-10-01T00:00:00", "1877-09-01T00:00:00", "1877-08-01T00:00:00", "1877-07-01T00:00:00", "1877-06-01T00:00:00", "1877-05-01T00:00:00", "1877-04-01T00:00:00", "1877-03-01T00:00:00", "1877-02-01T00:00:00", "1877-01-01T00:00:00", "1876-12-01T00:00:00", "1876-11-01T00:00:00", "1876-10-01T00:00:00", "1876-09-01T00:00:00", "1876-08-01T00:00:00", "1876-07-01T00:00:00", "1876-06-01T00:00:00", "1876-05-01T00:00:00", "1876-04-01T00:00:00", "1876-03-01T00:00:00", "1876-02-01T00:00:00", "1876-01-01T00:00:00", "1875-12-01T00:00:00", "1875-11-01T00:00:00", "1875-10-01T00:00:00", "1875-09-01T00:00:00", "1875-08-01T00:00:00", "1875-07-01T00:00:00", "1875-06-01T00:00:00", "1875-05-01T00:00:00", "1875-04-01T00:00:00", "1875-03-01T00:00:00", "1875-02-01T00:00:00", "1875-01-01T00:00:00", "1874-12-01T00:00:00", "1874-11-01T00:00:00", "1874-10-01T00:00:00", "1874-09-01T00:00:00", "1874-08-01T00:00:00", "1874-07-01T00:00:00", "1874-06-01T00:00:00", "1874-05-01T00:00:00", "1874-04-01T00:00:00", "1874-03-01T00:00:00", "1874-02-01T00:00:00", "1874-01-01T00:00:00", "1873-12-01T00:00:00", "1873-11-01T00:00:00", "1873-10-01T00:00:00", "1873-09-01T00:00:00", "1873-08-01T00:00:00", "1873-07-01T00:00:00", "1873-06-01T00:00:00", "1873-05-01T00:00:00", "1873-04-01T00:00:00", "1873-03-01T00:00:00", "1873-02-01T00:00:00", "1873-01-01T00:00:00", "1872-12-01T00:00:00", "1872-11-01T00:00:00", "1872-10-01T00:00:00", "1872-09-01T00:00:00", "1872-08-01T00:00:00", "1872-07-01T00:00:00", "1872-06-01T00:00:00", "1872-05-01T00:00:00", "1872-04-01T00:00:00", "1872-03-01T00:00:00", "1872-02-01T00:00:00", "1872-01-01T00:00:00", "1871-12-01T00:00:00", "1871-11-01T00:00:00", "1871-10-01T00:00:00", "1871-09-01T00:00:00", "1871-08-01T00:00:00", "1871-07-01T00:00:00", "1871-06-01T00:00:00", "1871-05-01T00:00:00", "1871-04-01T00:00:00", "1871-03-01T00:00:00" ], "xaxis": "x", "y": [ 35.04, 35.1, 34.51, 33.77, 32.47, 31.28, 30.84, 31.16, 29.6, 28.84, 27.33, 25.93, 24.82, 30.73, 30.99, 30.33, 29.84, 28.84, 29.23, 28.71, 29.99, 29.28, 29.24, 30.13, 29.58, 29.54, 28.38, 28.29, 30.2, 31.04, 32.62, 32.39, 31.89, 31.63, 31.24, 30.97, 31.81, 32.04, 33.31, 32.09, 31.3, 30.92, 30.17, 29.91, 30, 29.75, 29.31, 28.9, 29.09, 28.66, 28.06, 27.87, 26.85, 26.53, 26.73, 26.95, 26.69, 25.84, 25.69, 25.92, 25.37, 24, 24.21, 25.97, 26.23, 25.49, 24.5, 25.69, 26.38, 26.5, 26.81, 26.79, 26.73, 27, 26.49, 26.79, 26.61, 25.16, 25.92, 25.62, 25.82, 25.56, 24.94, 24.79, 24.96, 24.59, 24.86, 24.86, 24.64, 23.83, 23.44, 23.36, 23.49, 22.93, 23.41, 22.6, 22.42, 22.05, 21.9, 21.24, 20.9, 21.58, 21.78, 21.41, 21, 20.55, 20.94, 21.78, 22.05, 21.8, 21.21, 20.52, 20.35, 20.16, 19.7, 20.05, 22.61, 22.1, 23.06, 23.14, 22.9, 23.49, 22.98, 22.4, 21.7, 21.24, 20.38, 19.77, 19.67, 19.74, 20.48, 21.8, 21, 19.92, 20.53, 20.32, 19.81, 19.36, 18.83, 18.09, 16.69, 16.38, 16, 14.98, 13.32, 14.12, 15.17, 15.38, 15.26, 16.39, 20.36, 21.4, 20.91, 22.42, 23.7, 23.36, 22.61, 23.5, 24.02, 25.96, 25.73, 27.32, 26.73, 26.15, 27.41, 27.42, 27.55, 26.98, 26.23, 27.32, 27.21, 27.28, 26.93, 26.54, 25.64, 25.05, 24.7, 24.75, 25.65, 26.15, 26.33, 26.25, 26.47, 26.44, 25.93, 24.88, 25.73, 26.1, 26.29, 26.07, 25.65, 25.41, 26.34, 26.74, 26.59, 27.14, 26.47, 25.41, 25.67, 25.17, 25.7, 26.4, 25.9, 26.9, 26.89, 27.65, 27.66, 26.64, 25.95, 25.68, 25.24, 24.64, 24.87, 24.83, 23.59, 22.43, 21.31, 21.21, 22.9, 23.1, 23.35, 21.96, 22.36, 23.59, 23.46, 26.39, 28.13, 29.01, 30.29, 29.09, 30.28, 30.5, 30.01, 28.58, 27.67, 31.4, 32.16, 33.07, 34.07, 32.17, 32.32, 35.83, 36.98, 37.27, 38.78, 39.37, 41.89, 42.87, 42.75, 42.78, 41.96, 43.53, 43.22, 42.18, 43.77, 44.19, 43.21, 40.55, 41.32, 41.93, 43.83, 42.18, 42.55, 42.7, 41.35, 40.4, 40.57, 38.82, 37.37, 33.77, 33.53, 35.42, 38.26, 36.8, 36.95, 37.27, 36.29, 34.71, 32.86, 33.03, 32.33, 32.9, 32.66, 32.58, 32.76, 31.25, 29.93, 27.58, 28.8, 29.26, 28.33, 27.72, 27.58, 26.48, 25.68, 25.41, 24.86, 25.96, 25.81, 25.42, 25.63, 25.97, 24.76, 25.03, 24.35, 23.93, 23.94, 23.28, 23.37, 22.72, 22.19, 21.64, 21.15, 20.8, 20.22, 19.91, 20.21, 20.39, 20.57, 20.53, 20.07, 20.29, 20.19, 20.05, 20.83, 21.26, 21.41, 21.16, 21.04, 21.11, 20.99, 20.81, 20.56, 20.61, 20.52, 20.46, 20.85, 20.54, 20.32, 20.45, 19.83, 19.37, 19.71, 19.72, 19.62, 19.31, 19.66, 19.3, 19.28, 19.58, 19.77, 18.44, 18.29, 18.35, 18.36, 18.51, 18.1, 18.01, 18.03, 18.16, 17.82, 17.36, 15.61, 15.85, 15.19, 14.82, 15.3, 16.17, 17.75, 17.82, 17.39, 16.81, 16.83, 16.51, 17.05, 17.65, 17.24, 17.64, 17.71, 17.73, 17.01, 16.64, 16.19, 15.69, 15.3, 15.47, 15.09, 14.7, 14.45, 14.81, 14.37, 14.24, 14.61, 14.77, 14.03, 14.43, 14.67, 14.3, 13.9, 13.39, 13.59, 15.53, 17.68, 18.33, 17.31, 16.83, 16.16, 16.2, 16.43, 15.82, 14.92, 14.09, 13.87, 13.43, 13.47, 13.89, 13.62, 13.89, 13.56, 13.55, 13.19, 12.39, 11.72, 11.69, 11.16, 10.55, 10.47, 10.74, 11, 10.81, 10.61, 10.4, 10.37, 10.49, 10, 9.6, 9.69, 9.6, 9.69, 9.62, 8.87, 9.01, 9.23, 9.31, 9.33, 9.32, 9.89, 9.82, 9.85, 10, 9.98, 9.73, 10.01, 10, 9.87, 9.53, 9.23, 8.91, 8.76, 8.47, 8.35, 8, 7.4, 6.64, 6.64, 6.69, 7.19, 7.26, 6.95, 7.18, 7.39, 7.83, 7.81, 7.65, 7.58, 8.4, 8.45, 8.77, 8.82, 9.09, 9.08, 8.83, 9.26, 9.39, 9.65, 9.36, 9.2, 9.07, 8.88, 8.51, 8.1, 7.84, 8.08, 9.05, 8.85, 8.75, 8.52, 8.68, 9.11, 9.13, 8.83, 8.85, 8.79, 9.13, 9.07, 9, 9.26, 9.01, 8.93, 9.53, 9.94, 10.02, 9.43, 9.55, 9.63, 9.26, 8.95, 9.05, 9.24, 9.68, 9.77, 9.77, 10.07, 10.27, 10.57, 10.53, 10.55, 10.64, 10.9, 11.01, 11.44, 11.6, 11.25, 11.35, 11.81, 11.6, 11.76, 11.54, 11.53, 11.69, 11.63, 11.59, 11.19, 10.25, 10.44, 10.33, 9.92, 10.09, 10.9, 11.01, 10.82, 10.23, 10.16, 9.76, 8.92, 8.29, 8.95, 8.74, 8.68, 9.82, 10.39, 11.89, 12, 12.55, 13.31, 12.96, 13.53, 13.49, 14.65, 15.91, 15.48, 15.28, 15.89, 15.81, 16.31, 16.94, 17.41, 17.89, 18.71, 18.65, 18.34, 17.53, 17.61, 17.94, 17.4, 17.64, 17.66, 17.92, 17.81, 17.46, 17.26, 16.6, 15.64, 16.43, 16.86, 16.52, 16.89, 17.08, 17.56, 17.92, 17.4, 17.03, 16.46, 15.87, 14.95, 15.06, 14.84, 14.1, 13.73, 13.8, 13.98, 15.87, 16.53, 16.37, 17.09, 17.33, 18.44, 18.45, 18.4, 18.43, 18.68, 19.71, 20.97, 20.43, 20.2, 20.9, 21.19, 22.28, 22.2, 22, 21.68, 21.14, 21.75, 22, 21.63, 21.28, 19.93, 20.42, 21.51, 21.75, 21.26, 22.07, 22.22, 22.03, 21.8, 21.55, 21.95, 21.69, 21.44, 21.07, 20.43, 19.74, 19.71, 18.83, 19.16, 19.91, 21.38, 21.56, 21.85, 23.11, 22.61, 23.7, 24.06, 23.69, 23.93, 23.78, 23.37, 22.67, 22.3, 22.39, 23.71, 23.42, 23.25, 23.37, 23.27, 22.75, 23.23, 23.21, 22.89, 22.65, 22.98, 22.3, 22.57, 22.42, 22.17, 21.83, 21.63, 21.04, 20.72, 20.89, 20.96, 20.47, 19.97, 20.38, 20.51, 20.15, 19.29, 19.47, 19.26, 18.59, 17.85, 16.74, 17.32, 17.57, 17.14, 16.83, 19.09, 20.66, 21.44, 21.45, 21.2, 22.04, 21.86, 20.92, 20.71, 20.94, 20.15, 20.33, 20.6, 20.38, 19.84, 19.23, 18.47, 17.56, 17.15, 16.61, 17.05, 17.58, 17.38, 17.82, 17.26, 17.43, 17.29, 17.55, 18.34, 18.62, 18.07, 18.02, 18.12, 18.96, 19.09, 18.45, 18.69, 18.43, 18.2, 17.76, 17.98, 17.36, 16.99, 16.56, 15.93, 15.54, 14.96, 14.64, 14.32, 13.91, 13.93, 13.78, 13.79, 13.67, 13.74, 14.15, 15.16, 15.87, 16.87, 16.73, 16.6, 16.12, 15.9, 15.84, 16.72, 17.2, 17.12, 17.42, 17.84, 18.67, 18.86, 18.16, 18.54, 19.37, 19.37, 18.27, 18.29, 18.94, 18.84, 17.77, 18.84, 18.22, 18.45, 17.37, 16.52, 16.69, 16.22, 16.44, 15.99, 15.79, 15.12, 14.62, 14.36, 14.04, 13.83, 13.36, 13.31, 12.91, 12.42, 12.22, 12, 11.75, 11.64, 11.39, 11.14, 11.72, 11.75, 11.62, 12.14, 12.16, 12.83, 12.86, 13.01, 12.93, 12.47, 12.13, 12.43, 12.68, 12.67, 12.45, 12.2, 12.24, 12.36, 12.36, 12.53, 12.15, 11.85, 12.31, 12.44, 12.26, 11.78, 11.62, 11.86, 11.95, 11.84, 12.14, 11.9, 11.31, 11.54, 11.66, 11.34, 11.04, 10.54, 11.55, 11.46, 11.18, 10.91, 10.91, 10.75, 10.53, 10.22, 10.17, 9.88, 9.85, 9.61, 9.07, 9.69, 9.78, 9.9, 9.87, 10.25, 10.16, 10.25, 10.83, 10.55, 10.72, 11.13, 11.58, 11.24, 10.78, 10.19, 10, 10.42, 10.68, 10.98, 11.13, 10.83, 11.34, 11.7, 11.08, 10.73, 10.9, 11.29, 11.95, 11.47, 11.37, 11.11, 11.39, 11.84, 13.98, 14.51, 15.77, 16.01, 16.04, 15.13, 15.76, 15.62, 15.02, 14.85, 14.37, 13.8, 12.92, 12.87, 13.13, 13.04, 12.63, 12.32, 12.34, 11.96, 11.64, 11.48, 11.58, 11.33, 11.54, 11.74, 11.53, 11.1, 10.94, 11.22, 10.95, 11.05, 10.74, 10.63, 11.19, 11.34, 11.21, 11.77, 11.52, 11.36, 11.04, 10.85, 10.71, 10.15, 9.62, 9.66, 9.6, 9.08, 9.01, 9.15, 8.91, 8.51, 8.54, 9, 9.68, 10.1, 10.09, 10.91, 11.58, 12.28, 12.46, 12.74, 12.16, 12.04, 12.43, 12.96, 13, 13.9, 13.91, 14.64, 14.33, 14.21, 13.65, 13.37, 12.84, 14.14, 16.37, 16.17, 16.22, 16.38, 16.28, 16.6, 16.82, 16.45, 15.12, 15.27, 14.83, 14.5, 13.92, 15.73, 15.66, 15.6, 15.76, 16.15, 16.06, 14.28, 14.9, 14.77, 12.29, 11.99, 11.79, 12.38, 13.26, 13.51, 13.01, 13.16, 14.36, 16.85, 19.81, 19.65, 18.71, 19.47, 20.56, 22.04, 22.24, 21.62, 21.13, 21.5, 20.91, 19.86, 19.62, 19.36, 18.39, 17.75, 18.72, 18.66, 18.1, 17.09, 16.16, 16.13, 14.83, 14.42, 14.11, 13.2, 12.54, 11.99, 11.1, 10.4, 11.09, 11.5, 11.64, 11.45, 11.11, 10.91, 11.32, 11.74, 12.29, 12.18, 13.52, 13.25, 13.93, 13.03, 12.28, 12.01, 11.7, 12.92, 13, 13.75, 13.1, 11.25, 8.72, 7.87, 7.83, 8.73, 8.26, 8.46, 8.48, 9.76, 8.83, 5.84, 5.57, 6.39, 7.19, 9.41, 9.34, 9.31, 9.31, 11.42, 11.15, 12.82, 15.01, 15.52, 15.06, 15.4, 16.87, 18.58, 18.16, 16.71, 16.06, 16.94, 18.21, 21.07, 21.3, 21.55, 21.87, 24.31, 25.84, 24.59, 23.7, 22.31, 22.01, 21.17, 28.96, 32.56, 31.48, 29.93, 27.94, 27.7, 27.57, 27.68, 27.13, 27.08, 25.3, 25.12, 23.58, 23, 21.76, 21.08, 20.91, 21.83, 21.26, 19.94, 18.87, 18.81, 18.65, 18.13, 17.54, 17.82, 16.86, 15.82, 15.12, 15, 14.49, 14.03, 13.63, 13.19, 13.01, 12.62, 12.43, 12.69, 12.49, 11.87, 11.2, 10.58, 10.4, 10.71, 11.39, 11.34, 11.15, 10.89, 10.72, 10.36, 10.11, 9.96, 9.8, 9.73, 9.48, 9.52, 9.83, 9.69, 9.31, 8.89, 8.42, 8.58, 8.72, 8.38, 8.05, 7.9, 7.92, 8.06, 8.16, 8.07, 7.81, 7.55, 7.32, 7.46, 7.44, 7.35, 7.67, 8, 8.37, 8.7, 8.53, 8.15, 7.96, 8, 8.43, 8.27, 8.02, 7.6, 7.56, 7.59, 7.27, 6.82, 6.46, 6.29, 6.11, 5.84, 5.48, 5.38, 5.16, 5.2, 5.22, 5.61, 5.3, 5.19, 5.27, 5.12, 4.78, 5.13, 5.35, 5.3, 5.02, 5.08, 5.04, 5.19, 5.6, 5.8, 5.46, 5.99, 6.16, 6.47, 6.79, 6.56, 6.48, 7.05, 7.02, 6.83, 6.46, 6.36, 6.24, 6.1, 6.13, 6.33, 6.29, 6.15, 6.3, 6.37, 6.5, 6.58, 6.52, 6.69, 6.78, 6.64, 6.41, 6.75, 7.39, 7.95, 8.57, 9, 9.15, 9.14, 9.64, 10.33, 10.06, 10.99, 11.41, 12.05, 12.05, 11.94, 11.73, 11.79, 12, 12.03, 11.91, 12.18, 12.35, 12.54, 12.88, 12.86, 12.55, 12.01, 11.58, 11.11, 11.15, 11.03, 11.4, 10.71, 10.33, 10.36, 10.17, 10.52, 10.61, 10.5, 10.49, 10.69, 11.43, 11.48, 11.52, 11.69, 11.91, 11.64, 11.17, 11.07, 11.47, 11.84, 11.85, 11.53, 11.49, 12.22, 12.43, 12.44, 12.68, 13.15, 13.4, 13.75, 13.9, 13.93, 13.99, 13.8, 13.78, 13.65, 13.66, 13.64, 13.53, 13.8, 13.93, 13.73, 13.07, 13, 13.91, 15.08, 15.33, 15.05, 14.76, 14.37, 14.73, 14.05, 13.74, 14.16, 13.92, 12.94, 12.75, 12.34, 13.01, 13.57, 13.56, 14.04, 14, 14.54, 14.75, 14.74, 14.99, 15.25, 15.43, 15.23, 15.04, 14.96, 14.64, 14.33, 14.17, 14.77, 14.58, 14.44, 13.69, 13.71, 13.89, 13.35, 13.05, 13.08, 12.45, 11.99, 11.56, 11.9, 11.34, 10.6, 10.84, 12.33, 12.51, 13.58, 13.14, 13.8, 14.68, 14.69, 16.22, 17.22, 17.67, 18.14, 18.1, 19.21, 18.96, 18.19, 18.18, 18.06, 18.87, 19.26, 19.86, 20.13, 19.57, 19.45, 19.89, 19.74, 19.58, 19.2, 18.73, 18.63, 19.49, 19.84, 19.17, 18.46, 18.16, 18.07, 17.63, 16.74, 16.31, 16.03, 15.47, 15.52, 15.56, 15.09, 15.02, 15.86, 16.04, 15.4, 15.26, 15.65, 16.31, 16.93, 17.83, 18.96, 18.99, 19.89, 20.11, 20.32, 19.64, 20.41, 20.62, 22.87, 23.17, 22.4, 21.97, 22.42, 22.83, 22.41, 22.46, 22.34, 21.69, 22.37, 22.26, 22.6, 23.07, 23.15, 25.23, 23.06, 24.4, 22.36, 21.69, 20.97, 20.75, 19.42, 18.1, 17.35, 18.07, 17.7, 17.99, 18.41, 18.95, 18.78, 18.71, 18.67, 18.51, 20.21, 20.15, 20.6, 21.72, 21.57, 21.2, 22.1, 23.16, 23.27, 23.04, 22.92, 21.39, 20.53, 19.95, 20.45, 20.55, 19.86, 19.53, 17.6, 17.7, 18.03, 18.91, 19.25, 18.75, 18.36, 19.03, 19.36, 18.99, 18.65, 17.85, 17.05, 16.71, 16.96, 16.9, 17.03, 16.5, 17.09, 16.44, 16.55, 15.7, 16.64, 17.78, 17.84, 17.65, 17.22, 17.5, 16.58, 16.54, 17.35, 17.95, 18.2, 18.08, 17.54, 17.21, 17.07, 16.39, 16.35, 16.32, 16.51, 16.66, 16.55, 16.51, 16.53, 16.45, 16.28, 16.6, 16.8, 17.42, 17.18, 16.19, 15.74, 15.62, 15.93, 15.27, 15.02, 14.58, 14.35, 15.42, 15.79, 17.1, 16.9, 17.13, 17.65, 18.02, 18.46, 19.03, 18.69, 19.2, 19.22, 19.77, 19.92, 19.95, 19.73, 19.03, 19.01, 18.2, 17.66, 17.72, 17.72, 16.16, 15.61, 15.66, 15.57, 15.4, 15.06, 15.47, 15.43, 14.44, 14.74, 15.48, 16.16, 16.6, 17.58, 17.68, 17.78, 17.26, 16.9, 17.03, 17.22, 16.61, 16.9, 17.05, 17.34, 17.14, 16.89, 17.22, 16.92, 16.05, 16.07, 16.19, 15.81, 14.94, 15.22, 15.72, 15.98, 15.6, 15.27, 15.08, 15.38, 15.02, 14.8, 15.41, 15.36, 15.45, 15.95, 15.88, 16.67, 16.74, 17.42, 17.71, 18.07, 17.82, 17.47, 17.12, 17.52, 18.2, 18.96, 18.55, 18.14, 17.72, 17.85, 17.82, 16.87, 16.81, 16.84, 17.01, 16.7, 16.31, 16.83, 15.98, 15.11, 15.13, 14.33, 13.97, 13.71, 13.54, 13.74, 13.39, 13.13, 13.43, 13.31, 13.28, 13.57, 13.86, 13.05, 12.9, 13.46, 14.35, 14.73, 14.8, 14.43, 14.89, 15.41, 15.05, 15.49, 15.2, 15.96, 15.91, 15.33, 15.47, 15.05, 14.75, 15.27, 15.38, 15.19, 15.76, 16.07, 15.53, 15.23, 14.33, 14.56, 14.92, 15.08, 15.15, 15.68, 15.96, 16.48, 16.25, 16.72, 17.28, 18.11, 19.04, 18.88, 17.95, 18.28, 18.15, 18.47, 17.33, 16.87, 16.26, 15.86, 16.1, 15.59, 14.95, 14.63, 15.46, 15.23, 15.12, 14.87, 14.77, 15.26, 15.29, 14.59, 14.61, 14.54, 14.45, 14.25, 13.66, 13.09, 13.18, 12.87, 12.58, 12.37, 12.28, 12.3, 12.06, 12.31, 12.21, 11.71, 11.29, 10.88, 10.45, 10.57, 10.25, 10.27, 10.22, 9.99, 9.29, 8.35, 8.05, 8.18, 8.31, 9.2, 9.23, 9.52, 9.74, 9.94, 10.2, 10.42, 11.18, 11.75, 11.88, 11.63, 11.63, 11.95, 11.96, 11.79, 11.45, 11.34, 11.06, 11.24, 11.24, 11.29, 11.28, 11.33, 11.51, 11.48, 11.35, 11.41, 11.45, 11.56, 11.4, 11.28, 11.14, 11.07, 11.19, 11.02, 11.26, 11.43, 11.63, 11.33, 10.96, 10.31, 10.4, 11.16, 12.12, 12.16, 12.22, 12.05, 11.78, 11.95, 12.05, 12.25, 12.17, 11.71, 12.13, 11.83, 12.13, 12.38, 12.27, 12.28, 12.25, 12.18, 11.96, 11.9, 11.59, 11.6, 11.47, 12.31, 12.55, 12.27, 12.59, 12.59, 12.05, 11.19 ], "yaxis": "y" }, { "hovertemplate": "variable=Price_Corr_6M
Date=%{x}
value=%{y}", "legendgroup": "Price_Corr_6M", "line": { "color": "#EF553B", "dash": "solid" }, "mode": "lines", "name": "Price_Corr_6M", "showlegend": true, "type": "scattergl", "x": [ "2021-03-01T00:00:00", "2021-02-01T00:00:00", "2021-01-01T00:00:00", "2020-12-01T00:00:00", "2020-11-01T00:00:00", "2020-10-01T00:00:00", "2020-09-01T00:00:00", "2020-08-01T00:00:00", "2020-07-01T00:00:00", "2020-06-01T00:00:00", "2020-05-01T00:00:00", "2020-04-01T00:00:00", "2020-03-01T00:00:00", "2020-02-01T00:00:00", "2020-01-01T00:00:00", "2019-12-01T00:00:00", "2019-11-01T00:00:00", "2019-10-01T00:00:00", "2019-09-01T00:00:00", "2019-08-01T00:00:00", "2019-07-01T00:00:00", "2019-06-01T00:00:00", "2019-05-01T00:00:00", "2019-04-01T00:00:00", "2019-03-01T00:00:00", "2019-02-01T00:00:00", "2019-01-01T00:00:00", "2018-12-01T00:00:00", "2018-11-01T00:00:00", "2018-10-01T00:00:00", "2018-09-01T00:00:00", "2018-08-01T00:00:00", "2018-07-01T00:00:00", "2018-06-01T00:00:00", "2018-05-01T00:00:00", "2018-04-01T00:00:00", "2018-03-01T00:00:00", "2018-02-01T00:00:00", "2018-01-01T00:00:00", "2017-12-01T00:00:00", "2017-11-01T00:00:00", "2017-10-01T00:00:00", "2017-09-01T00:00:00", "2017-08-01T00:00:00", "2017-07-01T00:00:00", "2017-06-01T00:00:00", "2017-05-01T00:00:00", "2017-04-01T00:00:00", "2017-03-01T00:00:00", "2017-02-01T00:00:00", "2017-01-01T00:00:00", "2016-12-01T00:00:00", "2016-11-01T00:00:00", "2016-10-01T00:00:00", "2016-09-01T00:00:00", "2016-08-01T00:00:00", "2016-07-01T00:00:00", "2016-06-01T00:00:00", "2016-05-01T00:00:00", "2016-04-01T00:00:00", "2016-03-01T00:00:00", "2016-02-01T00:00:00", "2016-01-01T00:00:00", "2015-12-01T00:00:00", "2015-11-01T00:00:00", "2015-10-01T00:00:00", "2015-09-01T00:00:00", "2015-08-01T00:00:00", "2015-07-01T00:00:00", "2015-06-01T00:00:00", "2015-05-01T00:00:00", "2015-04-01T00:00:00", "2015-03-01T00:00:00", "2015-02-01T00:00:00", "2015-01-01T00:00:00", "2014-12-01T00:00:00", "2014-11-01T00:00:00", "2014-10-01T00:00:00", "2014-09-01T00:00:00", "2014-08-01T00:00:00", "2014-07-01T00:00:00", "2014-06-01T00:00:00", "2014-05-01T00:00:00", "2014-04-01T00:00:00", "2014-03-01T00:00:00", "2014-02-01T00:00:00", "2014-01-01T00:00:00", "2013-12-01T00:00:00", "2013-11-01T00:00:00", "2013-10-01T00:00:00", "2013-09-01T00:00:00", "2013-08-01T00:00:00", "2013-07-01T00:00:00", "2013-06-01T00:00:00", "2013-05-01T00:00:00", "2013-04-01T00:00:00", "2013-03-01T00:00:00", "2013-02-01T00:00:00", "2013-01-01T00:00:00", "2012-12-01T00:00:00", "2012-11-01T00:00:00", "2012-10-01T00:00:00", "2012-09-01T00:00:00", "2012-08-01T00:00:00", "2012-07-01T00:00:00", "2012-06-01T00:00:00", "2012-05-01T00:00:00", "2012-04-01T00:00:00", "2012-03-01T00:00:00", "2012-02-01T00:00:00", "2012-01-01T00:00:00", "2011-12-01T00:00:00", "2011-11-01T00:00:00", "2011-10-01T00:00:00", "2011-09-01T00:00:00", "2011-08-01T00:00:00", "2011-07-01T00:00:00", "2011-06-01T00:00:00", "2011-05-01T00:00:00", "2011-04-01T00:00:00", "2011-03-01T00:00:00", "2011-02-01T00:00:00", "2011-01-01T00:00:00", "2010-12-01T00:00:00", "2010-11-01T00:00:00", "2010-10-01T00:00:00", "2010-09-01T00:00:00", "2010-08-01T00:00:00", "2010-07-01T00:00:00", "2010-06-01T00:00:00", "2010-05-01T00:00:00", "2010-04-01T00:00:00", "2010-03-01T00:00:00", "2010-02-01T00:00:00", "2010-01-01T00:00:00", "2009-12-01T00:00:00", "2009-11-01T00:00:00", "2009-10-01T00:00:00", "2009-09-01T00:00:00", "2009-08-01T00:00:00", "2009-07-01T00:00:00", "2009-06-01T00:00:00", "2009-05-01T00:00:00", "2009-04-01T00:00:00", "2009-03-01T00:00:00", "2009-02-01T00:00:00", "2009-01-01T00:00:00", "2008-12-01T00:00:00", "2008-11-01T00:00:00", "2008-10-01T00:00:00", "2008-09-01T00:00:00", "2008-08-01T00:00:00", "2008-07-01T00:00:00", "2008-06-01T00:00:00", "2008-05-01T00:00:00", "2008-04-01T00:00:00", "2008-03-01T00:00:00", "2008-02-01T00:00:00", "2008-01-01T00:00:00", "2007-12-01T00:00:00", "2007-11-01T00:00:00", "2007-10-01T00:00:00", "2007-09-01T00:00:00", "2007-08-01T00:00:00", "2007-07-01T00:00:00", "2007-06-01T00:00:00", "2007-05-01T00:00:00", "2007-04-01T00:00:00", "2007-03-01T00:00:00", "2007-02-01T00:00:00", "2007-01-01T00:00:00", "2006-12-01T00:00:00", "2006-11-01T00:00:00", "2006-10-01T00:00:00", "2006-09-01T00:00:00", "2006-08-01T00:00:00", "2006-07-01T00:00:00", "2006-06-01T00:00:00", "2006-05-01T00:00:00", "2006-04-01T00:00:00", "2006-03-01T00:00:00", "2006-02-01T00:00:00", "2006-01-01T00:00:00", "2005-12-01T00:00:00", "2005-11-01T00:00:00", "2005-10-01T00:00:00", "2005-09-01T00:00:00", "2005-08-01T00:00:00", "2005-07-01T00:00:00", "2005-06-01T00:00:00", "2005-05-01T00:00:00", "2005-04-01T00:00:00", "2005-03-01T00:00:00", "2005-02-01T00:00:00", "2005-01-01T00:00:00", "2004-12-01T00:00:00", "2004-11-01T00:00:00", "2004-10-01T00:00:00", "2004-09-01T00:00:00", "2004-08-01T00:00:00", "2004-07-01T00:00:00", "2004-06-01T00:00:00", "2004-05-01T00:00:00", "2004-04-01T00:00:00", "2004-03-01T00:00:00", "2004-02-01T00:00:00", "2004-01-01T00:00:00", "2003-12-01T00:00:00", "2003-11-01T00:00:00", "2003-10-01T00:00:00", "2003-09-01T00:00:00", "2003-08-01T00:00:00", "2003-07-01T00:00:00", "2003-06-01T00:00:00", "2003-05-01T00:00:00", "2003-04-01T00:00:00", "2003-03-01T00:00:00", "2003-02-01T00:00:00", "2003-01-01T00:00:00", "2002-12-01T00:00:00", "2002-11-01T00:00:00", "2002-10-01T00:00:00", "2002-09-01T00:00:00", "2002-08-01T00:00:00", "2002-07-01T00:00:00", "2002-06-01T00:00:00", "2002-05-01T00:00:00", "2002-04-01T00:00:00", "2002-03-01T00:00:00", "2002-02-01T00:00:00", "2002-01-01T00:00:00", "2001-12-01T00:00:00", "2001-11-01T00:00:00", "2001-10-01T00:00:00", "2001-09-01T00:00:00", "2001-08-01T00:00:00", "2001-07-01T00:00:00", "2001-06-01T00:00:00", "2001-05-01T00:00:00", "2001-04-01T00:00:00", "2001-03-01T00:00:00", "2001-02-01T00:00:00", "2001-01-01T00:00:00", "2000-12-01T00:00:00", "2000-11-01T00:00:00", "2000-10-01T00:00:00", "2000-09-01T00:00:00", "2000-08-01T00:00:00", "2000-07-01T00:00:00", "2000-06-01T00:00:00", "2000-05-01T00:00:00", "2000-04-01T00:00:00", "2000-03-01T00:00:00", "2000-02-01T00:00:00", "2000-01-01T00:00:00", "1999-12-01T00:00:00", "1999-11-01T00:00:00", "1999-10-01T00:00:00", "1999-09-01T00:00:00", "1999-08-01T00:00:00", "1999-07-01T00:00:00", "1999-06-01T00:00:00", "1999-05-01T00:00:00", "1999-04-01T00:00:00", "1999-03-01T00:00:00", "1999-02-01T00:00:00", "1999-01-01T00:00:00", "1998-12-01T00:00:00", "1998-11-01T00:00:00", "1998-10-01T00:00:00", "1998-09-01T00:00:00", "1998-08-01T00:00:00", "1998-07-01T00:00:00", "1998-06-01T00:00:00", "1998-05-01T00:00:00", "1998-04-01T00:00:00", "1998-03-01T00:00:00", "1998-02-01T00:00:00", "1998-01-01T00:00:00", "1997-12-01T00:00:00", "1997-11-01T00:00:00", "1997-10-01T00:00:00", "1997-09-01T00:00:00", "1997-08-01T00:00:00", "1997-07-01T00:00:00", "1997-06-01T00:00:00", "1997-05-01T00:00:00", "1997-04-01T00:00:00", "1997-03-01T00:00:00", "1997-02-01T00:00:00", "1997-01-01T00:00:00", "1996-12-01T00:00:00", "1996-11-01T00:00:00", "1996-10-01T00:00:00", "1996-09-01T00:00:00", "1996-08-01T00:00:00", "1996-07-01T00:00:00", "1996-06-01T00:00:00", "1996-05-01T00:00:00", "1996-04-01T00:00:00", "1996-03-01T00:00:00", "1996-02-01T00:00:00", "1996-01-01T00:00:00", "1995-12-01T00:00:00", "1995-11-01T00:00:00", "1995-10-01T00:00:00", "1995-09-01T00:00:00", "1995-08-01T00:00:00", "1995-07-01T00:00:00", "1995-06-01T00:00:00", "1995-05-01T00:00:00", "1995-04-01T00:00:00", "1995-03-01T00:00:00", "1995-02-01T00:00:00", "1995-01-01T00:00:00", "1994-12-01T00:00:00", "1994-11-01T00:00:00", "1994-10-01T00:00:00", "1994-09-01T00:00:00", "1994-08-01T00:00:00", "1994-07-01T00:00:00", "1994-06-01T00:00:00", "1994-05-01T00:00:00", "1994-04-01T00:00:00", "1994-03-01T00:00:00", "1994-02-01T00:00:00", "1994-01-01T00:00:00", "1993-12-01T00:00:00", "1993-11-01T00:00:00", "1993-10-01T00:00:00", "1993-09-01T00:00:00", "1993-08-01T00:00:00", "1993-07-01T00:00:00", "1993-06-01T00:00:00", "1993-05-01T00:00:00", "1993-04-01T00:00:00", "1993-03-01T00:00:00", "1993-02-01T00:00:00", "1993-01-01T00:00:00", "1992-12-01T00:00:00", "1992-11-01T00:00:00", "1992-10-01T00:00:00", "1992-09-01T00:00:00", "1992-08-01T00:00:00", "1992-07-01T00:00:00", "1992-06-01T00:00:00", "1992-05-01T00:00:00", "1992-04-01T00:00:00", "1992-03-01T00:00:00", "1992-02-01T00:00:00", "1992-01-01T00:00:00", "1991-12-01T00:00:00", "1991-11-01T00:00:00", "1991-10-01T00:00:00", "1991-09-01T00:00:00", "1991-08-01T00:00:00", "1991-07-01T00:00:00", "1991-06-01T00:00:00", "1991-05-01T00:00:00", "1991-04-01T00:00:00", "1991-03-01T00:00:00", "1991-02-01T00:00:00", "1991-01-01T00:00:00", "1990-12-01T00:00:00", "1990-11-01T00:00:00", "1990-10-01T00:00:00", "1990-09-01T00:00:00", "1990-08-01T00:00:00", "1990-07-01T00:00:00", "1990-06-01T00:00:00", "1990-05-01T00:00:00", "1990-04-01T00:00:00", "1990-03-01T00:00:00", "1990-02-01T00:00:00", "1990-01-01T00:00:00", "1989-12-01T00:00:00", "1989-11-01T00:00:00", "1989-10-01T00:00:00", "1989-09-01T00:00:00", "1989-08-01T00:00:00", "1989-07-01T00:00:00", "1989-06-01T00:00:00", "1989-05-01T00:00:00", "1989-04-01T00:00:00", "1989-03-01T00:00:00", "1989-02-01T00:00:00", "1989-01-01T00:00:00", "1988-12-01T00:00:00", "1988-11-01T00:00:00", "1988-10-01T00:00:00", "1988-09-01T00:00:00", "1988-08-01T00:00:00", "1988-07-01T00:00:00", "1988-06-01T00:00:00", "1988-05-01T00:00:00", "1988-04-01T00:00:00", "1988-03-01T00:00:00", "1988-02-01T00:00:00", "1988-01-01T00:00:00", "1987-12-01T00:00:00", "1987-11-01T00:00:00", "1987-10-01T00:00:00", "1987-09-01T00:00:00", "1987-08-01T00:00:00", "1987-07-01T00:00:00", "1987-06-01T00:00:00", "1987-05-01T00:00:00", "1987-04-01T00:00:00", "1987-03-01T00:00:00", "1987-02-01T00:00:00", "1987-01-01T00:00:00", "1986-12-01T00:00:00", "1986-11-01T00:00:00", "1986-10-01T00:00:00", "1986-09-01T00:00:00", "1986-08-01T00:00:00", "1986-07-01T00:00:00", "1986-06-01T00:00:00", "1986-05-01T00:00:00", "1986-04-01T00:00:00", "1986-03-01T00:00:00", "1986-02-01T00:00:00", "1986-01-01T00:00:00", "1985-12-01T00:00:00", "1985-11-01T00:00:00", "1985-10-01T00:00:00", "1985-09-01T00:00:00", "1985-08-01T00:00:00", "1985-07-01T00:00:00", "1985-06-01T00:00:00", "1985-05-01T00:00:00", "1985-04-01T00:00:00", "1985-03-01T00:00:00", "1985-02-01T00:00:00", "1985-01-01T00:00:00", "1984-12-01T00:00:00", "1984-11-01T00:00:00", "1984-10-01T00:00:00", "1984-09-01T00:00:00", "1984-08-01T00:00:00", "1984-07-01T00:00:00", "1984-06-01T00:00:00", "1984-05-01T00:00:00", "1984-04-01T00:00:00", "1984-03-01T00:00:00", "1984-02-01T00:00:00", "1984-01-01T00:00:00", "1983-12-01T00:00:00", "1983-11-01T00:00:00", "1983-10-01T00:00:00", "1983-09-01T00:00:00", "1983-08-01T00:00:00", "1983-07-01T00:00:00", "1983-06-01T00:00:00", "1983-05-01T00:00:00", "1983-04-01T00:00:00", "1983-03-01T00:00:00", "1983-02-01T00:00:00", "1983-01-01T00:00:00", "1982-12-01T00:00:00", "1982-11-01T00:00:00", "1982-10-01T00:00:00", "1982-09-01T00:00:00", "1982-08-01T00:00:00", "1982-07-01T00:00:00", "1982-06-01T00:00:00", "1982-05-01T00:00:00", "1982-04-01T00:00:00", "1982-03-01T00:00:00", "1982-02-01T00:00:00", "1982-01-01T00:00:00", "1981-12-01T00:00:00", "1981-11-01T00:00:00", "1981-10-01T00:00:00", "1981-09-01T00:00:00", "1981-08-01T00:00:00", "1981-07-01T00:00:00", "1981-06-01T00:00:00", "1981-05-01T00:00:00", "1981-04-01T00:00:00", "1981-03-01T00:00:00", "1981-02-01T00:00:00", "1981-01-01T00:00:00", "1980-12-01T00:00:00", "1980-11-01T00:00:00", "1980-10-01T00:00:00", "1980-09-01T00:00:00", "1980-08-01T00:00:00", "1980-07-01T00:00:00", "1980-06-01T00:00:00", "1980-05-01T00:00:00", "1980-04-01T00:00:00", "1980-03-01T00:00:00", "1980-02-01T00:00:00", "1980-01-01T00:00:00", "1979-12-01T00:00:00", "1979-11-01T00:00:00", "1979-10-01T00:00:00", "1979-09-01T00:00:00", "1979-08-01T00:00:00", "1979-07-01T00:00:00", "1979-06-01T00:00:00", "1979-05-01T00:00:00", "1979-04-01T00:00:00", "1979-03-01T00:00:00", "1979-02-01T00:00:00", "1979-01-01T00:00:00", "1978-12-01T00:00:00", "1978-11-01T00:00:00", "1978-10-01T00:00:00", "1978-09-01T00:00:00", "1978-08-01T00:00:00", "1978-07-01T00:00:00", "1978-06-01T00:00:00", "1978-05-01T00:00:00", "1978-04-01T00:00:00", "1978-03-01T00:00:00", "1978-02-01T00:00:00", "1978-01-01T00:00:00", "1977-12-01T00:00:00", "1977-11-01T00:00:00", "1977-10-01T00:00:00", "1977-09-01T00:00:00", "1977-08-01T00:00:00", "1977-07-01T00:00:00", "1977-06-01T00:00:00", "1977-05-01T00:00:00", "1977-04-01T00:00:00", "1977-03-01T00:00:00", "1977-02-01T00:00:00", "1977-01-01T00:00:00", "1976-12-01T00:00:00", "1976-11-01T00:00:00", "1976-10-01T00:00:00", "1976-09-01T00:00:00", "1976-08-01T00:00:00", "1976-07-01T00:00:00", "1976-06-01T00:00:00", "1976-05-01T00:00:00", "1976-04-01T00:00:00", "1976-03-01T00:00:00", "1976-02-01T00:00:00", "1976-01-01T00:00:00", "1975-12-01T00:00:00", "1975-11-01T00:00:00", "1975-10-01T00:00:00", "1975-09-01T00:00:00", "1975-08-01T00:00:00", "1975-07-01T00:00:00", "1975-06-01T00:00:00", "1975-05-01T00:00:00", "1975-04-01T00:00:00", "1975-03-01T00:00:00", "1975-02-01T00:00:00", "1975-01-01T00:00:00", "1974-12-01T00:00:00", "1974-11-01T00:00:00", "1974-10-01T00:00:00", "1974-09-01T00:00:00", "1974-08-01T00:00:00", "1974-07-01T00:00:00", "1974-06-01T00:00:00", "1974-05-01T00:00:00", "1974-04-01T00:00:00", "1974-03-01T00:00:00", "1974-02-01T00:00:00", "1974-01-01T00:00:00", "1973-12-01T00:00:00", "1973-11-01T00:00:00", "1973-10-01T00:00:00", "1973-09-01T00:00:00", "1973-08-01T00:00:00", "1973-07-01T00:00:00", "1973-06-01T00:00:00", "1973-05-01T00:00:00", "1973-04-01T00:00:00", "1973-03-01T00:00:00", "1973-02-01T00:00:00", "1973-01-01T00:00:00", "1972-12-01T00:00:00", "1972-11-01T00:00:00", "1972-10-01T00:00:00", "1972-09-01T00:00:00", "1972-08-01T00:00:00", "1972-07-01T00:00:00", "1972-06-01T00:00:00", "1972-05-01T00:00:00", "1972-04-01T00:00:00", "1972-03-01T00:00:00", "1972-02-01T00:00:00", "1972-01-01T00:00:00", "1971-12-01T00:00:00", "1971-11-01T00:00:00", "1971-10-01T00:00:00", "1971-09-01T00:00:00", "1971-08-01T00:00:00", "1971-07-01T00:00:00", "1971-06-01T00:00:00", "1971-05-01T00:00:00", "1971-04-01T00:00:00", "1971-03-01T00:00:00", "1971-02-01T00:00:00", "1971-01-01T00:00:00", "1970-12-01T00:00:00", "1970-11-01T00:00:00", "1970-10-01T00:00:00", "1970-09-01T00:00:00", "1970-08-01T00:00:00", "1970-07-01T00:00:00", "1970-06-01T00:00:00", "1970-05-01T00:00:00", "1970-04-01T00:00:00", "1970-03-01T00:00:00", "1970-02-01T00:00:00", "1970-01-01T00:00:00", "1969-12-01T00:00:00", "1969-11-01T00:00:00", "1969-10-01T00:00:00", "1969-09-01T00:00:00", "1969-08-01T00:00:00", "1969-07-01T00:00:00", "1969-06-01T00:00:00", "1969-05-01T00:00:00", "1969-04-01T00:00:00", "1969-03-01T00:00:00", "1969-02-01T00:00:00", "1969-01-01T00:00:00", "1968-12-01T00:00:00", "1968-11-01T00:00:00", "1968-10-01T00:00:00", "1968-09-01T00:00:00", "1968-08-01T00:00:00", "1968-07-01T00:00:00", "1968-06-01T00:00:00", "1968-05-01T00:00:00", "1968-04-01T00:00:00", "1968-03-01T00:00:00", "1968-02-01T00:00:00", "1968-01-01T00:00:00", "1967-12-01T00:00:00", "1967-11-01T00:00:00", "1967-10-01T00:00:00", "1967-09-01T00:00:00", "1967-08-01T00:00:00", "1967-07-01T00:00:00", "1967-06-01T00:00:00", "1967-05-01T00:00:00", "1967-04-01T00:00:00", "1967-03-01T00:00:00", "1967-02-01T00:00:00", "1967-01-01T00:00:00", "1966-12-01T00:00:00", "1966-11-01T00:00:00", "1966-10-01T00:00:00", "1966-09-01T00:00:00", "1966-08-01T00:00:00", "1966-07-01T00:00:00", "1966-06-01T00:00:00", "1966-05-01T00:00:00", "1966-04-01T00:00:00", "1966-03-01T00:00:00", "1966-02-01T00:00:00", "1966-01-01T00:00:00", "1965-12-01T00:00:00", "1965-11-01T00:00:00", "1965-10-01T00:00:00", "1965-09-01T00:00:00", "1965-08-01T00:00:00", "1965-07-01T00:00:00", "1965-06-01T00:00:00", "1965-05-01T00:00:00", "1965-04-01T00:00:00", "1965-03-01T00:00:00", "1965-02-01T00:00:00", "1965-01-01T00:00:00", "1964-12-01T00:00:00", "1964-11-01T00:00:00", "1964-10-01T00:00:00", "1964-09-01T00:00:00", "1964-08-01T00:00:00", "1964-07-01T00:00:00", "1964-06-01T00:00:00", "1964-05-01T00:00:00", "1964-04-01T00:00:00", "1964-03-01T00:00:00", "1964-02-01T00:00:00", "1964-01-01T00:00:00", "1963-12-01T00:00:00", "1963-11-01T00:00:00", "1963-10-01T00:00:00", "1963-09-01T00:00:00", "1963-08-01T00:00:00", "1963-07-01T00:00:00", "1963-06-01T00:00:00", "1963-05-01T00:00:00", "1963-04-01T00:00:00", "1963-03-01T00:00:00", "1963-02-01T00:00:00", "1963-01-01T00:00:00", "1962-12-01T00:00:00", "1962-11-01T00:00:00", "1962-10-01T00:00:00", "1962-09-01T00:00:00", "1962-08-01T00:00:00", "1962-07-01T00:00:00", "1962-06-01T00:00:00", "1962-05-01T00:00:00", "1962-04-01T00:00:00", "1962-03-01T00:00:00", "1962-02-01T00:00:00", "1962-01-01T00:00:00", "1961-12-01T00:00:00", "1961-11-01T00:00:00", "1961-10-01T00:00:00", "1961-09-01T00:00:00", "1961-08-01T00:00:00", "1961-07-01T00:00:00", "1961-06-01T00:00:00", "1961-05-01T00:00:00", "1961-04-01T00:00:00", "1961-03-01T00:00:00", "1961-02-01T00:00:00", "1961-01-01T00:00:00", "1960-12-01T00:00:00", "1960-11-01T00:00:00", "1960-10-01T00:00:00", "1960-09-01T00:00:00", "1960-08-01T00:00:00", "1960-07-01T00:00:00", "1960-06-01T00:00:00", "1960-05-01T00:00:00", "1960-04-01T00:00:00", "1960-03-01T00:00:00", "1960-02-01T00:00:00", "1960-01-01T00:00:00", "1959-12-01T00:00:00", "1959-11-01T00:00:00", "1959-10-01T00:00:00", "1959-09-01T00:00:00", "1959-08-01T00:00:00", "1959-07-01T00:00:00", "1959-06-01T00:00:00", "1959-05-01T00:00:00", "1959-04-01T00:00:00", "1959-03-01T00:00:00", "1959-02-01T00:00:00", "1959-01-01T00:00:00", "1958-12-01T00:00:00", "1958-11-01T00:00:00", "1958-10-01T00:00:00", "1958-09-01T00:00:00", "1958-08-01T00:00:00", "1958-07-01T00:00:00", "1958-06-01T00:00:00", "1958-05-01T00:00:00", "1958-04-01T00:00:00", "1958-03-01T00:00:00", "1958-02-01T00:00:00", "1958-01-01T00:00:00", "1957-12-01T00:00:00", "1957-11-01T00:00:00", "1957-10-01T00:00:00", "1957-09-01T00:00:00", "1957-08-01T00:00:00", "1957-07-01T00:00:00", "1957-06-01T00:00:00", "1957-05-01T00:00:00", "1957-04-01T00:00:00", "1957-03-01T00:00:00", "1957-02-01T00:00:00", "1957-01-01T00:00:00", "1956-12-01T00:00:00", "1956-11-01T00:00:00", "1956-10-01T00:00:00", "1956-09-01T00:00:00", "1956-08-01T00:00:00", "1956-07-01T00:00:00", "1956-06-01T00:00:00", "1956-05-01T00:00:00", "1956-04-01T00:00:00", "1956-03-01T00:00:00", "1956-02-01T00:00:00", "1956-01-01T00:00:00", "1955-12-01T00:00:00", "1955-11-01T00:00:00", "1955-10-01T00:00:00", "1955-09-01T00:00:00", "1955-08-01T00:00:00", "1955-07-01T00:00:00", "1955-06-01T00:00:00", "1955-05-01T00:00:00", "1955-04-01T00:00:00", "1955-03-01T00:00:00", "1955-02-01T00:00:00", "1955-01-01T00:00:00", "1954-12-01T00:00:00", "1954-11-01T00:00:00", "1954-10-01T00:00:00", "1954-09-01T00:00:00", "1954-08-01T00:00:00", "1954-07-01T00:00:00", "1954-06-01T00:00:00", "1954-05-01T00:00:00", "1954-04-01T00:00:00", "1954-03-01T00:00:00", "1954-02-01T00:00:00", "1954-01-01T00:00:00", "1953-12-01T00:00:00", "1953-11-01T00:00:00", "1953-10-01T00:00:00", "1953-09-01T00:00:00", "1953-08-01T00:00:00", "1953-07-01T00:00:00", "1953-06-01T00:00:00", "1953-05-01T00:00:00", "1953-04-01T00:00:00", "1953-03-01T00:00:00", "1953-02-01T00:00:00", "1953-01-01T00:00:00", "1952-12-01T00:00:00", "1952-11-01T00:00:00", "1952-10-01T00:00:00", "1952-09-01T00:00:00", "1952-08-01T00:00:00", "1952-07-01T00:00:00", "1952-06-01T00:00:00", "1952-05-01T00:00:00", "1952-04-01T00:00:00", "1952-03-01T00:00:00", "1952-02-01T00:00:00", "1952-01-01T00:00:00", "1951-12-01T00:00:00", "1951-11-01T00:00:00", "1951-10-01T00:00:00", "1951-09-01T00:00:00", "1951-08-01T00:00:00", "1951-07-01T00:00:00", "1951-06-01T00:00:00", "1951-05-01T00:00:00", "1951-04-01T00:00:00", "1951-03-01T00:00:00", "1951-02-01T00:00:00", "1951-01-01T00:00:00", "1950-12-01T00:00:00", "1950-11-01T00:00:00", "1950-10-01T00:00:00", "1950-09-01T00:00:00", "1950-08-01T00:00:00", "1950-07-01T00:00:00", "1950-06-01T00:00:00", "1950-05-01T00:00:00", "1950-04-01T00:00:00", "1950-03-01T00:00:00", "1950-02-01T00:00:00", "1950-01-01T00:00:00", "1949-12-01T00:00:00", "1949-11-01T00:00:00", "1949-10-01T00:00:00", "1949-09-01T00:00:00", "1949-08-01T00:00:00", "1949-07-01T00:00:00", "1949-06-01T00:00:00", "1949-05-01T00:00:00", "1949-04-01T00:00:00", "1949-03-01T00:00:00", "1949-02-01T00:00:00", "1949-01-01T00:00:00", "1948-12-01T00:00:00", "1948-11-01T00:00:00", "1948-10-01T00:00:00", "1948-09-01T00:00:00", "1948-08-01T00:00:00", "1948-07-01T00:00:00", "1948-06-01T00:00:00", "1948-05-01T00:00:00", "1948-04-01T00:00:00", "1948-03-01T00:00:00", "1948-02-01T00:00:00", "1948-01-01T00:00:00", "1947-12-01T00:00:00", "1947-11-01T00:00:00", "1947-10-01T00:00:00", "1947-09-01T00:00:00", "1947-08-01T00:00:00", "1947-07-01T00:00:00", "1947-06-01T00:00:00", "1947-05-01T00:00:00", "1947-04-01T00:00:00", "1947-03-01T00:00:00", "1947-02-01T00:00:00", "1947-01-01T00:00:00", "1946-12-01T00:00:00", "1946-11-01T00:00:00", "1946-10-01T00:00:00", "1946-09-01T00:00:00", "1946-08-01T00:00:00", "1946-07-01T00:00:00", "1946-06-01T00:00:00", "1946-05-01T00:00:00", "1946-04-01T00:00:00", "1946-03-01T00:00:00", "1946-02-01T00:00:00", "1946-01-01T00:00:00", "1945-12-01T00:00:00", "1945-11-01T00:00:00", "1945-10-01T00:00:00", "1945-09-01T00:00:00", "1945-08-01T00:00:00", "1945-07-01T00:00:00", "1945-06-01T00:00:00", "1945-05-01T00:00:00", "1945-04-01T00:00:00", "1945-03-01T00:00:00", "1945-02-01T00:00:00", "1945-01-01T00:00:00", "1944-12-01T00:00:00", "1944-11-01T00:00:00", "1944-10-01T00:00:00", "1944-09-01T00:00:00", "1944-08-01T00:00:00", "1944-07-01T00:00:00", "1944-06-01T00:00:00", "1944-05-01T00:00:00", "1944-04-01T00:00:00", "1944-03-01T00:00:00", "1944-02-01T00:00:00", "1944-01-01T00:00:00", "1943-12-01T00:00:00", "1943-11-01T00:00:00", "1943-10-01T00:00:00", "1943-09-01T00:00:00", "1943-08-01T00:00:00", "1943-07-01T00:00:00", "1943-06-01T00:00:00", "1943-05-01T00:00:00", "1943-04-01T00:00:00", "1943-03-01T00:00:00", "1943-02-01T00:00:00", "1943-01-01T00:00:00", "1942-12-01T00:00:00", "1942-11-01T00:00:00", "1942-10-01T00:00:00", "1942-09-01T00:00:00", "1942-08-01T00:00:00", "1942-07-01T00:00:00", "1942-06-01T00:00:00", "1942-05-01T00:00:00", "1942-04-01T00:00:00", "1942-03-01T00:00:00", "1942-02-01T00:00:00", "1942-01-01T00:00:00", "1941-12-01T00:00:00", "1941-11-01T00:00:00", "1941-10-01T00:00:00", "1941-09-01T00:00:00", "1941-08-01T00:00:00", "1941-07-01T00:00:00", "1941-06-01T00:00:00", "1941-05-01T00:00:00", "1941-04-01T00:00:00", "1941-03-01T00:00:00", "1941-02-01T00:00:00", "1941-01-01T00:00:00", "1940-12-01T00:00:00", "1940-11-01T00:00:00", "1940-10-01T00:00:00", "1940-09-01T00:00:00", "1940-08-01T00:00:00", "1940-07-01T00:00:00", "1940-06-01T00:00:00", "1940-05-01T00:00:00", "1940-04-01T00:00:00", "1940-03-01T00:00:00", "1940-02-01T00:00:00", "1940-01-01T00:00:00", "1939-12-01T00:00:00", "1939-11-01T00:00:00", "1939-10-01T00:00:00", "1939-09-01T00:00:00", "1939-08-01T00:00:00", "1939-07-01T00:00:00", "1939-06-01T00:00:00", "1939-05-01T00:00:00", "1939-04-01T00:00:00", "1939-03-01T00:00:00", "1939-02-01T00:00:00", "1939-01-01T00:00:00", "1938-12-01T00:00:00", "1938-11-01T00:00:00", "1938-10-01T00:00:00", "1938-09-01T00:00:00", "1938-08-01T00:00:00", "1938-07-01T00:00:00", "1938-06-01T00:00:00", "1938-05-01T00:00:00", "1938-04-01T00:00:00", "1938-03-01T00:00:00", "1938-02-01T00:00:00", "1938-01-01T00:00:00", "1937-12-01T00:00:00", "1937-11-01T00:00:00", "1937-10-01T00:00:00", "1937-09-01T00:00:00", "1937-08-01T00:00:00", "1937-07-01T00:00:00", "1937-06-01T00:00:00", "1937-05-01T00:00:00", "1937-04-01T00:00:00", "1937-03-01T00:00:00", "1937-02-01T00:00:00", "1937-01-01T00:00:00", "1936-12-01T00:00:00", "1936-11-01T00:00:00", "1936-10-01T00:00:00", "1936-09-01T00:00:00", "1936-08-01T00:00:00", "1936-07-01T00:00:00", "1936-06-01T00:00:00", "1936-05-01T00:00:00", "1936-04-01T00:00:00", "1936-03-01T00:00:00", "1936-02-01T00:00:00", "1936-01-01T00:00:00", "1935-12-01T00:00:00", "1935-11-01T00:00:00", "1935-10-01T00:00:00", "1935-09-01T00:00:00", "1935-08-01T00:00:00", "1935-07-01T00:00:00", "1935-06-01T00:00:00", "1935-05-01T00:00:00", "1935-04-01T00:00:00", "1935-03-01T00:00:00", "1935-02-01T00:00:00", "1935-01-01T00:00:00", "1934-12-01T00:00:00", "1934-11-01T00:00:00", "1934-10-01T00:00:00", "1934-09-01T00:00:00", "1934-08-01T00:00:00", "1934-07-01T00:00:00", "1934-06-01T00:00:00", "1934-05-01T00:00:00", "1934-04-01T00:00:00", "1934-03-01T00:00:00", "1934-02-01T00:00:00", "1934-01-01T00:00:00", "1933-12-01T00:00:00", "1933-11-01T00:00:00", "1933-10-01T00:00:00", "1933-09-01T00:00:00", "1933-08-01T00:00:00", "1933-07-01T00:00:00", "1933-06-01T00:00:00", "1933-05-01T00:00:00", "1933-04-01T00:00:00", "1933-03-01T00:00:00", "1933-02-01T00:00:00", "1933-01-01T00:00:00", "1932-12-01T00:00:00", "1932-11-01T00:00:00", "1932-10-01T00:00:00", "1932-09-01T00:00:00", "1932-08-01T00:00:00", "1932-07-01T00:00:00", "1932-06-01T00:00:00", "1932-05-01T00:00:00", "1932-04-01T00:00:00", "1932-03-01T00:00:00", "1932-02-01T00:00:00", "1932-01-01T00:00:00", "1931-12-01T00:00:00", "1931-11-01T00:00:00", "1931-10-01T00:00:00", "1931-09-01T00:00:00", "1931-08-01T00:00:00", "1931-07-01T00:00:00", "1931-06-01T00:00:00", "1931-05-01T00:00:00", "1931-04-01T00:00:00", "1931-03-01T00:00:00", "1931-02-01T00:00:00", "1931-01-01T00:00:00", "1930-12-01T00:00:00", "1930-11-01T00:00:00", "1930-10-01T00:00:00", "1930-09-01T00:00:00", "1930-08-01T00:00:00", "1930-07-01T00:00:00", "1930-06-01T00:00:00", "1930-05-01T00:00:00", "1930-04-01T00:00:00", "1930-03-01T00:00:00", "1930-02-01T00:00:00", "1930-01-01T00:00:00", "1929-12-01T00:00:00", "1929-11-01T00:00:00", "1929-10-01T00:00:00", "1929-09-01T00:00:00", "1929-08-01T00:00:00", "1929-07-01T00:00:00", "1929-06-01T00:00:00", "1929-05-01T00:00:00", "1929-04-01T00:00:00", "1929-03-01T00:00:00", "1929-02-01T00:00:00", "1929-01-01T00:00:00", "1928-12-01T00:00:00", "1928-11-01T00:00:00", "1928-10-01T00:00:00", "1928-09-01T00:00:00", "1928-08-01T00:00:00", "1928-07-01T00:00:00", "1928-06-01T00:00:00", "1928-05-01T00:00:00", "1928-04-01T00:00:00", "1928-03-01T00:00:00", "1928-02-01T00:00:00", "1928-01-01T00:00:00", "1927-12-01T00:00:00", "1927-11-01T00:00:00", "1927-10-01T00:00:00", "1927-09-01T00:00:00", "1927-08-01T00:00:00", "1927-07-01T00:00:00", "1927-06-01T00:00:00", "1927-05-01T00:00:00", "1927-04-01T00:00:00", "1927-03-01T00:00:00", "1927-02-01T00:00:00", "1927-01-01T00:00:00", "1926-12-01T00:00:00", "1926-11-01T00:00:00", "1926-10-01T00:00:00", "1926-09-01T00:00:00", "1926-08-01T00:00:00", "1926-07-01T00:00:00", "1926-06-01T00:00:00", "1926-05-01T00:00:00", "1926-04-01T00:00:00", "1926-03-01T00:00:00", "1926-02-01T00:00:00", "1926-01-01T00:00:00", "1925-12-01T00:00:00", "1925-11-01T00:00:00", "1925-10-01T00:00:00", "1925-09-01T00:00:00", "1925-08-01T00:00:00", "1925-07-01T00:00:00", "1925-06-01T00:00:00", "1925-05-01T00:00:00", "1925-04-01T00:00:00", "1925-03-01T00:00:00", "1925-02-01T00:00:00", "1925-01-01T00:00:00", "1924-12-01T00:00:00", "1924-11-01T00:00:00", "1924-10-01T00:00:00", "1924-09-01T00:00:00", "1924-08-01T00:00:00", "1924-07-01T00:00:00", "1924-06-01T00:00:00", "1924-05-01T00:00:00", "1924-04-01T00:00:00", "1924-03-01T00:00:00", "1924-02-01T00:00:00", "1924-01-01T00:00:00", "1923-12-01T00:00:00", "1923-11-01T00:00:00", "1923-10-01T00:00:00", "1923-09-01T00:00:00", "1923-08-01T00:00:00", "1923-07-01T00:00:00", "1923-06-01T00:00:00", "1923-05-01T00:00:00", "1923-04-01T00:00:00", "1923-03-01T00:00:00", "1923-02-01T00:00:00", "1923-01-01T00:00:00", "1922-12-01T00:00:00", "1922-11-01T00:00:00", "1922-10-01T00:00:00", "1922-09-01T00:00:00", "1922-08-01T00:00:00", "1922-07-01T00:00:00", "1922-06-01T00:00:00", "1922-05-01T00:00:00", "1922-04-01T00:00:00", "1922-03-01T00:00:00", "1922-02-01T00:00:00", "1922-01-01T00:00:00", "1921-12-01T00:00:00", "1921-11-01T00:00:00", "1921-10-01T00:00:00", "1921-09-01T00:00:00", "1921-08-01T00:00:00", "1921-07-01T00:00:00", "1921-06-01T00:00:00", "1921-05-01T00:00:00", "1921-04-01T00:00:00", "1921-03-01T00:00:00", "1921-02-01T00:00:00", "1921-01-01T00:00:00", "1920-12-01T00:00:00", "1920-11-01T00:00:00", "1920-10-01T00:00:00", "1920-09-01T00:00:00", "1920-08-01T00:00:00", "1920-07-01T00:00:00", "1920-06-01T00:00:00", "1920-05-01T00:00:00", "1920-04-01T00:00:00", "1920-03-01T00:00:00", "1920-02-01T00:00:00", "1920-01-01T00:00:00", "1919-12-01T00:00:00", "1919-11-01T00:00:00", "1919-10-01T00:00:00", "1919-09-01T00:00:00", "1919-08-01T00:00:00", "1919-07-01T00:00:00", "1919-06-01T00:00:00", "1919-05-01T00:00:00", "1919-04-01T00:00:00", "1919-03-01T00:00:00", "1919-02-01T00:00:00", "1919-01-01T00:00:00", "1918-12-01T00:00:00", "1918-11-01T00:00:00", "1918-10-01T00:00:00", "1918-09-01T00:00:00", "1918-08-01T00:00:00", "1918-07-01T00:00:00", "1918-06-01T00:00:00", "1918-05-01T00:00:00", "1918-04-01T00:00:00", "1918-03-01T00:00:00", "1918-02-01T00:00:00", "1918-01-01T00:00:00", "1917-12-01T00:00:00", "1917-11-01T00:00:00", "1917-10-01T00:00:00", "1917-09-01T00:00:00", "1917-08-01T00:00:00", "1917-07-01T00:00:00", "1917-06-01T00:00:00", "1917-05-01T00:00:00", "1917-04-01T00:00:00", "1917-03-01T00:00:00", "1917-02-01T00:00:00", "1917-01-01T00:00:00", "1916-12-01T00:00:00", "1916-11-01T00:00:00", "1916-10-01T00:00:00", "1916-09-01T00:00:00", "1916-08-01T00:00:00", "1916-07-01T00:00:00", "1916-06-01T00:00:00", "1916-05-01T00:00:00", "1916-04-01T00:00:00", "1916-03-01T00:00:00", "1916-02-01T00:00:00", "1916-01-01T00:00:00", "1915-12-01T00:00:00", "1915-11-01T00:00:00", "1915-10-01T00:00:00", "1915-09-01T00:00:00", "1915-08-01T00:00:00", "1915-07-01T00:00:00", "1915-06-01T00:00:00", "1915-05-01T00:00:00", "1915-04-01T00:00:00", "1915-03-01T00:00:00", "1915-02-01T00:00:00", "1915-01-01T00:00:00", "1914-12-01T00:00:00", "1914-11-01T00:00:00", "1914-10-01T00:00:00", "1914-09-01T00:00:00", "1914-08-01T00:00:00", "1914-07-01T00:00:00", "1914-06-01T00:00:00", "1914-05-01T00:00:00", "1914-04-01T00:00:00", "1914-03-01T00:00:00", "1914-02-01T00:00:00", "1914-01-01T00:00:00", "1913-12-01T00:00:00", "1913-11-01T00:00:00", "1913-10-01T00:00:00", "1913-09-01T00:00:00", "1913-08-01T00:00:00", "1913-07-01T00:00:00", "1913-06-01T00:00:00", "1913-05-01T00:00:00", "1913-04-01T00:00:00", "1913-03-01T00:00:00", "1913-02-01T00:00:00", "1913-01-01T00:00:00", "1912-12-01T00:00:00", "1912-11-01T00:00:00", "1912-10-01T00:00:00", "1912-09-01T00:00:00", "1912-08-01T00:00:00", "1912-07-01T00:00:00", "1912-06-01T00:00:00", "1912-05-01T00:00:00", "1912-04-01T00:00:00", "1912-03-01T00:00:00", "1912-02-01T00:00:00", "1912-01-01T00:00:00", "1911-12-01T00:00:00", "1911-11-01T00:00:00", "1911-10-01T00:00:00", "1911-09-01T00:00:00", "1911-08-01T00:00:00", "1911-07-01T00:00:00", "1911-06-01T00:00:00", "1911-05-01T00:00:00", "1911-04-01T00:00:00", "1911-03-01T00:00:00", "1911-02-01T00:00:00", "1911-01-01T00:00:00", "1910-12-01T00:00:00", "1910-11-01T00:00:00", "1910-10-01T00:00:00", "1910-09-01T00:00:00", "1910-08-01T00:00:00", "1910-07-01T00:00:00", "1910-06-01T00:00:00", "1910-05-01T00:00:00", "1910-04-01T00:00:00", "1910-03-01T00:00:00", "1910-02-01T00:00:00", "1910-01-01T00:00:00", "1909-12-01T00:00:00", "1909-11-01T00:00:00", "1909-10-01T00:00:00", "1909-09-01T00:00:00", "1909-08-01T00:00:00", "1909-07-01T00:00:00", "1909-06-01T00:00:00", "1909-05-01T00:00:00", "1909-04-01T00:00:00", "1909-03-01T00:00:00", "1909-02-01T00:00:00", "1909-01-01T00:00:00", "1908-12-01T00:00:00", "1908-11-01T00:00:00", "1908-10-01T00:00:00", "1908-09-01T00:00:00", "1908-08-01T00:00:00", "1908-07-01T00:00:00", "1908-06-01T00:00:00", "1908-05-01T00:00:00", "1908-04-01T00:00:00", "1908-03-01T00:00:00", "1908-02-01T00:00:00", "1908-01-01T00:00:00", "1907-12-01T00:00:00", "1907-11-01T00:00:00", "1907-10-01T00:00:00", "1907-09-01T00:00:00", "1907-08-01T00:00:00", "1907-07-01T00:00:00", "1907-06-01T00:00:00", "1907-05-01T00:00:00", "1907-04-01T00:00:00", "1907-03-01T00:00:00", "1907-02-01T00:00:00", "1907-01-01T00:00:00", "1906-12-01T00:00:00", "1906-11-01T00:00:00", "1906-10-01T00:00:00", "1906-09-01T00:00:00", "1906-08-01T00:00:00", "1906-07-01T00:00:00", "1906-06-01T00:00:00", "1906-05-01T00:00:00", "1906-04-01T00:00:00", "1906-03-01T00:00:00", "1906-02-01T00:00:00", "1906-01-01T00:00:00", "1905-12-01T00:00:00", "1905-11-01T00:00:00", "1905-10-01T00:00:00", "1905-09-01T00:00:00", "1905-08-01T00:00:00", "1905-07-01T00:00:00", "1905-06-01T00:00:00", "1905-05-01T00:00:00", "1905-04-01T00:00:00", "1905-03-01T00:00:00", "1905-02-01T00:00:00", "1905-01-01T00:00:00", "1904-12-01T00:00:00", "1904-11-01T00:00:00", "1904-10-01T00:00:00", "1904-09-01T00:00:00", "1904-08-01T00:00:00", "1904-07-01T00:00:00", "1904-06-01T00:00:00", "1904-05-01T00:00:00", "1904-04-01T00:00:00", "1904-03-01T00:00:00", "1904-02-01T00:00:00", "1904-01-01T00:00:00", "1903-12-01T00:00:00", "1903-11-01T00:00:00", "1903-10-01T00:00:00", "1903-09-01T00:00:00", "1903-08-01T00:00:00", "1903-07-01T00:00:00", "1903-06-01T00:00:00", "1903-05-01T00:00:00", "1903-04-01T00:00:00", "1903-03-01T00:00:00", "1903-02-01T00:00:00", "1903-01-01T00:00:00", "1902-12-01T00:00:00", "1902-11-01T00:00:00", "1902-10-01T00:00:00", "1902-09-01T00:00:00", "1902-08-01T00:00:00", "1902-07-01T00:00:00", "1902-06-01T00:00:00", "1902-05-01T00:00:00", "1902-04-01T00:00:00", "1902-03-01T00:00:00", "1902-02-01T00:00:00", "1902-01-01T00:00:00", "1901-12-01T00:00:00", "1901-11-01T00:00:00", "1901-10-01T00:00:00", "1901-09-01T00:00:00", "1901-08-01T00:00:00", "1901-07-01T00:00:00", "1901-06-01T00:00:00", "1901-05-01T00:00:00", "1901-04-01T00:00:00", "1901-03-01T00:00:00", "1901-02-01T00:00:00", "1901-01-01T00:00:00", "1900-12-01T00:00:00", "1900-11-01T00:00:00", "1900-10-01T00:00:00", "1900-09-01T00:00:00", "1900-08-01T00:00:00", "1900-07-01T00:00:00", "1900-06-01T00:00:00", "1900-05-01T00:00:00", "1900-04-01T00:00:00", "1900-03-01T00:00:00", "1900-02-01T00:00:00", "1900-01-01T00:00:00", "1899-12-01T00:00:00", "1899-11-01T00:00:00", "1899-10-01T00:00:00", "1899-09-01T00:00:00", "1899-08-01T00:00:00", "1899-07-01T00:00:00", "1899-06-01T00:00:00", "1899-05-01T00:00:00", "1899-04-01T00:00:00", "1899-03-01T00:00:00", "1899-02-01T00:00:00", "1899-01-01T00:00:00", "1898-12-01T00:00:00", "1898-11-01T00:00:00", "1898-10-01T00:00:00", "1898-09-01T00:00:00", "1898-08-01T00:00:00", "1898-07-01T00:00:00", "1898-06-01T00:00:00", "1898-05-01T00:00:00", "1898-04-01T00:00:00", "1898-03-01T00:00:00", "1898-02-01T00:00:00", "1898-01-01T00:00:00", "1897-12-01T00:00:00", "1897-11-01T00:00:00", "1897-10-01T00:00:00", "1897-09-01T00:00:00", "1897-08-01T00:00:00", "1897-07-01T00:00:00", "1897-06-01T00:00:00", "1897-05-01T00:00:00", "1897-04-01T00:00:00", "1897-03-01T00:00:00", "1897-02-01T00:00:00", "1897-01-01T00:00:00", "1896-12-01T00:00:00", "1896-11-01T00:00:00", "1896-10-01T00:00:00", "1896-09-01T00:00:00", "1896-08-01T00:00:00", "1896-07-01T00:00:00", "1896-06-01T00:00:00", "1896-05-01T00:00:00", "1896-04-01T00:00:00", "1896-03-01T00:00:00", "1896-02-01T00:00:00", "1896-01-01T00:00:00", "1895-12-01T00:00:00", "1895-11-01T00:00:00", "1895-10-01T00:00:00", "1895-09-01T00:00:00", "1895-08-01T00:00:00", "1895-07-01T00:00:00", "1895-06-01T00:00:00", "1895-05-01T00:00:00", "1895-04-01T00:00:00", "1895-03-01T00:00:00", "1895-02-01T00:00:00", "1895-01-01T00:00:00", "1894-12-01T00:00:00", "1894-11-01T00:00:00", "1894-10-01T00:00:00", "1894-09-01T00:00:00", "1894-08-01T00:00:00", "1894-07-01T00:00:00", "1894-06-01T00:00:00", "1894-05-01T00:00:00", "1894-04-01T00:00:00", "1894-03-01T00:00:00", "1894-02-01T00:00:00", "1894-01-01T00:00:00", "1893-12-01T00:00:00", "1893-11-01T00:00:00", "1893-10-01T00:00:00", "1893-09-01T00:00:00", "1893-08-01T00:00:00", "1893-07-01T00:00:00", "1893-06-01T00:00:00", "1893-05-01T00:00:00", "1893-04-01T00:00:00", "1893-03-01T00:00:00", "1893-02-01T00:00:00", "1893-01-01T00:00:00", "1892-12-01T00:00:00", "1892-11-01T00:00:00", "1892-10-01T00:00:00", "1892-09-01T00:00:00", "1892-08-01T00:00:00", "1892-07-01T00:00:00", "1892-06-01T00:00:00", "1892-05-01T00:00:00", "1892-04-01T00:00:00", "1892-03-01T00:00:00", "1892-02-01T00:00:00", "1892-01-01T00:00:00", "1891-12-01T00:00:00", "1891-11-01T00:00:00", "1891-10-01T00:00:00", "1891-09-01T00:00:00", "1891-08-01T00:00:00", "1891-07-01T00:00:00", "1891-06-01T00:00:00", "1891-05-01T00:00:00", "1891-04-01T00:00:00", "1891-03-01T00:00:00", "1891-02-01T00:00:00", "1891-01-01T00:00:00", "1890-12-01T00:00:00", "1890-11-01T00:00:00", "1890-10-01T00:00:00", "1890-09-01T00:00:00", "1890-08-01T00:00:00", "1890-07-01T00:00:00", "1890-06-01T00:00:00", "1890-05-01T00:00:00", "1890-04-01T00:00:00", "1890-03-01T00:00:00", "1890-02-01T00:00:00", "1890-01-01T00:00:00", "1889-12-01T00:00:00", "1889-11-01T00:00:00", "1889-10-01T00:00:00", "1889-09-01T00:00:00", "1889-08-01T00:00:00", "1889-07-01T00:00:00", "1889-06-01T00:00:00", "1889-05-01T00:00:00", "1889-04-01T00:00:00", "1889-03-01T00:00:00", "1889-02-01T00:00:00", "1889-01-01T00:00:00", "1888-12-01T00:00:00", "1888-11-01T00:00:00", "1888-10-01T00:00:00", "1888-09-01T00:00:00", "1888-08-01T00:00:00", "1888-07-01T00:00:00", "1888-06-01T00:00:00", "1888-05-01T00:00:00", "1888-04-01T00:00:00", "1888-03-01T00:00:00", "1888-02-01T00:00:00", "1888-01-01T00:00:00", "1887-12-01T00:00:00", "1887-11-01T00:00:00", "1887-10-01T00:00:00", "1887-09-01T00:00:00", "1887-08-01T00:00:00", "1887-07-01T00:00:00", "1887-06-01T00:00:00", "1887-05-01T00:00:00", "1887-04-01T00:00:00", "1887-03-01T00:00:00", "1887-02-01T00:00:00", "1887-01-01T00:00:00", "1886-12-01T00:00:00", "1886-11-01T00:00:00", "1886-10-01T00:00:00", "1886-09-01T00:00:00", "1886-08-01T00:00:00", "1886-07-01T00:00:00", "1886-06-01T00:00:00", "1886-05-01T00:00:00", "1886-04-01T00:00:00", "1886-03-01T00:00:00", "1886-02-01T00:00:00", "1886-01-01T00:00:00", "1885-12-01T00:00:00", "1885-11-01T00:00:00", "1885-10-01T00:00:00", "1885-09-01T00:00:00", "1885-08-01T00:00:00", "1885-07-01T00:00:00", "1885-06-01T00:00:00", "1885-05-01T00:00:00", "1885-04-01T00:00:00", "1885-03-01T00:00:00", "1885-02-01T00:00:00", "1885-01-01T00:00:00", "1884-12-01T00:00:00", "1884-11-01T00:00:00", "1884-10-01T00:00:00", "1884-09-01T00:00:00", "1884-08-01T00:00:00", "1884-07-01T00:00:00", "1884-06-01T00:00:00", "1884-05-01T00:00:00", "1884-04-01T00:00:00", "1884-03-01T00:00:00", "1884-02-01T00:00:00", "1884-01-01T00:00:00", "1883-12-01T00:00:00", "1883-11-01T00:00:00", "1883-10-01T00:00:00", "1883-09-01T00:00:00", "1883-08-01T00:00:00", "1883-07-01T00:00:00", "1883-06-01T00:00:00", "1883-05-01T00:00:00", "1883-04-01T00:00:00", "1883-03-01T00:00:00", "1883-02-01T00:00:00", "1883-01-01T00:00:00", "1882-12-01T00:00:00", "1882-11-01T00:00:00", "1882-10-01T00:00:00", "1882-09-01T00:00:00", "1882-08-01T00:00:00", "1882-07-01T00:00:00", "1882-06-01T00:00:00", "1882-05-01T00:00:00", "1882-04-01T00:00:00", "1882-03-01T00:00:00", "1882-02-01T00:00:00", "1882-01-01T00:00:00", "1881-12-01T00:00:00", "1881-11-01T00:00:00", "1881-10-01T00:00:00", "1881-09-01T00:00:00", "1881-08-01T00:00:00", "1881-07-01T00:00:00", "1881-06-01T00:00:00", "1881-05-01T00:00:00", "1881-04-01T00:00:00", "1881-03-01T00:00:00", "1881-02-01T00:00:00", "1881-01-01T00:00:00", "1880-12-01T00:00:00", "1880-11-01T00:00:00", "1880-10-01T00:00:00", "1880-09-01T00:00:00", "1880-08-01T00:00:00", "1880-07-01T00:00:00", "1880-06-01T00:00:00", "1880-05-01T00:00:00", "1880-04-01T00:00:00", "1880-03-01T00:00:00", "1880-02-01T00:00:00", "1880-01-01T00:00:00", "1879-12-01T00:00:00", "1879-11-01T00:00:00", "1879-10-01T00:00:00", "1879-09-01T00:00:00", "1879-08-01T00:00:00", "1879-07-01T00:00:00", "1879-06-01T00:00:00", "1879-05-01T00:00:00", "1879-04-01T00:00:00", "1879-03-01T00:00:00", "1879-02-01T00:00:00", "1879-01-01T00:00:00", "1878-12-01T00:00:00", "1878-11-01T00:00:00", "1878-10-01T00:00:00", "1878-09-01T00:00:00", "1878-08-01T00:00:00", "1878-07-01T00:00:00", "1878-06-01T00:00:00", "1878-05-01T00:00:00", "1878-04-01T00:00:00", "1878-03-01T00:00:00", "1878-02-01T00:00:00", "1878-01-01T00:00:00", "1877-12-01T00:00:00", "1877-11-01T00:00:00", "1877-10-01T00:00:00", "1877-09-01T00:00:00", "1877-08-01T00:00:00", "1877-07-01T00:00:00", "1877-06-01T00:00:00", "1877-05-01T00:00:00", "1877-04-01T00:00:00", "1877-03-01T00:00:00", "1877-02-01T00:00:00", "1877-01-01T00:00:00", "1876-12-01T00:00:00", "1876-11-01T00:00:00", "1876-10-01T00:00:00", "1876-09-01T00:00:00", "1876-08-01T00:00:00", "1876-07-01T00:00:00", "1876-06-01T00:00:00", "1876-05-01T00:00:00", "1876-04-01T00:00:00", "1876-03-01T00:00:00", "1876-02-01T00:00:00", "1876-01-01T00:00:00", "1875-12-01T00:00:00", "1875-11-01T00:00:00", "1875-10-01T00:00:00", "1875-09-01T00:00:00", "1875-08-01T00:00:00", "1875-07-01T00:00:00", "1875-06-01T00:00:00", "1875-05-01T00:00:00", "1875-04-01T00:00:00", "1875-03-01T00:00:00", "1875-02-01T00:00:00", "1875-01-01T00:00:00", "1874-12-01T00:00:00", "1874-11-01T00:00:00", "1874-10-01T00:00:00", "1874-09-01T00:00:00", "1874-08-01T00:00:00", "1874-07-01T00:00:00", "1874-06-01T00:00:00", "1874-05-01T00:00:00", "1874-04-01T00:00:00", "1874-03-01T00:00:00", "1874-02-01T00:00:00", "1874-01-01T00:00:00", "1873-12-01T00:00:00", "1873-11-01T00:00:00", "1873-10-01T00:00:00", "1873-09-01T00:00:00", "1873-08-01T00:00:00", "1873-07-01T00:00:00", "1873-06-01T00:00:00", "1873-05-01T00:00:00", "1873-04-01T00:00:00", "1873-03-01T00:00:00", "1873-02-01T00:00:00", "1873-01-01T00:00:00", "1872-12-01T00:00:00", "1872-11-01T00:00:00", "1872-10-01T00:00:00", "1872-09-01T00:00:00", "1872-08-01T00:00:00", "1872-07-01T00:00:00", "1872-06-01T00:00:00", "1872-05-01T00:00:00", "1872-04-01T00:00:00", "1872-03-01T00:00:00", "1872-02-01T00:00:00", "1872-01-01T00:00:00", "1871-12-01T00:00:00", "1871-11-01T00:00:00", "1871-10-01T00:00:00", "1871-09-01T00:00:00", "1871-08-01T00:00:00", "1871-07-01T00:00:00", "1871-06-01T00:00:00", "1871-05-01T00:00:00", "1871-04-01T00:00:00", "1871-03-01T00:00:00" ], "xaxis": "x", "y": [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -19.068077173047413, -19.090049417363186, -16.50617769733218, -14.57406035621116, -10.92427661803821, -11.058092121147089, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.725553845984366, -7.831740538367093, -11.517835602274683, -10.165440790532653, -8.101616528972954, -6.790712872365534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.2859869138495075, -8.468629543116945, -5.945743057373276, 0, -6.640129027830199, -8.382438614419286, -7.377732471454634, -7.932517022263886, -7.181864181854635, -6.518300568752721, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11.417985345497627, -8.809980657039196, -12.28639104542295, -11.838439065421957, -10.012341988056628, -10.279914012353153, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.815254067417234, -6.271429191441347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.973448579908847, -12.529171191570976, -13.723278180409315, -14.258697227758654, -21.848678777869523, -37.784625498171664, -37.163569962621054, -31.157293630152772, -34.57148182665425, -37.070452245549525, -29.30892321612294, -7.592601029659662, -7.199214684803701, -8.807189068438316, -10.9706466921756, -10.007585127682983, -14.465531351077509, -12.035107406219936, -6.857461055120928, -9.33445561612668, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.564788355063412, -6.911853021641933, -8.01160528831888, 0, 0, -8.275710919949585, -5.4183866576655415, -15.7186248791937, -20.812601343525593, -23.139945859901257, -24.786139592126823, -17.905457584925543, -20.752317555538013, -11.433886787838565, 0, 0, 0, -11.358506576156124, -13.268296732948649, -15.667105295024653, -17.768838999661497, -12.203321454985527, -11.907914154403997, -9.745357074478267, -11.21418356880275, -10.90064841877485, -13.946619836869766, -14.695642165537294, -19.22277851571813, -12.097935992891095, -9.644942294636794, -8.96262551643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.863909224541819, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.023170981370151, -11.753618426740909, -7.916888459838156, -7.9193807401526595, -8.232332314331959, -5.2180938495398514, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.163492938631831, -5.446203936658279, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.144368858654571, -14.695997555759233, -14.78120924553955, -12.314061384725195, -9.184457980956884, -6.810258228446475, 0, 0, -5.206540447504315, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13.990007137758742, -24.380294948227167, -26.836672738312075, -22.28313447275073, -20.039814200398133, -15.254237288135597, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.194711538461542, -6.873479318734798, -5.205811138014527, -6.201550387596888, -5.921052631578938, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.013745704467355, -5.932932072226993, 0, 0, -6.734867860187544, -11.389337641357022, -9.845402766476818, -7.512520868113526, -6.339814032121726, -11.651234567901225, -9.140201394268011, -10.582010582010593, -10.174639331814728, -11.979166666666675, -11.186186186186175, 0, 0, 0, -5.379513633013988, 0, 0, 0, 0, 0, 0, 0, 0, -10.667823070251515, -7.123534715960334, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.854870775347909, -8.845043310875855, -8.845043310875855, 0, 0, 0, 0, 0, 0, 0, -5.329354082285231, -5.791260076368276, -5.248559846383616, -7.7003013613218485, -8.971867007672628, -9.930139720558884, -5.589686776110392, -5.083029566626173, -5.36092882382635, 0, 0, 0, -5.673352435530088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8.454968104659955, -8.365800865800866, -6.026637069922303, 0, 0, 0, 0, 0, -6.509618065235578, 0, 0, -11.784821780875976, -15.43311057874166, -25.303485911571457, -24.03256384521021, -26.324897252866098, -30.090311986863703, -18.640984483681112, -17.47997086671522, -5.391432791728212, -12.088235294117645, -15.792349726775956, -11.505681818181813, -9.97109826589595, -10.41587901701323, -9.561068702290076, 0, -5.893019038984592, -7.651245551601427, -9.106830122591948, -11.486486486486491, -10.808510638297875, -6.86359687228496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.659959758551315, 0, -6.282828282828278, -6.95948656237465, -8.681102362204719, -5.592233009708747, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -12.05351948807446, -14.732092498589966, -13.274437815511696, -16.29941313254346, -17.034354077488743, -20.94376883899802, -10.018844221105516, -7.776954819595816, -7.453811849649616, 0, -8.099657050635468, -9.961759082217958, -7.0286278381046285, -5.156092648539767, -7.211822660098511, -7.1470588235294175, -6.9107981220657315, -5.787476280834925, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.260521885521886, -6.51626442812171, 0, -6.868074430273885, -7.013881640747311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10.146784715750245, -10.37648152451779, -11.120073749711922, -15.796943231441052, -12.454995499549948, -12.98953500917035, -8.015430775825106, -6.181183909299026, -5.827455236028223, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11.684394348309258, -18.25128581925054, -20.856451842367342, -20.777556251780116, -19.458520341682338, -22.456091441315852, -11.381541924592009, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.164862032832696, 0, 0, 0, 0, -5.186972255729794, -6.840501185235349, 0, 0, 0, -6.094276094276085, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8.299226921327874, -12.020069808027934, -16.862502576788295, -15.184016824395375, -13.745190252244544, -8.457269700332947, 0, 0, 0, -6.395348837209303, -5.004370629370625, -5.990484429065745, -7.194705380017085, -10.352650030934218, -6.867568675686764, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.029318899413626, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.320450885668283, -5.827600161877788, -10.46556367833782, -7.385924207269912, -8.517952635599702, -8.02611367127496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.257203842049087, -5.748373101952287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.480378890392412, -6.178643384822024, -6.3044936284372906, -5.416384563303989, -9.049479166666663, -8.031599736668849, 0, -8.770846201358873, -6.281725888324874, -7.340025094102886, -7.490864799025587, -9.690844233055895, -5.325077399380806, 0, 0, 0, 0, -6.187624750498999, -7.662082514734769, -8.737864077669899, -6.3745019920318775, -8.796895213454082, -5.960684844641717, 0, 0, 0, -5.408970976253302, -9.240506329113929, -5.719921104536496, -5.221414408460023, 0, 0, 0, -17.005649717514125, -18.61495844875347, -20.936490850376742, -21.443850267379684, -20.953912111468387, -13.918996006845418, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.5045871559633035, 0, -8.259109311740886, -6.36363636363636, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.364161849710984, -12.206047032474798, -10.502283105022837, -16.328708644610458, -20.2441505595117, -20.1171875, -15.279138099902056, -14.619883040935678, -10.245901639344257, 0, 0, -5.226130653266326, 0, -10.61611374407584, -10.446343779677115, -14.116575591985436, -10.158434296365327, -6.9614299153339605, 0, 0, 0, -8.601134215500949, -21.189894050529745, -20.41152263374486, -20.867430441898527, -21.382113821138216, -21.827000808407437, -16.4956590370955, -5.813953488372093, 0, 0, 0, 0, 0, 0, -12.590799031476996, -12.661290322580642, -13.359999999999994, -14.657210401891252, -17.13848508033665, -17.075038284839206, 0, 0, 0, 0, 0, 0, 0, -10.416666666666652, -12.555260831122894, -10.254083484573496, -11.696428571428562, -19.462540716612363, -28.253305497564362, -34.169653524492226, -33.49426674713337, -29.53964194373402, -31.07692307692308, -27.807172251616706, -20.56384742951908, -13.638873550524567, -11.085844229675946, -8.323563892145359, -6.394009216589858, 0, 0, 0, 0, 0, 0, -5.309139784946238, -5.18169582772543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.347438752783963, -9.179265658747294, -9.179265658747294, -8.58695652173912, -6.033519553072619, -5.2927927927928, 0, -6.230200633579718, -10.663983903420515, -9.480122324159012, -18.681318681318672, -17.31843575418994, -19.611307420494704, -10.151802656546472, 0, 0, 0, -9.735349716446118, -10.496719775070284, -14.95992876224399, -8.084696823869109, 0, 0, 0, 0, -12.12976022566995, -8.65102639296187, -11.63120567375886, -12.5, -24.576271186440668, -16.998671978751666, 0, 0, -13.43012704174229, -24.044585987261158, -42.251815980629544, -42.04131227217498, -42.530120481927725, -43.48341232227489, -46.968238691049095, -38.73170731707317, -30.431107354184274, -40.79136690647482, -42.07955338450802, -39.1492429704398, -28.471737613398464, -35.37200504413619, -32.5156873930405, -19.36046511627907, -13.204005006257823, -10.573823339780786, -13.778580024067388, -13.44866071428572, -25.3609239653513, -25.396825396825395, -26.353276353276346, -27.9275092936803, -30.576441102756892, -29.615082482325217, -13.199665831244777, -9.88296488946685, 0, 0, 0, -26.473740621650588, -34.24920127795528, -31.627906976744192, -27.73876404494383, -21.300191204588913, -19.797349961028843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.392265193370164, -9.249011857707512, -7.86516853932585, -6.3621533442087985, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.381776239907733, -11.75824175824176, -14.528101802757154, -13.146551724137922, -9.438202247191008, -5.011389521640086, 0, -5.183585313174954, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.41011235955056, -6.657018813314042, -6.25, -8.640226628895176, -8.157524613220811, 0, -8.957219251336912, -13.578680203045689, -13.468869123252869, -10.394736842105267, -13.90644753476612, -14.015151515151514, -7.196029776674939, -11.627906976744185, -12.34140715109574, -6.172839506172845, -10.419026047565117, -11.210762331838565, -12.29597388465723, -14.466737064413948, -10.099889012208664, -8.680947012401353, -7.150368033648791, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11.458333333333337, -16.25615763546797, -20.28135990621336, -22.63936291240045, -24.778761061946895, -20.541760722347625, -16.248636859323884, -12.781954887218062, -5.537098560354369, -8.150470219435746, -9.591836734693892, -13.222331047992174, -9.51903807615232, -6.714876033057859, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.594095940959424, -5.997552019583841, -5.418719211822653, -7.692307692307699, -9.433962264150953, -8.24372759856631, 0, 0, 0, -5.744431418522867, 0, 0, 0, -5.847953216374268, -7.622298065984068, -7.727272727272738, -9.476031215161662, -12.68817204301077, -13.432835820895539, -12.127440904419318, -10.670731707317083, -10.75050709939147, -8.562691131498468, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.452562704471098, -9.968847352024934, -10.341261633919341, -8.544303797468356, -6.573275862068961, -6.974248927038628, 0, 0, 0, 0, 0, 0, 0, 0, -5.054945054945048, -9.623430962343093, -11.111111111111116, -13.253012048192769, -11.111111111111116, -14.28571428571428, -11.65048543689321, -6.090373280943018, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.87349397590361, -16.10738255033557, -16.998671978751666, -23.218673218673224, -20.280612244897956, -22.839506172839506, -20.85816448152563, -10.77844311377245, -18.68250539956803, -17.991631799163187, -20.32520325203252, -18.429003021148038, -14.182939362795487, -16.749750747756732, 0, 0, 0, 0, 0, -5.230125523012552, -7.551020408163267, -8.206686930091179, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.077348066298349, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.580693815987936, -8.613138686131382, -12.8133704735376, -17.63157894736842, -19.225806451612904, -19.925742574257434, -21.165279429250894, -19.030732860520104, -10.807453416149082, -7.766990291262143, -9.568261376896148, -9.039548022598854, -8.833522083805201, -6.3953488372092915, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.941176470588228, 0, -5.036855036855037, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8.517350157728709, -7.348242811501593, -5.636070853462149, 0, 0, -6.811145510835914, -5.047318611987384, -5.494505494505509, -6.521739130434789, 0, 0, 0, -6.327160493827167, -5.156249999999996, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.160164271047219, -6.35245901639343, 0, 0, -5.186721991701249, -6.62650602409639, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.305936073059371, 0, 0, 0, -5.693069306930698, -11.805555555555557, -13.409090909090915, -13.800904977375561, -13.013698630136982, -14.382022471910116, -5.386416861826692, 0, -6.971677559912859, -10.10526315789475, -11.410788381742753, -10.855949895615879, -9.533898305084755, -8.085106382978724, 0, 0, 0, 0, 0, 0, 0, 0, -6.47321428571429, 0, 0, 0, 0, -7.002188183807445, -5.764966740576494, 0, 0, 0, -5.470459518599558, 0, 0, 0, 0, -11.496746203904562, -15.702479338842966, -23.163841807909602, -23.163841807909602, -25.952813067150625, -25.49019607843138, -16.333938294010885, -13.105924596050277, -5.008944543828264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9.4488188976378, -13.533834586466176, -14.972273567467663, -16.967509025270765, -17.56272401433693, -16.192170818505335, -5.75139146567717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.113636363636376, -5.649717514124286, 0, 0, 0, -5.576208178438657, 0, -6.976744186046502, -9.24956369982548, -11.864406779661019, -10.344827586206895, -5.114638447971787, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.283018867924538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.625272331154676, -10.54852320675106, 0, 0, -6.451612903225823, -12.252964426877455, -15.849056603773581, -16.165413533834595, -13.899613899613893, -16.479400749063664, -14.835164835164827, -5.947955390334581, -6.329113924050644, -5.301645338208405, -9.598603839441544, -8.247422680412376, -6.759098786828421, -8.34752981260648, 0, 0, 0, 0, 0, -6.425041186161462, -8.974358974358987, -8.090614886731395, 0, 0, 0, 0, 0, 0, 0, -5.490848585690522, -7.754442649434578, -6.016260162601627, -7.519999999999993, -6.612903225806455, -6.771653543307088, -8.662613981762924, -5.384615384615376, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.915057915057922, -10.000000000000009, -8.269230769230784, -6.6536203522505, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7.14285714285714, -7.14285714285714, -13.880126182965302, -18.26347305389221, -23.098591549295765, -23.743016759776538, -18.333333333333336, -19.891008174386926, -14.092140921409213, -15.01272264631044, -13.414634146341465, -13.734939759036147, -13.875598086124397, -15.437788018433174, -18.181818181818176, -13.053097345132736, -8.07174887892378, -5.034324942791757, 0, 0, 0, 0, 0, 0, 0, -7.526881720430123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.708245243128973, -7.08333333333333, 0, 0, 0, 0, -11.982570806100213, -18.712273641851105, -18.712273641851105, -18.87550200803213, -19.999999999999996, -16.86507936507936, -10.176125244618406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5.165289256198347, 0, 0, 0, -5.55555555555557, 0, 0 ], "yaxis": "y" } ], "layout": { "legend": { "title": { "text": "variable" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Date" } }, "yaxis": { "anchor": "x", "domain": [ 0, 1 ], "title": { "text": "value" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "last_months=2400\n", "df_plot = pd.melt(df_per_pc, id_vars='Date', value_vars=['PER',col_y])\n", "px.line(df_plot, x='Date', y='value', color='variable')" ] }, { "cell_type": "code", "execution_count": 55, "id": "4afe0c6d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.0
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.0
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.0
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.0
2020-11-0132.473548.992020-11-013548.993695.313793.753883.433910.514141.184167.853418.700.0381113548.990.0
2020-10-0131.283418.702020-10-013418.703548.993695.313793.753883.433910.514141.183365.520.0158013418.700.0
2020-09-0130.843365.522020-09-013365.523418.703548.993695.313793.753883.433910.513391.71-0.0077223365.520.0
2020-08-0131.163391.712020-08-013391.713365.523418.703548.993695.313793.753883.433207.620.0573913365.520.0
2020-07-0129.603207.622020-07-013207.623391.713365.523418.703548.993695.313793.753104.660.0331633207.620.0
2020-06-0128.843104.662020-06-013104.663207.623391.713365.523418.703548.993695.312919.610.0633823104.660.0
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "2020-11-01 32.47 3548.99 2020-11-01 3548.99 3695.31 3793.75 3883.43 \n", "2020-10-01 31.28 3418.70 2020-10-01 3418.70 3548.99 3695.31 3793.75 \n", "2020-09-01 30.84 3365.52 2020-09-01 3365.52 3418.70 3548.99 3695.31 \n", "2020-08-01 31.16 3391.71 2020-08-01 3391.71 3365.52 3418.70 3548.99 \n", "2020-07-01 29.60 3207.62 2020-07-01 3207.62 3391.71 3365.52 3418.70 \n", "2020-06-01 28.84 3104.66 2020-06-01 3104.66 3207.62 3391.71 3365.52 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "2020-11-01 3910.51 4141.18 4167.85 3418.70 0.038111 3548.99 \n", "2020-10-01 3883.43 3910.51 4141.18 3365.52 0.015801 3418.70 \n", "2020-09-01 3793.75 3883.43 3910.51 3391.71 -0.007722 3365.52 \n", "2020-08-01 3695.31 3793.75 3883.43 3207.62 0.057391 3365.52 \n", "2020-07-01 3548.99 3695.31 3793.75 3104.66 0.033163 3207.62 \n", "2020-06-01 3418.70 3548.99 3695.31 2919.61 0.063382 3104.66 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-03-01 0.0 \n", "2021-02-01 0.0 \n", "2021-01-01 0.0 \n", "2020-12-01 0.0 \n", "2020-11-01 0.0 \n", "2020-10-01 0.0 \n", "2020-09-01 0.0 \n", "2020-08-01 0.0 \n", "2020-07-01 0.0 \n", "2020-06-01 0.0 " ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.set_option('display.max_columns', 500)\n", "df.head(10)" ] }, { "cell_type": "code", "execution_count": 56, "id": "0cfed239", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.000000
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.000000
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.000000
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.000000
2020-11-0132.473548.992020-11-013548.993695.313793.753883.433910.514141.184167.853418.700.0381113548.990.000000
2020-10-0131.283418.702020-10-013418.703548.993695.313793.753883.433910.514141.183365.520.0158013418.700.000000
2020-09-0130.843365.522020-09-013365.523418.703548.993695.313793.753883.433910.513391.71-0.0077223365.520.000000
2020-08-0131.163391.712020-08-013391.713365.523418.703548.993695.313793.753883.433207.620.0573913365.520.000000
2020-07-0129.603207.622020-07-013207.623391.713365.523418.703548.993695.313793.753104.660.0331633207.620.000000
2020-06-0128.843104.662020-06-013104.663207.623391.713365.523418.703548.993695.312919.610.0633823104.660.000000
2020-05-0127.332919.612020-05-012919.613104.663207.623391.713365.523418.703548.992761.980.0570712919.610.000000
2020-04-0125.932761.982020-04-012761.982919.613104.663207.623391.713365.523418.702652.390.0413172761.980.000000
2020-03-0124.822652.392020-03-012652.392761.982919.613104.663207.623391.713365.523277.31-0.1906812652.390.000000
2020-02-0130.733277.312020-02-013277.312652.392761.982919.613104.663207.623391.713278.20-0.0002712652.390.190681
2020-01-0130.993278.202020-01-013278.203277.312652.392761.982919.613104.663207.623176.750.0319352652.390.190900
2019-12-0130.333176.752019-12-013176.753278.203277.312652.392761.982919.613104.663104.900.0231412652.390.165062
2019-11-0129.843104.902019-11-013104.903176.753278.203277.312652.392761.982919.612977.680.0427252652.390.145741
2019-10-0128.842977.682019-10-012977.683104.903176.753278.203277.312652.392761.982982.16-0.0015022652.390.109243
2019-09-0129.232982.162019-09-012982.162977.683104.903176.753278.203277.312652.392897.500.0292182652.390.110581
2019-08-0128.712897.502019-08-012897.502982.162977.683104.903176.753278.203277.312996.11-0.0329132897.500.000000
2019-07-0129.992996.112019-07-012996.112897.502982.162977.683104.903176.753278.202890.170.0366552897.500.000000
2019-06-0129.282890.172019-06-012890.172996.112897.502982.162977.683104.903176.752854.710.0124222890.170.000000
2019-05-0129.242854.712019-05-012854.712890.172996.112897.502982.162977.683104.902903.80-0.0169052854.710.000000
2019-04-0130.132903.802019-04-012903.802854.712890.172996.112897.502982.162977.682803.980.0355992854.710.000000
2019-03-0129.582803.982019-03-012803.982903.802854.712890.172996.112897.502982.162754.860.0178302803.980.000000
2019-02-0129.542754.862019-02-012754.862803.982903.802854.712890.172996.112897.502607.390.0565582754.860.000000
2019-01-0128.382607.392019-01-012607.392754.862803.982903.802854.712890.172996.112567.310.0156122607.390.000000
2018-12-0128.292567.312018-12-012567.312607.392754.862803.982903.802854.712890.172723.23-0.0572562567.310.000000
2018-11-0130.202723.232018-11-012723.232567.312607.392754.862803.982903.802854.712785.46-0.0223412567.310.057256
2018-10-0131.042785.462018-10-012785.462723.232567.312607.392754.862803.982903.802901.50-0.0399932567.310.078317
2018-09-0132.622901.502018-09-012901.502785.462723.232567.312607.392754.862803.982857.820.0152842567.310.115178
2018-08-0132.392857.822018-08-012857.822901.502785.462723.232567.312607.392754.862793.640.0229742567.310.101654
2018-07-0131.892793.642018-07-012793.642857.822901.502785.462723.232567.312607.392754.350.0142652567.310.081016
2018-06-0131.632754.352018-06-012754.352793.642857.822901.502785.462723.232567.312701.490.0195672567.310.067907
2018-05-0131.242701.492018-05-012701.492754.352793.642857.822901.502785.462723.232653.630.0180362701.490.000000
2018-04-0130.972653.632018-04-012653.632701.492754.352793.642857.822901.502785.462702.77-0.0181812653.630.000000
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "2020-11-01 32.47 3548.99 2020-11-01 3548.99 3695.31 3793.75 3883.43 \n", "2020-10-01 31.28 3418.70 2020-10-01 3418.70 3548.99 3695.31 3793.75 \n", "2020-09-01 30.84 3365.52 2020-09-01 3365.52 3418.70 3548.99 3695.31 \n", "2020-08-01 31.16 3391.71 2020-08-01 3391.71 3365.52 3418.70 3548.99 \n", "2020-07-01 29.60 3207.62 2020-07-01 3207.62 3391.71 3365.52 3418.70 \n", "2020-06-01 28.84 3104.66 2020-06-01 3104.66 3207.62 3391.71 3365.52 \n", "2020-05-01 27.33 2919.61 2020-05-01 2919.61 3104.66 3207.62 3391.71 \n", "2020-04-01 25.93 2761.98 2020-04-01 2761.98 2919.61 3104.66 3207.62 \n", "2020-03-01 24.82 2652.39 2020-03-01 2652.39 2761.98 2919.61 3104.66 \n", "2020-02-01 30.73 3277.31 2020-02-01 3277.31 2652.39 2761.98 2919.61 \n", "2020-01-01 30.99 3278.20 2020-01-01 3278.20 3277.31 2652.39 2761.98 \n", "2019-12-01 30.33 3176.75 2019-12-01 3176.75 3278.20 3277.31 2652.39 \n", "2019-11-01 29.84 3104.90 2019-11-01 3104.90 3176.75 3278.20 3277.31 \n", "2019-10-01 28.84 2977.68 2019-10-01 2977.68 3104.90 3176.75 3278.20 \n", "2019-09-01 29.23 2982.16 2019-09-01 2982.16 2977.68 3104.90 3176.75 \n", "2019-08-01 28.71 2897.50 2019-08-01 2897.50 2982.16 2977.68 3104.90 \n", "2019-07-01 29.99 2996.11 2019-07-01 2996.11 2897.50 2982.16 2977.68 \n", "2019-06-01 29.28 2890.17 2019-06-01 2890.17 2996.11 2897.50 2982.16 \n", "2019-05-01 29.24 2854.71 2019-05-01 2854.71 2890.17 2996.11 2897.50 \n", "2019-04-01 30.13 2903.80 2019-04-01 2903.80 2854.71 2890.17 2996.11 \n", "2019-03-01 29.58 2803.98 2019-03-01 2803.98 2903.80 2854.71 2890.17 \n", "2019-02-01 29.54 2754.86 2019-02-01 2754.86 2803.98 2903.80 2854.71 \n", "2019-01-01 28.38 2607.39 2019-01-01 2607.39 2754.86 2803.98 2903.80 \n", "2018-12-01 28.29 2567.31 2018-12-01 2567.31 2607.39 2754.86 2803.98 \n", "2018-11-01 30.20 2723.23 2018-11-01 2723.23 2567.31 2607.39 2754.86 \n", "2018-10-01 31.04 2785.46 2018-10-01 2785.46 2723.23 2567.31 2607.39 \n", "2018-09-01 32.62 2901.50 2018-09-01 2901.50 2785.46 2723.23 2567.31 \n", "2018-08-01 32.39 2857.82 2018-08-01 2857.82 2901.50 2785.46 2723.23 \n", "2018-07-01 31.89 2793.64 2018-07-01 2793.64 2857.82 2901.50 2785.46 \n", "2018-06-01 31.63 2754.35 2018-06-01 2754.35 2793.64 2857.82 2901.50 \n", "2018-05-01 31.24 2701.49 2018-05-01 2701.49 2754.35 2793.64 2857.82 \n", "2018-04-01 30.97 2653.63 2018-04-01 2653.63 2701.49 2754.35 2793.64 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "2020-11-01 3910.51 4141.18 4167.85 3418.70 0.038111 3548.99 \n", "2020-10-01 3883.43 3910.51 4141.18 3365.52 0.015801 3418.70 \n", "2020-09-01 3793.75 3883.43 3910.51 3391.71 -0.007722 3365.52 \n", "2020-08-01 3695.31 3793.75 3883.43 3207.62 0.057391 3365.52 \n", "2020-07-01 3548.99 3695.31 3793.75 3104.66 0.033163 3207.62 \n", "2020-06-01 3418.70 3548.99 3695.31 2919.61 0.063382 3104.66 \n", "2020-05-01 3365.52 3418.70 3548.99 2761.98 0.057071 2919.61 \n", "2020-04-01 3391.71 3365.52 3418.70 2652.39 0.041317 2761.98 \n", "2020-03-01 3207.62 3391.71 3365.52 3277.31 -0.190681 2652.39 \n", "2020-02-01 3104.66 3207.62 3391.71 3278.20 -0.000271 2652.39 \n", "2020-01-01 2919.61 3104.66 3207.62 3176.75 0.031935 2652.39 \n", "2019-12-01 2761.98 2919.61 3104.66 3104.90 0.023141 2652.39 \n", "2019-11-01 2652.39 2761.98 2919.61 2977.68 0.042725 2652.39 \n", "2019-10-01 3277.31 2652.39 2761.98 2982.16 -0.001502 2652.39 \n", "2019-09-01 3278.20 3277.31 2652.39 2897.50 0.029218 2652.39 \n", "2019-08-01 3176.75 3278.20 3277.31 2996.11 -0.032913 2897.50 \n", "2019-07-01 3104.90 3176.75 3278.20 2890.17 0.036655 2897.50 \n", "2019-06-01 2977.68 3104.90 3176.75 2854.71 0.012422 2890.17 \n", "2019-05-01 2982.16 2977.68 3104.90 2903.80 -0.016905 2854.71 \n", "2019-04-01 2897.50 2982.16 2977.68 2803.98 0.035599 2854.71 \n", "2019-03-01 2996.11 2897.50 2982.16 2754.86 0.017830 2803.98 \n", "2019-02-01 2890.17 2996.11 2897.50 2607.39 0.056558 2754.86 \n", "2019-01-01 2854.71 2890.17 2996.11 2567.31 0.015612 2607.39 \n", "2018-12-01 2903.80 2854.71 2890.17 2723.23 -0.057256 2567.31 \n", "2018-11-01 2803.98 2903.80 2854.71 2785.46 -0.022341 2567.31 \n", "2018-10-01 2754.86 2803.98 2903.80 2901.50 -0.039993 2567.31 \n", "2018-09-01 2607.39 2754.86 2803.98 2857.82 0.015284 2567.31 \n", "2018-08-01 2567.31 2607.39 2754.86 2793.64 0.022974 2567.31 \n", "2018-07-01 2723.23 2567.31 2607.39 2754.35 0.014265 2567.31 \n", "2018-06-01 2785.46 2723.23 2567.31 2701.49 0.019567 2567.31 \n", "2018-05-01 2901.50 2785.46 2723.23 2653.63 0.018036 2701.49 \n", "2018-04-01 2857.82 2901.50 2785.46 2702.77 -0.018181 2653.63 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-03-01 0.000000 \n", "2021-02-01 0.000000 \n", "2021-01-01 0.000000 \n", "2020-12-01 0.000000 \n", "2020-11-01 0.000000 \n", "2020-10-01 0.000000 \n", "2020-09-01 0.000000 \n", "2020-08-01 0.000000 \n", "2020-07-01 0.000000 \n", "2020-06-01 0.000000 \n", "2020-05-01 0.000000 \n", "2020-04-01 0.000000 \n", "2020-03-01 0.000000 \n", "2020-02-01 0.190681 \n", "2020-01-01 0.190900 \n", "2019-12-01 0.165062 \n", "2019-11-01 0.145741 \n", "2019-10-01 0.109243 \n", "2019-09-01 0.110581 \n", "2019-08-01 0.000000 \n", "2019-07-01 0.000000 \n", "2019-06-01 0.000000 \n", "2019-05-01 0.000000 \n", "2019-04-01 0.000000 \n", "2019-03-01 0.000000 \n", "2019-02-01 0.000000 \n", "2019-01-01 0.000000 \n", "2018-12-01 0.000000 \n", "2018-11-01 0.057256 \n", "2018-10-01 0.078317 \n", "2018-09-01 0.115178 \n", "2018-08-01 0.101654 \n", "2018-07-01 0.081016 \n", "2018-06-01 0.067907 \n", "2018-05-01 0.000000 \n", "2018-04-01 0.000000 " ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(36)" ] }, { "cell_type": "code", "execution_count": 57, "id": "a717ab08", "metadata": {}, "outputs": [], "source": [ "def gen_features(df,cols, ref_period, band):\n", " features = []\n", " \n", " features.append(df['Date'].iloc[ref_period])\n", " for col in cols:\n", " segment = df[col].iloc[ref_period:ref_period+band]\n", " features.append(segment.min()) \n", " features.append(segment.max())\n", "\n", " for i in range(2,99,10):\n", " features.append(np.quantile(segment, i/100))\n", "\n", " features.append(segment.mean())\n", " features.append(segment.std())\n", " features.append(segment.mad())\n", " features.append(segment.skew())\n", " features.append(segment.kurtosis())\n", "\n", " features.append(np.sqrt(np.mean(segment**2)))\n", "\n", " features.append(np.abs(segment).mean())\n", " features.append(np.abs(segment).std())\n", "\n", " features.append(np.abs(np.diff(segment)).mean())\n", " features.append(np.abs(np.diff(segment)).std())\n", " \n", " return pd.Series(features)" ] }, { "cell_type": "code", "execution_count": 58, "id": "5459e181", "metadata": {}, "outputs": [], "source": [ "def generate_dataset(df_f, cols, band=60, start_date='2000-01-01', periods = 0):\n", "# global cols\n", " df = df_f.copy()\n", " X_train = pd.DataFrame()\n", "\n", " y_train = pd.Series(dtype='float64', name=col_y)\n", "# cols =['PER', 'Price', 'Price_Var']\n", "\n", " if periods>0:\n", " ref_periods = periods\n", " else:\n", " ref_periods = df[df.index>=start_date].shape[0]\n", " \n", " for ref_period in range(ref_periods):\n", " X = gen_features(df,cols, ref_period, band)\n", " X_train = X_train.append(X, ignore_index=True)\n", " y_train = y_train.append(pd.Series(df[col_y][ref_period], index=[df.index[ref_period]], name=col_y))\n", "\n", " X_train = X_train.rename({0:'Date'}, axis='columns')\n", " X_train = X_train.set_index('Date')\n", " return X_train, y_train" ] }, { "cell_type": "code", "execution_count": 59, "id": "0e57c0ae", "metadata": {}, "outputs": [], "source": [ "start_date = '1950-01-01' # set your own date\n", "band=60 # how many months from past to use to generate statistics" ] }, { "cell_type": "code", "execution_count": 60, "id": "e5214c99", "metadata": {}, "outputs": [], "source": [ "cols_features = ['PER', 'Price', 'Price_Var']\n", "X_train, y_train = generate_dataset(df, cols_features, band, start_date)" ] }, { "cell_type": "code", "execution_count": 61, "id": "5f254824", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((855,), (855, 66))" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_train.shape, X_train.shape" ] }, { "cell_type": "code", "execution_count": 62, "id": "c619cf40", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DatetimeIndex(['2021-03-01', '2021-02-01', '2021-01-01', '2020-12-01',\n", " '2020-11-01', '2020-10-01', '2020-09-01', '2020-08-01',\n", " '2020-07-01', '2020-06-01',\n", " ...\n", " '1950-10-01', '1950-09-01', '1950-08-01', '1950-07-01',\n", " '1950-06-01', '1950-05-01', '1950-04-01', '1950-03-01',\n", " '1950-02-01', '1950-01-01'],\n", " dtype='datetime64[ns]', length=855, freq=None)" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_train.index" ] }, { "cell_type": "code", "execution_count": 63, "id": "a7becf1f", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "DatetimeIndex(['2021-03-01', '2021-02-01', '2021-01-01', '2020-12-01',\n", " '2020-11-01', '2020-10-01', '2020-09-01', '2020-08-01',\n", " '2020-07-01', '2020-06-01',\n", " ...\n", " '1950-10-01', '1950-09-01', '1950-08-01', '1950-07-01',\n", " '1950-06-01', '1950-05-01', '1950-04-01', '1950-03-01',\n", " '1950-02-01', '1950-01-01'],\n", " dtype='datetime64[ns]', name='Date', length=855, freq=None)" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_train.index" ] }, { "cell_type": "code", "execution_count": 64, "id": "97b5d249", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Price_Corr_6M123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
count855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000
mean0.02944214.43124023.57051514.77757316.03485117.09066417.82183918.49717519.20228419.94606620.75524021.61350222.57559519.0984722.5128272.085288-0.071771-0.39052219.28535119.0984722.5128270.4885420.410447384.463696713.743170394.766837432.420474468.538994495.908749522.235080548.910676577.287777606.409720638.616928675.973329545.98586591.29812076.4746060.025165-0.619295554.023079545.98586591.29812014.23523712.290918-0.1005390.084752-0.068381-0.028274-0.014489-0.0050860.0030000.0110450.0180970.0254430.0340790.0450300.0066680.0336790.025427-0.5784911.9795780.0345160.0266100.0220780.0323780.026856
std0.0592365.3905969.0320745.4254105.8109886.2074516.4372896.7354767.1365617.5597778.0921598.4370718.7445417.0552631.5760821.3868640.6709171.0336767.1592037.0552631.5760820.2113800.185295475.162320856.443386486.178252528.791032568.013175599.941679631.712107663.510627696.218222729.225963765.972484808.886759658.069139110.28003493.5149360.5408190.647425666.609814658.069139110.28003417.02105415.6696830.0407270.0218750.0235980.0115240.0084470.0060910.0056910.0055570.0053550.0048350.0053200.0072830.0049920.0068530.0049350.6604932.3112670.0062860.0044840.0048710.0058540.005227
min0.0000006.64000010.0100006.6490007.3908007.8398008.4440008.7578008.8436008.9790009.0848009.2600009.5356008.5791670.7323250.594017-2.482265-1.5998608.6197478.5791670.7323250.2211860.17340113.93000018.70000013.94540014.60720014.78000014.90760015.15340015.33760015.76580016.12920016.84280018.02840015.6895001.2343540.991400-1.408928-1.72707715.73814515.6895001.2343540.4559320.322354-0.2039110.046303-0.113697-0.058984-0.037086-0.021644-0.009407-0.0032580.0058580.0151970.0239980.029321-0.0056920.0185490.014381-3.194508-0.6195300.0205650.0150050.0131530.0180280.015464
25%0.0000009.07000018.3300009.62440010.06260010.85490011.63200012.14390012.65100013.56660014.50580015.85320017.24820013.1499171.6098971.306261-0.505305-1.05743613.39231513.1499171.6098970.3576270.29975261.34000095.81000064.12270070.15980075.27580080.00360082.40210084.94460086.48770088.73940091.44990092.77960082.5015008.4575006.809078-0.396932-1.09468982.97086582.5015008.4575001.7636441.388085-0.1167800.068898-0.085138-0.034946-0.020583-0.008601-0.0015130.0068660.0150070.0211340.0300600.0397190.0030530.0285400.021893-0.9985180.6154260.0299600.0238180.0182080.0283480.023768
50%0.00000013.67000022.17000014.06780015.87000017.02720017.53560018.01120018.46360019.49180020.30440020.60860021.08480018.7028332.0858491.680956-0.136785-0.60302918.78957618.7028332.0858490.4530510.371721109.400000192.500000109.700000117.380000126.446000132.228000135.414000151.644000157.658000164.644000166.628000180.684000146.94833323.38534620.6083330.002311-0.703772148.766839146.94833323.3853463.7813563.189377-0.1055550.073924-0.059120-0.026887-0.013355-0.0041590.0034700.0116800.0177290.0260240.0336240.0446580.0072300.0326390.025095-0.5264251.1298190.0334430.0264350.0210730.0318740.025729
75%0.05233319.36500027.55000019.69130020.40080021.06870021.62160022.56430023.67860024.91520025.74740026.45780027.29120023.3670002.6809152.2992890.352199-0.05433023.57936823.3670002.6809150.5283900.438316757.1300001485.460000812.955600904.097200992.4798001073.3872001105.1746001136.0672001190.9147001273.3584001354.5316001423.4630001133.277167182.130724148.2461170.386897-0.2684611147.8986001133.277167182.13072429.94720324.505543-0.0659570.108439-0.051697-0.020761-0.006811-0.0009250.0076400.0140190.0219430.0289420.0387600.0499910.0099020.0385660.028974-0.2051803.0442900.0391750.0298740.0255030.0360720.029917
max0.37784627.67000044.19000028.65740030.30680032.31700032.89520034.56920036.97040038.80320041.33440042.32060043.21280036.6345007.9765697.2145172.0505467.13990436.96691236.6345007.9765691.1905080.9173482065.5500003910.5100002077.0430002177.0044002394.7794002566.0728002693.3170002759.7016002856.5138002947.4836003188.4806003455.1812002778.860500463.023817356.7735331.6126203.1786452816.5375112778.860500463.02381776.76728886.528188-0.0357470.120217-0.016349-0.007115-0.0002740.0100870.0154370.0244400.0304950.0367190.0457360.0620690.0197400.0502960.0378671.82811616.6830220.0498840.0378360.0331610.0475050.039672
\n", "
" ], "text/plain": [ " Price_Corr_6M 1 2 3 4 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 0.029442 14.431240 23.570515 14.777573 16.034851 \n", "std 0.059236 5.390596 9.032074 5.425410 5.810988 \n", "min 0.000000 6.640000 10.010000 6.649000 7.390800 \n", "25% 0.000000 9.070000 18.330000 9.624400 10.062600 \n", "50% 0.000000 13.670000 22.170000 14.067800 15.870000 \n", "75% 0.052333 19.365000 27.550000 19.691300 20.400800 \n", "max 0.377846 27.670000 44.190000 28.657400 30.306800 \n", "\n", " 5 6 7 8 9 10 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 17.090664 17.821839 18.497175 19.202284 19.946066 20.755240 \n", "std 6.207451 6.437289 6.735476 7.136561 7.559777 8.092159 \n", "min 7.839800 8.444000 8.757800 8.843600 8.979000 9.084800 \n", "25% 10.854900 11.632000 12.143900 12.651000 13.566600 14.505800 \n", "50% 17.027200 17.535600 18.011200 18.463600 19.491800 20.304400 \n", "75% 21.068700 21.621600 22.564300 23.678600 24.915200 25.747400 \n", "max 32.317000 32.895200 34.569200 36.970400 38.803200 41.334400 \n", "\n", " 11 12 13 14 15 16 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 21.613502 22.575595 19.098472 2.512827 2.085288 -0.071771 \n", "std 8.437071 8.744541 7.055263 1.576082 1.386864 0.670917 \n", "min 9.260000 9.535600 8.579167 0.732325 0.594017 -2.482265 \n", "25% 15.853200 17.248200 13.149917 1.609897 1.306261 -0.505305 \n", "50% 20.608600 21.084800 18.702833 2.085849 1.680956 -0.136785 \n", "75% 26.457800 27.291200 23.367000 2.680915 2.299289 0.352199 \n", "max 42.320600 43.212800 36.634500 7.976569 7.214517 2.050546 \n", "\n", " 17 18 19 20 21 22 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean -0.390522 19.285351 19.098472 2.512827 0.488542 0.410447 \n", "std 1.033676 7.159203 7.055263 1.576082 0.211380 0.185295 \n", "min -1.599860 8.619747 8.579167 0.732325 0.221186 0.173401 \n", "25% -1.057436 13.392315 13.149917 1.609897 0.357627 0.299752 \n", "50% -0.603029 18.789576 18.702833 2.085849 0.453051 0.371721 \n", "75% -0.054330 23.579368 23.367000 2.680915 0.528390 0.438316 \n", "max 7.139904 36.966912 36.634500 7.976569 1.190508 0.917348 \n", "\n", " 23 24 25 26 27 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 384.463696 713.743170 394.766837 432.420474 468.538994 \n", "std 475.162320 856.443386 486.178252 528.791032 568.013175 \n", "min 13.930000 18.700000 13.945400 14.607200 14.780000 \n", "25% 61.340000 95.810000 64.122700 70.159800 75.275800 \n", "50% 109.400000 192.500000 109.700000 117.380000 126.446000 \n", "75% 757.130000 1485.460000 812.955600 904.097200 992.479800 \n", "max 2065.550000 3910.510000 2077.043000 2177.004400 2394.779400 \n", "\n", " 28 29 30 31 32 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 495.908749 522.235080 548.910676 577.287777 606.409720 \n", "std 599.941679 631.712107 663.510627 696.218222 729.225963 \n", "min 14.907600 15.153400 15.337600 15.765800 16.129200 \n", "25% 80.003600 82.402100 84.944600 86.487700 88.739400 \n", "50% 132.228000 135.414000 151.644000 157.658000 164.644000 \n", "75% 1073.387200 1105.174600 1136.067200 1190.914700 1273.358400 \n", "max 2566.072800 2693.317000 2759.701600 2856.513800 2947.483600 \n", "\n", " 33 34 35 36 37 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 638.616928 675.973329 545.985865 91.298120 76.474606 \n", "std 765.972484 808.886759 658.069139 110.280034 93.514936 \n", "min 16.842800 18.028400 15.689500 1.234354 0.991400 \n", "25% 91.449900 92.779600 82.501500 8.457500 6.809078 \n", "50% 166.628000 180.684000 146.948333 23.385346 20.608333 \n", "75% 1354.531600 1423.463000 1133.277167 182.130724 148.246117 \n", "max 3188.480600 3455.181200 2778.860500 463.023817 356.773533 \n", "\n", " 38 39 40 41 42 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 0.025165 -0.619295 554.023079 545.985865 91.298120 \n", "std 0.540819 0.647425 666.609814 658.069139 110.280034 \n", "min -1.408928 -1.727077 15.738145 15.689500 1.234354 \n", "25% -0.396932 -1.094689 82.970865 82.501500 8.457500 \n", "50% 0.002311 -0.703772 148.766839 146.948333 23.385346 \n", "75% 0.386897 -0.268461 1147.898600 1133.277167 182.130724 \n", "max 1.612620 3.178645 2816.537511 2778.860500 463.023817 \n", "\n", " 43 44 45 46 47 48 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 14.235237 12.290918 -0.100539 0.084752 -0.068381 -0.028274 \n", "std 17.021054 15.669683 0.040727 0.021875 0.023598 0.011524 \n", "min 0.455932 0.322354 -0.203911 0.046303 -0.113697 -0.058984 \n", "25% 1.763644 1.388085 -0.116780 0.068898 -0.085138 -0.034946 \n", "50% 3.781356 3.189377 -0.105555 0.073924 -0.059120 -0.026887 \n", "75% 29.947203 24.505543 -0.065957 0.108439 -0.051697 -0.020761 \n", "max 76.767288 86.528188 -0.035747 0.120217 -0.016349 -0.007115 \n", "\n", " 49 50 51 52 53 54 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean -0.014489 -0.005086 0.003000 0.011045 0.018097 0.025443 \n", "std 0.008447 0.006091 0.005691 0.005557 0.005355 0.004835 \n", "min -0.037086 -0.021644 -0.009407 -0.003258 0.005858 0.015197 \n", "25% -0.020583 -0.008601 -0.001513 0.006866 0.015007 0.021134 \n", "50% -0.013355 -0.004159 0.003470 0.011680 0.017729 0.026024 \n", "75% -0.006811 -0.000925 0.007640 0.014019 0.021943 0.028942 \n", "max -0.000274 0.010087 0.015437 0.024440 0.030495 0.036719 \n", "\n", " 55 56 57 58 59 60 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 0.034079 0.045030 0.006668 0.033679 0.025427 -0.578491 \n", "std 0.005320 0.007283 0.004992 0.006853 0.004935 0.660493 \n", "min 0.023998 0.029321 -0.005692 0.018549 0.014381 -3.194508 \n", "25% 0.030060 0.039719 0.003053 0.028540 0.021893 -0.998518 \n", "50% 0.033624 0.044658 0.007230 0.032639 0.025095 -0.526425 \n", "75% 0.038760 0.049991 0.009902 0.038566 0.028974 -0.205180 \n", "max 0.045736 0.062069 0.019740 0.050296 0.037867 1.828116 \n", "\n", " 61 62 63 64 65 66 \n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 1.979578 0.034516 0.026610 0.022078 0.032378 0.026856 \n", "std 2.311267 0.006286 0.004484 0.004871 0.005854 0.005227 \n", "min -0.619530 0.020565 0.015005 0.013153 0.018028 0.015464 \n", "25% 0.615426 0.029960 0.023818 0.018208 0.028348 0.023768 \n", "50% 1.129819 0.033443 0.026435 0.021073 0.031874 0.025729 \n", "75% 3.044290 0.039175 0.029874 0.025503 0.036072 0.029917 \n", "max 16.683022 0.049884 0.037836 0.033161 0.047505 0.039672 " ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dataset = pd.concat([y_train, X_train], axis=1, join=\"inner\") # align to avoid random shifting\n", "dataset.describe()" ] }, { "cell_type": "code", "execution_count": 65, "id": "77b09817", "metadata": { "scrolled": false }, "outputs": [], "source": [ "Y=dataset.pop(col_y) # target to predict" ] }, { "cell_type": "code", "execution_count": 66, "id": "46d2be0d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "count 855.000000\n", "mean 0.029442\n", "std 0.059236\n", "min 0.000000\n", "25% 0.000000\n", "50% 0.000000\n", "75% 0.052333\n", "max 0.377846\n", "Name: Price_Corr_6M, dtype: float64" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Y.describe()" ] }, { "cell_type": "code", "execution_count": 67, "id": "ada10543", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
count855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000855.000000
mean14.43124023.57051514.77757316.03485117.09066417.82183918.49717519.20228419.94606620.75524021.61350222.57559519.0984722.5128272.085288-0.071771-0.39052219.28535119.0984722.5128270.4885420.410447384.463696713.743170394.766837432.420474468.538994495.908749522.235080548.910676577.287777606.409720638.616928675.973329545.98586591.29812076.4746060.025165-0.619295554.023079545.98586591.29812014.23523712.290918-0.1005390.084752-0.068381-0.028274-0.014489-0.0050860.0030000.0110450.0180970.0254430.0340790.0450300.0066680.0336790.025427-0.5784911.9795780.0345160.0266100.0220780.0323780.026856
std5.3905969.0320745.4254105.8109886.2074516.4372896.7354767.1365617.5597778.0921598.4370718.7445417.0552631.5760821.3868640.6709171.0336767.1592037.0552631.5760820.2113800.185295475.162320856.443386486.178252528.791032568.013175599.941679631.712107663.510627696.218222729.225963765.972484808.886759658.069139110.28003493.5149360.5408190.647425666.609814658.069139110.28003417.02105415.6696830.0407270.0218750.0235980.0115240.0084470.0060910.0056910.0055570.0053550.0048350.0053200.0072830.0049920.0068530.0049350.6604932.3112670.0062860.0044840.0048710.0058540.005227
min6.64000010.0100006.6490007.3908007.8398008.4440008.7578008.8436008.9790009.0848009.2600009.5356008.5791670.7323250.594017-2.482265-1.5998608.6197478.5791670.7323250.2211860.17340113.93000018.70000013.94540014.60720014.78000014.90760015.15340015.33760015.76580016.12920016.84280018.02840015.6895001.2343540.991400-1.408928-1.72707715.73814515.6895001.2343540.4559320.322354-0.2039110.046303-0.113697-0.058984-0.037086-0.021644-0.009407-0.0032580.0058580.0151970.0239980.029321-0.0056920.0185490.014381-3.194508-0.6195300.0205650.0150050.0131530.0180280.015464
25%9.07000018.3300009.62440010.06260010.85490011.63200012.14390012.65100013.56660014.50580015.85320017.24820013.1499171.6098971.306261-0.505305-1.05743613.39231513.1499171.6098970.3576270.29975261.34000095.81000064.12270070.15980075.27580080.00360082.40210084.94460086.48770088.73940091.44990092.77960082.5015008.4575006.809078-0.396932-1.09468982.97086582.5015008.4575001.7636441.388085-0.1167800.068898-0.085138-0.034946-0.020583-0.008601-0.0015130.0068660.0150070.0211340.0300600.0397190.0030530.0285400.021893-0.9985180.6154260.0299600.0238180.0182080.0283480.023768
50%13.67000022.17000014.06780015.87000017.02720017.53560018.01120018.46360019.49180020.30440020.60860021.08480018.7028332.0858491.680956-0.136785-0.60302918.78957618.7028332.0858490.4530510.371721109.400000192.500000109.700000117.380000126.446000132.228000135.414000151.644000157.658000164.644000166.628000180.684000146.94833323.38534620.6083330.002311-0.703772148.766839146.94833323.3853463.7813563.189377-0.1055550.073924-0.059120-0.026887-0.013355-0.0041590.0034700.0116800.0177290.0260240.0336240.0446580.0072300.0326390.025095-0.5264251.1298190.0334430.0264350.0210730.0318740.025729
75%19.36500027.55000019.69130020.40080021.06870021.62160022.56430023.67860024.91520025.74740026.45780027.29120023.3670002.6809152.2992890.352199-0.05433023.57936823.3670002.6809150.5283900.438316757.1300001485.460000812.955600904.097200992.4798001073.3872001105.1746001136.0672001190.9147001273.3584001354.5316001423.4630001133.277167182.130724148.2461170.386897-0.2684611147.8986001133.277167182.13072429.94720324.505543-0.0659570.108439-0.051697-0.020761-0.006811-0.0009250.0076400.0140190.0219430.0289420.0387600.0499910.0099020.0385660.028974-0.2051803.0442900.0391750.0298740.0255030.0360720.029917
max27.67000044.19000028.65740030.30680032.31700032.89520034.56920036.97040038.80320041.33440042.32060043.21280036.6345007.9765697.2145172.0505467.13990436.96691236.6345007.9765691.1905080.9173482065.5500003910.5100002077.0430002177.0044002394.7794002566.0728002693.3170002759.7016002856.5138002947.4836003188.4806003455.1812002778.860500463.023817356.7735331.6126203.1786452816.5375112778.860500463.02381776.76728886.528188-0.0357470.120217-0.016349-0.007115-0.0002740.0100870.0154370.0244400.0304950.0367190.0457360.0620690.0197400.0502960.0378671.82811616.6830220.0498840.0378360.0331610.0475050.039672
\n", "
" ], "text/plain": [ " 1 2 3 4 5 6 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 14.431240 23.570515 14.777573 16.034851 17.090664 17.821839 \n", "std 5.390596 9.032074 5.425410 5.810988 6.207451 6.437289 \n", "min 6.640000 10.010000 6.649000 7.390800 7.839800 8.444000 \n", "25% 9.070000 18.330000 9.624400 10.062600 10.854900 11.632000 \n", "50% 13.670000 22.170000 14.067800 15.870000 17.027200 17.535600 \n", "75% 19.365000 27.550000 19.691300 20.400800 21.068700 21.621600 \n", "max 27.670000 44.190000 28.657400 30.306800 32.317000 32.895200 \n", "\n", " 7 8 9 10 11 12 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 18.497175 19.202284 19.946066 20.755240 21.613502 22.575595 \n", "std 6.735476 7.136561 7.559777 8.092159 8.437071 8.744541 \n", "min 8.757800 8.843600 8.979000 9.084800 9.260000 9.535600 \n", "25% 12.143900 12.651000 13.566600 14.505800 15.853200 17.248200 \n", "50% 18.011200 18.463600 19.491800 20.304400 20.608600 21.084800 \n", "75% 22.564300 23.678600 24.915200 25.747400 26.457800 27.291200 \n", "max 34.569200 36.970400 38.803200 41.334400 42.320600 43.212800 \n", "\n", " 13 14 15 16 17 18 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 19.098472 2.512827 2.085288 -0.071771 -0.390522 19.285351 \n", "std 7.055263 1.576082 1.386864 0.670917 1.033676 7.159203 \n", "min 8.579167 0.732325 0.594017 -2.482265 -1.599860 8.619747 \n", "25% 13.149917 1.609897 1.306261 -0.505305 -1.057436 13.392315 \n", "50% 18.702833 2.085849 1.680956 -0.136785 -0.603029 18.789576 \n", "75% 23.367000 2.680915 2.299289 0.352199 -0.054330 23.579368 \n", "max 36.634500 7.976569 7.214517 2.050546 7.139904 36.966912 \n", "\n", " 19 20 21 22 23 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 19.098472 2.512827 0.488542 0.410447 384.463696 \n", "std 7.055263 1.576082 0.211380 0.185295 475.162320 \n", "min 8.579167 0.732325 0.221186 0.173401 13.930000 \n", "25% 13.149917 1.609897 0.357627 0.299752 61.340000 \n", "50% 18.702833 2.085849 0.453051 0.371721 109.400000 \n", "75% 23.367000 2.680915 0.528390 0.438316 757.130000 \n", "max 36.634500 7.976569 1.190508 0.917348 2065.550000 \n", "\n", " 24 25 26 27 28 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 713.743170 394.766837 432.420474 468.538994 495.908749 \n", "std 856.443386 486.178252 528.791032 568.013175 599.941679 \n", "min 18.700000 13.945400 14.607200 14.780000 14.907600 \n", "25% 95.810000 64.122700 70.159800 75.275800 80.003600 \n", "50% 192.500000 109.700000 117.380000 126.446000 132.228000 \n", "75% 1485.460000 812.955600 904.097200 992.479800 1073.387200 \n", "max 3910.510000 2077.043000 2177.004400 2394.779400 2566.072800 \n", "\n", " 29 30 31 32 33 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 522.235080 548.910676 577.287777 606.409720 638.616928 \n", "std 631.712107 663.510627 696.218222 729.225963 765.972484 \n", "min 15.153400 15.337600 15.765800 16.129200 16.842800 \n", "25% 82.402100 84.944600 86.487700 88.739400 91.449900 \n", "50% 135.414000 151.644000 157.658000 164.644000 166.628000 \n", "75% 1105.174600 1136.067200 1190.914700 1273.358400 1354.531600 \n", "max 2693.317000 2759.701600 2856.513800 2947.483600 3188.480600 \n", "\n", " 34 35 36 37 38 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 675.973329 545.985865 91.298120 76.474606 0.025165 \n", "std 808.886759 658.069139 110.280034 93.514936 0.540819 \n", "min 18.028400 15.689500 1.234354 0.991400 -1.408928 \n", "25% 92.779600 82.501500 8.457500 6.809078 -0.396932 \n", "50% 180.684000 146.948333 23.385346 20.608333 0.002311 \n", "75% 1423.463000 1133.277167 182.130724 148.246117 0.386897 \n", "max 3455.181200 2778.860500 463.023817 356.773533 1.612620 \n", "\n", " 39 40 41 42 43 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean -0.619295 554.023079 545.985865 91.298120 14.235237 \n", "std 0.647425 666.609814 658.069139 110.280034 17.021054 \n", "min -1.727077 15.738145 15.689500 1.234354 0.455932 \n", "25% -1.094689 82.970865 82.501500 8.457500 1.763644 \n", "50% -0.703772 148.766839 146.948333 23.385346 3.781356 \n", "75% -0.268461 1147.898600 1133.277167 182.130724 29.947203 \n", "max 3.178645 2816.537511 2778.860500 463.023817 76.767288 \n", "\n", " 44 45 46 47 48 49 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 12.290918 -0.100539 0.084752 -0.068381 -0.028274 -0.014489 \n", "std 15.669683 0.040727 0.021875 0.023598 0.011524 0.008447 \n", "min 0.322354 -0.203911 0.046303 -0.113697 -0.058984 -0.037086 \n", "25% 1.388085 -0.116780 0.068898 -0.085138 -0.034946 -0.020583 \n", "50% 3.189377 -0.105555 0.073924 -0.059120 -0.026887 -0.013355 \n", "75% 24.505543 -0.065957 0.108439 -0.051697 -0.020761 -0.006811 \n", "max 86.528188 -0.035747 0.120217 -0.016349 -0.007115 -0.000274 \n", "\n", " 50 51 52 53 54 55 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean -0.005086 0.003000 0.011045 0.018097 0.025443 0.034079 \n", "std 0.006091 0.005691 0.005557 0.005355 0.004835 0.005320 \n", "min -0.021644 -0.009407 -0.003258 0.005858 0.015197 0.023998 \n", "25% -0.008601 -0.001513 0.006866 0.015007 0.021134 0.030060 \n", "50% -0.004159 0.003470 0.011680 0.017729 0.026024 0.033624 \n", "75% -0.000925 0.007640 0.014019 0.021943 0.028942 0.038760 \n", "max 0.010087 0.015437 0.024440 0.030495 0.036719 0.045736 \n", "\n", " 56 57 58 59 60 61 \\\n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 0.045030 0.006668 0.033679 0.025427 -0.578491 1.979578 \n", "std 0.007283 0.004992 0.006853 0.004935 0.660493 2.311267 \n", "min 0.029321 -0.005692 0.018549 0.014381 -3.194508 -0.619530 \n", "25% 0.039719 0.003053 0.028540 0.021893 -0.998518 0.615426 \n", "50% 0.044658 0.007230 0.032639 0.025095 -0.526425 1.129819 \n", "75% 0.049991 0.009902 0.038566 0.028974 -0.205180 3.044290 \n", "max 0.062069 0.019740 0.050296 0.037867 1.828116 16.683022 \n", "\n", " 62 63 64 65 66 \n", "count 855.000000 855.000000 855.000000 855.000000 855.000000 \n", "mean 0.034516 0.026610 0.022078 0.032378 0.026856 \n", "std 0.006286 0.004484 0.004871 0.005854 0.005227 \n", "min 0.020565 0.015005 0.013153 0.018028 0.015464 \n", "25% 0.029960 0.023818 0.018208 0.028348 0.023768 \n", "50% 0.033443 0.026435 0.021073 0.031874 0.025729 \n", "75% 0.039175 0.029874 0.025503 0.036072 0.029917 \n", "max 0.049884 0.037836 0.033161 0.047505 0.039672 " ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X=dataset # features for prediction\n", "X.describe()" ] }, { "cell_type": "code", "execution_count": 68, "id": "5b2f30c6", "metadata": {}, "outputs": [], "source": [ "# PREDICTION" ] }, { "cell_type": "code", "execution_count": 69, "id": "18f71866", "metadata": { "scrolled": true }, "outputs": [], "source": [ "def generate_model(df, cols, start_date, verbosity = False):\n", " best_score = 0\n", " best_model = None\n", " best_band = 0\n", " test_size = 0.3\n", " bands = 60\n", " \n", " for band in range(12,bands+1,12): # [12,24,36,48,60] months\n", " X_train, y_train = generate_dataset(df, cols, band, start_date)\n", " dataset = pd.concat([y_train, X_train], axis=1, join=\"inner\") # align to avoid random shifting\n", " Y=dataset.pop(col_y)\n", " X=dataset\n", " X_train, X_test, Y_train, Y_test = model_selection.train_test_split(X, Y, test_size=test_size, shuffle = True)\n", " model = xgb.XGBRegressor()\n", " model.fit(X_train,Y_train.values)\n", " score = model.score(X_test, Y_test)\n", " if best_score < score:\n", " best_score = score\n", " best_model = model\n", " best_band = band\n", " X_t = X_test\n", " Y_t = Y_test\n", " \n", "# if verbosity: # verbosit for each band\n", "# print(score, band)\n", " if verbosity: # verbosity for best score\n", " print('retest score:', best_model.score(X_t, Y_t).round(3), best_score.round(3), 'features:', cols, 'X_train.shape:', X_train.shape)# retest best model score\n", " \n", " return best_model, best_band, best_score\n" ] }, { "cell_type": "code", "execution_count": 70, "id": "1e3edca1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "retest score: 0.785 0.785 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n" ] } ], "source": [ "start_date = '1970-01-01'\n", "cols_features =['PER', 'Price', 'Price_Var']\n", "model, band, score = generate_model(df, cols_features, start_date, True)" ] }, { "cell_type": "code", "execution_count": 71, "id": "6c888733", "metadata": {}, "outputs": [], "source": [ "# model.score(X_t, Y_t), best_score # retest best model score" ] }, { "cell_type": "code", "execution_count": 72, "id": "5f63d10f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6Mhorizon
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04NaNfuture
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04NaNfuture
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04NaNfuture
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49NaNfuture
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85NaNfuture
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.18NaNfuture
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.0past
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.0past
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.0past
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.0past
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "\n", " Price_Corr_6M horizon \n", "Date \n", "2021-10-01 NaN future \n", "2021-08-01 NaN future \n", "2021-07-01 NaN future \n", "2021-06-01 NaN future \n", "2021-05-01 NaN future \n", "2021-04-01 NaN future \n", "2021-03-01 0.0 past \n", "2021-02-01 0.0 past \n", "2021-01-01 0.0 past \n", "2020-12-01 0.0 past " ] }, "execution_count": 72, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_initial['horizon'] = 'past'\n", "df_initial.loc[np.isnan(df_initial['Price6F']),['horizon']]='future'\n", "df_initial.head(10)" ] }, { "cell_type": "code", "execution_count": 73, "id": "e86be962", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6Mhorizon
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04NaNfuture
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04NaNfuture
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04NaNfuture
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49NaNfuture
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85NaNfuture
2021-04-0136.724141.182021-04-014141.184167.854238.494358.134450.374357.04NaN3910.510.0589874141.18NaNfuture
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.000000past
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.000000past
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.000000past
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.000000past
2020-11-0132.473548.992020-11-013548.993695.313793.753883.433910.514141.184167.853418.700.0381113548.990.000000past
2020-10-0131.283418.702020-10-013418.703548.993695.313793.753883.433910.514141.183365.520.0158013418.700.000000past
2020-09-0130.843365.522020-09-013365.523418.703548.993695.313793.753883.433910.513391.71-0.0077223365.520.000000past
2020-08-0131.163391.712020-08-013391.713365.523418.703548.993695.313793.753883.433207.620.0573913365.520.007722past
2020-07-0129.603207.622020-07-013207.623391.713365.523418.703548.993695.313793.753104.660.0331633207.620.000000past
2020-06-0128.843104.662020-06-013104.663207.623391.713365.523418.703548.993695.312919.610.0633823104.660.000000past
2020-05-0127.332919.612020-05-012919.613104.663207.623391.713365.523418.703548.992761.980.0570712919.610.000000past
2020-04-0125.932761.982020-04-012761.982919.613104.663207.623391.713365.523418.702652.390.0413172761.980.000000past
2020-03-0124.822652.392020-03-012652.392761.982919.613104.663207.623391.713365.523277.31-0.1906812652.390.000000past
2020-02-0130.733277.312020-02-013277.312652.392761.982919.613104.663207.623391.713278.20-0.0002712652.390.190681past
2020-01-0130.993278.202020-01-013278.203277.312652.392761.982919.613104.663207.623176.750.0319352652.390.190900past
2019-12-0130.333176.752019-12-013176.753278.203277.312652.392761.982919.613104.663104.900.0231412652.390.165062past
2019-11-0129.843104.902019-11-013104.903176.753278.203277.312652.392761.982919.612977.680.0427252652.390.145741past
2019-10-0128.842977.682019-10-012977.683104.903176.753278.203277.312652.392761.982982.16-0.0015022652.390.109243past
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "2021-04-01 36.72 4141.18 2021-04-01 4141.18 4167.85 4238.49 4358.13 \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "2020-11-01 32.47 3548.99 2020-11-01 3548.99 3695.31 3793.75 3883.43 \n", "2020-10-01 31.28 3418.70 2020-10-01 3418.70 3548.99 3695.31 3793.75 \n", "2020-09-01 30.84 3365.52 2020-09-01 3365.52 3418.70 3548.99 3695.31 \n", "2020-08-01 31.16 3391.71 2020-08-01 3391.71 3365.52 3418.70 3548.99 \n", "2020-07-01 29.60 3207.62 2020-07-01 3207.62 3391.71 3365.52 3418.70 \n", "2020-06-01 28.84 3104.66 2020-06-01 3104.66 3207.62 3391.71 3365.52 \n", "2020-05-01 27.33 2919.61 2020-05-01 2919.61 3104.66 3207.62 3391.71 \n", "2020-04-01 25.93 2761.98 2020-04-01 2761.98 2919.61 3104.66 3207.62 \n", "2020-03-01 24.82 2652.39 2020-03-01 2652.39 2761.98 2919.61 3104.66 \n", "2020-02-01 30.73 3277.31 2020-02-01 3277.31 2652.39 2761.98 2919.61 \n", "2020-01-01 30.99 3278.20 2020-01-01 3278.20 3277.31 2652.39 2761.98 \n", "2019-12-01 30.33 3176.75 2019-12-01 3176.75 3278.20 3277.31 2652.39 \n", "2019-11-01 29.84 3104.90 2019-11-01 3104.90 3176.75 3278.20 3277.31 \n", "2019-10-01 28.84 2977.68 2019-10-01 2977.68 3104.90 3176.75 3278.20 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "2021-04-01 4450.37 4357.04 NaN 3910.51 0.058987 4141.18 \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "2020-11-01 3910.51 4141.18 4167.85 3418.70 0.038111 3548.99 \n", "2020-10-01 3883.43 3910.51 4141.18 3365.52 0.015801 3418.70 \n", "2020-09-01 3793.75 3883.43 3910.51 3391.71 -0.007722 3365.52 \n", "2020-08-01 3695.31 3793.75 3883.43 3207.62 0.057391 3365.52 \n", "2020-07-01 3548.99 3695.31 3793.75 3104.66 0.033163 3207.62 \n", "2020-06-01 3418.70 3548.99 3695.31 2919.61 0.063382 3104.66 \n", "2020-05-01 3365.52 3418.70 3548.99 2761.98 0.057071 2919.61 \n", "2020-04-01 3391.71 3365.52 3418.70 2652.39 0.041317 2761.98 \n", "2020-03-01 3207.62 3391.71 3365.52 3277.31 -0.190681 2652.39 \n", "2020-02-01 3104.66 3207.62 3391.71 3278.20 -0.000271 2652.39 \n", "2020-01-01 2919.61 3104.66 3207.62 3176.75 0.031935 2652.39 \n", "2019-12-01 2761.98 2919.61 3104.66 3104.90 0.023141 2652.39 \n", "2019-11-01 2652.39 2761.98 2919.61 2977.68 0.042725 2652.39 \n", "2019-10-01 3277.31 2652.39 2761.98 2982.16 -0.001502 2652.39 \n", "\n", " Price_Corr_6M horizon \n", "Date \n", "2021-10-01 NaN future \n", "2021-08-01 NaN future \n", "2021-07-01 NaN future \n", "2021-06-01 NaN future \n", "2021-05-01 NaN future \n", "2021-04-01 NaN future \n", "2021-03-01 0.000000 past \n", "2021-02-01 0.000000 past \n", "2021-01-01 0.000000 past \n", "2020-12-01 0.000000 past \n", "2020-11-01 0.000000 past \n", "2020-10-01 0.000000 past \n", "2020-09-01 0.000000 past \n", "2020-08-01 0.007722 past \n", "2020-07-01 0.000000 past \n", "2020-06-01 0.000000 past \n", "2020-05-01 0.000000 past \n", "2020-04-01 0.000000 past \n", "2020-03-01 0.000000 past \n", "2020-02-01 0.190681 past \n", "2020-01-01 0.190900 past \n", "2019-12-01 0.165062 past \n", "2019-11-01 0.145741 past \n", "2019-10-01 0.109243 past " ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_initial['Date']=df_initial.index # add required column\n", "df_initial.head(24)" ] }, { "cell_type": "code", "execution_count": 74, "id": "b3b75398", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6M
Date
2021-03-0135.043910.512021-03-013910.514141.184167.854238.494358.134450.374357.043883.430.0069733910.510.0
2021-02-0135.103883.432021-02-013883.433910.514141.184167.854238.494358.134450.373793.750.0236393883.430.0
2021-01-0134.513793.752021-01-013793.753883.433910.514141.184167.854238.494358.133695.310.0266393793.750.0
2020-12-0133.773695.312020-12-013695.313793.753883.433910.514141.184167.854238.493548.990.0412293695.310.0
2020-11-0132.473548.992020-11-013548.993695.313793.753883.433910.514141.184167.853418.700.0381113548.990.0
\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-03-01 35.04 3910.51 2021-03-01 3910.51 4141.18 4167.85 4238.49 \n", "2021-02-01 35.10 3883.43 2021-02-01 3883.43 3910.51 4141.18 4167.85 \n", "2021-01-01 34.51 3793.75 2021-01-01 3793.75 3883.43 3910.51 4141.18 \n", "2020-12-01 33.77 3695.31 2020-12-01 3695.31 3793.75 3883.43 3910.51 \n", "2020-11-01 32.47 3548.99 2020-11-01 3548.99 3695.31 3793.75 3883.43 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-03-01 4358.13 4450.37 4357.04 3883.43 0.006973 3910.51 \n", "2021-02-01 4238.49 4358.13 4450.37 3793.75 0.023639 3883.43 \n", "2021-01-01 4167.85 4238.49 4358.13 3695.31 0.026639 3793.75 \n", "2020-12-01 4141.18 4167.85 4238.49 3548.99 0.041229 3695.31 \n", "2020-11-01 3910.51 4141.18 4167.85 3418.70 0.038111 3548.99 \n", "\n", " Price_Corr_6M \n", "Date \n", "2021-03-01 0.0 \n", "2021-02-01 0.0 \n", "2021-01-01 0.0 \n", "2020-12-01 0.0 \n", "2020-11-01 0.0 " ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 75, "id": "56797b7f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
Date
2021-10-0124.8238.4425.59728.44629.11329.54829.94530.4131.02532.73035.08237.01431.3605563.4601542.7707720.584275-0.42758231.54559531.3605563.4601540.9180000.9874522567.314450.372595.3662756.2842839.4912906.9622991.9253182.9243339.3243578.2543902.3864262.2003304.132222565.618155470.1738270.708066-0.7407793350.8695683304.132222565.618155108.654286102.967154-0.1906810.063382-0.097283-0.022067-0.0033680.0080630.0166050.0232400.0289210.0358110.0412910.0571350.0124340.0453390.029242-2.73420410.9174980.0464020.0341320.0318820.0405420.046385
2021-08-0124.8238.4425.59728.44629.11329.54829.94530.4131.02532.50034.88136.74831.2213893.2977332.5807410.602872-0.16466731.39025531.2213893.2977330.9400000.9933612567.314450.372595.3662756.2842839.4912901.9602980.8163119.2703277.9333444.7583856.5264181.9783263.700556539.629090442.4412040.816545-0.4628243306.7887743263.700556539.629090109.303143102.940094-0.1906810.063382-0.097283-0.021254-0.0006410.0129940.0166050.0232400.0289210.0358110.0412910.0571350.0134410.0449770.028058-2.85949011.6532280.0463400.0339740.0319630.0409170.046449
2021-07-0124.8237.6825.59728.44629.11329.54829.94530.4131.02532.40634.28836.64031.0533333.0653222.3625930.531582-0.04159831.20007531.0533333.0653220.9248571.0000072567.314358.132595.3662756.2842839.4912898.3002960.2593104.7083256.4033397.1083764.2184146.5143219.463056503.646380410.9220680.872566-0.3110793257.5383253219.463056503.646380107.915714103.486517-0.1906810.063382-0.097283-0.021254-0.0006410.0129940.0166050.0232400.0289210.0358110.0412910.0571350.0134910.0449870.028091-2.86101911.6544730.0463640.0340240.0319430.0409350.046436
2021-06-0124.8236.8625.59728.44629.11329.54829.94530.4131.02531.99033.42535.40430.8925002.8521822.1706940.4605510.14458731.02024430.8925002.8521820.9157141.0023842567.314238.492595.3662756.2842800.8782891.6362914.8673017.8203198.3593370.7583651.4143956.6443176.005000468.885055380.8469440.920733-0.1645133209.4787623176.005000468.885055106.331143103.719202-0.1906810.063382-0.097283-0.021254-0.0006410.0127900.0157440.0230070.0284450.0358110.0412910.0571350.0131040.0449170.027833-2.84815811.6372580.0461860.0336360.0321000.0408620.046485
2021-05-0124.8236.7225.59728.44629.11329.54829.94530.4131.02531.68232.57535.05230.7472222.6667052.0063580.3983470.42581730.85944730.7472222.6667050.9162861.0020042567.314167.852595.3662754.4522791.1862864.2902903.1102984.9503155.1953295.6643509.9033888.8463134.778889436.956849353.8847530.9761780.0425823164.2481453134.778889436.956849105.435429104.158001-0.1906810.063382-0.097283-0.021254-0.0006410.0127900.0157440.0230070.0284450.0358110.0412910.0571350.0131760.0449250.027881-2.85160911.6466430.0462150.0337090.0320640.0407130.046590
\n", "
" ], "text/plain": [ " 1 2 3 4 5 6 7 8 \\\n", "Date \n", "2021-10-01 24.82 38.44 25.597 28.446 29.113 29.548 29.945 30.41 \n", "2021-08-01 24.82 38.44 25.597 28.446 29.113 29.548 29.945 30.41 \n", "2021-07-01 24.82 37.68 25.597 28.446 29.113 29.548 29.945 30.41 \n", "2021-06-01 24.82 36.86 25.597 28.446 29.113 29.548 29.945 30.41 \n", "2021-05-01 24.82 36.72 25.597 28.446 29.113 29.548 29.945 30.41 \n", "\n", " 9 10 11 12 13 14 15 \\\n", "Date \n", "2021-10-01 31.025 32.730 35.082 37.014 31.360556 3.460154 2.770772 \n", "2021-08-01 31.025 32.500 34.881 36.748 31.221389 3.297733 2.580741 \n", "2021-07-01 31.025 32.406 34.288 36.640 31.053333 3.065322 2.362593 \n", "2021-06-01 31.025 31.990 33.425 35.404 30.892500 2.852182 2.170694 \n", "2021-05-01 31.025 31.682 32.575 35.052 30.747222 2.666705 2.006358 \n", "\n", " 16 17 18 19 20 21 \\\n", "Date \n", "2021-10-01 0.584275 -0.427582 31.545595 31.360556 3.460154 0.918000 \n", "2021-08-01 0.602872 -0.164667 31.390255 31.221389 3.297733 0.940000 \n", "2021-07-01 0.531582 -0.041598 31.200075 31.053333 3.065322 0.924857 \n", "2021-06-01 0.460551 0.144587 31.020244 30.892500 2.852182 0.915714 \n", "2021-05-01 0.398347 0.425817 30.859447 30.747222 2.666705 0.916286 \n", "\n", " 22 23 24 25 26 27 \\\n", "Date \n", "2021-10-01 0.987452 2567.31 4450.37 2595.366 2756.284 2839.491 \n", "2021-08-01 0.993361 2567.31 4450.37 2595.366 2756.284 2839.491 \n", "2021-07-01 1.000007 2567.31 4358.13 2595.366 2756.284 2839.491 \n", "2021-06-01 1.002384 2567.31 4238.49 2595.366 2756.284 2800.878 \n", "2021-05-01 1.002004 2567.31 4167.85 2595.366 2754.452 2791.186 \n", "\n", " 28 29 30 31 32 33 \\\n", "Date \n", "2021-10-01 2906.962 2991.925 3182.924 3339.324 3578.254 3902.386 \n", "2021-08-01 2901.960 2980.816 3119.270 3277.933 3444.758 3856.526 \n", "2021-07-01 2898.300 2960.259 3104.708 3256.403 3397.108 3764.218 \n", "2021-06-01 2891.636 2914.867 3017.820 3198.359 3370.758 3651.414 \n", "2021-05-01 2864.290 2903.110 2984.950 3155.195 3295.664 3509.903 \n", "\n", " 34 35 36 37 38 39 \\\n", "Date \n", "2021-10-01 4262.200 3304.132222 565.618155 470.173827 0.708066 -0.740779 \n", "2021-08-01 4181.978 3263.700556 539.629090 442.441204 0.816545 -0.462824 \n", "2021-07-01 4146.514 3219.463056 503.646380 410.922068 0.872566 -0.311079 \n", "2021-06-01 3956.644 3176.005000 468.885055 380.846944 0.920733 -0.164513 \n", "2021-05-01 3888.846 3134.778889 436.956849 353.884753 0.976178 0.042582 \n", "\n", " 40 41 42 43 44 \\\n", "Date \n", "2021-10-01 3350.869568 3304.132222 565.618155 108.654286 102.967154 \n", "2021-08-01 3306.788774 3263.700556 539.629090 109.303143 102.940094 \n", "2021-07-01 3257.538325 3219.463056 503.646380 107.915714 103.486517 \n", "2021-06-01 3209.478762 3176.005000 468.885055 106.331143 103.719202 \n", "2021-05-01 3164.248145 3134.778889 436.956849 105.435429 104.158001 \n", "\n", " 45 46 47 48 49 50 \\\n", "Date \n", "2021-10-01 -0.190681 0.063382 -0.097283 -0.022067 -0.003368 0.008063 \n", "2021-08-01 -0.190681 0.063382 -0.097283 -0.021254 -0.000641 0.012994 \n", "2021-07-01 -0.190681 0.063382 -0.097283 -0.021254 -0.000641 0.012994 \n", "2021-06-01 -0.190681 0.063382 -0.097283 -0.021254 -0.000641 0.012790 \n", "2021-05-01 -0.190681 0.063382 -0.097283 -0.021254 -0.000641 0.012790 \n", "\n", " 51 52 53 54 55 56 \\\n", "Date \n", "2021-10-01 0.016605 0.023240 0.028921 0.035811 0.041291 0.057135 \n", "2021-08-01 0.016605 0.023240 0.028921 0.035811 0.041291 0.057135 \n", "2021-07-01 0.016605 0.023240 0.028921 0.035811 0.041291 0.057135 \n", "2021-06-01 0.015744 0.023007 0.028445 0.035811 0.041291 0.057135 \n", "2021-05-01 0.015744 0.023007 0.028445 0.035811 0.041291 0.057135 \n", "\n", " 57 58 59 60 61 62 \\\n", "Date \n", "2021-10-01 0.012434 0.045339 0.029242 -2.734204 10.917498 0.046402 \n", "2021-08-01 0.013441 0.044977 0.028058 -2.859490 11.653228 0.046340 \n", "2021-07-01 0.013491 0.044987 0.028091 -2.861019 11.654473 0.046364 \n", "2021-06-01 0.013104 0.044917 0.027833 -2.848158 11.637258 0.046186 \n", "2021-05-01 0.013176 0.044925 0.027881 -2.851609 11.646643 0.046215 \n", "\n", " 63 64 65 66 \n", "Date \n", "2021-10-01 0.034132 0.031882 0.040542 0.046385 \n", "2021-08-01 0.033974 0.031963 0.040917 0.046449 \n", "2021-07-01 0.034024 0.031943 0.040935 0.046436 \n", "2021-06-01 0.033636 0.032100 0.040862 0.046485 \n", "2021-05-01 0.033709 0.032064 0.040713 0.046590 " ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "periods=120 # predicted periods\n", "df_pred = df_initial.copy()\n", "cols_features =['PER', 'Price', 'Price_Var']\n", "X_pred, y_dummy = generate_dataset(df_pred, cols_features, band, periods=periods)\n", "X_pred.head() # generated features" ] }, { "cell_type": "code", "execution_count": 76, "id": "6f871bde", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(120, 66)" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_pred.shape" ] }, { "cell_type": "code", "execution_count": 77, "id": "e063ce53", "metadata": {}, "outputs": [], "source": [ "# df_pred = df_pred.iloc[:periods]\n", "# df_pred" ] }, { "cell_type": "code", "execution_count": 78, "id": "9f90c885", "metadata": {}, "outputs": [], "source": [ "y_pred = model.predict(X_pred).round(2) # readable\n", "# y_pred = model.predict(X_pred)\n", "# y_pred" ] }, { "cell_type": "code", "execution_count": 79, "id": "7dc6476d", "metadata": {}, "outputs": [], "source": [ "df_pred = df_pred.iloc[:periods].copy()\n", "df_pred[col_y+'Pred'] = np.clip(y_pred,0,0.5) # replace outliers" ] }, { "cell_type": "code", "execution_count": 80, "id": "0a9c72fa", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPricePrice_Corr_6MhorizonPrice_Corr_6MPred
Date
2021-10-0137.634357.04NaNfuture0.04
2021-08-0138.444450.37NaNfuture0.05
2021-07-0137.684358.13NaNfuture0.04
2021-06-0136.864238.49NaNfuture0.03
2021-05-0136.624167.85NaNfuture0.02
2021-04-0136.724141.18NaNfuture0.02
2021-03-0135.043910.510.000000past0.00
2021-02-0135.103883.430.000000past0.00
2021-01-0134.513793.750.000000past0.00
2020-12-0133.773695.310.000000past0.00
2020-11-0132.473548.990.000000past0.00
2020-10-0131.283418.700.000000past0.00
2020-09-0130.843365.520.000000past0.00
2020-08-0131.163391.710.007722past0.00
2020-07-0129.603207.620.000000past0.00
2020-06-0128.843104.660.000000past0.00
2020-05-0127.332919.610.000000past0.00
2020-04-0125.932761.980.000000past0.00
2020-03-0124.822652.390.000000past0.00
2020-02-0130.733277.310.190681past0.19
2020-01-0130.993278.200.190900past0.19
2019-12-0130.333176.750.165062past0.17
2019-11-0129.843104.900.145741past0.15
2019-10-0128.842977.680.109243past0.11
2019-09-0129.232982.160.110581past0.01
2019-08-0128.712897.500.000000past0.00
2019-07-0129.992996.110.032913past0.00
2019-06-0129.282890.170.000000past0.00
2019-05-0129.242854.710.000000past0.01
2019-04-0130.132903.800.016905past0.03
2019-03-0129.582803.980.000000past0.03
2019-02-0129.542754.860.000000past0.05
2019-01-0128.382607.390.000000past0.04
2018-12-0128.292567.310.000000past0.04
2018-11-0130.202723.230.057256past0.06
2018-10-0131.042785.460.078317past0.08
\n", "
" ], "text/plain": [ " PER Price Price_Corr_6M horizon Price_Corr_6MPred\n", "Date \n", "2021-10-01 37.63 4357.04 NaN future 0.04\n", "2021-08-01 38.44 4450.37 NaN future 0.05\n", "2021-07-01 37.68 4358.13 NaN future 0.04\n", "2021-06-01 36.86 4238.49 NaN future 0.03\n", "2021-05-01 36.62 4167.85 NaN future 0.02\n", "2021-04-01 36.72 4141.18 NaN future 0.02\n", "2021-03-01 35.04 3910.51 0.000000 past 0.00\n", "2021-02-01 35.10 3883.43 0.000000 past 0.00\n", "2021-01-01 34.51 3793.75 0.000000 past 0.00\n", "2020-12-01 33.77 3695.31 0.000000 past 0.00\n", "2020-11-01 32.47 3548.99 0.000000 past 0.00\n", "2020-10-01 31.28 3418.70 0.000000 past 0.00\n", "2020-09-01 30.84 3365.52 0.000000 past 0.00\n", "2020-08-01 31.16 3391.71 0.007722 past 0.00\n", "2020-07-01 29.60 3207.62 0.000000 past 0.00\n", "2020-06-01 28.84 3104.66 0.000000 past 0.00\n", "2020-05-01 27.33 2919.61 0.000000 past 0.00\n", "2020-04-01 25.93 2761.98 0.000000 past 0.00\n", "2020-03-01 24.82 2652.39 0.000000 past 0.00\n", "2020-02-01 30.73 3277.31 0.190681 past 0.19\n", "2020-01-01 30.99 3278.20 0.190900 past 0.19\n", "2019-12-01 30.33 3176.75 0.165062 past 0.17\n", "2019-11-01 29.84 3104.90 0.145741 past 0.15\n", "2019-10-01 28.84 2977.68 0.109243 past 0.11\n", "2019-09-01 29.23 2982.16 0.110581 past 0.01\n", "2019-08-01 28.71 2897.50 0.000000 past 0.00\n", "2019-07-01 29.99 2996.11 0.032913 past 0.00\n", "2019-06-01 29.28 2890.17 0.000000 past 0.00\n", "2019-05-01 29.24 2854.71 0.000000 past 0.01\n", "2019-04-01 30.13 2903.80 0.016905 past 0.03\n", "2019-03-01 29.58 2803.98 0.000000 past 0.03\n", "2019-02-01 29.54 2754.86 0.000000 past 0.05\n", "2019-01-01 28.38 2607.39 0.000000 past 0.04\n", "2018-12-01 28.29 2567.31 0.000000 past 0.04\n", "2018-11-01 30.20 2723.23 0.057256 past 0.06\n", "2018-10-01 31.04 2785.46 0.078317 past 0.08" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cols_pred = ['PER', 'Price', 'Price_Corr_6M', 'horizon', 'Price_Corr_6MPred']\n", "df_pred[cols_pred].head(36) # one shoot prediction" ] }, { "cell_type": "code", "execution_count": 81, "id": "f4a9dd82", "metadata": {}, "outputs": [], "source": [ "ind_y = df_pred['horizon']=='past'\n", "# ind_y" ] }, { "cell_type": "code", "execution_count": 82, "id": "405c67a0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.815055914768403" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model.score(X_pred.loc[ind_y], df_pred.loc[ind_y,col_y]) # score for past - could contain seen data (X_train)" ] }, { "cell_type": "code", "execution_count": 83, "id": "882e5e9a", "metadata": {}, "outputs": [], "source": [ "# ind_y[ind_y==True] # past months for score" ] }, { "cell_type": "code", "execution_count": 84, "id": "598ef8e8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "retest score: 0.77 0.77 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.77 band: 60\n", "retest score: 0.752 0.752 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.752 band: 36\n", "retest score: 0.779 0.779 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.779 band: 60\n", "retest score: 0.767 0.767 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.767 band: 24\n", "retest score: 0.803 0.803 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.803 band: 60\n", "retest score: 0.769 0.769 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.769 band: 60\n", "retest score: 0.818 0.818 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.818 band: 60\n", "retest score: 0.719 0.719 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.719 band: 60\n", "retest score: 0.749 0.749 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.749 band: 24\n", "retest score: 0.71 0.71 features: ['PER', 'Price', 'Price_Var'] X_train.shape: (430, 66)\n", "score: 0.71 band: 60\n" ] } ], "source": [ "# RANDOM CROSS FOLD\n", "n_times = 10 # build model n times and predict n times\n", "periods = 6 # predicted last months\n", "df_pred = df_initial.copy()\n", "df_pred_iter = df_pred.iloc[:periods].copy()\n", "ls_pc6m_cols=[]\n", "ls_score = []\n", "cols_features =['PER', 'Price', 'Price_Var']\n", "for i in range(n_times):\n", " start_date = '1970-01-01'\n", " model, band, score = generate_model(df, cols_features, start_date, True)\n", " ls_score.append(score.round(3))\n", " print('score:',score.round(3), 'band:', band)\n", " \n", " X_pred, y_dummy = generate_dataset(df_pred, cols_features, band, periods=periods)\n", " y_pred = model.predict(X_pred).round(2) # readable\n", " pc6m_col = 'PC6M'+str(1+i)\n", " ls_pc6m_cols.append(pc6m_col)\n", " df_pred_iter[pc6m_col] = y_pred " ] }, { "cell_type": "code", "execution_count": 85, "id": "4e355c6a", "metadata": {}, "outputs": [], "source": [ "cols_iter = ['PER', 'Price', 'Price_Var', 'horizon']\n", "df_pred_iter=df_pred_iter[cols_iter+ls_pc6m_cols].copy()" ] }, { "cell_type": "code", "execution_count": 86, "id": "12456cb3", "metadata": {}, "outputs": [], "source": [ "df_pred_iter['PC6M_AVG']=df_pred_iter[ls_pc6m_cols].mean(axis=1) # average of all predictions" ] }, { "cell_type": "code", "execution_count": 87, "id": "3f45fc69", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPricePrice_VarhorizonPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
Date
2021-10-0137.634357.04-0.020971future0.010.080.020.090.010.020.040.010.050.010.034
2021-08-0138.444450.370.021165future0.010.050.020.100.010.020.040.010.020.010.029
2021-07-0137.684358.130.028227future0.010.050.020.070.010.020.040.010.020.000.025
2021-06-0136.864238.490.016949future0.010.050.020.060.010.020.040.010.020.020.026
2021-05-0136.624167.850.006440future0.010.050.000.060.010.020.040.010.020.020.024
2021-04-0136.724141.180.058987future0.010.050.000.060.010.020.000.010.000.010.017
\n", "
" ], "text/plain": [ " PER Price Price_Var horizon PC6M1 PC6M2 PC6M3 PC6M4 \\\n", "Date \n", "2021-10-01 37.63 4357.04 -0.020971 future 0.01 0.08 0.02 0.09 \n", "2021-08-01 38.44 4450.37 0.021165 future 0.01 0.05 0.02 0.10 \n", "2021-07-01 37.68 4358.13 0.028227 future 0.01 0.05 0.02 0.07 \n", "2021-06-01 36.86 4238.49 0.016949 future 0.01 0.05 0.02 0.06 \n", "2021-05-01 36.62 4167.85 0.006440 future 0.01 0.05 0.00 0.06 \n", "2021-04-01 36.72 4141.18 0.058987 future 0.01 0.05 0.00 0.06 \n", "\n", " PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 PC6M10 PC6M_AVG \n", "Date \n", "2021-10-01 0.01 0.02 0.04 0.01 0.05 0.01 0.034 \n", "2021-08-01 0.01 0.02 0.04 0.01 0.02 0.01 0.029 \n", "2021-07-01 0.01 0.02 0.04 0.01 0.02 0.00 0.025 \n", "2021-06-01 0.01 0.02 0.04 0.01 0.02 0.02 0.026 \n", "2021-05-01 0.01 0.02 0.04 0.01 0.02 0.02 0.024 \n", "2021-04-01 0.01 0.02 0.00 0.01 0.00 0.01 0.017 " ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# RANDOM CROSS FOLD PREDICTION with ['PER', 'Price', 'Price_Var']\n", "df_pred_iter" ] }, { "cell_type": "code", "execution_count": 88, "id": "b78c6dbd", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.7636, [0.77, 0.752, 0.779, 0.767, 0.803, 0.769, 0.818, 0.719, 0.749, 0.71])" ] }, "execution_count": 88, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.mean(ls_score), ls_score # model score mean and model score list" ] }, { "cell_type": "code", "execution_count": 89, "id": "304cd723", "metadata": {}, "outputs": [], "source": [ "# Buffet Indicator" ] }, { "cell_type": "code", "execution_count": 90, "id": "44f8723c", "metadata": {}, "outputs": [], "source": [ "# Get your api_key from FRED\n", "# https://fred.stlouisfed.org/docs/api/api_key.html\n", "\n", "# fred = Fred(api_key='abcdefghijklmnopqrstuvwxyz123456') # example # get your api_key from FRED \n", "fred = Fred(api_key='your_api_key')" ] }, { "cell_type": "code", "execution_count": 91, "id": "34429a6f", "metadata": {}, "outputs": [], "source": [ "# wilshire = fred.get_series('WILL5000PRFC')" ] }, { "cell_type": "code", "execution_count": 92, "id": "99705806", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1946-01-01 NaN\n", "1946-04-01 NaN\n", "1946-07-01 NaN\n", "1946-10-01 NaN\n", "1947-01-01 243.164\n", " ... \n", "2020-04-01 19477.444\n", "2020-07-01 21138.574\n", "2020-10-01 21477.597\n", "2021-01-01 22038.226\n", "2021-04-01 22740.959\n", "Length: 302, dtype: float64" ] }, "execution_count": 92, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gdp_data = fred.get_series_latest_release('GDP')\n", "gdp_data" ] }, { "cell_type": "code", "execution_count": 93, "id": "de63c4c2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1946-01-01 NaN\n", "1946-01-02 NaN\n", "1946-01-03 NaN\n", "1946-01-04 NaN\n", "1946-01-05 NaN\n", " ... \n", "2021-03-28 NaN\n", "2021-03-29 NaN\n", "2021-03-30 NaN\n", "2021-03-31 NaN\n", "2021-04-01 22740.959\n", "Freq: D, Length: 27485, dtype: float64" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Convert from quarter to day with interpolate\n", "idx = pd.date_range(gdp_data.index.min(), gdp_data.index.max()) \n", "gdp_data = gdp_data.reindex(idx, fill_value=np.nan).copy()\n", "gdp_data" ] }, { "cell_type": "code", "execution_count": 94, "id": "83ba2513", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1946-01-01 NaN\n", "1946-01-02 NaN\n", "1946-01-03 NaN\n", "1946-01-04 NaN\n", "1946-01-05 NaN\n", " ... \n", "2021-03-28 22709.726422\n", "2021-03-29 22717.534567\n", "2021-03-30 22725.342711\n", "2021-03-31 22733.150856\n", "2021-04-01 22740.959000\n", "Freq: D, Length: 27485, dtype: float64" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gdp_data = pd.to_numeric(gdp_data, errors='coerce').astype('float64').copy()\n", "gdp_data.interpolate(inplace=True)\n", "gdp_data" ] }, { "cell_type": "code", "execution_count": 95, "id": "f12fbb51", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# %matplotlib inline\n", "gdp_data.plot.line()" ] }, { "cell_type": "code", "execution_count": 96, "id": "900e3040", "metadata": {}, "outputs": [], "source": [ "wilshire = fred.get_series('WILL5000PRFC')" ] }, { "cell_type": "code", "execution_count": 97, "id": "7fb82e53", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1970-12-31 830.27\n", "1971-01-01 NaN\n", "1971-01-02 NaN\n", "1971-01-03 NaN\n", "1971-01-04 NaN\n", " ... \n", "2021-09-26 NaN\n", "2021-09-27 46299.74\n", "2021-09-28 45313.81\n", "2021-09-29 45332.09\n", "2021-09-30 44850.03\n", "Freq: D, Length: 18537, dtype: float64" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "idx = pd.date_range(wilshire.index.min(), wilshire.index.max())\n", "wilshire = wilshire.reindex(idx, fill_value=np.nan).copy()\n", "wilshire" ] }, { "cell_type": "code", "execution_count": 98, "id": "0374be7f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1970-12-31 830.270000\n", "1971-01-01 831.754138\n", "1971-01-02 833.238276\n", "1971-01-03 834.722414\n", "1971-01-04 836.206552\n", " ... \n", "2021-09-26 46320.236667\n", "2021-09-27 46299.740000\n", "2021-09-28 45313.810000\n", "2021-09-29 45332.090000\n", "2021-09-30 44850.030000\n", "Freq: D, Length: 18537, dtype: float64" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" } ], "source": [ "wilshire.interpolate(inplace=True)\n", "wilshire" ] }, { "cell_type": "code", "execution_count": 99, "id": "f7b218f2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "wilshire.plot.line()" ] }, { "cell_type": "code", "execution_count": 100, "id": "2dd5664d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
GDPWilshire 5000
1946-01-01NaNNaN
1946-01-02NaNNaN
1946-01-03NaNNaN
1946-01-04NaNNaN
1946-01-05NaNNaN
.........
2021-09-26NaN46320.236667
2021-09-27NaN46299.740000
2021-09-28NaN45313.810000
2021-09-29NaN45332.090000
2021-09-30NaN44850.030000
\n", "

27667 rows × 2 columns

\n", "
" ], "text/plain": [ " GDP Wilshire 5000\n", "1946-01-01 NaN NaN\n", "1946-01-02 NaN NaN\n", "1946-01-03 NaN NaN\n", "1946-01-04 NaN NaN\n", "1946-01-05 NaN NaN\n", "... ... ...\n", "2021-09-26 NaN 46320.236667\n", "2021-09-27 NaN 46299.740000\n", "2021-09-28 NaN 45313.810000\n", "2021-09-29 NaN 45332.090000\n", "2021-09-30 NaN 44850.030000\n", "\n", "[27667 rows x 2 columns]" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gdp_data.name='GDP'\n", "wilshire.name='Wilshire 5000'\n", "bf_ind = pd.concat([gdp_data, wilshire], axis=1) # Buffet Indicator\n", "bf_ind" ] }, { "cell_type": "code", "execution_count": 101, "id": "e9782c2a", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
GDPWilshire 5000
1970-12-311134.650043830.270000
1971-01-011135.156000831.754138
1971-01-021135.390611833.238276
1971-01-031135.625222834.722414
1971-01-041135.859833836.206552
.........
2021-09-26NaN46320.236667
2021-09-27NaN46299.740000
2021-09-28NaN45313.810000
2021-09-29NaN45332.090000
2021-09-30NaN44850.030000
\n", "

18537 rows × 2 columns

\n", "
" ], "text/plain": [ " GDP Wilshire 5000\n", "1970-12-31 1134.650043 830.270000\n", "1971-01-01 1135.156000 831.754138\n", "1971-01-02 1135.390611 833.238276\n", "1971-01-03 1135.625222 834.722414\n", "1971-01-04 1135.859833 836.206552\n", "... ... ...\n", "2021-09-26 NaN 46320.236667\n", "2021-09-27 NaN 46299.740000\n", "2021-09-28 NaN 45313.810000\n", "2021-09-29 NaN 45332.090000\n", "2021-09-30 NaN 44850.030000\n", "\n", "[18537 rows x 2 columns]" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bf_ind.dropna(subset=['Wilshire 5000'], inplace=True) # drop missing GDP\n", "bf_ind" ] }, { "cell_type": "code", "execution_count": 102, "id": "620c7a8b", "metadata": {}, "outputs": [], "source": [ "bf_ind.interpolate(method ='spline',order=2, inplace=True)" ] }, { "cell_type": "code", "execution_count": 103, "id": "da14874c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
GDPWilshire 5000Buffet Indicator
1970-12-311134.650043830.2700000.731741
1971-01-011135.156000831.7541380.732722
1971-01-021135.390611833.2382760.733878
1971-01-031135.625222834.7224140.735033
1971-01-041135.859833836.2065520.736188
............
2021-09-2624046.81469646320.2366671.926252
2021-09-2724053.81346946299.7400001.924840
2021-09-2824060.80839645313.8100001.883304
2021-09-2924067.79947845332.0900001.883516
2021-09-3024074.78671544850.0300001.862946
\n", "

18537 rows × 3 columns

\n", "
" ], "text/plain": [ " GDP Wilshire 5000 Buffet Indicator\n", "1970-12-31 1134.650043 830.270000 0.731741\n", "1971-01-01 1135.156000 831.754138 0.732722\n", "1971-01-02 1135.390611 833.238276 0.733878\n", "1971-01-03 1135.625222 834.722414 0.735033\n", "1971-01-04 1135.859833 836.206552 0.736188\n", "... ... ... ...\n", "2021-09-26 24046.814696 46320.236667 1.926252\n", "2021-09-27 24053.813469 46299.740000 1.924840\n", "2021-09-28 24060.808396 45313.810000 1.883304\n", "2021-09-29 24067.799478 45332.090000 1.883516\n", "2021-09-30 24074.786715 44850.030000 1.862946\n", "\n", "[18537 rows x 3 columns]" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "col_bf_ind='Buffet Indicator'\n", "bf_ind[col_bf_ind] = bf_ind['Wilshire 5000'] / bf_ind['GDP'] \n", "bf_ind" ] }, { "cell_type": "code", "execution_count": 104, "id": "0b13a239", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# https://www.longtermtrends.net/market-cap-to-gdp-the-buffett-indicator/\n", "bf_ind[col_bf_ind].plot.line() # compare with chart from above link" ] }, { "cell_type": "code", "execution_count": 105, "id": "28b38200", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(Timestamp('1970-12-31 00:00:00', freq='D'),\n", " Timestamp('2021-09-30 00:00:00', freq='D'))" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bf_ind.index.min(), bf_ind.index.max()" ] }, { "cell_type": "code", "execution_count": 106, "id": "0637c893", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PERPriceDatePrice0FPrice1FPrice2FPrice3FPrice4FPrice5FPrice6FPrice1PPrice_VarPriceFminPrice_Corr_6Mhorizon
Date
2021-10-0137.634357.042021-10-014357.04NaNNaNNaNNaNNaNNaN4450.37-0.0209714357.04NaNfuture
2021-08-0138.444450.372021-08-014450.374357.04NaNNaNNaNNaNNaN4358.130.0211654357.04NaNfuture
2021-07-0137.684358.132021-07-014358.134450.374357.04NaNNaNNaNNaN4238.490.0282274357.04NaNfuture
2021-06-0136.864238.492021-06-014238.494358.134450.374357.04NaNNaNNaN4167.850.0169494238.49NaNfuture
2021-05-0136.624167.852021-05-014167.854238.494358.134450.374357.04NaNNaN4141.180.0064404167.85NaNfuture
................................................
1871-06-0112.594.821871-06-014.824.734.794.844.594.644.744.86-0.0082304.590.047718past
1871-05-0112.594.861871-05-014.864.824.734.794.844.594.644.740.0253164.590.055556past
1871-04-0112.054.741871-04-014.744.864.824.734.794.844.594.610.0282004.590.031646past
1871-03-0111.194.611871-03-014.614.744.864.824.734.794.844.500.0244444.610.000000past
1871-02-0110.924.501871-02-014.504.614.744.864.824.734.79NaNNaN4.50NaNpast
\n", "

1808 rows × 15 columns

\n", "
" ], "text/plain": [ " PER Price Date Price0F Price1F Price2F Price3F \\\n", "Date \n", "2021-10-01 37.63 4357.04 2021-10-01 4357.04 NaN NaN NaN \n", "2021-08-01 38.44 4450.37 2021-08-01 4450.37 4357.04 NaN NaN \n", "2021-07-01 37.68 4358.13 2021-07-01 4358.13 4450.37 4357.04 NaN \n", "2021-06-01 36.86 4238.49 2021-06-01 4238.49 4358.13 4450.37 4357.04 \n", "2021-05-01 36.62 4167.85 2021-05-01 4167.85 4238.49 4358.13 4450.37 \n", "... ... ... ... ... ... ... ... \n", "1871-06-01 12.59 4.82 1871-06-01 4.82 4.73 4.79 4.84 \n", "1871-05-01 12.59 4.86 1871-05-01 4.86 4.82 4.73 4.79 \n", "1871-04-01 12.05 4.74 1871-04-01 4.74 4.86 4.82 4.73 \n", "1871-03-01 11.19 4.61 1871-03-01 4.61 4.74 4.86 4.82 \n", "1871-02-01 10.92 4.50 1871-02-01 4.50 4.61 4.74 4.86 \n", "\n", " Price4F Price5F Price6F Price1P Price_Var PriceFmin \\\n", "Date \n", "2021-10-01 NaN NaN NaN 4450.37 -0.020971 4357.04 \n", "2021-08-01 NaN NaN NaN 4358.13 0.021165 4357.04 \n", "2021-07-01 NaN NaN NaN 4238.49 0.028227 4357.04 \n", "2021-06-01 NaN NaN NaN 4167.85 0.016949 4238.49 \n", "2021-05-01 4357.04 NaN NaN 4141.18 0.006440 4167.85 \n", "... ... ... ... ... ... ... \n", "1871-06-01 4.59 4.64 4.74 4.86 -0.008230 4.59 \n", "1871-05-01 4.84 4.59 4.64 4.74 0.025316 4.59 \n", "1871-04-01 4.79 4.84 4.59 4.61 0.028200 4.59 \n", "1871-03-01 4.73 4.79 4.84 4.50 0.024444 4.61 \n", "1871-02-01 4.82 4.73 4.79 NaN NaN 4.50 \n", "\n", " Price_Corr_6M horizon \n", "Date \n", "2021-10-01 NaN future \n", "2021-08-01 NaN future \n", "2021-07-01 NaN future \n", "2021-06-01 NaN future \n", "2021-05-01 NaN future \n", "... ... ... \n", "1871-06-01 0.047718 past \n", "1871-05-01 0.055556 past \n", "1871-04-01 0.031646 past \n", "1871-03-01 0.000000 past \n", "1871-02-01 NaN past \n", "\n", "[1808 rows x 15 columns]" ] }, "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_initial" ] }, { "cell_type": "code", "execution_count": 107, "id": "53319fd9", "metadata": {}, "outputs": [], "source": [ "df_pred = df_initial.copy()\n", "df_pred = pd.concat([df_pred, bf_ind], axis=1)\n", "df_pred.sort_index(ascending=False, inplace=True)" ] }, { "cell_type": "code", "execution_count": 108, "id": "af4181f8", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPrice_Corr_6M
2021-10-012021-10-0137.634357.04-0.020971future1.862946NaN
2021-08-012021-08-0138.444450.370.021165future1.931096NaN
2021-07-012021-07-0137.684358.130.028227future1.934718NaN
2021-06-012021-06-0136.864238.490.016949future1.897103NaN
2021-05-012021-05-0136.624167.850.006440future1.910928NaN
........................
1971-05-011971-05-0117.56101.60-0.013592past0.8200490.086811
1971-04-011971-04-0117.92103.000.034137past0.7992940.055922
1971-03-011971-03-0117.4099.600.025641past0.7735460.023695
1971-02-011971-02-0117.0397.110.038721past0.7655640.000000
1971-01-011971-01-0116.4693.490.038201past0.7327220.000000
\n", "

609 rows × 7 columns

\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "... ... ... ... ... ... ... \n", "1971-05-01 1971-05-01 17.56 101.60 -0.013592 past 0.820049 \n", "1971-04-01 1971-04-01 17.92 103.00 0.034137 past 0.799294 \n", "1971-03-01 1971-03-01 17.40 99.60 0.025641 past 0.773546 \n", "1971-02-01 1971-02-01 17.03 97.11 0.038721 past 0.765564 \n", "1971-01-01 1971-01-01 16.46 93.49 0.038201 past 0.732722 \n", "\n", " Price_Corr_6M \n", "2021-10-01 NaN \n", "2021-08-01 NaN \n", "2021-07-01 NaN \n", "2021-06-01 NaN \n", "2021-05-01 NaN \n", "... ... \n", "1971-05-01 0.086811 \n", "1971-04-01 0.055922 \n", "1971-03-01 0.023695 \n", "1971-02-01 0.000000 \n", "1971-01-01 0.000000 \n", "\n", "[609 rows x 7 columns]" ] }, "execution_count": 108, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cols_iter = ['Date','PER', 'Price', 'Price_Var', 'horizon', 'Buffet Indicator', 'Price_Corr_6M']\n", "df_pred[col_bf_ind] = df_pred[col_bf_ind].interpolate(method='linear', limit_direction='backward')\n", "df_pred = df_pred[cols_iter].copy()\n", "df_pred.dropna(subset=['horizon', 'Buffet Indicator'], inplace=True)\n", "df_pred" ] }, { "cell_type": "code", "execution_count": 109, "id": "ceb17f9e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarBuffet IndicatorPrice_Corr_6M
2021-03-012021-03-0135.043910.510.0069731.8462380.000000
2021-02-012021-02-0135.103883.430.0236391.7987610.000000
2021-01-012021-01-0134.513793.750.0266391.7839690.000000
2020-12-012020-12-0133.773695.310.0412291.7480690.000000
2020-11-012020-11-0132.473548.990.0381111.5689750.000000
.....................
1971-05-011971-05-0117.56101.60-0.0135920.8200490.086811
1971-04-011971-04-0117.92103.000.0341370.7992940.055922
1971-03-011971-03-0117.4099.600.0256410.7735460.023695
1971-02-011971-02-0117.0397.110.0387210.7655640.000000
1971-01-011971-01-0116.4693.490.0382010.7327220.000000
\n", "

603 rows × 6 columns

\n", "
" ], "text/plain": [ " Date PER Price Price_Var Buffet Indicator \\\n", "2021-03-01 2021-03-01 35.04 3910.51 0.006973 1.846238 \n", "2021-02-01 2021-02-01 35.10 3883.43 0.023639 1.798761 \n", "2021-01-01 2021-01-01 34.51 3793.75 0.026639 1.783969 \n", "2020-12-01 2020-12-01 33.77 3695.31 0.041229 1.748069 \n", "2020-11-01 2020-11-01 32.47 3548.99 0.038111 1.568975 \n", "... ... ... ... ... ... \n", "1971-05-01 1971-05-01 17.56 101.60 -0.013592 0.820049 \n", "1971-04-01 1971-04-01 17.92 103.00 0.034137 0.799294 \n", "1971-03-01 1971-03-01 17.40 99.60 0.025641 0.773546 \n", "1971-02-01 1971-02-01 17.03 97.11 0.038721 0.765564 \n", "1971-01-01 1971-01-01 16.46 93.49 0.038201 0.732722 \n", "\n", " Price_Corr_6M \n", "2021-03-01 0.000000 \n", "2021-02-01 0.000000 \n", "2021-01-01 0.000000 \n", "2020-12-01 0.000000 \n", "2020-11-01 0.000000 \n", "... ... \n", "1971-05-01 0.086811 \n", "1971-04-01 0.055922 \n", "1971-03-01 0.023695 \n", "1971-02-01 0.000000 \n", "1971-01-01 0.000000 \n", "\n", "[603 rows x 6 columns]" ] }, "execution_count": 109, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cols_train=['Date','PER', 'Price', 'Price_Var', 'Buffet Indicator', 'Price_Corr_6M']\n", "df= df_pred[cols_train].copy()\n", "df.dropna(inplace=True)\n", "df" ] }, { "cell_type": "code", "execution_count": 110, "id": "a2a6ebf9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "retest score: 0.741 0.741 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.741 band: 60\n", "retest score: 0.814 0.814 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.814 band: 60\n", "retest score: 0.78 0.78 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.78 band: 36\n", "retest score: 0.692 0.692 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.692 band: 60\n", "retest score: 0.737 0.737 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.737 band: 60\n", "retest score: 0.597 0.597 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.597 band: 60\n", "retest score: 0.779 0.779 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.779 band: 36\n", "retest score: 0.669 0.669 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.669 band: 48\n", "retest score: 0.698 0.698 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.698 band: 48\n", "retest score: 0.714 0.714 features: ['PER'] X_train.shape: (418, 22)\n", "score: 0.714 band: 48\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.020.060.050.090.020.010.030.020.050.040.039
2021-08-012021-08-0138.444450.370.021165future1.9310960.020.060.010.090.020.020.020.010.050.040.034
2021-07-012021-07-0137.684358.130.028227future1.9347180.030.070.020.090.020.030.010.020.040.040.037
2021-06-012021-06-0136.864238.490.016949future1.8971030.010.040.000.090.000.000.000.020.040.070.027
2021-05-012021-05-0136.624167.850.006440future1.9109280.010.030.000.090.000.010.000.010.020.050.022
2021-04-012021-04-0136.724141.180.058987future1.8592430.010.010.000.090.000.010.010.000.060.040.023
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.02 0.06 0.05 0.09 0.02 0.01 0.03 0.02 0.05 \n", "2021-08-01 0.02 0.06 0.01 0.09 0.02 0.02 0.02 0.01 0.05 \n", "2021-07-01 0.03 0.07 0.02 0.09 0.02 0.03 0.01 0.02 0.04 \n", "2021-06-01 0.01 0.04 0.00 0.09 0.00 0.00 0.00 0.02 0.04 \n", "2021-05-01 0.01 0.03 0.00 0.09 0.00 0.01 0.00 0.01 0.02 \n", "2021-04-01 0.01 0.01 0.00 0.09 0.00 0.01 0.01 0.00 0.06 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.04 0.039 \n", "2021-08-01 0.04 0.034 \n", "2021-07-01 0.04 0.037 \n", "2021-06-01 0.07 0.027 \n", "2021-05-01 0.05 0.022 \n", "2021-04-01 0.04 0.023 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.722 [0.741, 0.814, 0.78, 0.692, 0.737, 0.597, 0.779, 0.669, 0.698, 0.714]\n", "retest score: 0.823 0.823 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.823 band: 48\n", "retest score: 0.716 0.716 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.716 band: 60\n", "retest score: 0.705 0.705 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.705 band: 24\n", "retest score: 0.755 0.755 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.755 band: 48\n", "retest score: 0.806 0.806 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.806 band: 24\n", "retest score: 0.745 0.745 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.745 band: 60\n", "retest score: 0.719 0.719 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.719 band: 60\n", "retest score: 0.69 0.69 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.69 band: 12\n", "retest score: 0.828 0.828 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.828 band: 48\n", "retest score: 0.792 0.792 features: ['Price'] X_train.shape: (418, 22)\n", "score: 0.792 band: 48\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.030.070.00.020.000.080.070.110.090.030.050
2021-08-012021-08-0138.444450.370.021165future1.9310960.030.070.00.010.000.080.070.110.090.020.048
2021-07-012021-07-0137.684358.130.028227future1.9347180.020.070.00.000.010.080.070.100.080.020.045
2021-06-012021-06-0136.864238.490.016949future1.8971030.020.070.00.000.020.080.070.100.080.020.046
2021-05-012021-05-0136.624167.850.006440future1.9109280.020.070.00.000.000.090.070.110.080.020.046
2021-04-012021-04-0136.724141.180.058987future1.8592430.020.060.00.000.010.080.070.100.080.020.044
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.03 0.07 0.0 0.02 0.00 0.08 0.07 0.11 0.09 \n", "2021-08-01 0.03 0.07 0.0 0.01 0.00 0.08 0.07 0.11 0.09 \n", "2021-07-01 0.02 0.07 0.0 0.00 0.01 0.08 0.07 0.10 0.08 \n", "2021-06-01 0.02 0.07 0.0 0.00 0.02 0.08 0.07 0.10 0.08 \n", "2021-05-01 0.02 0.07 0.0 0.00 0.00 0.09 0.07 0.11 0.08 \n", "2021-04-01 0.02 0.06 0.0 0.00 0.01 0.08 0.07 0.10 0.08 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.03 0.050 \n", "2021-08-01 0.02 0.048 \n", "2021-07-01 0.02 0.045 \n", "2021-06-01 0.02 0.046 \n", "2021-05-01 0.02 0.046 \n", "2021-04-01 0.02 0.044 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.758 [0.823, 0.716, 0.705, 0.755, 0.806, 0.745, 0.719, 0.69, 0.828, 0.792]\n", "retest score: 0.689 0.689 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.689 band: 36\n", "retest score: 0.763 0.763 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.763 band: 60\n", "retest score: 0.734 0.734 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.734 band: 60\n", "retest score: 0.749 0.749 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.749 band: 36\n", "retest score: 0.73 0.73 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.73 band: 24\n", "retest score: 0.745 0.745 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.745 band: 36\n", "retest score: 0.683 0.683 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.683 band: 60\n", "retest score: 0.686 0.686 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.686 band: 48\n", "retest score: 0.751 0.751 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.751 band: 24\n", "retest score: 0.697 0.697 features: ['Price_Var'] X_train.shape: (418, 22)\n", "score: 0.697 band: 60\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.00.00.00.010.010.010.00.040.020.00.009
2021-08-012021-08-0138.444450.370.021165future1.9310960.00.00.00.050.010.020.00.040.020.00.014
2021-07-012021-07-0137.684358.130.028227future1.9347180.00.00.00.050.000.020.00.040.020.00.013
2021-06-012021-06-0136.864238.490.016949future1.8971030.00.00.00.050.000.020.00.030.020.00.012
2021-05-012021-05-0136.624167.850.006440future1.9109280.00.00.00.050.000.020.00.030.020.00.012
2021-04-012021-04-0136.724141.180.058987future1.8592430.00.00.00.050.000.010.00.030.000.00.009
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.0 0.0 0.0 0.01 0.01 0.01 0.0 0.04 0.02 \n", "2021-08-01 0.0 0.0 0.0 0.05 0.01 0.02 0.0 0.04 0.02 \n", "2021-07-01 0.0 0.0 0.0 0.05 0.00 0.02 0.0 0.04 0.02 \n", "2021-06-01 0.0 0.0 0.0 0.05 0.00 0.02 0.0 0.03 0.02 \n", "2021-05-01 0.0 0.0 0.0 0.05 0.00 0.02 0.0 0.03 0.02 \n", "2021-04-01 0.0 0.0 0.0 0.05 0.00 0.01 0.0 0.03 0.00 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.0 0.009 \n", "2021-08-01 0.0 0.014 \n", "2021-07-01 0.0 0.013 \n", "2021-06-01 0.0 0.012 \n", "2021-05-01 0.0 0.012 \n", "2021-04-01 0.0 0.009 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.723 [0.689, 0.763, 0.734, 0.749, 0.73, 0.745, 0.683, 0.686, 0.751, 0.697]\n", "retest score: 0.776 0.776 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.776 band: 36\n", "retest score: 0.644 0.644 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.644 band: 36\n", "retest score: 0.719 0.719 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.719 band: 36\n", "retest score: 0.761 0.761 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.761 band: 36\n", "retest score: 0.771 0.771 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.771 band: 60\n", "retest score: 0.731 0.731 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.731 band: 60\n", "retest score: 0.734 0.734 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.734 band: 36\n", "retest score: 0.763 0.763 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.763 band: 36\n", "retest score: 0.716 0.716 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.716 band: 36\n", "retest score: 0.719 0.719 features: ['Buffet Indicator'] X_train.shape: (418, 22)\n", "score: 0.719 band: 36\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.040.060.020.060.120.120.150.030.090.070.076
2021-08-012021-08-0138.444450.370.021165future1.9310960.040.030.020.050.100.120.100.010.070.020.056
2021-07-012021-07-0137.684358.130.028227future1.9347180.030.030.000.060.080.120.100.010.060.010.050
2021-06-012021-06-0136.864238.490.016949future1.8971030.030.000.000.020.080.090.070.000.050.000.034
2021-05-012021-05-0136.624167.850.006440future1.9109280.030.000.000.020.090.090.060.000.050.000.034
2021-04-012021-04-0136.724141.180.058987future1.8592430.030.010.000.000.010.030.060.000.050.000.019
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.04 0.06 0.02 0.06 0.12 0.12 0.15 0.03 0.09 \n", "2021-08-01 0.04 0.03 0.02 0.05 0.10 0.12 0.10 0.01 0.07 \n", "2021-07-01 0.03 0.03 0.00 0.06 0.08 0.12 0.10 0.01 0.06 \n", "2021-06-01 0.03 0.00 0.00 0.02 0.08 0.09 0.07 0.00 0.05 \n", "2021-05-01 0.03 0.00 0.00 0.02 0.09 0.09 0.06 0.00 0.05 \n", "2021-04-01 0.03 0.01 0.00 0.00 0.01 0.03 0.06 0.00 0.05 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.07 0.076 \n", "2021-08-01 0.02 0.056 \n", "2021-07-01 0.01 0.050 \n", "2021-06-01 0.00 0.034 \n", "2021-05-01 0.00 0.034 \n", "2021-04-01 0.00 0.019 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.733 [0.776, 0.644, 0.719, 0.761, 0.771, 0.731, 0.734, 0.763, 0.716, 0.719]\n", "retest score: 0.805 0.805 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.805 band: 60\n", "retest score: 0.74 0.74 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.74 band: 48\n", "retest score: 0.697 0.697 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.697 band: 36\n", "retest score: 0.749 0.749 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.749 band: 24\n", "retest score: 0.711 0.711 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.711 band: 60\n", "retest score: 0.73 0.73 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.73 band: 48\n", "retest score: 0.75 0.75 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.75 band: 48\n", "retest score: 0.795 0.795 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.795 band: 12\n", "retest score: 0.792 0.792 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.792 band: 60\n", "retest score: 0.757 0.757 features: ['PER', 'Buffet Indicator'] X_train.shape: (418, 44)\n", "score: 0.757 band: 24\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.020.130.020.050.030.010.080.100.010.070.052
2021-08-012021-08-0138.444450.370.021165future1.9310960.030.070.030.020.030.010.090.100.010.080.047
2021-07-012021-07-0137.684358.130.028227future1.9347180.030.050.030.010.020.010.080.100.010.060.040
2021-06-012021-06-0136.864238.490.016949future1.8971030.020.050.000.040.010.010.080.120.000.070.040
2021-05-012021-05-0136.624167.850.006440future1.9109280.010.050.010.040.010.000.060.110.010.070.037
2021-04-012021-04-0136.724141.180.058987future1.8592430.000.050.000.030.010.000.060.100.010.070.033
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.02 0.13 0.02 0.05 0.03 0.01 0.08 0.10 0.01 \n", "2021-08-01 0.03 0.07 0.03 0.02 0.03 0.01 0.09 0.10 0.01 \n", "2021-07-01 0.03 0.05 0.03 0.01 0.02 0.01 0.08 0.10 0.01 \n", "2021-06-01 0.02 0.05 0.00 0.04 0.01 0.01 0.08 0.12 0.00 \n", "2021-05-01 0.01 0.05 0.01 0.04 0.01 0.00 0.06 0.11 0.01 \n", "2021-04-01 0.00 0.05 0.00 0.03 0.01 0.00 0.06 0.10 0.01 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.07 0.052 \n", "2021-08-01 0.08 0.047 \n", "2021-07-01 0.06 0.040 \n", "2021-06-01 0.07 0.040 \n", "2021-05-01 0.07 0.037 \n", "2021-04-01 0.07 0.033 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.753 [0.805, 0.74, 0.697, 0.749, 0.711, 0.73, 0.75, 0.795, 0.792, 0.757]\n", "retest score: 0.776 0.776 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.776 band: 12\n", "retest score: 0.801 0.801 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.801 band: 36\n", "retest score: 0.771 0.771 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.771 band: 60\n", "retest score: 0.819 0.819 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.819 band: 48\n", "retest score: 0.803 0.803 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.803 band: 24\n", "retest score: 0.768 0.768 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.768 band: 60\n", "retest score: 0.841 0.841 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.841 band: 60\n", "retest score: 0.736 0.736 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.736 band: 48\n", "retest score: 0.771 0.771 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.771 band: 60\n", "retest score: 0.783 0.783 features: ['PER', 'Price', 'Buffet Indicator'] X_train.shape: (418, 66)\n", "score: 0.783 band: 48\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DatePERPricePrice_VarhorizonBuffet IndicatorPC6M1PC6M2PC6M3PC6M4PC6M5PC6M6PC6M7PC6M8PC6M9PC6M10PC6M_AVG
2021-10-012021-10-0137.634357.04-0.020971future1.8629460.120.070.090.040.090.070.040.050.050.070.069
2021-08-012021-08-0138.444450.370.021165future1.9310960.120.010.090.040.050.070.040.050.050.040.056
2021-07-012021-07-0137.684358.130.028227future1.9347180.120.010.070.030.000.060.040.050.040.050.047
2021-06-012021-06-0136.864238.490.016949future1.8971030.080.010.060.030.000.070.030.050.040.050.042
2021-05-012021-05-0136.624167.850.006440future1.9109280.080.010.060.030.020.060.030.050.040.050.043
2021-04-012021-04-0136.724141.180.058987future1.8592430.090.010.060.010.020.050.030.030.040.030.037
\n", "
" ], "text/plain": [ " Date PER Price Price_Var horizon Buffet Indicator \\\n", "2021-10-01 2021-10-01 37.63 4357.04 -0.020971 future 1.862946 \n", "2021-08-01 2021-08-01 38.44 4450.37 0.021165 future 1.931096 \n", "2021-07-01 2021-07-01 37.68 4358.13 0.028227 future 1.934718 \n", "2021-06-01 2021-06-01 36.86 4238.49 0.016949 future 1.897103 \n", "2021-05-01 2021-05-01 36.62 4167.85 0.006440 future 1.910928 \n", "2021-04-01 2021-04-01 36.72 4141.18 0.058987 future 1.859243 \n", "\n", " PC6M1 PC6M2 PC6M3 PC6M4 PC6M5 PC6M6 PC6M7 PC6M8 PC6M9 \\\n", "2021-10-01 0.12 0.07 0.09 0.04 0.09 0.07 0.04 0.05 0.05 \n", "2021-08-01 0.12 0.01 0.09 0.04 0.05 0.07 0.04 0.05 0.05 \n", "2021-07-01 0.12 0.01 0.07 0.03 0.00 0.06 0.04 0.05 0.04 \n", "2021-06-01 0.08 0.01 0.06 0.03 0.00 0.07 0.03 0.05 0.04 \n", "2021-05-01 0.08 0.01 0.06 0.03 0.02 0.06 0.03 0.05 0.04 \n", "2021-04-01 0.09 0.01 0.06 0.01 0.02 0.05 0.03 0.03 0.04 \n", "\n", " PC6M10 PC6M_AVG \n", "2021-10-01 0.07 0.069 \n", "2021-08-01 0.04 0.056 \n", "2021-07-01 0.05 0.047 \n", "2021-06-01 0.05 0.042 \n", "2021-05-01 0.05 0.043 \n", "2021-04-01 0.03 0.037 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "scores: 0.787 [0.776, 0.801, 0.771, 0.819, 0.803, 0.768, 0.841, 0.736, 0.771, 0.783]\n" ] } ], "source": [ "# RANDOM CROSS FOLD for Bootstrapping\n", "ls_cols_features=['PER', 'Price', 'Price_Var','Buffet Indicator'] # test with one by one feature\n", "ls_cols_features.append(['PER','Buffet Indicator']) # test with set of features\n", "ls_cols_features.append(['PER', 'Price','Buffet Indicator']) # test with set of features\n", "start_date = df.index[-periods]\n", "\n", "for e in ls_cols_features:\n", " n_times = 10 # build model n times and predict n times\n", " periods = 6 # predicted last months\n", " # df_pred = df_initial.copy()\n", " df_pred_iter = df_pred.iloc[:periods].copy()\n", " ls_pc6m_cols=[]\n", " ls_score = []\n", " cols_features = [e]\n", " if isinstance(e, list):\n", " cols_features = e # set of features\n", " else:\n", " cols_features = [e] # one feature\n", " \n", " for i in range(n_times):\n", " # start_date = '1974-01-01'\n", " model, band, score = generate_model(df, cols_features, start_date, True)\n", " score = score.round(3)\n", " ls_score.append(score)\n", " print('score:',score, 'band:', band)\n", "\n", " X_pred, y_dummy = generate_dataset(df_pred, cols_features, band, periods=periods)\n", " y_pred = model.predict(X_pred).round(2) # recols_features, adable\n", " y_pred = np.clip(y_pred,0,0.5) # replace outliers\n", " pc6m_col = 'PC6M'+str(1+i)\n", " ls_pc6m_cols.append(pc6m_col)\n", " df_pred_iter[pc6m_col] = y_pred \n", "\n", " # RANDOM CROSS FOLD PREDICTION on PER and BUFFET INDICATOR\n", " df_pred_iter['PC6M_AVG']=df_pred_iter[ls_pc6m_cols].mean(axis=1) # average of all predictions\n", " display(df_pred_iter.loc[:,df_pred_iter.columns!=col_y])\n", " print('scores:', np.mean(ls_score).round(3), ls_score) # model score mean and model score list)" ] }, { "cell_type": "code", "execution_count": 111, "id": "0ab7097a", "metadata": {}, "outputs": [], "source": [ "#" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 5 }