From 87c653791114f6694d3090fd5284b7e8ed69a643 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 24 Feb 2023 22:59:26 +0500 Subject: [PATCH 1/2] Added two new files --- Stock_Market_arham.ipynb | 5447 ++++++++++++++++++++++++++++++++++++++ stock_market_arham.py | 306 +++ 2 files changed, 5753 insertions(+) create mode 100644 Stock_Market_arham.ipynb create mode 100644 stock_market_arham.py diff --git a/Stock_Market_arham.ipynb b/Stock_Market_arham.ipynb new file mode 100644 index 0000000..22c2d49 --- /dev/null +++ b/Stock_Market_arham.ipynb @@ -0,0 +1,5447 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "FfhHXAhbqNZK" + }, + "source": [ + "### Stock Market Prediction And Forecasting Using LSTM" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "ZPaALWQuqNZS" + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import math\n", + "import numpy\n", + "from sklearn.metrics import mean_squared_error\n", + "from sklearn.metrics import mean_absolute_error\n", + "from sklearn.preprocessing import MinMaxScaler\n", + "from tensorflow.keras.models import Sequential\n", + "from tensorflow.keras.layers import Dense\n", + "from tensorflow.keras.layers import LSTM\n", + "import tensorflow as tf\n", + "from numpy import array\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "eIGW3rHHVWwh" + }, + "outputs": [], + "source": [ + "import time\n", + "import datetime" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "DyG98Cg3VYkt" + }, + "outputs": [], + "source": [ + "#Using Yahoo Finance API for downloading the APPL data\n", + "ticker = 'AAPL'\n", + "period1 = int(time.mktime(datetime.datetime(2017, 10, 28, 23, 59).timetuple()))\n", + "period2 = int(time.mktime(datetime.datetime(2022, 12, 27, 23, 59).timetuple()))\n", + "interval = '1d' # 1d, 1m\n", + "# query from yahoo_Finance_API\n", + "query_string = f'https://query1.finance.yahoo.com/v7/finance/download/{ticker}?period1={period1}&period2={period2}&interval={interval}&events=history&includeAdjustedClose=true'\n", + "\n", + "df = pd.read_csv(query_string)\n", + "# print(df)\n", + "df.to_csv('AAPL_Yahoo.csv') #store APPL data in APLL_Yahoo.csv you can name it XYZ and also download it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "00kaHtIyqNZU" + }, + "outputs": [], + "source": [ + "df=pd.read_csv('AAPL_Yahoo.csv') # Read the .csv File" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 206 + }, + "id": "lULaa0xUqNZV", + "outputId": "01813c43-f539-448e-8d55-c8ae32366ffe" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 Date Open High Low Close \\\n", + "0 0 2017-10-30 40.972500 42.017502 40.930000 41.680000 \n", + "1 1 2017-10-31 41.974998 42.412498 41.735001 42.259998 \n", + "2 2 2017-11-01 42.467499 42.485001 41.402500 41.722500 \n", + "3 3 2017-11-02 41.650002 42.125000 41.320000 42.027500 \n", + "4 4 2017-11-03 43.500000 43.564999 42.779999 43.125000 \n", + "\n", + " Adj Close Volume \n", + "0 39.557045 178803200 \n", + "1 40.107506 144187200 \n", + "2 39.597374 134551200 \n", + "3 39.886848 165573600 \n", + "4 40.928440 237594400 " + ], + "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", + "
Unnamed: 0DateOpenHighLowCloseAdj CloseVolume
002017-10-3040.97250042.01750240.93000041.68000039.557045178803200
112017-10-3141.97499842.41249841.73500142.25999840.107506144187200
222017-11-0142.46749942.48500141.40250041.72250039.597374134551200
332017-11-0241.65000242.12500041.32000042.02750039.886848165573600
442017-11-0343.50000043.56499942.77999943.12500040.928440237594400
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 134 + } + ], + "source": [ + "df.head() # Display the first five rows of data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 206 + }, + "id": "QQqGA4ppqNZW", + "outputId": "5caff2ba-a702-4230-a257-11d9f42a5a06" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 Date Open High Low Close \\\n", + "1254 1254 2022-10-24 147.190002 150.229996 146.000000 149.449997 \n", + "1255 1255 2022-10-25 150.089996 152.490005 149.360001 152.339996 \n", + "1256 1256 2022-10-26 150.960007 151.990005 148.039993 149.350006 \n", + "1257 1257 2022-10-27 148.070007 149.050003 144.130005 144.800003 \n", + "1258 1258 2022-10-28 148.199997 157.500000 147.830002 155.869995 \n", + "\n", + " Adj Close Volume \n", + "1254 149.449997 75981900 \n", + "1255 152.339996 74732300 \n", + "1256 149.350006 88194300 \n", + "1257 144.800003 108284100 \n", + "1258 155.869995 132431970 " + ], + "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", + "
Unnamed: 0DateOpenHighLowCloseAdj CloseVolume
125412542022-10-24147.190002150.229996146.000000149.449997149.44999775981900
125512552022-10-25150.089996152.490005149.360001152.339996152.33999674732300
125612562022-10-26150.960007151.990005148.039993149.350006149.35000688194300
125712572022-10-27148.070007149.050003144.130005144.800003144.800003108284100
125812582022-10-28148.199997157.500000147.830002155.869995155.869995132431970
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 135 + } + ], + "source": [ + "df.tail() # Display the last five Rows of dataFile" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "oWAegTYlXJjm" + }, + "outputs": [], + "source": [ + "df.drop(df.tail(1).index,inplace=True) # delete the because we required 0 to 1257 rows." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 206 + }, + "id": "nxKCX6OYXsb3", + "outputId": "6db1324c-1930-47eb-e0e6-9e4642353063" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 Date Open High Low Close \\\n", + "1253 1253 2022-10-21 142.869995 147.850006 142.649994 147.270004 \n", + "1254 1254 2022-10-24 147.190002 150.229996 146.000000 149.449997 \n", + "1255 1255 2022-10-25 150.089996 152.490005 149.360001 152.339996 \n", + "1256 1256 2022-10-26 150.960007 151.990005 148.039993 149.350006 \n", + "1257 1257 2022-10-27 148.070007 149.050003 144.130005 144.800003 \n", + "\n", + " Adj Close Volume \n", + "1253 147.270004 86464700 \n", + "1254 149.449997 75981900 \n", + "1255 152.339996 74732300 \n", + "1256 149.350006 88194300 \n", + "1257 144.800003 108284100 " + ], + "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", + "
Unnamed: 0DateOpenHighLowCloseAdj CloseVolume
125312532022-10-21142.869995147.850006142.649994147.270004147.27000486464700
125412542022-10-24147.190002150.229996146.000000149.449997149.44999775981900
125512552022-10-25150.089996152.490005149.360001152.339996152.33999674732300
125612562022-10-26150.960007151.990005148.039993149.350006149.35000688194300
125712572022-10-27148.070007149.050003144.130005144.800003144.800003108284100
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 137 + } + ], + "source": [ + "df.tail()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 276 + }, + "id": "l-9oIzHxZ3X2", + "outputId": "38702ec4-d74b-43d7-ade8-dbc6559dfefe" + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df.plot() #plot a graph of all the data.\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "__ZmjWZ0qNZX" + }, + "outputs": [], + "source": [ + "df1=df.reset_index()['High'] # Choose the high column for the prdeiction of stock prices.\n", + " # we can also choose any other value for the prediction of prices.\n", + " # all the values of high are in the df1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "HyRlBuUXqNZY", + "outputId": "89f6d655-5262-4767-da49-0b15a391b6f4" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1258,)" + ] + }, + "metadata": {}, + "execution_count": 140 + } + ], + "source": [ + "df1.shape # Display the shape of data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "4rfief2qqNZY", + "outputId": "474fe1ff-5c87-4479-f0cb-a2a7ec44810e" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 141 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "plt.plot(df1) # Draw a graph for the up and down movements from 2017 to 2022 " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "i1dh_tCgqNZa", + "outputId": "a84f862d-e7e5-4a03-e7e9-e1171dbaa619" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "0 42.017502\n", + "1 42.412498\n", + "2 42.485001\n", + "3 42.125000\n", + "4 43.564999\n", + " ... \n", + "1253 147.850006\n", + "1254 150.229996\n", + "1255 152.490005\n", + "1256 151.990005\n", + "1257 149.050003\n", + "Name: High, Length: 1258, dtype: float64" + ] + }, + "metadata": {}, + "execution_count": 142 + } + ], + "source": [ + "df1 #Display the vaule in df1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "YNlyTUmCqNZa" + }, + "outputs": [], + "source": [ + "# LSTM are sensitive to the scale of the data. so we apply MinMax scaler \n", + "# Min Max convert the all values in range of 0 to 1\n", + "scaler=MinMaxScaler(feature_range=(0,1))\n", + "df1=scaler.fit_transform(np.array(df1).reshape(-1,1))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "w2UWRKKbgtXz", + "outputId": "a7fb3301-79a1-4b3b-d7fd-772668cc69ca" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1258, 1)" + ] + }, + "metadata": {}, + "execution_count": 84 + } + ], + "source": [ + "df1.shape" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "kjA4s5-VqNZa", + "outputId": "a4538458-4b9c-4a14-d3fd-7ffd06d8b66c" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[0.03813734]\n", + " [0.04083338]\n", + " [0.04132824]\n", + " ...\n", + " [0.79216438]\n", + " [0.78875164]\n", + " [0.76868474]]\n" + ] + } + ], + "source": [ + "print(df1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "ubOBpIcwqNZb" + }, + "outputs": [], + "source": [ + "#splitting dataset into train and test split\n", + "#Where trainig size of data is 65% and test size of data is 35%\n", + "training_size=int(len(df1)*0.65)\n", + "test_size=len(df1)-training_size\n", + "train_data,test_data=df1[0:training_size,:],df1[training_size:len(df1),:1]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "7P8SDXSpqNZb", + "outputId": "d179656d-27b7-4e2d-b247-e4058f055eaa" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(817, 441)" + ] + }, + "metadata": {}, + "execution_count": 87 + } + ], + "source": [ + "# total no of values in training size and test size\n", + "training_size,test_size " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "XGjsM5ovqNZc", + "outputId": "40dca975-3278-44e0-e432-c48105296d1b" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[0.03813734]\n", + " [0.04083338]\n", + " [0.04132824]\n", + " [0.03887107]\n", + " [0.04869974]\n", + " [0.0499454 ]\n", + " [0.05038905]\n", + " [0.05207836]\n", + " [0.05183948]\n", + " [0.05061089]\n", + " [0.04910928]\n", + " [0.04736877]\n", + " [0.04197667]\n", + " [0.04462152]\n", + " [0.04380247]\n", + " [0.04238618]\n", + " [0.04774417]\n", + " [0.04996246]\n", + " [0.05081564]\n", + " [0.05009897]\n", + " [0.04974062]\n", + " [0.04641321]\n", + " [0.04508225]\n", + " [0.04428025]\n", + " [0.0459013 ]\n", + " [0.0440243 ]\n", + " [0.04177189]\n", + " [0.04218143]\n", + " [0.04313699]\n", + " [0.04636202]\n", + " [0.04550884]\n", + " [0.04747115]\n", + " [0.04677156]\n", + " [0.04854617]\n", + " [0.05371646]\n", + " [0.05062794]\n", + " [0.05067913]\n", + " [0.05170296]\n", + " [0.05067913]\n", + " [0.04393898]\n", + " [0.04276159]\n", + " [0.04458741]\n", + " [0.04243737]\n", + " [0.04535527]\n", + " [0.0491946 ]\n", + " [0.04735172]\n", + " [0.05059381]\n", + " [0.05100334]\n", + " [0.05006483]\n", + " [0.04876801]\n", + " [0.05079859]\n", + " [0.05398949]\n", + " [0.05745342]\n", + " [0.05721452]\n", + " [0.05866495]\n", + " [0.05777763]\n", + " [0.05470616]\n", + " [0.05753874]\n", + " [0.05388711]\n", + " [0.04987713]\n", + " [0.04484335]\n", + " [0.04170364]\n", + " [0.03694286]\n", + " [0.03876869]\n", + " [0.03907582]\n", + " [0.03597025]\n", + " [0.03098765]\n", + " [0.03071463]\n", + " [0.03016858]\n", + " [0.02607331]\n", + " [0.0207665 ]\n", + " [0.03100471]\n", + " [0.03247219]\n", + " [0.03723294]\n", + " [0.04670329]\n", + " [0.04965533]\n", + " [0.04869974]\n", + " [0.04846085]\n", + " [0.04817077]\n", + " [0.05107158]\n", + " [0.05745342]\n", + " [0.05931335]\n", + " [0.05955224]\n", + " [0.0581189 ]\n", + " [0.05218074]\n", + " [0.05463791]\n", + " [0.05550816]\n", + " [0.05141289]\n", + " [0.05357995]\n", + " [0.0584943 ]\n", + " [0.06257252]\n", + " [0.06446659]\n", + " [0.05938162]\n", + " [0.05890384]\n", + " [0.05699269]\n", + " [0.05417719]\n", + " [0.05303393]\n", + " [0.05011603]\n", + " [0.04600367]\n", + " [0.04129411]\n", + " [0.04672037]\n", + " [0.0502184 ]\n", + " [0.04146475]\n", + " [0.04441676]\n", + " [0.03962188]\n", + " [0.03929766]\n", + " [0.04486041]\n", + " [0.04864855]\n", + " [0.0456624 ]\n", + " [0.04670329]\n", + " [0.04825609]\n", + " [0.04811958]\n", + " [0.04996246]\n", + " [0.0513958 ]\n", + " [0.05199304]\n", + " [0.05668556]\n", + " [0.0564808 ]\n", + " [0.05062794]\n", + " [0.04351239]\n", + " [0.036175 ]\n", + " [0.03516825]\n", + " [0.03361545]\n", + " [0.03414442]\n", + " [0.03175551]\n", + " [0.03675516]\n", + " [0.04006552]\n", + " [0.05465497]\n", + " [0.05422838]\n", + " [0.06574636]\n", + " [0.07158214]\n", + " [0.06910791]\n", + " [0.07112141]\n", + " [0.07618933]\n", + " [0.07566036]\n", + " [0.07475599]\n", + " [0.07055834]\n", + " [0.07293019]\n", + " [0.07369805]\n", + " [0.07182103]\n", + " [0.07431234]\n", + " [0.07364686]\n", + " [0.07299843]\n", + " [0.07357859]\n", + " [0.07496074]\n", + " [0.07342502]\n", + " [0.07214525]\n", + " [0.0725377 ]\n", + " [0.07600163]\n", + " [0.08139376]\n", + " [0.08228108]\n", + " [0.08251996]\n", + " [0.08272472]\n", + " [0.07897072]\n", + " [0.07891953]\n", + " [0.0800116 ]\n", + " [0.08047233]\n", + " [0.07823699]\n", + " [0.07583101]\n", + " [0.07422701]\n", + " [0.06929561]\n", + " [0.07078014]\n", + " [0.07274249]\n", + " [0.06898845]\n", + " [0.06688963]\n", + " [0.06963688]\n", + " [0.07091666]\n", + " [0.06909086]\n", + " [0.07076309]\n", + " [0.07095079]\n", + " [0.07205992]\n", + " [0.06943213]\n", + " [0.07287897]\n", + " [0.0767183 ]\n", + " [0.07774213]\n", + " [0.07518258]\n", + " [0.07796397]\n", + " [0.07869769]\n", + " [0.08007984]\n", + " [0.07874888]\n", + " [0.07862945]\n", + " [0.07990923]\n", + " [0.07970444]\n", + " [0.07890248]\n", + " [0.0818033 ]\n", + " [0.08383388]\n", + " [0.08572795]\n", + " [0.08441404]\n", + " [0.07931198]\n", + " [0.07920961]\n", + " [0.09562486]\n", + " [0.10692103]\n", + " [0.10753533]\n", + " [0.10840557]\n", + " [0.10883216]\n", + " [0.10594839]\n", + " [0.10930994]\n", + " [0.10814963]\n", + " [0.11130639]\n", + " [0.1106409 ]\n", + " [0.11094806]\n", + " [0.1161866 ]\n", + " [0.12325096]\n", + " [0.12534979]\n", + " [0.12195414]\n", + " [0.12053785]\n", + " [0.12171525]\n", + " [0.12145927]\n", + " [0.12459901]\n", + " [0.12767045]\n", + " [0.13270426]\n", + " [0.14084362]\n", + " [0.1418845 ]\n", + " [0.14241347]\n", + " [0.14324961]\n", + " [0.13929085]\n", + " [0.13591222]\n", + " [0.12990582]\n", + " [0.13408642]\n", + " [0.13528087]\n", + " [0.14099721]\n", + " [0.13842058]\n", + " [0.1317828 ]\n", + " [0.12990582]\n", + " [0.1261006 ]\n", + " [0.13063955]\n", + " [0.12906969]\n", + " [0.12889904]\n", + " [0.131561 ]\n", + " [0.13314791]\n", + " [0.13773804]\n", + " [0.13671421]\n", + " [0.14282301]\n", + " [0.14381271]\n", + " [0.1497338 ]\n", + " [0.14782269]\n", + " [0.14109959]\n", + " [0.1349396 ]\n", + " [0.13915433]\n", + " [0.13758448]\n", + " [0.12589584]\n", + " [0.13166337]\n", + " [0.12987168]\n", + " [0.13185107]\n", + " [0.13125384]\n", + " [0.12630538]\n", + " [0.12889904]\n", + " [0.13248242]\n", + " [0.13229472]\n", + " [0.13396696]\n", + " [0.12910382]\n", + " [0.12707324]\n", + " [0.12622006]\n", + " [0.11852432]\n", + " [0.12751688]\n", + " [0.13077605]\n", + " [0.11591357]\n", + " [0.10011262]\n", + " [0.10067572]\n", + " [0.10978772]\n", + " [0.1098901 ]\n", + " [0.10287693]\n", + " [0.09236572]\n", + " [0.08780969]\n", + " [0.0832025 ]\n", + " [0.07891953]\n", + " [0.08403863]\n", + " [0.07675243]\n", + " [0.06100266]\n", + " [0.05895503]\n", + " [0.05269266]\n", + " [0.04987713]\n", + " [0.04957 ]\n", + " [0.0606955 ]\n", + " [0.06327214]\n", + " [0.0590574 ]\n", + " [0.06692377]\n", + " [0.06257252]\n", + " [0.04958706]\n", + " [0.04909222]\n", + " [0.04158418]\n", + " [0.044485 ]\n", + " [0.04470685]\n", + " [0.045816 ]\n", + " [0.03986076]\n", + " [0.03861512]\n", + " [0.03721589]\n", + " [0.03707937]\n", + " [0.02796737]\n", + " [0.02122723]\n", + " [0.00994813]\n", + " [0.01964029]\n", + " [0.01885537]\n", + " [0.02184152]\n", + " [0.02327486]\n", + " [0.02240463]\n", + " [0. ]\n", + " [0.00482903]\n", + " [0.0053068 ]\n", + " [0.01040886]\n", + " [0.0150331 ]\n", + " [0.01407754]\n", + " [0.01361681]\n", + " [0.00947035]\n", + " [0.01308784]\n", + " [0.01733671]\n", + " [0.02037404]\n", + " [0.02074944]\n", + " [0.01878711]\n", + " [0.01607399]\n", + " [0.01494778]\n", + " [0.02117604]\n", + " [0.01810457]\n", + " [0.02117604]\n", + " [0.03486109]\n", + " [0.03972425]\n", + " [0.03969012]\n", + " [0.0442632 ]\n", + " [0.05009897]\n", + " [0.0509351 ]\n", + " [0.04815372]\n", + " [0.04255683]\n", + " [0.04349534]\n", + " [0.04313699]\n", + " [0.0456624 ]\n", + " [0.04358064]\n", + " [0.04433144]\n", + " [0.0438878 ]\n", + " [0.04709577]\n", + " [0.0454747 ]\n", + " [0.04654972]\n", + " [0.05144699]\n", + " [0.05047438]\n", + " [0.04996246]\n", + " [0.04980889]\n", + " [0.0502184 ]\n", + " [0.05465497]\n", + " [0.05166883]\n", + " [0.05079859]\n", + " [0.0490069 ]\n", + " [0.04666918]\n", + " [0.05699269]\n", + " [0.0630503 ]\n", + " [0.06412532]\n", + " [0.06549042]\n", + " [0.07100198]\n", + " [0.07281073]\n", + " [0.07383456]\n", + " [0.07468774]\n", + " [0.08635929]\n", + " [0.08867996]\n", + " [0.07893658]\n", + " [0.08047233]\n", + " [0.07514845]\n", + " [0.07480717]\n", + " [0.07569449]\n", + " [0.07842467]\n", + " [0.0831684 ]\n", + " [0.08664937]\n", + " [0.08642754]\n", + " [0.08767321]\n", + " [0.09301412]\n", + " [0.09748483]\n", + " [0.09388438]\n", + " [0.09432803]\n", + " [0.09286055]\n", + " [0.09236572]\n", + " [0.09495938]\n", + " [0.09838919]\n", + " [0.09970308]\n", + " [0.10105113]\n", + " [0.10584602]\n", + " [0.10709166]\n", + " [0.10586307]\n", + " [0.1011535 ]\n", + " [0.10280868]\n", + " [0.0984233 ]\n", + " [0.11874615]\n", + " [0.11420721]\n", + " [0.11282505]\n", + " [0.10770595]\n", + " [0.10528291]\n", + " [0.10173366]\n", + " [0.09548835]\n", + " [0.09065935]\n", + " [0.07467066]\n", + " [0.07504606]\n", + " [0.07854413]\n", + " [0.07977271]\n", + " [0.0770937 ]\n", + " [0.06591702]\n", + " [0.07214525]\n", + " [0.06823768]\n", + " [0.05941573]\n", + " [0.06214593]\n", + " [0.05950105]\n", + " [0.05738517]\n", + " [0.05718039]\n", + " [0.05506451]\n", + " [0.05494505]\n", + " [0.05820422]\n", + " [0.06700908]\n", + " [0.06782813]\n", + " [0.07883421]\n", + " [0.08472117]\n", + " [0.08579619]\n", + " [0.085745 ]\n", + " [0.08714421]\n", + " [0.08168384]\n", + " [0.08402158]\n", + " [0.0931165 ]\n", + " [0.09241691]\n", + " [0.09366255]\n", + " [0.09407209]\n", + " [0.09289469]\n", + " [0.09135894]\n", + " [0.09431097]\n", + " [0.09530067]\n", + " [0.09176848]\n", + " [0.10028326]\n", + " [0.0979626 ]\n", + " [0.10019794]\n", + " [0.10129001]\n", + " [0.09501056]\n", + " [0.09519827]\n", + " [0.09898641]\n", + " [0.10011262]\n", + " [0.09944714]\n", + " [0.10263804]\n", + " [0.10304757]\n", + " [0.10130707]\n", + " [0.10265511]\n", + " [0.10371306]\n", + " [0.1049587 ]\n", + " [0.10782541]\n", + " [0.10823492]\n", + " [0.10838851]\n", + " [0.10922462]\n", + " [0.11077742]\n", + " [0.10995837]\n", + " [0.12908674]\n", + " [0.12338748]\n", + " [0.1035936 ]\n", + " [0.09031805]\n", + " [0.08932839]\n", + " [0.09187085]\n", + " [0.09864514]\n", + " [0.09733123]\n", + " [0.09611972]\n", + " [0.11333697]\n", + " [0.10361068]\n", + " [0.1013924 ]\n", + " [0.10483927]\n", + " [0.11434372]\n", + " [0.11540169]\n", + " [0.11591357]\n", + " [0.11726163]\n", + " [0.11318341]\n", + " [0.10489046]\n", + " [0.10721112]\n", + " [0.10238209]\n", + " [0.10852503]\n", + " [0.1104532 ]\n", + " [0.10453211]\n", + " [0.10879803]\n", + " [0.11645963]\n", + " [0.11722749]\n", + " [0.12067436]\n", + " [0.12125452]\n", + " [0.13307967]\n", + " [0.13770391]\n", + " [0.12809704]\n", + " [0.12697086]\n", + " [0.12814826]\n", + " [0.13161219]\n", + " [0.13316496]\n", + " [0.13111732]\n", + " [0.126476 ]\n", + " [0.13099789]\n", + " [0.12930858]\n", + " [0.12835302]\n", + " [0.12838715]\n", + " [0.13456419]\n", + " [0.14077537]\n", + " [0.13285782]\n", + " [0.12838715]\n", + " [0.13952973]\n", + " [0.14369325]\n", + " [0.14050235]\n", + " [0.14004162]\n", + " [0.14456352]\n", + " [0.15684936]\n", + " [0.15768549]\n", + " [0.15686641]\n", + " [0.15275408]\n", + " [0.15430686]\n", + " [0.15674698]\n", + " [0.1625657 ]\n", + " [0.16463039]\n", + " [0.16640503]\n", + " [0.16906696]\n", + " [0.17236024]\n", + " [0.17666029]\n", + " [0.17751348]\n", + " [0.16992015]\n", + " [0.17652378]\n", + " [0.18805882]\n", + " [0.19133507]\n", + " [0.19191523]\n", + " [0.19072075]\n", + " [0.19560099]\n", + " [0.19575456]\n", + " [0.19921848]\n", + " [0.19976453]\n", + " [0.20316019]\n", + " [0.20333083]\n", + " [0.20486656]\n", + " [0.20768205]\n", + " [0.2086547 ]\n", + " [0.20537845]\n", + " [0.2018463 ]\n", + " [0.20042999]\n", + " [0.20599277]\n", + " [0.20722135]\n", + " [0.20862059]\n", + " [0.2086547 ]\n", + " [0.20908129]\n", + " [0.19420176]\n", + " [0.20065182]\n", + " [0.20505429]\n", + " [0.2137738 ]\n", + " [0.21343251]\n", + " [0.21218689]\n", + " [0.21394445]\n", + " [0.21643573]\n", + " [0.22111116]\n", + " [0.23047916]\n", + " [0.23215137]\n", + " [0.2323732 ]\n", + " [0.23114461]\n", + " [0.23365298]\n", + " [0.23638318]\n", + " [0.23747528]\n", + " [0.24616069]\n", + " [0.25296908]\n", + " [0.25078493]\n", + " [0.25247422]\n", + " [0.26428231]\n", + " [0.26424815]\n", + " [0.26319021]\n", + " [0.26479419]\n", + " [0.27083476]\n", + " [0.28105588]\n", + " [0.28487818]\n", + " [0.29238619]\n", + " [0.29323938]\n", + " [0.28970718]\n", + " [0.29004848]\n", + " [0.2952358 ]\n", + " [0.29571358]\n", + " [0.29736876]\n", + " [0.29663503]\n", + " [0.30306803]\n", + " [0.28334241]\n", + " [0.29465564]\n", + " [0.31078084]\n", + " [0.30436488]\n", + " [0.30195889]\n", + " [0.28627737]\n", + " [0.29677157]\n", + " [0.30550817]\n", + " [0.30629308]\n", + " [0.30318748]\n", + " [0.30003069]\n", + " [0.30404066]\n", + " [0.30970582]\n", + " [0.30799945]\n", + " [0.30758994]\n", + " [0.29695925]\n", + " [0.30518396]\n", + " [0.30532044]\n", + " [0.29815373]\n", + " [0.27039108]\n", + " [0.26757559]\n", + " [0.25964098]\n", + " [0.23936932]\n", + " [0.226418 ]\n", + " [0.26571565]\n", + " [0.27008395]\n", + " [0.26906012]\n", + " [0.26249059]\n", + " [0.24759403]\n", + " [0.22587194]\n", + " [0.24012013]\n", + " [0.23121288]\n", + " [0.21206743]\n", + " [0.22899463]\n", + " [0.19343387]\n", + " [0.1909255 ]\n", + " [0.17794007]\n", + " [0.18278615]\n", + " [0.18106272]\n", + " [0.14125315]\n", + " [0.17399837]\n", + " [0.19201761]\n", + " [0.19275133]\n", + " [0.18795644]\n", + " [0.18735923]\n", + " [0.19925259]\n", + " [0.17575592]\n", + " [0.16966417]\n", + " [0.17060268]\n", + " [0.20031053]\n", + " [0.21496828]\n", + " [0.20757968]\n", + " [0.21218689]\n", + " [0.21838102]\n", + " [0.24320865]\n", + " [0.2399324 ]\n", + " [0.24312335]\n", + " [0.24099039]\n", + " [0.2319978 ]\n", + " [0.2244386 ]\n", + " [0.22554773]\n", + " [0.23211726]\n", + " [0.2342673 ]\n", + " [0.23687804]\n", + " [0.23907922]\n", + " [0.24563171]\n", + " [0.25392464]\n", + " [0.26155211]\n", + " [0.2524913 ]\n", + " [0.26496485]\n", + " [0.2687871 ]\n", + " [0.27208042]\n", + " [0.2809194 ]\n", + " [0.29235203]\n", + " [0.29685687]\n", + " [0.29047507]\n", + " [0.27996383]\n", + " [0.27673877]\n", + " [0.29141355]\n", + " [0.29486039]\n", + " [0.29656676]\n", + " [0.29890453]\n", + " [0.29607196]\n", + " [0.30462083]\n", + " [0.29518461]\n", + " [0.30325575]\n", + " [0.29934815]\n", + " [0.30139582]\n", + " [0.30325575]\n", + " [0.30796534]\n", + " [0.30697562]\n", + " [0.31743567]\n", + " [0.32059246]\n", + " [0.3410859 ]\n", + " [0.35671624]\n", + " [0.35038563]\n", + " [0.34482285]\n", + " [0.34120536]\n", + " [0.35403728]\n", + " [0.35779126]\n", + " [0.35446387]\n", + " [0.35977065]\n", + " [0.36471911]\n", + " [0.38676541]\n", + " [0.38063956]\n", + " [0.37417241]\n", + " [0.37471846]\n", + " [0.3693434 ]\n", + " [0.37584467]\n", + " [0.37819941]\n", + " [0.38350624]\n", + " [0.39256705]\n", + " [0.39741313]\n", + " [0.40232748]\n", + " [0.40876047]\n", + " [0.40645691]\n", + " [0.43358816]\n", + " [0.41515935]\n", + " [0.42875911]\n", + " [0.41618318]\n", + " [0.41442562]\n", + " [0.42365708]\n", + " [0.42877619]\n", + " [0.4200737 ]\n", + " [0.41394784]\n", + " [0.38591223]\n", + " [0.3991195 ]\n", + " [0.39669649]\n", + " [0.40133781]\n", + " [0.40862399]\n", + " [0.4776807 ]\n", + " [0.51332671]\n", + " [0.50754215]\n", + " [0.50482903]\n", + " [0.5322674 ]\n", + " [0.52723365]\n", + " [0.52791619]\n", + " [0.51909424]\n", + " [0.52450345]\n", + " [0.54339296]\n", + " [0.53627738]\n", + " [0.54370009]\n", + " [0.54310285]\n", + " [0.55103745]\n", + " [0.55943281]\n", + " [0.60362773]\n", + " [0.63036655]\n", + " [0.60576069]\n", + " [0.61813186]\n", + " [0.62149341]\n", + " [0.61437783]\n", + " [0.64548494]\n", + " [0.67142176]\n", + " [0.69312671]\n", + " [0.63074189]\n", + " [0.59565897]\n", + " [0.563511 ]\n", + " [0.56453483]\n", + " [0.57381748]\n", + " [0.53784726]\n", + " [0.54262507]\n", + " [0.56241895]\n", + " [0.54310285]\n", + " [0.51716604]\n", + " [0.50815641]\n", + " [0.50344687]\n", + " [0.52167088]\n", + " [0.51655177]\n", + " [0.50385639]\n", + " [0.51880418]\n", + " [0.53846153]\n", + " [0.53839326]\n", + " [0.55170296]\n", + " [0.55484267]\n", + " [0.53880283]\n", + " [0.54753942]\n", + " [0.54392193]\n", + " [0.54003141]\n", + " [0.54583306]\n", + " [0.54992833]\n", + " [0.60576069]\n", + " [0.60719403]\n", + " [0.59108592]\n", + " [0.57859529]\n", + " [0.58098425]\n", + " [0.57327143]\n", + " [0.56344278]\n", + " [0.56159988]\n", + " [0.55702682]\n", + " [0.54685688]\n", + " [0.54685688]\n", + " [0.55183945]\n", + " [0.53921233]\n", + " [0.54945054]\n", + " [0.51573269]\n", + " [0.50679134]\n", + " [0.51231996]\n", + " [0.54030438]\n", + " [0.56781108]\n", + " [0.56494434]\n", + " [0.58398742]\n", + " [0.55395533]\n", + " [0.5678793 ]\n", + " [0.57402224]\n", + " [0.56815232]\n", + " [0.57716195]\n", + " [0.5749778 ]\n", + " [0.56917616]\n", + " [0.56398878]\n", + " [0.56200939]\n", + " [0.55416014]\n", + " [0.54207902]\n", + " [0.54822196]\n", + " [0.55327279]\n", + " [0.57702546]\n", + " [0.59408914]\n", + " [0.59340661]\n", + " [0.59620502]\n", + " [0.5899256 ]\n", + " [0.60159715]\n", + " [0.60439562]\n", + " [0.61101628]\n", + " [0.59681934]\n", + " [0.58924306]\n", + " [0.59327006]\n", + " [0.62432599]\n", + " [0.62753391]\n", + " [0.63579278]\n", + " [0.63251658]\n", + " [0.62712441]\n", + " [0.66875983]\n", + " [0.65524532]\n", + " [0.66227565]\n", + " [0.68875841]\n", + " [0.69865532]\n", + " [0.67954408]\n", + " [0.67101224]\n", + " [0.66329943]\n", + " [0.65053582]\n", + " [0.64582624]\n", + " [0.64978502]\n", + " [0.6566105 ]\n", + " [0.63981979]\n", + " [0.63654359]\n", + " [0.64855638]\n", + " [0.64548494]\n", + " [0.64016108]\n", + " [0.62985466]\n", + " [0.65565493]\n", + " [0.70466177]\n", + " [0.70589041]\n", + " [0.74165582]\n", + " [0.73626375]\n", + " [0.73626375]\n", + " [0.72049692]] [[0.68466319]\n", + " [0.67538055]\n", + " [0.68172819]\n", + " [0.67804247]\n", + " [0.68916792]\n", + " [0.68930446]\n", + " [0.68616481]\n", + " [0.69244423]\n", + " [0.68636956]\n", + " [0.68227423]\n", + " [0.67640432]\n", + " [0.67968052]\n", + " [0.65381202]\n", + " [0.63865947]\n", + " [0.6435056 ]\n", + " [0.63674834]\n", + " [0.61620366]\n", + " [0.60835436]\n", + " [0.61449729]\n", + " [0.60350827]\n", + " [0.62453074]\n", + " [0.62992287]\n", + " [0.60937818]\n", + " [0.59497643]\n", + " [0.58364617]\n", + " [0.57723022]\n", + " [0.5844652 ]\n", + " [0.585216 ]\n", + " [0.5923145 ]\n", + " [0.57839053]\n", + " [0.59770663]\n", + " [0.61968466]\n", + " [0.61040202]\n", + " [0.59210975]\n", + " [0.58016517]\n", + " [0.59681934]\n", + " [0.59934473]\n", + " [0.59019863]\n", + " [0.58173505]\n", + " [0.58050646]\n", + " [0.58801448]\n", + " [0.57313495]\n", + " [0.59443039]\n", + " [0.59893522]\n", + " [0.61244968]\n", + " [0.61907034]\n", + " [0.62446247]\n", + " [0.6413214 ]\n", + " [0.65940886]\n", + " [0.65811211]\n", + " [0.6704662 ]\n", + " [0.67278683]\n", + " [0.67278683]\n", + " [0.67053441]\n", + " [0.67599481]\n", + " [0.67640432]\n", + " [0.66425499]\n", + " [0.66698514]\n", + " [0.67360585]\n", + " [0.67319635]\n", + " [0.6755853 ]\n", + " [0.67292337]\n", + " [0.68691561]\n", + " [0.66295814]\n", + " [0.66643919]\n", + " [0.64882946]\n", + " [0.64173091]\n", + " [0.6369531 ]\n", + " [0.64725953]\n", + " [0.6355197 ]\n", + " [0.61320044]\n", + " [0.60207493]\n", + " [0.61238141]\n", + " [0.62425771]\n", + " [0.61770527]\n", + " [0.61811478]\n", + " [0.60398605]\n", + " [0.6230974 ]\n", + " [0.62500852]\n", + " [0.62459901]\n", + " [0.62719272]\n", + " [0.62084498]\n", + " [0.62255135]\n", + " [0.6099925 ]\n", + " [0.60692101]\n", + " [0.60617021]\n", + " [0.60350827]\n", + " [0.61244968]\n", + " [0.61354173]\n", + " [0.62814829]\n", + " [0.62330216]\n", + " [0.62630538]\n", + " [0.62118627]\n", + " [0.64234518]\n", + " [0.64275479]\n", + " [0.64473413]\n", + " [0.65606444]\n", + " [0.6489659 ]\n", + " [0.65510888]\n", + " [0.66650741]\n", + " [0.66814556]\n", + " [0.67032965]\n", + " [0.66521055]\n", + " [0.6744932 ]\n", + " [0.68295682]\n", + " [0.68923625]\n", + " [0.6886902 ]\n", + " [0.70691419]\n", + " [0.72841439]\n", + " [0.74029075]\n", + " [0.7346256 ]\n", + " [0.74547807]\n", + " [0.75005123]\n", + " [0.75783227]\n", + " [0.77223401]\n", + " [0.77516892]\n", + " [0.77353077]\n", + " [0.73469392]\n", + " [0.75537509]\n", + " [0.74875438]\n", + " [0.76288305]\n", + " [0.76643232]\n", + " [0.7740086 ]\n", + " [0.76977684]\n", + " [0.75448774]\n", + " [0.75162106]\n", + " [0.75011945]\n", + " [0.75435121]\n", + " [0.76179095]\n", + " [0.76008458]\n", + " [0.76042587]\n", + " [0.75544331]\n", + " [0.75264484]\n", + " [0.75953864]\n", + " [0.75278138]\n", + " [0.76868474]\n", + " [0.77134667]\n", + " [0.78329125]\n", + " [0.78663567]\n", + " [0.78008327]\n", + " [0.76151797]\n", + " [0.76493071]\n", + " [0.77646577]\n", + " [0.78103883]\n", + " [0.77735312]\n", + " [0.76916247]\n", + " [0.76663708]\n", + " [0.79898985]\n", + " [0.79428026]\n", + " [0.80915975]\n", + " [0.80738516]\n", + " [0.80677089]\n", + " [0.82472182]\n", + " [0.8232202 ]\n", + " [0.81687256]\n", + " [0.81257248]\n", + " [0.78486108]\n", + " [0.78247222]\n", + " [0.77134667]\n", + " [0.76813869]\n", + " [0.76711491]\n", + " [0.73994945]\n", + " [0.73831141]\n", + " [0.75080194]\n", + " [0.75523855]\n", + " [0.75790048]\n", + " [0.74759406]\n", + " [0.73933519]\n", + " [0.73728753]\n", + " [0.7368098 ]\n", + " [0.72684456]\n", + " [0.72199854]\n", + " [0.72220329]\n", + " [0.72158892]\n", + " [0.7357177 ]\n", + " [0.73544462]\n", + " [0.7397447 ]\n", + " [0.72909698]\n", + " [0.71646981]\n", + " [0.73339706]\n", + " [0.74035897]\n", + " [0.7536004 ]\n", + " [0.76950376]\n", + " [0.77346255]\n", + " [0.77271174]\n", + " [0.77639746]\n", + " [0.77086884]\n", + " [0.78090229]\n", + " [0.77332601]\n", + " [0.79680565]\n", + " [0.77475941]\n", + " [0.77312126]\n", + " [0.78588496]\n", + " [0.78861511]\n", + " [0.79175477]\n", + " [0.79018494]\n", + " [0.78588496]\n", + " [0.7849293 ]\n", + " [0.77605627]\n", + " [0.77127835]\n", + " [0.77789907]\n", + " [0.78800084]\n", + " [0.78533891]\n", + " [0.80929628]\n", + " [0.83434575]\n", + " [0.85038565]\n", + " [0.88232882]\n", + " [0.85570952]\n", + " [0.85803015]\n", + " [0.84649509]\n", + " [0.85154597]\n", + " [0.88110028]\n", + " [0.91372603]\n", + " [0.87209061]\n", + " [0.87727804]\n", + " [0.8972084 ]\n", + " [0.92246263]\n", + " [0.95235824]\n", + " [0.95775031]\n", + " [0.97740771]\n", + " [0.99447139]\n", + " [0.96450756]\n", + " [0.97652036]\n", + " [0.98771413]\n", + " [0.93536277]\n", + " [0.91563716]\n", + " [0.93351986]\n", + " [0.95167565]\n", + " [0.9584329 ]\n", + " [0.98279978]\n", + " [0.98901099]\n", + " [0.98423318]\n", + " [0.98382366]\n", + " [0.97467746]\n", + " [0.99959049]\n", + " [1. ]\n", + " [0.98109341]\n", + " [0.9478534 ]\n", + " [0.93993582]\n", + " [0.92874205]\n", + " [0.94703427]\n", + " [0.96068522]\n", + " [0.95686297]\n", + " [0.93747865]\n", + " [0.92901502]\n", + " [0.9190499 ]\n", + " [0.90949417]\n", + " [0.8866289 ]\n", + " [0.85912225]\n", + " [0.86226192]\n", + " [0.87338746]\n", + " [0.86963343]\n", + " [0.91406733]\n", + " [0.94580573]\n", + " [0.94471363]\n", + " [0.95181218]\n", + " [0.95426935]\n", + " [0.93966285]\n", + " [0.93863897]\n", + " [0.94819469]\n", + " [0.95706772]\n", + " [0.94908193]\n", + " [0.93270084]\n", + " [0.90881169]\n", + " [0.93181349]\n", + " [0.93447542]\n", + " [0.92471505]\n", + " [0.91536408]\n", + " [0.88908607]\n", + " [0.88540026]\n", + " [0.86287628]\n", + " [0.87837003]\n", + " [0.88041769]\n", + " [0.88847181]\n", + " [0.89365913]\n", + " [0.90423863]\n", + " [0.88130504]\n", + " [0.87768755]\n", + " [0.86308104]\n", + " [0.86669853]\n", + " [0.84608557]\n", + " [0.8385093 ]\n", + " [0.80328983]\n", + " [0.81318685]\n", + " [0.84342365]\n", + " [0.85024912]\n", + " [0.87400174]\n", + " [0.88676544]\n", + " [0.90771958]\n", + " [0.92969761]\n", + " [0.93993582]\n", + " [0.94771686]\n", + " [0.9507883 ]\n", + " [0.97317585]\n", + " [0.97727117]\n", + " [0.96648691]\n", + " [0.94498671]\n", + " [0.96962667]\n", + " [0.96832981]\n", + " [0.93645487]\n", + " [0.93461197]\n", + " [0.92382771]\n", + " [0.90505766]\n", + " [0.91079103]\n", + " [0.91877681]\n", + " [0.92034675]\n", + " [0.88847181]\n", + " [0.89679889]\n", + " [0.90403388]\n", + " [0.92212134]\n", + " [0.89714008]\n", + " [0.86506038]\n", + " [0.85939522]\n", + " [0.84199025]\n", + " [0.87427481]\n", + " [0.88574156]\n", + " [0.83134253]\n", + " [0.84826978]\n", + " [0.88765268]\n", + " [0.87127159]\n", + " [0.83960139]\n", + " [0.81496144]\n", + " [0.82117264]\n", + " [0.81236772]\n", + " [0.7492321 ]\n", + " [0.76220056]\n", + " [0.75824178]\n", + " [0.77359909]\n", + " [0.75714968]\n", + " [0.71824451]\n", + " [0.711692 ]\n", + " [0.7291652 ]\n", + " [0.72036038]\n", + " [0.71913174]\n", + " [0.73653672]\n", + " [0.77298472]\n", + " [0.77967376]\n", + " [0.78704528]\n", + " [0.7838373 ]\n", + " [0.76131322]\n", + " [0.76540854]\n", + " [0.76834345]\n", + " [0.77428157]\n", + " [0.76117668]\n", + " [0.71210152]\n", + " [0.67415191]\n", + " [0.66521055]\n", + " [0.68875841]\n", + " [0.65497234]\n", + " [0.65968194]\n", + " [0.68684729]\n", + " [0.6916251 ]\n", + " [0.69729025]\n", + " [0.71995087]\n", + " [0.73073513]\n", + " [0.7302573 ]\n", + " [0.71148725]\n", + " [0.69578864]\n", + " [0.70036169]\n", + " [0.71790321]\n", + " [0.73503511]\n", + " [0.75162106]\n", + " [0.75844653]\n", + " [0.75223533]\n", + " [0.76458942]\n", + " [0.75093847]\n", + " [0.76800215]\n", + " [0.78103883]\n", + " [0.78588496]\n", + " [0.78356422]\n", + " [0.80055968]\n", + " [0.81318685]\n", + " [0.81803288]\n", + " [0.80956925]\n", + " [0.7962596 ]\n", + " [0.82519965]\n", + " [0.82731552]\n", + " [0.86820015]\n", + " [0.86792706]\n", + " [0.85987306]\n", + " [0.88840348]\n", + " [0.89249881]\n", + " [0.8833527 ]\n", + " [0.89673057]\n", + " [0.88314794]\n", + " [0.90717353]\n", + " [0.91843562]\n", + " [0.92648963]\n", + " [0.93481672]\n", + " [0.93700092]\n", + " [0.95365499]\n", + " [0.94512315]\n", + " [0.93720567]\n", + " [0.91072281]\n", + " [0.90287356]\n", + " [0.89877823]\n", + " [0.91263393]\n", + " [0.91884514]\n", + " [0.86321748]\n", + " [0.86089684]\n", + " [0.84738243]\n", + " [0.83263939]\n", + " [0.84588082]\n", + " [0.82356149]\n", + " [0.82069481]\n", + " [0.81857893]\n", + " [0.82854416]\n", + " [0.87250012]\n", + " [0.84710935]\n", + " [0.82362982]\n", + " [0.81093443]\n", + " [0.78438335]\n", + " [0.80629306]\n", + " [0.83031875]\n", + " [0.83482358]\n", + " [0.80567879]\n", + " [0.78520237]\n", + " [0.80090098]\n", + " [0.80738516]\n", + " [0.77953722]\n", + " [0.75278138]\n", + " [0.7280732 ]\n", + " [0.72786844]\n", + " [0.74936864]\n", + " [0.75728622]\n", + " [0.75837821]\n", + " [0.7280732 ]\n", + " [0.71981433]\n", + " [0.71612862]\n", + " [0.70937137]\n", + " [0.73141761]\n", + " [0.73776536]\n", + " [0.72670802]\n", + " [0.75264484]\n", + " [0.74070026]\n", + " [0.74711622]\n", + " [0.76049419]\n", + " [0.77673875]\n", + " [0.79216438]\n", + " [0.78875164]\n", + " [0.76868474]]\n" + ] + } + ], + "source": [ + "print(train_data,test_data)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "DhDsLFGLqNZc" + }, + "outputs": [], + "source": [ + "# convert an array of values into a dataset matrix\n", + "def create_dataset(dataset, time_step=1):\n", + "\tdataX, dataY = [], []\n", + "\tfor i in range(len(dataset)-time_step-1):\n", + "\t\ta = dataset[i:(i+time_step), 0] #i=0, 0,1,2,3-----99 100 \n", + "\t\tdataX.append(a)\t\t\t\t\t\t\t\t\t\t# 101 goes to data .append\n", + "\t\tdataY.append(dataset[i + time_step, 0])\n", + "\treturn numpy.array(dataX), numpy.array(dataY)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "pd_lcYooqNZd" + }, + "outputs": [], + "source": [ + "# reshape into X=t,t+1,t+2,t+3 and Y=t+4\n", + "# time_step of data is 100 mean it takes 100 previous values to predict the next value.\n", + "time_step = 100\n", + "X_train, y_train = create_dataset(train_data, time_step)\n", + "X_test, ytest = create_dataset(test_data, time_step)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "3GU3WkECqNZd", + "outputId": "8b38ea9d-3b72-42f0-fbc7-cbe09abd7daa" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "(716, 100)\n", + "(716,)\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(None, None)" + ] + }, + "metadata": {}, + "execution_count": 91 + } + ], + "source": [ + "print(X_train.shape), print(y_train.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "aqVE-ld1qNZd", + "outputId": "122a5cfa-7b92-4cd6-d0bf-4e2ae8fcf76b" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "(340, 100)\n", + "(340,)\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(None, None)" + ] + }, + "metadata": {}, + "execution_count": 92 + } + ], + "source": [ + "print(X_test.shape), print(ytest.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "Vsy9a8rHqNZe" + }, + "outputs": [], + "source": [ + "# reshape input to be [samples, time steps, features] which is required for LSTM\n", + "# convert a 2d data into 3d using reshape\n", + "X_train =X_train.reshape(X_train.shape[0],X_train.shape[1] , 1)\n", + "X_test = X_test.reshape(X_test.shape[0],X_test.shape[1] , 1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "aBA6i7UxqNZe" + }, + "outputs": [], + "source": [ + "#Create the Stacked LSTM model\n", + "model=Sequential()\n", + "model.add(LSTM(50,return_sequences=True,input_shape=(100,1)))\n", + "model.add(LSTM(50,return_sequences=True))\n", + "model.add(LSTM(50))\n", + "model.add(Dense(1))\n", + "model.compile(loss='mean_squared_error',optimizer='adam')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "79aKLL2jqNZf", + "outputId": "cd5687fd-6e08-416b-9b04-38879a272b13" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Model: \"sequential_1\"\n", + "_________________________________________________________________\n", + " Layer (type) Output Shape Param # \n", + "=================================================================\n", + " lstm_3 (LSTM) (None, 100, 50) 10400 \n", + " \n", + " lstm_4 (LSTM) (None, 100, 50) 20200 \n", + " \n", + " lstm_5 (LSTM) (None, 50) 20200 \n", + " \n", + " dense_1 (Dense) (None, 1) 51 \n", + " \n", + "=================================================================\n", + "Total params: 50,851\n", + "Trainable params: 50,851\n", + "Non-trainable params: 0\n", + "_________________________________________________________________\n" + ] + } + ], + "source": [ + "model.summary() # details of model." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "kKpIfauxorlr", + "outputId": "fd21eb0e-1e17-4d35-b2ff-0f5f0e496c8b" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Epoch 1/100\n", + "12/12 [==============================] - 54s 332ms/step - loss: 0.0250 - val_loss: 0.0670\n", + "Epoch 2/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0051 - val_loss: 0.0127\n", + "Epoch 3/100\n", + "12/12 [==============================] - 4s 310ms/step - loss: 0.0015 - val_loss: 0.0102\n", + "Epoch 4/100\n", + "12/12 [==============================] - 3s 225ms/step - loss: 0.0011 - val_loss: 0.0033\n", + "Epoch 5/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 9.6483e-04 - val_loss: 0.0029\n", + "Epoch 6/100\n", + "12/12 [==============================] - 3s 223ms/step - loss: 0.0010 - val_loss: 0.0028\n", + "Epoch 7/100\n", + "12/12 [==============================] - 3s 209ms/step - loss: 9.8357e-04 - val_loss: 0.0027\n", + "Epoch 8/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 8.8115e-04 - val_loss: 0.0033\n", + "Epoch 9/100\n", + "12/12 [==============================] - 3s 226ms/step - loss: 9.0086e-04 - val_loss: 0.0032\n", + "Epoch 10/100\n", + "12/12 [==============================] - 3s 217ms/step - loss: 8.7014e-04 - val_loss: 0.0026\n", + "Epoch 11/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 8.6901e-04 - val_loss: 0.0024\n", + "Epoch 12/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 7.5852e-04 - val_loss: 0.0023\n", + "Epoch 13/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 7.4335e-04 - val_loss: 0.0023\n", + "Epoch 14/100\n", + "12/12 [==============================] - 3s 209ms/step - loss: 7.2228e-04 - val_loss: 0.0021\n", + "Epoch 15/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 7.1567e-04 - val_loss: 0.0023\n", + "Epoch 16/100\n", + "12/12 [==============================] - 3s 217ms/step - loss: 7.4816e-04 - val_loss: 0.0043\n", + "Epoch 17/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 9.5511e-04 - val_loss: 0.0022\n", + "Epoch 18/100\n", + "12/12 [==============================] - 3s 219ms/step - loss: 7.4382e-04 - val_loss: 0.0025\n", + "Epoch 19/100\n", + "12/12 [==============================] - 3s 218ms/step - loss: 6.6997e-04 - val_loss: 0.0025\n", + "Epoch 20/100\n", + "12/12 [==============================] - 3s 222ms/step - loss: 6.0618e-04 - val_loss: 0.0022\n", + "Epoch 21/100\n", + "12/12 [==============================] - 3s 229ms/step - loss: 6.0075e-04 - val_loss: 0.0021\n", + "Epoch 22/100\n", + "12/12 [==============================] - 3s 226ms/step - loss: 6.1303e-04 - val_loss: 0.0017\n", + "Epoch 23/100\n", + "12/12 [==============================] - 2s 206ms/step - loss: 5.8357e-04 - val_loss: 0.0018\n", + "Epoch 24/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 5.6824e-04 - val_loss: 0.0018\n", + "Epoch 25/100\n", + "12/12 [==============================] - 3s 221ms/step - loss: 5.7951e-04 - val_loss: 0.0017\n", + "Epoch 26/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 5.4189e-04 - val_loss: 0.0016\n", + "Epoch 27/100\n", + "12/12 [==============================] - 3s 220ms/step - loss: 5.4882e-04 - val_loss: 0.0044\n", + "Epoch 28/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 9.2878e-04 - val_loss: 0.0041\n", + "Epoch 29/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 8.8749e-04 - val_loss: 0.0034\n", + "Epoch 30/100\n", + "12/12 [==============================] - 3s 218ms/step - loss: 5.5988e-04 - val_loss: 0.0027\n", + "Epoch 31/100\n", + "12/12 [==============================] - 3s 221ms/step - loss: 5.0980e-04 - val_loss: 0.0028\n", + "Epoch 32/100\n", + "12/12 [==============================] - 2s 204ms/step - loss: 5.5947e-04 - val_loss: 0.0025\n", + "Epoch 33/100\n", + "12/12 [==============================] - 2s 203ms/step - loss: 5.0548e-04 - val_loss: 0.0015\n", + "Epoch 34/100\n", + "12/12 [==============================] - 3s 227ms/step - loss: 5.4426e-04 - val_loss: 0.0017\n", + "Epoch 35/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 5.8689e-04 - val_loss: 0.0020\n", + "Epoch 36/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 5.1934e-04 - val_loss: 0.0037\n", + "Epoch 37/100\n", + "12/12 [==============================] - 3s 220ms/step - loss: 5.5547e-04 - val_loss: 0.0016\n", + "Epoch 38/100\n", + "12/12 [==============================] - 3s 221ms/step - loss: 4.6561e-04 - val_loss: 0.0016\n", + "Epoch 39/100\n", + "12/12 [==============================] - 3s 231ms/step - loss: 4.8797e-04 - val_loss: 0.0015\n", + "Epoch 40/100\n", + "12/12 [==============================] - 2s 206ms/step - loss: 4.4051e-04 - val_loss: 0.0024\n", + "Epoch 41/100\n", + "12/12 [==============================] - 2s 205ms/step - loss: 4.4414e-04 - val_loss: 0.0025\n", + "Epoch 42/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 5.0124e-04 - val_loss: 0.0013\n", + "Epoch 43/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 4.4814e-04 - val_loss: 0.0022\n", + "Epoch 44/100\n", + "12/12 [==============================] - 3s 217ms/step - loss: 4.6260e-04 - val_loss: 0.0012\n", + "Epoch 45/100\n", + "12/12 [==============================] - 3s 219ms/step - loss: 4.3942e-04 - val_loss: 0.0012\n", + "Epoch 46/100\n", + "12/12 [==============================] - 3s 219ms/step - loss: 4.1451e-04 - val_loss: 0.0012\n", + "Epoch 47/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 4.0786e-04 - val_loss: 0.0012\n", + "Epoch 48/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 4.4574e-04 - val_loss: 0.0015\n", + "Epoch 49/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 4.5013e-04 - val_loss: 0.0013\n", + "Epoch 50/100\n", + "12/12 [==============================] - 3s 222ms/step - loss: 3.9886e-04 - val_loss: 0.0020\n", + "Epoch 51/100\n", + "12/12 [==============================] - 3s 229ms/step - loss: 4.7669e-04 - val_loss: 0.0014\n", + "Epoch 52/100\n", + "12/12 [==============================] - 2s 200ms/step - loss: 3.8356e-04 - val_loss: 0.0011\n", + "Epoch 53/100\n", + "12/12 [==============================] - 2s 201ms/step - loss: 3.7988e-04 - val_loss: 0.0014\n", + "Epoch 54/100\n", + "12/12 [==============================] - 3s 220ms/step - loss: 3.8079e-04 - val_loss: 0.0011\n", + "Epoch 55/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 4.0429e-04 - val_loss: 0.0018\n", + "Epoch 56/100\n", + "12/12 [==============================] - 2s 203ms/step - loss: 5.4971e-04 - val_loss: 0.0010\n", + "Epoch 57/100\n", + "12/12 [==============================] - 3s 219ms/step - loss: 5.4036e-04 - val_loss: 0.0012\n", + "Epoch 58/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 3.5746e-04 - val_loss: 0.0011\n", + "Epoch 59/100\n", + "12/12 [==============================] - 2s 203ms/step - loss: 4.0020e-04 - val_loss: 0.0011\n", + "Epoch 60/100\n", + "12/12 [==============================] - 3s 220ms/step - loss: 3.4450e-04 - val_loss: 0.0011\n", + "Epoch 61/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 3.4454e-04 - val_loss: 0.0010\n", + "Epoch 62/100\n", + "12/12 [==============================] - 2s 205ms/step - loss: 3.5585e-04 - val_loss: 9.7186e-04\n", + "Epoch 63/100\n", + "12/12 [==============================] - 3s 218ms/step - loss: 3.9813e-04 - val_loss: 0.0028\n", + "Epoch 64/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 3.4800e-04 - val_loss: 0.0011\n", + "Epoch 65/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 3.2412e-04 - val_loss: 9.3571e-04\n", + "Epoch 66/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 3.8520e-04 - val_loss: 0.0015\n", + "Epoch 67/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 4.4292e-04 - val_loss: 0.0016\n", + "Epoch 68/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 3.3031e-04 - val_loss: 0.0010\n", + "Epoch 69/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 3.0552e-04 - val_loss: 9.0183e-04\n", + "Epoch 70/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 3.3398e-04 - val_loss: 9.4703e-04\n", + "Epoch 71/100\n", + "12/12 [==============================] - 4s 315ms/step - loss: 3.8019e-04 - val_loss: 0.0014\n", + "Epoch 72/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 3.2009e-04 - val_loss: 0.0010\n", + "Epoch 73/100\n", + "12/12 [==============================] - 3s 226ms/step - loss: 2.8925e-04 - val_loss: 8.3647e-04\n", + "Epoch 74/100\n", + "12/12 [==============================] - 2s 205ms/step - loss: 2.8889e-04 - val_loss: 9.9470e-04\n", + "Epoch 75/100\n", + "12/12 [==============================] - 3s 295ms/step - loss: 2.7438e-04 - val_loss: 8.2515e-04\n", + "Epoch 76/100\n", + "12/12 [==============================] - 3s 222ms/step - loss: 2.8529e-04 - val_loss: 0.0020\n", + "Epoch 77/100\n", + "12/12 [==============================] - 3s 224ms/step - loss: 3.0754e-04 - val_loss: 9.1220e-04\n", + "Epoch 78/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 3.1881e-04 - val_loss: 0.0011\n", + "Epoch 79/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 3.3809e-04 - val_loss: 0.0013\n", + "Epoch 80/100\n", + "12/12 [==============================] - 2s 202ms/step - loss: 3.0188e-04 - val_loss: 7.9729e-04\n", + "Epoch 81/100\n", + "12/12 [==============================] - 3s 229ms/step - loss: 3.1244e-04 - val_loss: 0.0020\n", + "Epoch 82/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 2.7140e-04 - val_loss: 7.4187e-04\n", + "Epoch 83/100\n", + "12/12 [==============================] - 3s 217ms/step - loss: 2.6921e-04 - val_loss: 8.1528e-04\n", + "Epoch 84/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 2.6890e-04 - val_loss: 7.9640e-04\n", + "Epoch 85/100\n", + "12/12 [==============================] - 2s 204ms/step - loss: 2.8702e-04 - val_loss: 8.9695e-04\n", + "Epoch 86/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 2.6687e-04 - val_loss: 8.9145e-04\n", + "Epoch 87/100\n", + "12/12 [==============================] - 3s 225ms/step - loss: 2.5486e-04 - val_loss: 0.0026\n", + "Epoch 88/100\n", + "12/12 [==============================] - 3s 217ms/step - loss: 3.0923e-04 - val_loss: 0.0013\n", + "Epoch 89/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 2.4139e-04 - val_loss: 6.7786e-04\n", + "Epoch 90/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 2.5647e-04 - val_loss: 0.0019\n", + "Epoch 91/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 2.4778e-04 - val_loss: 7.2333e-04\n", + "Epoch 92/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 2.4359e-04 - val_loss: 6.8198e-04\n", + "Epoch 93/100\n", + "12/12 [==============================] - 3s 223ms/step - loss: 2.4484e-04 - val_loss: 9.3415e-04\n", + "Epoch 94/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 2.3149e-04 - val_loss: 0.0011\n", + "Epoch 95/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 2.4224e-04 - val_loss: 6.4279e-04\n", + "Epoch 96/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 2.3180e-04 - val_loss: 0.0013\n", + "Epoch 97/100\n", + "12/12 [==============================] - 3s 229ms/step - loss: 2.5620e-04 - val_loss: 7.0706e-04\n", + "Epoch 98/100\n", + "12/12 [==============================] - 3s 226ms/step - loss: 2.6150e-04 - val_loss: 0.0013\n", + "Epoch 99/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 2.2969e-04 - val_loss: 9.3277e-04\n", + "Epoch 100/100\n", + "12/12 [==============================] - 3s 226ms/step - loss: 2.4248e-04 - val_loss: 9.4015e-04\n" + ] + } + ], + "source": [ + "# train the data using batch 64\n", + "hist=model.fit(X_train,y_train,validation_data=(X_test,ytest),epochs=100,batch_size=64,verbose=1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "pB-csefBB-JO", + "outputId": "1f17e238-70d7-4883-fddc-b5fcd6b863ca" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "dict_keys(['loss', 'val_loss'])\n" + ] + } + ], + "source": [ + "#print the keys of dictionary that store the loss\n", + "print(hist.history.keys()) " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "psfuriE5-CJd" + }, + "outputs": [], + "source": [ + "loss = pd.DataFrame(model.history.history)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 285 + }, + "id": "3gkvvPkp_oDf", + "outputId": "e319c697-b759-43b7-b7fd-06b536747bec" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "" + ] + }, + "metadata": {}, + "execution_count": 100 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#plot the losses during training\n", + "loss.plot() " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "RUQKuhxcqNZg", + "outputId": "a9ae444a-500b-4113-b11f-d082adcba628" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "23/23 [==============================] - 2s 36ms/step\n", + "11/11 [==============================] - 0s 41ms/step\n" + ] + } + ], + "source": [ + "# Lets Do the prediction and check performance metrics\n", + "train_predict=model.predict(X_train)\n", + "test_predict=model.predict(X_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "3GK_5lzhDCEs", + "outputId": "75ab1e70-b1fe-406b-acc5-300df7812ec8" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[0.05772993]\n", + " [0.05508232]\n", + " [0.05340521]\n", + " [0.05193628]\n", + " [0.05080083]\n", + " [0.04961014]\n", + " [0.04836315]\n", + " [0.04767104]\n", + " [0.04791645]\n", + " [0.04864378]\n", + " [0.04962264]\n", + " [0.0507782 ]\n", + " [0.05193872]\n", + " [0.05313041]\n", + " [0.05438445]\n", + " [0.05564275]\n", + " [0.05720271]\n", + " [0.05890201]\n", + " [0.059983 ]\n", + " [0.05970569]\n", + " [0.05767775]\n", + " [0.0544483 ]\n", + " [0.05068579]\n", + " [0.04709429]\n", + " [0.04389426]\n", + " [0.0417025 ]\n", + " [0.04082272]\n", + " [0.0422367 ]\n", + " [0.04538277]\n", + " [0.05034619]\n", + " [0.05674766]\n", + " [0.06331958]\n", + " [0.06929879]\n", + " [0.07462373]\n", + " [0.07896084]\n", + " [0.08204493]\n", + " [0.08349524]\n", + " [0.08381432]\n", + " [0.08351128]\n", + " [0.08272931]\n", + " [0.08194648]\n", + " [0.08125685]\n", + " [0.08062761]\n", + " [0.08012241]\n", + " [0.07987826]\n", + " [0.07969983]\n", + " [0.07939678]\n", + " [0.07901807]\n", + " [0.07896376]\n", + " [0.07975255]\n", + " [0.08125234]\n", + " [0.08308642]\n", + " [0.08490205]\n", + " [0.08607039]\n", + " [0.08652923]\n", + " [0.08655478]\n", + " [0.08639342]\n", + " [0.08595042]\n", + " [0.08508953]\n", + " [0.08382912]\n", + " [0.08192916]\n", + " [0.07986447]\n", + " [0.07818168]\n", + " [0.07667623]\n", + " [0.07517935]\n", + " [0.07405154]\n", + " [0.07349038]\n", + " [0.07324526]\n", + " [0.07334453]\n", + " [0.07370222]\n", + " [0.07429881]\n", + " [0.07475613]\n", + " [0.07532451]\n", + " [0.07635656]\n", + " [0.07780592]\n", + " [0.07915311]\n", + " [0.08045398]\n", + " [0.08169127]\n", + " [0.08290534]\n", + " [0.0838687 ]\n", + " [0.08450235]\n", + " [0.08495679]\n", + " [0.08525807]\n", + " [0.08534777]\n", + " [0.0855542 ]\n", + " [0.08609459]\n", + " [0.08704658]\n", + " [0.08806741]\n", + " [0.08843364]\n", + " [0.08813299]\n", + " [0.08905976]\n", + " [0.09234022]\n", + " [0.09726492]\n", + " [0.10276413]\n", + " [0.10790031]\n", + " [0.11173449]\n", + " [0.11444123]\n", + " [0.11601299]\n", + " [0.11699603]\n", + " [0.11750895]\n", + " [0.11768883]\n", + " [0.1182154 ]\n", + " [0.11983772]\n", + " [0.12240574]\n", + " [0.12489107]\n", + " [0.1266413 ]\n", + " [0.12768345]\n", + " [0.12809801]\n", + " [0.12841593]\n", + " [0.12908633]\n", + " [0.13058563]\n", + " [0.13352288]\n", + " [0.13734196]\n", + " [0.14126348]\n", + " [0.14473793]\n", + " [0.1469043 ]\n", + " [0.14734636]\n", + " [0.14575647]\n", + " [0.14345314]\n", + " [0.14132944]\n", + " [0.14041713]\n", + " [0.14026266]\n", + " [0.13969271]\n", + " [0.13842605]\n", + " [0.13631092]\n", + " [0.13439022]\n", + " [0.13282406]\n", + " [0.13167486]\n", + " [0.13125293]\n", + " [0.1316092 ]\n", + " [0.13300753]\n", + " [0.13488299]\n", + " [0.13750462]\n", + " [0.14052157]\n", + " [0.14413984]\n", + " [0.14757076]\n", + " [0.14949395]\n", + " [0.14916328]\n", + " [0.14776987]\n", + " [0.14588027]\n", + " [0.14254509]\n", + " [0.13916023]\n", + " [0.13615863]\n", + " [0.13405882]\n", + " [0.13279954]\n", + " [0.13161792]\n", + " [0.13077293]\n", + " [0.13072407]\n", + " [0.13128893]\n", + " [0.13237418]\n", + " [0.13309433]\n", + " [0.13308197]\n", + " [0.13242146]\n", + " [0.1305226 ]\n", + " [0.12897548]\n", + " [0.12854293]\n", + " [0.12730886]\n", + " [0.12345682]\n", + " [0.11802378]\n", + " [0.11339393]\n", + " [0.11029132]\n", + " [0.10790586]\n", + " [0.10492848]\n", + " [0.10111621]\n", + " [0.09662598]\n", + " [0.09176113]\n", + " [0.08775789]\n", + " [0.08427359]\n", + " [0.07985705]\n", + " [0.07476418]\n", + " [0.0691987 ]\n", + " [0.06366526]\n", + " [0.05878688]\n", + " [0.05597553]\n", + " [0.05542405]\n", + " [0.05617897]\n", + " [0.05828092]\n", + " [0.06078971]\n", + " [0.06197359]\n", + " [0.06169485]\n", + " [0.05976529]\n", + " [0.05712681]\n", + " [0.05451354]\n", + " [0.05244056]\n", + " [0.05053658]\n", + " [0.04871837]\n", + " [0.04698305]\n", + " [0.04545164]\n", + " [0.04346272]\n", + " [0.04060609]\n", + " [0.03637934]\n", + " [0.03223455]\n", + " [0.02881237]\n", + " [0.02657506]\n", + " [0.02558373]\n", + " [0.02550091]\n", + " [0.02423624]\n", + " [0.02205815]\n", + " [0.01955508]\n", + " [0.01758207]\n", + " [0.01672896]\n", + " [0.01683383]\n", + " [0.01753331]\n", + " [0.01819482]\n", + " [0.01888219]\n", + " [0.01989489]\n", + " [0.02139357]\n", + " [0.02320773]\n", + " [0.02491151]\n", + " [0.02607736]\n", + " [0.02656915]\n", + " [0.0270003 ]\n", + " [0.0272947 ]\n", + " [0.02768277]\n", + " [0.0292475 ]\n", + " [0.03222553]\n", + " [0.0360351 ]\n", + " [0.04033852]\n", + " [0.04504377]\n", + " [0.04970051]\n", + " [0.05356752]\n", + " [0.05585374]\n", + " [0.05670433]\n", + " [0.05648579]\n", + " [0.05585114]\n", + " [0.0549515 ]\n", + " [0.05402841]\n", + " [0.05316968]\n", + " [0.05271194]\n", + " [0.05249903]\n", + " [0.0525124 ]\n", + " [0.05309446]\n", + " [0.05401779]\n", + " [0.0549871 ]\n", + " [0.05580892]\n", + " [0.05644033]\n", + " [0.05726665]\n", + " [0.0579875 ]\n", + " [0.05841243]\n", + " [0.058382 ]\n", + " [0.05778713]\n", + " [0.05774536]\n", + " [0.05891785]\n", + " [0.06109702]\n", + " [0.06385215]\n", + " [0.06716117]\n", + " [0.07072847]\n", + " [0.0741785 ]\n", + " [0.0772201 ]\n", + " [0.08075796]\n", + " [0.0847718 ]\n", + " [0.08775663]\n", + " [0.08951776]\n", + " [0.08967587]\n", + " [0.08859225]\n", + " [0.08692901]\n", + " [0.08544025]\n", + " [0.08483727]\n", + " [0.08538507]\n", + " [0.08668502]\n", + " [0.08838816]\n", + " [0.09065162]\n", + " [0.0935718 ]\n", + " [0.09630555]\n", + " [0.09848593]\n", + " [0.09982692]\n", + " [0.10034078]\n", + " [0.10051158]\n", + " [0.10089557]\n", + " [0.10163854]\n", + " [0.1027116 ]\n", + " [0.10439175]\n", + " [0.10649903]\n", + " [0.10849778]\n", + " [0.1095726 ]\n", + " [0.1099018 ]\n", + " [0.10924667]\n", + " [0.11016001]\n", + " [0.11209428]\n", + " [0.11423671]\n", + " [0.11552425]\n", + " [0.11558412]\n", + " [0.11433098]\n", + " [0.11162025]\n", + " [0.10766207]\n", + " [0.10161085]\n", + " [0.09467627]\n", + " [0.08847266]\n", + " [0.08383268]\n", + " [0.0805967 ]\n", + " [0.07747276]\n", + " [0.07505529]\n", + " [0.0731146 ]\n", + " [0.07080752]\n", + " [0.06856081]\n", + " [0.06644216]\n", + " [0.06445473]\n", + " [0.06274719]\n", + " [0.06125316]\n", + " [0.06003838]\n", + " [0.05946063]\n", + " [0.06028706]\n", + " [0.06230702]\n", + " [0.06596877]\n", + " [0.07115321]\n", + " [0.07704276]\n", + " [0.082698 ]\n", + " [0.08758658]\n", + " [0.09081887]\n", + " [0.0926321 ]\n", + " [0.0942881 ]\n", + " [0.09590505]\n", + " [0.0974815 ]\n", + " [0.09889542]\n", + " [0.0998839 ]\n", + " [0.1002398 ]\n", + " [0.10037166]\n", + " [0.10051399]\n", + " [0.100308 ]\n", + " [0.10068174]\n", + " [0.10135227]\n", + " [0.10231243]\n", + " [0.1034672 ]\n", + " [0.10392748]\n", + " [0.10367897]\n", + " [0.10336696]\n", + " [0.10329886]\n", + " [0.10338932]\n", + " [0.10388851]\n", + " [0.10470159]\n", + " [0.105427 ]\n", + " [0.10606809]\n", + " [0.10669667]\n", + " [0.10740085]\n", + " [0.10841271]\n", + " [0.10962124]\n", + " [0.11082655]\n", + " [0.11194819]\n", + " [0.11304718]\n", + " [0.11393526]\n", + " [0.11668365]\n", + " [0.1202192 ]\n", + " [0.12141947]\n", + " [0.11873999]\n", + " [0.11334994]\n", + " [0.1072821 ]\n", + " [0.10255483]\n", + " [0.09946793]\n", + " [0.09770469]\n", + " [0.09875514]\n", + " [0.10089114]\n", + " [0.10293601]\n", + " [0.1048293 ]\n", + " [0.10746863]\n", + " [0.11069196]\n", + " [0.11402446]\n", + " [0.11714266]\n", + " [0.11926748]\n", + " [0.11939697]\n", + " [0.1182242 ]\n", + " [0.11591429]\n", + " [0.1138097 ]\n", + " [0.11254823]\n", + " [0.11144671]\n", + " [0.11087617]\n", + " [0.11163428]\n", + " [0.11346337]\n", + " [0.11615646]\n", + " [0.1191729 ]\n", + " [0.12333113]\n", + " [0.12855388]\n", + " [0.13280307]\n", + " [0.13535509]\n", + " [0.13646927]\n", + " [0.13696969]\n", + " [0.137357 ]\n", + " [0.13746573]\n", + " [0.13675863]\n", + " [0.13599594]\n", + " [0.13520588]\n", + " [0.13435572]\n", + " [0.1335337 ]\n", + " [0.13355795]\n", + " [0.13503811]\n", + " [0.13648131]\n", + " [0.1368817 ]\n", + " [0.13767725]\n", + " [0.13944452]\n", + " [0.14139315]\n", + " [0.14301877]\n", + " [0.14469254]\n", + " [0.14781168]\n", + " [0.15193366]\n", + " [0.1560569 ]\n", + " [0.15895781]\n", + " [0.16065462]\n", + " [0.16166958]\n", + " [0.16296953]\n", + " [0.1647463 ]\n", + " [0.16687366]\n", + " [0.16927733]\n", + " [0.17197286]\n", + " [0.17509429]\n", + " [0.1782339 ]\n", + " [0.17985302]\n", + " [0.18087551]\n", + " [0.18312801]\n", + " [0.18668275]\n", + " [0.19071017]\n", + " [0.19417167]\n", + " [0.19729923]\n", + " [0.19984259]\n", + " [0.2021139 ]\n", + " [0.20401621]\n", + " [0.2058813 ]\n", + " [0.20751986]\n", + " [0.20895213]\n", + " [0.21044607]\n", + " [0.21193255]\n", + " [0.21266678]\n", + " [0.21212296]\n", + " [0.21050626]\n", + " [0.20927566]\n", + " [0.20885296]\n", + " [0.20924844]\n", + " [0.21007983]\n", + " [0.21104679]\n", + " [0.2096378 ]\n", + " [0.2074712 ]\n", + " [0.20603874]\n", + " [0.2068232 ]\n", + " [0.20909445]\n", + " [0.2116805 ]\n", + " [0.21417496]\n", + " [0.21658592]\n", + " [0.2193471 ]\n", + " [0.22349262]\n", + " [0.22839074]\n", + " [0.23301111]\n", + " [0.23642129]\n", + " [0.23882058]\n", + " [0.24070561]\n", + " [0.24224147]\n", + " [0.24476105]\n", + " [0.24883711]\n", + " [0.25298417]\n", + " [0.2565654 ]\n", + " [0.26111776]\n", + " [0.26579562]\n", + " [0.26948825]\n", + " [0.27206114]\n", + " [0.2745369 ]\n", + " [0.27847812]\n", + " [0.28356528]\n", + " [0.28978688]\n", + " [0.29578826]\n", + " [0.29976273]\n", + " [0.30159196]\n", + " [0.30272117]\n", + " [0.30349106]\n", + " [0.30421788]\n", + " [0.30464074]\n", + " [0.30592215]\n", + " [0.30390692]\n", + " [0.3018067 ]\n", + " [0.3034306 ]\n", + " [0.30626822]\n", + " [0.3084958 ]\n", + " [0.3067281 ]\n", + " [0.30442518]\n", + " [0.30430266]\n", + " [0.30598456]\n", + " [0.30776814]\n", + " [0.30844077]\n", + " [0.30892104]\n", + " [0.3103979 ]\n", + " [0.31203496]\n", + " [0.31327635]\n", + " [0.31195244]\n", + " [0.31063366]\n", + " [0.30991587]\n", + " [0.30839312]\n", + " [0.3012417 ]\n", + " [0.29096165]\n", + " [0.2795534 ]\n", + " [0.26607692]\n", + " [0.2512622 ]\n", + " [0.24479282]\n", + " [0.24621359]\n", + " [0.25195983]\n", + " [0.25785512]\n", + " [0.25980043]\n", + " [0.25479293]\n", + " [0.24844581]\n", + " [0.24165128]\n", + " [0.23264796]\n", + " [0.22616968]\n", + " [0.21717434]\n", + " [0.20689636]\n", + " [0.19553174]\n", + " [0.18588322]\n", + " [0.1787792 ]\n", + " [0.16872005]\n", + " [0.16186988]\n", + " [0.16137064]\n", + " [0.16576299]\n", + " [0.17199858]\n", + " [0.17813788]\n", + " [0.18488903]\n", + " [0.1881016 ]\n", + " [0.18711342]\n", + " [0.18366493]\n", + " [0.18364821]\n", + " [0.18905447]\n", + " [0.19667244]\n", + " [0.2048603 ]\n", + " [0.2129859 ]\n", + " [0.22370926]\n", + " [0.23471223]\n", + " [0.24448338]\n", + " [0.2514333 ]\n", + " [0.25379747]\n", + " [0.25136057]\n", + " [0.24641907]\n", + " [0.24204968]\n", + " [0.23942682]\n", + " [0.23877226]\n", + " [0.23972185]\n", + " [0.24246056]\n", + " [0.2472515 ]\n", + " [0.25389823]\n", + " [0.2591243 ]\n", + " [0.26424304]\n", + " [0.26934516]\n", + " [0.27421165]\n", + " [0.279646 ]\n", + " [0.28668144]\n", + " [0.2944982 ]\n", + " [0.30016577]\n", + " [0.30114353]\n", + " [0.29812503]\n", + " [0.29599568]\n", + " [0.29603773]\n", + " [0.2977999 ]\n", + " [0.30058566]\n", + " [0.3028267 ]\n", + " [0.3057025 ]\n", + " [0.30682817]\n", + " [0.30788657]\n", + " [0.3081847 ]\n", + " [0.30824655]\n", + " [0.30854273]\n", + " [0.30984595]\n", + " [0.31139812]\n", + " [0.3146848 ]\n", + " [0.31920022]\n", + " [0.3275271 ]\n", + " [0.3400507 ]\n", + " [0.3515641 ]\n", + " [0.35843807]\n", + " [0.3600107 ]\n", + " [0.36072004]\n", + " [0.36210662]\n", + " [0.3630636 ]\n", + " [0.3644796 ]\n", + " [0.3669728 ]\n", + " [0.37424403]\n", + " [0.38193387]\n", + " [0.38635883]\n", + " [0.38767383]\n", + " [0.3858468 ]\n", + " [0.3840347 ]\n", + " [0.38346684]\n", + " [0.38496 ]\n", + " [0.3893013 ]\n", + " [0.39544523]\n", + " [0.40223482]\n", + " [0.40919745]\n", + " [0.41416803]\n", + " [0.42268747]\n", + " [0.427748 ]\n", + " [0.43194774]\n", + " [0.43210068]\n", + " [0.4292207 ]\n", + " [0.4275467 ]\n", + " [0.4285318 ]\n", + " [0.42891148]\n", + " [0.42716882]\n", + " [0.41827542]\n", + " [0.41017208]\n", + " [0.40472403]\n", + " [0.40319625]\n", + " [0.40589264]\n", + " [0.42579344]\n", + " [0.46060735]\n", + " [0.4942874 ]\n", + " [0.5165703 ]\n", + " [0.53220564]\n", + " [0.5390609 ]\n", + " [0.5388084 ]\n", + " [0.53233296]\n", + " [0.5254935 ]\n", + " [0.5255511 ]\n", + " [0.5280847 ]\n", + " [0.5328949 ]\n", + " [0.5377537 ]\n", + " [0.5435424 ]\n", + " [0.55082476]\n", + " [0.568633 ]\n", + " [0.59484804]\n", + " [0.6112634 ]\n", + " [0.61947864]\n", + " [0.62199515]\n", + " [0.61891204]\n", + " [0.6221015 ]\n", + " [0.6353245 ]\n", + " [0.6556759 ]\n", + " [0.6559051 ]\n", + " [0.63436055]\n", + " [0.60019416]\n", + " [0.57199824]\n", + " [0.55970514]\n", + " [0.5503778 ]\n", + " [0.54633015]\n", + " [0.55228615]\n", + " [0.5574572 ]\n", + " [0.55355567]\n", + " [0.54342604]\n", + " [0.5320347 ]\n", + " [0.5280092 ]\n", + " [0.52790236]\n", + " [0.52596086]\n", + " [0.52658975]\n", + " [0.53345776]\n", + " [0.5416992 ]\n", + " [0.55102617]\n", + " [0.55880356]\n", + " [0.55889606]\n", + " [0.5563582 ]\n", + " [0.55242467]\n", + " [0.5477638 ]\n", + " [0.5454901 ]\n", + " [0.54640687]\n", + " [0.5633357 ]\n", + " [0.5853463 ]\n", + " [0.5985526 ]\n", + " [0.5989479 ]\n", + " [0.59299976]\n", + " [0.5840067 ]\n", + " [0.57367915]\n", + " [0.56536645]\n", + " [0.5596976 ]\n", + " [0.5546297 ]\n", + " [0.55151224]\n", + " [0.552049 ]\n", + " [0.55142754]\n", + " [0.5529064 ]\n", + " [0.54670906]\n", + " [0.5353486 ]\n", + " [0.5262484 ]\n", + " [0.5285252 ]\n", + " [0.5436788 ]\n", + " [0.560604 ]\n", + " [0.5775825 ]\n", + " [0.5816554 ]\n", + " [0.5800917 ]\n", + " [0.57797885]\n", + " [0.5746809 ]\n", + " [0.5737122 ]\n", + " [0.57375187]\n", + " [0.5726104 ]\n", + " [0.5697503 ]\n", + " [0.5664791 ]\n", + " [0.56221557]\n", + " [0.5557034 ]\n", + " [0.5517022 ]\n", + " [0.55206007]\n", + " [0.56106174]\n", + " [0.57688 ]\n", + " [0.5914069 ]\n", + " [0.60110635]\n", + " [0.6033987 ]\n", + " [0.60388166]\n", + " [0.6041919 ]\n", + " [0.6058971 ]\n", + " [0.60384905]\n", + " [0.59795815]\n", + " [0.5930419 ]\n", + " [0.59898204]\n", + " [0.61037785]\n", + " [0.6230664 ]\n", + " [0.63154966]\n", + " [0.63356924]\n", + " [0.6430184 ]\n", + " [0.6505486 ]\n", + " [0.6558161 ]\n", + " [0.66553086]\n", + " [0.6775543 ]\n", + " [0.6812561 ]\n", + " [0.6763926 ]\n", + " [0.6666928 ]\n", + " [0.65445906]\n", + " [0.643909 ]\n", + " [0.6392762 ]\n", + " [0.64163995]\n", + " [0.6425184 ]\n", + " [0.64140856]\n", + " [0.64348465]\n", + " [0.6462764 ]\n", + " [0.6470003 ]\n", + " [0.6434325 ]\n", + " [0.6458647 ]\n", + " [0.66479945]\n", + " [0.6868394 ]\n", + " [0.7121748 ]\n", + " [0.7291937 ]]\n" + ] + } + ], + "source": [ + "print(train_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "DuGI6fEDqNZg" + }, + "outputs": [], + "source": [ + "#Transformback to original form\n", + "train_predict=scaler.inverse_transform(train_predict)\n", + "test_predict=scaler.inverse_transform(test_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "bcKzIljADK7q", + "outputId": "161664e3-0255-4c16-cb0b-646c63038892" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[132.36705]\n", + " [133.00348]\n", + " [133.55226]\n", + " [133.66293]\n", + " [133.88724]\n", + " [134.49551]\n", + " [135.38515]\n", + " [136.10796]\n", + " [137.25336]\n", + " [139.18137]\n", + " [141.38455]\n", + " [142.71983]\n", + " [143.55354]\n", + " [144.0644 ]\n", + " [144.56006]\n", + " [145.4891 ]\n", + " [146.45569]\n", + " [147.0196 ]\n", + " [145.52391]\n", + " [144.3711 ]\n", + " [143.68378]\n", + " [144.11014]\n", + " [145.173 ]\n", + " [146.54253]\n", + " [147.45462]\n", + " [147.1782 ]\n", + " [146.28706]\n", + " [145.38571]\n", + " [145.00372]\n", + " [145.35315]\n", + " [145.88013]\n", + " [146.3115 ]\n", + " [146.33781]\n", + " [146.03279]\n", + " [145.97784]\n", + " [145.79805]\n", + " [146.27713]\n", + " [147.06631]\n", + " [148.2217 ]\n", + " [149.29822]\n", + " [149.6451 ]\n", + " [148.6636 ]\n", + " [147.47966]\n", + " [147.16162]\n", + " [147.61473]\n", + " [148.11676]\n", + " [148.0962 ]\n", + " [147.72424]\n", + " [148.75616]\n", + " [150.00618]\n", + " [151.50002]\n", + " [152.51756]\n", + " [152.87312]\n", + " [153.53484]\n", + " [154.06569]\n", + " [154.00894]\n", + " [153.45851]\n", + " [151.65045]\n", + " [149.74695]\n", + " [148.07458]\n", + " [147.0208 ]\n", + " [146.67072]\n", + " [145.66414]\n", + " [144.63522]\n", + " [144.61145]\n", + " [145.37096]\n", + " [146.36952]\n", + " [146.67178]\n", + " [146.11281]\n", + " [145.20016]\n", + " [144.38841]\n", + " [143.44327]\n", + " [142.4889 ]\n", + " [141.84686]\n", + " [141.5549 ]\n", + " [142.13686]\n", + " [142.96713]\n", + " [143.78192]\n", + " [143.83792]\n", + " [142.90347]\n", + " [142.49121]\n", + " [142.83217]\n", + " [143.96793]\n", + " [145.76509]\n", + " [147.4195 ]\n", + " [148.34236]\n", + " [148.69215]\n", + " [148.38113]\n", + " [148.24406]\n", + " [147.92894]\n", + " [148.61394]\n", + " [148.65956]\n", + " [148.23332]\n", + " [148.3321 ]\n", + " [148.85431]\n", + " [149.55252]\n", + " [150.03894]\n", + " [150.07309]\n", + " [149.84389]\n", + " [149.2033 ]\n", + " [148.37871]\n", + " [148.0658 ]\n", + " [148.59787]\n", + " [149.26398]\n", + " [150.78346]\n", + " [153.321 ]\n", + " [156.14839]\n", + " [159.42523]\n", + " [160.57532]\n", + " [160.19551]\n", + " [158.68346]\n", + " [157.34448]\n", + " [157.89294]\n", + " [160.63202]\n", + " [161.61348]\n", + " [161.51436]\n", + " [161.93993]\n", + " [163.681 ]\n", + " [166.75076]\n", + " [169.54965]\n", + " [171.98328]\n", + " [174.08206]\n", + " [173.92247]\n", + " [173.17839]\n", + " [172.97847]\n", + " [170.80014]\n", + " [167.55495]\n", + " [165.98216]\n", + " [166.79251]\n", + " [168.8048 ]\n", + " [171.76953]\n", + " [174.42776]\n", + " [175.75381]\n", + " [175.9314 ]\n", + " [175.08339]\n", + " [175.13083]\n", + " [175.59087]\n", + " [175.14946]\n", + " [172.91379]\n", + " [170.3387 ]\n", + " [168.17743]\n", + " [167.9438 ]\n", + " [169.41814]\n", + " [171.00256]\n", + " [171.19185]\n", + " [170.30243]\n", + " [168.84142]\n", + " [167.23912]\n", + " [165.12569]\n", + " [162.28741]\n", + " [160.3319 ]\n", + " [160.12202]\n", + " [160.6927 ]\n", + " [163.41638]\n", + " [167.62373]\n", + " [170.8626 ]\n", + " [172.60658]\n", + " [173.00087]\n", + " [171.84235]\n", + " [170.17744]\n", + " [169.24269]\n", + " [169.36139]\n", + " [169.54785]\n", + " [168.94882]\n", + " [167.16985]\n", + " [166.62132]\n", + " [167.1288 ]\n", + " [167.53218]\n", + " [167.33586]\n", + " [165.79594]\n", + " [164.05968]\n", + " [161.93289]\n", + " [161.13113]\n", + " [161.42632]\n", + " [162.49173]\n", + " [163.76598]\n", + " [165.12766]\n", + " [164.98663]\n", + " [163.91937]\n", + " [162.12761]\n", + " [160.76044]\n", + " [159.16753]\n", + " [157.65778]\n", + " [155.1787 ]\n", + " [153.58911]\n", + " [154.49405]\n", + " [156.6515 ]\n", + " [159.64201]\n", + " [162.50905]\n", + " [165.12889]\n", + " [167.55836]\n", + " [169.34106]\n", + " [170.34206]\n", + " [170.59659]\n", + " [171.25996]\n", + " [172.00343]\n", + " [171.96147]\n", + " [170.577 ]\n", + " [170.1996 ]\n", + " [170.51909]\n", + " [169.65701]\n", + " [168.52127]\n", + " [167.35333]\n", + " [165.86484]\n", + " [165.13654]\n", + " [165.52599]\n", + " [166.43692]\n", + " [165.84555]\n", + " [165.12936]\n", + " [165.03348]\n", + " [166.08415]\n", + " [166.14313]\n", + " [164.15921]\n", + " [161.64351]\n", + " [159.06972]\n", + " [158.8832 ]\n", + " [160.4909 ]\n", + " [159.88152]\n", + " [159.0836 ]\n", + " [160.3905 ]\n", + " [161.55493]\n", + " [160.67374]\n", + " [157.93959]\n", + " [155.59349]\n", + " [153.95982]\n", + " [150.39883]\n", + " [147.69241]\n", + " [146.3787 ]\n", + " [146.94203]\n", + " [147.55019]\n", + " [146.21593]\n", + " [144.06891]\n", + " [143.11073]\n", + " [142.74187]\n", + " [142.64085]\n", + " [143.39499]\n", + " [145.86298]\n", + " [148.60107]\n", + " [150.68433]\n", + " [151.45183]\n", + " [150.1977 ]\n", + " [148.40756]\n", + " [147.09221]\n", + " [146.70145]\n", + " [146.31644]\n", + " [143.89836]\n", + " [139.63425]\n", + " [135.67479]\n", + " [134.43633]\n", + " [133.6784 ]\n", + " [133.5629 ]\n", + " [135.06114]\n", + " [137.19081]\n", + " [139.13562]\n", + " [141.23105]\n", + " [143.1197 ]\n", + " [144.12436]\n", + " [143.38663]\n", + " [141.17517]\n", + " [139.07205]\n", + " [138.48566]\n", + " [139.59918]\n", + " [141.87549]\n", + " [144.24251]\n", + " [145.56897]\n", + " [146.4221 ]\n", + " [146.21266]\n", + " [146.2289 ]\n", + " [146.96396]\n", + " [148.00848]\n", + " [148.7125 ]\n", + " [149.71399]\n", + " [151.10788]\n", + " [152.42535]\n", + " [152.85924]\n", + " [152.1024 ]\n", + " [152.2946 ]\n", + " [153.08667]\n", + " [155.64322]\n", + " [158.19498]\n", + " [159.41185]\n", + " [160.75388]\n", + " [161.92525]\n", + " [162.15085]\n", + " [162.3753 ]\n", + " [161.95946]\n", + " [162.42401]\n", + " [163.71826]\n", + " [165.30064]\n", + " [166.81927]\n", + " [167.87488]\n", + " [169.07417]\n", + " [169.56404]\n", + " [169.16295]\n", + " [167.32512]\n", + " [165.15196]\n", + " [163.53693]\n", + " [163.49864]\n", + " [164.58954]\n", + " [163.35115]\n", + " [161.35062]\n", + " [159.29182]\n", + " [157.37733]\n", + " [156.8881 ]\n", + " [156.33104]\n", + " [155.79337]\n", + " [155.41739]\n", + " [155.72672]\n", + " [158.2179 ]\n", + " [159.74959]\n", + " [159.02945]\n", + " [156.8193 ]\n", + " [153.47716]\n", + " [151.71758]\n", + " [152.4878 ]\n", + " [154.38857]\n", + " [154.79985]\n", + " [153.35803]\n", + " [152.25613]\n", + " [152.1013 ]\n", + " [151.21912]\n", + " [149.0187 ]\n", + " [145.8592 ]\n", + " [143.38814]\n", + " [143.16223]\n", + " [144.53406]\n", + " [146.24232]\n", + " [146.18051]\n", + " [144.82425]\n", + " [143.15924]\n", + " [141.62505]\n", + " [141.58781]\n", + " [142.59062]\n", + " [143.22014]\n", + " [144.45897]\n", + " [145.10359]\n", + " [145.39551]\n", + " [145.95566]\n", + " [147.12955]\n", + " [148.81966]]\n" + ] + } + ], + "source": [ + "print(test_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "H6lQTqhZqNZh", + "outputId": "bc13e9b3-7f9a-4476-8b82-4a4f5e2b997a" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "74.44578878359725\n" + ] + } + ], + "source": [ + "### Calculate Root Mean Square error performance metrics (RMSE)\n", + "rmse=math.sqrt(mean_squared_error(y_train,train_predict))\n", + "print(rmse)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "oQqa_xHBqNZh", + "outputId": "fe8c8907-a537-4a6a-d6f8-8f8a7fbc312f" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "153.9279516844787\n" + ] + } + ], + "source": [ + "### Test Data Root Mean Square error (RMSE)\n", + "rmse=math.sqrt(mean_squared_error(ytest,test_predict))\n", + "print(rmse)" + ] + }, + { + "cell_type": "code", + "source": [ + "### Train Data Mean Absolut percentage error (MAPE)\n", + "mape = mean_absolute_error(y_train, train_predict)\n", + "print(mape)" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "2l1qDVfw4cnm", + "outputId": "87cb61a2-e4d9-4db7-99ab-41c43b99085e" + }, + "execution_count": null, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "69.22340689485985\n" + ] + } + ] + }, + { + "cell_type": "code", + "source": [ + "### Test Data Mean Absolut percentage error (MAPE)\n", + "mape = mean_absolute_error(ytest, test_predict)\n", + "print(mape)" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "HbXzJI6b6M3e", + "outputId": "39f8b0fa-cc43-4933-93a2-fa80c092a643" + }, + "execution_count": null, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "153.55751482098896\n" + ] + } + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 265 + }, + "id": "_aFRS3pIqNZi", + "outputId": "fd045709-651c-40a0-a53f-faba69f2b1e2" + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "### Plotting \n", + "# shift train predictions for plotting\n", + "look_back=100\n", + "trainPredictPlot = numpy.empty_like(df1)\n", + "trainPredictPlot[:, :] = np.nan #Taking NaN values based on df1 for training.\n", + "trainPredictPlot[look_back:len(train_predict)+look_back, :] = train_predict\n", + "# shift test predictions for plotting\n", + "testPredictPlot = numpy.empty_like(df1)\n", + "testPredictPlot[:, :] = numpy.nan #Taking NaN values based on df1 for testing.\n", + "testPredictPlot[len(train_predict)+(look_back*2)+1:len(df1)-1, :] = test_predict\n", + "# plot baseline and predictions\n", + "plt.plot(scaler.inverse_transform(df1))\n", + "plt.plot(trainPredictPlot)\n", + "plt.plot(testPredictPlot)\n", + "plt.show()\n", + "\n", + "# where blue one is the actual dataset value,\n", + "# Yellow one are the training dataset values\n", + "# and Green one are testing values " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "u2TR-M8qHUlR", + "outputId": "5af448d0-f0c9-4323-91cd-e6f2906e3189" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 110 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Training dataset graph\n", + "plt.plot(trainPredictPlot)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "F-mzvjgTGAoj", + "outputId": "da2332e0-4291-4895-adda-1edb9fad7586" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 111 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Testing dataset graph\n", + "plt.plot(testPredictPlot)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "hswAeyAoICIR", + "outputId": "822ebb8f-9647-40f2-bb72-a5e70b235990" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 112 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Actual dataset graph\n", + "plt.plot(scaler.inverse_transform(df1))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "KetG0VJ6qNZi", + "outputId": "88263d5a-87b4-4bae-9bb8-fab765ab865c" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "441" + ] + }, + "metadata": {}, + "execution_count": 113 + } + ], + "source": [ + "len(test_data)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "JXqZm2rQqNZj", + "outputId": "f4928b7c-199b-4716-9807-e827bfa5cd4f" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1, 100)" + ] + }, + "metadata": {}, + "execution_count": 114 + } + ], + "source": [ + "x_input=test_data[341:].reshape(1,-1)\n", + "x_input.shape\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "h_xtDlDAqNZj" + }, + "outputs": [], + "source": [ + "temp_input=list(x_input)\n", + "temp_input=temp_input[0].tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "Kid2GZiDqNZk", + "outputId": "bc80a3cd-09b3-4fa7-fb42-8a3de1920a91" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[0.7683434472958373,\n", + " 0.7742815743050773,\n", + " 0.7611766806200713,\n", + " 0.712101519185018,\n", + " 0.6741519053422715,\n", + " 0.6652105499254584,\n", + " 0.6887584098183278,\n", + " 0.6549723410692466,\n", + " 0.6596819376195219,\n", + " 0.6868472911494468,\n", + " 0.6916251014725945,\n", + " 0.6972902505318376,\n", + " 0.7199508740707,\n", + " 0.730735127558049,\n", + " 0.7302572966997845,\n", + " 0.711487247130063,\n", + " 0.6957886397407872,\n", + " 0.7003616927122834,\n", + " 0.7179032118230401,\n", + " 0.7350351070229322,\n", + " 0.7516210599737758,\n", + " 0.7584465325445837,\n", + " 0.7522353252032581,\n", + " 0.7645894169054752,\n", + " 0.7509384717638596,\n", + " 0.7680021531908792,\n", + " 0.7810388331030125,\n", + " 0.7858849595811215,\n", + " 0.7835642238268485,\n", + " 0.8005596846555227,\n", + " 0.8131868498643529,\n", + " 0.8180328807858457,\n", + " 0.8095692538452086,\n", + " 0.7962596028085511,\n", + " 0.8251996474616117,\n", + " 0.8273155234821443,\n", + " 0.8682001451341188,\n", + " 0.8679270648020334,\n", + " 0.8598730617722605,\n", + " 0.8884034825144569,\n", + " 0.8924988070097768,\n", + " 0.8833527010667848,\n", + " 0.8967305727017876,\n", + " 0.883147943715133,\n", + " 0.9071735320841783,\n", + " 0.9184356232552644,\n", + " 0.9264896331105095,\n", + " 0.9348167164723675,\n", + " 0.9370009222988067,\n", + " 0.9536549866404345,\n", + " 0.9451231459269247,\n", + " 0.9372056728249858,\n", + " 0.9107228119483612,\n", + " 0.9028735594447677,\n", + " 0.8987782349494475,\n", + " 0.9126339306172422,\n", + " 0.9188451379585676,\n", + " 0.8632174750772306,\n", + " 0.8608968417050464,\n", + " 0.8473824333167372,\n", + " 0.8326393852619018,\n", + " 0.8458808225256869,\n", + " 0.8235614930917825,\n", + " 0.8206948082629881,\n", + " 0.8185789322424555,\n", + " 0.8285441631486703,\n", + " 0.8725001245990021,\n", + " 0.8471093529846518,\n", + " 0.8236298160722162,\n", + " 0.810934430265041,\n", + " 0.7843833487900711,\n", + " 0.8062930611385837,\n", + " 0.8303187518897175,\n", + " 0.8348235842628684,\n", + " 0.8056787890836288,\n", + " 0.7852023713712053,\n", + " 0.800900978760481,\n", + " 0.8073851572263306,\n", + " 0.7795372154864895,\n", + " 0.7527813766598681,\n", + " 0.7280732000809066,\n", + " 0.7278684427292549,\n", + " 0.749368640374464,\n", + " 0.7572862158584917,\n", + " 0.75837820956415,\n", + " 0.7280732000809066,\n", + " 0.719814330491921,\n", + " 0.7161286230819929,\n", + " 0.7093713711095303,\n", + " 0.7314176133858767,\n", + " 0.7377653574805085,\n", + " 0.7267080236610741,\n", + " 0.7526448399065615,\n", + " 0.7407002629076479,\n", + " 0.7471162207751523,\n", + " 0.7604941947922439,\n", + " 0.7767387512560406,\n", + " 0.7921643806953194,\n", + " 0.7887516444099156,\n", + " 0.7686847414007953]" + ] + }, + "metadata": {}, + "execution_count": 116 + } + ], + "source": [ + "temp_input" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "NXbb8F8GYi-C" + }, + "source": [ + "# Weekly Prediction of Apple stock Market" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "bpqiIafYrBCF", + "outputId": "3d10a419-c01a-4fc9-adf5-27d9c2ddf511" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[0.771786]\n", + "101\n", + "1 day input [0.77428157 0.76117668 0.71210152 0.67415191 0.66521055 0.68875841\n", + " 0.65497234 0.65968194 0.68684729 0.6916251 0.69729025 0.71995087\n", + " 0.73073513 0.7302573 0.71148725 0.69578864 0.70036169 0.71790321\n", + " 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847\n", + " 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685\n", + " 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597]\n", + "1 day output [[0.76457196]]\n", + "2 day input [0.76117668 0.71210152 0.67415191 0.66521055 0.68875841 0.65497234\n", + " 0.65968194 0.68684729 0.6916251 0.69729025 0.71995087 0.73073513\n", + " 0.7302573 0.71148725 0.69578864 0.70036169 0.71790321 0.73503511\n", + " 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215\n", + " 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288\n", + " 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196]\n", + "2 day output [[0.75605965]]\n", + "3 day input [0.71210152 0.67415191 0.66521055 0.68875841 0.65497234 0.65968194\n", + " 0.68684729 0.6916251 0.69729025 0.71995087 0.73073513 0.7302573\n", + " 0.71148725 0.69578864 0.70036169 0.71790321 0.73503511 0.75162106\n", + " 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883\n", + " 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925\n", + " 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965]\n", + "3 day output [[0.7473916]]\n", + "4 day input [0.67415191 0.66521055 0.68875841 0.65497234 0.65968194 0.68684729\n", + " 0.6916251 0.69729025 0.71995087 0.73073513 0.7302573 0.71148725\n", + " 0.69578864 0.70036169 0.71790321 0.73503511 0.75162106 0.75844653\n", + " 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496\n", + " 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596\n", + " 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158]\n", + "4 day output [[0.7392143]]\n", + "5 day input [0.66521055 0.68875841 0.65497234 0.65968194 0.68684729 0.6916251\n", + " 0.69729025 0.71995087 0.73073513 0.7302573 0.71148725 0.69578864\n", + " 0.70036169 0.71790321 0.73503511 0.75162106 0.75844653 0.75223533\n", + " 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422\n", + " 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965\n", + " 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 ]\n", + "5 day output [[0.73198426]]\n", + "6 day input [0.68875841 0.65497234 0.65968194 0.68684729 0.6916251 0.69729025\n", + " 0.71995087 0.73073513 0.7302573 0.71148725 0.69578864 0.70036169\n", + " 0.71790321 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942\n", + " 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968\n", + " 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552\n", + " 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426]\n", + "6 day output [[0.72600806]]\n", + "[[0.7717859745025635], [0.7645719647407532], [0.7560596466064453], [0.7473915815353394], [0.739214301109314], [0.7319842576980591], [0.7260080575942993]]\n" + ] + } + ], + "source": [ + "# demonstrate prediction for next 7 days\n", + "\n", + "lst_output=[]\n", + "n_steps=100\n", + "i=0\n", + "while(i<7): \n", + " \n", + " if(len(temp_input)>100):\n", + " #print(temp_input)\n", + " x_input=np.array(temp_input[1:])\n", + " print(\"{} day input {}\".format(i,x_input))\n", + " x_input=x_input.reshape(1,-1)\n", + " x_input = x_input.reshape((1, n_steps, 1))\n", + " #print(x_input)\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(\"{} day output {}\".format(i,yhat))\n", + " temp_input.extend(yhat[0].tolist())\n", + " temp_input=temp_input[1:]\n", + " #print(temp_input)\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " else: # First this block is run because temp_input is not greater than 100\n", + " x_input = x_input.reshape((1, n_steps,1))\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(yhat[0])\n", + " temp_input.extend(yhat[0].tolist())\n", + " print(len(temp_input))\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " # This else block predict the next day and after this if part execute.\n", + " \n", + "\n", + "print(lst_output)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "vskPSFGSrBmn" + }, + "outputs": [], + "source": [ + "\n", + "day_new=np.arange(1,101) # taking previous 100 days\n", + "day_pred=np.arange(101,108)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "JjSVMyOtrdn-", + "outputId": "fe37ff9a-b0d8-40bc-81e7-8dc13d03dd19" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 119 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD4CAYAAAAXUaZHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3deXib1Zn4/e+RLMuL5H1fEju2Y8dxyEIINCwNgRLCUoYuFLoxLTOdty3tTKfLFDqd0nmny3Ta6UZpSzssnU5ZWqCFsu8hgRBCSOI4ceItwfsaW95lSef3hyTHjuVdshbfn+vylfh5HklHeeLbR/e5zzlKa40QQojIYgh2A4QQQvifBHchhIhAEtyFECICSXAXQogIJMFdCCEiUFSwGwCQlpamCwoKgt0MIYQIK2+//XaX1jrd17mQCO4FBQXs378/2M0QQoiwopQ6Nd05ScsIIUQEkuAuhBARSIK7EEJEIAnuQggRgSS4CyFEBJLgLoQQEUiCuxBCRCAJ7mJZOd7Wz8vHO4LdDCECToK7WFb+48mj/MPv3qaldzjYTREioCS4i2Vj1OFkX0MPdqeLO1+uDXZzhAgoCe5i2ThwqpdRh4viDAsPv9VIY89QsJskRMBIcBfLxut1XRgU/OrjmzAYFHe+JL13EbkkuItlY09tF+fkJVGcYeVj56/gTweaONU9GOxmCREQEtzFsjAw6uBQUx8XFqcC8NltRZiMip++UBPklgkRGBLcxbKwr6Ebp0tzYVEaABnWGG7eWsBjB5s52mILcuuE8D8J7mJZ2FPbTXSUgU0rk8ePfW5bMYmxJr739LEgtkyIwJDgLpaFPbVdbF6ZTIzJOH4sMdbErZcW81pNF7tOdAaxdUL4nwR3EfG6B0apbuvnwuK0Kec+8Z6V5CXH8r2nq3G6dBBaJ0RgSHAXEe/5o+0AbC1KnXLOHGXkqztKOdZq4y8Hm5e6aUIEjAR3EbEqm/q45b63+PqjlaxMjWNdbqLP6649J4f8lFierWpb4hYKETghsUG2EP7218Mt3PqHd0iMNfHVHaXcvLWAKKPvvozBoCjPTqC2Y2CJWylE4EhwFxHH7nDxn89UU56dwEP/cAHWGNOsjynOsPDCsQ7sDhfRUfKBVoQ/+V8sIs5D+xtp7Bnmq1eWzimwA5RkWHG6NCdlxqqIEBLcRUQZGXPy8xdr2LwymW2r0+f8uOIMCwA17ZKaEZFBgruIKL974yQd/aN8dUcpSqk5P64o3YJSUNPRH7jGCbGEJLiLiNE/MsYvX6nj4pI0zl81texxJrHRRvKT46iRQVURISS4i4jxm9caOD00xleuKF3Q40syLNRKWkZECAnuIiJ09I/w29fquXpdNuvzkxb0HMWZFuq7BnA4XX5unRBLT4K7iAg/f7GWUYeLr+xYWK8d3BUzY07NKdmhSUQACe4i7DV0DfLAvne5aUs+hWnxC36eEqmYERFEgrsIez987jgmo4EvXlayqOcp8gT32nlUzDSdHuKl6vZFva4QgSDBXYS12o4Bnjzcyt9dXEiGNWZRz2UxR5GbFDvnipmRMSefvu8t/r/fH0BrWVFShBYJ7iKsPby/kSiD4pPvKfDL8xVnWOaclvnBM8c50T6A3eGif9Thl9cXwl9mDe5KqXuUUh1KqSMTjj2klDro+TqplDo44dxtSqlapdRxpdSOQDVciDGni0cPNLG9LIN0q9kvz1mSYaGuc2DWtd1313Rxz54GcpNiATg9aPfL6wvhL3Ppud8HXDnxgNb6I1rrDVrrDcAjwKMASqly4EZgrecxdymljAgRAC9Vd9A1YOcj5+X77TlLMi2MOlw0nZ6+YqZvaIyv/PEQq9Lj+cbVawDokeAuQsyswV1rvQvo8XVOued33wA84Dl0HfCg1npUa90A1AJb/NRWISZ5+K1GMqxm3juPNWRmU5xhBZhx+d/fv3mKNtsIP/nIBnK8PfchCe4itCw2534x0K61rvF8nws0Tjjf5Dk2hVLqM0qp/Uqp/Z2dsn+lmJ922wgvH+/gg+fmTbtO+0J4FxB76+Tpaa95tqqNDflJnJOXREpcNAA9g2N+a4MQ/rDYn4qbONNrnxet9d1a681a683p6f7reYnl4ZEDTbg03LDZfykZcG+afdW6LO5//SQdtpEp51t6hznc1MeOtVkAJMe7lxSWnLsINQsO7kqpKOADwEMTDjcDE3/a8jzHhPAbrTV/2t/EloKURU1ams7XdpThcLn47+dPTDn3wjF3TfsVazMBd/mkyajokbSMCDGL6blfDlRrrZsmHHscuFEpZVZKFQIlwL7FNFCIs3X2j1LfNciOiqyAPH9BWjyfuKCAh/c3cqJ98oSm56raKUqPpyjdnb5RSpEcFy09dxFy5lIK+QDwBlCqlGpSSt3iOXUjZ6VktNZVwMPAUeAZ4PNaa6d/myyWu2Nt7oBbnp0QsNf4wvZi4s1RfO+pY+PH+obG2FvfzRVrJ/9SSYmPlmoZEXJm3UNVa33TNMf/dprj3wG+s7hmCTG96lYbAGVZ1oC9RnJ8NF/YXsx3n6rmsXeauH5jHi8db8fh0lxRnjn52rhoqZYRIUc2yBZhp7qtn6yEGJLjowP6OjdvLeCFYx3888OHGBlzsetEJxlWM+vzJi8pnBxv4nib7OAkQossPyDCzrFWG2uyA9dr9zJHGbn/U1u4pCSd2x6t5Pmj7byvPBODYfL2fe6eu5RCitAiwV2EFbvDRW3HAGUBzLdPFBtt5Def3MzV67JxuDRXrcueck1KfDS9Q/ZZlywQYilJWkaEtF+9WseYw8UXPMv51nUO4HDpgObbzxYdZeBnN23k1u3FrPHxSyU5LhqXBtvwWMBTRULMlfTcRcgadTj5xUu13PVKHSNj7qKr6jb3YKqvIBtIRoOa9jVTPAFdat1FKJHgLkLG2Wuiv17bTf+og+ExJ7tOuJeoqG7tJ9poYFUAJi8tlLe3LrXuIpRIcBdB53Jp7ni8im0/fAXbyJmByaePtGI1R5EQE8WzVe6ZoUdbbZRkWvy6nsxinVlfRoK7CB2h8xMiliWH08WX/3iI+14/yanuIf73jVOAe6325462c9maDC5fk8kLx9oZc7qobuunLGtpUzKz8a4v0ysVMyKESHAXQWN3uPjc/x3gsXea+eqOUi5Znc49uxsYtjt5s76H3qExrqzIZkdFFn3DYzxV2Upn/+iSlEHOh+TcRSiSahkRNE8faeW5o+1885pybrmokM0ru/nI3XvH13SJNRnH12qPNRn5+Uu1wNIPps4m1mTEHGWQnLsIKRLcRdAcb+v37H+6EoAthSmcuzKZu3fVM+pwcWlZOrHR7o28tpWm8/SRNiCwyw4shFJK1pcRIUfSMiJo6jsHWZESh8kzOKqU4vOXFtHcO0zXwChXVpyZMHSlZwXIdKuZVIt/9kv1J1lfRoQaCe4iaOq7BliVPrmk8dLSDMqyrERHGdhelnHmeFkGJqMKuV67l/TcRaiRtIwICqdLc7J7iG2lGZOOK6X4yY0baOwZxmI+898zIcbEt99fQUFq3FI3dU6S46Np7h0OdjOEGCfBXQRF8+lh7A6Xz8lIZVkJPssdP3r+iqVo2oKkxJmk5y5CiqRlRFDUdQ0AsMqzo1G4S46Ppm94DIfTFeymCAFIcBdBUt85CDAl5x6uvLXuvcMykUmEBgnuIijqOwdIiIkiNUJWUUyOk/VlRGiR4C6Cor5zkFXpFpRSs18cBsZnqUpwFyFCgrsICl9lkOFsvOe+BLXud71Sy5/ebgr464jwJsFdLLmBUQfttlGKImQwFSb23AOfc//fN07x+72nAv46IrxJKaRYcg3ewdQQWpN9sZLi3CtDBrrn7nJpOvtHsQ2P4XLpKfu5CuElwV0EzA2/eoP6rgESYkykWqL51rVrqchNpD7CyiABYkxG4qONAc+5nx6y43BpHHYnzb3D5KeE5qQuEXySlhEBMWR3sO9kD3nJcZTnJFDXOcg3HqtEa01d5yBKwcoQnW26UElx0QGvlunoHx3/e01Hf0BfS4Q3Ce4iINr6RgC4eetK7vzoJr6+s4xDTX08faSNhq5B8pJjiTEZg9xK/0qJjw74mu7ttpHxvx9vGwjoa4nwJsFdBESbJwhlJsQA8MFNeazOtPBfzx6npr2fVWmRk5LxSo6P5lT3EH0B3JHJ23M3GRUn2qXnLqYnwV0EhLfnnuUJ7kaD4l+uLKOha5Dqtv6IKoP0uqI8k5Pdg1z8g5f45St1jIw5/f4anZ7gvnFFMsfbJLiL6UlwFwHh7blnJcaMH9telsGWghQgsgZTvT5+wUqe+uLFnLsymf98ppov//GQ31+jwzZCQkwU6/MSqe0cwOnSfn8NERkkuIuAaO8bwRoTRVz0mYIspRS3XVVGfLSRTSuSgti6wFmTncC9n9rCze9ZyfNV7fSP+DdF024bJSMhhtWZVuwOF6e6B/36/CJySHAXAdFmGyF7Qq/da+OKZCrv2MHanMQgtGrpXLM+B7vTxcvHO/36vB39I2RYzazOdG9aInl3MR0J7iIg2myj44OpZ1sOE282rUgmzWLmWc++r/7S0e/+dy3JdKe1pGJGTEeCuwiItr7h8cHU5choUFyxNpOXj3f4bWBVa01H/ygZVjNx0VGsSInjhNS6i2lIcBd+53C66OwfnTSYuhztrMhiyO5k1wn/pGb6hsewO1ykW90bhK/OtHBCKmbENCS4C7/rGrDj0kybllkuLliVSkJMFM9U+Sc1461x9/67rs600tA1yKjD/yWXIvxJcBd+5y2D9DWgupyYjAYuL8/khaPtjPlh+70Omzu4Z3h67qVZVhwuTUOXVMyIqSS4C7/zTmBa7j13gCvXZmEbcbC3vnvRz+VdeiBjQs8d4ES7DKqKqWYN7kqpe5RSHUqpI2cd/4JSqlopVaWU+sGE47cppWqVUseVUjsC0WgR2tp9TGBari5ZnU6sycgzPqpmugdGfTxiet60jLfnvio9HqNBcbzNtviGiogzl577fcCVEw8opS4FrgPWa63XAj/0HC8HbgTWeh5zl1IqslaHErNq7RvBZFSkxEXG/qiLEWMyclFJGi9Xd6D1mdmkx1ptbPnui/MabO3oH8FijiLe7J4YZo4ysiotnupWGVQVU80a3LXWu4Cesw5/Fvi+1nrUc02H5/h1wINa61GtdQNQC2zxY3tFGGi3jZBhjVkW9exzcVlZBi19IxyfMOHoiUMtOF2afQ1n/2hNz1sGOVF5TgJHW6XnLqZaaM59NXCxUupNpdSrSqnzPMdzgcYJ1zV5jk2hlPqMUmq/Ump/Z6d/Z/GJ4GrrG5GUzASXlmUA8OIxdx9Ia81Tla0AHGnpm/PzdNhGxssgvdZkJ9DaN0LvEuzdKsLLQoN7FJACXAB8FXhYzXMbe6313VrrzVrrzenp6QtshghF7TYJ7hNlJsSwNieBl6vdwb26rZ+T3UPERxupapl7r7ujf3R8MNVrTXYCgPTexRQLDe5NwKPabR/gAtKAZiB/wnV5nmNimdBa02YbWdazU325rCyDA++e5vSgnacrWzEo+NSFhXT2j9IxYQOO6Wit6bCNknl2WsYT3I9J3l2cZaHB/c/ApQBKqdVANNAFPA7cqJQyK6UKgRJgnz8aKsJD/6iDIbtTgvtZLi3LwKVhV00nTx1pY0thCu8tdX9inUtqZmDUwfCYk4yEycE93WomzWLm6Dw+AYjlYS6lkA8AbwClSqkmpdQtwD3AKk955IPAzZ5efBXwMHAUeAb4vNZaps8tI+M17pKWmWR9XhKp8dH85rV6ajsGuGpdNmuyE1AKjjTPHpjbxycwTf13XZNt5ZikZcRZoma7QGt90zSnPj7N9d8BvrOYRonwdfYOTMLNYFBsK83gkQNNKAU71mZhMUdRmBpP1Rx67h39nglMZ6VlwF0xc+/uk9gdLqKj5vdh3OnS/PsTVVhjTHxlR+m8HitCm8xQFX41vgOTBPcptnuqZjavTB6fvbs2N3FOPXfv9npnD6iCO+9ud7qo65zfTFWtNd94rJL73zjFY+/I0FikkeAu/Kq9zztFfmoPc7m7eHUayXEmPnzumZqDipwEmnuHOT04cynj+LoyPv5d14wPqs49NaO15ttPHOXBtxrJT4mlpW84IHu+iuCR4C78qs02Qkp8NDEmmZh8toQYE/v/9X18eHPe+DHvjlSzlTK220aIMRmwmqdmUlelxRMdZZhXcL//9ZPc9/pJ/u6iQr5yRSlaw6nuoTk/XoQ+Ce7Cr9ptI7Jg2AyMBsXEKSFrc9y97iPNM+fd2z07MPmaThJlNFCaaZ1XOeSL1R2UZVn5xtVrWJXm3tWpoUsWIIskEtyFX2iteam6nYONfWRJSmbOkuOjyU2K5cgMpYzDng0/KmbYd3ZNtpWjrbZJ69fMpLqtn4rcRJRSFKbHA1AvSwdHFAnuYtEONfZy7Z27+fR9+zFHGfiH9xYFu0lhpSI3gaoZeu6PvdNM3/AYN28tmPaa8uwEegbt4ytHzqRrYJTO/lHKstxLBlvMUWRYzdR3SnCPJLOWQgoxm+8+dYzW3hF+8KFzuH5jLiaj9BnmY21OIs8dbcc2MkZCjGnSOa019+5poCI3gfMKkqd9jonLEMyWFvOuIumd3QpQmBYvm35EGPkpFItW1znIZWsyuGFzvgT2BdhalIrW8MG7XudgY++kc7tru6jpGOBTWwt95tu9ynMSiDKoOW0KUu1Z/73U03MH99rwEtwji/wkikWxjYzRNTBKoWdQTszf5oIU7v3UeQyMOvjAXXv4zpNHx1d5vGd3A2kWM9esz57xOawxJi4sTuPJw62z5t2PtfaTYTWTajkzNlKYFk/PoF1Wl4wgEtzFopz09PZWeQblxMJcWprBs1+6hI+cl89vXmvgwu+/xDf/fISXj3fy8QtWYI6avbT02vU5NJ0entL7P1t1m42yCSkZYPyXs/TeI4cEdzGjoy02vvanQ/QNjfk87x2EW5UmwX2xEmJMfO8D5/DsP13C9jWZ/P7NU0QbDXzs/JVzevwVazOJNhp44lDrtNeMOV3UtA+wJts66Xih5/5JcI8cMqAqptXYM8TN9+6js3+UVIuZf7mybMo19V2DGBSsSI0LQgsjU2mWlZ/ftJEvXV6CbcQxZYOO6STEmHhvaTpPVbbyr1ev8bkTVkPXIHanizVZk3vuK1LiMBqUBPcIIj134VPPoJ2b79mH3eFia1Eq9+05SZePDZ0bugbJS46bU9pAzM+qdAsb8pPm9ZhrzsmmzTbC/lOnfZ73zmItO6vnHh1lID85VmrdI4gEdzHFqMPJLfe/RXPvML+9eTP/8TcVjDqc/PKVuinX1ncOjH+kF8F3+ZpMYkwGnjjU4vN8dVs/JqMan5U6UWFaPA1S6x4xJLiLKZ6rauedd3v5wYfO4byCFFalW/jApjx+v/cU7RN2DdJa09A1KME9hMSbo7isLJOnj7TicLqmnD/WaqM4w+pzaeDCNAsNXYNznuUqQpsEdzHFE4dayLCaueacnPFj/3hZCU6X5hcv144f6+gfZcjupEgqZULKNedk0zVg95maqW7tZ02W1cejoDA9nuEx5/iyzSK8SXAXk9hGxnjlRCdXn5ONccKAXH5KHB/enM8D+94dX57Wu3641LiHls0FKcDUJYBPD9pps41Mybd7eSueJDUTGSS4i0mer2rH7nBx7fqcKec+umUFY07N80fbgTNlc4XScw8paZZokuJM1HRMXuWxus297EDZWZUyXt702kyDqh39I9z26GGZ7BQGJLiLSZ443EJuUiwbfVRpVOQmkJccy9NH3HXUDZ2DxJgMZMsSvyFFKUVJhoXa9snBfbpKGa+shBhiTcZpyyG11tz+aCUP7GvktZou/zZa+J0EdzGuZ9DO7pourl2f43MdE6UUOyuy2F3bRd/wGPVdgxSkxvuspxbBVZxh5URH/6TB0SMtfaRbzT432Qb3Pq9FGfHja8+c7bF3mnnhWAfAvLf0E0tPgrsY98yRNhwuzbUzrGOyc102Y0732u0NXYMUpUu+PRQVZ1joHRqje8L2fUea+1iXO/2a8ADr85I43NiHyzW5YqbdNsIdj1exeWUyuUmx1ElePuRJcBfjnjjUwqr0+ElLwZ5tQ14SWQkxPH6whXd7hqQMMkSVZLh/6dZ68u7Ddie1HQNU5Ex/bwHW5yfRP+qYlHf3pmPsThf/9eH1lGRaqOuQnnuok+AuAHdKZm9DN9ec4zsl42UwKK6syOLl4504XVqCe4gqyXQHd++g6tFWGy4NFbP03L0zYg9NWHzsWGs/L1Z38E+Xr6YwLZ6idAv1XQNTevcitEhwFwDsre9Ga3jv6vRZr91ZkTX+d1kNMjRlJcRgMUdR2+6ukPHu0boub+bgXpRuwWKOmrSy5K6aTgCu35g7fs3ImIuWvuFANF34iQR3AcDrdV3ERxs5Z5YffnDXUad51gKXnntoUkpRnGEZ77kfae4jNT6arFkqm4wGxbrcRA41TQjuJzopy7KO7/DknbQm2/KFNgnuAoA36ro5rzBlTjspGQ2Kv9mQw8rUOJLiopegdWIhJgb3yua+8Q2xZ7M+P4ljrTZGxpwM2R3sP3mai0vSxs8XefL5UjET2iS4CzpsI9R1DvKeValzfsy/7CzjqS9eHMBWicUqybDQ2T9Ku22Emo6BWStlvDbkJzLm1BxrtfFmfQ92p4tLJqTrUuOjSYiJkuAe4mQ9d8Ebnn03txalzXLlGSajQfZLDXHeQdUnDrXgdGkqcmeulPHakO/eiPtgYy+nuoeIMRk4z7OkAbhTPkUZFuo6Ijct89fDLbg0vN/HTO1wIcFd8EZdNwkxUZTPUiYnwktJhnsm6p8PNgOzV8p4ZSXGkJlg5lBjL4eb+zi/MJUY0+T1+ovSLew60enfBocIh9PF7Y9WYhtxsKemi29ft3bK+w8H0vUSvF7XzZbC1EkLhYnwl5sUS4zJwJFmG8lxJnKTYuf82PV5SbxyopP6zsFJ+XavonQLHf2j2EZ8b78Yzg429mIbcXBRcRoP7W/khl+/MWmp63AhwX2Za+4d5t2eIbYWzT3fLsKDweCumAHmPJjqtT4/iV7Pvrm+ymMjuWLm1ROdGA2KX3xsE3d/4lyOt/Xz0xdrgt2seZPgvgy9XtfF7poutNa8UefOt79HgntEKk4/E9znwzuZKTsxZvwXxETjFTMROFP11ROdbMxPIjHWxBVrs7hgVSoHptm2MJRJzn2Zefl4B393/36cLs0Fq1JQKJLjTJRm+l4pUIS3Es99nWuljNc5eYkYFFxSku6zx78iJY4og4q4ipmugVEON/Xx5fetHj+2IT+Jn79Uw+Cog3hz+ITM8GmpWLRDjb187vcHKMuy8oFNedz1ci3dg3Z2VmTJyo4RamtRKpkJZjYXJM/rcdYYE7+9eTPl2b5/KZiMBlamxkVcWma3Zynj95aeSUVtXJGES8Phpr6w+oQrwX2ZONk1yKfve4s0azT3fuo8MqwxfOS8fB55u0ny7RFs44pk3rz98gU9dntZ5ozni9ItEddzf/VEJynx0VTknPml5k1RvdN4OqyCu+Tcl4l/e7wKl9b87tPnj6/nbTFHcfPWgvGP7kLMR1GGhZPdgz434g5HLpdm14lOLilJm/RJNikumsK0eA6+2zvDo0PPrMFdKXWPUqpDKXVkwrE7lFLNSqmDnq+rJpy7TSlVq5Q6rpTaEaiGi7nrGbSzp7aLm7askLVghN8UpVsYc2re7RkKdlP8oqrFRvegfVJKxmtjfhLvNPZO2vwk1M2l534fcKWP4z/WWm/wfD0FoJQqB24E1noec5dSKvyq/yPMc1VtOF2aq9ZNvwmHEPNVfNaa8eHu1RPuXaYuLpka3DesSKKzf5SWvvCpd581uGutdwE9c3y+64AHtdajWusGoBbYsoj2CT94srKVlalxrJUZqMKPvLXuZ2/EHa52neiiIjdhfMXTibx593BKzSwm536rUuqwJ23jHYrPBRonXNPkOTaFUuozSqn9Sqn9nZ2Ln8b86olObv3DgYjJ//lLz6Cd1+u6uWpd9rwmsQgxG2uMiezEmIiodR8cdXDg3dNcVOx7P4OyrATMUQbeeTd86t0XGtx/CRQBG4BW4EfzfQKt9d1a681a683p6bNvEDGT5t5hvvjAO/z1cCv7Gub6IWN58KZkrpaUjAiAicsKh7M3G7pxuDQXFftePC86ykBFbuKkTUxoeQdCOAe/oOCutW7XWju11i7gN5xJvTQD+RMuzfMcCxiH08U/PfgODqeLWJORJytbA/lyYUdSMiKQijPc5ZDhvuXe7ppuzFGGGecDbMhPorK5jzGnCxp2wd3b4PDDS9fIeVpQcFdKTewGXg94K2keB25USpmVUoVACbBvcU2c2c9equWtk6f5j+sr2L4mg2c9PVUBpyUlIwKsOMPCkN0Z9lvu7ant4ryClBlXf9y4IolRh4vq1n5YeRHkngvP/SuM9C1hS+duLqWQDwBvAKVKqSal1C3AD5RSlUqpw8ClwJcAtNZVwMPAUeAZ4PNaa2egGr+3vps7X6rhA5tyuX5jHldVZNM1YJfUjMezkpIRAeZdVjicK2Y6bCMcb+/nwmlSMl7jg6qNp8FggKt/BIOd8PL3lqKZ8zbrDFWt9U0+Dv/PDNd/B/jOYho1V0lxJraXZfLv11UAcGlZOjEmA09VtobVTLJAeeV4JzmJMZKSEQEzsRxyW2lGkFuzMHvq3EsO+FraeKLcpFi+eU05F3h3LMvZCJs/Dft+DRs/BlnrAt3UeQnrGaplWQn89ubNWDyL+cRFR7G9LIOnjyyv1IzTM7Nu4gQLl0uzt6GbrcVpkpIRAZMSH01qfHRY99x313STFGeiPHvmTpBSilsuKpw8o/uyb0JsMjz5lZAbXA3r4O7LVeuy6RoYZf/J5ZOaeeTtJj55zz5embAzTnVbP71DY/PaF1WIhSgK44oZrTW7azu5sChtYYvnxSbD5d+Gxr1w9C/+b+AiRFxwv7Q0A3OUOzWzXHi3UXv2SNv4Me++qJKeEoFWkmGhtmMgrKbme9V1DtBuG+WiWVIyM9rwUUhbDa98H1wBG2Kct4gL7vHmKLaVpvNidUewm3xEx6YAABfxSURBVLIkOmwjvFHfTZRB8fzR9vF01Bt13axMjSNnHlurCbEQxRkW+obH6BwYDXZT5u01zxK/09W3z4nBCNu+Dp3HoOoxP7Vs8SIuuIP7P1tr30jY1976UtvRz6jjTO/gicOtaA1f2F5C96Cd/Sd7cLo0bzZ0S0pGLInFVMwM251UNvUFbYzshWPtFKbFk58St7gnKr8eMsrdvXenwz+NW6SIDO5pFjNOl6Z3OLI27337VA/v+/Eu/vGBg+MfgR8/2MzanARuubiQ6CgDz1a1c7TFRv+IQ1IyYknMdwExrTX37WngQ798nXO+/SzX3rk7KGnU04N29tb3cGVF1uKfzGCAbbdBdw0c+dPin88PIja4A3SH4cfE6dgdLr7+SCUmg4Fnqtp45EAzDV2DHGrq47oNOVjMUVxcnMazVW287intkp67WAqZCWas5qg5B/dXT3RyxxNHGbI7+fRFhRgNiuNt/QFu5VTeNOZOfwR3gLJr3OWQr3wfnMHvWEZkcE+1RAOEZQ5wOr96tY6ajgF+8bFNbClM4Y7Hq7jr5VqUgmvX5wCwY20Wzb3D/O/eU6xKjycjISbIrRbLgVLKXTHTPntwd7o033+6mhUpcfz58xdy28415CXH0tC99Nv1PX2kldyk2HnvLzstgwG23Q6nG0JiWYKIDO7pnp5714A9yC3xj9qOAe58qZarz8nmfeWZ/PcN61HAH99uYktBCtmJ7kHTy8szMShoOj0svXaxpErmWA756IEmqtv6+dqVpURHucNPQWo8pwIQ3LXWPPZOE8P2qRUstpExdtd2sbMiy7/zQEp3QvZ62PVfQc+9R2Rwj7S0zLceP0KMycC3ri0HIC85jm9ftxaA6zeeWVE5JT6aLYUpgJRAiqVVkmmha2CU04PTd6iG7U5+9NwJ1uclTloSoyA1jpNdQ34vpTzU1MeXHjrEfa+fnHLupWMdjDk1O9f5KSXjpZQ79366AQ4/6N/nnqeIDO6JsSaMBkVXBAT37oFR9tR2c8tFq8b3PgX4wKY8/vqFi/jw5vxJ11+/MZdYk1F67mJJlWa5Z3dWz5A7v2dPA222EW6/as2k3nJBWjwDow6/f9I+3mYD4LF3mqb84nj6SCuZCWY25k+/CuSCrb5yQu89eLn3iAzuBoMiNT6arv7wT8t4JyNdvHpqHW5FbiLGs2bV3bA5n723X0aqj91khAiUUs+UfG9APZvWmvteP8m20nTOP6vjUeDZ19ffqZkTnjGAE+0DHG09064hu4NXT3SyY23Wwmalzma8934SDj/k/+efo4gM7gCpFjPdg+Hfc99T24XVHMU5cxz0UUqRGGsKcKuEmCwzwUxirInj7b577q19I3T2j3Kpj8XFClLdwb2hy7/BvaZjgBUpcZiMiscOnNlW4rmqdkbGXP4pgZyOt/f+6g/AEZxOZsQG9zRLNJ0RMKC6p7ab81elEGWM2FslIoBSitIs67Rpmcpm95rn6/KmdlLykmMxGhSnuof82qaa9n7OXZnMpaUZ/OVQCw6ni94hO9996hilmVa2FKT49fUmUQq2fxN6T8GB+wP3OjOI2IiRbjGH/YBqY88Q7/YMsbVoEVOjhVgiZVlWTrT1+xwYrWzqw2hQPldeNBkN5Pu5HNI2MkZr3wglmRY+sCmXzv5R9tR1c8fjVfQM2vnRDesD32EqvhxWXujOvduXvtQzYoN7qiWaroHRsFzMyMs7GWm2TQSECAWlWVYG7U6aTk/dlelwcx8lGZZpdzpamRrPST+mZbw196szrFxalkFirIk7Hq/izwdbuHV7MRX+qm2fiVJw2bdgoB3e/FXgX+8sERvc0yxmRsZcDPqocQ0Xe2q7SbOYWZ1pCXZThJhVWZZ3UHVyakZrzZHmPs7xkZLxKkyL51S3/8ohazy5/9WZVsxRRq4+J5uGrkEqchP4/KXFfnmNOVlxPqzeCbt/CkNLuwx5RAd3CN9ad601r9d1c2Fxqmy2IcLCam/FzFmDqs29w/QM2lmXlzTtYwtS4/xaDnmifYAYk4G8ZPcEv4+fv5LiDAs/+vAGTEs9fnXZN2HUBrt/vKQvG7HB3bsEQbjWup9oH6BrYJQLJd8uwoQ1xkRuUuyUQdXKJs9g6gypkJWecsiTC8y737unYdIGPTUd/RRnWMZLHctzEnjhn99LaZZ1uqcInMy1sP4md2qmu27JXjZig7u3594ZprXue2rd+fatxTIZSYSPsizrlFr3yuY+ogxqPG3jS6GnHHIhefenKlv59hNH+fe/Hh0/VtM+wOqMIATy6Vx+B0TFwNNfW7Lt+CI+uIdrrfvrdV2sTI0jL3mR60wLsYRKs6zUdw5id7jGj1U291GaZZ12MBXc5ZBRBjXvnntH/wjfeKySWJORw019VLX00Tc8RpttZPJep8FmzYRLb4faF6D6ySV5yYgN7uNpmTDsubs32+hhq6wPI8JMaZYVh0tT1+muVtFaU9ncN+vKi1FGd3785Dxq3bXW3P5oJYN2J7//uy1ERxl46K1Gaju8g6khVohw3t9Dxlp45utg929Nvy8RG9xNRgNJcaawzLlXtfTRP+LgAlkfRoSZMs8aM96KmabTw/QOjfmcvHS2grT5lUP+8e0mXjjWwdd2lHLuyhR2VmTx2DvNHPbk+EtCKS0DYIyCq38IfY2w6wcBf7mogL9CEKXGRy95WmZkzMm1P99N3/AY2Umx5CXF8vWdZfPaxuuNOs/m1hLcRZhZlR6PyajGB1W9gfac3OkrZbwKUuN5q6EHrfWcKsR++1o96/OT+PSFhQDceN4K/nKwhbt31RNrMo5XyoSUlVth4ydg90+g6DIovDhgLxWxPXdw592XOi3zzJE2ajoG2LQimcRYE09WtvKXg82zP3CCvfXdstmGCEsmo4GidAsHG09T1znAvoZuTEbF6qzZUyQFqXEM2p1zKoccsjuo7Rhg2+r08YqYC1alUJAaR2vfyKRKmZBz5fchtQge/UxAa98jO7hbzXQtcc/9D2++S0FqHHd9bBO/+/QWVmda2H/q9Jwf73C6eOvkaem1i7C1NieRvfU9XPajV7n/jVOsyU7AHDX9YKpXkWcv1rdOzh7wjrXacGkmzTRVSnHDee4lsEtCLd8+kdkCH7oHhrrgL7cGrHomotMyafHRdPUvXXCvae9n38kebttZNt5rOHdlCn893ILLpefUk6hs7mNgVDa3FuHrm9es4cqKLIbsDgZGHWxaMbc109+zKpVVafH89IUadqzNmrKc9URHmt3llhW5k9eq+dC5efz8xVo25s+eBgqq7PXu8shnb4e3fgtb/t7vLxHZwd1ixjbiYNThnFPPYbH+sO9doo0GPnRu3vixzSuTeWDfu5zo6B8fbJqJd/12GUwV4SopLpr3lWfO+3FRRgP/fMVqbv3DOzx+qJnrN+ZNe+2R5j7SLNFknZW6zLDGsOfr28Nj2evzPwstByEhJyBPH9FpGe+GFT0zbP3lLyNjTh55u4kdFVmTNsrYXODutew/ObfUzBt13ZRkWMbr9IVYTq6qyGZtTgI/fr5mUq382Sqb+1ibk+hz4DUlPnrGXn/IMBjgg7+BsqsD8/QBedYQkbaEte5PHm7FNuLgo1tWTDq+IiWONIuZt+eQdx9zuth/8rSkZMSyZTAovrKjlHd7hnhof6PPa0bGnNR0DMxaO7/cRXZwt7p7v0tR6/7gW++yKj2eC1ZN3gBAKcXmlcnsPzX7INHhpl6Gx5wymCqWtW2r09lSkMLPXqyhtW/q8sHVbf04XXpKvl1MFtnBPX5pgvuow8k77/ayY22Wz4+JmwuSaewZpsM2MuPzeOvbz95jUojlRCnFN68pZ8Tu5Lo794wvPOZ1xLOr05KsyR7GIju4W70rQwY2LXOibQCHS7M2x3dPYrNnO6/ZSiL31vdQlmUlJT7a720UIpysy0vkkc9txWQ08OFfv84zR9rGz1W19JEU516BUkwvooN7XHQUsSZjwHvuVS3unsTaHN89ibU5CcSYDDPW79odLt4+dVqqZITwWJ1p5c+fv5A12Qnc+ocDVHtWm6xs7qNimsFUcUZEB3dw994DvWFHVYsNizmKldMsMWAyGliflzTjoGplszvffn5hADftFSLMpFvN3HPzeSTGmviXRyoZGXNyvK1fUjJzEPnB3WIOeFqmqqWP8uyEGScpbS5IpqrFxpDd4fP83np3r36LBHchJkmOj+bfri3nUGMvtz9WyZhTBlPnYtbgrpS6RynVoZQ64uPcl5VSWimV5vleKaV+ppSqVUodVkptCkSj5yPdYqZ9loHMxXC6NMda+ymfJt/utbkgBadLc+BUr8/zbzb0sDrTMqlGXgjh9v71OWwvy+DRA+51mqQMcnZz6bnfB1x59kGlVD5wBfDuhMM7gRLP12eAXy6+iYuTkxRLa1/ggntD1yDDY85pB1O9thSkYDIqXqvpnHLOXd/ew/mFkm8XwhelFP//31QQH23EGhPFinmssrpczRrctda7AF8jgT8GvgZMXPXmOuB32m0vkKSUyvZLSxcoJymGgVEHtpGxgDz/0Vb3IM90g6le8eYoNq9M4dUTU4P7keY+huxOzl8lKRkhppObFMtPbtzIbTvXyGDqHCwo566Uug5o1lofOutULjBxWlmT51jQZCe6y6VaewPTe69q6SPaaJjTKnQXr06juq1/Sr37mw3u353ScxdiZu8rz+Sj56+Y/UIx/+CulIoDbgf+bTEvrJT6jFJqv1Jqf2fn1N6sv+R4amFbeqfOdPOHoy02VmdZMBln/6e8pCQdgNdquiYd31vfTVF6POlWybcLIfxjIT33IqAQOKSUOgnkAQeUUllAM5A/4do8z7EptNZ3a603a603p6enL6AZc5OT5F41rsXHNObF0lpT1WJjbfbcBnfKsxNIs0Sza0Le3eFZT0ZmpQoh/GnewV1rXam1ztBaF2itC3CnXjZprduAx4FPeqpmLgD6tNat/m3y/GRYYzAaVEDSMm22EXoG7aydY1mWwaC4uCSd12q6cLncQxVHW20MjDqkvl0I4VdzKYV8AHgDKFVKNSmlbpnh8qeAeqAW+A3wOb+0chGMBkWm1RyQnntVs3cwde41txeXpNEzaKeqxf3YJw+7f/fJzFQhhD/NulmH1vqmWc4XTPi7Bj6/+Gb5V05SbEBy7lUtNpRiTptweF3sybvvqumksrmPX++q57oNOWTKfqlCCD+K6J2YvLKTYjnc5Hvy0EJprXnrZA+FafHEm+f+z5huNVOencD9r5+kc2CU7WUZ/NeH1vu1bUIIEfHLDwDkJMbQ2jeC9uNGtA++1cju2i4+uGn6rcCmc8nqdDr6R7mgMJW7PraJ6KhlcRuEEEtoWfTcc5JisTtcdA/a/bJ93ZHmPr71eBWXrE7ns+8tmvfj/3ZrAVEGxWe3FRFjCvzerkKI5WdZdBmzEz3lkH7Iu/cNjfHZ/3ub1PhofvKRDTMuFjadrMQYvrKjdF7pHCGEmI9lEdzPTGRaXDmk3eHi1gcO0No7wi8+tkk21RBChKxlFdx97ccI7m34ZsvHu1yar/7pEK/VdPHd69exaUWy39sphBD+siyCe3KcCXOUwWdaprN/lK3ff4knK6efa6W15j+ePMZfDrbw1R2l3HBe/rTXCiFEKFgWwV0p5a5197H0b2VzL3aHi6OeSUW+PH6ohXv2NPCpCwv43Lb5D6AKIcRSWxbBHdyDqq0+eu7HWvsBaDw9/WDrntouUuOj+ebV5bLUqBAiLCyb4D7dph3e9dgbe4amfWxd5yDFGZYFVcYIIUQwLJ/gnhhDu20Eh9M16fgxT3BvOu07uGutqe0YoDhj9vXahRAiVCyb4J6dFItLQ3v/6PixIbuDhq5B4qONdA3YGbY7pzyua8BO3/CYBHchRFhZNsF9vBxyQt79eFs/WsO2sgzAd++9tmMAgKJ0Ce5CiPCxfIK7d5bqhLy7dzD1ivJMABp9BfdOd3CXnrsQIpwsm+Ce7WO7vWOtNqzmKN7jWUu9sWdqxUxdxwDx0cbxJQyEECIcLJvgbjFHYY2JmpSWOdZqoyzbSrrVTIzJ4LNiprZjgKIMi5RACiHCyrIJ7gBrshJ45UQnDqcLl0tT3dbPmuwElFLkJcf5Tst0DFAs+XYhRJhZVsH9losLOdU9xF8Pt9J0epiBUQfl2e5dlPKTY6ekZfpHxmizjVAk+XYhRJhZVsH9fWsyKc20cufLtRxp6QNgjTe4p8RNqZap7xwEZDBVCBF+llVwNxgUt24vprZjgDtfqsWgoDTLCkB+chy2EQd9w2Pj13vLICW4CyHCzbIK7gBXrctmVVo8R1ttFKbFj++ElJ/irqaZOKha2zmAyahYkRIXlLYKIcRCLbvgbjQoPndpMXAmJQOQl+wO4BNTM7UdA6xMjcdkXHb/TEKIMLcso9Z1G3K4tDSdq9dljx/L9wT3iYOqdVIpI4QIU8tyE0+T0cC9n9oy6VhinAlrTNR4OaTd4eJUzxBXTfgFIIQQ4WJZ9tynk58cR5NnXfeT3YM4XVoGU4UQYUmC+wT5KbHjA6qv1XQBUikjhAhPEtwn8Pbcnz/aznefOsaFxanjk5yEECKcSHCfIC85luExJ5/7v7dZm5PArz+xWXZfEkKEJQnuE+R76tnzU+K492/Pw2JeluPNQogIINFrgvNXpfK3Wwv4+0tWkWoxB7s5QgixYBLcJ7CYo7jj/WuD3QwhhFg0ScsIIUQEkuAuhBARSIK7EEJEIAnuQggRgSS4CyFEBJLgLoQQEUiCuxBCRCAJ7kIIEYGU1jrYbUAp1QmcmufD0oCuADQnlMh7jBzL4X0uh/cIofU+V2qt032dCIngvhBKqf1a683BbkcgyXuMHMvhfS6H9wjh8z4lLSOEEBFIgrsQQkSgcA7udwe7AUtA3mPkWA7vczm8RwiT9xm2OXchhBDTC+eeuxBCiGlIcBdCiAgUdsFdKXWlUuq4UqpWKfX1YLfHH5RS+Uqpl5VSR5VSVUqpf/QcT1FKPa+UqvH8mRzstvqDUsqolHpHKfVXz/eFSqk3Pff0IaVUdLDbuBhKqSSl1J+UUtVKqWNKqfdE4r1USn3J8//1iFLqAaVUTLjfS6XUPUqpDqXUkQnHfN475fYzz3s9rJTaFLyWTxVWwV0pZQR+AewEyoGblFLlwW2VXziAL2uty4ELgM973tfXgRe11iXAi57vI8E/AscmfP+fwI+11sXAaeCWoLTKf34KPKO1LgPW436vEXUvlVK5wBeBzVrrCsAI3Ej438v7gCvPOjbdvdsJlHi+PgP8conaOCdhFdyBLUCt1rpea20HHgSuC3KbFk1r3aq1PuD5ez/uYJCL+73d77nsfuBvgtNC/1FK5QFXA7/1fK+A7cCfPJeE9ftUSiUClwD/A6C1tmute4nAe4l7m85YpVQUEAe0Eub3Umu9C+g56/B09+464HfabS+QpJTKXpqWzi7cgnsu0Djh+ybPsYihlCoANgJvApla61bPqTYgM0jN8qefAF8DXJ7vU4FerbXD832439NCoBO415N6+q1SKp4Iu5da62bgh8C7uIN6H/A2kXUvvaa7dyEdj8ItuEc0pZQFeAT4J621beI57a5ZDeu6VaXUNUCH1vrtYLclgKKATcAvtdYbgUHOSsFEyL1Mxt1zLQRygHimpjMiTjjdu3AL7s1A/oTv8zzHwp5SyoQ7sP+f1vpRz+F278c8z58dwWqfn1wIvF8pdRJ3Sm077vx0kuejPYT/PW0CmrTWb3q+/xPuYB9p9/JyoEFr3am1HgMexX1/I+leek1370I6HoVbcH8LKPGMyEfjHsB5PMhtWjRP3vl/gGNa6/+ecOpx4GbP328G/rLUbfMnrfVtWus8rXUB7nv3ktb6Y8DLwIc8l4X1+9RatwGNSqlSz6HLgKNE2L3EnY65QCkV5/n/632fEXMvJ5ju3j0OfNJTNXMB0DchfRN8Wuuw+gKuAk4AdcA3gt0eP72ni3B/1DsMHPR8XYU7H/0iUAO8AKQEu61+fM/bgL96/r4K2AfUAn8EzMFu3yLf2wZgv+d+/hlIjsR7CXwbqAaOAP8LmMP9XgIP4B5DGMP9KeyW6e4doHBX79UBlbgrh4L+HrxfsvyAEEJEoHBLywghhJgDCe5CCBGBJLgLIUQEkuAuhBARSIK7EEJEIAnuQggRgSS4CyFEBPp/EgOHB/FdEOYAAAAASUVORK5CYII=\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "\n", + "# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value.\n", + "plt.plot(day_new,scaler.inverse_transform(df1[1158:]))\n", + "plt.plot(day_pred,scaler.inverse_transform(lst_output))\n", + "# Yellow line predicts the next 7 day prediction." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "QdqM38GfreG-", + "outputId": "cc72f60c-934e-4a87-a68e-823b202f7fb9" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 120 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df3=df1.tolist()\n", + "df3.extend(lst_output)\n", + "plt.plot(df3[1200:])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "0ItQU9eVrx_h" + }, + "outputs": [], + "source": [ + "df3=scaler.inverse_transform(df3).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "tuPgRKB-sCvG", + "outputId": "c0174174-c17e-486d-b325-aa0de9734e49" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 122 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#full graph is given below:\n", + "plt.plot(df3)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "bjl_BDs6X03B" + }, + "source": [ + "# Monthly Prediction of Apple stock Market" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "T8X9Zcs9qNZk", + "outputId": "df6e7e51-0645-4ddb-fd46-001a24a33585" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "0 day input [0.65497234 0.65968194 0.68684729 0.6916251 0.69729025 0.71995087\n", + " 0.73073513 0.7302573 0.71148725 0.69578864 0.70036169 0.71790321\n", + " 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847\n", + " 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685\n", + " 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965\n", + " 0.74739158 0.7392143 0.73198426 0.72600806]\n", + "0 day output [[0.7214354]]\n", + "1 day input [0.65968194 0.68684729 0.6916251 0.69729025 0.71995087 0.73073513\n", + " 0.7302573 0.71148725 0.69578864 0.70036169 0.71790321 0.73503511\n", + " 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215\n", + " 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288\n", + " 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158\n", + " 0.7392143 0.73198426 0.72600806 0.72143543]\n", + "1 day output [[0.7182669]]\n", + "2 day input [0.68684729 0.6916251 0.69729025 0.71995087 0.73073513 0.7302573\n", + " 0.71148725 0.69578864 0.70036169 0.71790321 0.73503511 0.75162106\n", + " 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883\n", + " 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925\n", + " 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143\n", + " 0.73198426 0.72600806 0.72143543 0.7182669 ]\n", + "2 day output [[0.7163776]]\n", + "3 day input [0.6916251 0.69729025 0.71995087 0.73073513 0.7302573 0.71148725\n", + " 0.69578864 0.70036169 0.71790321 0.73503511 0.75162106 0.75844653\n", + " 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496\n", + " 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596\n", + " 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426\n", + " 0.72600806 0.72143543 0.7182669 0.71637762]\n", + "3 day output [[0.7155496]]\n", + "4 day input [0.69729025 0.71995087 0.73073513 0.7302573 0.71148725 0.69578864\n", + " 0.70036169 0.71790321 0.73503511 0.75162106 0.75844653 0.75223533\n", + " 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422\n", + " 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965\n", + " 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806\n", + " 0.72143543 0.7182669 0.71637762 0.71554959]\n", + "4 day output [[0.7155075]]\n", + "5 day input [0.71995087 0.73073513 0.7302573 0.71148725 0.69578864 0.70036169\n", + " 0.71790321 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942\n", + " 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968\n", + " 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552\n", + " 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543\n", + " 0.7182669 0.71637762 0.71554959 0.71550751]\n", + "5 day output [[0.715953]]\n", + "6 day input [0.73073513 0.7302573 0.71148725 0.69578864 0.70036169 0.71790321\n", + " 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847\n", + " 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685\n", + " 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965\n", + " 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669\n", + " 0.71637762 0.71554959 0.71550751 0.71595299]\n", + "6 day output [[0.7165952]]\n", + "7 day input [0.7302573 0.71148725 0.69578864 0.70036169 0.71790321 0.73503511\n", + " 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215\n", + " 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288\n", + " 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158\n", + " 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762\n", + " 0.71554959 0.71550751 0.71595299 0.71659517]\n", + "7 day output [[0.7171762]]\n", + "8 day input [0.71148725 0.69578864 0.70036169 0.71790321 0.73503511 0.75162106\n", + " 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883\n", + " 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925\n", + " 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143\n", + " 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959\n", + " 0.71550751 0.71595299 0.71659517 0.7171762 ]\n", + "8 day output [[0.7174904]]\n", + "9 day input [0.69578864 0.70036169 0.71790321 0.73503511 0.75162106 0.75844653\n", + " 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496\n", + " 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596\n", + " 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426\n", + " 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751\n", + " 0.71595299 0.71659517 0.7171762 0.71749038]\n", + "9 day output [[0.7173947]]\n", + "10 day input [0.70036169 0.71790321 0.73503511 0.75162106 0.75844653 0.75223533\n", + " 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422\n", + " 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965\n", + " 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806\n", + " 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299\n", + " 0.71659517 0.7171762 0.71749038 0.71739471]\n", + "10 day output [[0.7168133]]\n", + "11 day input [0.71790321 0.73503511 0.75162106 0.75844653 0.75223533 0.76458942\n", + " 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968\n", + " 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552\n", + " 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543\n", + " 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517\n", + " 0.7171762 0.71749038 0.71739471 0.71681333]\n", + "11 day output [[0.71573406]]\n", + "12 day input [0.73503511 0.75162106 0.75844653 0.75223533 0.76458942 0.75093847\n", + " 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685\n", + " 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965\n", + " 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669\n", + " 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762\n", + " 0.71749038 0.71739471 0.71681333 0.71573406]\n", + "12 day output [[0.7142006]]\n", + "13 day input [0.75162106 0.75844653 0.75223533 0.76458942 0.75093847 0.76800215\n", + " 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288\n", + " 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158\n", + " 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762\n", + " 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038\n", + " 0.71739471 0.71681333 0.71573406 0.71420062]\n", + "13 day output [[0.71229744]]\n", + "14 day input [0.75844653 0.75223533 0.76458942 0.75093847 0.76800215 0.78103883\n", + " 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925\n", + " 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143\n", + " 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959\n", + " 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471\n", + " 0.71681333 0.71573406 0.71420062 0.71229744]\n", + "14 day output [[0.7101372]]\n", + "15 day input [0.75223533 0.76458942 0.75093847 0.76800215 0.78103883 0.78588496\n", + " 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596\n", + " 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426\n", + " 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751\n", + " 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333\n", + " 0.71573406 0.71420062 0.71229744 0.71013719]\n", + "15 day output [[0.70784277]]\n", + "16 day input [0.76458942 0.75093847 0.76800215 0.78103883 0.78588496 0.78356422\n", + " 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965\n", + " 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806\n", + " 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299\n", + " 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406\n", + " 0.71420062 0.71229744 0.71013719 0.70784277]\n", + "16 day output [[0.7055346]]\n", + "17 day input [0.75093847 0.76800215 0.78103883 0.78588496 0.78356422 0.80055968\n", + " 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552\n", + " 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543\n", + " 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517\n", + " 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406 0.71420062\n", + " 0.71229744 0.71013719 0.70784277 0.70553458]\n", + "17 day output [[0.7033181]]\n", + "18 day input [0.76800215 0.78103883 0.78588496 0.78356422 0.80055968 0.81318685\n", + " 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965\n", + " 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669\n", + " 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762\n", + " 0.71749038 0.71739471 0.71681333 0.71573406 0.71420062 0.71229744\n", + " 0.71013719 0.70784277 0.70553458 0.70331812]\n", + "18 day output [[0.7012769]]\n", + "19 day input [0.78103883 0.78588496 0.78356422 0.80055968 0.81318685 0.81803288\n", + " 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158\n", + " 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762\n", + " 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038\n", + " 0.71739471 0.71681333 0.71573406 0.71420062 0.71229744 0.71013719\n", + " 0.70784277 0.70553458 0.70331812 0.7012769 ]\n", + "19 day output [[0.6994661]]\n", + "20 day input [0.78588496 0.78356422 0.80055968 0.81318685 0.81803288 0.80956925\n", + " 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143\n", + " 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959\n", + " 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471\n", + " 0.71681333 0.71573406 0.71420062 0.71229744 0.71013719 0.70784277\n", + " 0.70553458 0.70331812 0.7012769 0.69946611]\n", + "20 day output [[0.69791377]]\n", + "21 day input [0.78356422 0.80055968 0.81318685 0.81803288 0.80956925 0.7962596\n", + " 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426\n", + " 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751\n", + " 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333\n", + " 0.71573406 0.71420062 0.71229744 0.71013719 0.70784277 0.70553458\n", + " 0.70331812 0.7012769 0.69946611 0.69791377]\n", + "21 day output [[0.696621]]\n", + "22 day input [0.80055968 0.81318685 0.81803288 0.80956925 0.7962596 0.82519965\n", + " 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806\n", + " 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299\n", + " 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406\n", + " 0.71420062 0.71229744 0.71013719 0.70784277 0.70553458 0.70331812\n", + " 0.7012769 0.69946611 0.69791377 0.696621 ]\n", + "22 day output [[0.6955664]]\n", + "23 day input [0.81318685 0.81803288 0.80956925 0.7962596 0.82519965 0.82731552\n", + " 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543\n", + " 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517\n", + " 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406 0.71420062\n", + " 0.71229744 0.71013719 0.70784277 0.70553458 0.70331812 0.7012769\n", + " 0.69946611 0.69791377 0.696621 0.69556642]\n", + "23 day output [[0.69471216]]\n", + "24 day input [0.81803288 0.80956925 0.7962596 0.82519965 0.82731552 0.86820015\n", + " 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057\n", + " 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092\n", + " 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823\n", + " 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939\n", + " 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012\n", + " 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875\n", + " 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722\n", + " 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821\n", + " 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536\n", + " 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875\n", + " 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965\n", + " 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669\n", + " 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762\n", + " 0.71749038 0.71739471 0.71681333 0.71573406 0.71420062 0.71229744\n", + " 0.71013719 0.70784277 0.70553458 0.70331812 0.7012769 0.69946611\n", + " 0.69791377 0.696621 0.69556642 0.69471216]\n", + "24 day output [[0.6940102]]\n", + "25 day input [0.80956925 0.7962596 0.82519965 0.82731552 0.86820015 0.86792706\n", + " 0.85987306 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794\n", + " 0.90717353 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499\n", + " 0.94512315 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393\n", + " 0.91884514 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082\n", + " 0.82356149 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935\n", + " 0.82362982 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358\n", + " 0.80567879 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138\n", + " 0.7280732 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732\n", + " 0.71981433 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802\n", + " 0.75264484 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438\n", + " 0.78875164 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158\n", + " 0.7392143 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762\n", + " 0.71554959 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038\n", + " 0.71739471 0.71681333 0.71573406 0.71420062 0.71229744 0.71013719\n", + " 0.70784277 0.70553458 0.70331812 0.7012769 0.69946611 0.69791377\n", + " 0.696621 0.69556642 0.69471216 0.6940102 ]\n", + "25 day output [[0.6934073]]\n", + "26 day input [0.7962596 0.82519965 0.82731552 0.86820015 0.86792706 0.85987306\n", + " 0.88840348 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353\n", + " 0.91843562 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315\n", + " 0.93720567 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514\n", + " 0.86321748 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149\n", + " 0.82069481 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982\n", + " 0.81093443 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879\n", + " 0.78520237 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732\n", + " 0.72786844 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433\n", + " 0.71612862 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484\n", + " 0.74070026 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164\n", + " 0.76868474 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143\n", + " 0.73198426 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959\n", + " 0.71550751 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471\n", + " 0.71681333 0.71573406 0.71420062 0.71229744 0.71013719 0.70784277\n", + " 0.70553458 0.70331812 0.7012769 0.69946611 0.69791377 0.696621\n", + " 0.69556642 0.69471216 0.6940102 0.6934073 ]\n", + "26 day output [[0.69285256]]\n", + "27 day input [0.82519965 0.82731552 0.86820015 0.86792706 0.85987306 0.88840348\n", + " 0.89249881 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562\n", + " 0.92648963 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567\n", + " 0.91072281 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748\n", + " 0.86089684 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481\n", + " 0.81857893 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443\n", + " 0.78438335 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237\n", + " 0.80090098 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844\n", + " 0.74936864 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862\n", + " 0.70937137 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026\n", + " 0.74711622 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474\n", + " 0.77178597 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426\n", + " 0.72600806 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751\n", + " 0.71595299 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333\n", + " 0.71573406 0.71420062 0.71229744 0.71013719 0.70784277 0.70553458\n", + " 0.70331812 0.7012769 0.69946611 0.69791377 0.696621 0.69556642\n", + " 0.69471216 0.6940102 0.6934073 0.69285256]\n", + "27 day output [[0.69229996]]\n", + "28 day input [0.82731552 0.86820015 0.86792706 0.85987306 0.88840348 0.89249881\n", + " 0.8833527 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963\n", + " 0.93481672 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281\n", + " 0.90287356 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684\n", + " 0.84738243 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893\n", + " 0.82854416 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335\n", + " 0.80629306 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098\n", + " 0.80738516 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864\n", + " 0.75728622 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137\n", + " 0.73141761 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622\n", + " 0.76049419 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597\n", + " 0.76457196 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806\n", + " 0.72143543 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299\n", + " 0.71659517 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406\n", + " 0.71420062 0.71229744 0.71013719 0.70784277 0.70553458 0.70331812\n", + " 0.7012769 0.69946611 0.69791377 0.696621 0.69556642 0.69471216\n", + " 0.6940102 0.6934073 0.69285256 0.69229996]\n", + "28 day output [[0.6917136]]\n", + "29 day input [0.86820015 0.86792706 0.85987306 0.88840348 0.89249881 0.8833527\n", + " 0.89673057 0.88314794 0.90717353 0.91843562 0.92648963 0.93481672\n", + " 0.93700092 0.95365499 0.94512315 0.93720567 0.91072281 0.90287356\n", + " 0.89877823 0.91263393 0.91884514 0.86321748 0.86089684 0.84738243\n", + " 0.83263939 0.84588082 0.82356149 0.82069481 0.81857893 0.82854416\n", + " 0.87250012 0.84710935 0.82362982 0.81093443 0.78438335 0.80629306\n", + " 0.83031875 0.83482358 0.80567879 0.78520237 0.80090098 0.80738516\n", + " 0.77953722 0.75278138 0.7280732 0.72786844 0.74936864 0.75728622\n", + " 0.75837821 0.7280732 0.71981433 0.71612862 0.70937137 0.73141761\n", + " 0.73776536 0.72670802 0.75264484 0.74070026 0.74711622 0.76049419\n", + " 0.77673875 0.79216438 0.78875164 0.76868474 0.77178597 0.76457196\n", + " 0.75605965 0.74739158 0.7392143 0.73198426 0.72600806 0.72143543\n", + " 0.7182669 0.71637762 0.71554959 0.71550751 0.71595299 0.71659517\n", + " 0.7171762 0.71749038 0.71739471 0.71681333 0.71573406 0.71420062\n", + " 0.71229744 0.71013719 0.70784277 0.70553458 0.70331812 0.7012769\n", + " 0.69946611 0.69791377 0.696621 0.69556642 0.69471216 0.6940102\n", + " 0.6934073 0.69285256 0.69229996 0.69171357]\n", + "29 day output [[0.6910678]]\n", + "[[0.7214354276657104], [0.7182669043540955], [0.7163776159286499], [0.7155495882034302], [0.7155075073242188], [0.71595299243927], [0.7165951728820801], [0.7171761989593506], [0.7174903750419617], [0.7173947095870972], [0.716813325881958], [0.71573406457901], [0.7142006158828735], [0.7122974395751953], [0.7101371884346008], [0.7078427672386169], [0.7055345773696899], [0.7033181190490723], [0.7012768983840942], [0.6994661092758179], [0.6979137659072876], [0.6966210007667542], [0.6955664157867432], [0.6947121620178223], [0.6940101981163025], [0.6934072971343994], [0.6928525567054749], [0.6922999620437622], [0.6917135715484619], [0.6910678148269653]]\n" + ] + } + ], + "source": [ + "# demonstrate prediction for next 30 days\n", + "\n", + "lst_output=[]\n", + "n_steps=100\n", + "i=0\n", + "while(i<30): \n", + " \n", + " if(len(temp_input)>100):\n", + " #print(temp_input)\n", + " x_input=np.array(temp_input[1:])\n", + " print(\"{} day input {}\".format(i,x_input))\n", + " x_input=x_input.reshape(1,-1)\n", + " x_input = x_input.reshape((1, n_steps, 1))\n", + " #print(x_input)\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(\"{} day output {}\".format(i,yhat))\n", + " temp_input.extend(yhat[0].tolist())\n", + " temp_input=temp_input[1:]\n", + " #print(temp_input)\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " else: # First this block is run because temp_input is not greater than 100\n", + " x_input = x_input.reshape((1, n_steps,1))\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(yhat[0])\n", + " temp_input.extend(yhat[0].tolist())\n", + " print(len(temp_input))\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " # This else block predict the next day and after this if part execute.\n", + " \n", + "\n", + "print(lst_output)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "jSYv7zCJqNZk" + }, + "outputs": [], + "source": [ + "day_new=np.arange(1,101) # taking previous 100 days\n", + "day_pred=np.arange(101,131)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "t2bhft22qNZl", + "outputId": "d1b8a315-a9ec-434a-af5c-122aa9072c63" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "1258" + ] + }, + "metadata": {}, + "execution_count": 125 + } + ], + "source": [ + "len(df1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "JLmbYz_oqNZl", + "outputId": "3c9abf56-afad-4224-dfed-aa7fe88e1fcf" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 126 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value.\n", + "plt.plot(day_new,scaler.inverse_transform(df1[1158:]))\n", + "plt.plot(day_pred,scaler.inverse_transform(lst_output))\n", + "# Yellow line predicts the next 30 day prediction." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "matbkSEuqNZl", + "outputId": "903e1a70-9b89-4184-932b-d36096a411c5" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 127 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df4=df1.tolist()\n", + "df4.extend(lst_output)\n", + "plt.plot(df4[1200:])\n", + "\n", + "#Exend the graph by joining previous and prdicted one and it,s lokks good." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "nj9EQHrXqNZm" + }, + "outputs": [], + "source": [ + "df4=scaler.inverse_transform(df4).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "SlIT-KUvqNZm", + "outputId": "8375e85f-6ae8-4e41-c39b-afa4384bec09" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 129 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#full graph is given below:\n", + "plt.plot(df4)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "WfSet5u4ZhZ0" + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/stock_market_arham.py b/stock_market_arham.py new file mode 100644 index 0000000..f411f54 --- /dev/null +++ b/stock_market_arham.py @@ -0,0 +1,306 @@ +# -*- coding: utf-8 -*- +"""Stock_Market_Prediction_Using_LSTM_YaooAPI_Final.ipynb + +Automatically generated by Colaboratory. + +Original file is located at + https://colab.research.google.com/drive/1lv49VQHHMO-9Fz8OaZmzSTxEYzzFJoYP + +### Stock Market Prediction And Forecasting Using LSTM +""" + +import pandas as pd +import numpy as np +import math +import numpy +from sklearn.metrics import mean_squared_error +from sklearn.metrics import mean_absolute_error +from sklearn.preprocessing import MinMaxScaler +from tensorflow.keras.models import Sequential +from tensorflow.keras.layers import Dense +from tensorflow.keras.layers import LSTM +import tensorflow as tf +from numpy import array +import matplotlib.pyplot as plt + +import time +import datetime + +#Using Yahoo Finance API for downloading the APPL data +ticker = 'AAPL' +period1 = int(time.mktime(datetime.datetime(2017, 10, 28, 23, 59).timetuple())) +period2 = int(time.mktime(datetime.datetime(2022, 12, 27, 23, 59).timetuple())) +interval = '1d' # 1d, 1m +# query from yahoo_Finance_API +query_string = f'https://query1.finance.yahoo.com/v7/finance/download/{ticker}?period1={period1}&period2={period2}&interval={interval}&events=history&includeAdjustedClose=true' + +df = pd.read_csv(query_string) +# print(df) +df.to_csv('AAPL_Yahoo.csv') #store APPL data in APLL_Yahoo.csv you can name it XYZ and also download it. + +df=pd.read_csv('AAPL_Yahoo.csv') # Read the .csv File + +df.head() # Display the first five rows of data + +df.tail() # Display the last five Rows of dataFile + +df.drop(df.tail(1).index,inplace=True) # delete the because we required 0 to 1257 rows. + +df.tail() + +df.plot() #plot a graph of all the data. + +plt.show() + +df1=df.reset_index()['High'] # Choose the high column for the prdeiction of stock prices. + # we can also choose any other value for the prediction of prices. + # all the values of high are in the df1 + +df1.shape # Display the shape of data + +plt.plot(df1) # Draw a graph for the up and down movements from 2017 to 2022 + +df1 #Display the vaule in df1 + +# LSTM are sensitive to the scale of the data. so we apply MinMax scaler +# Min Max convert the all values in range of 0 to 1 +scaler=MinMaxScaler(feature_range=(0,1)) +df1=scaler.fit_transform(np.array(df1).reshape(-1,1)) + +df1.shape + +print(df1) + +#splitting dataset into train and test split +#Where trainig size of data is 65% and test size of data is 35% +training_size=int(len(df1)*0.65) +test_size=len(df1)-training_size +train_data,test_data=df1[0:training_size,:],df1[training_size:len(df1),:1] + +# total no of values in training size and test size +training_size,test_size + +print(train_data,test_data) + +# convert an array of values into a dataset matrix +def create_dataset(dataset, time_step=1): + dataX, dataY = [], [] + for i in range(len(dataset)-time_step-1): + a = dataset[i:(i+time_step), 0] #i=0, 0,1,2,3-----99 100 + dataX.append(a) # 101 goes to data .append + dataY.append(dataset[i + time_step, 0]) + return numpy.array(dataX), numpy.array(dataY) + +# reshape into X=t,t+1,t+2,t+3 and Y=t+4 +# time_step of data is 100 mean it takes 100 previous values to predict the next value. +time_step = 100 +X_train, y_train = create_dataset(train_data, time_step) +X_test, ytest = create_dataset(test_data, time_step) + +print(X_train.shape), print(y_train.shape) + +print(X_test.shape), print(ytest.shape) + +# reshape input to be [samples, time steps, features] which is required for LSTM +# convert a 2d data into 3d using reshape +X_train =X_train.reshape(X_train.shape[0],X_train.shape[1] , 1) +X_test = X_test.reshape(X_test.shape[0],X_test.shape[1] , 1) + +#Create the Stacked LSTM model +model=Sequential() +model.add(LSTM(50,return_sequences=True,input_shape=(100,1))) +model.add(LSTM(50,return_sequences=True)) +model.add(LSTM(50)) +model.add(Dense(1)) +model.compile(loss='mean_squared_error',optimizer='adam') + +model.summary() # details of model. + +# train the data using batch 64 +hist=model.fit(X_train,y_train,validation_data=(X_test,ytest),epochs=100,batch_size=64,verbose=1) + +#print the keys of dictionary that store the loss +print(hist.history.keys()) + +loss = pd.DataFrame(model.history.history) + +#plot the losses during training +loss.plot() + +# Lets Do the prediction and check performance metrics +train_predict=model.predict(X_train) +test_predict=model.predict(X_test) + +print(train_predict) + +#Transformback to original form +train_predict=scaler.inverse_transform(train_predict) +test_predict=scaler.inverse_transform(test_predict) + +print(test_predict) + +### Calculate Root Mean Square error performance metrics (RMSE) +rmse=math.sqrt(mean_squared_error(y_train,train_predict)) +print(rmse) + +### Test Data Root Mean Square error (RMSE) +rmse=math.sqrt(mean_squared_error(ytest,test_predict)) +print(rmse) + +### Train Data Mean Absolut percentage error (MAPE) +mape = mean_absolute_error(y_train, train_predict) +print(mape) + +### Test Data Mean Absolut percentage error (MAPE) +mape = mean_absolute_error(ytest, test_predict) +print(mape) + +### Plotting +# shift train predictions for plotting +look_back=100 +trainPredictPlot = numpy.empty_like(df1) +trainPredictPlot[:, :] = np.nan #Taking NaN values based on df1 for training. +trainPredictPlot[look_back:len(train_predict)+look_back, :] = train_predict +# shift test predictions for plotting +testPredictPlot = numpy.empty_like(df1) +testPredictPlot[:, :] = numpy.nan #Taking NaN values based on df1 for testing. +testPredictPlot[len(train_predict)+(look_back*2)+1:len(df1)-1, :] = test_predict +# plot baseline and predictions +plt.plot(scaler.inverse_transform(df1)) +plt.plot(trainPredictPlot) +plt.plot(testPredictPlot) +plt.show() + +# where blue one is the actual dataset value, +# Yellow one are the training dataset values +# and Green one are testing values + +# Training dataset graph +plt.plot(trainPredictPlot) + +# Testing dataset graph +plt.plot(testPredictPlot) + +# Actual dataset graph +plt.plot(scaler.inverse_transform(df1)) + +len(test_data) + +x_input=test_data[341:].reshape(1,-1) +x_input.shape + +temp_input=list(x_input) +temp_input=temp_input[0].tolist() + +temp_input + +"""# Weekly Prediction of Apple stock Market""" + +# demonstrate prediction for next 7 days + +lst_output=[] +n_steps=100 +i=0 +while(i<7): + + if(len(temp_input)>100): + #print(temp_input) + x_input=np.array(temp_input[1:]) + print("{} day input {}".format(i,x_input)) + x_input=x_input.reshape(1,-1) + x_input = x_input.reshape((1, n_steps, 1)) + #print(x_input) + yhat = model.predict(x_input, verbose=0) + print("{} day output {}".format(i,yhat)) + temp_input.extend(yhat[0].tolist()) + temp_input=temp_input[1:] + #print(temp_input) + lst_output.extend(yhat.tolist()) + i=i+1 + else: # First this block is run because temp_input is not greater than 100 + x_input = x_input.reshape((1, n_steps,1)) + yhat = model.predict(x_input, verbose=0) + print(yhat[0]) + temp_input.extend(yhat[0].tolist()) + print(len(temp_input)) + lst_output.extend(yhat.tolist()) + i=i+1 + # This else block predict the next day and after this if part execute. + + +print(lst_output) + +day_new=np.arange(1,101) # taking previous 100 days +day_pred=np.arange(101,108) + +# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value. +plt.plot(day_new,scaler.inverse_transform(df1[1158:])) +plt.plot(day_pred,scaler.inverse_transform(lst_output)) +# Yellow line predicts the next 7 day prediction. + +df3=df1.tolist() +df3.extend(lst_output) +plt.plot(df3[1200:]) + +df3=scaler.inverse_transform(df3).tolist() + +#full graph is given below: +plt.plot(df3) + +"""# Monthly Prediction of Apple stock Market""" + +# demonstrate prediction for next 30 days + +lst_output=[] +n_steps=100 +i=0 +while(i<30): + + if(len(temp_input)>100): + #print(temp_input) + x_input=np.array(temp_input[1:]) + print("{} day input {}".format(i,x_input)) + x_input=x_input.reshape(1,-1) + x_input = x_input.reshape((1, n_steps, 1)) + #print(x_input) + yhat = model.predict(x_input, verbose=0) + print("{} day output {}".format(i,yhat)) + temp_input.extend(yhat[0].tolist()) + temp_input=temp_input[1:] + #print(temp_input) + lst_output.extend(yhat.tolist()) + i=i+1 + else: # First this block is run because temp_input is not greater than 100 + x_input = x_input.reshape((1, n_steps,1)) + yhat = model.predict(x_input, verbose=0) + print(yhat[0]) + temp_input.extend(yhat[0].tolist()) + print(len(temp_input)) + lst_output.extend(yhat.tolist()) + i=i+1 + # This else block predict the next day and after this if part execute. + + +print(lst_output) + +day_new=np.arange(1,101) # taking previous 100 days +day_pred=np.arange(101,131) + +len(df1) + +# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value. +plt.plot(day_new,scaler.inverse_transform(df1[1158:])) +plt.plot(day_pred,scaler.inverse_transform(lst_output)) +# Yellow line predicts the next 30 day prediction. + +df4=df1.tolist() +df4.extend(lst_output) +plt.plot(df4[1200:]) + +#Exend the graph by joining previous and prdicted one and it,s lokks good. + +df4=scaler.inverse_transform(df4).tolist() + +#full graph is given below: +plt.plot(df4) + From 4124355d2dacd550bfa20696ea1b97b00a0bea33 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 24 Feb 2023 23:06:52 +0500 Subject: [PATCH 2/2] Added two new files --- AAPL.csv | 1259 +++++++++ Stock_Market_haseeb.ipynb | 5495 +++++++++++++++++++++++++++++++++++++ stock_market_haseeb.py | 277 ++ 3 files changed, 7031 insertions(+) create mode 100644 AAPL.csv create mode 100644 Stock_Market_haseeb.ipynb create mode 100644 stock_market_haseeb.py diff --git a/AAPL.csv b/AAPL.csv new file mode 100644 index 0000000..55e4c7d --- /dev/null +++ b/AAPL.csv @@ -0,0 +1,1259 @@ +,symbol,date,close,high,low,open,volume,adjClose,adjHigh,adjLow,adjOpen,adjVolume,divCash,splitFactor +0,AAPL,2017-10-23 00:00:00+00:00,156.17,157.69,155.5,156.89,21654461,37.0518545828,37.4124796643,36.892894843,37.2226769898,86617844,0.0,1.0 +1,AAPL,2017-10-24 00:00:00+00:00,157.1,157.42,156.2,156.29,17137731,37.2725001919,37.3484212616,37.0589721831,37.080324984,68550924,0.0,1.0 +2,AAPL,2017-10-25 00:00:00+00:00,156.41,157.55,155.27,156.91,20126554,37.1087953852,37.3792641962,36.8383265741,37.2274220567,80506216,0.0,1.0 +3,AAPL,2017-10-26 00:00:00+00:00,157.41,157.8295,156.78,157.23,16751691,37.3460487282,37.4455765056,37.1965791221,37.3033431265,67006764,0.0,1.0 +4,AAPL,2017-10-27 00:00:00+00:00,163.05,163.6,158.7,159.29,43904150,38.684157583,38.8146469216,37.6521055407,37.7920850131,175616600,0.0,1.0 +5,AAPL,2017-10-30 00:00:00+00:00,166.72,168.07,163.72,163.89,43923292,39.5548773519,39.875169365,38.8431173228,38.8834503911,175693168,0.0,1.0 +6,AAPL,2017-10-31 00:00:00+00:00,169.04,169.6499,166.94,167.9,35474672,40.1053051078,40.2500059217,39.6070730874,39.8348362967,141898688,0.0,1.0 +7,AAPL,2017-11-01 00:00:00+00:00,166.89,169.94,165.61,169.87,33100847,39.5952104202,40.3188331165,39.2915261411,40.3022253825,132403388,0.0,1.0 +8,AAPL,2017-11-02 00:00:00+00:00,168.11,168.5,165.28,167.64,32710040,39.8846594988,39.9771883025,39.2132325379,39.7731504275,130840160,0.0,1.0 +9,AAPL,2017-11-03 00:00:00+00:00,172.5,174.26,171.12,174.0,58683826,40.9262016747,41.3437675585,40.5987920613,41.2820816893,234735304,0.0,1.0 +10,AAPL,2017-11-06 00:00:00+00:00,174.25,174.99,171.72,172.365,34242566,41.341395025,41.5169624989,40.7411440671,40.8941724734,136970264,0.0,1.0 +11,AAPL,2017-11-07 00:00:00+00:00,174.81,175.25,173.6,173.91,23910914,41.4742568971,41.5786483681,41.1871803521,41.2607288884,95643656,0.0,1.0 +12,AAPL,2017-11-08 00:00:00+00:00,176.24,176.24,174.33,174.66,23907639,41.8135291777,41.8135291777,41.3603752925,41.4386688957,95630556,0.0,1.0 +13,AAPL,2017-11-09 00:00:00+00:00,175.88,176.095,173.14,175.11,28636531,41.7281179742,41.7791274429,41.0780438143,41.5454329,114546124,0.0,1.0 +14,AAPL,2017-11-10 00:00:00+00:00,174.67,175.38,174.27,175.11,25061183,41.5905110352,41.759568474,41.4952674077,41.6952790255,100244732,0.63,1.0 +15,AAPL,2017-11-13 00:00:00+00:00,173.97,174.5,173.4,173.5,16828025,41.4238346871,41.5500324935,41.2881125179,41.3119234248,67312100,0.0,1.0 +16,AAPL,2017-11-14 00:00:00+00:00,171.34,173.48,171.18,173.04,23588451,40.7976078363,41.3071612434,40.7595103854,41.2023932532,94353804,0.0,1.0 +17,AAPL,2017-11-15 00:00:00+00:00,169.08,170.3197,168.38,169.97,28702351,40.259481341,40.5546651535,40.0928049929,40.4713984122,114809404,0.0,1.0 +18,AAPL,2017-11-16 00:00:00+00:00,171.1,171.87,170.3,171.18,23497326,40.7404616599,40.9238056428,40.5499744049,40.7595103854,93989304,0.0,1.0 +19,AAPL,2017-11-17 00:00:00+00:00,170.15,171.39,169.64,171.04,21665811,40.5142580446,40.8095132898,40.3928224195,40.7261751157,86663244,0.0,1.0 +20,AAPL,2017-11-20 00:00:00+00:00,169.98,170.56,169.56,170.29,15974387,40.4737795029,40.6118827627,40.373773694,40.5475933142,63897548,0.0,1.0 +21,AAPL,2017-11-21 00:00:00+00:00,173.14,173.7,170.78,170.78,24875471,41.2262041601,41.3595452386,40.6642667579,40.6642667579,99501884,0.0,1.0 +22,AAPL,2017-11-22 00:00:00+00:00,174.96,175.0,173.05,173.36,24997274,41.6595626652,41.6690870279,41.2047743439,41.2785881552,99989096,0.0,1.0 +23,AAPL,2017-11-24 00:00:00+00:00,174.97,175.5,174.6459,175.1,14026519,41.6619437558,41.7881415623,41.5847726067,41.6928979348,56106076,0.0,1.0 +24,AAPL,2017-11-27 00:00:00+00:00,174.09,175.08,173.34,175.05,20536313,41.4524077754,41.6881357534,41.2738259738,41.6809924813,82145252,0.0,1.0 +25,AAPL,2017-11-28 00:00:00+00:00,173.07,174.87,171.86,174.3,25468442,41.2095365253,41.638132849,40.9214245521,41.5024106798,101873768,0.0,1.0 +26,AAPL,2017-11-29 00:00:00+00:00,169.48,172.92,167.16,172.63,40788324,40.3547249685,41.1738201649,39.8023119291,41.104768535,163153296,0.0,1.0 +27,AAPL,2017-11-30 00:00:00+00:00,171.85,172.14,168.44,170.43,40172368,40.9190434614,40.9880950913,40.107091537,40.5809285838,160689472,0.0,1.0 +28,AAPL,2017-12-01 00:00:00+00:00,171.05,171.67,168.5,169.95,39590080,40.7285562064,40.876183829,40.1213780812,40.4666362308,158360320,0.0,1.0 +29,AAPL,2017-12-04 00:00:00+00:00,169.8,172.62,169.63,172.48,32115052,40.4309198705,41.1023874443,40.3904413288,41.0690521747,128460208,0.0,1.0 +30,AAPL,2017-12-05 00:00:00+00:00,169.64,171.52,168.4,169.06,27008428,40.3928224195,40.8404674687,40.0975671743,40.2547191596,108033712,0.0,1.0 +31,AAPL,2017-12-06 00:00:00+00:00,169.01,170.2047,166.46,167.5,28224357,40.2428137062,40.5272826106,39.6356355809,39.8832690124,112897428,0.0,1.0 +32,AAPL,2017-12-07 00:00:00+00:00,169.32,170.44,168.91,169.03,24469613,40.3166275175,40.5833096745,40.2190027993,40.2475758876,97878452,0.0,1.0 +33,AAPL,2017-12-08 00:00:00+00:00,169.37,171.0,168.82,170.49,23096872,40.3285329709,40.716650753,40.1975729831,40.5952151279,92387488,0.0,1.0 +34,AAPL,2017-12-11 00:00:00+00:00,172.67,172.89,168.79,169.2,33092051,41.1142928978,41.1666768929,40.1904297111,40.2880544293,132368204,0.0,1.0 +35,AAPL,2017-12-12 00:00:00+00:00,171.7,172.39,171.461,172.15,18945457,40.8833271011,41.0476223585,40.8264190337,40.990476182,75781828,0.0,1.0 +36,AAPL,2017-12-13 00:00:00+00:00,172.27,173.54,172.0,172.5,23142242,41.0190492703,41.3214477876,40.9547598217,41.0738143561,92568968,0.0,1.0 +37,AAPL,2017-12-14 00:00:00+00:00,172.22,173.13,171.65,172.4,20219307,41.0071438168,41.2238230694,40.8714216477,41.0500034492,80877228,0.0,1.0 +38,AAPL,2017-12-15 00:00:00+00:00,173.97,174.17,172.46,173.63,37054632,41.4238346871,41.4714565009,41.0642899933,41.3428776037,148218528,0.0,1.0 +39,AAPL,2017-12-18 00:00:00+00:00,176.42,177.2,174.86,174.88,28831533,42.0072019055,42.1929269791,41.6357517583,41.6405139397,115326132,0.0,1.0 +40,AAPL,2017-12-19 00:00:00+00:00,174.54,175.39,174.09,175.03,27078872,41.5595568563,41.7619495647,41.4524077754,41.6762303,108315488,0.0,1.0 +41,AAPL,2017-12-20 00:00:00+00:00,174.35,175.42,173.25,174.87,23000392,41.5143161332,41.7690928368,41.2523961576,41.638132849,92001568,0.0,1.0 +42,AAPL,2017-12-21 00:00:00+00:00,175.01,176.02,174.1,174.17,20356826,41.6714681186,41.911958278,41.454788866,41.4714565009,81427304,0.0,1.0 +43,AAPL,2017-12-22 00:00:00+00:00,175.01,175.42,174.5,174.68,16052615,41.6714681186,41.7690928368,41.5500324935,41.5928921259,64210460,0.0,1.0 +44,AAPL,2017-12-26 00:00:00+00:00,170.57,171.47,169.68,170.8,32968167,40.6142638534,40.8285620153,40.4023467823,40.6690289392,131872668,0.0,1.0 +45,AAPL,2017-12-27 00:00:00+00:00,170.6,170.78,169.71,170.1,21672062,40.6214071255,40.6642667579,40.4094900543,40.5023525911,86688248,0.0,1.0 +46,AAPL,2017-12-28 00:00:00+00:00,171.08,171.85,170.48,171.0,15997739,40.7356994785,40.9190434614,40.5928340372,40.716650753,63990956,0.0,1.0 +47,AAPL,2017-12-29 00:00:00+00:00,169.23,170.59,169.22,170.52,25643711,40.2951977013,40.6190260348,40.2928166106,40.6023584,102574844,0.0,1.0 +48,AAPL,2018-01-02 00:00:00+00:00,172.26,172.3,169.26,170.16,25048048,41.0166681796,41.0261925423,40.3023409734,40.5166391352,100192192,0.0,1.0 +49,AAPL,2018-01-03 00:00:00+00:00,172.23,174.55,171.96,172.53,28819653,41.0095249075,41.561937947,40.945235459,41.0809576281,115278612,0.0,1.0 +50,AAPL,2018-01-04 00:00:00+00:00,173.03,173.47,172.08,172.54,22211345,41.2000121625,41.3047801527,40.9738085472,41.0833387188,88845380,0.0,1.0 +51,AAPL,2018-01-05 00:00:00+00:00,175.0,175.37,173.05,173.44,23016177,41.6690870279,41.7571873833,41.2047743439,41.2976368807,92064708,0.0,1.0 +52,AAPL,2018-01-08 00:00:00+00:00,174.35,175.61,173.93,174.35,20134092,41.5143161332,41.8143335598,41.4143103244,41.5143161332,80536368,0.0,1.0 +53,AAPL,2018-01-09 00:00:00+00:00,174.33,175.06,173.41,174.55,21262614,41.5095539519,41.683373572,41.2904936086,41.561937947,85050456,0.0,1.0 +54,AAPL,2018-01-10 00:00:00+00:00,174.29,174.3,173.0,173.16,23589129,41.5000295891,41.5024106798,41.1928688904,41.2309663414,94356516,0.0,1.0 +55,AAPL,2018-01-11 00:00:00+00:00,175.28,175.49,174.49,174.59,17523256,41.7357575671,41.7857604716,41.5476514029,41.5714623097,70093024,0.0,1.0 +56,AAPL,2018-01-12 00:00:00+00:00,177.09,177.36,175.65,176.18,25039531,42.1667349816,42.2310244301,41.8238579226,41.950055729,100158124,0.0,1.0 +57,AAPL,2018-01-16 00:00:00+00:00,176.19,179.39,176.14,177.9,29159005,41.9524368197,42.7143858396,41.9405313663,42.3596033272,116636020,0.0,1.0 +58,AAPL,2018-01-17 00:00:00+00:00,179.1,179.25,175.07,176.15,32752734,42.6453342097,42.68105057,41.6857546627,41.9429124569,131010936,0.0,1.0 +59,AAPL,2018-01-18 00:00:00+00:00,179.26,180.1,178.25,179.37,30234512,42.6834316607,42.8834432784,42.4429415013,42.7096236583,120938048,0.0,1.0 +60,AAPL,2018-01-19 00:00:00+00:00,178.46,179.58,177.41,178.61,30827809,42.4929444057,42.7596265627,42.2429298835,42.528660766,123311236,0.0,1.0 +61,AAPL,2018-01-22 00:00:00+00:00,177.0,177.78,176.6,177.3,26023683,42.1453051654,42.331030239,42.0500615379,42.216737886,104094732,0.0,1.0 +62,AAPL,2018-01-23 00:00:00+00:00,177.04,179.44,176.82,177.3,31702531,42.1548295281,42.7262912931,42.102445533,42.216737886,126810124,0.0,1.0 +63,AAPL,2018-01-24 00:00:00+00:00,174.22,177.3,173.2,177.25,50562257,41.4833619543,42.216737886,41.2404907042,42.2048324325,202249028,0.0,1.0 +64,AAPL,2018-01-25 00:00:00+00:00,171.11,174.95,170.53,174.51,39661804,40.7428427505,41.6571815745,40.6047394907,41.5524135842,158647216,0.0,1.0 +65,AAPL,2018-01-26 00:00:00+00:00,171.51,172.0,170.06,172.0,37121805,40.838086378,40.9547598217,40.4928282284,40.9547598217,148487220,0.0,1.0 +66,AAPL,2018-01-29 00:00:00+00:00,167.96,170.16,167.07,170.16,48434424,39.992799184,40.5166391352,39.7808821129,40.5166391352,193737696,0.0,1.0 +67,AAPL,2018-01-30 00:00:00+00:00,166.97,167.37,164.7,165.53,45137026,39.757071206,39.8523148335,39.21656362,39.414194147,180548104,0.0,1.0 +68,AAPL,2018-01-31 00:00:00+00:00,167.43,168.44,166.5,166.87,30984099,39.8666013776,40.107091537,39.6451599437,39.7332602991,123936396,0.0,1.0 +69,AAPL,2018-02-01 00:00:00+00:00,167.78,168.62,166.76,167.17,38099665,39.9499395517,40.1499511694,39.7070683016,39.8046930197,152398660,0.0,1.0 +70,AAPL,2018-02-02 00:00:00+00:00,160.5,166.8,160.1,166.0,85436075,38.2165055313,39.7165926643,38.1212619038,39.5261054093,341744300,0.0,1.0 +71,AAPL,2018-02-05 00:00:00+00:00,156.49,163.88,156.0,159.1,66090446,37.2616881657,39.0213141836,37.145014722,37.8831528351,264361784,0.0,1.0 +72,AAPL,2018-02-06 00:00:00+00:00,163.03,163.72,154.0,154.83,66625484,38.8189214752,38.9832167326,36.6687965846,36.8664271116,266501936,0.0,1.0 +73,AAPL,2018-02-07 00:00:00+00:00,159.54,163.4,159.07,163.09,50852130,37.9879208253,38.9070218306,37.876009563,38.8332080193,203408520,0.0,1.0 +74,AAPL,2018-02-08 00:00:00+00:00,155.15,161.0,155.03,160.29,49594129,36.9426220136,38.3355600657,36.9140489253,38.1665026269,198376516,0.0,1.0 +75,AAPL,2018-02-09 00:00:00+00:00,156.41,157.89,150.24,157.07,66723743,37.3926481535,37.7464690043,35.9175977149,37.5504331275,266894972,0.63,1.0 +76,AAPL,2018-02-12 00:00:00+00:00,162.71,163.89,157.51,158.5,60560145,38.8987774506,39.1808778587,37.6556231101,37.8923005711,242240580,0.0,1.0 +77,AAPL,2018-02-13 00:00:00+00:00,164.34,164.75,161.65,161.95,32104756,39.2884585228,39.3864764612,38.6453652197,38.7170856624,128419024,0.0,1.0 +78,AAPL,2018-02-14 00:00:00+00:00,167.37,167.54,162.88,163.04,39669178,40.0128349943,40.0534765785,38.9394190349,38.9776699376,158676712,0.0,1.0 +79,AAPL,2018-02-15 00:00:00+00:00,172.99,173.09,169.0,169.79,50609595,41.3563979546,41.3803047688,40.4025160664,40.5913798989,202438380,0.0,1.0 +80,AAPL,2018-02-16 00:00:00+00:00,172.43,174.82,171.77,172.36,39638793,41.2225197948,41.7938926552,41.0647348208,41.2057850248,158555172,0.0,1.0 +81,AAPL,2018-02-20 00:00:00+00:00,171.85,174.26,171.42,172.05,33531012,41.0838602722,41.6600144954,40.981060971,41.1316739007,134124048,0.0,1.0 +82,AAPL,2018-02-21 00:00:00+00:00,171.07,174.12,171.01,172.83,35833514,40.8973871211,41.6265449555,40.8830430326,41.3181470518,143334056,0.0,1.0 +83,AAPL,2018-02-22 00:00:00+00:00,172.5,173.95,171.71,171.8,30504116,41.2392545648,41.5859033713,41.0503907323,41.0719068651,122016464,0.0,1.0 +84,AAPL,2018-02-23 00:00:00+00:00,175.5,175.65,173.54,173.67,33329232,41.956458992,41.9923192134,41.4878854329,41.5189642914,133316928,0.0,1.0 +85,AAPL,2018-02-26 00:00:00+00:00,178.97,179.39,176.21,176.35,36886432,42.7860254461,42.886434066,42.1261973731,42.159666913,147545728,0.0,1.0 +86,AAPL,2018-02-27 00:00:00+00:00,178.39,180.48,178.16,179.1,38685165,42.6473659235,43.1470183412,42.5923802508,42.8171043047,154740660,0.0,1.0 +87,AAPL,2018-02-28 00:00:00+00:00,178.12,180.62,178.05,179.26,33604574,42.5828175251,43.1804878811,42.5660827551,42.8553552074,134418296,0.0,1.0 +88,AAPL,2018-03-01 00:00:00+00:00,175.0,179.78,172.66,178.54,48801970,41.8369249208,42.9796706415,41.2775054676,42.6832261449,195207880,0.0,1.0 +89,AAPL,2018-03-02 00:00:00+00:00,176.21,176.3,172.45,172.8,38453950,42.1261973731,42.1477135059,41.2273011577,41.3109750075,153815800,0.0,1.0 +90,AAPL,2018-03-05 00:00:00+00:00,176.82,177.74,174.52,175.21,28401366,42.27202894,42.491971631,41.7221722124,41.8871292307,113605464,0.0,1.0 +91,AAPL,2018-03-06 00:00:00+00:00,176.67,178.25,176.13,177.91,23788506,42.2361687186,42.6138963836,42.1070719217,42.5326132152,95154024,0.0,1.0 +92,AAPL,2018-03-07 00:00:00+00:00,175.03,175.85,174.27,174.94,31703462,41.8440969651,42.0401328418,41.6624051768,41.8225808323,126813848,0.0,1.0 +93,AAPL,2018-03-08 00:00:00+00:00,176.94,177.12,175.07,175.48,23163767,42.3007171171,42.3437493827,41.8536596908,41.9516776292,92655068,0.0,1.0 +94,AAPL,2018-03-09 00:00:00+00:00,179.98,180.0,177.39,177.96,31385134,43.02748427,43.0322656328,42.4082977811,42.5445666223,125540536,0.0,1.0 +95,AAPL,2018-03-12 00:00:00+00:00,181.72,182.39,180.21,180.29,32055405,43.4434628378,43.6036384932,43.0824699427,43.1015953941,128221620,0.0,1.0 +96,AAPL,2018-03-13 00:00:00+00:00,179.97,183.5,179.24,182.59,31168404,43.0250935885,43.8690041312,42.8505738446,43.6514521216,124673616,0.0,1.0 +97,AAPL,2018-03-14 00:00:00+00:00,178.44,180.52,177.81,180.32,29075469,42.6593193307,43.1565810669,42.508706401,43.1087674384,116301876,0.0,1.0 +98,AAPL,2018-03-15 00:00:00+00:00,178.65,180.24,178.07,178.5,22584565,42.7095236406,43.089641987,42.570864118,42.6736634192,90338260,0.0,1.0 +99,AAPL,2018-03-16 00:00:00+00:00,178.02,179.12,177.62,178.65,36836456,42.5589107109,42.8218856675,42.4632834539,42.7095236406,147345824,0.0,1.0 +100,AAPL,2018-03-19 00:00:00+00:00,175.3,177.47,173.66,177.32,32804695,41.9086453635,42.4274232325,41.51657361,42.3915630112,131218780,0.0,1.0 +101,AAPL,2018-03-20 00:00:00+00:00,175.24,176.8,174.94,175.24,19314039,41.894301275,42.2672475771,41.8225808323,41.894301275,77256156,0.0,1.0 +102,AAPL,2018-03-21 00:00:00+00:00,171.27,175.09,171.26,175.04,35247358,40.9452007496,41.8584410536,40.9428100682,41.8464876465,140989432,0.0,1.0 +103,AAPL,2018-03-22 00:00:00+00:00,168.85,172.68,168.6,170.0,41051076,40.366655845,41.2822868304,40.3068888094,40.6415842088,164204304,0.0,1.0 +104,AAPL,2018-03-23 00:00:00+00:00,164.94,169.92,164.94,168.39,40248954,39.4318994082,40.6224587574,39.4318994082,40.2566844995,160995816,0.0,1.0 +105,AAPL,2018-03-26 00:00:00+00:00,172.77,173.1,166.44,168.07,36272617,41.3038029632,41.3826954502,39.7905016218,40.1801826939,145090468,0.0,1.0 +106,AAPL,2018-03-27 00:00:00+00:00,168.34,175.15,166.92,173.68,38962839,40.2447310924,41.8727851422,39.9052543302,41.5213549728,155851356,0.0,1.0 +107,AAPL,2018-03-28 00:00:00+00:00,166.48,170.02,165.19,167.25,41668545,39.8000643475,40.6463655716,39.4916664438,39.9841468172,166674180,0.0,1.0 +108,AAPL,2018-03-29 00:00:00+00:00,167.78,171.75,166.9,167.81,38398505,40.1108529326,41.059953458,39.9004729673,40.1180249769,153594020,0.0,1.0 +109,AAPL,2018-04-02 00:00:00+00:00,166.68,168.94,164.47,166.64,37586791,39.847877976,40.3881719778,39.3195373813,39.8383152503,150347164,0.0,1.0 +110,AAPL,2018-04-03 00:00:00+00:00,168.39,168.75,164.88,167.64,30278046,40.2566844995,40.3427490308,39.4175553197,40.0773833927,121112184,0.0,1.0 +111,AAPL,2018-04-04 00:00:00+00:00,171.61,172.01,164.77,164.88,34605489,41.026483918,41.122111175,39.391257824,39.4175553197,138421956,0.0,1.0 +112,AAPL,2018-04-05 00:00:00+00:00,172.8,174.23,172.08,172.58,26933197,41.3109750075,41.6528424511,41.138845945,41.2583800162,107732788,0.0,1.0 +113,AAPL,2018-04-06 00:00:00+00:00,168.38,172.48,168.2,170.97,35005290,40.2542938181,41.2344732019,40.2112615524,40.8734803069,140021160,0.0,1.0 +114,AAPL,2018-04-09 00:00:00+00:00,170.05,173.09,169.85,169.88,29017718,40.6535376159,41.3803047688,40.6057239874,40.6128960317,116070872,0.0,1.0 +115,AAPL,2018-04-10 00:00:00+00:00,173.25,174.0,171.53,173.0,28614241,41.4185556716,41.5978567784,41.0073584667,41.358788636,114456964,0.0,1.0 +116,AAPL,2018-04-11 00:00:00+00:00,172.44,173.92,171.7,172.23,22431640,41.2249104762,41.578731327,41.0480000509,41.1747061663,89726560,0.0,1.0 +117,AAPL,2018-04-12 00:00:00+00:00,174.14,175.0,173.04,173.41,22889285,41.6313263183,41.8369249208,41.3683513617,41.4568065744,91557140,0.0,1.0 +118,AAPL,2018-04-13 00:00:00+00:00,174.73,175.84,173.85,174.78,25124255,41.7723765223,42.0377421604,41.561996557,41.7843299295,100497020,0.0,1.0 +119,AAPL,2018-04-16 00:00:00+00:00,175.82,176.19,174.83,175.03,21578420,42.0329607976,42.1214160103,41.7962833366,41.8440969651,86313680,0.0,1.0 +120,AAPL,2018-04-17 00:00:00+00:00,178.24,178.94,176.41,176.49,26605442,42.6115057022,42.7788534019,42.1740110016,42.193136453,106421768,0.0,1.0 +121,AAPL,2018-04-18 00:00:00+00:00,177.84,178.82,176.88,177.81,20754538,42.5158784452,42.7501652248,42.2863730285,42.508706401,83018152,0.0,1.0 +122,AAPL,2018-04-19 00:00:00+00:00,172.8,175.39,172.66,173.76,34808800,41.3109750075,41.9301614963,41.2775054676,41.5404804242,139235200,0.0,1.0 +123,AAPL,2018-04-20 00:00:00+00:00,165.72,171.22,165.43,170.6,65491140,39.6183725593,40.9332473425,39.549042798,40.7850250942,261964560,0.0,1.0 +124,AAPL,2018-04-23 00:00:00+00:00,165.24,166.92,164.09,166.83,36515477,39.5036198509,39.9052543302,39.2286914872,39.8837381974,146061908,0.0,1.0 +125,AAPL,2018-04-24 00:00:00+00:00,162.94,166.33,161.22,165.67,33692017,38.9537631234,39.7642041261,38.5425659185,39.6064191522,134768068,0.0,1.0 +126,AAPL,2018-04-25 00:00:00+00:00,163.65,165.42,162.41,162.62,28382084,39.1235015045,39.5466521166,38.8270570079,38.8772613178,113528336,0.0,1.0 +127,AAPL,2018-04-26 00:00:00+00:00,164.22,165.73,163.37,164.12,27963014,39.2597703457,39.6207632407,39.0565624246,39.2358635314,111852056,0.0,1.0 +128,AAPL,2018-04-27 00:00:00+00:00,162.32,164.33,160.63,164.0,35655839,38.8055408751,39.2860678413,38.4015157144,39.2071753543,142623356,0.0,1.0 +129,AAPL,2018-04-30 00:00:00+00:00,165.26,167.26,161.84,162.13,42427424,39.5084012138,39.9865374986,38.6907881668,38.7601179281,169709696,0.0,1.0 +130,AAPL,2018-05-01 00:00:00+00:00,169.1,169.2,165.27,166.41,53569376,40.4264228806,40.4503296949,39.5107918952,39.7833295775,214277504,0.0,1.0 +131,AAPL,2018-05-02 00:00:00+00:00,176.57,177.75,173.8,175.23,66539371,42.2122619044,42.4943623124,41.5500431499,41.8919105936,266157484,0.0,1.0 +132,AAPL,2018-05-03 00:00:00+00:00,176.89,177.5,174.44,175.88,34068180,42.2887637099,42.4345952768,41.7030467611,42.0473048861,136272720,0.0,1.0 +133,AAPL,2018-05-04 00:00:00+00:00,183.83,184.25,178.17,178.25,56201317,43.9478966182,44.048305238,42.5947709322,42.6138963836,224805268,0.0,1.0 +134,AAPL,2018-05-07 00:00:00+00:00,185.16,187.67,184.75,185.18,42451423,44.2658572476,44.8659182851,44.1678393092,44.2706386105,169805692,0.0,1.0 +135,AAPL,2018-05-08 00:00:00+00:00,186.05,186.22,183.67,184.99,28402777,44.4786278944,44.5192694786,43.9096457154,44.2252156634,113611108,0.0,1.0 +136,AAPL,2018-05-09 00:00:00+00:00,187.36,187.4,185.22,186.55,23211241,44.7918071609,44.8013698866,44.2802013362,44.5981619656,92844964,0.0,1.0 +137,AAPL,2018-05-10 00:00:00+00:00,190.04,190.37,187.65,187.74,27989289,45.4325097826,45.5114022696,44.8611369222,44.882653055,111957156,0.0,1.0 +138,AAPL,2018-05-11 00:00:00+00:00,188.59,190.06,187.45,189.49,26212221,45.26038072,45.6131712161,44.9867880904,45.4763749013,104848884,0.73,1.0 +139,AAPL,2018-05-14 00:00:00+00:00,188.15,189.53,187.86,189.01,20778772,45.1547835647,45.4859746427,45.0851854397,45.3611780046,83115088,0.0,1.0 +140,AAPL,2018-05-15 00:00:00+00:00,186.44,187.07,185.1,186.78,23695159,44.7443946203,44.8955905472,44.4228032837,44.8259924221,94780636,0.0,1.0 +141,AAPL,2018-05-16 00:00:00+00:00,188.18,188.46,186.0,186.07,19183064,45.1619833708,45.2291815605,44.638797465,44.6555970124,76732256,0.0,1.0 +142,AAPL,2018-05-17 00:00:00+00:00,186.99,188.91,186.36,188.0,17294029,44.8763910644,45.3371786512,44.7251951375,45.1187845345,69176116,0.0,1.0 +143,AAPL,2018-05-18 00:00:00+00:00,186.31,187.81,186.13,187.19,18297728,44.7131954608,45.0731857629,44.6699966245,44.9243897714,73190912,0.0,1.0 +144,AAPL,2018-05-21 00:00:00+00:00,187.63,189.27,186.91,188.0,18400787,45.0299869267,45.4235763237,44.8571915816,45.1187845345,73603148,0.0,1.0 +145,AAPL,2018-05-22 00:00:00+00:00,187.16,188.88,186.78,188.38,15240704,44.9171899653,45.3299788451,44.8259924221,45.2099820777,60962816,0.0,1.0 +146,AAPL,2018-05-23 00:00:00+00:00,188.36,188.5,185.76,186.35,20058415,45.205182207,45.2387813019,44.5811990167,44.7227952022,80233660,0.0,1.0 +147,AAPL,2018-05-24 00:00:00+00:00,188.15,188.84,186.21,188.77,23233975,45.1547835647,45.3203791037,44.6891961073,45.3035795563,92935900,0.0,1.0 +148,AAPL,2018-05-25 00:00:00+00:00,188.58,189.65,187.65,188.23,17460963,45.2579807847,45.5147738669,45.0347867974,45.1739830475,69843852,0.0,1.0 +149,AAPL,2018-05-29 00:00:00+00:00,187.9,188.75,186.87,187.6,22514075,45.094785181,45.2987796856,44.8475918402,45.0227871206,90056300,0.0,1.0 +150,AAPL,2018-05-30 00:00:00+00:00,187.5,188.0,186.78,187.72,18690547,44.9987877671,45.1187845345,44.8259924221,45.0515863448,74762188,0.0,1.0 +151,AAPL,2018-05-31 00:00:00+00:00,186.87,188.23,186.14,187.22,27482793,44.8475918402,45.1739830475,44.6723965599,44.9315895774,109931172,0.0,1.0 +152,AAPL,2018-06-01 00:00:00+00:00,190.24,190.26,187.75,187.99,23442510,45.6563700524,45.6611699231,45.0587861508,45.1163845992,93770040,0.0,1.0 +153,AAPL,2018-06-04 00:00:00+00:00,191.83,193.42,191.35,191.64,26266174,46.0379597726,46.4195494929,45.922762876,45.992361001,105064696,0.0,1.0 +154,AAPL,2018-06-05 00:00:00+00:00,193.31,193.94,192.36,193.07,21565963,46.3931502041,46.544346131,46.1651563461,46.3355517557,86263852,0.0,1.0 +155,AAPL,2018-06-06 00:00:00+00:00,193.98,194.08,191.92,193.63,20933619,46.5539458724,46.5779452259,46.0595591908,46.4699481352,83734476,0.0,1.0 +156,AAPL,2018-06-07 00:00:00+00:00,193.46,194.2,192.34,194.14,21347180,46.4291492343,46.60674445,46.1603564754,46.5923448379,85388720,0.0,1.0 +157,AAPL,2018-06-08 00:00:00+00:00,191.7,192.0,189.77,191.17,26656799,46.0067606131,46.0787586736,45.543573091,45.8795640397,106627196,0.0,1.0 +158,AAPL,2018-06-11 00:00:00+00:00,191.23,191.97,190.21,191.35,18308460,45.8939636518,46.0715588675,45.6491702463,45.922762876,73233840,0.0,1.0 +159,AAPL,2018-06-12 00:00:00+00:00,192.28,192.61,191.15,191.39,16911141,46.1459568633,46.2251547298,45.874764169,45.9323626174,67644564,0.0,1.0 +160,AAPL,2018-06-13 00:00:00+00:00,190.7,192.88,190.44,192.42,21638393,45.7667670784,46.2899529841,45.7043687593,46.1795559582,86553572,0.0,1.0 +161,AAPL,2018-06-14 00:00:00+00:00,190.8,191.57,190.22,191.55,21610074,45.7907664318,45.9755614536,45.6515701817,45.9707615829,86440296,0.0,1.0 +162,AAPL,2018-06-15 00:00:00+00:00,188.84,190.16,188.26,190.03,61719160,45.3203791037,45.6371705696,45.1811828536,45.6059714101,246876640,0.0,1.0 +163,AAPL,2018-06-18 00:00:00+00:00,188.74,189.22,187.2,187.88,18484865,45.2963797502,45.4115766469,44.9267897067,45.0899853104,73939460,0.0,1.0 +164,AAPL,2018-06-19 00:00:00+00:00,185.69,186.33,183.45,185.14,33578455,44.5643994692,44.7179953315,44.0268139514,44.4324030251,134313820,0.0,1.0 +165,AAPL,2018-06-20 00:00:00+00:00,186.5,187.2,185.73,186.35,20628701,44.7587942324,44.9267897067,44.5739992106,44.7227952022,82514804,0.0,1.0 +166,AAPL,2018-06-21 00:00:00+00:00,185.46,188.35,184.94,187.25,25711898,44.5092009562,45.2027822717,44.3844043182,44.9387893835,102847592,0.0,1.0 +167,AAPL,2018-06-22 00:00:00+00:00,184.92,186.15,184.7,186.12,27200447,44.3796044475,44.6747964952,44.3268058698,44.6675966892,108801788,0.0,1.0 +168,AAPL,2018-06-25 00:00:00+00:00,182.17,184.92,180.73,183.4,31663096,43.7196222269,44.3796044475,43.3740315368,44.0148142746,126652384,0.0,1.0 +169,AAPL,2018-06-26 00:00:00+00:00,184.43,186.53,182.54,182.99,24569201,44.2620076154,44.7659940384,43.8084198347,43.9164169254,98276804,0.0,1.0 +170,AAPL,2018-06-27 00:00:00+00:00,184.16,187.28,184.03,185.23,25285328,44.1972093611,44.9459891895,44.1660102015,44.4540024432,101141312,0.0,1.0 +171,AAPL,2018-06-28 00:00:00+00:00,185.5,186.21,183.8,184.1,17365235,44.5188006976,44.6891961073,44.1108116885,44.182809749,69460940,0.0,1.0 +172,AAPL,2018-06-29 00:00:00+00:00,185.11,187.19,182.91,186.29,22737666,44.4252032191,44.9243897714,43.8972174426,44.7083955901,90950664,0.0,1.0 +173,AAPL,2018-07-02 00:00:00+00:00,187.18,187.3,183.42,183.82,17731343,44.921989836,44.9507890602,44.0196141453,44.1156115592,70925372,0.0,1.0 +174,AAPL,2018-07-03 00:00:00+00:00,183.92,187.95,183.54,187.79,13954806,44.1396109127,45.1067848578,44.0484133695,45.0683858922,55819224,0.0,1.0 +175,AAPL,2018-07-05 00:00:00+00:00,185.4,186.41,184.28,185.26,16604248,44.4948013442,44.7371948143,44.2260085852,44.4612022493,66416992,0.0,1.0 +176,AAPL,2018-07-06 00:00:00+00:00,187.97,188.43,185.2,185.42,17485245,45.1115847285,45.2219817545,44.4468026372,44.4996012148,69940980,0.0,1.0 +177,AAPL,2018-07-09 00:00:00+00:00,190.58,190.68,189.3,189.5,19756634,45.7379678542,45.7619672077,45.4307761297,45.4787748367,79026536,0.0,1.0 +178,AAPL,2018-07-10 00:00:00+00:00,190.35,191.28,190.18,190.71,15939149,45.6827693412,45.9059633285,45.6419704403,45.7691670137,63756596,0.0,1.0 +179,AAPL,2018-07-11 00:00:00+00:00,187.88,189.78,187.61,188.5,18831470,45.0899853104,45.5459730264,45.025187056,45.2387813019,75325880,0.0,1.0 +180,AAPL,2018-07-12 00:00:00+00:00,191.03,191.41,189.31,189.53,18041131,45.8459649448,45.937162488,45.4331760651,45.4859746427,72164524,0.0,1.0 +181,AAPL,2018-07-13 00:00:00+00:00,191.33,191.84,190.9,191.08,12519792,45.9179630053,46.040359708,45.8147657853,45.8579646216,50079168,0.0,1.0 +182,AAPL,2018-07-16 00:00:00+00:00,190.91,192.65,190.42,191.52,15043110,45.8171657207,46.2347544711,45.6995688886,45.9635617769,60172440,0.0,1.0 +183,AAPL,2018-07-17 00:00:00+00:00,191.45,191.87,189.2,189.75,15534523,45.9467622294,46.047559514,45.4067767762,45.5387732203,62138092,0.0,1.0 +184,AAPL,2018-07-18 00:00:00+00:00,190.4,191.8,189.93,191.78,16393381,45.6947690179,46.0307599666,45.5819720566,46.0259600959,65573524,0.0,1.0 +185,AAPL,2018-07-19 00:00:00+00:00,191.88,192.55,189.69,189.69,20286752,46.0499594494,46.2107551177,45.5243736083,45.5243736083,81147008,0.0,1.0 +186,AAPL,2018-07-20 00:00:00+00:00,191.44,192.43,190.17,191.78,20706042,45.9443622941,46.1819558935,45.6395705049,46.0259600959,82824168,0.0,1.0 +187,AAPL,2018-07-23 00:00:00+00:00,191.61,191.96,189.56,190.68,15989365,45.985161195,46.0691589322,45.4931744487,45.7619672077,63957460,0.0,1.0 +188,AAPL,2018-07-24 00:00:00+00:00,193.0,193.66,192.05,192.45,18697898,46.3187522083,46.4771479413,46.0907583503,46.1867557642,74791592,0.0,1.0 +189,AAPL,2018-07-25 00:00:00+00:00,194.82,194.85,192.43,193.06,16826483,46.7555404416,46.7627402476,46.1819558935,46.3331518204,67305932,0.0,1.0 +190,AAPL,2018-07-26 00:00:00+00:00,194.21,195.96,193.61,194.61,19075964,46.6091443854,47.0291330712,46.4651482645,46.7051417993,76303856,0.0,1.0 +191,AAPL,2018-07-27 00:00:00+00:00,190.98,195.19,190.1,194.99,24023972,45.8339652681,46.8443380494,45.6227709575,46.7963393425,96095888,0.0,1.0 +192,AAPL,2018-07-30 00:00:00+00:00,189.91,192.2,189.07,191.9,21029535,45.5771721859,46.1267573805,45.3755776167,46.0547593201,84118140,0.0,1.0 +193,AAPL,2018-07-31 00:00:00+00:00,190.29,192.14,189.34,190.3,39373038,45.6683697291,46.1123577684,45.4403758711,45.6707696645,157492152,0.0,1.0 +194,AAPL,2018-08-01 00:00:00+00:00,201.5,201.76,197.31,199.13,67935716,48.3586972538,48.4210955728,47.3531243431,47.7899125764,271742864,0.0,1.0 +195,AAPL,2018-08-02 00:00:00+00:00,207.39,208.38,200.35,200.58,62404012,49.7722591735,50.0098527729,48.0827046888,48.1379032018,249616048,0.0,1.0 +196,AAPL,2018-08-03 00:00:00+00:00,207.99,208.74,205.48,207.03,33447396,49.9162552943,50.0962504454,49.3138715221,49.685861501,133789584,0.0,1.0 +197,AAPL,2018-08-06 00:00:00+00:00,209.07,209.25,207.07,208.0,25425387,50.1754483119,50.2186471481,49.6954612424,49.9186552297,101701548,0.0,1.0 +198,AAPL,2018-08-07 00:00:00+00:00,207.11,209.5,206.76,209.32,25587387,49.7050609838,50.2786455318,49.6210632466,50.2354466956,102349548,0.0,1.0 +199,AAPL,2018-08-08 00:00:00+00:00,207.25,207.81,204.52,206.05,22525487,49.7386600786,49.8730564581,49.0834777287,49.4506678369,90101948,0.0,1.0 +200,AAPL,2018-08-09 00:00:00+00:00,208.88,209.78,207.2,207.28,23492626,50.1298495403,50.3458437216,49.7266604019,49.7458598847,93970504,0.0,1.0 +201,AAPL,2018-08-10 00:00:00+00:00,207.53,209.1,206.67,207.36,24611202,49.9810535487,50.3591687806,49.7739331032,49.9401111351,98444808,0.73,1.0 +202,AAPL,2018-08-13 00:00:00+00:00,208.87,210.95,207.7,207.7,25890880,50.3037761033,50.8047185761,50.0219959624,50.0219959624,103563520,0.0,1.0 +203,AAPL,2018-08-14 00:00:00+00:00,209.75,210.56,208.26,210.16,20748010,50.5157133034,50.7107918625,50.1568650897,50.6144567715,82992040,0.0,1.0 +204,AAPL,2018-08-15 00:00:00+00:00,210.24,210.74,208.33,209.22,28807564,50.6337237897,50.7541426534,50.1737237306,50.3880693079,115230256,0.0,1.0 +205,AAPL,2018-08-16 00:00:00+00:00,213.32,213.81,211.47,211.75,28500367,51.3755039898,51.4935144762,50.9299541943,50.997388758,114001468,0.0,1.0 +206,AAPL,2018-08-17 00:00:00+00:00,217.58,217.95,213.16,213.44,35426997,52.4014727082,52.4905826673,51.3369699535,51.4044045171,141707988,0.0,1.0 +207,AAPL,2018-08-20 00:00:00+00:00,215.46,219.18,215.11,218.1,30287695,51.8908967263,52.7868130719,51.8066035217,52.5267083264,121150780,0.0,1.0 +208,AAPL,2018-08-21 00:00:00+00:00,215.04,217.19,214.03,216.8,26159755,51.7897448808,52.3075459945,51.5464987762,52.2136192809,104639020,0.0,1.0 +209,AAPL,2018-08-22 00:00:00+00:00,215.05,216.36,213.84,214.1,19018131,51.7921532581,52.1076506809,51.5007396081,51.5633574172,76072524,0.0,1.0 +210,AAPL,2018-08-23 00:00:00+00:00,215.49,217.05,214.6,214.65,18883224,51.8981218581,52.2738287127,51.6837762808,51.6958181672,75532896,0.0,1.0 +211,AAPL,2018-08-24 00:00:00+00:00,216.16,216.9,215.11,216.6,18476356,52.0594831354,52.2377030536,51.8066035217,52.1654517354,73905424,0.0,1.0 +212,AAPL,2018-08-27 00:00:00+00:00,217.94,218.74,216.33,217.15,20525117,52.48817429,52.6808444719,52.1004255491,52.2979124854,82100468,0.0,1.0 +213,AAPL,2018-08-28 00:00:00+00:00,219.7,220.54,218.92,219.01,22776766,52.9120486901,53.114352381,52.7241952628,52.7458706582,91107064,0.0,1.0 +214,AAPL,2018-08-29 00:00:00+00:00,222.98,223.49,219.41,220.15,27254804,53.7019964357,53.8248236766,52.8422057492,53.0204256674,109019216,0.0,1.0 +215,AAPL,2018-08-30 00:00:00+00:00,225.03,228.26,222.4,223.25,48793824,54.1957137767,54.9736196359,53.5623105538,53.767022622,195175296,0.0,1.0 +216,AAPL,2018-08-31 00:00:00+00:00,227.63,228.87,226.0,226.51,43340134,54.8218918677,55.1205306495,54.4293263721,54.5521536131,173360536,0.0,1.0 +217,AAPL,2018-09-04 00:00:00+00:00,228.36,229.18,226.63,228.41,27390132,54.9977034086,55.195190345,54.5810541404,55.009745295,109560528,0.0,1.0 +218,AAPL,2018-09-05 00:00:00+00:00,226.87,229.67,225.1,228.99,33332960,54.6388551949,55.3132008314,54.2125724176,55.1494311768,133331840,0.0,1.0 +219,AAPL,2018-09-06 00:00:00+00:00,223.1,227.35,221.3,226.23,34289976,53.7308969629,54.754457304,53.2973890538,54.4847190494,137159904,0.0,1.0 +220,AAPL,2018-09-07 00:00:00+00:00,221.3,225.37,220.71,221.85,37619810,53.2973890538,54.2775986039,53.1552947947,53.4298498038,150479240,0.0,1.0 +221,AAPL,2018-09-10 00:00:00+00:00,218.33,221.85,216.47,220.95,39516453,52.5821010037,53.4298498038,52.1341428309,53.2130958492,158065812,0.0,1.0 +222,AAPL,2018-09-11 00:00:00+00:00,223.85,224.3,216.56,218.01,35749049,53.9115252584,54.0199022357,52.1558182263,52.5050329309,142996196,0.0,1.0 +223,AAPL,2018-09-12 00:00:00+00:00,221.07,225.0,219.84,224.94,49278740,53.2419963765,54.1884886448,52.9457659719,54.1740383812,197114960,0.0,1.0 +224,AAPL,2018-09-13 00:00:00+00:00,226.41,228.35,222.57,223.52,41706377,54.5280698403,54.9952950313,53.6032529675,53.8320488084,166825508,0.0,1.0 +225,AAPL,2018-09-14 00:00:00+00:00,223.84,226.84,222.52,225.75,31999289,53.9091168812,54.6316300631,53.5912110811,54.3691169403,127997156,0.0,1.0 +226,AAPL,2018-09-17 00:00:00+00:00,217.88,222.95,217.27,222.15,37195133,52.4737240264,53.6947713038,52.3268130127,53.502101122,148780532,0.0,1.0 +227,AAPL,2018-09-18 00:00:00+00:00,218.24,221.85,217.12,217.79,31571712,52.5604256082,53.4298498038,52.2906873536,52.4520486309,126286848,0.0,1.0 +228,AAPL,2018-09-19 00:00:00+00:00,218.37,219.62,215.3,218.5,27123833,52.5917345128,52.8927816719,51.8523626899,52.6230434173,108495332,0.0,1.0 +229,AAPL,2018-09-20 00:00:00+00:00,220.03,222.28,219.15,220.24,26608794,52.9915251401,53.5334100266,52.7795879401,53.0421010628,106435176,0.0,1.0 +230,AAPL,2018-09-21 00:00:00+00:00,217.66,221.36,217.29,220.78,96246748,52.4207397264,53.3118393174,52.3316297673,53.1721534356,384986992,0.0,1.0 +231,AAPL,2018-09-24 00:00:00+00:00,220.79,221.26,216.63,216.82,27693358,53.1745618129,53.2877555447,52.1726768672,52.2184360354,110773432,0.0,1.0 +232,AAPL,2018-09-25 00:00:00+00:00,222.19,222.82,219.7,219.75,24554379,53.5117346311,53.6634623993,52.9120486901,52.9240905765,98217516,0.0,1.0 +233,AAPL,2018-09-26 00:00:00+00:00,220.42,223.75,219.76,221.0,23984706,53.0854518538,53.8874414857,52.9264989537,53.2251377356,95938824,0.0,1.0 +234,AAPL,2018-09-27 00:00:00+00:00,224.95,226.44,223.54,223.82,30181227,54.1764467585,54.5352949722,53.836865563,53.9043001266,120724908,0.0,1.0 +235,AAPL,2018-09-28 00:00:00+00:00,225.74,225.84,224.02,224.79,22929364,54.366708563,54.3907923358,53.9524676721,54.1379127221,91717456,0.0,1.0 +236,AAPL,2018-10-01 00:00:00+00:00,227.26,229.42,226.35,227.95,23600802,54.7327819086,55.2529913995,54.5136195767,54.8989599404,94403208,0.0,1.0 +237,AAPL,2018-10-02 00:00:00+00:00,229.28,230.0,226.63,227.25,24788170,55.2192741177,55.3926772814,54.5810541404,54.7303735313,99152680,0.0,1.0 +238,AAPL,2018-10-03 00:00:00+00:00,232.07,233.47,229.78,230.05,28654799,55.8912113769,56.2283841952,55.3396929814,55.4047191678,114619196,0.0,1.0 +239,AAPL,2018-10-04 00:00:00+00:00,227.99,232.35,226.73,230.78,32042000,54.9085934495,55.9586459406,54.6051379131,55.5805307087,128168000,0.0,1.0 +240,AAPL,2018-10-05 00:00:00+00:00,224.29,228.41,220.58,227.96,33580463,54.0174938584,55.009745295,53.1239858901,54.9013683177,134321852,0.0,1.0 +241,AAPL,2018-10-08 00:00:00+00:00,223.77,224.8,220.2,222.21,29663923,53.8922582402,54.1403210994,53.0324675537,53.5165513856,118655692,0.0,1.0 +242,AAPL,2018-10-09 00:00:00+00:00,226.87,227.27,222.25,223.64,26891029,54.6388551949,54.7351902858,53.5261848947,53.8609493357,107564116,0.0,1.0 +243,AAPL,2018-10-10 00:00:00+00:00,216.36,226.35,216.05,225.46,41990554,52.1076506809,54.5136195767,52.0329909854,54.2992739994,167962216,0.0,1.0 +244,AAPL,2018-10-11 00:00:00+00:00,214.45,219.5,212.32,214.52,53124392,51.6476506217,52.8638811446,51.1346662625,51.6645092626,212497568,0.0,1.0 +245,AAPL,2018-10-12 00:00:00+00:00,222.11,222.88,216.84,220.42,40337851,53.4924676129,53.6779126629,52.22325279,53.0854518538,161351404,0.0,1.0 +246,AAPL,2018-10-15 00:00:00+00:00,217.36,221.83,217.27,221.16,30791007,52.3484884082,53.4250330493,52.3268130127,53.263671772,123164028,0.0,1.0 +247,AAPL,2018-10-16 00:00:00+00:00,222.15,222.99,216.76,218.93,29183963,53.502101122,53.7044048129,52.2039857718,52.7266036401,116735852,0.0,1.0 +248,AAPL,2018-10-17 00:00:00+00:00,221.19,222.64,219.34,222.3,22885397,53.2708969038,53.6201116084,52.8253471083,53.5382267811,91541588,0.0,1.0 +249,AAPL,2018-10-18 00:00:00+00:00,216.02,219.74,213.0,217.86,32581315,52.0257658536,52.9216821992,51.2984359171,52.4689072718,130325260,0.0,1.0 +250,AAPL,2018-10-19 00:00:00+00:00,219.31,221.26,217.43,218.06,33078726,52.8181219764,53.2877555447,52.3653470491,52.5170748173,132314904,0.0,1.0 +251,AAPL,2018-10-22 00:00:00+00:00,220.65,223.36,218.94,219.79,28792082,53.140844531,53.793514772,52.7290120173,52.9337240855,115168328,0.0,1.0 +252,AAPL,2018-10-23 00:00:00+00:00,222.73,223.25,214.7,215.83,38767846,53.6417870038,53.767022622,51.7078600535,51.9800066854,155071384,0.0,1.0 +253,AAPL,2018-10-24 00:00:00+00:00,215.09,224.23,214.54,222.6,40925163,51.8017867672,54.0030435948,51.6693260172,53.6104780993,163700652,0.0,1.0 +254,AAPL,2018-10-25 00:00:00+00:00,219.8,221.38,216.75,217.71,29855768,52.9361324628,53.316656072,52.2015773945,52.4327816127,119423072,0.0,1.0 +255,AAPL,2018-10-26 00:00:00+00:00,216.3,220.19,212.67,215.9,47258375,52.0932004172,53.0300591765,51.2189594671,51.9968653263,189033500,0.0,1.0 +256,AAPL,2018-10-29 00:00:00+00:00,212.24,219.69,206.09,219.19,45935520,51.1153992444,52.9096403128,49.6342472214,52.7892214492,183742080,0.0,1.0 +257,AAPL,2018-10-30 00:00:00+00:00,213.3,215.18,209.27,211.15,36659990,51.3706872353,51.8234621626,50.4001111942,50.8528861216,146639960,0.0,1.0 +258,AAPL,2018-10-31 00:00:00+00:00,218.86,220.45,216.62,216.88,38358933,52.7097449991,53.0926769856,52.17026849,52.2328862991,153435732,0.0,1.0 +259,AAPL,2018-11-01 00:00:00+00:00,222.22,222.36,216.81,219.05,58323180,53.5189597629,53.5526770447,52.2160276582,52.7555041673,233292720,0.0,1.0 +260,AAPL,2018-11-02 00:00:00+00:00,207.48,213.65,205.43,209.55,91328654,49.9690116624,51.4549804399,49.4752943214,50.4675457579,365314616,0.0,1.0 +261,AAPL,2018-11-05 00:00:00+00:00,201.59,204.39,198.17,204.3,66163669,48.5504774485,49.224823085,47.7268124211,49.2031476895,264654676,0.0,1.0 +262,AAPL,2018-11-06 00:00:00+00:00,203.77,204.72,201.69,201.92,31882881,49.075503694,49.304299535,48.5745612212,48.6299538985,127531524,0.0,1.0 +263,AAPL,2018-11-07 00:00:00+00:00,209.95,210.06,204.13,205.97,33424434,50.5638808488,50.5903729988,49.1622052759,49.6053466941,133697736,0.0,1.0 +264,AAPL,2018-11-08 00:00:00+00:00,208.49,210.12,206.75,209.98,25362636,50.3880693079,50.7820093193,49.9675443878,50.7481739809,101450544,0.73,1.0 +265,AAPL,2018-11-09 00:00:00+00:00,204.47,206.01,202.25,205.55,34365750,49.4165117338,49.7887004562,48.8799799392,49.6775272015,137463000,0.0,1.0 +266,AAPL,2018-11-12 00:00:00+00:00,194.17,199.85,193.79,199.0,51135518,46.9271975515,48.2999455666,46.8353587758,48.0945167263,204542072,0.0,1.0 +267,AAPL,2018-11-13 00:00:00+00:00,192.23,197.18,191.45,191.63,46882936,46.4583364337,47.6546573271,46.2698252626,46.3133278405,187531744,0.0,1.0 +268,AAPL,2018-11-14 00:00:00+00:00,186.8,194.48,185.93,193.9,60800957,45.1460086657,47.0021186579,44.9357462056,46.8619436846,243203828,0.0,1.0 +269,AAPL,2018-11-15 00:00:00+00:00,191.41,191.97,186.9,188.39,46478801,46.260158023,46.3954993766,45.1701767646,45.5302814375,185915204,0.0,1.0 +270,AAPL,2018-11-16 00:00:00+00:00,193.53,194.97,189.46,190.5,36928253,46.7725217188,47.1205423424,45.7888800953,46.0402283234,147713012,0.0,1.0 +271,AAPL,2018-11-19 00:00:00+00:00,185.86,190.7,184.99,190.0,41920872,44.9188285364,46.0885645211,44.7085660764,45.9193878291,167683488,0.0,1.0 +272,AAPL,2018-11-20 00:00:00+00:00,176.98,181.47,175.51,178.37,67825247,42.7727013579,43.8578489966,42.4174303047,43.108637932,271300988,0.0,1.0 +273,AAPL,2018-11-21 00:00:00+00:00,176.78,180.27,176.55,179.73,31124210,42.7243651602,43.5678318103,42.6687785328,43.4373240765,124496840,0.0,1.0 +274,AAPL,2018-11-23 00:00:00+00:00,172.29,176.595,172.1,174.94,23623972,41.6392175215,42.6796541773,41.5932981337,42.2796721412,94495888,0.0,1.0 +275,AAPL,2018-11-26 00:00:00+00:00,174.62,174.95,170.26,174.24,44998520,42.2023342249,42.2820889511,41.1486051147,42.1104954492,179994080,0.0,1.0 +276,AAPL,2018-11-27 00:00:00+00:00,174.24,174.77,170.88,171.51,41387377,42.1104954492,42.2385863731,41.2984473276,41.4507063504,165549508,0.0,1.0 +277,AAPL,2018-11-28 00:00:00+00:00,180.94,181.29,174.93,176.73,46062539,43.7297580727,43.8143464187,42.2772553313,42.7122811108,184250156,0.0,1.0 +278,AAPL,2018-11-29 00:00:00+00:00,179.55,182.8,177.7,182.66,41769992,43.3938214985,44.1792847114,42.9467116697,44.145449373,167079968,0.0,1.0 +279,AAPL,2018-11-30 00:00:00+00:00,178.58,180.33,177.03,180.29,39531549,43.1593909396,43.5823326696,42.7847854073,43.5726654301,158126196,0.0,1.0 +280,AAPL,2018-12-03 00:00:00+00:00,184.82,184.94,181.21,184.46,40798002,44.6674803083,44.6964820269,43.7950119396,44.5804751524,163192008,0.0,1.0 +281,AAPL,2018-12-04 00:00:00+00:00,176.69,182.39,176.27,180.95,41344282,42.7026138712,44.0801955061,42.601107856,43.7321748825,165377128,0.0,1.0 +282,AAPL,2018-12-06 00:00:00+00:00,174.72,174.78,170.42,171.76,43098410,42.2265023237,42.241003183,41.1872740728,41.5111265975,172393640,0.0,1.0 +283,AAPL,2018-12-07 00:00:00+00:00,168.49,174.49,168.3,173.49,42281631,40.7208297649,42.1709156963,40.6749103771,41.9292347078,169126524,0.0,1.0 +284,AAPL,2018-12-10 00:00:00+00:00,169.6,170.09,163.33,165.0,62025994,40.9890956622,41.1075193466,39.4737558639,39.8773631148,248103976,0.0,1.0 +285,AAPL,2018-12-11 00:00:00+00:00,168.63,171.79,167.0,171.66,47281665,40.7546651033,41.5183770272,40.3607250919,41.4869584987,189126660,0.0,1.0 +286,AAPL,2018-12-12 00:00:00+00:00,169.1,171.92,169.02,170.4,35627674,40.8682551679,41.5497955557,40.8489206888,41.1824404531,142510696,0.0,1.0 +287,AAPL,2018-12-13 00:00:00+00:00,170.95,172.57,169.55,170.49,31897827,41.3153649968,41.7068881983,40.9770116128,41.204191742,127591308,0.0,1.0 +288,AAPL,2018-12-14 00:00:00+00:00,165.48,169.08,165.28,169.0,40703710,39.9933699893,40.8634215482,39.9450337916,40.8440870691,162814840,0.0,1.0 +289,AAPL,2018-12-17 00:00:00+00:00,163.94,168.35,162.73,165.45,44287922,39.6211812669,40.6869944265,39.3287472707,39.9861195596,177151688,0.0,1.0 +290,AAPL,2018-12-18 00:00:00+00:00,166.07,167.53,164.39,165.38,33841518,40.1359617726,40.4888160159,39.7299377117,39.9692018904,135366072,0.0,1.0 +291,AAPL,2018-12-19 00:00:00+00:00,160.89,167.45,159.09,166.0,49047297,38.8840542517,40.4694815368,38.4490284723,40.1190441034,196189188,0.0,1.0 +292,AAPL,2018-12-20 00:00:00+00:00,156.83,162.11,155.3,160.4,64772960,37.9028294381,39.1789050578,37.5330575256,38.7656305673,259091840,0.0,1.0 +293,AAPL,2018-12-21 00:00:00+00:00,150.73,158.16,149.63,156.86,95744384,36.4285754078,38.2242651529,36.1627263204,37.9100798678,382977536,0.0,1.0 +294,AAPL,2018-12-24 00:00:00+00:00,146.83,151.55,146.59,148.15,37169232,35.4860195524,36.6267538185,35.4280161151,35.8050384573,148676928,0.0,1.0 +295,AAPL,2018-12-26 00:00:00+00:00,157.17,157.23,146.72,148.3,58582544,37.9850009742,37.9995018336,35.4594346436,35.8412906056,234330176,0.0,1.0 +296,AAPL,2018-12-27 00:00:00+00:00,156.15,156.77,150.07,155.84,53117065,37.7384863659,37.8883285788,36.2690659554,37.6635652594,212468260,0.0,1.0 +297,AAPL,2018-12-28 00:00:00+00:00,156.23,158.52,154.55,157.5,42291424,37.757820845,38.3112703088,37.3517967842,38.0647557005,169165696,0.0,1.0 +298,AAPL,2018-12-31 00:00:00+00:00,157.74,159.36,156.48,158.53,35003466,38.1227591377,38.5142823392,37.8182410921,38.3136871187,140013864,0.0,1.0 +299,AAPL,2019-01-02 00:00:00+00:00,157.92,158.85,154.23,154.89,37039737,38.1662617157,38.391025035,37.2744588678,37.4339683203,148158948,0.0,1.0 +300,AAPL,2019-01-03 00:00:00+00:00,142.19,145.72,142.0,143.98,91312195,34.3646197654,35.2177536551,34.3187003776,34.7972287349,365248780,0.0,1.0 +301,AAPL,2019-01-04 00:00:00+00:00,148.26,148.55,143.8,144.53,58607070,35.831623366,35.9017108527,34.753726157,34.9301532787,234428280,0.0,1.0 +302,AAPL,2019-01-07 00:00:00+00:00,147.93,148.83,145.9,148.7,54777764,35.7518686398,35.9693815295,35.261256233,35.937963001,219111056,0.0,1.0 +303,AAPL,2019-01-08 00:00:00+00:00,150.75,151.82,148.52,149.56,41025314,36.4334090276,36.6920076854,35.8944604231,36.1458086512,164101256,0.0,1.0 +304,AAPL,2019-01-09 00:00:00+00:00,153.31,154.53,149.63,151.29,45099081,37.0521123583,37.3469631644,36.1627263204,36.5639167614,180396324,0.0,1.0 +305,AAPL,2019-01-10 00:00:00+00:00,153.8,153.97,150.86,152.5,35780670,37.1705360427,37.2116218108,36.4599939363,36.8563507576,143122680,0.0,1.0 +306,AAPL,2019-01-11 00:00:00+00:00,152.29,153.7,151.51,152.88,27023241,36.80559775,37.1463679439,36.6170865789,36.9481895333,108092964,0.0,1.0 +307,AAPL,2019-01-14 00:00:00+00:00,150.0,151.27,149.22,150.85,32439186,36.2521482862,36.5590831416,36.0636371151,36.4575771264,129756744,0.0,1.0 +308,AAPL,2019-01-15 00:00:00+00:00,153.07,153.39,150.05,150.27,28710324,36.9941089211,37.0714468374,36.2642323356,36.3174021531,114841296,0.0,1.0 +309,AAPL,2019-01-16 00:00:00+00:00,154.94,155.88,153.0,153.08,30569706,37.4460523697,37.673232499,36.9771912519,36.996525731,122278824,0.0,1.0 +310,AAPL,2019-01-17 00:00:00+00:00,155.86,157.66,153.26,154.2,29821160,37.6683988792,38.1034246586,37.0400283089,37.2672084382,119284640,0.0,1.0 +311,AAPL,2019-01-18 00:00:00+00:00,156.82,157.88,155.98,157.5,33751023,37.9004126282,38.1565944761,37.6974005978,38.0647557005,135004092,0.0,1.0 +312,AAPL,2019-01-22 00:00:00+00:00,153.3,156.73,152.62,156.41,30393970,37.0496955485,37.8786613393,36.8853524762,37.8013234229,121575880,0.0,1.0 +313,AAPL,2019-01-23 00:00:00+00:00,153.92,155.14,151.7,154.15,23130570,37.1995377614,37.4943885674,36.6630059667,37.2551243887,92522280,0.0,1.0 +314,AAPL,2019-01-24 00:00:00+00:00,152.7,154.48,151.74,154.11,25441549,36.9046869553,37.334879115,36.6726732063,37.2454571492,101766196,0.0,1.0 +315,AAPL,2019-01-25 00:00:00+00:00,157.76,158.13,154.32,155.48,33547893,38.1275927575,38.2170147233,37.2962101568,37.5765601035,134191572,0.0,1.0 +316,AAPL,2019-01-28 00:00:00+00:00,156.3,156.33,153.66,155.79,26192058,37.7747385142,37.7819889438,37.1367007043,37.65148121,104768232,0.0,1.0 +317,AAPL,2019-01-29 00:00:00+00:00,154.68,158.13,154.11,156.25,41587239,37.3832153127,38.2170147233,37.2454571492,37.7626544647,166348956,0.0,1.0 +318,AAPL,2019-01-30 00:00:00+00:00,165.25,166.15,160.23,163.25,61109780,39.9377833619,40.1552962516,38.7245447993,39.4544213848,244439120,0.0,1.0 +319,AAPL,2019-01-31 00:00:00+00:00,166.44,169.0,164.56,166.11,40739649,40.2253837383,40.8440870691,39.7710234798,40.1456290121,162958596,0.0,1.0 +320,AAPL,2019-02-01 00:00:00+00:00,166.52,168.98,165.93,166.96,32668138,40.2447182174,40.8392534493,40.1021264342,40.3510578524,130672552,0.0,1.0 +321,AAPL,2019-02-04 00:00:00+00:00,171.25,171.66,167.28,167.41,31495582,41.3878692934,41.4869584987,40.4283957687,40.4598142972,125982328,0.0,1.0 +322,AAPL,2019-02-05 00:00:00+00:00,174.18,175.08,172.35,172.86,36101628,42.0959945899,42.3135074796,41.6537183808,41.776975685,144406512,0.0,1.0 +323,AAPL,2019-02-06 00:00:00+00:00,174.24,175.57,172.85,174.65,28239591,42.1104954492,42.431931164,41.7745588751,42.2095846545,112958364,0.0,1.0 +324,AAPL,2019-02-07 00:00:00+00:00,170.94,173.94,170.34,172.4,31741690,41.3129481869,42.0379911526,41.1679395938,41.6658024302,126966760,0.0,1.0 +325,AAPL,2019-02-08 00:00:00+00:00,170.41,170.66,168.42,168.99,23819966,41.3612843846,41.4219634592,40.8782789511,41.0166272411,95279864,0.73,1.0 +326,AAPL,2019-02-11 00:00:00+00:00,169.43,171.21,169.25,171.05,20993425,41.1234224123,41.5554574232,41.0797334787,41.5166228155,83973700,0.0,1.0 +327,AAPL,2019-02-12 00:00:00+00:00,170.89,171.0,169.7,170.1,22283523,41.4777882078,41.5044870006,41.1889558129,41.2860423322,89134092,0.0,1.0 +328,AAPL,2019-02-13 00:00:00+00:00,170.18,172.48,169.92,171.39,22490233,41.305459636,41.863707122,41.2423533985,41.5991463569,89960932,0.0,1.0 +329,AAPL,2019-02-14 00:00:00+00:00,170.8,171.26,169.38,169.71,21835747,41.4559437409,41.5675932381,41.1112865974,41.1913829758,87342988,0.0,1.0 +330,AAPL,2019-02-15 00:00:00+00:00,170.42,171.7,169.75,171.25,24626814,41.3637115476,41.6743884094,41.2010916278,41.5651660752,98507256,0.0,1.0 +331,AAPL,2019-02-19 00:00:00+00:00,170.93,171.44,169.49,169.71,18972826,41.4874968597,41.6112821718,41.1379853902,41.1913829758,75891304,0.0,1.0 +332,AAPL,2019-02-20 00:00:00+00:00,172.03,173.32,170.99,171.19,26114362,41.7544847878,42.0675888125,41.5020598376,41.5506030973,104457448,0.0,1.0 +333,AAPL,2019-02-21 00:00:00+00:00,171.06,172.37,170.3,171.8,17249670,41.5190499785,41.8370083292,41.3345855918,41.6986600392,68998680,0.0,1.0 +334,AAPL,2019-02-22 00:00:00+00:00,172.97,173.0,171.38,171.58,18913154,41.9826381081,41.9899195971,41.5967191939,41.6452624536,75652616,0.0,1.0 +335,AAPL,2019-02-25 00:00:00+00:00,174.23,175.87,173.95,174.16,21873358,42.2884606439,42.6865153731,42.2205000804,42.2714705031,87493432,0.0,1.0 +336,AAPL,2019-02-26 00:00:00+00:00,174.33,175.3,173.17,173.71,17070211,42.3127322738,42.5481670831,42.0311813678,42.1622481688,68280844,0.0,1.0 +337,AAPL,2019-02-27 00:00:00+00:00,174.87,175.0,172.73,173.21,27835389,42.4437990748,42.4753521936,41.9243861966,42.0408900197,111341556,0.0,1.0 +338,AAPL,2019-02-28 00:00:00+00:00,173.15,174.91,172.92,174.32,28215416,42.0263270418,42.4535077267,41.9705022932,42.3103051108,112861664,0.0,1.0 +339,AAPL,2019-03-01 00:00:00+00:00,174.97,175.15,172.89,174.28,25886167,42.4680707046,42.5117596383,41.9632208043,42.3005964588,103544668,0.0,1.0 +340,AAPL,2019-03-04 00:00:00+00:00,175.85,177.75,173.97,175.69,27436203,42.6816610471,43.1428220138,42.2253544064,42.6428264394,109744812,0.0,1.0 +341,AAPL,2019-03-05 00:00:00+00:00,175.53,176.0,174.54,175.94,19737419,42.6039918317,42.7180684918,42.3637026964,42.7035055139,78949676,0.0,1.0 +342,AAPL,2019-03-06 00:00:00+00:00,174.52,175.49,173.94,174.67,20810384,42.3588483704,42.5942831797,42.2180729174,42.3952558152,83241536,0.0,1.0 +343,AAPL,2019-03-07 00:00:00+00:00,172.5,174.44,172.02,173.87,24796374,41.868561448,42.3394310666,41.7520576248,42.2010827766,99185496,0.0,1.0 +344,AAPL,2019-03-08 00:00:00+00:00,172.91,173.07,169.5,170.32,23999358,41.9680751302,42.006909738,41.1404125532,41.3394399178,95997432,0.0,1.0 +345,AAPL,2019-03-11 00:00:00+00:00,178.9,179.12,175.35,175.49,32011034,43.4219457568,43.4753433424,42.560302898,42.5942831797,128044136,0.0,1.0 +346,AAPL,2019-03-12 00:00:00+00:00,180.91,182.67,179.37,180.0,32467584,43.9098055162,44.3369862012,43.5360224169,43.6889336848,129870336,0.0,1.0 +347,AAPL,2019-03-13 00:00:00+00:00,181.71,183.3,180.92,182.25,31032524,44.1039785548,44.4898974691,43.9122326792,44.2350453559,124130096,0.0,1.0 +348,AAPL,2019-03-14 00:00:00+00:00,183.73,184.1,182.56,183.9,23579508,44.5942654773,44.6840705077,44.3102874083,44.635527248,94318032,0.0,1.0 +349,AAPL,2019-03-15 00:00:00+00:00,186.12,187.33,183.74,184.85,39042912,45.1743574301,45.468044151,44.5966926403,44.8661077313,156171648,0.0,1.0 +350,AAPL,2019-03-18 00:00:00+00:00,188.02,188.39,185.79,185.8,26219832,45.6355183968,45.7253234271,45.0942610517,45.0966882147,104879328,0.0,1.0 +351,AAPL,2019-03-19 00:00:00+00:00,186.53,188.99,185.92,188.35,31646369,45.2738711124,45.8709532061,45.1258141705,45.7156147752,126585476,0.0,1.0 +352,AAPL,2019-03-20 00:00:00+00:00,188.16,189.49,184.73,186.23,31035231,45.6694986785,45.9923113552,44.8369817755,45.2010562229,124140924,0.0,1.0 +353,AAPL,2019-03-21 00:00:00+00:00,195.09,196.33,189.81,190.02,51034237,47.3515226254,47.6524908352,46.0699805707,46.1209509933,204136948,0.0,1.0 +354,AAPL,2019-03-22 00:00:00+00:00,191.05,197.69,190.78,195.34,42407666,46.3709487805,47.9825850009,46.30541538,47.4122017,169630664,0.0,1.0 +355,AAPL,2019-03-25 00:00:00+00:00,188.74,191.98,186.6,191.51,43845293,45.8102741315,46.5966749379,45.2908612533,46.4825982777,175381172,0.0,1.0 +356,AAPL,2019-03-26 00:00:00+00:00,186.79,192.88,184.58,191.66,49800538,45.3369773499,46.8151196063,44.8005743308,46.5190057224,199202152,0.0,1.0 +357,AAPL,2019-03-27 00:00:00+00:00,188.47,189.76,186.55,188.75,29848427,45.744740731,46.0578447557,45.2787254384,45.8127012945,119393708,0.0,1.0 +358,AAPL,2019-03-28 00:00:00+00:00,188.72,189.56,187.53,188.95,20780363,45.8054198056,46.0093014961,45.5165874106,45.8612445542,83121452,0.0,1.0 +359,AAPL,2019-03-29 00:00:00+00:00,189.95,190.08,188.54,189.83,23563961,46.1039608524,46.1355139712,45.7617308719,46.0748348966,94255844,0.0,1.0 +360,AAPL,2019-04-01 00:00:00+00:00,191.24,191.68,188.38,191.64,27861964,46.4170648772,46.5238600484,45.7228962642,46.5141513965,111447856,0.0,1.0 +361,AAPL,2019-04-02 00:00:00+00:00,194.02,194.46,191.05,191.09,22765732,47.0918161863,47.1986113575,46.3709487805,46.3806574324,91062928,0.0,1.0 +362,AAPL,2019-04-03 00:00:00+00:00,195.35,196.5,193.15,193.25,23271830,47.414628863,47.6937526059,46.8806530068,46.9049246366,93087320,0.0,1.0 +363,AAPL,2019-04-04 00:00:00+00:00,195.69,196.37,193.14,194.79,19114275,47.4971524044,47.6621994872,46.8782258438,47.2787077359,76457100,0.0,1.0 +364,AAPL,2019-04-05 00:00:00+00:00,197.0,197.1,195.93,196.45,18526644,47.8151107551,47.8393823849,47.5554043159,47.681616791,74106576,0.0,1.0 +365,AAPL,2019-04-08 00:00:00+00:00,200.1,200.23,196.34,196.42,25881697,48.5675312796,48.5990843984,47.6549179982,47.6743353021,103526788,0.0,1.0 +366,AAPL,2019-04-09 00:00:00+00:00,199.5,202.85,199.23,200.32,35768237,48.4219015007,49.2350010998,48.3563681002,48.6209288653,143072948,0.0,1.0 +367,AAPL,2019-04-10 00:00:00+00:00,200.62,200.74,198.18,198.68,21695288,48.6937437547,48.7228697105,48.101515987,48.2228741361,86781152,0.0,1.0 +368,AAPL,2019-04-11 00:00:00+00:00,198.95,201.0,198.44,200.85,20900808,48.2884075367,48.7859759481,48.1646222245,48.7495685033,83603232,0.0,1.0 +369,AAPL,2019-04-12 00:00:00+00:00,198.87,200.14,196.21,199.2,27760668,48.2689902328,48.5772399316,47.6233648794,48.3490866112,111042672,0.0,1.0 +370,AAPL,2019-04-15 00:00:00+00:00,199.23,199.85,198.01,198.58,17536646,48.3563681002,48.5068522051,48.0602542163,48.1986025063,70146584,0.0,1.0 +371,AAPL,2019-04-16 00:00:00+00:00,199.25,201.37,198.56,199.46,25696385,48.3612224261,48.8757809784,48.1937481803,48.4121928488,102785540,0.0,1.0 +372,AAPL,2019-04-17 00:00:00+00:00,203.13,203.38,198.61,199.54,28906780,49.3029616633,49.3636407379,48.2058839952,48.4316101526,115627120,0.0,1.0 +373,AAPL,2019-04-18 00:00:00+00:00,203.86,204.15,202.52,203.12,24195766,49.4801445611,49.5505322875,49.1549047214,49.3005345003,96783064,0.0,1.0 +374,AAPL,2019-04-22 00:00:00+00:00,204.53,204.94,202.34,202.83,19439545,49.6427644809,49.7422781632,49.1112157877,49.2301467739,77758180,0.0,1.0 +375,AAPL,2019-04-23 00:00:00+00:00,207.48,207.75,203.9,204.43,23322991,50.3587775607,50.4243109612,49.489853213,49.6184928511,93291964,0.0,1.0 +376,AAPL,2019-04-24 00:00:00+00:00,207.16,208.48,207.05,207.36,17540609,50.2811083453,50.601493859,50.2544095525,50.3296516049,70162436,0.0,1.0 +377,AAPL,2019-04-25 00:00:00+00:00,205.28,207.76,205.12,206.83,18543206,49.8248017046,50.4267381242,49.7859670968,50.2010119669,74172824,0.0,1.0 +378,AAPL,2019-04-26 00:00:00+00:00,204.3,205.0,202.12,204.9,18649102,49.5869397323,49.7568411411,49.0578182021,49.7325695112,74596408,0.0,1.0 +379,AAPL,2019-04-29 00:00:00+00:00,204.61,205.97,203.86,204.4,22204716,49.6621817847,49.9922759504,49.4801445611,49.6112113621,88818864,0.0,1.0 +380,AAPL,2019-04-30 00:00:00+00:00,200.67,203.4,199.11,203.06,46534923,48.7058795696,49.3684950639,48.3272421444,49.2859715225,186139692,0.0,1.0 +381,AAPL,2019-05-01 00:00:00+00:00,210.52,215.31,209.23,209.88,64827328,51.0966351074,52.259246176,50.7835310827,50.9412966765,259309312,0.0,1.0 +382,AAPL,2019-05-02 00:00:00+00:00,209.15,212.65,208.13,209.84,31996324,50.7641137788,51.6136208227,50.5165431546,50.9315880246,127985296,0.0,1.0 +383,AAPL,2019-05-03 00:00:00+00:00,211.75,211.84,210.23,210.89,20892378,51.3951761542,51.4170206211,51.0262473809,51.1864401377,83569512,0.0,1.0 +384,AAPL,2019-05-06 00:00:00+00:00,208.48,208.84,203.5,204.29,32443113,50.601493859,50.6888717263,49.3927666937,49.5845125693,129772452,0.0,1.0 +385,AAPL,2019-05-07 00:00:00+00:00,202.86,207.42,200.83,205.88,38763698,49.2374282628,50.3442145828,48.7447141774,49.9704314835,155054792,0.0,1.0 +386,AAPL,2019-05-08 00:00:00+00:00,202.9,205.34,201.75,201.9,26339504,49.2471369147,49.8393646825,48.9680131717,49.0044206165,105358016,0.0,1.0 +387,AAPL,2019-05-09 00:00:00+00:00,200.72,201.68,196.66,200.4,34908607,48.7180153846,48.9510230309,47.7325872137,48.6403461691,139634428,0.0,1.0 +388,AAPL,2019-05-10 00:00:00+00:00,197.18,198.85,192.77,197.42,41208712,48.0456912384,48.4526103193,46.9711324679,48.1041706273,164834848,0.77,1.0 +389,AAPL,2019-05-13 00:00:00+00:00,185.72,189.48,182.85,187.71,57430623,45.2533004199,46.1694775122,44.5539843947,45.7381920193,229722492,0.0,1.0 +390,AAPL,2019-05-14 00:00:00+00:00,188.66,189.7,185.41,186.41,36529677,45.9696729335,46.2230836186,45.1777645426,45.4214286629,146118708,0.0,1.0 +391,AAPL,2019-05-15 00:00:00+00:00,190.92,191.75,186.02,186.27,26544718,46.5203538454,46.7225950652,45.326399656,45.3873156861,106178872,0.0,1.0 +392,AAPL,2019-05-16 00:00:00+00:00,190.08,192.47,188.84,189.91,33031364,46.3156759844,46.8980332318,46.0135324752,46.2742530839,132125456,0.0,1.0 +393,AAPL,2019-05-17 00:00:00+00:00,189.0,190.9,186.76,186.93,32879090,46.0525187344,46.515480563,45.506711105,45.5481340054,131516360,0.0,1.0 +394,AAPL,2019-05-20 00:00:00+00:00,183.09,184.35,180.28,183.52,38612290,44.6124637835,44.9194805751,43.9277676055,44.7172393553,154449160,0.0,1.0 +395,AAPL,2019-05-21 00:00:00+00:00,186.6,188.0,184.7,185.22,28364848,45.4677248458,45.8088546142,45.0047630172,45.1314683598,113459392,0.0,1.0 +396,AAPL,2019-05-22 00:00:00+00:00,182.78,185.71,182.55,184.66,29748556,44.5369279063,45.2508637787,44.4808851586,44.9950164524,118994224,0.0,1.0 +397,AAPL,2019-05-23 00:00:00+00:00,179.66,180.54,177.81,179.8,36529736,43.776695851,43.9911202768,43.3259172284,43.8108088278,146118944,0.0,1.0 +398,AAPL,2019-05-24 00:00:00+00:00,178.97,182.14,178.62,180.2,23714686,43.608567608,44.3809828693,43.5232851659,43.9082744759,94858744,0.0,1.0 +399,AAPL,2019-05-28 00:00:00+00:00,178.23,180.59,177.91,178.92,27948160,43.4282561589,44.0033034828,43.3502836405,43.5963844019,111792640,0.0,1.0 +400,AAPL,2019-05-29 00:00:00+00:00,177.38,179.35,176.0,176.42,28481165,43.2211416567,43.7011599737,42.8848851707,42.9872241012,113924660,0.0,1.0 +401,AAPL,2019-05-30 00:00:00+00:00,178.3,179.23,176.67,177.95,21218412,43.4453126474,43.6719202792,43.0481401313,43.3600302053,84873648,0.0,1.0 +402,AAPL,2019-05-31 00:00:00+00:00,175.07,177.99,174.99,176.23,27043584,42.6582775388,43.3697767701,42.6387844092,42.9409279184,108174336,0.0,1.0 +403,AAPL,2019-06-03 00:00:00+00:00,173.3,177.92,170.27,175.6,40396069,42.2269920459,43.3527202817,41.4886897614,42.7874195226,161584276,0.0,1.0 +404,AAPL,2019-06-04 00:00:00+00:00,179.64,179.83,174.52,175.44,30967961,43.7718225685,43.8181187514,42.5242622727,42.7484332633,123871844,0.0,1.0 +405,AAPL,2019-06-05 00:00:00+00:00,182.54,184.99,181.14,184.28,29773427,44.4784485174,45.0754256121,44.137318749,44.9024240867,119093708,0.0,1.0 +406,AAPL,2019-06-06 00:00:00+00:00,185.22,185.47,182.15,183.08,22526311,45.1314683598,45.1923843898,44.3834195105,44.6100271423,90105244,0.0,1.0 +407,AAPL,2019-06-07 00:00:00+00:00,190.15,191.92,185.77,186.51,30684393,46.3327324728,46.7640179657,45.2654836259,45.4457950749,122737572,0.0,1.0 +408,AAPL,2019-06-10 00:00:00+00:00,192.58,195.37,191.62,191.81,26220851,46.9248362851,47.6046591807,46.6909187296,46.7372149125,104883404,0.0,1.0 +409,AAPL,2019-06-11 00:00:00+00:00,194.81,196.0,193.6,194.86,26932882,47.4682072733,47.7581675765,47.1733736878,47.4803904793,107731528,0.0,1.0 +410,AAPL,2019-06-12 00:00:00+00:00,194.19,195.97,193.39,193.95,18253189,47.3171355187,47.7508576529,47.1222042225,47.2586561299,73012756,0.0,1.0 +411,AAPL,2019-06-13 00:00:00+00:00,194.15,196.79,193.6,194.7,21674625,47.3073889539,47.9506622315,47.1733736878,47.4414042201,86698500,0.0,1.0 +412,AAPL,2019-06-14 00:00:00+00:00,192.74,193.59,190.3,191.55,18761474,46.9638225443,47.1709370466,46.3692820908,46.6738622412,75045896,0.0,1.0 +413,AAPL,2019-06-17 00:00:00+00:00,193.89,194.96,192.17,192.9,14669144,47.2440362827,47.5047568914,46.8249339958,47.0028088036,58676576,0.0,1.0 +414,AAPL,2019-06-18 00:00:00+00:00,198.45,200.29,195.21,196.05,26551004,48.3551446712,48.8034866525,47.5656729214,47.7703507825,106204016,0.0,1.0 +415,AAPL,2019-06-19 00:00:00+00:00,197.87,199.88,197.31,199.68,21124235,48.2138194814,48.7035843632,48.077367574,48.6548515391,84496940,0.0,1.0 +416,AAPL,2019-06-20 00:00:00+00:00,199.46,200.61,198.03,200.37,21513988,48.6012454327,48.881459171,48.2528057406,48.8229797821,86055952,0.0,1.0 +417,AAPL,2019-06-21 00:00:00+00:00,198.78,200.85,198.15,198.8,47800589,48.4355538309,48.9399385599,48.2820454351,48.4404271133,191202356,0.0,1.0 +418,AAPL,2019-06-24 00:00:00+00:00,198.58,200.16,198.17,198.54,18220421,48.3868210068,48.7718103169,48.2869187175,48.377074442,72881684,0.0,1.0 +419,AAPL,2019-06-25 00:00:00+00:00,195.57,199.26,195.29,198.43,21070334,47.6533920047,48.5525126086,47.5851660511,48.3502713888,84281336,0.0,1.0 +420,AAPL,2019-06-26 00:00:00+00:00,199.8,200.99,197.35,197.77,26067512,48.6840912336,48.9740515367,48.0871141389,48.1894530694,104270048,0.0,1.0 +421,AAPL,2019-06-27 00:00:00+00:00,199.74,201.57,199.57,200.29,20899717,48.6694713863,49.1153767265,48.6280484859,48.8034866525,83598868,0.0,1.0 +422,AAPL,2019-06-28 00:00:00+00:00,197.92,199.5,197.05,198.68,31110642,48.2260026874,48.6109919975,48.0140149028,48.4111874188,124442568,0.0,1.0 +423,AAPL,2019-07-01 00:00:00+00:00,201.55,204.49,200.65,203.17,27316739,49.1105034441,49.8268759577,48.8912057358,49.5052393189,109266956,0.0,1.0 +424,AAPL,2019-07-02 00:00:00+00:00,202.73,203.13,201.36,201.41,16935217,49.398027106,49.4954927541,49.0642072612,49.0763904672,67740868,0.0,1.0 +425,AAPL,2019-07-03 00:00:00+00:00,204.41,204.44,202.69,203.28,11362045,49.8073828281,49.8146927517,49.3882805412,49.5320423722,45448180,0.0,1.0 +426,AAPL,2019-07-05 00:00:00+00:00,204.23,205.08,202.9,203.35,17265518,49.7635232864,49.9706377887,49.4394500064,49.5490988606,69062072,0.0,1.0 +427,AAPL,2019-07-08 00:00:00+00:00,200.02,201.4,198.41,200.81,25338628,48.73769734,49.073953826,48.3453981064,48.930191995,101354512,0.0,1.0 +428,AAPL,2019-07-09 00:00:00+00:00,201.24,201.51,198.81,199.2,20578015,49.0349675668,49.1007568792,48.4428637545,48.5378927614,82312060,0.0,1.0 +429,AAPL,2019-07-10 00:00:00+00:00,203.23,203.73,201.56,201.85,17897138,49.5198591661,49.6416912263,49.1129400853,49.1836026801,71588552,0.0,1.0 +430,AAPL,2019-07-11 00:00:00+00:00,201.75,204.39,201.71,203.31,20191842,49.1592362681,49.8025095457,49.1494897033,49.5393522958,80767368,0.0,1.0 +431,AAPL,2019-07-12 00:00:00+00:00,203.3,204.0,202.2,202.45,17595212,49.5369156546,49.7074805388,49.2688851222,49.3298011523,70380848,0.0,1.0 +432,AAPL,2019-07-15 00:00:00+00:00,205.21,205.87,204.0,204.09,16947420,50.0023141243,50.1631324437,49.7074805388,49.7294103096,67789680,0.0,1.0 +433,AAPL,2019-07-16 00:00:00+00:00,204.5,206.11,203.5,204.59,16866816,49.8293125989,50.2216118326,49.5856484786,49.8512423697,67467264,0.0,1.0 +434,AAPL,2019-07-17 00:00:00+00:00,203.35,205.09,203.27,204.05,14107450,49.5490988606,49.9730744299,49.529605731,49.7196637448,56429800,0.0,1.0 +435,AAPL,2019-07-18 00:00:00+00:00,205.66,205.88,203.7,204.0,18582161,50.1119629784,50.1655690849,49.6343813027,49.7074805388,74328644,0.0,1.0 +436,AAPL,2019-07-19 00:00:00+00:00,202.59,206.5,202.36,205.79,20929307,49.3639141292,50.3166408395,49.3078713815,50.1436393141,83717228,0.0,1.0 +437,AAPL,2019-07-22 00:00:00+00:00,207.22,207.23,203.61,203.65,22277932,50.4920790061,50.4945156473,49.6124515319,49.6221980967,89111728,0.0,1.0 +438,AAPL,2019-07-23 00:00:00+00:00,208.84,208.91,207.29,208.46,18355210,50.886814881,50.9038713694,50.5091354945,50.7942225153,73420840,0.0,1.0 +439,AAPL,2019-07-24 00:00:00+00:00,208.67,209.15,207.17,207.67,14991567,50.8453919805,50.9623507583,50.4798958001,50.6017278602,59966268,0.0,1.0 +440,AAPL,2019-07-25 00:00:00+00:00,207.02,209.24,206.73,208.89,13909535,50.443346182,50.9842805291,50.3726835872,50.898998087,55638140,0.0,1.0 +441,AAPL,2019-07-26 00:00:00+00:00,207.74,209.73,207.14,207.48,17618874,50.6187843486,51.103675948,50.4725858765,50.5554316774,70475496,0.0,1.0 +442,AAPL,2019-07-29 00:00:00+00:00,209.68,210.64,208.44,208.46,21673389,51.091492742,51.3254102975,50.7893492328,50.7942225153,86693556,0.0,1.0 +443,AAPL,2019-07-30 00:00:00+00:00,208.78,210.16,207.31,208.76,33935718,50.8721950337,51.2084515197,50.5140087769,50.8673217513,135742872,0.0,1.0 +444,AAPL,2019-07-31 00:00:00+00:00,213.04,221.37,211.3,216.42,69281361,51.9102041862,53.9399263082,51.4862286169,52.7337889127,277125444,0.0,1.0 +445,AAPL,2019-08-01 00:00:00+00:00,208.43,218.03,206.74,213.9,54017922,50.7869125916,53.1260881464,50.3751202284,52.1197553296,216071688,0.0,1.0 +446,AAPL,2019-08-02 00:00:00+00:00,204.02,206.43,201.63,205.53,40862122,49.7123538212,50.2995843511,49.1299965737,50.0802866428,163448488,0.0,1.0 +447,AAPL,2019-08-05 00:00:00+00:00,193.34,198.65,192.58,197.99,52392969,47.1100210165,48.4038774952,46.9248362851,48.2430591758,209571876,0.0,1.0 +448,AAPL,2019-08-06 00:00:00+00:00,197.0,198.07,194.04,196.31,35824787,48.0018316968,48.2625523055,47.2805859007,47.8337034538,143299148,0.0,1.0 +449,AAPL,2019-08-07 00:00:00+00:00,199.04,199.56,193.82,195.41,33364400,48.4989065021,48.6256118447,47.2269797942,47.6144057455,133457600,0.0,1.0 +450,AAPL,2019-08-08 00:00:00+00:00,203.43,203.53,199.39,200.2,27009523,49.5685919902,49.5929584022,48.5841889442,48.7815568817,108038092,0.0,1.0 +451,AAPL,2019-08-09 00:00:00+00:00,200.99,202.76,199.29,201.3,24619746,49.1616729093,49.5946106726,48.7458569784,49.2374981673,98478984,0.77,1.0 +452,AAPL,2019-08-12 00:00:00+00:00,200.48,202.05,199.15,199.62,22481889,49.0369281301,49.4209463721,48.7116133136,48.8265741886,89927556,0.0,1.0 +453,AAPL,2019-08-13 00:00:00+00:00,208.97,212.14,200.48,201.02,47539786,51.1135618084,51.8889362206,49.0369281301,49.1690108375,190159144,0.0,1.0 +454,AAPL,2019-08-14 00:00:00+00:00,202.75,206.44,202.59,203.16,36547443,49.5921646966,50.4947298642,49.5530290796,49.6924497152,146189772,0.0,1.0 +455,AAPL,2019-08-15 00:00:00+00:00,201.74,205.14,199.67,203.46,27883363,49.3451211141,50.1767529759,48.8388040689,49.7658289971,111533452,0.0,1.0 +456,AAPL,2019-08-16 00:00:00+00:00,206.5,207.16,203.84,204.28,28813624,50.5094057206,50.6708401408,49.8587760875,49.9663990344,115254496,0.0,1.0 +457,AAPL,2019-08-19 00:00:00+00:00,210.35,212.73,210.03,210.62,24431915,51.4511065052,52.0332488084,51.3728352711,51.5171478589,97727660,0.0,1.0 +458,AAPL,2019-08-20 00:00:00+00:00,210.36,213.35,210.32,210.88,26919529,51.4535524812,52.1848993244,51.443768577,51.5807432366,107678116,0.0,1.0 +459,AAPL,2019-08-21 00:00:00+00:00,212.64,213.65,211.6,212.99,21564747,52.0112350238,52.2582786063,51.7568535132,52.0968441861,86258988,0.0,1.0 +460,AAPL,2019-08-22 00:00:00+00:00,212.46,214.44,210.75,213.19,22267819,51.9672074547,52.4515107153,51.5489455477,52.1457637073,89071276,0.0,1.0 +461,AAPL,2019-08-23 00:00:00+00:00,202.64,212.05,201.0,209.43,46882843,49.5652589599,51.866922436,49.1641188854,51.2260767073,187531372,0.0,1.0 +462,AAPL,2019-08-26 00:00:00+00:00,206.49,207.19,205.06,205.86,26066130,50.5069597445,50.678178069,50.1571851673,50.3528632525,104264520,0.0,1.0 +463,AAPL,2019-08-27 00:00:00+00:00,204.16,208.55,203.53,207.86,25897344,49.9370473216,51.0108308137,49.7829508296,50.8420584653,103589376,0.0,1.0 +464,AAPL,2019-08-28 00:00:00+00:00,205.53,205.72,203.32,204.1,15957632,50.2721460424,50.3186195876,49.7315853322,49.9223714652,63830528,0.0,1.0 +465,AAPL,2019-08-29 00:00:00+00:00,209.01,209.32,206.66,208.5,21007652,51.1233457126,51.1991709706,50.5485413376,50.9986009333,84030608,0.0,1.0 +466,AAPL,2019-08-30 00:00:00+00:00,208.74,210.45,207.2,210.16,21162561,51.0573043589,51.4755662658,50.680624045,51.40463296,84650244,0.0,1.0 +467,AAPL,2019-09-03 00:00:00+00:00,205.7,206.98,204.22,206.43,20059574,50.3137276354,50.6268125716,49.951723178,50.4922838881,80238296,0.0,1.0 +468,AAPL,2019-09-04 00:00:00+00:00,209.19,209.48,207.32,208.39,19216820,51.1673732818,51.2383065876,50.7099757578,50.9716951966,76867280,0.0,1.0 +469,AAPL,2019-09-05 00:00:00+00:00,213.28,213.97,211.51,212.0,23946984,52.1677774919,52.3365498403,51.7348397286,51.8546925557,95787936,0.0,1.0 +470,AAPL,2019-09-06 00:00:00+00:00,213.26,214.42,212.51,214.05,19362294,52.1628855398,52.4466187632,51.979437335,52.3561176488,77449176,0.0,1.0 +471,AAPL,2019-09-09 00:00:00+00:00,214.17,216.44,211.07,214.84,27309401,52.3854693616,52.9407059281,51.6272167818,52.5493497579,109237604,0.0,1.0 +472,AAPL,2019-09-10 00:00:00+00:00,216.7,216.78,211.71,213.86,31777931,53.0043013058,53.0238691143,51.7837592499,52.3096441036,127111724,0.0,1.0 +473,AAPL,2019-09-11 00:00:00+00:00,223.59,223.71,217.73,218.07,44289646,54.6895788138,54.7189305266,53.2562368404,53.3394000265,177158584,0.0,1.0 +474,AAPL,2019-09-12 00:00:00+00:00,223.09,226.42,222.86,224.8,32226669,54.5672800106,55.3817900399,54.5110225612,54.9855419176,128906676,0.0,1.0 +475,AAPL,2019-09-13 00:00:00+00:00,218.75,220.79,217.02,220.0,39763296,53.5057263989,54.0047055159,53.0825725398,53.8114734069,159053184,0.0,1.0 +476,AAPL,2019-09-16 00:00:00+00:00,219.9,220.13,217.56,217.73,21158141,53.7870136462,53.8432710957,53.2146552473,53.2562368404,84632564,0.0,1.0 +477,AAPL,2019-09-17 00:00:00+00:00,220.7,220.82,219.12,219.96,18386468,53.9826917314,54.0120434441,53.5962275133,53.8016895026,73545872,0.0,1.0 +478,AAPL,2019-09-18 00:00:00+00:00,222.77,222.85,219.44,221.06,25643093,54.4890087766,54.5085765851,53.6744987473,54.0707468697,102572372,0.0,1.0 +479,AAPL,2019-09-19 00:00:00+00:00,220.96,223.76,220.37,222.01,22187876,54.046287109,54.7311604069,53.9019745213,54.3031145957,88751504,0.0,1.0 +480,AAPL,2019-09-20 00:00:00+00:00,217.73,222.56,217.47,221.38,57977094,53.2562368404,54.4376432793,53.1926414627,54.1490181037,231908376,0.0,1.0 +481,AAPL,2019-09-23 00:00:00+00:00,218.72,219.84,217.65,218.95,19419648,53.4983884707,53.7723377899,53.2366690319,53.5546459202,77678592,0.0,1.0 +482,AAPL,2019-09-24 00:00:00+00:00,217.68,222.49,217.19,221.03,31434367,53.2440069601,54.4205214468,53.1241541329,54.0634089415,125737468,0.0,1.0 +483,AAPL,2019-09-25 00:00:00+00:00,221.03,221.5,217.14,218.55,22481006,54.0634089415,54.1783698165,53.1119242526,53.4568068776,89924024,0.0,1.0 +484,AAPL,2019-09-26 00:00:00+00:00,219.89,220.94,218.83,220.0,19088312,53.7845676702,54.0413951569,53.5252942074,53.8114734069,76353248,0.0,1.0 +485,AAPL,2019-09-27 00:00:00+00:00,218.82,220.96,217.28,220.54,25361285,53.5228482313,54.046287109,53.1461679175,53.9435561143,101445140,0.0,1.0 +486,AAPL,2019-09-30 00:00:00+00:00,223.97,224.58,220.79,220.9,26318583,54.7825259043,54.9317304442,54.0047055159,54.0316112526,105274332,0.0,1.0 +487,AAPL,2019-10-01 00:00:00+00:00,224.59,228.22,224.2,225.07,36187163,54.9341764202,55.8220657315,54.8387833537,55.0515832713,144748652,0.0,1.0 +488,AAPL,2019-10-02 00:00:00+00:00,218.96,223.58,217.93,223.06,35767257,53.5570918962,54.6871328378,53.3051563617,54.5599420825,143069028,0.0,1.0 +489,AAPL,2019-10-03 00:00:00+00:00,220.82,220.96,215.13,218.43,30352686,54.0120434441,54.046287109,52.6202830637,53.4274551648,121410744,0.0,1.0 +490,AAPL,2019-10-04 00:00:00+00:00,227.01,227.49,223.89,225.64,34755553,55.5261026277,55.6435094788,54.7629580958,55.191003907,139022212,0.0,1.0 +491,AAPL,2019-10-07 00:00:00+00:00,227.06,229.93,225.84,226.27,30889269,55.538332508,56.2403276384,55.2399234282,55.345100399,123557076,0.0,1.0 +492,AAPL,2019-10-08 00:00:00+00:00,224.4,228.06,224.33,225.82,29282700,54.887702875,55.7829301144,54.8705810426,55.2350314761,117130800,0.0,1.0 +493,AAPL,2019-10-09 00:00:00+00:00,227.03,227.79,225.64,227.03,19029424,55.5309945798,55.7168887607,55.191003907,55.5309945798,76117696,0.0,1.0 +494,AAPL,2019-10-10 00:00:00+00:00,230.09,230.44,227.3,227.93,28962984,56.2794632554,56.3650724177,55.5970359336,55.7511324256,115851936,0.0,1.0 +495,AAPL,2019-10-11 00:00:00+00:00,236.21,237.64,232.31,232.95,41990210,57.7764006066,58.1261751837,56.8224699416,56.9790124097,167960840,0.0,1.0 +496,AAPL,2019-10-14 00:00:00+00:00,235.87,238.13,234.67,234.9,24413484,57.6932374204,58.2460280108,57.3997202927,57.4559777422,97653936,0.0,1.0 +497,AAPL,2019-10-15 00:00:00+00:00,235.32,237.65,234.88,236.39,23040483,57.5587087369,58.1286211598,57.45108579,57.8204281757,92161932,0.0,1.0 +498,AAPL,2019-10-16 00:00:00+00:00,234.37,235.24,233.2,233.37,19286694,57.3263410108,57.5391409283,57.0401618113,57.0817434044,77146776,0.0,1.0 +499,AAPL,2019-10-17 00:00:00+00:00,235.28,236.15,233.52,235.09,17272897,57.5489248326,57.7617247502,57.1184330453,57.5024512874,69091588,0.0,1.0 +500,AAPL,2019-10-18 00:00:00+00:00,236.41,237.58,234.29,234.59,24248023,57.8253201278,58.1114993273,57.3067732023,57.3801524842,96992092,0.0,1.0 +501,AAPL,2019-10-21 00:00:00+00:00,240.51,240.99,237.32,237.52,21811567,58.828170314,58.9455771651,58.0479039496,58.0968234709,87246268,0.0,1.0 +502,AAPL,2019-10-22 00:00:00+00:00,239.96,242.2,239.62,241.16,22684001,58.6936416305,59.2415402689,58.6104784444,58.9871587582,90736004,0.0,1.0 +503,AAPL,2019-10-23 00:00:00+00:00,243.18,243.24,241.22,242.1,19932545,59.4812459231,59.4959217795,59.0018346146,59.2170805082,79730180,0.0,1.0 +504,AAPL,2019-10-24 00:00:00+00:00,243.58,244.8,241.81,244.51,17916255,59.5790849657,59.8774940455,59.1461472024,59.8065607396,71665020,0.0,1.0 +505,AAPL,2019-10-25 00:00:00+00:00,246.58,246.73,242.88,243.16,18369296,60.3128777849,60.3495674258,59.4078666412,59.476353971,73477184,0.0,1.0 +506,AAPL,2019-10-28 00:00:00+00:00,249.05,249.25,246.72,247.42,23655368,60.9170338727,60.9659533939,60.3471214498,60.5183397742,94621472,0.0,1.0 +507,AAPL,2019-10-29 00:00:00+00:00,243.29,249.75,242.57,248.97,35709867,59.5081516598,61.0882521971,59.3320413832,60.8974660642,142839468,0.0,1.0 +508,AAPL,2019-10-30 00:00:00+00:00,243.26,245.3,241.21,244.76,31130522,59.5008137316,59.9997928487,58.9993886385,59.8677101412,124522088,0.0,1.0 +509,AAPL,2019-10-31 00:00:00+00:00,248.76,249.17,237.26,247.24,34790520,60.8461005668,60.9463855854,58.0332280933,60.4743122051,139162080,0.0,1.0 +510,AAPL,2019-11-01 00:00:00+00:00,255.82,255.93,249.16,249.54,37781334,62.572959668,62.5998654047,60.9439396094,61.0368866998,151125336,0.0,1.0 +511,AAPL,2019-11-04 00:00:00+00:00,257.5,257.85,255.38,257.33,25817952,62.9838836467,63.0694928089,62.4653367211,62.9423020536,103271808,0.0,1.0 +512,AAPL,2019-11-05 00:00:00+00:00,257.13,258.19,256.32,257.05,19974427,62.8933825323,63.1526559951,62.6952584712,62.8738147238,79897708,0.0,1.0 +513,AAPL,2019-11-06 00:00:00+00:00,257.24,257.49,255.37,256.77,18966124,62.920288269,62.9814376706,62.4628907451,62.805327394,75864496,0.0,1.0 +514,AAPL,2019-11-07 00:00:00+00:00,259.43,260.35,258.11,258.74,23735083,63.644297184,63.8699948805,63.3204700542,63.4750239116,94940332,0.77,1.0 +515,AAPL,2019-11-08 00:00:00+00:00,260.14,260.44,256.85,258.69,17520495,63.818476928,63.892074003,63.0113623394,63.4627577324,70081980,0.0,1.0 +516,AAPL,2019-11-11 00:00:00+00:00,262.2,262.47,258.28,258.3,20507459,64.3238435094,64.3900808768,63.3621750633,63.367081535,82029836,0.0,1.0 +517,AAPL,2019-11-12 00:00:00+00:00,261.96,262.79,260.92,261.55,21847226,64.2649658494,64.4685844234,64.0098293229,64.1643831803,87388904,0.0,1.0 +518,AAPL,2019-11-13 00:00:00+00:00,264.47,264.78,261.07,261.13,25817593,64.8807280432,64.956778354,64.0466278604,64.0613472754,103270372,0.0,1.0 +519,AAPL,2019-11-14 00:00:00+00:00,262.64,264.88,262.1,263.75,22395556,64.431785886,64.9813107123,64.2993111511,64.7040950633,89582224,0.0,1.0 +520,AAPL,2019-11-15 00:00:00+00:00,265.76,265.78,263.01,263.68,25093666,65.1971954655,65.2021019371,64.5225556117,64.6869224125,100374664,0.0,1.0 +521,AAPL,2019-11-18 00:00:00+00:00,267.1,267.43,264.23,265.8,21700897,65.5259290669,65.6068858494,64.8218503832,65.2070084088,86803588,0.0,1.0 +522,AAPL,2019-11-19 00:00:00+00:00,266.29,268.0,265.39,267.9,19069597,65.3272169646,65.7467202918,65.1064257397,65.7221879335,76278388,0.0,1.0 +523,AAPL,2019-11-20 00:00:00+00:00,263.19,266.08,260.4,265.54,26609919,64.5667138567,65.2756990121,63.8822610596,65.1432242772,106439676,0.0,1.0 +524,AAPL,2019-11-21 00:00:00+00:00,262.01,264.01,261.18,263.69,30348778,64.2772320286,64.7678791949,64.0736134545,64.6893756483,121395112,0.0,1.0 +525,AAPL,2019-11-22 00:00:00+00:00,261.78,263.18,260.84,262.59,16331263,64.2208076044,64.5642606209,63.9902034362,64.4195197068,65325052,0.0,1.0 +526,AAPL,2019-11-25 00:00:00+00:00,266.37,266.44,262.52,262.71,21029517,65.3468428512,65.364015502,64.402347056,64.4489585368,84118068,0.0,1.0 +527,AAPL,2019-11-26 00:00:00+00:00,264.29,267.16,262.5,266.94,26334882,64.8365697982,65.5406484819,64.3974405843,65.4866772936,105339528,0.0,1.0 +528,AAPL,2019-11-27 00:00:00+00:00,267.84,267.98,265.31,265.58,16386122,65.7074685185,65.7418138201,65.0867998531,65.1530372205,65544488,0.0,1.0 +529,AAPL,2019-11-29 00:00:00+00:00,267.25,268.0,265.9,266.6,11654363,65.5627276044,65.7467202918,65.2315407671,65.4032672754,46617452,0.0,1.0 +530,AAPL,2019-12-02 00:00:00+00:00,264.16,268.25,263.45,267.27,23693550,64.8046777324,65.8080511876,64.6304979883,65.5676340761,94774200,0.0,1.0 +531,AAPL,2019-12-03 00:00:00+00:00,259.45,259.53,256.29,258.31,29377268,63.6492036556,63.6688295423,62.8739811328,63.3695347708,117509072,0.0,1.0 +532,AAPL,2019-12-04 00:00:00+00:00,261.74,263.31,260.68,261.07,16810388,64.2109946611,64.5961526867,63.9509516629,64.0466278604,67241552,0.0,1.0 +533,AAPL,2019-12-05 00:00:00+00:00,265.58,265.89,262.73,263.79,18661343,65.1530372205,65.2290875313,64.4538650085,64.7139080066,74645372,0.0,1.0 +534,AAPL,2019-12-06 00:00:00+00:00,270.71,271.0,267.3,267.48,26547493,66.4115472022,66.4826910413,65.5749937836,65.6191520286,106189972,0.0,1.0 +535,AAPL,2019-12-09 00:00:00+00:00,266.92,270.8,264.91,270.0,32182645,65.481770822,66.4336263247,64.9886704198,66.2373674582,128730580,0.0,1.0 +536,AAPL,2019-12-10 00:00:00+00:00,268.48,270.07,265.86,268.6,22632383,65.8644756117,66.254540109,65.2217278238,65.8939144417,90529532,0.0,1.0 +537,AAPL,2019-12-11 00:00:00+00:00,270.77,271.1,268.5,268.81,19723391,66.4262666172,66.5072233997,65.8693820834,65.9454323942,78893564,0.0,1.0 +538,AAPL,2019-12-12 00:00:00+00:00,271.46,272.56,267.32,267.78,34437042,66.5955398896,66.8653958311,65.5799002552,65.6927491035,137748168,0.0,1.0 +539,AAPL,2019-12-13 00:00:00+00:00,275.15,275.3,270.93,271.46,33432806,67.5007839115,67.537582449,66.4655183905,66.5955398896,133731224,0.0,1.0 +540,AAPL,2019-12-16 00:00:00+00:00,279.86,280.79,276.98,277.0,32081105,68.6562579883,68.8844089207,67.9497260687,67.9546325404,128324420,0.0,1.0 +541,AAPL,2019-12-17 00:00:00+00:00,280.41,281.77,278.8,279.57,28575798,68.791185959,69.1248260322,68.3962149901,68.5851141492,114303192,0.0,1.0 +542,AAPL,2019-12-18 00:00:00+00:00,279.74,281.9,279.12,279.8,29024687,68.6268191583,69.156718098,68.4747185367,68.6415385733,116098748,0.0,1.0 +543,AAPL,2019-12-19 00:00:00+00:00,280.02,281.18,278.95,279.5,24626947,68.6955097616,68.9800851181,68.4330135276,68.5679414984,98507788,0.0,1.0 +544,AAPL,2019-12-20 00:00:00+00:00,279.44,282.65,278.56,282.23,69032743,68.5532220834,69.3407107854,68.3373373302,69.2376748804,276130972,0.0,1.0 +545,AAPL,2019-12-23 00:00:00+00:00,284.0,284.25,280.37,280.53,24677883,69.6718976227,69.7332285185,68.7813730157,68.820624789,98711532,0.0,1.0 +546,AAPL,2019-12-24 00:00:00+00:00,284.27,284.89,282.92,284.69,12119714,69.7381349901,69.8902356117,69.4069481528,69.8411708951,48478856,0.0,1.0 +547,AAPL,2019-12-26 00:00:00+00:00,289.91,289.98,284.7,284.82,23334004,71.1217599992,71.1389326501,69.8436241309,69.8730629609,93336016,0.0,1.0 +548,AAPL,2019-12-27 00:00:00+00:00,289.8,293.97,288.12,291.12,36592936,71.0947744051,72.1177737469,70.6826307854,71.4186015349,146371744,0.0,1.0 +549,AAPL,2019-12-30 00:00:00+00:00,291.52,292.69,285.22,289.46,36059614,71.5167309682,71.8037595605,69.9711923941,71.0113643868,144238456,0.0,1.0 +550,AAPL,2019-12-31 00:00:00+00:00,293.65,293.68,289.52,289.93,25247625,72.0392702003,72.0466299078,71.0260838018,71.1266664709,100990500,0.0,1.0 +551,AAPL,2020-01-02 00:00:00+00:00,300.35,300.6,295.19,296.24,33911864,73.6829382076,73.7442691034,72.4170685184,72.6746582808,135647456,0.0,1.0 +552,AAPL,2020-01-03 00:00:00+00:00,297.43,300.58,296.5,297.15,36633878,72.9665933447,73.7393626318,72.7384424124,72.8979027415,146535512,0.0,1.0 +553,AAPL,2020-01-06 00:00:00+00:00,299.8,299.96,292.75,293.79,29644644,73.5480102369,73.5872620102,71.8184789755,72.073615502,118578576,0.0,1.0 +554,AAPL,2020-01-07 00:00:00+00:00,298.39,300.9,297.48,299.84,27877655,73.2021039846,73.8178661784,72.9788595239,73.5578231802,111510620,0.0,1.0 +555,AAPL,2020-01-08 00:00:00+00:00,303.19,304.44,297.16,297.16,33090946,74.3796571839,74.6863116628,72.9003559773,72.9003559773,132363784,0.0,1.0 +556,AAPL,2020-01-09 00:00:00+00:00,309.63,310.43,306.2,307.24,42621542,75.9595410595,76.1557999261,75.1180811692,75.3732176957,170486168,0.0,1.0 +557,AAPL,2020-01-10 00:00:00+00:00,310.33,312.67,308.25,310.6,35217272,76.1312675677,76.7053247524,75.6209945147,76.1975049352,140869088,0.0,1.0 +558,AAPL,2020-01-13 00:00:00+00:00,316.96,317.07,311.15,311.64,30028742,77.7577629242,77.7847485184,76.332432906,76.4526414617,120114968,0.0,1.0 +559,AAPL,2020-01-14 00:00:00+00:00,312.68,317.57,312.17,316.7,40653457,76.7077779882,77.90741031,76.5826629608,77.6939787926,162613828,0.0,1.0 +560,AAPL,2020-01-15 00:00:00+00:00,311.34,315.5,309.55,311.85,30480882,76.3790443868,77.3995904928,75.9399151729,76.5041594142,121923528,0.0,1.0 +561,AAPL,2020-01-16 00:00:00+00:00,315.24,315.7,312.09,313.59,27207254,77.3358063612,77.4486552094,76.5630370741,76.9310224489,108829016,0.0,1.0 +562,AAPL,2020-01-17 00:00:00+00:00,318.73,318.74,315.0,316.27,34454117,78.1919856664,78.1944389023,77.2769287012,77.5884896518,137816468,0.0,1.0 +563,AAPL,2020-01-21 00:00:00+00:00,316.57,319.02,316.0,317.19,27235039,77.6620867268,78.2631295056,77.5222522844,77.8141873483,108940156,0.0,1.0 +564,AAPL,2020-01-22 00:00:00+00:00,317.7,319.99,317.31,318.58,25458115,77.9393023758,78.5010933812,77.8436261783,78.155187129,101832460,0.0,1.0 +565,AAPL,2020-01-23 00:00:00+00:00,319.23,319.56,315.65,317.92,26117993,78.314647458,78.3956042405,77.4363890303,77.9932735641,104471972,0.0,1.0 +566,AAPL,2020-01-24 00:00:00+00:00,318.31,323.33,317.52,320.25,36634380,78.0889497615,79.3204741491,77.8951441308,78.5648775129,146537520,0.0,1.0 +567,AAPL,2020-01-27 00:00:00+00:00,308.95,311.77,304.88,310.06,40485005,75.792721023,76.4845335275,74.7942540394,76.0650302003,161940020,0.0,1.0 +568,AAPL,2020-01-28 00:00:00+00:00,317.69,318.4,312.19,312.6,40558486,77.9368491399,78.111028884,76.5875694325,76.6881521016,162233944,0.0,1.0 +569,AAPL,2020-01-29 00:00:00+00:00,324.34,327.85,321.38,324.45,54149928,79.5682509681,80.429336745,78.8420931619,79.5952365622,216599712,0.0,1.0 +570,AAPL,2020-01-30 00:00:00+00:00,323.87,324.09,318.75,320.54,31685808,79.452948884,79.5069200723,78.1968921381,78.636021352,126743232,0.0,1.0 +571,AAPL,2020-01-31 00:00:00+00:00,309.51,322.68,308.29,320.93,49897096,75.9301022295,79.16101382,75.6308074581,78.7316975494,199588384,0.0,1.0 +572,AAPL,2020-02-03 00:00:00+00:00,308.66,313.49,302.22,304.3,43496401,75.7215771838,76.9064900906,74.1416933082,74.6519663612,173985604,0.0,1.0 +573,AAPL,2020-02-04 00:00:00+00:00,318.85,319.64,313.63,315.31,34154134,78.2214244964,78.4152301271,76.9408353922,77.352979012,136616536,0.0,1.0 +574,AAPL,2020-02-05 00:00:00+00:00,321.45,324.76,318.95,323.52,29706718,78.8592658127,79.671286873,78.2459568547,79.3670856299,118826872,0.0,1.0 +575,AAPL,2020-02-06 00:00:00+00:00,325.21,325.22,320.26,322.57,26356385,79.7816824854,79.7841357213,78.5673307487,79.1340282258,105425540,0.0,1.0 +576,AAPL,2020-02-07 00:00:00+00:00,320.03,323.4,318.0,322.37,29421012,78.6998054836,79.5285351167,78.2006003931,79.2752438639,117684048,0.77,1.0 +577,AAPL,2020-02-10 00:00:00+00:00,321.55,321.55,313.85,314.18,27337215,79.0735945169,79.0735945169,77.1800579666,77.261209533,109348860,0.0,1.0 +578,AAPL,2020-02-11 00:00:00+00:00,319.61,323.9,318.71,323.6,23580780,78.5965216718,79.6514920356,78.3751992178,79.5777178843,94323120,0.0,1.0 +579,AAPL,2020-02-12 00:00:00+00:00,327.2,327.22,321.47,321.47,28432573,80.4630077,80.4679259768,79.0539214099,79.0539214099,113730292,0.0,1.0 +580,AAPL,2020-02-13 00:00:00+00:00,324.87,326.22,323.35,324.19,23686892,79.8900284582,80.2220121391,79.5162394248,79.7228070485,94747568,0.0,1.0 +581,AAPL,2020-02-14 00:00:00+00:00,324.95,325.98,322.85,324.74,20028447,79.9097015652,80.162992818,79.393282506,79.8580596593,80113788,0.0,1.0 +582,AAPL,2020-02-18 00:00:00+00:00,319.0,319.75,314.61,315.36,38190545,78.4465142308,78.6309496091,77.3669524832,77.5513878615,152762180,0.0,1.0 +583,AAPL,2020-02-19 00:00:00+00:00,323.62,324.57,320.0,320.0,23495991,79.582636161,79.8162543068,78.6924280685,78.6924280685,93983964,0.0,1.0 +584,AAPL,2020-02-20 00:00:00+00:00,320.3,324.65,318.21,322.63,25141489,78.7662022198,79.8359274139,78.252242299,79.3391814617,100565956,0.0,1.0 +585,AAPL,2020-02-21 00:00:00+00:00,313.05,320.45,310.5,318.62,32426415,76.9833268964,78.8030892955,76.3562466102,78.3530669724,129705660,0.0,1.0 +586,AAPL,2020-02-24 00:00:00+00:00,298.18,304.18,289.23,297.26,55548828,73.3265881296,74.8020711559,71.125659282,73.1003473989,222195312,0.0,1.0 +587,AAPL,2020-02-25 00:00:00+00:00,288.08,302.53,286.13,300.95,57668364,70.8428583687,74.3963133236,70.3633263851,74.00776946,230673456,0.0,1.0 +588,AAPL,2020-02-26 00:00:00+00:00,292.65,297.88,286.5,286.53,49678431,71.966684607,73.2528139783,70.4543145051,70.4616919202,198713724,0.0,1.0 +589,AAPL,2020-02-27 00:00:00+00:00,273.52,286.0,272.96,281.1,80151381,67.2623528915,70.3313575862,67.1246411424,69.1263797814,320605524,0.0,1.0 +590,AAPL,2020-02-28 00:00:00+00:00,273.36,278.41,256.37,257.26,106721230,67.2230066775,68.464871558,63.0449305747,63.2637938903,426884920,0.0,1.0 +591,AAPL,2020-03-02 00:00:00+00:00,298.81,301.44,277.72,282.28,85349339,73.4815138473,74.1282672405,68.2951910099,69.4165581099,341397356,0.0,1.0 +592,AAPL,2020-03-03 00:00:00+00:00,289.32,304.0,285.8,303.67,79868852,71.1477915274,74.7578066651,70.2821748187,74.6766550986,319475408,0.0,1.0 +593,AAPL,2020-03-04 00:00:00+00:00,302.74,303.4,293.13,296.44,54794568,74.4479552295,74.6102583624,72.0847232491,72.8986980519,219178272,0.0,1.0 +594,AAPL,2020-03-05 00:00:00+00:00,292.92,299.55,291.41,295.52,46893219,72.0330813432,73.6634900872,71.6617514482,72.6724573213,187572876,0.0,1.0 +595,AAPL,2020-03-06 00:00:00+00:00,289.03,290.82,281.23,282.0,56544246,71.0764765145,71.516662284,69.1583485803,69.3477022354,226176984,0.0,1.0 +596,AAPL,2020-03-09 00:00:00+00:00,266.17,278.09,263.0,263.75,71686208,65.4548861843,68.3861791299,64.6753393188,64.8597746971,286744832,0.0,1.0 +597,AAPL,2020-03-10 00:00:00+00:00,285.34,286.44,269.37,277.14,71322520,70.1690544533,70.4395596748,66.241810465,68.1525609841,285290080,0.0,1.0 +598,AAPL,2020-03-11 00:00:00+00:00,275.43,281.22,271.86,277.39,64094970,67.7320483216,69.1558894419,66.8541359209,68.2140394435,256379880,0.0,1.0 +599,AAPL,2020-03-12 00:00:00+00:00,248.23,270.0,248.0,255.94,104618517,61.0431919358,66.3967361828,60.9866317531,62.9391876245,418474068,0.0,1.0 +600,AAPL,2020-03-13 00:00:00+00:00,277.97,279.92,252.95,264.89,92683032,68.3566694694,68.8362014529,62.2039052498,65.1401164721,370732128,0.0,1.0 +601,AAPL,2020-03-16 00:00:00+00:00,242.21,259.08,240.0,241.95,80605865,59.5627906327,63.711357075,59.0193210514,59.4988530349,322423460,0.0,1.0 +602,AAPL,2020-03-17 00:00:00+00:00,252.86,257.61,238.4,247.51,81013965,62.1817730044,63.3498637335,58.625858911,60.8661339726,324055860,0.0,1.0 +603,AAPL,2020-03-18 00:00:00+00:00,246.67,250.0,237.12,239.77,75058406,60.6595663489,61.4784594285,58.3110891988,58.9627608687,300233624,0.0,1.0 +604,AAPL,2020-03-19 00:00:00+00:00,244.78,252.84,242.61,247.39,67964255,60.1947891956,62.1768547276,59.6611561678,60.8366243121,271857020,0.0,1.0 +605,AAPL,2020-03-20 00:00:00+00:00,229.24,251.83,228.0,247.18,100423346,56.3732881576,61.9284817515,56.0683549988,60.7849824062,401693384,0.0,1.0 +606,AAPL,2020-03-23 00:00:00+00:00,224.37,228.5,212.61,228.08,84188208,55.1756877679,56.1913119177,52.2837410364,56.0880281058,336752832,0.0,1.0 +607,AAPL,2020-03-24 00:00:00+00:00,246.88,247.69,234.3,236.36,71882773,60.7112082548,60.9103984634,57.6176121764,58.1241946821,287531092,0.0,1.0 +608,AAPL,2020-03-25 00:00:00+00:00,245.52,258.25,244.3,250.75,75900510,60.3767654356,63.5072485897,60.0767505535,61.6628948068,303602040,0.0,1.0 +609,AAPL,2020-03-26 00:00:00+00:00,258.44,258.68,246.36,246.52,63140169,63.5539722188,63.6129915399,60.5833330592,60.6226792733,252560676,0.0,1.0 +610,AAPL,2020-03-27 00:00:00+00:00,247.74,255.87,247.05,252.75,51054153,60.9226941553,62.9219736559,60.7530136073,62.1547224822,204216612,0.0,1.0 +611,AAPL,2020-03-30 00:00:00+00:00,254.81,255.52,249.4,250.74,41994110,62.6613049879,62.8359038127,61.3309111259,61.6604356684,167976440,0.0,1.0 +612,AAPL,2020-03-31 00:00:00+00:00,254.29,262.49,252.0,255.6,49250501,62.5334297923,64.5499232616,61.9702871039,62.8555769197,197002004,0.0,1.0 +613,AAPL,2020-04-01 00:00:00+00:00,240.91,248.72,239.13,246.5,44054638,59.2431026437,61.1636897162,58.8053760126,60.6177609965,176218552,0.0,1.0 +614,AAPL,2020-04-02 00:00:00+00:00,244.93,245.15,236.9,240.34,41483493,60.2316762713,60.2857773156,58.2569881545,59.1029317562,165933972,0.0,1.0 +615,AAPL,2020-04-03 00:00:00+00:00,241.41,245.7,238.97,242.8,32470017,59.3660595625,60.4210299263,58.7660297985,59.707879797,129880068,0.0,1.0 +616,AAPL,2020-04-06 00:00:00+00:00,262.47,263.11,249.38,250.9,50455071,64.5450049848,64.7023898409,61.3259928491,61.6997818825,201820284,0.0,1.0 +617,AAPL,2020-04-07 00:00:00+00:00,259.43,271.7,259.0,270.8,50721831,63.7974269182,66.8147897069,63.6916839679,66.593467253,202887324,0.0,1.0 +618,AAPL,2020-04-08 00:00:00+00:00,266.07,267.37,261.23,262.74,42223821,65.4302948006,65.7499827896,64.240071826,64.611401721,168895284,0.0,1.0 +619,AAPL,2020-04-09 00:00:00+00:00,267.99,270.07,264.7,268.7,40529123,65.902449369,66.4139501514,65.0933928429,66.0770481938,162116492,0.0,1.0 +620,AAPL,2020-04-13 00:00:00+00:00,273.25,273.7,265.83,268.31,32755731,67.1959561554,67.3066173823,65.3712754795,65.9811417971,131022924,0.0,1.0 +621,AAPL,2020-04-14 00:00:00+00:00,287.05,288.25,278.05,280.0,48748672,70.5895671158,70.8846637211,68.3763425764,68.8558745599,194994688,0.0,1.0 +622,AAPL,2020-04-15 00:00:00+00:00,284.43,286.33,280.63,282.4,32788641,69.945272861,70.4125091527,69.0108002777,69.4460677704,131154564,0.0,1.0 +623,AAPL,2020-04-16 00:00:00+00:00,286.69,288.2,282.35,287.38,39281290,70.5010381342,70.8723680292,69.4337720786,70.6707186823,157125160,0.0,1.0 +624,AAPL,2020-04-17 00:00:00+00:00,282.8,286.95,276.86,284.69,53812478,69.5444333055,70.564975732,68.0837051095,70.0092104588,215249912,0.0,1.0 +625,AAPL,2020-04-20 00:00:00+00:00,276.93,281.68,276.85,277.95,32503750,68.1009190781,69.2690098073,68.0812459711,68.3517511926,130015000,0.0,1.0 +626,AAPL,2020-04-21 00:00:00+00:00,268.37,277.25,265.43,276.28,45247893,65.9958966273,68.1796115062,65.2729099444,67.9410750836,180991572,0.0,1.0 +627,AAPL,2020-04-22 00:00:00+00:00,276.1,277.9,272.2,273.61,29264342,67.8968105928,68.3394555007,66.9377466258,67.2844851369,117057368,0.0,1.0 +628,AAPL,2020-04-23 00:00:00+00:00,275.03,281.75,274.87,275.87,31203582,67.6336827865,69.2862237759,67.5943365725,67.8402504102,124814328,0.0,1.0 +629,AAPL,2020-04-24 00:00:00+00:00,282.97,283.01,277.0,277.2,31627183,69.5862386579,69.5960752114,68.1181330468,68.1673158143,126508732,0.0,1.0 +630,AAPL,2020-04-27 00:00:00+00:00,283.17,284.54,279.95,281.8,29271893,69.6354214255,69.9723233832,68.843578868,69.2985194678,117087572,0.0,1.0 +631,AAPL,2020-04-28 00:00:00+00:00,278.58,285.83,278.2,285.08,28001187,68.5066769104,70.2895522338,68.413229652,70.1051168555,112004748,0.0,1.0 +632,AAPL,2020-04-29 00:00:00+00:00,287.73,289.67,283.89,284.73,34320204,70.7567885255,71.2338613706,69.8124793886,70.0190470123,137280816,0.0,1.0 +633,AAPL,2020-04-30 00:00:00+00:00,293.8,294.53,288.35,289.96,45765968,72.2494855204,72.4290026219,70.9092551048,71.3051763836,183063872,0.0,1.0 +634,AAPL,2020-05-01 00:00:00+00:00,289.07,299.0,285.85,286.25,60154175,71.086313068,73.5282374765,70.2944705106,70.3928360456,240616700,0.0,1.0 +635,AAPL,2020-05-04 00:00:00+00:00,293.16,293.69,286.32,289.17,33391986,72.0921006642,72.2224349982,70.4100500143,71.1109044518,133567944,0.0,1.0 +636,AAPL,2020-05-05 00:00:00+00:00,297.56,301.0,294.46,295.06,36937795,73.1741215502,74.0200651519,72.4117886533,72.5593369559,147751180,0.0,1.0 +637,AAPL,2020-05-06 00:00:00+00:00,300.63,303.24,298.87,300.46,35583438,73.929077032,74.5709121484,73.4962686776,73.8872716796,142333752,0.0,1.0 +638,AAPL,2020-05-07 00:00:00+00:00,303.74,305.17,301.97,303.22,28803764,74.6938690673,75.0455258552,74.2586015745,74.5659938717,115215056,0.0,1.0 +639,AAPL,2020-05-08 00:00:00+00:00,310.13,310.35,304.29,305.64,33511985,76.4669078372,76.5211519275,75.0269738038,75.359835267,134047940,0.82,1.0 +640,AAPL,2020-05-11 00:00:00+00:00,315.01,317.05,307.24,308.1,36486561,77.6701403856,78.1731310411,75.7543377419,75.9663828222,145946244,0.0,1.0 +641,AAPL,2020-05-12 00:00:00+00:00,311.41,319.69,310.91,317.83,40575263,76.7825098171,78.8240601247,76.6592277937,78.3654509976,162301052,0.0,1.0 +642,AAPL,2020-05-13 00:00:00+00:00,307.65,315.95,303.21,312.15,50155639,75.8554290011,77.9019105896,74.7606846333,76.9649672117,200622556,0.0,1.0 +643,AAPL,2020-05-14 00:00:00+00:00,309.54,309.79,301.53,304.51,39732269,76.3214350496,76.3830760613,74.3464570346,75.0812178941,158929076,0.0,1.0 +644,AAPL,2020-05-15 00:00:00+00:00,307.71,307.9,300.21,300.35,41587094,75.8702228439,75.9170700128,74.0209924928,74.0555114594,166348376,0.0,1.0 +645,AAPL,2020-05-18 00:00:00+00:00,314.96,316.5,310.32,313.17,33843125,77.6578121833,78.0375208154,76.5137550061,77.2164625395,135372500,0.0,1.0 +646,AAPL,2020-05-19 00:00:00+00:00,313.14,318.52,313.01,315.03,25432385,77.2090656181,78.5355801899,77.177012292,77.6750716665,101729540,0.0,1.0 +647,AAPL,2020-05-20 00:00:00+00:00,319.23,319.52,316.52,316.68,27876215,78.7106406632,78.7821442367,78.0424520963,78.0819023438,111504860,0.0,1.0 +648,AAPL,2020-05-21 00:00:00+00:00,316.85,320.89,315.87,318.66,25672211,78.1238182317,79.1199369809,77.8821854659,78.5700991565,102688844,0.0,1.0 +649,AAPL,2020-05-22 00:00:00+00:00,318.89,319.23,315.35,315.77,20450754,78.6268088872,78.7106406632,77.7539721615,77.8575290612,81803016,0.0,1.0 +650,AAPL,2020-05-26 00:00:00+00:00,316.73,324.24,316.5,323.5,31380454,78.0942305461,79.9459265377,78.0375208154,79.763469143,125521816,0.0,1.0 +651,AAPL,2020-05-27 00:00:00+00:00,318.11,318.71,313.09,316.14,28236274,78.4344889307,78.5824273588,77.1967374157,77.9487577585,112945096,0.0,1.0 +652,AAPL,2020-05-28 00:00:00+00:00,318.25,323.44,315.63,316.77,33449103,78.4690078973,79.7486753002,77.8230100946,78.104093108,133796412,0.0,1.0 +653,AAPL,2020-05-29 00:00:00+00:00,317.94,321.15,316.47,319.25,38399532,78.3925730428,79.184043633,78.030123894,78.7155719441,153598128,0.0,1.0 +654,AAPL,2020-06-01 00:00:00+00:00,321.85,322.35,317.21,317.75,20254653,79.3566384658,79.4799204892,78.2125812886,78.3457258739,81018612,0.0,1.0 +655,AAPL,2020-06-02 00:00:00+00:00,323.34,323.44,318.93,320.75,21910704,79.7240188955,79.7486753002,78.6366714491,79.0854180143,87642816,0.0,1.0 +656,AAPL,2020-06-03 00:00:00+00:00,325.12,326.2,322.3,324.66,26122804,80.1629028989,80.4291920694,79.4675922869,80.0494834373,104491216,0.0,1.0 +657,AAPL,2020-06-04 00:00:00+00:00,322.32,325.62,320.78,324.39,21890091,79.4725235678,80.2861849223,79.0928149357,79.9829111447,87560364,0.0,1.0 +658,AAPL,2020-06-05 00:00:00+00:00,331.5,331.75,323.23,323.35,34312550,81.7359815175,81.7976225292,79.6968968504,79.726484536,137250200,0.0,1.0 +659,AAPL,2020-06-08 00:00:00+00:00,333.46,333.6,327.32,330.25,23913634,82.2192470493,82.2537660158,80.7053438018,81.427776459,95654536,0.0,1.0 +660,AAPL,2020-06-09 00:00:00+00:00,343.99,345.61,332.01,332.14,36928091,84.8155664622,85.215000218,81.8617291814,81.8937825075,147712364,0.0,1.0 +661,AAPL,2020-06-10 00:00:00+00:00,352.84,354.77,346.09,347.9,41662938,86.9976582764,87.4735268868,85.3333509605,85.7796318852,166651752,0.0,1.0 +662,AAPL,2020-06-11 00:00:00+00:00,335.9,351.06,335.48,349.31,50415613,82.8208633235,86.5587742731,82.7173064238,86.1272871912,201662452,0.0,1.0 +663,AAPL,2020-06-12 00:00:00+00:00,338.8,347.8,334.22,344.72,50036513,83.5358990592,85.7549754805,82.4066357248,84.9955582163,200146052,0.0,1.0 +664,AAPL,2020-06-15 00:00:00+00:00,342.99,345.68,332.58,333.25,34702230,84.5690024154,85.2322597013,82.0022706881,82.1674685994,138808920,0.0,1.0 +665,AAPL,2020-06-16 00:00:00+00:00,352.08,353.2,344.72,351.46,41357182,86.8102696009,87.0864213333,84.9955582163,86.6573998918,165428728,0.0,1.0 +666,AAPL,2020-06-17 00:00:00+00:00,351.59,355.4,351.09,355.15,28601626,86.6894532179,87.6288622363,86.5661711945,87.5672212246,114406504,0.0,1.0 +667,AAPL,2020-06-18 00:00:00+00:00,351.73,353.45,349.22,351.41,24205096,86.7239721845,87.148062345,86.105096427,86.6450716895,96820384,0.0,1.0 +668,AAPL,2020-06-19 00:00:00+00:00,349.72,356.56,345.15,354.64,66118952,86.2283784504,87.9148765306,85.1015807565,87.4414735607,264475808,0.0,1.0 +669,AAPL,2020-06-22 00:00:00+00:00,358.87,359.46,351.15,351.34,33861316,88.4844394787,88.6299122663,86.5809650373,86.6278122062,135445264,0.0,1.0 +670,AAPL,2020-06-23 00:00:00+00:00,366.53,372.38,362.27,364.0,53038869,90.3731200773,91.8155197511,89.3227572379,89.7493130388,212155476,0.0,1.0 +671,AAPL,2020-06-24 00:00:00+00:00,360.06,368.79,358.52,365.0,48155849,88.7778506944,90.9303548231,88.3981420623,89.9958770856,192623396,0.0,1.0 +672,AAPL,2020-06-25 00:00:00+00:00,364.84,365.0,357.57,360.7,34380628,89.9564268382,89.9958770856,88.1639062178,88.9356516844,137522512,0.0,1.0 +673,AAPL,2020-06-26 00:00:00+00:00,353.63,365.32,353.02,364.41,51314211,87.1924438734,90.0747775806,87.0420398049,89.850404298,205256844,0.0,1.0 +674,AAPL,2020-06-29 00:00:00+00:00,361.78,362.1736,351.28,353.25,32661519,89.2019408549,89.2989884637,86.6130183634,87.0987495356,130646076,0.0,1.0 +675,AAPL,2020-06-30 00:00:00+00:00,364.8,365.98,360.0,360.08,35055821,89.9465642763,90.2375098515,88.7630568516,88.7827819753,140223284,0.0,1.0 +676,AAPL,2020-07-01 00:00:00+00:00,364.11,367.36,363.91,365.12,27690454,89.776435084,90.5777682361,89.7271222746,90.0254647713,110761816,0.0,1.0 +677,AAPL,2020-07-02 00:00:00+00:00,364.11,370.47,363.64,367.85,28814516,89.776435084,91.3445824217,89.660549982,90.6985846191,115258064,0.0,1.0 +678,AAPL,2020-07-06 00:00:00+00:00,373.85,375.78,369.87,370.0,29745936,92.1779688999,92.6538375103,91.1966439936,91.2286973197,118983744,0.0,1.0 +679,AAPL,2020-07-07 00:00:00+00:00,372.69,378.62,372.23,375.41,28206999,91.8919546056,93.3540794032,91.7785351441,92.5626088129,112827996,0.0,1.0 +680,AAPL,2020-07-08 00:00:00+00:00,381.37,381.5,376.36,376.72,29274479,94.0321305319,94.064183858,92.7968446574,92.8856077143,117097916,0.0,1.0 +681,AAPL,2020-07-09 00:00:00+00:00,383.01,385.27,378.69,385.05,31420357,94.4364955687,94.9937303145,93.3713388865,94.9394862242,125681428,0.0,1.0 +682,AAPL,2020-07-10 00:00:00+00:00,383.68,383.92,378.82,381.34,22564330,94.6016934801,94.6608688513,93.4033922126,94.0247336105,90257320,0.0,1.0 +683,AAPL,2020-07-13 00:00:00+00:00,381.91,399.82,381.03,389.06,47913079,94.1652751172,98.5812371956,93.948298756,95.9282080519,191652316,0.0,1.0 +684,AAPL,2020-07-14 00:00:00+00:00,388.23,389.02,375.51,379.36,42748119,95.723559893,95.91834549,92.5872652176,93.5365367978,170992476,0.0,1.0 +685,AAPL,2020-07-15 00:00:00+00:00,390.9,396.99,385.96,395.96,38306874,96.381885898,97.8834609431,95.1638595068,97.6294999749,153227496,0.0,1.0 +686,AAPL,2020-07-16 00:00:00+00:00,386.09,389.62,383.62,386.25,27645927,95.1959128329,96.0662839181,94.5868996372,95.2353630804,110583708,0.0,1.0 +687,AAPL,2020-07-17 00:00:00+00:00,385.31,388.59,383.36,387.95,23046755,95.0035928764,95.8123229499,94.5227929851,95.6545219599,92187020,0.0,1.0 +688,AAPL,2020-07-20 00:00:00+00:00,393.43,394.0,384.25,385.67,22397208,97.0056929365,97.1462344431,94.7422349867,95.0923559332,89588832,0.0,1.0 +689,AAPL,2020-07-21 00:00:00+00:00,388.0,397.0,386.97,396.69,25627347,95.6668501623,97.8859265836,95.4128891941,97.8094917291,102509388,0.0,1.0 +690,AAPL,2020-07-22 00:00:00+00:00,389.09,391.9,386.41,386.77,22250413,95.9356049733,96.6284499448,95.2748133278,95.3635763847,89001652,0.0,1.0 +691,AAPL,2020-07-23 00:00:00+00:00,371.38,388.31,368.039,387.9935,49251108,91.5689557043,95.7432850168,90.7451852239,95.665247496,197004432,0.0,1.0 +692,AAPL,2020-07-24 00:00:00+00:00,370.46,371.88,356.58,363.95,46359716,91.3421167812,91.6922377277,87.9198078115,89.7369848365,185438864,0.0,1.0 +693,AAPL,2020-07-27 00:00:00+00:00,379.24,379.62,373.92,374.84,30303548,93.5069491122,93.60064345,92.1952283832,92.4220673063,121214192,0.0,1.0 +694,AAPL,2020-07-28 00:00:00+00:00,373.01,378.1986,372.99,377.47,25906375,91.9708551006,93.2501773139,91.9659238197,93.0705307494,103625500,0.0,1.0 +695,AAPL,2020-07-29 00:00:00+00:00,380.16,380.92,374.85,375.0,22582314,93.7337880353,93.9211767109,92.4245329467,92.4615175537,90329256,0.0,1.0 +696,AAPL,2020-07-30 00:00:00+00:00,384.76,385.19,375.07,376.75,39532505,94.8679826506,94.9740051907,92.478777037,92.8930046357,158130020,0.0,1.0 +697,AAPL,2020-07-31 00:00:00+00:00,425.04,425.66,403.3,411.535,93573867,104.7995824561,104.9524521651,99.4392800785,101.4697350039,374295468,0.0,1.0 +698,AAPL,2020-08-03 00:00:00+00:00,435.75,446.5457,431.57,432.8,77037847,107.4402833975,110.1021148776,106.4096456818,106.7129194594,308151388,0.0,1.0 +699,AAPL,2020-08-04 00:00:00+00:00,438.66,443.16,433.55,436.53,43198092,108.1577847737,109.2673229843,106.8978424945,107.632603354,172792368,0.0,1.0 +700,AAPL,2020-08-05 00:00:00+00:00,440.25,441.57,435.59,437.51,30497988,108.5498216081,108.8752861499,107.40083315,107.8742361198,121991952,0.0,1.0 +701,AAPL,2020-08-06 00:00:00+00:00,455.61,457.65,439.19,441.62,50607225,112.3370453671,112.8400360226,108.2884637185,108.8876143522,202428900,0.0,1.0 +702,AAPL,2020-08-07 00:00:00+00:00,444.45,454.7,441.17,452.82,49511403,109.7875731231,112.3195173789,108.9773509612,111.8551217496,198045612,0.82,1.0 +703,AAPL,2020-08-10 00:00:00+00:00,450.91,455.1,440.0,450.4,53100856,111.3833155516,112.4183249596,108.6883387876,111.2573358862,212403424,0.0,1.0 +704,AAPL,2020-08-11 00:00:00+00:00,437.5,449.93,436.4267,447.875,46975594,108.0707914081,111.1412369789,107.8056659672,110.633613033,187902376,0.0,1.0 +705,AAPL,2020-08-12 00:00:00+00:00,452.04,453.1,441.19,441.99,41486205,111.6624469672,111.9242870561,108.9822913402,109.1799065017,165944820,0.0,1.0 +706,AAPL,2020-08-13 00:00:00+00:00,460.04,464.17,455.71,457.72,52520516,113.6385985815,114.6587868524,112.5690065202,113.0655146133,210082064,0.0,1.0 +707,AAPL,2020-08-14 00:00:00+00:00,459.63,460.0,452.18,459.315,41391302,113.5373208113,113.6287178234,111.6970296204,113.4595098414,165565208,0.0,1.0 +708,AAPL,2020-08-17 00:00:00+00:00,458.43,464.35,455.8501,464.25,29431414,113.2408980691,114.7032502637,112.6036138754,114.6785483685,117725656,0.0,1.0 +709,AAPL,2020-08-18 00:00:00+00:00,462.25,464.0,456.03,457.41,26408385,114.1845104649,114.6167936306,112.6480525848,112.9889387383,105633540,0.0,1.0 +710,AAPL,2020-08-19 00:00:00+00:00,462.83,468.65,462.44,463.933,36384502,114.327781457,115.7654317564,114.2314440658,114.6002433608,145538008,0.0,1.0 +711,AAPL,2020-08-20 00:00:00+00:00,473.1,473.568,462.9335,463.0,31726797,116.8646660919,116.9802709613,114.3533479185,114.3697746788,126907188,0.0,1.0 +712,AAPL,2020-08-21 00:00:00+00:00,497.48,499.472,477.0,477.05,84513660,122.8869881365,123.3790498885,117.8280400038,117.8403909514,338054640,0.0,1.0 +713,AAPL,2020-08-24 00:00:00+00:00,503.43,515.14,495.745,514.79,86484442,124.3567508997,127.2493428251,122.4584102552,127.162886192,345937768,0.0,1.0 +714,AAPL,2020-08-25 00:00:00+00:00,499.3,500.7172,492.21,498.79,52873947,123.3365626288,123.6866378872,121.5851982606,123.2105829634,211495788,0.0,1.0 +715,AAPL,2020-08-26 00:00:00+00:00,506.09,507.97,500.33,504.7165,40755567,125.0138213114,125.4782169408,123.5909921491,124.6745407811,163022268,0.0,1.0 +716,AAPL,2020-08-27 00:00:00+00:00,500.04,509.94,495.33,508.57,38888096,123.5193566531,125.9648442758,122.3558973902,125.6264283119,155552384,0.0,1.0 +717,AAPL,2020-08-28 00:00:00+00:00,499.23,505.77,498.31,504.05,46907479,123.3192713021,124.9347752468,123.0920138665,124.5099026498,187629916,0.0,1.0 +718,AAPL,2020-08-31 00:00:00+00:00,129.04,131.0,126.0,127.58,223505733,127.5013021559,129.437930738,124.4975517022,126.0587114775,223505733,0.0,4.0 +719,AAPL,2020-09-01 00:00:00+00:00,134.18,134.8,130.53,132.76,152470142,132.5800118047,133.1926188052,128.9735351086,131.1769441586,152470142,0.0,1.0 +720,AAPL,2020-09-02 00:00:00+00:00,131.4,137.98,127.0,137.59,200118991,129.8331610608,136.334699872,125.4856275093,135.9493503072,200118991,0.0,1.0 +721,AAPL,2020-09-03 00:00:00+00:00,120.88,128.84,120.5,126.91,257599640,119.4386035695,127.3036869945,119.0631347628,125.3967006867,257599640,0.0,1.0 +722,AAPL,2020-09-04 00:00:00+00:00,120.96,123.7,110.89,120.07,332607163,119.5176496341,122.2249773457,109.567726256,118.6382621657,332607163,0.0,1.0 +723,AAPL,2020-09-08 00:00:00+00:00,112.82,118.99,112.68,113.95,231366563,111.4747125638,117.571140294,111.3363819508,112.5912382259,231366563,0.0,1.0 +724,AAPL,2020-09-09 00:00:00+00:00,117.32,119.14,115.26,117.26,176940455,115.921053696,117.7193516651,113.8856175333,115.8617691476,176940455,0.0,1.0 +725,AAPL,2020-09-10 00:00:00+00:00,113.49,120.5,112.5,120.36,182274391,112.1367233546,119.0631347628,111.1585283055,118.9248041498,182274391,0.0,1.0 +726,AAPL,2020-09-11 00:00:00+00:00,112.0,115.23,110.0,114.57,180860325,110.6644904019,113.8559752591,108.6883387876,113.2038452263,180860325,0.0,1.0 +727,AAPL,2020-09-14 00:00:00+00:00,115.355,115.93,112.8,114.72,140150087,113.979484735,114.5476283241,111.4549510477,113.3520565974,140150087,0.0,1.0 +728,AAPL,2020-09-15 00:00:00+00:00,115.54,118.829,113.61,118.33,184642039,114.1622787593,117.412060089,112.2552924515,116.9190102613,184642039,0.0,1.0 +729,AAPL,2020-09-16 00:00:00+00:00,112.13,116.0,112.04,115.23,155026675,110.7929402569,114.6167936306,110.7040134342,113.8559752591,155026675,0.0,1.0 +730,AAPL,2020-09-17 00:00:00+00:00,110.34,112.2,108.71,109.72,178010968,109.024284562,110.8621055634,107.4137209964,108.4116775616,178010968,0.0,1.0 +731,AAPL,2020-09-18 00:00:00+00:00,106.84,110.88,106.09,110.4,287104882,105.566019237,109.5578454979,104.8249623816,109.0835691105,287104882,0.0,1.0 +732,AAPL,2020-09-21 00:00:00+00:00,110.08,110.19,103.1,104.54,195713815,108.7673848522,108.876073191,101.8706157182,103.2934448805,195713815,0.0,1.0 +733,AAPL,2020-09-22 00:00:00+00:00,111.81,112.86,109.16,112.68,183055373,110.4767559986,111.5142355961,107.8583551096,111.3363819508,183055373,0.0,1.0 +734,AAPL,2020-09-23 00:00:00+00:00,107.12,112.11,106.77,111.62,150718671,105.842680463,110.7731787407,105.4968539305,110.2890215952,150718671,0.0,1.0 +735,AAPL,2020-09-24 00:00:00+00:00,108.22,110.25,105.0,105.17,167743349,106.9295638509,108.9353577394,103.7479597518,103.915932639,167743349,0.0,1.0 +736,AAPL,2020-09-25 00:00:00+00:00,112.28,112.44,107.67,108.43,149981441,110.9411516279,111.0992437571,106.3861221569,107.1370597704,149981441,0.0,1.0 +737,AAPL,2020-09-28 00:00:00+00:00,114.96,115.32,112.78,115.01,137672403,113.5891947911,113.9449020817,111.4351895315,113.6385985815,137672403,0.0,1.0 +738,AAPL,2020-09-29 00:00:00+00:00,114.09,115.31,113.57,114.55,100060526,112.7295688389,113.9350213236,112.2157694192,113.1840837102,100060526,0.0,1.0 +739,AAPL,2020-09-30 00:00:00+00:00,115.81,117.26,113.62,113.79,142675184,114.4290592272,115.8617691476,112.2651732095,112.4331460968,142675184,0.0,1.0 +740,AAPL,2020-10-01 00:00:00+00:00,116.79,117.72,115.83,117.64,116120440,115.3973735182,116.3162840189,114.4488207434,116.2372379543,116120440,0.0,1.0 +741,AAPL,2020-10-02 00:00:00+00:00,113.02,115.37,112.22,112.89,144711986,111.6723277252,113.9943058721,110.8818670795,111.5438778703,144711986,0.0,1.0 +742,AAPL,2020-10-05 00:00:00+00:00,116.5,116.65,113.55,113.91,106243839,115.1108315342,115.2590429052,112.196007903,112.5517151936,106243839,0.0,1.0 +743,AAPL,2020-10-06 00:00:00+00:00,113.16,116.12,112.25,115.7,161498212,111.8106583382,114.7353627274,110.9115093537,114.3203708884,161498212,0.0,1.0 +744,AAPL,2020-10-07 00:00:00+00:00,115.08,115.55,114.13,114.62,96848985,113.707763888,114.1721595174,112.7690918712,113.2532490167,96848985,0.0,1.0 +745,AAPL,2020-10-08 00:00:00+00:00,114.97,116.4,114.5901,116.25,83477153,113.5990755492,115.0120239534,113.2237055501,114.8638125824,83477153,0.0,1.0 +746,AAPL,2020-10-09 00:00:00+00:00,116.97,117.0,114.92,115.28,100506865,115.5752271635,115.6048694377,113.5496717588,113.9053790494,100506865,0.0,1.0 +747,AAPL,2020-10-12 00:00:00+00:00,124.4,125.18,119.2845,120.06,240226769,122.9166304107,123.6873295403,117.8621286192,118.6283814076,240226769,0.0,1.0 +748,AAPL,2020-10-13 00:00:00+00:00,121.1,125.39,119.65,125.27,262330451,119.6559802471,123.8948254598,118.2232703267,123.776256363,262330451,0.0,1.0 +749,AAPL,2020-10-14 00:00:00+00:00,121.19,123.03,119.62,121.0,151062308,119.7449070697,121.5629665549,118.1936280525,119.5571726664,151062308,0.0,1.0 +750,AAPL,2020-10-15 00:00:00+00:00,120.71,121.2,118.15,118.72,112559219,119.2706306823,119.7547878278,116.741156616,117.3043598261,112559219,0.0,1.0 +751,AAPL,2020-10-16 00:00:00+00:00,119.02,121.548,118.81,121.28,115393808,117.6007825682,120.0986382087,117.3932866487,119.8338338924,115393808,0.0,1.0 +752,AAPL,2020-10-19 00:00:00+00:00,115.98,120.419,115.66,119.96,120639337,114.5970321144,118.9831006224,114.2808478561,118.5295738269,120639337,0.0,1.0 +753,AAPL,2020-10-20 00:00:00+00:00,117.51,118.98,115.63,116.2,124423728,116.1087880994,117.5612595359,114.2512055819,114.814408792,124423728,0.0,1.0 +754,AAPL,2020-10-21 00:00:00+00:00,116.87,118.705,116.45,116.67,89945980,115.4764195828,117.2895386889,115.0614277438,115.2788044214,89945980,0.0,1.0 +755,AAPL,2020-10-22 00:00:00+00:00,115.75,118.04,114.59,117.45,101987954,114.3697746788,116.6324682772,113.2236067425,116.049503551,101987954,0.0,1.0 +756,AAPL,2020-10-23 00:00:00+00:00,115.04,116.55,114.28,116.39,82572645,113.6682408557,115.1602353245,112.9173032423,115.0021431954,82572645,0.0,1.0 +757,AAPL,2020-10-26 00:00:00+00:00,115.05,116.55,112.88,114.01,111850657,113.6781216138,115.1602353245,111.5339971122,112.6505227743,111850657,0.0,1.0 +758,AAPL,2020-10-27 00:00:00+00:00,116.6,117.28,114.5399,115.49,92276772,115.2096391149,115.8815306637,113.1741041445,114.1128749689,92276772,0.0,1.0 +759,AAPL,2020-10-28 00:00:00+00:00,111.2,115.43,111.1,115.05,143937823,109.8740297562,114.0535904205,109.7752221755,113.6781216138,143937823,0.0,1.0 +760,AAPL,2020-10-29 00:00:00+00:00,115.32,116.93,112.2,112.37,146129173,113.9449020817,115.5357041312,110.8621055634,111.0300784506,146129173,0.0,1.0 +761,AAPL,2020-10-30 00:00:00+00:00,108.86,111.99,107.72,111.06,190573476,107.5619323675,110.6546096439,106.4355259473,109.7356991432,190573476,0.0,1.0 +762,AAPL,2020-11-02 00:00:00+00:00,108.77,110.68,107.32,109.11,122866899,107.4730055448,109.3602303365,106.0402956244,107.8089513192,122866899,0.0,1.0 +763,AAPL,2020-11-03 00:00:00+00:00,110.44,111.49,108.73,109.66,107624448,109.1230921428,110.1605717403,107.4334825125,108.3523930132,107624448,0.0,1.0 +764,AAPL,2020-11-04 00:00:00+00:00,114.95,115.59,112.35,114.14,138235482,113.5793140331,114.2116825496,111.0103169344,112.7789726293,138235482,0.0,1.0 +765,AAPL,2020-11-05 00:00:00+00:00,119.03,119.62,116.8686,117.95,126387074,117.6106633263,118.1936280525,115.4750362767,116.5435414545,126387074,0.0,1.0 +766,AAPL,2020-11-06 00:00:00+00:00,118.69,119.2,116.13,118.32,114457922,117.4772730923,117.9820621165,114.9434301475,117.1110536042,114457922,0.205,1.0 +767,AAPL,2020-11-09 00:00:00+00:00,116.32,121.99,116.05,120.5,154515315,115.1314888036,120.7435550133,114.8642475555,119.2687792369,154515315,0.0,1.0 +768,AAPL,2020-11-10 00:00:00+00:00,115.97,117.59,114.13,115.55,138023390,114.7850649635,116.388512452,112.9638653469,114.3693563553,138023390,0.0,1.0 +769,AAPL,2020-11-11 00:00:00+00:00,119.49,119.63,116.44,117.19,112294954,118.2690990125,118.4076685486,115.2502626916,115.9925994918,112294954,0.0,1.0 +770,AAPL,2020-11-12 00:00:00+00:00,119.21,120.53,118.57,119.62,103350674,117.9919599405,119.2984727089,117.3584992043,118.3977707246,103350674,0.0,1.0 +771,AAPL,2020-11-13 00:00:00+00:00,119.26,119.6717,117.87,119.44,81688586,118.0414490605,118.4489424747,116.6656515241,118.2196098925,81688586,0.0,1.0 +772,AAPL,2020-11-16 00:00:00+00:00,120.3,120.99,118.146,118.92,91183018,119.0708227568,119.753772613,116.9388314665,117.7049230444,91183018,0.0,1.0 +773,AAPL,2020-11-17 00:00:00+00:00,119.39,120.6741,118.96,119.55,74270973,118.1701207725,119.4411003528,117.7445143404,118.3284859566,74270973,0.0,1.0 +774,AAPL,2020-11-18 00:00:00+00:00,118.03,119.82,118.0,118.61,76322111,116.8240167081,118.5957272047,116.7943232361,117.3980905003,76322111,0.0,1.0 +775,AAPL,2020-11-19 00:00:00+00:00,118.64,119.06,116.81,117.59,74112972,117.4277839723,117.8434925804,115.6164821797,116.388512452,74112972,0.0,1.0 +776,AAPL,2020-11-20 00:00:00+00:00,117.34,118.77,117.29,118.64,73604287,116.1410668519,117.5564556843,116.0915777319,117.4277839723,73604287,0.0,1.0 +777,AAPL,2020-11-23 00:00:00+00:00,113.85,117.6202,113.75,117.18,127959318,112.6867262748,116.4184038805,112.5877480348,115.9827016678,127959318,0.0,1.0 +778,AAPL,2020-11-24 00:00:00+00:00,115.17,115.85,112.59,113.91,113226248,113.9932390432,114.6662910754,111.4396004504,112.7461132188,113226248,0.0,1.0 +779,AAPL,2020-11-25 00:00:00+00:00,116.03,116.75,115.17,115.55,76499234,114.8444519075,115.5570952357,113.9932390432,114.3693563553,76499234,0.0,1.0 +780,AAPL,2020-11-27 00:00:00+00:00,116.59,117.49,116.22,116.57,46691331,115.3987300517,116.2895342119,115.0325105635,115.3789344037,46691331,0.0,1.0 +781,AAPL,2020-11-30 00:00:00+00:00,119.05,120.97,116.81,116.97,169410176,117.8335947564,119.733976965,115.6164821797,115.7748473638,169410176,0.0,1.0 +782,AAPL,2020-12-01 00:00:00+00:00,122.72,123.4693,120.01,121.01,125920963,121.4660961655,122.2077401181,118.7837858607,119.773568261,125920963,0.0,1.0 +783,AAPL,2020-12-02 00:00:00+00:00,123.08,123.37,120.89,122.02,89004195,121.8224178296,122.1094547257,119.654794373,120.7732484853,89004195,0.0,1.0 +784,AAPL,2020-12-03 00:00:00+00:00,122.94,123.78,122.21,123.52,78967630,121.6838482936,122.5152655099,120.9613071414,122.2579220858,78967630,0.0,1.0 +785,AAPL,2020-12-04 00:00:00+00:00,122.25,122.8608,121.52,122.6,78260421,121.0008984374,121.6054575275,120.2783572852,121.3473222775,78260421,0.0,1.0 +786,AAPL,2020-12-07 00:00:00+00:00,123.75,124.57,122.25,122.31,86711990,122.4855720379,123.2971936061,121.0008984374,121.0602853814,86711990,0.0,1.0 +787,AAPL,2020-12-08 00:00:00+00:00,124.38,124.98,123.09,124.37,82225512,123.10913495,123.7030043902,121.8323156537,123.099237126,82225512,0.0,1.0 +788,AAPL,2020-12-09 00:00:00+00:00,121.78,125.95,121.0,124.53,115089193,120.5357007092,124.6630933185,119.763670437,123.2576023101,115089193,0.0,1.0 +789,AAPL,2020-12-10 00:00:00+00:00,123.24,123.87,120.15,120.5,81312170,121.9807830137,122.6043459259,118.9223553968,119.2687792369,81312170,0.0,1.0 +790,AAPL,2020-12-11 00:00:00+00:00,122.41,122.76,120.55,122.43,86939786,121.1592636214,121.5056874615,119.3182683569,121.1790592694,86939786,0.0,1.0 +791,AAPL,2020-12-14 00:00:00+00:00,121.78,123.35,121.54,122.6,79075988,120.5357007092,122.0896590777,120.2981529332,121.3473222775,79075988,0.0,1.0 +792,AAPL,2020-12-15 00:00:00+00:00,127.88,127.9,124.13,124.34,157572262,126.5733733511,126.5931689991,122.86168935,123.069543654,157572262,0.0,1.0 +793,AAPL,2020-12-16 00:00:00+00:00,127.81,128.37,126.56,127.41,98208591,126.5040885831,127.0583667273,125.2668605827,126.108175623,98208591,0.0,1.0 +794,AAPL,2020-12-17 00:00:00+00:00,128.7,129.58,128.045,128.9,94359811,127.3849949194,128.2560034316,126.7366874472,127.5829513994,94359811,0.0,1.0 +795,AAPL,2020-12-18 00:00:00+00:00,126.655,129.1,126.12,128.96,192541496,125.3608899107,127.7809078795,124.8313563266,127.6423383434,192541496,0.0,1.0 +796,AAPL,2020-12-21 00:00:00+00:00,128.23,128.31,123.449,125.02,121251553,126.9197971912,126.9989797832,122.1876475354,123.7425956862,121251553,0.0,1.0 +797,AAPL,2020-12-22 00:00:00+00:00,131.88,134.405,129.65,131.61,169351825,130.5325029523,133.0317035131,128.3252881997,130.2652617043,169351825,0.0,1.0 +798,AAPL,2020-12-23 00:00:00+00:00,130.96,132.43,130.78,132.16,88223692,129.6219031441,131.0768832725,129.443742312,130.8096420244,88223692,0.0,1.0 +799,AAPL,2020-12-24 00:00:00+00:00,131.97,133.46,131.1,131.32,54930064,130.6215833684,132.0963591448,129.7604726801,129.9782248082,54930064,0.0,1.0 +800,AAPL,2020-12-28 00:00:00+00:00,136.69,137.34,133.51,133.99,123124632,135.2933562978,135.936714858,132.1458482648,132.620943817,123124632,0.0,1.0 +801,AAPL,2020-12-29 00:00:00+00:00,134.87,138.789,134.3409,138.05,121047324,133.4919523293,137.3709095561,132.9682584613,136.6394603622,121047324,0.0,1.0 +802,AAPL,2020-12-30 00:00:00+00:00,133.72,135.99,133.4,135.58,96452124,132.3537025689,134.6005086176,132.0369722008,134.1946978335,96452124,0.0,1.0 +803,AAPL,2020-12-31 00:00:00+00:00,132.69,134.74,131.72,134.08,99116586,131.3342266966,133.3632806172,130.3741377683,132.710024233,99116586,0.0,1.0 +804,AAPL,2021-01-04 00:00:00+00:00,129.41,133.6116,126.76,133.52,143301887,128.0877404236,132.2464101567,125.4648170628,132.1557460888,143301887,0.0,1.0 +805,AAPL,2021-01-05 00:00:00+00:00,131.01,131.74,128.43,128.89,97664898,129.6713922641,130.3939334163,127.1177536713,127.5730535754,97664898,0.0,1.0 +806,AAPL,2021-01-06 00:00:00+00:00,126.6,131.0499,126.382,127.72,155087970,125.3064518787,129.7108845818,125.0906793155,126.4150081671,155087970,0.0,1.0 +807,AAPL,2021-01-07 00:00:00+00:00,130.92,131.63,127.86,128.36,109578157,129.582311848,130.2850573523,126.5535777031,127.0484689033,109578157,0.0,1.0 +808,AAPL,2021-01-08 00:00:00+00:00,132.05,132.63,130.23,132.43,105158245,130.7007659604,131.2748397526,128.8993619918,131.0768832725,105158245,0.0,1.0 +809,AAPL,2021-01-11 00:00:00+00:00,128.98,130.17,128.5,129.19,100620880,127.6621339915,128.8399750478,127.1870384393,127.8699882955,100620880,0.0,1.0 +810,AAPL,2021-01-12 00:00:00+00:00,128.8,129.69,126.86,128.5,90440255,127.4839731594,128.3648794957,125.5637953028,127.1870384393,90440255,0.0,1.0 +811,AAPL,2021-01-13 00:00:00+00:00,130.89,131.45,128.49,128.76,88636831,129.552618376,130.1068965202,127.1771406153,127.4443818634,88636831,0.0,1.0 +812,AAPL,2021-01-14 00:00:00+00:00,128.91,131.0,128.76,130.8,90221755,127.5928492234,129.6614944401,127.4443818634,129.46353796,90221755,0.0,1.0 +813,AAPL,2021-01-15 00:00:00+00:00,127.14,130.2242,127.0,128.78,111598531,125.8409343749,128.8936212539,125.7023648388,127.4641775114,111598531,0.0,1.0 +814,AAPL,2021-01-19 00:00:00+00:00,127.83,128.71,126.938,127.78,90757329,126.5238842311,127.3948927434,125.64099833,126.4743951111,90757329,0.0,1.0 +815,AAPL,2021-01-20 00:00:00+00:00,132.03,132.49,128.55,128.66,104319489,130.6809703124,131.1362702165,127.2365275593,127.3454036234,104319489,0.0,1.0 +816,AAPL,2021-01-21 00:00:00+00:00,136.87,139.67,133.59,133.8,120529544,135.4715171299,138.2429078507,132.2250308569,132.4328851609,120529544,0.0,1.0 +817,AAPL,2021-01-22 00:00:00+00:00,139.07,139.85,135.02,136.28,114459360,137.6490384105,138.4210686828,133.6404196893,134.8875455137,114459360,0.0,1.0 +818,AAPL,2021-01-25 00:00:00+00:00,142.92,145.09,136.54,143.07,157611713,141.4597006517,143.6075284604,135.1448889378,141.6081680118,157611713,0.0,1.0 +819,AAPL,2021-01-26 00:00:00+00:00,143.16,144.3,141.37,143.6,98390555,141.6972484278,142.8256003641,139.9255379312,142.1327526839,98390555,0.0,1.0 +820,AAPL,2021-01-27 00:00:00+00:00,142.06,144.3,140.41,143.43,140843759,140.6084877875,142.8256003641,138.9753468269,141.9644896759,140843759,0.0,1.0 +821,AAPL,2021-01-28 00:00:00+00:00,137.09,141.99,136.7,139.52,142621128,135.6892692579,140.5392030194,135.3032541218,138.0944404907,142621128,0.0,1.0 +822,AAPL,2021-01-29 00:00:00+00:00,131.96,136.74,130.21,135.83,177523812,130.6116855444,135.3428454178,128.8795663438,134.4421434335,177523812,0.0,1.0 +823,AAPL,2021-02-01 00:00:00+00:00,134.14,135.38,130.93,133.75,106239823,132.769411177,133.9967413534,129.592209672,132.3833960409,106239823,0.0,1.0 +824,AAPL,2021-02-02 00:00:00+00:00,134.99,136.31,134.61,135.73,82266419,133.6107262173,134.9172389857,133.2346089052,134.3431651935,82266419,0.0,1.0 +825,AAPL,2021-02-03 00:00:00+00:00,133.94,135.77,133.61,135.76,89880937,132.571454697,134.3827564895,132.2448265049,134.3728586655,89880937,0.0,1.0 +826,AAPL,2021-02-04 00:00:00+00:00,137.39,137.4,134.59,136.3,84183061,135.986203978,135.996101802,133.2148132572,134.9073411617,84183061,0.0,1.0 +827,AAPL,2021-02-05 00:00:00+00:00,136.76,137.42,135.86,137.35,75693830,135.5655464579,136.2197820579,134.6734070033,136.1503934337,75693830,0.205,1.0 +828,AAPL,2021-02-08 00:00:00+00:00,136.91,136.96,134.92,136.03,71297214,135.714236367,135.76379967,133.7416169063,134.8419222336,71297214,0.0,1.0 +829,AAPL,2021-02-09 00:00:00+00:00,136.01,137.877,135.85,136.62,75986989,134.8220969124,136.6727906477,134.6634943427,135.4267692094,75986989,0.0,1.0 +830,AAPL,2021-02-10 00:00:00+00:00,135.39,136.99,134.4,136.48,72647988,134.2075119548,135.7935376518,133.2261585547,135.2879919609,72647988,0.0,1.0 +831,AAPL,2021-02-11 00:00:00+00:00,135.13,136.39,133.77,135.9,64280029,133.949782779,135.1987780154,132.6016609365,134.7130576457,64280029,0.0,1.0 +832,AAPL,2021-02-12 00:00:00+00:00,135.37,135.53,133.6921,134.35,60145130,134.1876866336,134.3462892033,132.5244413103,133.1765952517,60145130,0.0,1.0 +833,AAPL,2021-02-16 00:00:00+00:00,133.19,136.01,132.79,135.49,80576316,132.0267266213,134.8220969124,131.630220197,134.3066385608,80576316,0.0,1.0 +834,AAPL,2021-02-17 00:00:00+00:00,130.84,132.22,129.47,131.25,97372199,129.6972513787,131.0651985424,128.3392168756,130.1036704636,97372199,0.0,1.0 +835,AAPL,2021-02-18 00:00:00+00:00,129.71,129.995,127.41,129.2,96856748,128.5771207301,128.8596315574,126.2972087906,128.0715750392,96856748,0.0,1.0 +836,AAPL,2021-02-19 00:00:00+00:00,129.87,130.71,128.8,130.24,87668834,128.7357232998,129.5683867908,127.6750686149,129.1024917423,87668834,0.0,1.0 +837,AAPL,2021-02-22 00:00:00+00:00,126.0,129.72,125.6,128.01,102886922,124.899523645,128.5870333907,124.5030172208,126.891968427,102886922,0.0,1.0 +838,AAPL,2021-02-23 00:00:00+00:00,125.86,126.71,118.39,123.76,158273022,124.7607463965,125.6033225481,117.3559889233,122.6790876691,158273022,0.0,1.0 +839,AAPL,2021-02-24 00:00:00+00:00,125.35,125.56,122.23,124.94,111039904,124.2552007056,124.4633665783,121.1624505963,123.8487816207,111039904,0.0,1.0 +840,AAPL,2021-02-25 00:00:00+00:00,120.99,126.4585,120.54,124.68,144766924,119.9332806811,125.3540191339,119.4872109537,123.5910524449,144766924,0.0,1.0 +841,AAPL,2021-02-26 00:00:00+00:00,121.26,124.85,121.2,122.59,163424672,120.2009225174,123.7595676753,120.1414465538,121.5193063781,163424672,0.0,1.0 +842,AAPL,2021-03-01 00:00:00+00:00,127.79,127.93,122.79,123.75,116307892,126.6738898936,126.8126671421,121.7175595903,122.6691750085,116307892,0.0,1.0 +843,AAPL,2021-03-02 00:00:00+00:00,125.12,128.72,125.01,128.41,102260945,124.0272095116,127.5957673301,123.918170245,127.2884748513,102260945,0.0,1.0 +844,AAPL,2021-03-03 00:00:00+00:00,122.06,125.71,121.84,124.81,112966340,120.993935366,124.6120564874,120.7758568326,123.7199170328,112966340,0.0,1.0 +845,AAPL,2021-03-04 00:00:00+00:00,120.13,123.6,118.62,121.75,178154975,119.0807918689,122.5204850994,117.5839801173,120.6866428872,178154975,0.0,1.0 +846,AAPL,2021-03-05 00:00:00+00:00,121.42,121.935,117.57,120.98,153766601,120.3595250871,120.8700271084,116.5431507535,119.9233680204,153766601,0.0,1.0 +847,AAPL,2021-03-08 00:00:00+00:00,116.36,121.0,116.21,120.93,154376610,115.3437188201,119.9431933417,115.195028911,119.8738047174,154376610,0.0,1.0 +848,AAPL,2021-03-09 00:00:00+00:00,121.085,122.06,118.79,119.03,129525780,120.0274509568,120.993935366,117.7524953476,117.9903992021,129525780,0.0,1.0 +849,AAPL,2021-03-10 00:00:00+00:00,119.98,122.17,119.45,121.69,111943326,118.9321019598,121.1029746326,118.4067309476,120.6271669235,111943326,0.0,1.0 +850,AAPL,2021-03-11 00:00:00+00:00,121.96,123.21,121.26,122.54,103026514,120.8948087599,122.1338913357,120.2009225174,121.4697430751,103026514,0.0,1.0 +851,AAPL,2021-03-12 00:00:00+00:00,121.03,121.17,119.16,120.4,88105050,119.9729313235,120.111708572,118.11926379,119.3484337053,88105050,0.0,1.0 +852,AAPL,2021-03-15 00:00:00+00:00,123.99,124.0,120.42,121.41,92590555,122.9070788631,122.9169915237,119.3682590265,120.3496124265,92590555,0.0,1.0 +853,AAPL,2021-03-16 00:00:00+00:00,125.57,127.22,124.715,125.7,115227936,124.4732792389,126.1088682391,123.6257467571,124.6021438268,115227936,0.0,1.0 +854,AAPL,2021-03-17 00:00:00+00:00,124.76,125.8599,122.336,124.05,111932636,123.6703537298,124.7606472699,121.2675247987,122.9665548267,111932636,0.0,1.0 +855,AAPL,2021-03-18 00:00:00+00:00,120.53,123.18,120.32,122.88,121469755,119.4772982931,122.1041533539,119.2691324204,121.8067735357,121469755,0.0,1.0 +856,AAPL,2021-03-19 00:00:00+00:00,119.99,121.43,119.675,119.9,185549522,118.9420146204,120.3694377477,118.6297658113,118.8528006749,185549522,0.0,1.0 +857,AAPL,2021-03-22 00:00:00+00:00,123.39,123.87,120.26,120.33,111912284,122.3123192267,122.7881269358,119.2096564568,119.279045081,111912284,0.0,1.0 +858,AAPL,2021-03-23 00:00:00+00:00,122.54,124.24,122.14,123.33,95467142,121.4697430751,123.1548953782,121.0732366508,122.252843263,95467142,0.0,1.0 +859,AAPL,2021-03-24 00:00:00+00:00,120.09,122.9,120.065,122.82,88530485,119.0411412264,121.8265988569,119.0163595749,121.7472975721,88530485,0.0,1.0 +860,AAPL,2021-03-25 00:00:00+00:00,120.59,121.66,119.0,119.54,98844681,119.5367742568,120.5974289417,117.9606612203,118.4959448931,98844681,0.0,1.0 +861,AAPL,2021-03-26 00:00:00+00:00,121.21,121.48,118.92,120.35,94071234,120.1513592144,120.4190010508,117.8813599355,119.2988704022,94071234,0.0,1.0 +862,AAPL,2021-03-29 00:00:00+00:00,121.39,122.58,120.7299,121.65,80819203,120.3297871053,121.5093937175,119.6754523787,120.5875162811,80819203,0.0,1.0 +863,AAPL,2021-03-30 00:00:00+00:00,119.9,120.4031,118.86,120.11,85671919,118.8528006749,119.35150663,117.8218839718,119.0609665477,85671919,0.0,1.0 +864,AAPL,2021-03-31 00:00:00+00:00,122.15,123.52,121.15,121.65,118323826,121.0831493114,122.4411838146,120.0918832508,120.5875162811,118323826,0.0,1.0 +865,AAPL,2021-04-01 00:00:00+00:00,123.0,124.18,122.49,123.66,75089134,121.925725463,123.0954194146,121.4201797721,122.5799610631,75089134,0.0,1.0 +866,AAPL,2021-04-05 00:00:00+00:00,125.9,126.1601,123.07,123.87,88651175,124.800397039,125.0582253413,121.9951140873,122.7881269358,88651175,0.0,1.0 +867,AAPL,2021-04-06 00:00:00+00:00,126.21,127.13,125.65,126.5,80171253,125.1076895178,126.0196542936,124.5525805238,125.3951566754,80171253,0.0,1.0 +868,AAPL,2021-04-07 00:00:00+00:00,127.9,127.92,125.14,125.83,83466716,126.7829291603,126.8027544815,124.0470348329,124.7310084147,83466716,0.0,1.0 +869,AAPL,2021-04-08 00:00:00+00:00,130.36,130.39,128.52,128.95,88844591,129.2214436696,129.2511816514,127.3975141179,127.823758524,88844591,0.0,1.0 +870,AAPL,2021-04-09 00:00:00+00:00,132.995,133.04,129.47,129.8,106686703,131.8334297395,131.8780367122,128.3392168756,128.6663346756,106686703,0.0,1.0 +871,AAPL,2021-04-12 00:00:00+00:00,131.24,132.85,130.63,132.52,91419983,130.093757803,131.6896961607,129.489085506,131.3625783606,91419983,0.0,1.0 +872,AAPL,2021-04-13 00:00:00+00:00,134.43,134.66,131.93,132.44,91266545,133.2558965365,133.4838877305,130.7777313848,131.2832770758,91266545,0.0,1.0 +873,AAPL,2021-04-14 00:00:00+00:00,132.03,135.0,131.655,134.94,87222782,130.8768579909,133.8209181911,130.5051332181,133.7614422275,87222782,0.0,1.0 +874,AAPL,2021-04-15 00:00:00+00:00,134.5,135.0,133.64,133.82,89347102,133.3252851608,133.8209181911,132.4727963486,132.6512242395,89347102,0.0,1.0 +875,AAPL,2021-04-16 00:00:00+00:00,134.16,134.67,133.28,134.3,84922386,132.9882547001,133.4938003911,132.1159405667,133.1270319486,84922386,0.0,1.0 +876,AAPL,2021-04-19 00:00:00+00:00,134.84,135.47,133.34,133.51,94264215,133.6623156214,134.2868132396,132.1754165304,132.3439317607,94264215,0.0,1.0 +877,AAPL,2021-04-20 00:00:00+00:00,133.11,135.53,131.81,135.02,94812349,131.9474253364,134.3462892033,130.6587794576,133.8407435123,94812349,0.0,1.0 +878,AAPL,2021-04-21 00:00:00+00:00,133.5,133.75,131.3001,132.36,68847136,132.3340191001,132.5818356153,130.1533328932,131.2039757909,68847136,0.0,1.0 +879,AAPL,2021-04-22 00:00:00+00:00,131.94,134.15,131.41,133.04,84566456,130.7876440454,132.9783420395,130.2622730333,131.8780367122,84566456,0.0,1.0 +880,AAPL,2021-04-23 00:00:00+00:00,134.32,135.12,132.16,132.16,78756779,133.1468572698,133.9398701184,131.0057225788,131.0057225788,78756779,0.0,1.0 +881,AAPL,2021-04-26 00:00:00+00:00,134.72,135.06,133.56,134.83,66905069,133.5433636941,133.8803941547,132.3934950637,133.6524029608,66905069,0.0,1.0 +882,AAPL,2021-04-27 00:00:00+00:00,134.39,135.41,134.11,135.01,66015804,133.2162458941,134.227337276,132.9386913971,133.8308308517,66015804,0.0,1.0 +883,AAPL,2021-04-28 00:00:00+00:00,133.58,135.02,133.08,134.31,107760097,132.4133203849,133.8407435123,131.9176873546,133.1369446092,107760097,0.0,1.0 +884,AAPL,2021-04-29 00:00:00+00:00,133.48,137.07,132.45,136.47,151100953,132.3141937789,135.8728389367,131.2931897364,135.2780793003,151100953,0.0,1.0 +885,AAPL,2021-04-30 00:00:00+00:00,131.46,133.56,131.065,131.78,109839466,130.3118363363,132.3934950637,129.9202862424,130.6290414757,109839466,0.0,1.0 +886,AAPL,2021-05-03 00:00:00+00:00,132.54,134.07,131.83,132.04,75135100,131.3824036818,132.8990407547,130.6786047788,130.8867706515,75135100,0.0,1.0 +887,AAPL,2021-05-04 00:00:00+00:00,127.85,131.4899,126.7,131.19,137564718,126.7333658573,130.3414751915,125.5934098875,130.0441944999,137564718,0.0,1.0 +888,AAPL,2021-05-05 00:00:00+00:00,128.1,130.45,127.97,129.2,84000900,126.9811823724,129.310657615,126.8523177846,128.0715750392,84000900,0.0,1.0 +889,AAPL,2021-05-06 00:00:00+00:00,129.74,129.75,127.13,127.89,78128334,128.606858712,128.6167713726,126.0196542936,126.7730164997,78128334,0.0,1.0 +890,AAPL,2021-05-07 00:00:00+00:00,130.21,131.2582,129.475,130.85,78973273,129.2908322938,130.3316329267,128.5610207453,129.9263144585,78973273,0.22,1.0 +891,AAPL,2021-05-10 00:00:00+00:00,126.85,129.54,126.81,129.41,88071229,125.954550929,128.6255619026,125.9148332938,128.4964795879,88071229,0.0,1.0 +892,AAPL,2021-05-11 00:00:00+00:00,125.91,126.27,122.77,123.5,126142826,125.0211864996,125.3786452173,121.903352129,122.6281989731,126142826,0.0,1.0 +893,AAPL,2021-05-12 00:00:00+00:00,122.77,124.64,122.25,123.4,112172282,121.903352129,123.760151579,121.3870228701,122.5289048849,112172282,0.0,1.0 +894,AAPL,2021-05-13 00:00:00+00:00,124.97,126.15,124.26,124.58,105861339,124.0878220702,125.2594923114,123.3828340437,123.7005751261,105861339,0.0,1.0 +895,AAPL,2021-05-14 00:00:00+00:00,127.45,127.89,125.85,126.25,81917951,126.5503154585,126.9872094467,124.9616100467,125.3587863996,81917951,0.0,1.0 +896,AAPL,2021-05-17 00:00:00+00:00,126.27,126.93,125.17,126.82,74244624,125.3786452173,126.0339861996,124.2864102467,125.9247627026,74244624,0.0,1.0 +897,AAPL,2021-05-18 00:00:00+00:00,124.85,126.99,124.78,126.56,63342929,123.9686691643,126.0935626526,123.8991633025,125.6665980732,63342929,0.0,1.0 +898,AAPL,2021-05-19 00:00:00+00:00,124.69,124.915,122.86,123.16,92611989,123.8097986231,124.0332103217,121.9927168084,122.2905990731,92611989,0.0,1.0 +899,AAPL,2021-05-20 00:00:00+00:00,127.31,127.72,125.1,125.23,76857123,126.4113037349,126.8184094967,124.2169043849,124.3459866996,76857123,0.0,1.0 +900,AAPL,2021-05-21 00:00:00+00:00,125.43,128.0,125.21,127.82,79295436,124.5445748761,127.0964329438,124.326127882,126.917703585,79295436,0.0,1.0 +901,AAPL,2021-05-24 00:00:00+00:00,127.1,127.94,125.94,126.01,63092945,126.2027861496,127.0368564908,125.0509747261,125.1204805879,63092945,0.0,1.0 +902,AAPL,2021-05-25 00:00:00+00:00,126.9,128.32,126.32,127.82,72009482,126.0041979732,127.4141740261,125.4282922614,126.917703585,72009482,0.0,1.0 +903,AAPL,2021-05-26 00:00:00+00:00,126.85,127.39,126.42,126.955,56575920,125.954550929,126.4907390055,125.5275863496,126.0588097217,56575920,0.0,1.0 +904,AAPL,2021-05-27 00:00:00+00:00,125.28,127.64,125.08,126.44,94625601,124.3956337437,126.7389742261,124.1970455672,125.5474451673,94625601,0.0,1.0 +905,AAPL,2021-05-28 00:00:00+00:00,124.61,125.8,124.55,125.57,71311109,123.7303633525,124.9119630026,123.6707868996,124.6835865996,71311109,0.0,1.0 +906,AAPL,2021-06-01 00:00:00+00:00,124.28,125.35,123.94,125.08,67637118,123.4026928613,124.4651396055,123.0650929613,124.1970455672,67637118,0.0,1.0 +907,AAPL,2021-06-02 00:00:00+00:00,125.06,125.24,124.05,124.28,59278862,124.1771867496,124.3559161084,123.1743164584,123.4026928613,59278862,0.0,1.0 +908,AAPL,2021-06-03 00:00:00+00:00,123.54,124.85,123.13,124.68,76229170,122.6679166084,123.9686691643,122.2608108466,123.7998692143,76229170,0.0,1.0 +909,AAPL,2021-06-04 00:00:00+00:00,125.89,126.16,123.85,124.07,75169343,125.001327682,125.2694217202,122.9757282819,123.1941752761,75169343,0.0,1.0 +910,AAPL,2021-06-07 00:00:00+00:00,125.9,126.32,124.8321,126.17,71057550,125.0112570908,125.4282922614,123.9508955225,125.279351129,71057550,0.0,1.0 +911,AAPL,2021-06-08 00:00:00+00:00,126.74,128.46,126.2101,126.6,74403774,125.845327432,127.5531857497,125.3191680584,125.7063157085,74403774,0.0,1.0 +912,AAPL,2021-06-09 00:00:00+00:00,127.13,127.75,126.52,127.21,56877937,126.2325743761,126.8481977232,125.6268804379,126.3120096467,56877937,0.0,1.0 +913,AAPL,2021-06-10 00:00:00+00:00,126.11,128.19,125.94,127.02,71186421,125.2197746761,127.2850917114,125.0509747261,126.1233508791,71186421,0.0,1.0 +914,AAPL,2021-06-11 00:00:00+00:00,127.35,127.44,126.1,126.53,53522373,126.4510213702,126.5403860496,125.2098452673,125.6368098467,53522373,0.0,1.0 +915,AAPL,2021-06-14 00:00:00+00:00,130.48,130.54,127.07,127.82,96906490,129.5589263321,129.618502785,126.1729979232,126.917703585,96906490,0.0,1.0 +916,AAPL,2021-06-15 00:00:00+00:00,129.64,130.6,129.39,129.94,62746332,128.7248559909,129.6780792379,128.4766207703,129.0227382556,62746332,0.0,1.0 +917,AAPL,2021-06-16 00:00:00+00:00,130.15,130.89,128.461,130.37,91339351,129.2312558409,129.9660320938,127.5541786906,129.449702835,91339351,0.0,1.0 +918,AAPL,2021-06-17 00:00:00+00:00,131.79,132.55,129.65,129.8,96721669,130.859678888,131.6143139586,128.7347853997,128.883726532,96721669,0.0,1.0 +919,AAPL,2021-06-18 00:00:00+00:00,130.46,131.51,130.24,130.71,108953309,129.5390675144,130.5816554409,129.3206205203,129.787302735,108953309,0.0,1.0 +920,AAPL,2021-06-21 00:00:00+00:00,132.3,132.41,129.21,130.3,79663316,131.366078738,131.475302235,128.2978914114,129.3801969732,79663316,0.0,1.0 +921,AAPL,2021-06-22 00:00:00+00:00,133.98,134.08,131.62,132.13,74783618,133.0342194204,133.1335135086,130.690878938,131.197278788,74783618,0.0,1.0 +922,AAPL,2021-06-23 00:00:00+00:00,133.7,134.32,133.23,133.77,60214200,132.7561959733,133.3718193204,132.2895137586,132.8257018351,60214200,0.0,1.0 +923,AAPL,2021-06-24 00:00:00+00:00,133.41,134.64,132.93,134.45,68710998,132.4682431174,133.6895604027,131.9916314939,133.5009016351,68710998,0.0,1.0 +924,AAPL,2021-06-25 00:00:00+00:00,133.11,133.89,132.81,133.46,70783746,132.1703608527,132.944854741,131.872478588,132.5178901615,70783746,0.0,1.0 +925,AAPL,2021-06-28 00:00:00+00:00,134.78,135.245,133.35,133.41,62111303,133.8285721263,134.2902896366,132.4086666645,132.4682431174,62111303,0.0,1.0 +926,AAPL,2021-06-29 00:00:00+00:00,136.33,136.49,134.35,134.8,64556081,135.3676304939,135.5265010351,133.4016075468,133.8484309439,64556081,0.0,1.0 +927,AAPL,2021-06-30 00:00:00+00:00,136.96,137.41,135.87,136.17,63261393,135.9931832498,136.4400066469,134.9108776881,135.2087599528,63261393,0.0,1.0 +928,AAPL,2021-07-01 00:00:00+00:00,137.27,137.33,135.76,136.6,52485781,136.3009949234,136.3605713763,134.801654191,135.6357245322,52485781,0.0,1.0 +929,AAPL,2021-07-02 00:00:00+00:00,139.96,140.0,137.745,137.9,78945572,138.972005897,139.0117235323,136.7726418425,136.9265476793,78945572,0.0,1.0 +930,AAPL,2021-07-06 00:00:00+00:00,142.02,143.15,140.07,140.07,108181793,141.0174641147,142.1394873117,139.081229394,139.081229394,108181793,0.0,1.0 +931,AAPL,2021-07-07 00:00:00+00:00,144.57,144.89,142.66,143.535,104911589,143.5494633647,143.8672044471,141.6529462794,142.5217695514,104911589,0.0,1.0 +932,AAPL,2021-07-08 00:00:00+00:00,143.24,144.06,140.665,141.58,105575458,142.2288519911,143.0430635147,139.672029219,140.5805701264,105575458,0.0,1.0 +933,AAPL,2021-07-09 00:00:00+00:00,145.11,145.65,142.6522,142.75,99890800,144.0856514412,144.6218395177,141.6452013405,141.7423109588,99890800,0.0,1.0 +934,AAPL,2021-07-12 00:00:00+00:00,144.5,146.32,144.0,146.21,76299719,143.4799575029,145.2871099089,142.9834870617,145.1778864118,76299719,0.0,1.0 +935,AAPL,2021-07-13 00:00:00+00:00,145.64,147.46,143.63,144.03,100827099,144.6119101088,146.4190625148,142.6160989353,143.0132752882,100827099,0.0,1.0 +936,AAPL,2021-07-14 00:00:00+00:00,149.15,149.57,147.68,148.1,127050785,148.097132606,148.5141677766,146.6375095089,147.0545446795,127050785,0.0,1.0 +937,AAPL,2021-07-15 00:00:00+00:00,148.48,150.0,147.09,149.24,106820297,147.4318622148,148.941132356,146.0516743883,148.1864972854,106820297,0.0,1.0 +938,AAPL,2021-07-16 00:00:00+00:00,146.39,149.76,145.88,148.46,93251426,145.3566157706,148.7028265442,144.8502159206,147.4120033971,93251426,0.0,1.0 +939,AAPL,2021-07-19 00:00:00+00:00,142.45,144.07,141.67,143.75,121434571,141.4444286941,143.0529929235,140.6699348058,142.7352518412,121434571,0.0,1.0 +940,AAPL,2021-07-20 00:00:00+00:00,146.15,147.0997,142.96,143.46,96350036,145.1183099589,146.0613059148,141.9508285441,142.4472989853,96350036,0.0,1.0 +941,AAPL,2021-07-21 00:00:00+00:00,145.4,146.13,144.63,145.53,74993460,144.3736042971,145.0984511412,143.6090398176,144.5026866118,74993460,0.0,1.0 +942,AAPL,2021-07-22 00:00:00+00:00,146.8,148.195,145.81,145.935,77338156,145.7637215324,147.1488740633,144.7807100588,144.9048276691,77338156,0.0,1.0 +943,AAPL,2021-07-23 00:00:00+00:00,148.56,148.7177,146.92,147.55,71447416,147.5112974854,147.6678842625,145.8828744383,146.5084271942,71447416,0.0,1.0 +944,AAPL,2021-07-26 00:00:00+00:00,148.99,149.83,147.7,148.27,72434089,147.9382620648,148.772332406,146.6573683265,147.2233446295,72434089,0.0,1.0 +945,AAPL,2021-07-27 00:00:00+00:00,146.77,149.21,145.55,149.12,104818578,145.7339333059,148.1567090589,144.5225454294,148.0673443795,104818578,0.0,1.0 +946,AAPL,2021-07-28 00:00:00+00:00,144.98,146.97,142.54,144.81,118931191,143.9565691265,145.9325214824,141.5337933735,143.7877691765,118931191,0.0,1.0 +947,AAPL,2021-07-29 00:00:00+00:00,145.64,146.55,144.58,144.685,54323047,144.6119101088,145.5154863118,143.5593927735,143.6636515662,54323047,0.0,1.0 +948,AAPL,2021-07-30 00:00:00+00:00,145.86,146.33,144.11,144.38,70440626,144.830357103,145.2970393177,143.0927105588,143.3608045971,70440626,0.0,1.0 +949,AAPL,2021-08-02 00:00:00+00:00,145.52,146.95,145.25,146.36,62879961,144.492757203,145.9126626648,144.2246631647,145.3268275442,62879961,0.0,1.0 +950,AAPL,2021-08-03 00:00:00+00:00,147.36,148.045,145.18,145.81,64786618,146.3197684265,146.9999329309,144.155157303,144.7807100588,64786618,0.0,1.0 +951,AAPL,2021-08-04 00:00:00+00:00,146.95,147.79,146.28,147.27,56368271,145.9126626648,146.7467330059,145.2473922736,146.2304037471,56368271,0.0,1.0 +952,AAPL,2021-08-05 00:00:00+00:00,147.06,147.84,146.17,146.98,46397674,146.0218861618,146.7963800501,145.1381687765,145.9424508912,46397674,0.0,1.0 +953,AAPL,2021-08-06 00:00:00+00:00,146.14,147.11,145.63,146.35,54126813,145.3268275442,146.2914301356,144.8196653569,145.535659033,54126813,0.22,1.0 +954,AAPL,2021-08-09 00:00:00+00:00,146.09,146.7,145.52,146.2,48908689,145.2771057611,145.8837115145,144.7102774341,145.3864936838,48908689,0.0,1.0 +955,AAPL,2021-08-10 00:00:00+00:00,145.6,147.71,145.3,146.44,69023081,144.789832287,146.8880915324,144.4915015886,145.6251582425,69023081,0.0,1.0 +956,AAPL,2021-08-11 00:00:00+00:00,145.86,146.72,145.53,146.05,48493463,145.048385559,145.9036002277,144.7202217908,145.2373283346,48493463,0.0,1.0 +957,AAPL,2021-08-12 00:00:00+00:00,148.89,149.05,145.84,146.19,73779113,148.0615256128,148.2206353186,145.0284968458,145.3765493272,73779113,0.0,1.0 +958,AAPL,2021-08-13 00:00:00+00:00,149.1,149.4444,148.27,148.97,58846293,148.2703571016,148.6128407434,147.4449755027,148.1410804657,58846293,0.0,1.0 +959,AAPL,2021-08-16 00:00:00+00:00,151.12,151.19,146.47,148.535,103558782,150.2791171375,150.3487276338,145.6549913124,147.708500953,103558782,0.0,1.0 +960,AAPL,2021-08-17 00:00:00+00:00,150.19,151.68,149.09,150.23,92229735,149.3542919725,150.8360011078,148.260412745,149.3940693989,92229735,0.0,1.0 +961,AAPL,2021-08-18 00:00:00+00:00,146.36,150.72,146.15,149.8,86325990,145.5456033896,149.881342873,145.3367719008,148.9664620646,86325990,0.0,1.0 +962,AAPL,2021-08-19 00:00:00+00:00,146.7,148.0,144.5,145.03,86960310,145.8837115145,147.1764778742,143.6959530596,144.2230039601,86960310,0.0,1.0 +963,AAPL,2021-08-20 00:00:00+00:00,148.19,148.5,146.78,147.44,60549630,147.3654206498,147.6736957048,145.9632663674,146.6195939039,60549630,0.0,1.0 +964,AAPL,2021-08-23 00:00:00+00:00,149.71,150.19,147.89,148.31,60131810,148.876962855,149.3542919725,147.0670899514,147.4847529292,60131810,0.0,1.0 +965,AAPL,2021-08-24 00:00:00+00:00,149.62,150.86,149.15,149.45,48606428,148.7874636455,150.0205638655,148.3200788847,148.6184095831,48606428,0.0,1.0 +966,AAPL,2021-08-25 00:00:00+00:00,148.36,150.32,147.8,149.81,58991297,147.5344747123,149.4835686084,146.9775907419,148.9764064212,58991297,0.0,1.0 +967,AAPL,2021-08-26 00:00:00+00:00,147.54,149.12,147.51,148.35,48597195,146.71903747,148.2902458149,146.6892044001,147.5245303557,48597195,0.0,1.0 +968,AAPL,2021-08-27 00:00:00+00:00,148.6,148.75,146.83,147.48,55802388,147.773139271,147.9223046202,146.0129881505,146.6593713303,55802388,0.0,1.0 +969,AAPL,2021-08-30 00:00:00+00:00,153.12,153.49,148.61,149.0,90956723,152.2679884601,152.6359296548,147.7830836276,148.1709135355,90956723,0.0,1.0 +970,AAPL,2021-08-31 00:00:00+00:00,151.83,152.8,151.29,152.66,86453117,150.985166457,151.9497690485,150.4481711999,151.8105480559,86453117,0.0,1.0 +971,AAPL,2021-09-01 00:00:00+00:00,152.51,154.98,152.34,152.83,80313711,151.6613827067,154.1176387902,151.4923286443,151.9796021183,80313711,0.0,1.0 +972,AAPL,2021-09-02 00:00:00+00:00,153.65,154.72,152.4,153.87,71171317,152.7950393606,153.8590855182,151.551994784,153.0138152061,71171317,0.0,1.0 +973,AAPL,2021-09-03 00:00:00+00:00,154.3,154.63,153.09,153.76,57866066,153.4414225405,153.7695863087,152.2381553903,152.9044272833,57866066,0.0,1.0 +974,AAPL,2021-09-07 00:00:00+00:00,156.69,157.26,154.39,154.97,82278261,155.818123771,156.3849520979,153.53092175,154.1076944335,82278261,0.0,1.0 +975,AAPL,2021-09-08 00:00:00+00:00,155.11,157.04,153.975,156.98,74420207,154.2469154261,156.1661762525,153.1182309505,156.1065101128,74420207,0.0,1.0 +976,AAPL,2021-09-09 00:00:00+00:00,154.07,156.11,153.95,155.49,57305730,153.2127023384,155.2413510874,153.093370059,154.6248009774,57305730,0.0,1.0 +977,AAPL,2021-09-10 00:00:00+00:00,148.97,155.48,148.7,155.0,140893235,148.1410804657,154.6148566208,147.8725828371,154.1375275034,140893235,0.0,1.0 +978,AAPL,2021-09-13 00:00:00+00:00,149.55,151.42,148.75,150.63,102404329,148.7178531492,150.5774478359,147.9223046202,149.7918436634,102404329,0.0,1.0 +979,AAPL,2021-09-14 00:00:00+00:00,148.12,151.07,146.91,150.35,109296295,147.2958101535,150.2293953544,146.0925430034,149.5134016783,109296295,0.0,1.0 +980,AAPL,2021-09-15 00:00:00+00:00,149.03,149.44,146.37,148.56,83281315,148.2007466053,148.6084652265,145.5555477463,147.7333618445,83281315,0.0,1.0 +981,AAPL,2021-09-16 00:00:00+00:00,148.79,148.97,147.221,148.44,68034149,147.9620820466,148.1410804657,146.401812494,147.6140295652,68034149,0.0,1.0 +982,AAPL,2021-09-17 00:00:00+00:00,146.06,148.82,145.76,148.82,129868824,145.2472726912,147.9919151165,144.9489419929,147.9919151165,129868824,0.0,1.0 +983,AAPL,2021-09-20 00:00:00+00:00,142.94,144.84,141.27,143.8,123478863,142.144633428,144.0340611844,140.4839258736,142.9998480967,123478863,0.0,1.0 +984,AAPL,2021-09-21 00:00:00+00:00,143.43,144.6,142.78,143.93,75833962,142.631906902,143.7953966257,141.9855237221,143.1291247327,75833962,0.0,1.0 +985,AAPL,2021-09-22 00:00:00+00:00,145.85,146.43,143.7001,144.45,76404341,145.0384412024,145.6152138859,142.9005039741,143.6462312765,76404341,0.0,1.0 +986,AAPL,2021-09-23 00:00:00+00:00,146.83,147.08,145.64,146.65,64838170,146.0129881505,146.2615970658,144.8296097135,145.8339897314,64838170,0.0,1.0 +987,AAPL,2021-09-24 00:00:00+00:00,146.92,147.4701,145.56,145.66,53477869,146.10248736,146.6495264173,144.7500548606,144.8494984267,53477869,0.0,1.0 +988,AAPL,2021-09-27 00:00:00+00:00,145.37,145.96,143.82,145.47,74150729,144.5611120849,145.1478291251,143.0197368099,144.6605556511,74150729,0.0,1.0 +989,AAPL,2021-09-28 00:00:00+00:00,141.91,144.75,141.69,143.25,108972340,141.1203646968,143.9445619749,140.9015888513,142.452908483,108972340,0.0,1.0 +990,AAPL,2021-09-29 00:00:00+00:00,142.83,144.45,142.03,142.47,74602044,142.0352455052,143.6462312765,141.2396969762,141.6772486671,74602044,0.0,1.0 +991,AAPL,2021-09-30 00:00:00+00:00,141.5,144.378,141.28,143.66,89056664,140.7126460757,143.5746319089,140.4938702302,142.8606271041,89056664,0.0,1.0 +992,AAPL,2021-10-01 00:00:00+00:00,142.65,142.92,139.1101,141.9,94639581,141.8562470862,142.1247447147,138.3360442887,141.1104203402,94639581,0.0,1.0 +993,AAPL,2021-10-04 00:00:00+00:00,139.14,142.21,138.27,141.76,98322008,138.365777915,141.4186953952,137.5006188896,140.9711993476,98322008,0.0,1.0 +994,AAPL,2021-10-05 00:00:00+00:00,141.11,142.24,139.36,139.49,80861062,140.3248161678,141.448528465,138.5845537605,138.7138303964,80861062,0.0,1.0 +995,AAPL,2021-10-06 00:00:00+00:00,142.0,142.15,138.37,139.47,83221119,141.2098639063,141.3590292555,137.6000624558,138.6939416832,83221119,0.0,1.0 +996,AAPL,2021-10-07 00:00:00+00:00,143.29,144.215,142.72,143.06,61732656,142.4926859094,143.4125388961,141.9258575825,142.2639657073,61732656,0.0,1.0 +997,AAPL,2021-10-08 00:00:00+00:00,142.9,144.1781,142.56,144.03,58773155,142.1048560015,143.3758442202,141.7667478767,143.2285682988,58773155,0.0,1.0 +998,AAPL,2021-10-11 00:00:00+00:00,142.81,144.81,141.81,142.27,64452219,142.015356792,144.0042281146,141.0209211307,141.4783615349,64452219,0.0,1.0 +999,AAPL,2021-10-12 00:00:00+00:00,141.51,143.25,141.0401,143.23,73035859,140.7225904323,142.452908483,140.255305115,142.4330197697,73035859,0.0,1.0 +1000,AAPL,2021-10-13 00:00:00+00:00,140.91,141.4,139.2,141.235,78762721,140.1259290355,140.6132025095,138.4254440546,140.4491206254,78762721,0.0,1.0 +1001,AAPL,2021-10-14 00:00:00+00:00,143.76,143.88,141.51,142.11,69907100,142.9600706702,143.0794029496,140.7225904323,141.3192518291,69907100,0.0,1.0 +1002,AAPL,2021-10-15 00:00:00+00:00,144.84,144.895,143.51,143.77,67940334,144.0340611844,144.0887551458,142.7114617549,142.9700150268,67940334,0.0,1.0 +1003,AAPL,2021-10-18 00:00:00+00:00,146.55,146.84,143.16,143.445,85589175,145.7345461653,146.0229325071,142.3634092734,142.6468234369,85589175,0.0,1.0 +1004,AAPL,2021-10-19 00:00:00+00:00,148.76,149.17,146.55,147.01,76378894,147.9322489768,148.3399675979,145.7345461653,146.1919865695,76378894,0.0,1.0 +1005,AAPL,2021-10-20 00:00:00+00:00,149.26,149.7539,148.12,148.7,58418788,148.4294668074,148.9206185806,147.2958101535,147.8725828371,58418788,0.0,1.0 +1006,AAPL,2021-10-21 00:00:00+00:00,149.48,149.64,147.87,148.81,61420990,148.6482426529,148.8073523587,147.0472012382,147.9819707599,61420990,0.0,1.0 +1007,AAPL,2021-10-22 00:00:00+00:00,148.69,150.18,148.64,149.69,58883443,147.8626384805,149.3443476159,147.8129166974,148.8570741418,58883443,0.0,1.0 +1008,AAPL,2021-10-25 00:00:00+00:00,148.64,149.37,147.6211,148.68,50720556,147.8129166974,148.5388547302,146.7996862021,147.8526941239,50720556,0.0,1.0 +1009,AAPL,2021-10-26 00:00:00+00:00,149.32,150.84,149.0101,149.33,60893395,148.4891329471,150.0006751523,148.1809573357,148.4990773037,60893395,0.0,1.0 +1010,AAPL,2021-10-27 00:00:00+00:00,148.85,149.73,148.49,149.36,56094929,148.0217481863,148.8968515683,147.6637513482,148.5289103736,56094929,0.0,1.0 +1011,AAPL,2021-10-28 00:00:00+00:00,152.57,153.165,149.72,149.82,100077888,151.7210488464,152.3127380649,148.8869072116,148.9863507778,100077888,0.0,1.0 +1012,AAPL,2021-10-29 00:00:00+00:00,149.8,149.94,146.4128,147.215,124953168,148.9664620646,149.1056830571,145.5981095926,146.3958458801,124953168,0.0,1.0 +1013,AAPL,2021-11-01 00:00:00+00:00,148.96,149.7,147.8,148.985,73396551,148.1311361091,148.8670184984,146.9775907419,148.1559970006,73396551,0.0,1.0 +1014,AAPL,2021-11-02 00:00:00+00:00,150.02,151.57,148.65,148.66,68922374,149.18523791,150.7266131851,147.822861054,147.8328054107,68922374,0.0,1.0 +1015,AAPL,2021-11-03 00:00:00+00:00,151.49,151.97,149.82,150.39,54511534,150.6470583322,151.1243874496,148.9863507778,149.5531791047,54511534,0.0,1.0 +1016,AAPL,2021-11-04 00:00:00+00:00,150.96,152.43,150.64,151.58,60394616,150.1200074317,151.5818278538,149.8017880201,150.7365575417,60394616,0.0,1.0 +1017,AAPL,2021-11-05 00:00:00+00:00,151.28,152.2,150.06,151.89,65463883,150.6570026888,151.573213969,149.4420268606,151.2644906029,65463883,0.22,1.0 +1018,AAPL,2021-11-08 00:00:00+00:00,150.44,151.57,150.16,151.41,55020868,149.8204619547,150.9458084184,149.5416150433,150.7864673262,55020868,0.0,1.0 +1019,AAPL,2021-11-09 00:00:00+00:00,150.81,151.428,150.0601,150.2,56573449,150.1889382304,150.8043931991,149.4421264488,149.5814503163,56573449,0.0,1.0 +1020,AAPL,2021-11-10 00:00:00+00:00,147.92,150.13,147.85,150.02,65187092,147.3108397523,149.5117385885,147.2411280244,149.4021915876,65187092,0.0,1.0 +1021,AAPL,2021-11-11 00:00:00+00:00,147.87,149.43,147.681,148.96,40999950,147.261045661,148.8146213101,147.0728239958,148.3465568517,40999950,0.0,1.0 +1022,AAPL,2021-11-12 00:00:00+00:00,149.99,150.4,147.48,148.43,63245197,149.3723151328,149.7806266816,146.8726517487,147.8187394837,63245197,0.0,1.0 +1023,AAPL,2021-11-15 00:00:00+00:00,150.0,151.88,149.43,150.37,59222803,149.3822739511,151.2545317846,148.8146213101,149.7507502268,59222803,0.0,1.0 +1024,AAPL,2021-11-16 00:00:00+00:00,151.0,151.488,149.34,149.94,59256210,150.3781557774,150.8641461087,148.7249919457,149.3225210415,59256210,0.0,1.0 +1025,AAPL,2021-11-17 00:00:00+00:00,153.49,155.0,150.99,150.995,88807000,152.857901525,154.3616830828,150.3681969591,150.3731763683,88807000,0.0,1.0 +1026,AAPL,2021-11-18 00:00:00+00:00,157.87,158.67,153.05,153.71,137827673,157.2198639244,158.0165693854,152.4197135214,153.0769955268,137827673,0.0,1.0 +1027,AAPL,2021-11-19 00:00:00+00:00,160.55,161.02,156.5328,157.65,117305597,159.888827219,160.3568916773,155.8881707462,157.0007699226,117305597,0.0,1.0 +1028,AAPL,2021-11-22 00:00:00+00:00,161.02,165.7,161.0,161.68,117467889,160.3568916773,165.0176186246,160.3369740408,161.0141736827,117467889,0.0,1.0 +1029,AAPL,2021-11-23 00:00:00+00:00,161.41,161.8,159.0601,161.12,96041899,160.7452855896,161.1336795019,158.4050628859,160.45647986,96041899,0.0,1.0 +1030,AAPL,2021-11-24 00:00:00+00:00,161.94,162.14,159.64,160.75,69463623,161.2731029576,161.4722793228,158.982574757,160.0880035842,69463623,0.0,1.0 +1031,AAPL,2021-11-26 00:00:00+00:00,156.81,160.45,156.36,159.565,76959752,156.1642291884,159.7892390363,155.7160823666,158.90788362,76959752,0.0,1.0 +1032,AAPL,2021-11-29 00:00:00+00:00,160.24,161.19,158.7901,159.37,88748217,159.5801038528,160.5261915878,158.1361747928,158.7136866639,88748217,0.0,1.0 +1033,AAPL,2021-11-30 00:00:00+00:00,165.3,165.52,159.92,159.985,174048056,164.6192658941,164.8383598959,159.2614216684,159.3261539871,174048056,0.0,1.0 +1034,AAPL,2021-12-01 00:00:00+00:00,164.77,170.3,164.53,167.48,152423003,164.0914485261,169.5986750258,163.8524368878,166.7902882755,152423003,0.0,1.0 +1035,AAPL,2021-12-02 00:00:00+00:00,163.76,164.2,157.8,158.735,136739174,163.0856078815,163.5237958851,157.1501521965,158.0813017042,136739174,0.0,1.0 +1036,AAPL,2021-12-03 00:00:00+00:00,161.84,164.96,159.72,164.02,118023116,161.1735147749,164.2806660731,159.0622453031,163.3445371564,118023116,0.0,1.0 +1037,AAPL,2021-12-06 00:00:00+00:00,165.32,167.8799,164.28,164.29,107496982,164.6391835306,167.1885414179,163.6034664312,163.6134252495,107496982,0.0,1.0 +1038,AAPL,2021-12-07 00:00:00+00:00,171.18,171.58,168.34,169.08,120405352,170.475051033,170.8734037635,167.6467466462,168.3836991976,120405352,0.0,1.0 +1039,AAPL,2021-12-08 00:00:00+00:00,175.08,175.96,170.7,172.125,116998901,174.3589901557,175.2353661629,169.9970277563,171.4161593589,116998901,0.0,1.0 +1040,AAPL,2021-12-09 00:00:00+00:00,174.56,176.75,173.92,174.91,108923739,173.841131606,176.0221128057,173.2037672371,174.1896902452,108923739,0.0,1.0 +1041,AAPL,2021-12-10 00:00:00+00:00,179.45,179.63,174.69,175.205,115402731,178.7109937368,178.8902524655,173.9705962434,174.483475384,115402731,0.0,1.0 +1042,AAPL,2021-12-13 00:00:00+00:00,175.74,182.13,175.53,181.115,153237019,175.0162721611,181.3799570314,174.8071369775,180.3691369777,153237019,0.0,1.0 +1043,AAPL,2021-12-14 00:00:00+00:00,174.33,177.74,172.21,175.25,139380382,173.6120787859,177.0080358138,171.5008093141,174.5282900662,139380382,0.0,1.0 +1044,AAPL,2021-12-15 00:00:00+00:00,179.3,179.5,172.3108,175.11,131063257,178.5616114628,178.7607878281,171.6011942022,174.3888666105,131063257,0.0,1.0 +1045,AAPL,2021-12-16 00:00:00+00:00,172.26,181.14,170.75,179.28,150185843,171.5506034054,180.3940340233,170.0468218476,178.5416938263,150185843,0.0,1.0 +1046,AAPL,2021-12-17 00:00:00+00:00,171.14,173.47,169.69,169.93,195923441,170.4352157599,172.7556204153,168.9911871117,169.23019875,195923441,0.0,1.0 +1047,AAPL,2021-12-20 00:00:00+00:00,169.75,170.58,167.46,168.28,107499114,169.0509400213,169.8775219372,166.770370639,167.5869937366,107499114,0.0,1.0 +1048,AAPL,2021-12-21 00:00:00+00:00,172.99,173.2,169.12,171.555,91185905,172.2775971386,172.4867323222,168.4235344707,170.8485067178,91185905,0.0,1.0 +1049,AAPL,2021-12-22 00:00:00+00:00,175.64,175.86,172.15,173.04,92135303,174.9166839784,175.1357779802,171.4410564045,172.32739123,92135303,0.0,1.0 +1050,AAPL,2021-12-23 00:00:00+00:00,176.28,176.8499,175.27,175.85,68356567,175.5540483473,176.1216014001,174.5482077027,175.125819162,68356567,0.0,1.0 +1051,AAPL,2021-12-27 00:00:00+00:00,180.33,180.42,177.07,177.085,74919582,179.587369744,179.6769991083,176.3407949901,176.3557332175,74919582,0.0,1.0 +1052,AAPL,2021-12-28 00:00:00+00:00,179.29,181.33,178.53,180.16,79144339,178.5516526446,180.5832515703,177.7947824566,179.4180698335,79144339,0.0,1.0 +1053,AAPL,2021-12-29 00:00:00+00:00,179.38,180.63,178.14,179.33,62348931,178.641282009,179.8861342919,177.4063885443,178.5914879176,62348931,0.0,1.0 +1054,AAPL,2021-12-30 00:00:00+00:00,178.2,180.57,178.09,179.47,59773014,177.4661414539,179.8263813823,177.356594453,178.7309113733,59773014,0.0,1.0 +1055,AAPL,2021-12-31 00:00:00+00:00,177.57,179.23,177.26,178.085,61661433,176.8387359033,178.491899735,176.5300125371,177.3516150438,61661433,0.0,1.0 +1056,AAPL,2022-01-03 00:00:00+00:00,182.01,182.88,177.71,177.83,104701220,181.2604512122,182.1268684011,176.978159359,177.0976651781,104701220,0.0,1.0 +1057,AAPL,2022-01-04 00:00:00+00:00,179.7,182.94,179.12,182.63,99310438,178.9599641934,182.1866213107,178.3823527341,181.8778979446,99310438,0.0,1.0 +1058,AAPL,2022-01-05 00:00:00+00:00,174.92,180.17,174.64,179.61,94537602,174.1996490635,179.4280286518,173.9208021521,178.870334829,94537602,0.0,1.0 +1059,AAPL,2022-01-06 00:00:00+00:00,172.0,175.3,171.64,172.7,96903955,171.2916741306,174.5780841575,170.9331566731,171.988791409,96903955,0.0,1.0 +1060,AAPL,2022-01-07 00:00:00+00:00,172.17,174.14,171.03,172.89,86709147,171.460974041,173.4228612389,170.325668759,172.178008956,86709147,0.0,1.0 +1061,AAPL,2022-01-10 00:00:00+00:00,172.19,172.5,168.17,169.08,106765552,171.4808916776,171.7896150437,167.4774467357,168.3836991976,106765552,0.0,1.0 +1062,AAPL,2022-01-11 00:00:00+00:00,175.08,175.18,170.82,172.32,75937685,174.3589901557,174.4585783383,170.1165335755,171.610356315,75937685,0.0,1.0 +1063,AAPL,2022-01-12 00:00:00+00:00,175.53,177.18,174.82,176.12,74805173,174.8071369775,176.450341991,174.1000608808,175.3947072551,74805173,0.0,1.0 +1064,AAPL,2022-01-13 00:00:00+00:00,172.19,176.62,171.79,175.78,84505760,171.4808916776,175.8926481683,171.082538947,175.0561074341,84505760,0.0,1.0 +1065,AAPL,2022-01-14 00:00:00+00:00,173.07,173.78,171.09,171.34,80440780,172.3572676847,173.0643437814,170.3854216686,170.6343921252,80440780,0.0,1.0 +1066,AAPL,2022-01-18 00:00:00+00:00,169.8,172.54,169.405,171.51,90500236,169.1007341126,171.8294503168,168.7073607912,170.8036920357,90500236,0.0,1.0 +1067,AAPL,2022-01-19 00:00:00+00:00,166.23,171.08,165.94,170.0,92914792,165.5454359926,170.3754628503,165.2566302629,169.2999104779,92914792,0.0,1.0 +1068,AAPL,2022-01-20 00:00:00+00:00,164.51,169.68,164.18,166.98,91420515,163.8325192513,168.9812282934,163.5038782486,166.2923473623,91420515,0.0,1.0 +1069,AAPL,2022-01-21 00:00:00+00:00,162.41,166.33,162.3,164.415,122848858,161.741167416,165.6450241752,161.6316204151,163.7379104778,122848858,0.0,1.0 +1070,AAPL,2022-01-24 00:00:00+00:00,161.62,162.3,154.7,160.02,162706686,160.9544207731,161.6316204151,154.0629185349,159.361009851,162706686,0.0,1.0 +1071,AAPL,2022-01-25 00:00:00+00:00,159.78,162.76,157.02,158.98,115798367,159.1219982127,162.0897260552,156.373364372,158.3252927516,115798367,0.0,1.0 +1072,AAPL,2022-01-26 00:00:00+00:00,159.69,164.3894,157.82,163.5,108275308,159.0323688483,163.712415903,157.1700698331,162.8266786067,108275308,0.0,1.0 +1073,AAPL,2022-01-27 00:00:00+00:00,159.22,163.84,158.28,162.45,121954638,158.5643043899,163.1652784276,157.6281754732,161.781002689,121954638,0.0,1.0 +1074,AAPL,2022-01-28 00:00:00+00:00,170.33,170.35,162.8,165.71,179935660,169.6285514806,169.6484691171,162.1295613282,165.0275774429,179935660,0.0,1.0 +1075,AAPL,2022-01-31 00:00:00+00:00,174.78,175.0,169.51,170.16,115541590,174.0602256078,174.2793196096,168.811928383,169.4592515701,115541590,0.0,1.0 +1076,AAPL,2022-02-01 00:00:00+00:00,174.61,174.84,172.31,174.01,86213911,173.8909256973,174.1199785174,171.6003974967,173.2933966015,86213911,0.0,1.0 +1077,AAPL,2022-02-02 00:00:00+00:00,175.84,175.88,173.33,174.745,84914256,175.1158603437,175.1556956168,172.6161969596,174.0253697439,84914256,0.0,1.0 +1078,AAPL,2022-02-03 00:00:00+00:00,172.9,176.2399,172.12,174.48,89418074,172.1879677743,175.5141134861,171.4111799497,173.7614610599,89418074,0.0,1.0 +1079,AAPL,2022-02-04 00:00:00+00:00,172.39,174.1,170.68,171.68,82465400,171.8991620446,173.6042932419,170.1940308474,171.1911835943,82465400,0.22,1.0 +1080,AAPL,2022-02-07 00:00:00+00:00,171.66,173.9458,170.95,172.86,77251204,171.1712405394,173.4505322883,170.463262089,172.3678238357,77251204,0.0,1.0 +1081,AAPL,2022-02-08 00:00:00+00:00,174.83,175.35,171.43,171.73,74829217,174.3322147472,174.8507341756,170.9418954076,171.2410412316,74829217,0.0,1.0 +1082,AAPL,2022-02-09 00:00:00+00:00,176.28,176.65,174.9,176.05,71285038,175.7780862302,176.1470327466,174.4020154394,175.5487410984,71285038,0.0,1.0 +1083,AAPL,2022-02-10 00:00:00+00:00,172.12,175.48,171.55,174.14,90865899,171.629930803,174.9803640327,171.0615537372,173.6441793518,90865899,0.0,1.0 +1084,AAPL,2022-02-11 00:00:00+00:00,168.64,173.08,168.04,172.33,98670687,168.1598392436,172.58719744,167.5615475954,171.8393328798,98670687,0.0,1.0 +1085,AAPL,2022-02-14 00:00:00+00:00,168.88,169.58,166.56,167.37,86185530,168.3991559029,169.0971628257,166.08576153,166.893455255,86185530,0.0,1.0 +1086,AAPL,2022-02-15 00:00:00+00:00,172.79,172.95,170.25,170.97,64286320,172.2980231434,172.4575675829,169.7652551662,170.483205144,64286320,0.0,1.0 +1087,AAPL,2022-02-16 00:00:00+00:00,172.55,173.34,170.05,171.85,61177398,172.0587064841,172.8464571542,169.5658246168,171.3606995613,61177398,0.0,1.0 +1088,AAPL,2022-02-17 00:00:00+00:00,168.88,171.91,168.47,171.03,69589344,168.3991559029,171.4205287261,167.9903232766,170.5430343088,69589344,0.0,1.0 +1089,AAPL,2022-02-18 00:00:00+00:00,167.3,170.5413,166.19,169.82,82772674,166.8236545627,170.0557257614,165.7168150136,169.336479485,82772674,0.0,1.0 +1090,AAPL,2022-02-22 00:00:00+00:00,164.32,166.69,162.15,164.98,90457637,163.8521393768,166.2153913871,161.688317916,164.5102601898,90457637,0.0,1.0 +1091,AAPL,2022-02-23 00:00:00+00:00,160.07,166.15,159.75,165.54,90009247,159.6142402024,165.6769289037,159.2951513233,165.0686657281,90009247,0.0,1.0 +1092,AAPL,2022-02-24 00:00:00+00:00,162.74,162.85,152.0,152.58,141147540,162.2766380367,162.3863248388,151.5672175346,152.1455661278,141147540,0.0,1.0 +1093,AAPL,2022-02-25 00:00:00+00:00,164.85,165.12,160.8738,163.84,91974222,164.3806303327,164.6498615744,160.4157515803,163.3735060583,91974222,0.0,1.0 +1094,AAPL,2022-02-28 00:00:00+00:00,165.12,165.42,162.43,163.06,95056629,164.6498615744,164.9490073985,161.9675206851,162.5957269157,95056629,0.0,1.0 +1095,AAPL,2022-03-01 00:00:00+00:00,163.2,166.6,161.97,164.695,83474425,162.7353283003,166.1256476399,161.5088304215,164.2260716569,83474425,0.0,1.0 +1096,AAPL,2022-03-02 00:00:00+00:00,166.56,167.36,162.95,164.39,79724750,166.08576153,166.8834837275,162.4860401135,163.9219400691,79724750,0.0,1.0 +1097,AAPL,2022-03-03 00:00:00+00:00,166.23,168.91,165.55,168.47,76678441,165.7567011235,168.4290704853,165.0786372556,167.9903232766,76678441,0.0,1.0 +1098,AAPL,2022-03-04 00:00:00+00:00,163.17,165.55,162.1,164.49,83819592,162.7054137179,165.0786372556,161.6384602786,164.0216553438,83819592,0.0,1.0 +1099,AAPL,2022-03-07 00:00:00+00:00,159.3,165.02,159.04,163.36,96418845,158.8464325872,164.5501462997,158.587172873,162.8948727398,96418845,0.0,1.0 +1100,AAPL,2022-03-08 00:00:00+00:00,157.44,162.88,155.8,158.82,131148280,156.9917284779,162.4162394212,155.3563979729,158.3677992687,131148280,0.0,1.0 +1101,AAPL,2022-03-09 00:00:00+00:00,162.95,163.41,159.41,161.475,91454905,162.4860401135,162.9447303771,158.9561193894,161.0152398118,91454905,0.0,1.0 +1102,AAPL,2022-03-10 00:00:00+00:00,158.52,160.39,155.98,160.2,105342033,158.0686534446,159.9333290814,155.5358854674,159.7438700595,105342033,0.0,1.0 +1103,AAPL,2022-03-11 00:00:00+00:00,154.73,159.28,154.5,158.93,96970102,154.2894445337,158.8264895323,154.0600994019,158.4774860708,96970102,0.0,1.0 +1104,AAPL,2022-03-14 00:00:00+00:00,150.62,154.12,150.1,151.45,108732111,150.1911467438,153.6811813581,149.6726273154,151.0187835237,108732111,0.0,1.0 +1105,AAPL,2022-03-15 00:00:00+00:00,155.09,155.57,150.38,150.9,92964302,154.6484195226,155.1270528411,149.9518300845,150.4703495129,92964302,0.0,1.0 +1106,AAPL,2022-03-16 00:00:00+00:00,159.59,160.0,154.46,157.05,102300157,159.1356068838,159.5444395101,154.020213292,156.6028389066,102300157,0.0,1.0 +1107,AAPL,2022-03-17 00:00:00+00:00,160.62,161.0,157.63,158.61,75615376,160.1626742132,160.541592257,157.1811874998,158.1583971918,75615376,0.0,1.0 +1108,AAPL,2022-03-18 00:00:00+00:00,163.98,164.48,159.76,160.51,122055535,163.5131074429,164.0116838163,159.3051228508,160.052987411,122055535,0.0,1.0 +1109,AAPL,2022-03-21 00:00:00+00:00,165.38,166.35,163.015,163.51,89029269,164.9091212886,165.8763594531,162.5508550421,163.0444456518,89029269,0.0,1.0 +1110,AAPL,2022-03-22 00:00:00+00:00,168.82,169.42,164.91,165.51,80979755,168.3393267381,168.9376183862,164.4404594975,165.0387511457,80979755,0.0,1.0 +1111,AAPL,2022-03-23 00:00:00+00:00,170.21,172.64,167.65,167.99,98062674,169.7253690563,172.1484502314,167.1726580241,167.5116899581,98062674,0.0,1.0 +1112,AAPL,2022-03-24 00:00:00+00:00,174.07,174.14,170.21,171.06,90131418,173.5743786595,173.6441793518,169.7253690563,170.5729488912,90131418,0.0,1.0 +1113,AAPL,2022-03-25 00:00:00+00:00,174.72,175.28,172.75,173.88,80281664,174.222527945,174.7809334833,172.2581370335,173.3849196376,80281664,0.0,1.0 +1114,AAPL,2022-03-28 00:00:00+00:00,175.6,175.73,172.0,172.17,90371916,175.1000223623,175.2296522194,171.5102724733,171.6797884403,90371916,0.0,1.0 +1115,AAPL,2022-03-29 00:00:00+00:00,178.96,179.01,176.34,176.69,100589440,178.450455592,178.5003132294,175.837915395,176.1869188565,100589440,0.0,1.0 +1116,AAPL,2022-03-30 00:00:00+00:00,177.77,179.61,176.7,178.55,92633154,177.2638438232,179.0986048775,176.1968903839,178.0416229658,92633154,0.0,1.0 +1117,AAPL,2022-03-31 00:00:00+00:00,174.61,178.03,174.4,177.84,103049285,174.1128411428,177.5231035374,173.903439066,177.3336445154,103049285,0.0,1.0 +1118,AAPL,2022-04-01 00:00:00+00:00,174.31,174.88,171.94,174.03,78751328,173.8136953187,174.3820723845,171.4504433085,173.5344925496,78751328,0.0,1.0 +1119,AAPL,2022-04-04 00:00:00+00:00,178.44,178.49,174.44,174.57,76545983,177.9319361636,177.9817938009,173.9433251758,174.072955033,76545983,0.0,1.0 +1120,AAPL,2022-04-05 00:00:00+00:00,175.06,178.3,174.415,177.5,70902999,174.5615598789,177.792334779,173.9183963572,176.9946125815,70902999,0.0,1.0 +1121,AAPL,2022-04-06 00:00:00+00:00,171.83,173.63,170.13,172.36,89058782,171.3407565063,173.1356314508,169.6455968365,171.8692474622,89058782,0.0,1.0 +1122,AAPL,2022-04-07 00:00:00+00:00,172.14,173.36,169.85,171.16,77594650,171.6498738579,172.8664002092,169.3663940674,170.6726641659,77594650,0.0,1.0 +1123,AAPL,2022-04-08 00:00:00+00:00,170.09,171.78,169.2,171.78,76575508,169.6057107267,171.290898869,168.7182447819,171.290898869,76575508,0.0,1.0 +1124,AAPL,2022-04-11 00:00:00+00:00,165.75,169.03,165.5,168.71,72246706,165.278067805,168.5487288149,165.0287796182,168.2296399359,72246706,0.0,1.0 +1125,AAPL,2022-04-12 00:00:00+00:00,167.66,169.87,166.64,168.02,79265181,167.1826295516,169.3863371223,166.1655337497,167.5416045405,79265181,0.0,1.0 +1126,AAPL,2022-04-13 00:00:00+00:00,170.4,171.04,166.77,167.39,70618925,169.9148280782,170.5530058363,166.2951636068,166.9133983099,70618925,0.0,1.0 +1127,AAPL,2022-04-14 00:00:00+00:00,165.29,171.27,165.04,170.62,75329376,164.8193775414,170.7823509681,164.5700893546,170.1342016825,75329376,0.0,1.0 +1128,AAPL,2022-04-18 00:00:00+00:00,165.07,166.5984,163.57,163.92,69023941,164.600003937,166.1240521955,163.1042748166,163.4532782781,69023941,0.0,1.0 +1129,AAPL,2022-04-19 00:00:00+00:00,167.4,167.82,163.91,165.02,67723833,166.9233698374,167.3421739911,163.4433067506,164.5501462997,67723833,0.0,1.0 +1130,AAPL,2022-04-20 00:00:00+00:00,167.23,168.88,166.1,168.76,67718110,166.7538538704,168.3991559029,165.6270712664,168.2794975732,67718110,0.0,1.0 +1131,AAPL,2022-04-21 00:00:00+00:00,166.42,171.53,165.91,168.91,87227768,165.9461601454,171.0416106823,165.4376122445,168.4290704853,87227768,0.0,1.0 +1132,AAPL,2022-04-22 00:00:00+00:00,161.79,167.8699,161.5,166.46,84882424,161.3293429271,167.3919319132,161.0401686305,165.9860462553,84882424,0.0,1.0 +1133,AAPL,2022-04-25 00:00:00+00:00,162.88,163.17,158.46,161.12,96046376,162.4162394212,162.7054137179,158.0088242798,160.6612505866,96046376,0.0,1.0 +1134,AAPL,2022-04-26 00:00:00+00:00,156.8,162.34,156.72,162.25,94008394,156.3535507199,161.8777769379,156.2737785001,161.7880331907,94008394,0.0,1.0 +1135,AAPL,2022-04-27 00:00:00+00:00,156.57,159.79,155.38,155.91,88063191,156.1242055881,159.3350374332,154.9375938192,155.4660847751,88063191,0.0,1.0 +1136,AAPL,2022-04-28 00:00:00+00:00,163.64,164.515,158.93,159.25,130216792,163.1740755089,164.0465841625,158.4774860708,158.7965749499,130216792,0.0,1.0 +1137,AAPL,2022-04-29 00:00:00+00:00,157.65,166.2,157.25,161.84,131747571,157.2011305548,165.7267865411,156.802269456,161.3792005644,131747571,0.0,1.0 +1138,AAPL,2022-05-02 00:00:00+00:00,157.96,158.23,153.27,156.71,123055265,157.5102479063,157.779479148,152.8336015232,156.2638069726,123055265,0.0,1.0 +1139,AAPL,2022-05-03 00:00:00+00:00,159.48,160.71,156.32,158.15,88966526,159.0259200817,160.2524179604,155.8749174013,157.6997069282,88966526,0.0,1.0 +1140,AAPL,2022-05-04 00:00:00+00:00,166.02,166.48,159.26,159.67,107521649,165.5472990466,166.0059893102,158.8065464773,159.2153791036,107521649,0.0,1.0 +1141,AAPL,2022-05-05 00:00:00+00:00,156.77,164.08,154.95,163.85,130525275,156.3236361375,163.6128227176,154.508818138,163.3834775858,130525275,0.0,1.0 +1142,AAPL,2022-05-06 00:00:00+00:00,157.28,159.44,154.18,156.01,116124647,157.0615291702,159.2185288078,153.9658352458,155.7932932721,116124647,0.23,1.0 +1143,AAPL,2022-05-09 00:00:00+00:00,152.06,155.83,151.49,154.925,131577921,151.8487800459,155.6135433023,151.2795718082,154.7098003986,131577921,0.0,1.0 +1144,AAPL,2022-05-10 00:00:00+00:00,154.51,156.74,152.93,155.52,115366736,154.2953768571,156.5222792608,152.7175715666,155.3039739099,115366736,0.0,1.0 +1145,AAPL,2022-05-11 00:00:00+00:00,146.5,155.45,145.81,153.5,142689825,146.2965032009,155.2340711439,145.60746165,153.2867798043,142689825,0.0,1.0 +1146,AAPL,2022-05-12 00:00:00+00:00,142.56,146.2,138.8,142.77,182602041,142.3619760841,145.9969199179,138.6071989371,142.5716843822,182602041,0.0,1.0 +1147,AAPL,2022-05-13 00:00:00+00:00,147.11,148.105,143.11,144.59,113990852,146.9056558763,147.8992737649,142.9112121029,144.3891562991,113990852,0.0,1.0 +1148,AAPL,2022-05-16 00:00:00+00:00,145.54,147.5199,144.18,145.55,86643781,145.3378366953,147.314986502,143.9797258123,145.3478228047,86643781,0.0,1.0 +1149,AAPL,2022-05-17 00:00:00+00:00,149.24,149.77,146.68,148.86,78336254,149.0326971856,149.5619609856,146.4762531707,148.6532250272,78336254,0.0,1.0 +1150,AAPL,2022-05-18 00:00:00+00:00,140.82,147.3601,139.9,146.85,109742890,140.6243930426,147.1554084732,139.7056709748,146.646017031,109742890,0.0,1.0 +1151,AAPL,2022-05-19 00:00:00+00:00,137.35,141.66,136.6,139.88,136095640,137.1592130692,141.4632262351,136.4102548617,139.6856987559,136095640,0.0,1.0 +1152,AAPL,2022-05-20 00:00:00+00:00,137.59,140.7,132.61,139.09,137426125,137.3988796956,140.5045597294,132.4257971977,138.8967961106,137426125,0.0,1.0 +1153,AAPL,2022-05-23 00:00:00+00:00,143.11,143.26,137.65,137.79,117726265,142.9112121029,143.0610037444,137.4587963522,137.5986018843,117726265,0.0,1.0 +1154,AAPL,2022-05-24 00:00:00+00:00,140.36,141.97,137.33,140.805,104132746,140.1650320087,141.7727956275,137.1392408503,140.6094138785,104132746,0.0,1.0 +1155,AAPL,2022-05-25 00:00:00+00:00,140.52,141.785,138.34,138.43,92482696,140.3248097596,141.588052603,138.1478379031,138.237712888,92482696,0.0,1.0 +1156,AAPL,2022-05-26 00:00:00+00:00,143.78,144.34,137.14,137.39,90601548,143.580281435,144.1395035632,136.9495047711,137.1991575069,90601548,0.0,1.0 +1157,AAPL,2022-05-27 00:00:00+00:00,149.64,149.68,145.26,145.39,90978503,149.432141563,149.4720860007,145.0582256311,145.1880450537,90978503,0.0,1.0 +1158,AAPL,2022-05-31 00:00:00+00:00,148.84,150.66,146.84,149.07,103718416,148.6332528083,150.4507247252,146.6360309216,148.8629333253,103718416,0.0,1.0 +1159,AAPL,2022-06-01 00:00:00+00:00,148.71,151.74,147.68,149.9,74286635,148.5034333857,151.529224544,147.474864114,149.6917804083,74286635,0.0,1.0 +1160,AAPL,2022-06-02 00:00:00+00:00,151.21,151.27,146.86,147.83,72348055,150.9999607441,151.0598774007,146.6560031405,147.6246557555,72348055,0.0,1.0 +1161,AAPL,2022-06-03 00:00:00+00:00,145.38,147.97,144.46,146.9,88570289,145.1780589443,147.7644612876,144.2593368764,146.6959475782,88570289,0.0,1.0 +1162,AAPL,2022-06-06 00:00:00+00:00,146.14,148.5689,144.9,147.03,71598380,145.9370032613,148.3625293816,144.6987256915,146.8257670008,71598380,0.0,1.0 +1163,AAPL,2022-06-07 00:00:00+00:00,148.71,149.0,144.1,144.345,67808150,148.5034333857,148.7930305592,143.8998369368,144.1444966179,67808150,0.0,1.0 +1164,AAPL,2022-06-08 00:00:00+00:00,147.96,149.8697,147.46,148.58,53950201,147.7544751782,149.6615224967,147.2551697065,148.373613963,53950201,0.0,1.0 +1165,AAPL,2022-06-09 00:00:00+00:00,142.64,147.95,142.53,147.08,69472976,142.4418649595,147.7444890687,142.3320177558,146.875697548,69472976,0.0,1.0 +1166,AAPL,2022-06-10 00:00:00+00:00,137.13,140.76,137.06,140.28,91566637,136.9395186617,140.564476386,136.8696158956,140.0851431332,91566637,0.0,1.0 +1167,AAPL,2022-06-13 00:00:00+00:00,131.88,135.2,131.44,132.87,122207099,131.6968112091,135.012199541,131.257422394,132.685436043,122207099,0.0,1.0 +1168,AAPL,2022-06-14 00:00:00+00:00,132.76,133.89,131.48,133.13,84784326,132.5755888392,133.7040192052,131.2973668317,132.9450748883,84784326,0.0,1.0 +1169,AAPL,2022-06-15 00:00:00+00:00,135.43,137.34,132.16,134.29,91532972,135.241880058,137.1492269598,131.9764222732,134.1034635826,91532972,0.0,1.0 +1170,AAPL,2022-06-16 00:00:00+00:00,130.06,132.39,129.04,132.08,107961508,129.8793392922,132.2061027902,128.86075613,131.8965333978,107961508,0.0,1.0 +1171,AAPL,2022-06-17 00:00:00+00:00,131.56,133.079,129.81,130.065,134520290,131.3772557072,132.8941457302,129.6296865563,129.8843323469,134520290,0.0,1.0 +1172,AAPL,2022-06-21 00:00:00+00:00,135.87,137.06,133.32,133.42,81000488,135.6812688731,136.8696158956,133.1348109675,133.2346720618,81000488,0.0,1.0 +1173,AAPL,2022-06-22 00:00:00+00:00,135.35,137.76,133.91,134.79,73409234,135.1619911825,137.568643556,133.7239914241,134.6027690542,73409234,0.0,1.0 +1174,AAPL,2022-06-23 00:00:00+00:00,138.27,138.59,135.63,136.82,72433768,138.0779351371,138.397490639,135.4416022466,136.6299492692,72433768,0.0,1.0 +1175,AAPL,2022-06-24 00:00:00+00:00,141.66,141.91,139.77,139.9,89116837,141.4632262351,141.7128789709,139.5758515521,139.7056709748,89116837,0.0,1.0 +1176,AAPL,2022-06-27 00:00:00+00:00,141.66,143.49,140.965,142.695,70207908,141.4632262351,143.2906842614,140.7691916294,142.4967885614,70207908,0.0,1.0 +1177,AAPL,2022-06-28 00:00:00+00:00,137.44,143.422,137.325,142.13,67315328,137.2490880541,143.2227787172,137.1342477956,141.9325733784,67315328,0.0,1.0 +1178,AAPL,2022-06-29 00:00:00+00:00,139.23,140.67,136.67,137.46,66242411,139.0366016427,140.4746014011,136.4801576277,137.269060273,66242411,0.0,1.0 +1179,AAPL,2022-06-30 00:00:00+00:00,136.72,138.37,133.7737,137.25,98964467,136.5300881749,138.1777962314,133.5878807525,137.0593519749,98964467,0.0,1.0 +1180,AAPL,2022-07-01 00:00:00+00:00,138.93,139.04,135.66,136.04,71051552,138.7370183597,138.8468655635,135.4715605749,135.8510327334,71051552,0.0,1.0 +1181,AAPL,2022-07-05 00:00:00+00:00,141.56,141.61,136.93,137.77,73429641,141.3633651407,141.4132956879,136.739796473,137.5786296654,73429641,0.0,1.0 +1182,AAPL,2022-07-06 00:00:00+00:00,142.92,144.12,141.08,141.355,74064254,142.7214760237,143.9198091557,140.8840318879,141.1586498973,74064254,0.0,1.0 +1183,AAPL,2022-07-07 00:00:00+00:00,146.35,146.55,143.28,143.29,66253709,146.1467115594,146.346433748,143.0809759633,143.0909620727,66253709,0.0,1.0 +1184,AAPL,2022-07-08 00:00:00+00:00,147.04,147.55,145.0,145.265,64547798,146.8357531103,147.3450446914,144.7985867858,145.0632186858,64547798,0.0,1.0 +1185,AAPL,2022-07-11 00:00:00+00:00,144.87,146.64,143.78,145.67,63305113,144.6687673632,146.4363087329,143.580281435,145.4676561179,63305113,0.0,1.0 +1186,AAPL,2022-07-12 00:00:00+00:00,145.86,148.45,145.05,145.76,77588759,145.6573921971,148.2437945404,144.848517333,145.5575311028,77588759,0.0,1.0 +1187,AAPL,2022-07-13 00:00:00+00:00,145.49,146.45,142.1201,142.99,71185560,145.2879061481,146.2465726537,141.9226871301,142.7913787897,71185560,0.0,1.0 +1188,AAPL,2022-07-14 00:00:00+00:00,148.47,148.95,143.25,144.08,78140744,148.2637667593,148.7431000121,143.051017635,143.879864718,78140744,0.0,1.0 +1189,AAPL,2022-07-15 00:00:00+00:00,150.17,150.86,148.2,149.78,76259931,149.961405363,150.6504469139,147.9941418046,149.5719470951,76259931,0.0,1.0 +1190,AAPL,2022-07-18 00:00:00+00:00,147.07,151.57,146.7,150.74,81420868,146.8657114386,151.3594606837,146.4962253895,150.5306136007,81420868,0.0,1.0 +1191,AAPL,2022-07-19 00:00:00+00:00,151.0,151.23,146.91,147.92,82982367,150.7902524459,151.0199329629,146.7059336876,147.7145307404,82982367,0.0,1.0 +1192,AAPL,2022-07-20 00:00:00+00:00,153.04,153.72,150.37,151.12,64823413,152.8274187704,153.5064742119,150.1611275516,150.9100857592,64823413,0.0,1.0 +1193,AAPL,2022-07-21 00:00:00+00:00,155.35,155.57,151.94,154.5,65086636,155.1342100495,155.3539044571,151.7289467327,154.2853907477,65086636,0.0,1.0 +1194,AAPL,2022-07-22 00:00:00+00:00,154.09,156.28,153.41,155.39,66675408,153.8759602609,156.0629182268,153.1969048194,155.1741544873,66675408,0.0,1.0 +1195,AAPL,2022-07-25 00:00:00+00:00,152.95,155.04,152.28,154.01,53623945,152.7375437855,154.8246406571,152.0684744534,153.7960713854,53623945,0.0,1.0 +1196,AAPL,2022-07-26 00:00:00+00:00,151.6,153.085,150.8,152.265,55138691,151.389419012,152.8723562628,150.5905302573,152.0534952893,55138691,0.0,1.0 +1197,AAPL,2022-07-27 00:00:00+00:00,156.79,157.33,152.16,152.58,78620688,156.5722098079,157.1114597174,151.9486411402,152.3680577364,78620688,0.0,1.0 +1198,AAPL,2022-07-28 00:00:00+00:00,157.35,157.64,154.41,156.98,81378731,157.1314319362,157.4210291098,154.1955157628,156.7619458872,81378731,0.0,1.0 +1199,AAPL,2022-07-29 00:00:00+00:00,162.51,163.63,159.5,161.24,101786860,162.2842644039,163.4027086605,159.2784454644,161.0160285059,101786860,0.0,1.0 +1200,AAPL,2022-08-01 00:00:00+00:00,161.51,163.59,160.89,161.01,67829379,161.2856534606,163.3627642227,160.6665146757,160.7863479889,67829379,0.0,1.0 +1201,AAPL,2022-08-02 00:00:00+00:00,160.01,162.41,159.63,160.1,59907025,159.7877370455,162.1844033096,159.4082648871,159.8776120304,59907025,0.0,1.0 +1202,AAPL,2022-08-03 00:00:00+00:00,166.13,166.59,160.75,160.84,82507488,165.8992360188,166.3585970528,160.5267091436,160.6165841285,82507488,0.0,1.0 +1203,AAPL,2022-08-04 00:00:00+00:00,165.81,167.19,164.43,166.005,55474144,165.579680517,166.9577636188,164.2015974151,165.7744096509,55474144,0.0,1.0 +1204,AAPL,2022-08-05 00:00:00+00:00,165.35,165.85,163.0,163.21,56696985,165.35,165.85,163.0,163.21,56696985,0.23,1.0 +1205,AAPL,2022-08-08 00:00:00+00:00,164.87,167.81,164.2,166.37,60362338,164.87,167.81,164.2,166.37,60362338,0.0,1.0 +1206,AAPL,2022-08-09 00:00:00+00:00,164.92,165.82,163.25,164.02,63135503,164.92,165.82,163.25,164.02,63135503,0.0,1.0 +1207,AAPL,2022-08-10 00:00:00+00:00,169.24,169.34,166.9,167.68,70170540,169.24,169.34,166.9,167.68,70170540,0.0,1.0 +1208,AAPL,2022-08-11 00:00:00+00:00,168.49,170.99,168.19,170.06,57149159,168.49,170.99,168.19,170.06,57149159,0.0,1.0 +1209,AAPL,2022-08-12 00:00:00+00:00,172.1,172.17,169.4,169.82,68039382,172.1,172.17,169.4,169.82,68039382,0.0,1.0 +1210,AAPL,2022-08-15 00:00:00+00:00,173.19,173.39,171.345,171.52,54091694,173.19,173.39,171.345,171.52,54091694,0.0,1.0 +1211,AAPL,2022-08-16 00:00:00+00:00,173.03,173.71,171.6618,172.78,56377050,173.03,173.71,171.6618,172.78,56377050,0.0,1.0 +1212,AAPL,2022-08-17 00:00:00+00:00,174.55,176.15,172.57,172.77,79542037,174.55,176.15,172.57,172.77,79542037,0.0,1.0 +1213,AAPL,2022-08-18 00:00:00+00:00,174.15,174.9,173.12,173.75,62290075,174.15,174.9,173.12,173.75,62290075,0.0,1.0 +1214,AAPL,2022-08-19 00:00:00+00:00,171.52,173.74,171.3101,173.03,70346295,171.52,173.74,171.3101,173.03,70346295,0.0,1.0 +1215,AAPL,2022-08-22 00:00:00+00:00,167.57,169.86,167.135,169.69,69026809,167.57,169.86,167.135,169.69,69026809,0.0,1.0 +1216,AAPL,2022-08-23 00:00:00+00:00,167.23,168.71,166.65,167.08,54147079,167.23,168.71,166.65,167.08,54147079,0.0,1.0 +1217,AAPL,2022-08-24 00:00:00+00:00,167.53,168.11,166.245,167.32,53841524,167.53,168.11,166.245,167.32,53841524,0.0,1.0 +1218,AAPL,2022-08-25 00:00:00+00:00,170.03,170.14,168.35,168.78,51218209,170.03,170.14,168.35,168.78,51218209,0.0,1.0 +1219,AAPL,2022-08-26 00:00:00+00:00,163.62,171.05,163.56,170.57,78960980,163.62,171.05,163.56,170.57,78960980,0.0,1.0 +1220,AAPL,2022-08-29 00:00:00+00:00,161.38,162.9,159.82,161.145,72724452,161.38,162.9,159.82,161.145,72724452,0.0,1.0 +1221,AAPL,2022-08-30 00:00:00+00:00,158.91,162.56,157.72,162.13,77906197,158.91,162.56,157.72,162.13,77906197,0.0,1.0 +1222,AAPL,2022-08-31 00:00:00+00:00,157.22,160.58,157.14,160.305,87991091,157.22,160.58,157.14,160.305,87991091,0.0,1.0 +1223,AAPL,2022-09-01 00:00:00+00:00,157.96,158.42,154.67,156.64,74229896,157.96,158.42,154.67,156.64,74229896,0.0,1.0 +1224,AAPL,2022-09-02 00:00:00+00:00,155.81,160.362,154.965,159.75,76957768,155.81,160.362,154.965,159.75,76957768,0.0,1.0 +1225,AAPL,2022-09-06 00:00:00+00:00,154.53,157.09,153.69,156.47,73295539,154.53,157.09,153.69,156.47,73295539,0.0,1.0 +1226,AAPL,2022-09-07 00:00:00+00:00,155.96,156.67,153.61,154.825,87449574,155.96,156.67,153.61,154.825,87449574,0.0,1.0 +1227,AAPL,2022-09-08 00:00:00+00:00,154.46,156.36,152.68,154.64,84923847,154.46,156.36,152.68,154.64,84923847,0.0,1.0 +1228,AAPL,2022-09-09 00:00:00+00:00,157.37,157.82,154.75,155.47,68081006,157.37,157.82,154.75,155.47,68081006,0.0,1.0 +1229,AAPL,2022-09-12 00:00:00+00:00,163.43,164.26,159.3,159.59,104955962,163.43,164.26,159.3,159.59,104955962,0.0,1.0 +1230,AAPL,2022-09-13 00:00:00+00:00,153.84,160.54,153.37,159.9,122656614,153.84,160.54,153.37,159.9,122656614,0.0,1.0 +1231,AAPL,2022-09-14 00:00:00+00:00,155.31,157.1,153.6106,154.785,87965409,155.31,157.1,153.6106,154.785,87965409,0.0,1.0 +1232,AAPL,2022-09-15 00:00:00+00:00,152.37,155.24,151.38,154.65,90481110,152.37,155.24,151.38,154.65,90481110,0.0,1.0 +1233,AAPL,2022-09-16 00:00:00+00:00,150.7,151.35,148.37,151.21,162278841,150.7,151.35,148.37,151.21,162278841,0.0,1.0 +1234,AAPL,2022-09-19 00:00:00+00:00,154.48,154.56,149.1,149.31,81474246,154.48,154.56,149.1,149.31,81474246,0.0,1.0 +1235,AAPL,2022-09-20 00:00:00+00:00,156.9,158.08,153.08,153.4,107689796,156.9,158.08,153.08,153.4,107689796,0.0,1.0 +1236,AAPL,2022-09-21 00:00:00+00:00,153.72,158.74,153.6,157.34,101696790,153.72,158.74,153.6,157.34,101696790,0.0,1.0 +1237,AAPL,2022-09-22 00:00:00+00:00,152.74,154.47,150.91,152.38,86264792,152.74,154.47,150.91,152.38,86264792,0.0,1.0 +1238,AAPL,2022-09-23 00:00:00+00:00,150.43,151.47,148.56,151.19,96029909,150.43,151.47,148.56,151.19,96029909,0.0,1.0 +1239,AAPL,2022-09-26 00:00:00+00:00,150.77,153.7701,149.64,149.66,93339409,150.77,153.7701,149.64,149.66,93339409,0.0,1.0 +1240,AAPL,2022-09-27 00:00:00+00:00,151.76,154.72,149.945,152.74,84442741,151.76,154.72,149.945,152.74,84442741,0.0,1.0 +1241,AAPL,2022-09-28 00:00:00+00:00,149.84,150.6414,144.84,147.64,146691387,149.84,150.6414,144.84,147.64,146691387,0.0,1.0 +1242,AAPL,2022-09-29 00:00:00+00:00,142.48,146.72,140.68,146.1,128138237,142.48,146.72,140.68,146.1,128138237,0.0,1.0 +1243,AAPL,2022-09-30 00:00:00+00:00,138.2,143.1,138.0,141.28,124925274,138.2,143.1,138.0,141.28,124925274,0.0,1.0 +1244,AAPL,2022-10-03 00:00:00+00:00,142.45,143.07,137.685,138.21,114311663,142.45,143.07,137.685,138.21,114311663,0.0,1.0 +1245,AAPL,2022-10-04 00:00:00+00:00,146.1,146.22,144.26,145.03,87830064,146.1,146.22,144.26,145.03,87830064,0.0,1.0 +1246,AAPL,2022-10-05 00:00:00+00:00,146.4,147.38,143.01,144.075,79470968,146.4,147.38,143.01,144.075,79470968,0.0,1.0 +1247,AAPL,2022-10-06 00:00:00+00:00,145.43,147.54,145.22,145.81,68402169,145.43,147.54,145.22,145.81,68402169,0.0,1.0 +1248,AAPL,2022-10-07 00:00:00+00:00,140.09,143.1,139.445,142.54,85925559,140.09,143.1,139.445,142.54,85925559,0.0,1.0 +1249,AAPL,2022-10-10 00:00:00+00:00,140.42,141.89,138.5729,140.42,74899002,140.42,141.89,138.5729,140.42,74899002,0.0,1.0 +1250,AAPL,2022-10-11 00:00:00+00:00,138.98,141.35,138.22,139.9,77033672,138.98,141.35,138.22,139.9,77033672,0.0,1.0 +1251,AAPL,2022-10-12 00:00:00+00:00,138.34,140.36,138.16,139.13,70433744,138.34,140.36,138.16,139.13,70433744,0.0,1.0 +1252,AAPL,2022-10-13 00:00:00+00:00,142.99,143.59,134.37,134.99,113223975,142.99,143.59,134.37,134.99,113223975,0.0,1.0 +1253,AAPL,2022-10-14 00:00:00+00:00,138.38,144.52,138.19,144.31,88597969,138.38,144.52,138.19,144.31,88597969,0.0,1.0 +1254,AAPL,2022-10-17 00:00:00+00:00,142.41,142.9,140.27,141.065,85250939,142.41,142.9,140.27,141.065,85250939,0.0,1.0 +1255,AAPL,2022-10-18 00:00:00+00:00,143.75,146.7,140.61,145.49,99136610,143.75,146.7,140.61,145.49,99136610,0.0,1.0 +1256,AAPL,2022-10-19 00:00:00+00:00,143.86,144.9492,141.5,141.69,61758340,143.86,144.9492,141.5,141.69,61758340,0.0,1.0 +1257,AAPL,2022-10-20 00:00:00+00:00,143.39,145.89,142.65,143.02,64521989,143.39,145.89,142.65,143.02,64521989,0.0,1.0 diff --git a/Stock_Market_haseeb.ipynb b/Stock_Market_haseeb.ipynb new file mode 100644 index 0000000..369a521 --- /dev/null +++ b/Stock_Market_haseeb.ipynb @@ -0,0 +1,5495 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "FfhHXAhbqNZK" + }, + "source": [ + "### Stock Market Prediction And Forecasting Using LSTM" + ] + }, + { + "cell_type": "code", + "execution_count": 389, + "metadata": { + "id": "ZPaALWQuqNZS" + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import math\n", + "import numpy\n", + "from sklearn.metrics import mean_squared_error\n", + "from sklearn.preprocessing import MinMaxScaler\n", + "from tensorflow.keras.models import Sequential\n", + "from tensorflow.keras.layers import Dense\n", + "from tensorflow.keras.layers import LSTM\n", + "import tensorflow as tf\n", + "from numpy import array\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 390, + "metadata": { + "id": "00kaHtIyqNZU" + }, + "outputs": [], + "source": [ + "df=pd.read_csv('AAPL.csv') # Read the .csv File" + ] + }, + { + "cell_type": "code", + "execution_count": 391, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 374 + }, + "id": "lULaa0xUqNZV", + "outputId": "e57df95d-a469-4f18-f42c-073ee8c1022a" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 symbol date close high low \\\n", + "0 0 AAPL 2017-10-23 00:00:00+00:00 156.17 157.6900 155.50 \n", + "1 1 AAPL 2017-10-24 00:00:00+00:00 157.10 157.4200 156.20 \n", + "2 2 AAPL 2017-10-25 00:00:00+00:00 156.41 157.5500 155.27 \n", + "3 3 AAPL 2017-10-26 00:00:00+00:00 157.41 157.8295 156.78 \n", + "4 4 AAPL 2017-10-27 00:00:00+00:00 163.05 163.6000 158.70 \n", + "\n", + " open volume adjClose adjHigh adjLow adjOpen adjVolume \\\n", + "0 156.89 21654461 37.051855 37.412480 36.892895 37.222677 86617844 \n", + "1 156.29 17137731 37.272500 37.348421 37.058972 37.080325 68550924 \n", + "2 156.91 20126554 37.108795 37.379264 36.838327 37.227422 80506216 \n", + "3 157.23 16751691 37.346049 37.445577 37.196579 37.303343 67006764 \n", + "4 159.29 43904150 38.684158 38.814647 37.652106 37.792085 175616600 \n", + "\n", + " divCash splitFactor \n", + "0 0.0 1.0 \n", + "1 0.0 1.0 \n", + "2 0.0 1.0 \n", + "3 0.0 1.0 \n", + "4 0.0 1.0 " + ], + "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", + "
Unnamed: 0symboldateclosehighlowopenvolumeadjCloseadjHighadjLowadjOpenadjVolumedivCashsplitFactor
00AAPL2017-10-23 00:00:00+00:00156.17157.6900155.50156.892165446137.05185537.41248036.89289537.222677866178440.01.0
11AAPL2017-10-24 00:00:00+00:00157.10157.4200156.20156.291713773137.27250037.34842137.05897237.080325685509240.01.0
22AAPL2017-10-25 00:00:00+00:00156.41157.5500155.27156.912012655437.10879537.37926436.83832737.227422805062160.01.0
33AAPL2017-10-26 00:00:00+00:00157.41157.8295156.78157.231675169137.34604937.44557737.19657937.303343670067640.01.0
44AAPL2017-10-27 00:00:00+00:00163.05163.6000158.70159.294390415038.68415838.81464737.65210637.7920851756166000.01.0
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 391 + } + ], + "source": [ + "df.head() # Display the first five rows of data" + ] + }, + { + "cell_type": "code", + "execution_count": 393, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 374 + }, + "id": "QQqGA4ppqNZW", + "outputId": "61e416a7-4af3-411f-c406-771a44c55a95" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 symbol date close high low \\\n", + "1253 1253 AAPL 2022-10-14 00:00:00+00:00 138.38 144.5200 138.19 \n", + "1254 1254 AAPL 2022-10-17 00:00:00+00:00 142.41 142.9000 140.27 \n", + "1255 1255 AAPL 2022-10-18 00:00:00+00:00 143.75 146.7000 140.61 \n", + "1256 1256 AAPL 2022-10-19 00:00:00+00:00 143.86 144.9492 141.50 \n", + "1257 1257 AAPL 2022-10-20 00:00:00+00:00 143.39 145.8900 142.65 \n", + "\n", + " open volume adjClose adjHigh adjLow adjOpen adjVolume \\\n", + "1253 144.310 88597969 138.38 144.5200 138.19 144.310 88597969 \n", + "1254 141.065 85250939 142.41 142.9000 140.27 141.065 85250939 \n", + "1255 145.490 99136610 143.75 146.7000 140.61 145.490 99136610 \n", + "1256 141.690 61758340 143.86 144.9492 141.50 141.690 61758340 \n", + "1257 143.020 64521989 143.39 145.8900 142.65 143.020 64521989 \n", + "\n", + " divCash splitFactor \n", + "1253 0.0 1.0 \n", + "1254 0.0 1.0 \n", + "1255 0.0 1.0 \n", + "1256 0.0 1.0 \n", + "1257 0.0 1.0 " + ], + "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", + "
Unnamed: 0symboldateclosehighlowopenvolumeadjCloseadjHighadjLowadjOpenadjVolumedivCashsplitFactor
12531253AAPL2022-10-14 00:00:00+00:00138.38144.5200138.19144.31088597969138.38144.5200138.19144.310885979690.01.0
12541254AAPL2022-10-17 00:00:00+00:00142.41142.9000140.27141.06585250939142.41142.9000140.27141.065852509390.01.0
12551255AAPL2022-10-18 00:00:00+00:00143.75146.7000140.61145.49099136610143.75146.7000140.61145.490991366100.01.0
12561256AAPL2022-10-19 00:00:00+00:00143.86144.9492141.50141.69061758340143.86144.9492141.50141.690617583400.01.0
12571257AAPL2022-10-20 00:00:00+00:00143.39145.8900142.65143.02064521989143.39145.8900142.65143.020645219890.01.0
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 393 + } + ], + "source": [ + "df.tail() # Display the last five Rows of dataFile" + ] + }, + { + "cell_type": "code", + "execution_count": 394, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 374 + }, + "id": "nxKCX6OYXsb3", + "outputId": "23cd0cce-136c-40f6-8279-45b17b57f8eb" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + " Unnamed: 0 symbol date close high low \\\n", + "1253 1253 AAPL 2022-10-14 00:00:00+00:00 138.38 144.5200 138.19 \n", + "1254 1254 AAPL 2022-10-17 00:00:00+00:00 142.41 142.9000 140.27 \n", + "1255 1255 AAPL 2022-10-18 00:00:00+00:00 143.75 146.7000 140.61 \n", + "1256 1256 AAPL 2022-10-19 00:00:00+00:00 143.86 144.9492 141.50 \n", + "1257 1257 AAPL 2022-10-20 00:00:00+00:00 143.39 145.8900 142.65 \n", + "\n", + " open volume adjClose adjHigh adjLow adjOpen adjVolume \\\n", + "1253 144.310 88597969 138.38 144.5200 138.19 144.310 88597969 \n", + "1254 141.065 85250939 142.41 142.9000 140.27 141.065 85250939 \n", + "1255 145.490 99136610 143.75 146.7000 140.61 145.490 99136610 \n", + "1256 141.690 61758340 143.86 144.9492 141.50 141.690 61758340 \n", + "1257 143.020 64521989 143.39 145.8900 142.65 143.020 64521989 \n", + "\n", + " divCash splitFactor \n", + "1253 0.0 1.0 \n", + "1254 0.0 1.0 \n", + "1255 0.0 1.0 \n", + "1256 0.0 1.0 \n", + "1257 0.0 1.0 " + ], + "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", + "
Unnamed: 0symboldateclosehighlowopenvolumeadjCloseadjHighadjLowadjOpenadjVolumedivCashsplitFactor
12531253AAPL2022-10-14 00:00:00+00:00138.38144.5200138.19144.31088597969138.38144.5200138.19144.310885979690.01.0
12541254AAPL2022-10-17 00:00:00+00:00142.41142.9000140.27141.06585250939142.41142.9000140.27141.065852509390.01.0
12551255AAPL2022-10-18 00:00:00+00:00143.75146.7000140.61145.49099136610143.75146.7000140.61145.490991366100.01.0
12561256AAPL2022-10-19 00:00:00+00:00143.86144.9492141.50141.69061758340143.86144.9492141.50141.690617583400.01.0
12571257AAPL2022-10-20 00:00:00+00:00143.39145.8900142.65143.02064521989143.39145.8900142.65143.020645219890.01.0
\n", + "
\n", + " \n", + " \n", + " \n", + "\n", + " \n", + "
\n", + "
\n", + " " + ] + }, + "metadata": {}, + "execution_count": 394 + } + ], + "source": [ + "df.tail()" + ] + }, + { + "cell_type": "code", + "execution_count": 395, + "metadata": { + "id": "l-9oIzHxZ3X2", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 276 + }, + "outputId": "8ed512d8-3e20-4e5a-ebd1-f75da25fe86b" + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df.plot() #plot a graph of all the data.\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 396, + "metadata": { + "id": "__ZmjWZ0qNZX" + }, + "outputs": [], + "source": [ + "df1=df.reset_index()['high'] # Choose the high column for the prdeiction of stock prices.\n", + " # we can also choose any other value for the prediction of prices.\n", + " # all the values of high are in the df1" + ] + }, + { + "cell_type": "code", + "execution_count": 397, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "HyRlBuUXqNZY", + "outputId": "928115f1-763b-4b53-859d-b3d29779410b" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1258,)" + ] + }, + "metadata": {}, + "execution_count": 397 + } + ], + "source": [ + "df1.shape # Display the shape of data" + ] + }, + { + "cell_type": "code", + "execution_count": 398, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "4rfief2qqNZY", + "outputId": "717d6d3f-aac8-403b-fae8-a6b9e9b31873" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 398 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "plt.plot(df1) # Draw a graph for the up and down movements from 2017 to 2022 " + ] + }, + { + "cell_type": "code", + "execution_count": 399, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "i1dh_tCgqNZa", + "outputId": "a955a0d4-cb58-45cb-f6c1-f5a142b98bf8" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "0 157.6900\n", + "1 157.4200\n", + "2 157.5500\n", + "3 157.8295\n", + "4 163.6000\n", + " ... \n", + "1253 144.5200\n", + "1254 142.9000\n", + "1255 146.7000\n", + "1256 144.9492\n", + "1257 145.8900\n", + "Name: high, Length: 1258, dtype: float64" + ] + }, + "metadata": {}, + "execution_count": 399 + } + ], + "source": [ + "df1 #Display the vaule in df1" + ] + }, + { + "cell_type": "code", + "execution_count": 400, + "metadata": { + "id": "YNlyTUmCqNZa" + }, + "outputs": [], + "source": [ + "# LSTM are sensitive to the scale of the data. so we apply MinMax scaler \n", + "# Min Max convert the all values in range of 0 to 1\n", + "scaler=MinMaxScaler(feature_range=(0,1))\n", + "df1=scaler.fit_transform(np.array(df1).reshape(-1,1))" + ] + }, + { + "cell_type": "code", + "execution_count": 401, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "w2UWRKKbgtXz", + "outputId": "fe72f755-8d18-49c9-fe1a-00648a5a577a" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1258, 1)" + ] + }, + "metadata": {}, + "execution_count": 401 + } + ], + "source": [ + "df1.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 402, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "kjA4s5-VqNZa", + "outputId": "815f92b0-e9c5-4a57-a8fe-b64f6d679994" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[0.11729843]\n", + " [0.11663168]\n", + " [0.11695271]\n", + " ...\n", + " [0.09015928]\n", + " [0.08583578]\n", + " [0.08815903]]\n" + ] + } + ], + "source": [ + "print(df1)" + ] + }, + { + "cell_type": "code", + "execution_count": 403, + "metadata": { + "id": "ubOBpIcwqNZb" + }, + "outputs": [], + "source": [ + "#splitting dataset into train and test split\n", + "#Where trainig size of data is 65% and test size of data is 35%\n", + "training_size=int(len(df1)*0.65)\n", + "test_size=len(df1)-training_size\n", + "train_data,test_data=df1[0:training_size,:],df1[training_size:len(df1),:1]" + ] + }, + { + "cell_type": "code", + "execution_count": 404, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "7P8SDXSpqNZb", + "outputId": "b4642577-1955-4334-8cb8-7f11eeb87397" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(817, 441)" + ] + }, + "metadata": {}, + "execution_count": 404 + } + ], + "source": [ + "# total no of values in training size and test size\n", + "training_size,test_size " + ] + }, + { + "cell_type": "code", + "execution_count": 405, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "XGjsM5ovqNZc", + "outputId": "90dbe53e-1104-4cb1-e096-af0ca96e9413" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[1.17298432e-01]\n", + " [1.16631683e-01]\n", + " [1.16952710e-01]\n", + " [1.17642919e-01]\n", + " [1.31892826e-01]\n", + " [1.42931226e-01]\n", + " [1.46832695e-01]\n", + " [1.47549080e-01]\n", + " [1.43993086e-01]\n", + " [1.58217064e-01]\n", + " [1.60019756e-01]\n", + " [1.60661810e-01]\n", + " [1.63106556e-01]\n", + " [1.62748487e-01]\n", + " [1.60982837e-01]\n", + " [1.58809730e-01]\n", + " [1.56290900e-01]\n", + " [1.48486727e-01]\n", + " [1.52315101e-01]\n", + " [1.51129769e-01]\n", + " [1.49080133e-01]\n", + " [1.56834177e-01]\n", + " [1.60044450e-01]\n", + " [1.61279170e-01]\n", + " [1.60242005e-01]\n", + " [1.59723423e-01]\n", + " [1.54908013e-01]\n", + " [1.52981850e-01]\n", + " [1.51821212e-01]\n", + " [1.54167181e-01]\n", + " [1.51450796e-01]\n", + " [1.48202741e-01]\n", + " [1.48783800e-01]\n", + " [1.50166687e-01]\n", + " [1.54833930e-01]\n", + " [1.53599210e-01]\n", + " [1.56439067e-01]\n", + " [1.55426596e-01]\n", + " [1.57994814e-01]\n", + " [1.65477219e-01]\n", + " [1.61007532e-01]\n", + " [1.61081615e-01]\n", + " [1.62563279e-01]\n", + " [1.61081615e-01]\n", + " [1.51327324e-01]\n", + " [1.49623410e-01]\n", + " [1.52265712e-01]\n", + " [1.49154217e-01]\n", + " [1.53376960e-01]\n", + " [1.58933202e-01]\n", + " [1.56266206e-01]\n", + " [1.60958143e-01]\n", + " [1.61550809e-01]\n", + " [1.60192616e-01]\n", + " [1.58315841e-01]\n", + " [1.61254476e-01]\n", + " [1.65872330e-01]\n", + " [1.70885294e-01]\n", + " [1.70539573e-01]\n", + " [1.72638597e-01]\n", + " [1.71354488e-01]\n", + " [1.66909495e-01]\n", + " [1.71008767e-01]\n", + " [1.65724163e-01]\n", + " [1.59920978e-01]\n", + " [1.52636128e-01]\n", + " [1.48092357e-01]\n", + " [1.41202618e-01]\n", + " [1.43844919e-01]\n", + " [1.44289418e-01]\n", + " [1.39795036e-01]\n", + " [1.32584270e-01]\n", + " [1.32189159e-01]\n", + " [1.31398938e-01]\n", + " [1.25472281e-01]\n", + " [1.17792320e-01]\n", + " [1.32608964e-01]\n", + " [1.34732683e-01]\n", + " [1.41622423e-01]\n", + " [1.55327818e-01]\n", + " [1.59599951e-01]\n", + " [1.58217064e-01]\n", + " [1.57871342e-01]\n", + " [1.57451537e-01]\n", + " [1.61649586e-01]\n", + " [1.70885294e-01]\n", + " [1.73576985e-01]\n", + " [1.73922707e-01]\n", + " [1.71848376e-01]\n", + " [1.63254723e-01]\n", + " [1.66810717e-01]\n", + " [1.68070132e-01]\n", + " [1.62143475e-01]\n", + " [1.65279664e-01]\n", + " [1.72391653e-01]\n", + " [1.78293616e-01]\n", + " [1.81034696e-01]\n", + " [1.73675762e-01]\n", + " [1.72984319e-01]\n", + " [1.70218545e-01]\n", + " [1.66143968e-01]\n", + " [1.64489443e-01]\n", + " [1.60266700e-01]\n", + " [1.54315348e-01]\n", + " [1.47499691e-01]\n", + " [1.55352513e-01]\n", + " [1.60414866e-01]\n", + " [1.47746635e-01]\n", + " [1.52018768e-01]\n", + " [1.45079639e-01]\n", + " [1.44610446e-01]\n", + " [1.52660822e-01]\n", + " [1.58142981e-01]\n", + " [1.53821459e-01]\n", + " [1.55327818e-01]\n", + " [1.57575009e-01]\n", + " [1.57377454e-01]\n", + " [1.60044450e-01]\n", + " [1.62118780e-01]\n", + " [1.62983084e-01]\n", + " [1.69774046e-01]\n", + " [1.69477713e-01]\n", + " [1.61007532e-01]\n", + " [1.50709964e-01]\n", + " [1.40091369e-01]\n", + " [1.38634399e-01]\n", + " [1.36387208e-01]\n", + " [1.37152735e-01]\n", + " [1.33695518e-01]\n", + " [1.40930979e-01]\n", + " [1.45721694e-01]\n", + " [1.66835412e-01]\n", + " [1.66218052e-01]\n", + " [1.82886776e-01]\n", + " [1.91332263e-01]\n", + " [1.87751574e-01]\n", + " [1.90665514e-01]\n", + " [1.97999753e-01]\n", + " [1.97234226e-01]\n", + " [1.95925423e-01]\n", + " [1.89850599e-01]\n", + " [1.93283121e-01]\n", + " [1.94394370e-01]\n", + " [1.91677985e-01]\n", + " [1.95283368e-01]\n", + " [1.94320286e-01]\n", + " [1.93381899e-01]\n", + " [1.94221509e-01]\n", + " [1.96221756e-01]\n", + " [1.93999259e-01]\n", + " [1.92147179e-01]\n", + " [1.92715150e-01]\n", + " [1.97728115e-01]\n", + " [2.05531547e-01]\n", + " [2.06815656e-01]\n", + " [2.07161378e-01]\n", + " [2.07457711e-01]\n", + " [2.02024941e-01]\n", + " [2.01950858e-01]\n", + " [2.03531300e-01]\n", + " [2.04198049e-01]\n", + " [2.00963082e-01]\n", + " [1.97481171e-01]\n", + " [1.95159896e-01]\n", + " [1.88023213e-01]\n", + " [1.90171626e-01]\n", + " [1.93011483e-01]\n", + " [1.87578713e-01]\n", + " [1.84541301e-01]\n", + " [1.88517101e-01]\n", + " [1.90369181e-01]\n", + " [1.87726880e-01]\n", + " [1.90146932e-01]\n", + " [1.90418570e-01]\n", + " [1.92023707e-01]\n", + " [1.88220768e-01]\n", + " [1.93209038e-01]\n", + " [1.98765280e-01]\n", + " [2.00246944e-01]\n", + " [1.96542783e-01]\n", + " [2.00567971e-01]\n", + " [2.01629831e-01]\n", + " [2.03630078e-01]\n", + " [2.01703914e-01]\n", + " [2.01531053e-01]\n", + " [2.03383134e-01]\n", + " [2.03086801e-01]\n", + " [2.01926164e-01]\n", + " [2.06124213e-01]\n", + " [2.09062847e-01]\n", + " [2.11803926e-01]\n", + " [2.09902457e-01]\n", + " [2.02518829e-01]\n", + " [2.02370663e-01]\n", + " [2.26126682e-01]\n", + " [2.42474380e-01]\n", + " [2.43363378e-01]\n", + " [2.44622793e-01]\n", + " [2.45240153e-01]\n", + " [2.41066798e-01]\n", + " [2.45931596e-01]\n", + " [2.44252377e-01]\n", + " [2.48820842e-01]\n", + " [2.47857760e-01]\n", + " [2.48302260e-01]\n", + " [2.55883442e-01]\n", + " [2.66106927e-01]\n", + " [2.69144339e-01]\n", + " [2.64230152e-01]\n", + " [2.62180516e-01]\n", + " [2.63884430e-01]\n", + " [2.63514014e-01]\n", + " [2.68057785e-01]\n", + " [2.72502778e-01]\n", + " [2.79787628e-01]\n", + " [2.91566860e-01]\n", + " [2.93073219e-01]\n", + " [2.93838746e-01]\n", + " [2.95048771e-01]\n", + " [2.89319669e-01]\n", + " [2.84430177e-01]\n", + " [2.75737745e-01]\n", + " [2.81787875e-01]\n", + " [2.83516484e-01]\n", + " [2.91789110e-01]\n", + " [2.88060254e-01]\n", + " [2.78454130e-01]\n", + " [2.75737745e-01]\n", + " [2.70230893e-01]\n", + " [2.76799605e-01]\n", + " [2.74527719e-01]\n", + " [2.74280775e-01]\n", + " [2.78133103e-01]\n", + " [2.80429683e-01]\n", + " [2.87072478e-01]\n", + " [2.85590814e-01]\n", + " [2.94431411e-01]\n", + " [2.95863687e-01]\n", + " [3.04432646e-01]\n", + " [3.01666872e-01]\n", + " [2.91937276e-01]\n", + " [2.83022595e-01]\n", + " [2.89122114e-01]\n", + " [2.86850228e-01]\n", + " [2.69934560e-01]\n", + " [2.78281269e-01]\n", + " [2.75688357e-01]\n", + " [2.78552908e-01]\n", + " [2.77688604e-01]\n", + " [2.70527226e-01]\n", + " [2.74280775e-01]\n", + " [2.79466601e-01]\n", + " [2.79194962e-01]\n", + " [2.81615014e-01]\n", + " [2.74577108e-01]\n", + " [2.71638474e-01]\n", + " [2.70403754e-01]\n", + " [2.59266576e-01]\n", + " [2.72280528e-01]\n", + " [2.76997160e-01]\n", + " [2.55488332e-01]\n", + " [2.32621311e-01]\n", + " [2.33436227e-01]\n", + " [2.46623040e-01]\n", + " [2.46771206e-01]\n", + " [2.36621805e-01]\n", + " [2.21410051e-01]\n", + " [2.14816644e-01]\n", + " [2.08149154e-01]\n", + " [2.01950858e-01]\n", + " [2.09359180e-01]\n", + " [1.98814668e-01]\n", + " [1.76021731e-01]\n", + " [1.73058402e-01]\n", + " [1.63983208e-01]\n", + " [1.59920978e-01]\n", + " [1.59476479e-01]\n", + " [1.75577232e-01]\n", + " [1.79306087e-01]\n", + " [1.73206569e-01]\n", + " [1.84590690e-01]\n", + " [1.78293616e-01]\n", + " [1.59501173e-01]\n", + " [1.58785035e-01]\n", + " [1.47919496e-01]\n", + " [1.52117545e-01]\n", + " [1.52438573e-01]\n", + " [1.54043709e-01]\n", + " [1.45425361e-01]\n", + " [1.43622669e-01]\n", + " [1.41597728e-01]\n", + " [1.41400173e-01]\n", + " [1.28213360e-01]\n", + " [1.18459069e-01]\n", + " [1.02136066e-01]\n", + " [1.16162489e-01]\n", + " [1.15026546e-01]\n", + " [1.19348068e-01]\n", + " [1.21422398e-01]\n", + " [1.20162983e-01]\n", + " [8.77392271e-02]\n", + " [9.47277442e-02]\n", + " [9.54191876e-02]\n", + " [1.02802815e-01]\n", + " [1.09494999e-01]\n", + " [1.08112113e-01]\n", + " [1.07445364e-01]\n", + " [1.01444623e-01]\n", + " [1.06679837e-01]\n", + " [1.12828744e-01]\n", + " [1.17224349e-01]\n", + " [1.17767626e-01]\n", + " [1.14927769e-01]\n", + " [1.11001358e-01]\n", + " [1.09371527e-01]\n", + " [1.18384986e-01]\n", + " [1.13939993e-01]\n", + " [1.18384986e-01]\n", + " [1.38189900e-01]\n", + " [1.45227806e-01]\n", + " [1.45178417e-01]\n", + " [1.51796518e-01]\n", + " [1.60242005e-01]\n", + " [1.61452031e-01]\n", + " [1.57426843e-01]\n", + " [1.49327077e-01]\n", + " [1.50685270e-01]\n", + " [1.50166687e-01]\n", + " [1.53821459e-01]\n", + " [1.50808742e-01]\n", + " [1.51895296e-01]\n", + " [1.51253241e-01]\n", + " [1.55895790e-01]\n", + " [1.53549821e-01]\n", + " [1.55105569e-01]\n", + " [1.62192863e-01]\n", + " [1.60785282e-01]\n", + " [1.60044450e-01]\n", + " [1.59822200e-01]\n", + " [1.60414866e-01]\n", + " [1.66835412e-01]\n", + " [1.62513891e-01]\n", + " [1.61254476e-01]\n", + " [1.58661563e-01]\n", + " [1.55278429e-01]\n", + " [1.70218545e-01]\n", + " [1.78985060e-01]\n", + " [1.80540808e-01]\n", + " [1.82516360e-01]\n", + " [1.90492653e-01]\n", + " [1.93110261e-01]\n", + " [1.94591925e-01]\n", + " [1.95826645e-01]\n", + " [2.12717619e-01]\n", + " [2.16076059e-01]\n", + " [2.01975553e-01]\n", + " [2.04198049e-01]\n", + " [1.96493394e-01]\n", + " [1.95999506e-01]\n", + " [1.97283615e-01]\n", + " [2.01234720e-01]\n", + " [2.08099765e-01]\n", + " [2.13137424e-01]\n", + " [2.12816397e-01]\n", + " [2.14619089e-01]\n", + " [2.22348438e-01]\n", + " [2.28818373e-01]\n", + " [2.23607853e-01]\n", + " [2.24249907e-01]\n", + " [2.22126188e-01]\n", + " [2.21410051e-01]\n", + " [2.25163600e-01]\n", + " [2.30127176e-01]\n", + " [2.32028646e-01]\n", + " [2.33979504e-01]\n", + " [2.40918632e-01]\n", + " [2.42721324e-01]\n", + " [2.40943326e-01]\n", + " [2.34127670e-01]\n", + " [2.36523028e-01]\n", + " [2.30176565e-01]\n", + " [2.59587603e-01]\n", + " [2.53018891e-01]\n", + " [2.51018644e-01]\n", + " [2.43610322e-01]\n", + " [2.40103717e-01]\n", + " [2.34967280e-01]\n", + " [2.25929127e-01]\n", + " [2.18940610e-01]\n", + " [1.95801951e-01]\n", + " [1.96345228e-01]\n", + " [2.01407581e-01]\n", + " [2.03185578e-01]\n", + " [1.99308557e-01]\n", + " [1.83133720e-01]\n", + " [1.92147179e-01]\n", + " [1.86492160e-01]\n", + " [1.73725151e-01]\n", + " [1.77676256e-01]\n", + " [1.73848623e-01]\n", + " [1.70786517e-01]\n", + " [1.70490184e-01]\n", + " [1.67428078e-01]\n", + " [1.67255217e-01]\n", + " [1.71971848e-01]\n", + " [1.84714162e-01]\n", + " [1.85899494e-01]\n", + " [2.01827386e-01]\n", + " [2.10346956e-01]\n", + " [2.11902704e-01]\n", + " [2.11828621e-01]\n", + " [2.13853562e-01]\n", + " [2.05951352e-01]\n", + " [2.09334486e-01]\n", + " [2.22496605e-01]\n", + " [2.21484134e-01]\n", + " [2.23286826e-01]\n", + " [2.23879491e-01]\n", + " [2.22175577e-01]\n", + " [2.19953081e-01]\n", + " [2.24225213e-01]\n", + " [2.25657489e-01]\n", + " [2.20545746e-01]\n", + " [2.32868255e-01]\n", + " [2.29509816e-01]\n", + " [2.32744783e-01]\n", + " [2.34325225e-01]\n", + " [2.25237684e-01]\n", + " [2.25509322e-01]\n", + " [2.30991480e-01]\n", + " [2.32621311e-01]\n", + " [2.31658229e-01]\n", + " [2.36276083e-01]\n", + " [2.36868749e-01]\n", + " [2.34349920e-01]\n", + " [2.36300778e-01]\n", + " [2.37831831e-01]\n", + " [2.39634523e-01]\n", + " [2.43783183e-01]\n", + " [2.44375849e-01]\n", + " [2.44598099e-01]\n", + " [2.45808124e-01]\n", + " [2.48055315e-01]\n", + " [2.46869984e-01]\n", + " [2.74552414e-01]\n", + " [2.66304482e-01]\n", + " [2.37658970e-01]\n", + " [2.18446722e-01]\n", + " [2.17014446e-01]\n", + " [2.20693913e-01]\n", + " [2.30497592e-01]\n", + " [2.28596123e-01]\n", + " [2.26842820e-01]\n", + " [2.51759476e-01]\n", + " [2.37683665e-01]\n", + " [2.34473392e-01]\n", + " [2.39461662e-01]\n", + " [2.53216446e-01]\n", + " [2.54747500e-01]\n", + " [2.55488332e-01]\n", + " [2.57439190e-01]\n", + " [2.51537227e-01]\n", + " [2.39535745e-01]\n", + " [2.42894184e-01]\n", + " [2.35905667e-01]\n", + " [2.44795654e-01]\n", + " [2.47586122e-01]\n", + " [2.39017163e-01]\n", + " [2.45190764e-01]\n", + " [2.56278553e-01]\n", + " [2.57389801e-01]\n", + " [2.62378071e-01]\n", + " [2.63217681e-01]\n", + " [2.80330905e-01]\n", + " [2.87023089e-01]\n", + " [2.73120138e-01]\n", + " [2.71490307e-01]\n", + " [2.73194222e-01]\n", + " [2.78207186e-01]\n", + " [2.80454377e-01]\n", + " [2.77491048e-01]\n", + " [2.70774170e-01]\n", + " [2.77318187e-01]\n", + " [2.74873441e-01]\n", + " [2.73490554e-01]\n", + " [2.73539943e-01]\n", + " [2.82479318e-01]\n", + " [2.91468082e-01]\n", + " [2.80009878e-01]\n", + " [2.73539943e-01]\n", + " [2.89665391e-01]\n", + " [2.95690826e-01]\n", + " [2.91072972e-01]\n", + " [2.90406223e-01]\n", + " [2.96950241e-01]\n", + " [3.14730214e-01]\n", + " [3.15940240e-01]\n", + " [3.14754908e-01]\n", + " [3.08803556e-01]\n", + " [3.11050747e-01]\n", + " [3.14582047e-01]\n", + " [3.23002840e-01]\n", + " [3.25990863e-01]\n", + " [3.28559081e-01]\n", + " [3.32411409e-01]\n", + " [3.37177429e-01]\n", + " [3.43400420e-01]\n", + " [3.44635140e-01]\n", + " [3.33646129e-01]\n", + " [3.43202865e-01]\n", + " [3.59896283e-01]\n", + " [3.64637610e-01]\n", + " [3.65477219e-01]\n", + " [3.63748611e-01]\n", + " [3.70811211e-01]\n", + " [3.71033461e-01]\n", + " [3.76046425e-01]\n", + " [3.76836646e-01]\n", + " [3.81750833e-01]\n", + " [3.81997778e-01]\n", + " [3.84220274e-01]\n", + " [3.88294851e-01]\n", + " [3.89702432e-01]\n", + " [3.84961106e-01]\n", + " [3.79849364e-01]\n", + " [3.77799728e-01]\n", + " [3.85850105e-01]\n", + " [3.87628102e-01]\n", + " [3.89653044e-01]\n", + " [3.89702432e-01]\n", + " [3.90319793e-01]\n", + " [3.68786270e-01]\n", + " [3.78120756e-01]\n", + " [3.84491913e-01]\n", + " [3.97110754e-01]\n", + " [3.96616866e-01]\n", + " [3.94814175e-01]\n", + " [3.97357698e-01]\n", + " [4.00963082e-01]\n", + " [4.07729349e-01]\n", + " [4.21286579e-01]\n", + " [4.23706630e-01]\n", + " [4.24027658e-01]\n", + " [4.22249660e-01]\n", + " [4.25879738e-01]\n", + " [4.29830843e-01]\n", + " [4.31411285e-01]\n", + " [4.43980738e-01]\n", + " [4.53833807e-01]\n", + " [4.50672923e-01]\n", + " [4.53117669e-01]\n", + " [4.70206198e-01]\n", + " [4.70156809e-01]\n", + " [4.68625756e-01]\n", + " [4.70947030e-01]\n", + " [4.79688850e-01]\n", + " [4.94480800e-01]\n", + " [5.00012347e-01]\n", + " [5.10877886e-01]\n", + " [5.12112606e-01]\n", + " [5.07000864e-01]\n", + " [5.07494752e-01]\n", + " [5.15001852e-01]\n", + " [5.15693295e-01]\n", + " [5.18088653e-01]\n", + " [5.17026793e-01]\n", + " [5.26336585e-01]\n", + " [4.97789851e-01]\n", + " [5.14162242e-01]\n", + " [5.37498457e-01]\n", + " [5.28213360e-01]\n", + " [5.24731448e-01]\n", + " [5.02037289e-01]\n", + " [5.17224349e-01]\n", + " [5.29867885e-01]\n", + " [5.31003828e-01]\n", + " [5.26509446e-01]\n", + " [5.21940980e-01]\n", + " [5.27744166e-01]\n", + " [5.35942709e-01]\n", + " [5.33473268e-01]\n", + " [5.32880603e-01]\n", + " [5.17495987e-01]\n", + " [5.29398691e-01]\n", + " [5.29596246e-01]\n", + " [5.19224596e-01]\n", + " [4.79046796e-01]\n", + " [4.74972219e-01]\n", + " [4.63489320e-01]\n", + " [4.34152364e-01]\n", + " [4.15409310e-01]\n", + " [4.72280528e-01]\n", + " [4.78602297e-01]\n", + " [4.77120632e-01]\n", + " [4.67613286e-01]\n", + " [4.46055069e-01]\n", + " [4.14619089e-01]\n", + " [4.35238918e-01]\n", + " [4.22348438e-01]\n", + " [3.94641314e-01]\n", + " [4.19138165e-01]\n", + " [3.67675022e-01]\n", + " [3.64044944e-01]\n", + " [3.45252500e-01]\n", + " [3.52265712e-01]\n", + " [3.49771577e-01]\n", + " [2.92159526e-01]\n", + " [3.39548092e-01]\n", + " [3.65625386e-01]\n", + " [3.66687245e-01]\n", + " [3.59748117e-01]\n", + " [3.58883813e-01]\n", + " [3.76095814e-01]\n", + " [3.42091616e-01]\n", + " [3.33275713e-01]\n", + " [3.34633905e-01]\n", + " [3.77626868e-01]\n", + " [3.98839363e-01]\n", + " [3.88146685e-01]\n", + " [3.94814175e-01]\n", + " [4.03778244e-01]\n", + " [4.39708606e-01]\n", + " [4.34967280e-01]\n", + " [4.39585134e-01]\n", + " [4.36498333e-01]\n", + " [4.23484381e-01]\n", + " [4.12544759e-01]\n", + " [4.14149895e-01]\n", + " [4.23657242e-01]\n", + " [4.26768737e-01]\n", + " [4.30546981e-01]\n", + " [4.33732560e-01]\n", + " [4.43215212e-01]\n", + " [4.55216693e-01]\n", + " [4.66255093e-01]\n", + " [4.53142363e-01]\n", + " [4.71193975e-01]\n", + " [4.76725522e-01]\n", + " [4.81491542e-01]\n", + " [4.94283245e-01]\n", + " [5.10828497e-01]\n", + " [5.17347821e-01]\n", + " [5.08112113e-01]\n", + " [4.92900358e-01]\n", + " [4.88233115e-01]\n", + " [5.09470305e-01]\n", + " [5.14458575e-01]\n", + " [5.16928016e-01]\n", + " [5.20311150e-01]\n", + " [5.16211878e-01]\n", + " [5.28583776e-01]\n", + " [5.14927769e-01]\n", + " [5.26608223e-01]\n", + " [5.20953204e-01]\n", + " [5.23916533e-01]\n", + " [5.26608223e-01]\n", + " [5.33423879e-01]\n", + " [5.31991604e-01]\n", + " [5.47129275e-01]\n", + " [5.51697740e-01]\n", + " [5.81355723e-01]\n", + " [6.03975799e-01]\n", + " [5.94814175e-01]\n", + " [5.86763798e-01]\n", + " [5.81528584e-01]\n", + " [6.00098778e-01]\n", + " [6.05531547e-01]\n", + " [6.00716138e-01]\n", + " [6.08396098e-01]\n", + " [6.15557476e-01]\n", + " [6.47462650e-01]\n", + " [6.38597358e-01]\n", + " [6.29238178e-01]\n", + " [6.30028399e-01]\n", + " [6.22258550e-01]\n", + " [6.31658229e-01]\n", + " [6.35066058e-01]\n", + " [6.42746018e-01]\n", + " [6.55858748e-01]\n", + " [6.62871960e-01]\n", + " [6.69983949e-01]\n", + " [6.79293740e-01]\n", + " [6.75959995e-01]\n", + " [7.15224102e-01]\n", + " [6.88554142e-01]\n", + " [7.08235585e-01]\n", + " [6.90035807e-01]\n", + " [6.87492283e-01]\n", + " [7.00851957e-01]\n", + " [7.08260279e-01]\n", + " [6.95666132e-01]\n", + " [6.86800840e-01]\n", + " [6.46227929e-01]\n", + " [6.65341400e-01]\n", + " [6.61831337e-01]\n", + " [6.68551673e-01]\n", + " [6.79096185e-01]\n", + " [7.79034449e-01]\n", + " [8.30610446e-01]\n", + " [8.22249660e-01]\n", + " [8.18323250e-01]\n", + " [8.58031856e-01]\n", + " [8.50747006e-01]\n", + " [8.51734782e-01]\n", + " [8.38967774e-01]\n", + " [8.46795901e-01]\n", + " [8.74132609e-01]\n", + " [8.63835041e-01]\n", + " [8.74577108e-01]\n", + " [8.73712804e-01]\n", + " [8.85195703e-01]\n", + " [8.97340412e-01]\n", + " [9.61308804e-01]\n", + " [1.00000000e+00]\n", + " [9.64383751e-01]\n", + " [9.82294110e-01]\n", + " [9.87158909e-01]\n", + " [9.76861341e-01]\n", + " [5.13890604e-02]\n", + " [6.07729349e-02]\n", + " [6.86257563e-02]\n", + " [4.60550685e-02]\n", + " [3.33621435e-02]\n", + " [2.17310779e-02]\n", + " [2.21014940e-02]\n", + " [2.54599333e-02]\n", + " [1.24459810e-02]\n", + " [1.41745895e-02]\n", + " [2.13334980e-02]\n", + " [1.43474503e-02]\n", + " [4.96357575e-03]\n", + " [1.70391406e-03]\n", + " [0.00000000e+00]\n", + " [6.59340659e-03]\n", + " [4.74132609e-03]\n", + " [1.48166440e-04]\n", + " [5.55624151e-03]\n", + " [1.26682306e-02]\n", + " [1.26435362e-02]\n", + " [1.74589455e-02]\n", + " [1.85948883e-02]\n", + " [1.27917027e-02]\n", + " [1.59525867e-02]\n", + " [1.46437832e-02]\n", + " [1.32362020e-02]\n", + " [1.53352266e-02]\n", + " [1.68168910e-02]\n", + " [3.70169157e-02]\n", + " [3.75354982e-02]\n", + " [3.17076182e-02]\n", + " [2.71885418e-02]\n", + " [2.80479071e-02]\n", + " [2.52599086e-02]\n", + " [2.17063835e-02]\n", + " [2.10272873e-02]\n", + " [1.93851093e-02]\n", + " [1.57056427e-02]\n", + " [1.57056427e-02]\n", + " [1.75083344e-02]\n", + " [1.29398691e-02]\n", + " [1.66440301e-02]\n", + " [4.44499321e-03]\n", + " [1.21002593e-03]\n", + " [3.21027287e-03]\n", + " [1.33349796e-02]\n", + " [2.32868255e-02]\n", + " [2.22496605e-02]\n", + " [2.91393999e-02]\n", + " [1.82738610e-02]\n", + " [2.33115199e-02]\n", + " [2.55340165e-02]\n", + " [2.34144956e-02]\n", + " [2.66699593e-02]\n", + " [2.58898629e-02]\n", + " [2.37807137e-02]\n", + " [2.19039388e-02]\n", + " [2.11878010e-02]\n", + " [1.83484381e-02]\n", + " [1.39770342e-02]\n", + " [1.61995308e-02]\n", + " [1.80269169e-02]\n", + " [2.66205704e-02]\n", + " [3.27924435e-02]\n", + " [3.25472281e-02]\n", + " [3.35596987e-02]\n", + " [3.12897889e-02]\n", + " [3.55105569e-02]\n", + " [3.65230275e-02]\n", + " [3.89183850e-02]\n", + " [3.37819484e-02]\n", + " [3.10408692e-02]\n", + " [3.24978392e-02]\n", + " [4.37337943e-02]\n", + " [4.48944314e-02]\n", + " [4.78824546e-02]\n", + " [4.66971231e-02]\n", + " [4.47462650e-02]\n", + " [5.97975059e-02]\n", + " [5.49203605e-02]\n", + " [5.74638844e-02]\n", + " [6.70453142e-02]\n", + " [7.06235338e-02]\n", + " [6.37115693e-02]\n", + " [6.06247685e-02]\n", + " [5.78382516e-02]\n", + " [5.32164465e-02]\n", + " [5.15122855e-02]\n", + " [5.29448080e-02]\n", + " [5.54142487e-02]\n", + " [4.93394246e-02]\n", + " [4.81540931e-02]\n", + " [5.25003087e-02]\n", + " [5.13890604e-02]\n", + " [4.94732683e-02]\n", + " [4.57340412e-02]\n", + " [5.50685270e-02]\n", + " [7.27991110e-02]] [[0.07324361]\n", + " [0.08618348]\n", + " [0.08423262]\n", + " [0.08423262]\n", + " [0.07852821]\n", + " [0.06556365]\n", + " [0.06220521]\n", + " [0.06450179]\n", + " [0.06316829]\n", + " [0.06719348]\n", + " [0.06724287]\n", + " [0.06610693]\n", + " [0.0683714 ]\n", + " [0.06618101]\n", + " [0.06469935]\n", + " [0.06257563]\n", + " [0.06376096]\n", + " [0.05440178]\n", + " [0.04890727]\n", + " [0.05067292]\n", + " [0.04822818]\n", + " [0.04079516]\n", + " [0.0379553 ]\n", + " [0.0401741 ]\n", + " [0.036202 ]\n", + " [0.04380788]\n", + " [0.04575874]\n", + " [0.03832572]\n", + " [0.0331152 ]\n", + " [0.02900358]\n", + " [0.02669465]\n", + " [0.02931226]\n", + " [0.0295839 ]\n", + " [0.03215212]\n", + " [0.02711446]\n", + " [0.03410298]\n", + " [0.04205457]\n", + " [0.03869589]\n", + " [0.03207803]\n", + " [0.02775651]\n", + " [0.03378195]\n", + " [0.03469564]\n", + " [0.03138659]\n", + " [0.02832448]\n", + " [0.02787999]\n", + " [0.03059637]\n", + " [0.02522064]\n", + " [0.03291764]\n", + " [0.03454747]\n", + " [0.03943721]\n", + " [0.04183232]\n", + " [0.04378318]\n", + " [0.0498827 ]\n", + " [0.05642672]\n", + " [0.05595753]\n", + " [0.06042721]\n", + " [0.06126682]\n", + " [0.06126682]\n", + " [0.06045191]\n", + " [0.06242746]\n", + " [0.06257563]\n", + " [0.05818002]\n", + " [0.0591678 ]\n", + " [0.06156316]\n", + " [0.06141499]\n", + " [0.06227929]\n", + " [0.06131621]\n", + " [0.06637857]\n", + " [0.05771083]\n", + " [0.05897024]\n", + " [0.05259884]\n", + " [0.05003087]\n", + " [0.04830226]\n", + " [0.05202667]\n", + " [0.04778368]\n", + " [0.03970861]\n", + " [0.03568342]\n", + " [0.03941227]\n", + " [0.0437091 ]\n", + " [0.04133844]\n", + " [0.0414866 ]\n", + " [0.03636251]\n", + " [0.04328929]\n", + " [0.04398074]\n", + " [0.04383257]\n", + " [0.04477096]\n", + " [0.04247438]\n", + " [0.04309174]\n", + " [0.03854797]\n", + " [0.03743672]\n", + " [0.03716508]\n", + " [0.036202 ]\n", + " [0.03943697]\n", + " [0.03983208]\n", + " [0.04511668]\n", + " [0.04336338]\n", + " [0.04444993]\n", + " [0.04259785]\n", + " [0.05025312]\n", + " [0.05040128]\n", + " [0.05111742]\n", + " [0.05521669]\n", + " [0.05264848]\n", + " [0.05487097]\n", + " [0.05899494]\n", + " [0.0595876 ]\n", + " [0.06037782]\n", + " [0.05852574]\n", + " [0.06187184]\n", + " [0.06494629]\n", + " [0.06721818]\n", + " [0.06702062]\n", + " [0.07361403]\n", + " [0.08139276]\n", + " [0.08568959]\n", + " [0.08363996]\n", + " [0.08756637]\n", + " [0.08922089]\n", + " [0.09203605]\n", + " [0.09724657]\n", + " [0.09830843]\n", + " [0.09771577]\n", + " [0.08366465]\n", + " [0.09114631]\n", + " [0.0887517 ]\n", + " [0.09385109]\n", + " [0.09514187]\n", + " [0.09788863]\n", + " [0.09635758]\n", + " [0.09082603]\n", + " [0.08978886]\n", + " [0.08924559]\n", + " [0.09077664]\n", + " [0.09348068]\n", + " [0.09285097]\n", + " [0.09297444]\n", + " [0.09117175]\n", + " [0.09015928]\n", + " [0.09265341]\n", + " [0.09020867]\n", + " [0.09596246]\n", + " [0.09693641]\n", + " [0.10124707]\n", + " [0.10245709]\n", + " [0.10008643]\n", + " [0.09336955]\n", + " [0.09460427]\n", + " [0.09877763]\n", + " [0.10043215]\n", + " [0.09909865]\n", + " [0.09613533]\n", + " [0.09522163]\n", + " [0.10692678]\n", + " [0.10522287]\n", + " [0.11060625]\n", + " [0.10996419]\n", + " [0.10974194]\n", + " [0.11623657]\n", + " [0.1156933 ]\n", + " [0.11339672]\n", + " [0.11184097]\n", + " [0.10181504]\n", + " [0.10095073]\n", + " [0.09692555]\n", + " [0.09576491]\n", + " [0.09539449]\n", + " [0.08556612]\n", + " [0.08497345]\n", + " [0.08949253]\n", + " [0.09109767]\n", + " [0.092061 ]\n", + " [0.08833189]\n", + " [0.08534387]\n", + " [0.08460304]\n", + " [0.08442524]\n", + " [0.08082479]\n", + " [0.07907149]\n", + " [0.07914557]\n", + " [0.07892332]\n", + " [0.08402272]\n", + " [0.0839316 ]\n", + " [0.08549204]\n", + " [0.08163971]\n", + " [0.07707124]\n", + " [0.08319546]\n", + " [0.08570194]\n", + " [0.090505 ]\n", + " [0.0962588 ]\n", + " [0.0977007 ]\n", + " [0.09741943]\n", + " [0.09875293]\n", + " [0.09675269]\n", + " [0.10038276]\n", + " [0.09764168]\n", + " [0.10612421]\n", + " [0.09816027]\n", + " [0.0975676 ]\n", + " [0.10218545]\n", + " [0.10317323]\n", + " [0.10430917]\n", + " [0.1037412 ]\n", + " [0.10218545]\n", + " [0.10183479]\n", + " [0.09862946]\n", + " [0.09690085]\n", + " [0.09929621]\n", + " [0.10295098]\n", + " [0.10198296]\n", + " [0.11065564]\n", + " [0.11971848]\n", + " [0.12552167]\n", + " [0.13707865]\n", + " [0.12744783]\n", + " [0.12828744]\n", + " [0.12411409]\n", + " [0.12594147]\n", + " [0.13663415]\n", + " [0.14843808]\n", + " [0.13337449]\n", + " [0.13525127]\n", + " [0.14246179]\n", + " [0.15159896]\n", + " [0.16241511]\n", + " [0.16436597]\n", + " [0.17147796]\n", + " [0.17765156]\n", + " [0.16681072]\n", + " [0.17115693]\n", + " [0.17520682]\n", + " [0.15626621]\n", + " [0.14912952]\n", + " [0.15559946]\n", + " [0.16216817]\n", + " [0.16461267]\n", + " [0.17342882]\n", + " [0.17567601]\n", + " [0.1739474 ]\n", + " [0.17379923]\n", + " [0.17049018]\n", + " [0.17950364]\n", + " [0.17965181]\n", + " [0.17281146]\n", + " [0.16078528]\n", + " [0.15792073]\n", + " [0.15387085]\n", + " [0.16048895]\n", + " [0.16542783]\n", + " [0.16404494]\n", + " [0.15703173]\n", + " [0.15396963]\n", + " [0.15036424]\n", + " [0.14690703]\n", + " [0.1386344 ]\n", + " [0.12868255]\n", + " [0.1298185 ]\n", + " [0.1338422 ]\n", + " [0.13248549]\n", + " [0.14856155]\n", + " [0.16004445]\n", + " [0.15964934]\n", + " [0.16221756]\n", + " [0.16310631]\n", + " [0.15782195]\n", + " [0.15744117]\n", + " [0.16090875]\n", + " [0.16411903]\n", + " [0.16122978]\n", + " [0.15530312]\n", + " [0.14666008]\n", + " [0.1549821 ]\n", + " [0.15594518]\n", + " [0.15241388]\n", + " [0.14903395]\n", + " [0.1395234 ]\n", + " [0.1381899 ]\n", + " [0.13004075]\n", + " [0.13564638]\n", + " [0.13638721]\n", + " [0.13930115]\n", + " [0.14117792]\n", + " [0.14500556]\n", + " [0.13670824]\n", + " [0.13539943]\n", + " [0.13011483]\n", + " [0.13142363]\n", + " [0.12396592]\n", + " [0.12122484]\n", + " [0.10848253]\n", + " [0.11206322]\n", + " [0.12300284]\n", + " [0.12547228]\n", + " [0.13406593]\n", + " [0.13868379]\n", + " [0.14626497]\n", + " [0.15421657]\n", + " [0.15792073]\n", + " [0.16073589]\n", + " [0.16184714]\n", + " [0.16994691]\n", + " [0.17142857]\n", + " [0.16752686]\n", + " [0.15974812]\n", + " [0.1686628 ]\n", + " [0.1681936 ]\n", + " [0.15666132]\n", + " [0.15599457]\n", + " [0.15209285]\n", + " [0.14530189]\n", + " [0.14737622]\n", + " [0.15026546]\n", + " [0.15083344]\n", + " [0.1392972 ]\n", + " [0.14231387]\n", + " [0.14493147]\n", + " [0.15147549]\n", + " [0.14243709]\n", + " [0.13083097]\n", + " [0.12878133]\n", + " [0.12248426]\n", + " [0.13415236]\n", + " [0.13831337]\n", + " [0.11863193]\n", + " [0.12475614]\n", + " [0.13900482]\n", + " [0.13307816]\n", + " [0.12161995]\n", + " [0.11270527]\n", + " [0.11495246]\n", + " [0.11176688]\n", + " [0.08892456]\n", + " [0.09362884]\n", + " [0.09218397]\n", + " [0.09774046]\n", + " [0.09178936]\n", + " [0.0777133 ]\n", + " [0.07534263]\n", + " [0.0816644 ]\n", + " [0.07847882]\n", + " [0.07802198]\n", + " [0.0843314 ]\n", + " [0.09751821]\n", + " [0.09993826]\n", + " [0.10260526]\n", + " [0.10144462]\n", + " [0.09329547]\n", + " [0.09477442]\n", + " [0.09583899]\n", + " [0.09798667]\n", + " [0.09324608]\n", + " [0.0754908 ]\n", + " [0.06176071]\n", + " [0.05852574]\n", + " [0.06704531]\n", + " [0.05482158]\n", + " [0.05652303]\n", + " [0.06635387]\n", + " [0.06808248]\n", + " [0.07013212]\n", + " [0.07833066]\n", + " [0.08223237]\n", + " [0.08206445]\n", + " [0.07526855]\n", + " [0.06958884]\n", + " [0.07124336]\n", + " [0.07758983]\n", + " [0.08378812]\n", + " [0.08978886]\n", + " [0.0922583 ]\n", + " [0.09001111]\n", + " [0.0944808 ]\n", + " [0.08954192]\n", + " [0.09571552]\n", + " [0.10043215]\n", + " [0.10218545]\n", + " [0.10134585]\n", + " [0.10749475]\n", + " [0.11206322]\n", + " [0.11381652]\n", + " [0.11075441]\n", + " [0.10592666]\n", + " [0.11640943]\n", + " [0.11717496]\n", + " [0.13196691]\n", + " [0.13186813]\n", + " [0.12895419]\n", + " [0.13927645]\n", + " [0.14075812]\n", + " [0.13744907]\n", + " [0.14228917]\n", + " [0.13737498]\n", + " [0.14606742]\n", + " [0.15014199]\n", + " [0.15305593]\n", + " [0.15606865]\n", + " [0.15685887]\n", + " [0.16288431]\n", + " [0.15979751]\n", + " [0.15693295]\n", + " [0.14735152]\n", + " [0.14451167]\n", + " [0.14303 ]\n", + " [0.14804297]\n", + " [0.15029016]\n", + " [0.13016422]\n", + " [0.12932461]\n", + " [0.12443512]\n", + " [0.11910112]\n", + " [0.12389678]\n", + " [0.11581677]\n", + " [0.1147796 ]\n", + " [0.11401408]\n", + " [0.11761946]\n", + " [0.13352266]\n", + " [0.12433634]\n", + " [0.11584146]\n", + " [0.1112483 ]\n", + " [0.10164218]\n", + " [0.10956908]\n", + " [0.11826151]\n", + " [0.11989134]\n", + " [0.10934683]\n", + " [0.10193851]\n", + " [0.10761847]\n", + " [0.10996419]\n", + " [0.09989233]\n", + " [0.09020867]\n", + " [0.08126929]\n", + " [0.08119521]\n", + " [0.08897395]\n", + " [0.0918385 ]\n", + " [0.09223361]\n", + " [0.08126929]\n", + " [0.07828127]\n", + " [0.07694777]\n", + " [0.07450303]\n", + " [0.08247932]\n", + " [0.0847759 ]\n", + " [0.0807754 ]\n", + " [0.09015928]\n", + " [0.08583578]\n", + " [0.08815903]]\n" + ] + } + ], + "source": [ + "print(train_data,test_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 406, + "metadata": { + "id": "DhDsLFGLqNZc" + }, + "outputs": [], + "source": [ + "# convert an array of values into a dataset matrix\n", + "def create_dataset(dataset, time_step=1):\n", + "\tdataX, dataY = [], []\n", + "\tfor i in range(len(dataset)-time_step-1):\n", + "\t\ta = dataset[i:(i+time_step), 0] #i=0, 0,1,2,3-----99 100 \n", + "\t\tdataX.append(a)\t\t\t\t\t\t\t\t\t\t# 101 goes to data .append\n", + "\t\tdataY.append(dataset[i + time_step, 0])\n", + "\treturn numpy.array(dataX), numpy.array(dataY)" + ] + }, + { + "cell_type": "code", + "execution_count": 407, + "metadata": { + "id": "pd_lcYooqNZd" + }, + "outputs": [], + "source": [ + "# reshape into X=t,t+1,t+2,t+3 and Y=t+4\n", + "# time_step of data is 100 mean it takes 100 previous values to predict the next value.\n", + "time_step = 100\n", + "X_train, y_train = create_dataset(train_data, time_step)\n", + "X_test, ytest = create_dataset(test_data, time_step)" + ] + }, + { + "cell_type": "code", + "execution_count": 408, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "3GU3WkECqNZd", + "outputId": "081e6edb-57aa-46a8-b2c9-08671dc673df" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "(716, 100)\n", + "(716,)\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(None, None)" + ] + }, + "metadata": {}, + "execution_count": 408 + } + ], + "source": [ + "print(X_train.shape), print(y_train.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 409, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "aqVE-ld1qNZd", + "outputId": "742210a1-0101-495d-b2cd-5c3268ea898a" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "(340, 100)\n", + "(340,)\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(None, None)" + ] + }, + "metadata": {}, + "execution_count": 409 + } + ], + "source": [ + "print(X_test.shape), print(ytest.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 410, + "metadata": { + "id": "Vsy9a8rHqNZe" + }, + "outputs": [], + "source": [ + "# reshape input to be [samples, time steps, features] which is required for LSTM\n", + "# convert a 2d data into 3d using reshape\n", + "X_train =X_train.reshape(X_train.shape[0],X_train.shape[1] , 1)\n", + "X_test = X_test.reshape(X_test.shape[0],X_test.shape[1] , 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 411, + "metadata": { + "id": "aBA6i7UxqNZe" + }, + "outputs": [], + "source": [ + "#Create the Stacked LSTM model\n", + "model=Sequential()\n", + "model.add(LSTM(50,return_sequences=True,input_shape=(100,1)))\n", + "model.add(LSTM(50,return_sequences=True))\n", + "model.add(LSTM(50))\n", + "model.add(Dense(1))\n", + "model.compile(loss='mean_squared_error',optimizer='adam')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 412, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "79aKLL2jqNZf", + "outputId": "0cd03284-ac13-4e3f-e2dd-e0c2d9c89cc4" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Model: \"sequential_9\"\n", + "_________________________________________________________________\n", + " Layer (type) Output Shape Param # \n", + "=================================================================\n", + " lstm_27 (LSTM) (None, 100, 50) 10400 \n", + " \n", + " lstm_28 (LSTM) (None, 100, 50) 20200 \n", + " \n", + " lstm_29 (LSTM) (None, 50) 20200 \n", + " \n", + " dense_9 (Dense) (None, 1) 51 \n", + " \n", + "=================================================================\n", + "Total params: 50,851\n", + "Trainable params: 50,851\n", + "Non-trainable params: 0\n", + "_________________________________________________________________\n" + ] + } + ], + "source": [ + "model.summary() # details of model." + ] + }, + { + "cell_type": "code", + "execution_count": 413, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "kKpIfauxorlr", + "outputId": "3e8332c9-c96b-4a35-a747-c9064b416f9e" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Epoch 1/100\n", + "12/12 [==============================] - 10s 331ms/step - loss: 0.0479 - val_loss: 0.0031\n", + "Epoch 2/100\n", + "12/12 [==============================] - 3s 239ms/step - loss: 0.0158 - val_loss: 0.0054\n", + "Epoch 3/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0109 - val_loss: 0.0019\n", + "Epoch 4/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0098 - val_loss: 6.6235e-04\n", + "Epoch 5/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0099 - val_loss: 0.0018\n", + "Epoch 6/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0080 - val_loss: 4.0389e-04\n", + "Epoch 7/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0077 - val_loss: 0.0014\n", + "Epoch 8/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0071 - val_loss: 9.7224e-04\n", + "Epoch 9/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0069 - val_loss: 5.0473e-04\n", + "Epoch 10/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0063 - val_loss: 0.0011\n", + "Epoch 11/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 0.0060 - val_loss: 4.3572e-04\n", + "Epoch 12/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0054 - val_loss: 3.8037e-04\n", + "Epoch 13/100\n", + "12/12 [==============================] - 2s 211ms/step - loss: 0.0047 - val_loss: 2.9366e-04\n", + "Epoch 14/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0044 - val_loss: 3.6280e-04\n", + "Epoch 15/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0040 - val_loss: 5.6899e-04\n", + "Epoch 16/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 0.0059 - val_loss: 8.0996e-04\n", + "Epoch 17/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0040 - val_loss: 2.7166e-04\n", + "Epoch 18/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0033 - val_loss: 3.4138e-04\n", + "Epoch 19/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0039 - val_loss: 8.8307e-04\n", + "Epoch 20/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0036 - val_loss: 2.6700e-04\n", + "Epoch 21/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0030 - val_loss: 3.4700e-04\n", + "Epoch 22/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0033 - val_loss: 3.8004e-04\n", + "Epoch 23/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0031 - val_loss: 2.8861e-04\n", + "Epoch 24/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0028 - val_loss: 1.9885e-04\n", + "Epoch 25/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0026 - val_loss: 2.7827e-04\n", + "Epoch 26/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0023 - val_loss: 2.3612e-04\n", + "Epoch 27/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0022 - val_loss: 2.3234e-04\n", + "Epoch 28/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0021 - val_loss: 2.2909e-04\n", + "Epoch 29/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0026 - val_loss: 4.7299e-04\n", + "Epoch 30/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 0.0025 - val_loss: 2.2737e-04\n", + "Epoch 31/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0021 - val_loss: 1.9504e-04\n", + "Epoch 32/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0020 - val_loss: 1.9347e-04\n", + "Epoch 33/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0027 - val_loss: 2.4714e-04\n", + "Epoch 34/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0032 - val_loss: 3.5920e-04\n", + "Epoch 35/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0033 - val_loss: 2.2802e-04\n", + "Epoch 36/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0042 - val_loss: 9.0763e-04\n", + "Epoch 37/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0033 - val_loss: 2.9470e-04\n", + "Epoch 38/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0018 - val_loss: 3.2161e-04\n", + "Epoch 39/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0018 - val_loss: 1.8770e-04\n", + "Epoch 40/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0021 - val_loss: 2.3795e-04\n", + "Epoch 41/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0021 - val_loss: 2.1054e-04\n", + "Epoch 42/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0018 - val_loss: 1.8802e-04\n", + "Epoch 43/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0016 - val_loss: 2.0125e-04\n", + "Epoch 44/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0020 - val_loss: 3.0903e-04\n", + "Epoch 45/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0016 - val_loss: 2.0855e-04\n", + "Epoch 46/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0017 - val_loss: 1.9751e-04\n", + "Epoch 47/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0017 - val_loss: 1.9519e-04\n", + "Epoch 48/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0016 - val_loss: 2.1762e-04\n", + "Epoch 49/100\n", + "12/12 [==============================] - 3s 218ms/step - loss: 0.0014 - val_loss: 2.2129e-04\n", + "Epoch 50/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0017 - val_loss: 1.9356e-04\n", + "Epoch 51/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 0.0015 - val_loss: 2.4824e-04\n", + "Epoch 52/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0020 - val_loss: 2.0540e-04\n", + "Epoch 53/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0017 - val_loss: 2.0497e-04\n", + "Epoch 54/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0029 - val_loss: 2.5369e-04\n", + "Epoch 55/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0041 - val_loss: 2.1468e-04\n", + "Epoch 56/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0062 - val_loss: 7.5767e-04\n", + "Epoch 57/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0033 - val_loss: 2.2503e-04\n", + "Epoch 58/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0022 - val_loss: 2.0350e-04\n", + "Epoch 59/100\n", + "12/12 [==============================] - 2s 207ms/step - loss: 0.0021 - val_loss: 2.2422e-04\n", + "Epoch 60/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0019 - val_loss: 1.9260e-04\n", + "Epoch 61/100\n", + "12/12 [==============================] - 3s 214ms/step - loss: 0.0022 - val_loss: 2.0442e-04\n", + "Epoch 62/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 0.0018 - val_loss: 1.8267e-04\n", + "Epoch 63/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0019 - val_loss: 2.1750e-04\n", + "Epoch 64/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0015 - val_loss: 1.9817e-04\n", + "Epoch 65/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0018 - val_loss: 2.2435e-04\n", + "Epoch 66/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0016 - val_loss: 1.9075e-04\n", + "Epoch 67/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0014 - val_loss: 2.7323e-04\n", + "Epoch 68/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0018 - val_loss: 2.1307e-04\n", + "Epoch 69/100\n", + "12/12 [==============================] - 2s 208ms/step - loss: 0.0016 - val_loss: 2.5158e-04\n", + "Epoch 70/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0015 - val_loss: 1.8855e-04\n", + "Epoch 71/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0013 - val_loss: 2.0808e-04\n", + "Epoch 72/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0015 - val_loss: 3.1058e-04\n", + "Epoch 73/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0016 - val_loss: 2.2963e-04\n", + "Epoch 74/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0014 - val_loss: 3.3691e-04\n", + "Epoch 75/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0014 - val_loss: 2.1034e-04\n", + "Epoch 76/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0015 - val_loss: 2.0212e-04\n", + "Epoch 77/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0012 - val_loss: 2.1193e-04\n", + "Epoch 78/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 0.0012 - val_loss: 2.3030e-04\n", + "Epoch 79/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0013 - val_loss: 1.9722e-04\n", + "Epoch 80/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0014 - val_loss: 2.8242e-04\n", + "Epoch 81/100\n", + "12/12 [==============================] - 2s 210ms/step - loss: 0.0016 - val_loss: 2.1289e-04\n", + "Epoch 82/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0013 - val_loss: 2.0447e-04\n", + "Epoch 83/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0014 - val_loss: 1.9233e-04\n", + "Epoch 84/100\n", + "12/12 [==============================] - 3s 221ms/step - loss: 0.0029 - val_loss: 2.2712e-04\n", + "Epoch 85/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0022 - val_loss: 7.0759e-04\n", + "Epoch 86/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0015 - val_loss: 2.2951e-04\n", + "Epoch 87/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0019 - val_loss: 4.0234e-04\n", + "Epoch 88/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0046 - val_loss: 2.4919e-04\n", + "Epoch 89/100\n", + "12/12 [==============================] - 3s 213ms/step - loss: 0.0042 - val_loss: 2.3375e-04\n", + "Epoch 90/100\n", + "12/12 [==============================] - 3s 216ms/step - loss: 0.0039 - val_loss: 1.7655e-04\n", + "Epoch 91/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0032 - val_loss: 2.0565e-04\n", + "Epoch 92/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0027 - val_loss: 1.9722e-04\n", + "Epoch 93/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0024 - val_loss: 1.7810e-04\n", + "Epoch 94/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0025 - val_loss: 2.3718e-04\n", + "Epoch 95/100\n", + "12/12 [==============================] - 3s 212ms/step - loss: 0.0022 - val_loss: 3.7914e-04\n", + "Epoch 96/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0020 - val_loss: 2.4590e-04\n", + "Epoch 97/100\n", + "12/12 [==============================] - 3s 211ms/step - loss: 0.0020 - val_loss: 1.7112e-04\n", + "Epoch 98/100\n", + "12/12 [==============================] - 2s 209ms/step - loss: 0.0019 - val_loss: 2.1998e-04\n", + "Epoch 99/100\n", + "12/12 [==============================] - 3s 210ms/step - loss: 0.0017 - val_loss: 2.9629e-04\n", + "Epoch 100/100\n", + "12/12 [==============================] - 3s 215ms/step - loss: 0.0015 - val_loss: 1.6331e-04\n" + ] + } + ], + "source": [ + "# train the data using batch 64\n", + "hist=model.fit(X_train,y_train,validation_data=(X_test,ytest),epochs=100,batch_size=64,verbose=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 414, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "pB-csefBB-JO", + "outputId": "0f4d9f04-d9c9-41c3-b909-da69ed34ca78" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "dict_keys(['loss', 'val_loss'])\n" + ] + } + ], + "source": [ + "#print the keys of dictionary that store the loss\n", + "print(hist.history.keys()) " + ] + }, + { + "cell_type": "code", + "execution_count": 415, + "metadata": { + "id": "psfuriE5-CJd" + }, + "outputs": [], + "source": [ + "loss = pd.DataFrame(model.history.history)" + ] + }, + { + "cell_type": "code", + "execution_count": 416, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 285 + }, + "id": "3gkvvPkp_oDf", + "outputId": "c8675db5-c6a5-4ca0-c92a-98f26dc672f5" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "" + ] + }, + "metadata": {}, + "execution_count": 416 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#plot the losses during training\n", + "loss.plot() " + ] + }, + { + "cell_type": "code", + "execution_count": 417, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "RUQKuhxcqNZg", + "outputId": "2bb05ca4-a3b1-48f3-aade-cb4512730cc4" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "23/23 [==============================] - 2s 37ms/step\n", + "11/11 [==============================] - 0s 36ms/step\n" + ] + } + ], + "source": [ + "# Lets Do the prediction and check performance metrics\n", + "train_predict=model.predict(X_train)\n", + "test_predict=model.predict(X_test)" + ] + }, + { + "cell_type": "code", + "execution_count": 418, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "3GK_5lzhDCEs", + "outputId": "205a65dd-9678-4362-a63b-f2bcfa16e1f8" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[ 0.17295831]\n", + " [ 0.17261982]\n", + " [ 0.17170851]\n", + " [ 0.17022894]\n", + " [ 0.1680977 ]\n", + " [ 0.16522455]\n", + " [ 0.1624538 ]\n", + " [ 0.16041657]\n", + " [ 0.15842676]\n", + " [ 0.15667583]\n", + " [ 0.1548342 ]\n", + " [ 0.15293655]\n", + " [ 0.15158346]\n", + " [ 0.15115422]\n", + " [ 0.15125003]\n", + " [ 0.1517026 ]\n", + " [ 0.15246944]\n", + " [ 0.15339728]\n", + " [ 0.15450728]\n", + " [ 0.1558124 ]\n", + " [ 0.15723887]\n", + " [ 0.15904732]\n", + " [ 0.16107036]\n", + " [ 0.16259426]\n", + " [ 0.1628995 ]\n", + " [ 0.16153318]\n", + " [ 0.15887983]\n", + " [ 0.15544426]\n", + " [ 0.15182975]\n", + " [ 0.14824818]\n", + " [ 0.14535622]\n", + " [ 0.14353943]\n", + " [ 0.14386511]\n", + " [ 0.14590815]\n", + " [ 0.14989224]\n", + " [ 0.15556896]\n", + " [ 0.16186619]\n", + " [ 0.16816352]\n", + " [ 0.17440186]\n", + " [ 0.18020445]\n", + " [ 0.18521415]\n", + " [ 0.18892516]\n", + " [ 0.19159605]\n", + " [ 0.19349948]\n", + " [ 0.1946312 ]\n", + " [ 0.19535476]\n", + " [ 0.1957402 ]\n", + " [ 0.19579072]\n", + " [ 0.19562471]\n", + " [ 0.19544128]\n", + " [ 0.19513847]\n", + " [ 0.19461568]\n", + " [ 0.19397463]\n", + " [ 0.19362591]\n", + " [ 0.19408771]\n", + " [ 0.19528875]\n", + " [ 0.19694577]\n", + " [ 0.19878057]\n", + " [ 0.20022687]\n", + " [ 0.20119499]\n", + " [ 0.20186092]\n", + " [ 0.20236816]\n", + " [ 0.20256707]\n", + " [ 0.20228656]\n", + " [ 0.20150091]\n", + " [ 0.19994733]\n", + " [ 0.19803089]\n", + " [ 0.19624043]\n", + " [ 0.19440798]\n", + " [ 0.19242759]\n", + " [ 0.19068389]\n", + " [ 0.18940714]\n", + " [ 0.18842135]\n", + " [ 0.18781202]\n", + " [ 0.18753943]\n", + " [ 0.18761592]\n", + " [ 0.18770616]\n", + " [ 0.18804444]\n", + " [ 0.18894024]\n", + " [ 0.19034491]\n", + " [ 0.19178818]\n", + " [ 0.19332089]\n", + " [ 0.19490281]\n", + " [ 0.19654465]\n", + " [ 0.19801104]\n", + " [ 0.19920096]\n", + " [ 0.20021494]\n", + " [ 0.20104249]\n", + " [ 0.20160723]\n", + " [ 0.20219599]\n", + " [ 0.2030068 ]\n", + " [ 0.20413442]\n", + " [ 0.20530304]\n", + " [ 0.20588285]\n", + " [ 0.20586105]\n", + " [ 0.20694426]\n", + " [ 0.21016626]\n", + " [ 0.21498333]\n", + " [ 0.22058329]\n", + " [ 0.22623745]\n", + " [ 0.2311353 ]\n", + " [ 0.23536067]\n", + " [ 0.23876052]\n", + " [ 0.2416634 ]\n", + " [ 0.24403575]\n", + " [ 0.24590427]\n", + " [ 0.24781913]\n", + " [ 0.25044912]\n", + " [ 0.25372997]\n", + " [ 0.2568541 ]\n", + " [ 0.25932035]\n", + " [ 0.26115832]\n", + " [ 0.26239696]\n", + " [ 0.26346436]\n", + " [ 0.26473725]\n", + " [ 0.26666373]\n", + " [ 0.26985434]\n", + " [ 0.27392 ]\n", + " [ 0.2782924 ]\n", + " [ 0.28255227]\n", + " [ 0.28592572]\n", + " [ 0.28794602]\n", + " [ 0.28814968]\n", + " [ 0.28747803]\n", + " [ 0.2865463 ]\n", + " [ 0.28624034]\n", + " [ 0.2862305 ]\n", + " [ 0.2856012 ]\n", + " [ 0.284187 ]\n", + " [ 0.28185555]\n", + " [ 0.27952993]\n", + " [ 0.27735248]\n", + " [ 0.27544233]\n", + " [ 0.27415657]\n", + " [ 0.27362153]\n", + " [ 0.27416497]\n", + " [ 0.27536356]\n", + " [ 0.277535 ]\n", + " [ 0.2804015 ]\n", + " [ 0.28417617]\n", + " [ 0.28816608]\n", + " [ 0.29119 ]\n", + " [ 0.29246542]\n", + " [ 0.29279646]\n", + " [ 0.2924316 ]\n", + " [ 0.2903701 ]\n", + " [ 0.28775024]\n", + " [ 0.2848925 ]\n", + " [ 0.28232822]\n", + " [ 0.2801336 ]\n", + " [ 0.2777827 ]\n", + " [ 0.2756539 ]\n", + " [ 0.2742583 ]\n", + " [ 0.27352837]\n", + " [ 0.27348253]\n", + " [ 0.2733928 ]\n", + " [ 0.27295315]\n", + " [ 0.27218032]\n", + " [ 0.2704411 ]\n", + " [ 0.26904967]\n", + " [ 0.26859236]\n", + " [ 0.2673566 ]\n", + " [ 0.26370925]\n", + " [ 0.25843647]\n", + " [ 0.2535097 ]\n", + " [ 0.24954227]\n", + " [ 0.24591018]\n", + " [ 0.24156281]\n", + " [ 0.23635828]\n", + " [ 0.2304348 ]\n", + " [ 0.22404478]\n", + " [ 0.2183329 ]\n", + " [ 0.21300447]\n", + " [ 0.20677237]\n", + " [ 0.19991036]\n", + " [ 0.19256008]\n", + " [ 0.18516284]\n", + " [ 0.17829968]\n", + " [ 0.17335868]\n", + " [ 0.17059125]\n", + " [ 0.16921185]\n", + " [ 0.16939394]\n", + " [ 0.17032696]\n", + " [ 0.17044905]\n", + " [ 0.1696147 ]\n", + " [ 0.16750662]\n", + " [ 0.1648332 ]\n", + " [ 0.16212392]\n", + " [ 0.15978079]\n", + " [ 0.15743227]\n", + " [ 0.1550223 ]\n", + " [ 0.15257287]\n", + " [ 0.15022849]\n", + " [ 0.14737917]\n", + " [ 0.14364693]\n", + " [ 0.13851768]\n", + " [ 0.13336942]\n", + " [ 0.1287911 ]\n", + " [ 0.12526858]\n", + " [ 0.12292734]\n", + " [ 0.12151796]\n", + " [ 0.11905588]\n", + " [ 0.11586442]\n", + " [ 0.11247067]\n", + " [ 0.1096613 ]\n", + " [ 0.10798439]\n", + " [ 0.10728157]\n", + " [ 0.10723372]\n", + " [ 0.10726021]\n", + " [ 0.10745504]\n", + " [ 0.10810778]\n", + " [ 0.10936304]\n", + " [ 0.11105108]\n", + " [ 0.11276358]\n", + " [ 0.11408497]\n", + " [ 0.11485872]\n", + " [ 0.11563181]\n", + " [ 0.11627828]\n", + " [ 0.11699548]\n", + " [ 0.11882057]\n", + " [ 0.12199127]\n", + " [ 0.12600616]\n", + " [ 0.13062064]\n", + " [ 0.13580535]\n", + " [ 0.14117318]\n", + " [ 0.14604804]\n", + " [ 0.14966542]\n", + " [ 0.15206549]\n", + " [ 0.153448 ]\n", + " [ 0.15429047]\n", + " [ 0.1546441 ]\n", + " [ 0.15469675]\n", + " [ 0.154529 ]\n", + " [ 0.1544887 ]\n", + " [ 0.15447693]\n", + " [ 0.15454009]\n", + " [ 0.15506311]\n", + " [ 0.15588632]\n", + " [ 0.15678869]\n", + " [ 0.15762566]\n", + " [ 0.15836903]\n", + " [ 0.15937465]\n", + " [ 0.16034664]\n", + " [ 0.16109936]\n", + " [ 0.16146004]\n", + " [ 0.16128822]\n", + " [ 0.16159299]\n", + " [ 0.1629729 ]\n", + " [ 0.16526899]\n", + " [ 0.16815107]\n", + " [ 0.17166547]\n", + " [ 0.17558473]\n", + " [ 0.17959528]\n", + " [ 0.18343443]\n", + " [ 0.18790217]\n", + " [ 0.19295114]\n", + " [ 0.19721992]\n", + " [ 0.20049995]\n", + " [ 0.20233661]\n", + " [ 0.20291056]\n", + " [ 0.20267853]\n", + " [ 0.20224148]\n", + " [ 0.20224573]\n", + " [ 0.20300479]\n", + " [ 0.20427117]\n", + " [ 0.20585258]\n", + " [ 0.20799436]\n", + " [ 0.2108585 ]\n", + " [ 0.21374176]\n", + " [ 0.2163504 ]\n", + " [ 0.21840076]\n", + " [ 0.21983391]\n", + " [ 0.2209928 ]\n", + " [ 0.22229831]\n", + " [ 0.22384405]\n", + " [ 0.22560826]\n", + " [ 0.22786644]\n", + " [ 0.23049305]\n", + " [ 0.23305209]\n", + " [ 0.2348313 ]\n", + " [ 0.23596027]\n", + " [ 0.23614517]\n", + " [ 0.23762569]\n", + " [ 0.23990107]\n", + " [ 0.24234849]\n", + " [ 0.24408793]\n", + " [ 0.24478447]\n", + " [ 0.24427804]\n", + " [ 0.24231356]\n", + " [ 0.23894413]\n", + " [ 0.23325358]\n", + " [ 0.22622702]\n", + " [ 0.21928506]\n", + " [ 0.21326949]\n", + " [ 0.20820361]\n", + " [ 0.20307094]\n", + " [ 0.19860394]\n", + " [ 0.19466746]\n", + " [ 0.19053945]\n", + " [ 0.18666142]\n", + " [ 0.18307461]\n", + " [ 0.17976567]\n", + " [ 0.17685781]\n", + " [ 0.17427036]\n", + " [ 0.17205523]\n", + " [ 0.17054135]\n", + " [ 0.17045362]\n", + " [ 0.17161952]\n", + " [ 0.17452113]\n", + " [ 0.17910887]\n", + " [ 0.18471529]\n", + " [ 0.19056113]\n", + " [ 0.19618353]\n", + " [ 0.20072205]\n", + " [ 0.20425028]\n", + " [ 0.20771427]\n", + " [ 0.21107778]\n", + " [ 0.21426938]\n", + " [ 0.21714328]\n", + " [ 0.21944316]\n", + " [ 0.22096337]\n", + " [ 0.2220518 ]\n", + " [ 0.22291254]\n", + " [ 0.22323924]\n", + " [ 0.2239135 ]\n", + " [ 0.22472334]\n", + " [ 0.22574095]\n", + " [ 0.22694413]\n", + " [ 0.2275718 ]\n", + " [ 0.2276219 ]\n", + " [ 0.22763851]\n", + " [ 0.22786106]\n", + " [ 0.22820693]\n", + " [ 0.2289171 ]\n", + " [ 0.22992271]\n", + " [ 0.23088522]\n", + " [ 0.23181967]\n", + " [ 0.23277992]\n", + " [ 0.23383234]\n", + " [ 0.23517941]\n", + " [ 0.23672435]\n", + " [ 0.23830116]\n", + " [ 0.23984297]\n", + " [ 0.24139754]\n", + " [ 0.24278326]\n", + " [ 0.24585547]\n", + " [ 0.24968572]\n", + " [ 0.25158912]\n", + " [ 0.25013146]\n", + " [ 0.24606253]\n", + " [ 0.24087916]\n", + " [ 0.23626268]\n", + " [ 0.2325423 ]\n", + " [ 0.22962068]\n", + " [ 0.22909978]\n", + " [ 0.22959597]\n", + " [ 0.23026928]\n", + " [ 0.23117782]\n", + " [ 0.23314984]\n", + " [ 0.23602808]\n", + " [ 0.23940384]\n", + " [ 0.24298355]\n", + " [ 0.24602516]\n", + " [ 0.24753165]\n", + " [ 0.24793027]\n", + " [ 0.24713811]\n", + " [ 0.24619238]\n", + " [ 0.245591 ]\n", + " [ 0.24475272]\n", + " [ 0.24409793]\n", + " [ 0.24443394]\n", + " [ 0.24564625]\n", + " [ 0.24769755]\n", + " [ 0.2502255 ]\n", + " [ 0.25405592]\n", + " [ 0.25917935]\n", + " [ 0.26387158]\n", + " [ 0.26751179]\n", + " [ 0.27018833]\n", + " [ 0.27242458]\n", + " [ 0.27449086]\n", + " [ 0.2761395 ]\n", + " [ 0.27683178]\n", + " [ 0.2771849 ]\n", + " [ 0.2771791 ]\n", + " [ 0.2767978 ]\n", + " [ 0.27615252]\n", + " [ 0.2760304 ]\n", + " [ 0.2770658 ]\n", + " [ 0.27805525]\n", + " [ 0.27822536]\n", + " [ 0.27887902]\n", + " [ 0.28050146]\n", + " [ 0.282435 ]\n", + " [ 0.28429037]\n", + " [ 0.2863938 ]\n", + " [ 0.28995296]\n", + " [ 0.29459307]\n", + " [ 0.29951954]\n", + " [ 0.3036922 ]\n", + " [ 0.30704966]\n", + " [ 0.30988023]\n", + " [ 0.31287837]\n", + " [ 0.31613472]\n", + " [ 0.3195457 ]\n", + " [ 0.3230822 ]\n", + " [ 0.32679775]\n", + " [ 0.3308533 ]\n", + " [ 0.33493862]\n", + " [ 0.33773082]\n", + " [ 0.33999655]\n", + " [ 0.34323832]\n", + " [ 0.3475332 ]\n", + " [ 0.3522938 ]\n", + " [ 0.35673165]\n", + " [ 0.3610795 ]\n", + " [ 0.36506006]\n", + " [ 0.368884 ]\n", + " [ 0.3723878 ]\n", + " [ 0.37580737]\n", + " [ 0.37892708]\n", + " [ 0.38174045]\n", + " [ 0.38445786]\n", + " [ 0.3870083 ]\n", + " [ 0.38873824]\n", + " [ 0.38915405]\n", + " [ 0.38833943]\n", + " [ 0.38749003]\n", + " [ 0.38696235]\n", + " [ 0.38689187]\n", + " [ 0.387103 ]\n", + " [ 0.3874772 ]\n", + " [ 0.3858384 ]\n", + " [ 0.383606 ]\n", + " [ 0.3819241 ]\n", + " [ 0.38211128]\n", + " [ 0.3836644 ]\n", + " [ 0.38578334]\n", + " [ 0.38824832]\n", + " [ 0.39107507]\n", + " [ 0.39459962]\n", + " [ 0.39969283]\n", + " [ 0.4058194 ]\n", + " [ 0.41215652]\n", + " [ 0.41786814]\n", + " [ 0.42296857]\n", + " [ 0.4276494 ]\n", + " [ 0.43184745]\n", + " [ 0.43661726]\n", + " [ 0.44245407]\n", + " [ 0.4481751 ]\n", + " [ 0.45334908]\n", + " [ 0.45935544]\n", + " [ 0.46544105]\n", + " [ 0.47070065]\n", + " [ 0.4749737 ]\n", + " [ 0.47903857]\n", + " [ 0.48422667]\n", + " [ 0.49034297]\n", + " [ 0.49763194]\n", + " [ 0.5050639 ]\n", + " [ 0.51108074]\n", + " [ 0.5153978 ]\n", + " [ 0.518955 ]\n", + " [ 0.52172536]\n", + " [ 0.5238677 ]\n", + " [ 0.5250875 ]\n", + " [ 0.5265137 ]\n", + " [ 0.52422225]\n", + " [ 0.52130425]\n", + " [ 0.52117634]\n", + " [ 0.52176225]\n", + " [ 0.52199566]\n", + " [ 0.5188826 ]\n", + " [ 0.515593 ]\n", + " [ 0.5142921 ]\n", + " [ 0.514727 ]\n", + " [ 0.5156898 ]\n", + " [ 0.516291 ]\n", + " [ 0.5173505 ]\n", + " [ 0.5197893 ]\n", + " [ 0.52276397]\n", + " [ 0.5257932 ]\n", + " [ 0.52672386]\n", + " [ 0.5276673 ]\n", + " [ 0.52876276]\n", + " [ 0.52863634]\n", + " [ 0.522668 ]\n", + " [ 0.5127404 ]\n", + " [ 0.49994853]\n", + " [ 0.4831566 ]\n", + " [ 0.46321163]\n", + " [ 0.44973388]\n", + " [ 0.44295752]\n", + " [ 0.44095802]\n", + " [ 0.44097283]\n", + " [ 0.43979743]\n", + " [ 0.43458864]\n", + " [ 0.42958698]\n", + " [ 0.4245561 ]\n", + " [ 0.41750866]\n", + " [ 0.41236338]\n", + " [ 0.40433526]\n", + " [ 0.39455378]\n", + " [ 0.3828636 ]\n", + " [ 0.37168688]\n", + " [ 0.36185965]\n", + " [ 0.34869918]\n", + " [ 0.3381188 ]\n", + " [ 0.33299032]\n", + " [ 0.33242765]\n", + " [ 0.33429366]\n", + " [ 0.3373037 ]\n", + " [ 0.34220904]\n", + " [ 0.3453636 ]\n", + " [ 0.34600863]\n", + " [ 0.3450438 ]\n", + " [ 0.34699532]\n", + " [ 0.3534176 ]\n", + " [ 0.3618621 ]\n", + " [ 0.37131363]\n", + " [ 0.3813752 ]\n", + " [ 0.39434493]\n", + " [ 0.40828684]\n", + " [ 0.42203587]\n", + " [ 0.43408576]\n", + " [ 0.4424666 ]\n", + " [ 0.44621193]\n", + " [ 0.44641033]\n", + " [ 0.44513023]\n", + " [ 0.44329876]\n", + " [ 0.44145897]\n", + " [ 0.4398241 ]\n", + " [ 0.43916097]\n", + " [ 0.44027776]\n", + " [ 0.44353545]\n", + " [ 0.4464046 ]\n", + " [ 0.4504007 ]\n", + " [ 0.45553842]\n", + " [ 0.46159932]\n", + " [ 0.46924043]\n", + " [ 0.47929278]\n", + " [ 0.4910116 ]\n", + " [ 0.50178444]\n", + " [ 0.50904024]\n", + " [ 0.5125948 ]\n", + " [ 0.51590586]\n", + " [ 0.51958954]\n", + " [ 0.52337563]\n", + " [ 0.5269762 ]\n", + " [ 0.52923733]\n", + " [ 0.5314861 ]\n", + " [ 0.5315483 ]\n", + " [ 0.5311694 ]\n", + " [ 0.52964526]\n", + " [ 0.527619 ]\n", + " [ 0.5256404 ]\n", + " [ 0.5246375 ]\n", + " [ 0.52414227]\n", + " [ 0.52586347]\n", + " [ 0.52952516]\n", + " [ 0.5379075 ]\n", + " [ 0.55171007]\n", + " [ 0.56667966]\n", + " [ 0.57977414]\n", + " [ 0.58967257]\n", + " [ 0.5992209 ]\n", + " [ 0.6087005 ]\n", + " [ 0.61658376]\n", + " [ 0.6234804 ]\n", + " [ 0.62976366]\n", + " [ 0.63922596]\n", + " [ 0.64800525]\n", + " [ 0.6530733 ]\n", + " [ 0.6543601 ]\n", + " [ 0.6510458 ]\n", + " [ 0.64575183]\n", + " [ 0.6394991 ]\n", + " [ 0.6336493 ]\n", + " [ 0.6299204 ]\n", + " [ 0.62831825]\n", + " [ 0.6287772 ]\n", + " [ 0.6316163 ]\n", + " [ 0.63499355]\n", + " [ 0.64478457]\n", + " [ 0.6534462 ]\n", + " [ 0.6639292 ]\n", + " [ 0.67179596]\n", + " [ 0.6771123 ]\n", + " [ 0.6828184 ]\n", + " [ 0.6895221 ]\n", + " [ 0.6937982 ]\n", + " [ 0.6941641 ]\n", + " [ 0.6846749 ]\n", + " [ 0.67297596]\n", + " [ 0.66006804]\n", + " [ 0.6482602 ]\n", + " [ 0.6394067 ]\n", + " [ 0.6491529 ]\n", + " [ 0.6772968 ]\n", + " [ 0.7119762 ]\n", + " [ 0.7463454 ]\n", + " [ 0.78494525]\n", + " [ 0.8224827 ]\n", + " [ 0.8574609 ]\n", + " [ 0.8864181 ]\n", + " [ 0.9114478 ]\n", + " [ 0.93750304]\n", + " [ 0.9581329 ]\n", + " [ 0.97287464]\n", + " [ 0.97765946]\n", + " [ 0.97193015]\n", + " [ 0.95424515]\n", + " [ 0.9349825 ]\n", + " [ 0.91099256]\n", + " [ 0.86005324]\n", + " [ 0.7875905 ]\n", + " [ 0.6983399 ]\n", + " [ 0.60185325]\n", + " [ 0.3061208 ]\n", + " [ 0.08069681]\n", + " [-0.01094879]\n", + " [-0.02648165]\n", + " [-0.01512245]\n", + " [ 0.00134352]\n", + " [ 0.01597557]\n", + " [ 0.02713543]\n", + " [ 0.03406774]\n", + " [ 0.03713591]\n", + " [ 0.03686394]\n", + " [ 0.03355758]\n", + " [ 0.02788982]\n", + " [ 0.02100013]\n", + " [ 0.01408488]\n", + " [ 0.00834858]\n", + " [ 0.00436755]\n", + " [ 0.00213125]\n", + " [ 0.00165376]\n", + " [ 0.00290366]\n", + " [ 0.00548142]\n", + " [ 0.00901301]\n", + " [ 0.01303497]\n", + " [ 0.0168353 ]\n", + " [ 0.02013309]\n", + " [ 0.02274064]\n", + " [ 0.02456619]\n", + " [ 0.02577269]\n", + " [ 0.0265882 ]\n", + " [ 0.02803193]\n", + " [ 0.03025893]\n", + " [ 0.03273988]\n", + " [ 0.03492417]\n", + " [ 0.03667085]\n", + " [ 0.03787651]\n", + " [ 0.03845704]\n", + " [ 0.03851511]\n", + " [ 0.03816172]\n", + " [ 0.03740275]\n", + " [ 0.03638743]\n", + " [ 0.03535863]\n", + " [ 0.03423756]\n", + " [ 0.03322862]\n", + " [ 0.03187737]\n", + " [ 0.03004921]\n", + " [ 0.02800939]\n", + " [ 0.02642784]\n", + " [ 0.02588322]\n", + " [ 0.026242 ]\n", + " [ 0.02747447]\n", + " [ 0.02880658]\n", + " [ 0.03010714]\n", + " [ 0.0313888 ]\n", + " [ 0.03250909]\n", + " [ 0.03355209]\n", + " [ 0.03448494]\n", + " [ 0.03518814]\n", + " [ 0.03556971]\n", + " [ 0.03563935]\n", + " [ 0.03535946]\n", + " [ 0.03463649]\n", + " [ 0.03369424]\n", + " [ 0.03279192]\n", + " [ 0.03241402]\n", + " [ 0.03285459]\n", + " [ 0.03394359]\n", + " [ 0.03543328]\n", + " [ 0.03696469]\n", + " [ 0.03852555]\n", + " [ 0.04007993]\n", + " [ 0.04164942]\n", + " [ 0.04293412]\n", + " [ 0.04373158]\n", + " [ 0.04414215]\n", + " [ 0.04478765]\n", + " [ 0.04581894]\n", + " [ 0.0472493 ]\n", + " [ 0.04884426]\n", + " [ 0.05031395]\n", + " [ 0.05221203]\n", + " [ 0.05428216]\n", + " [ 0.05639978]\n", + " [ 0.05885069]\n", + " [ 0.0616769 ]\n", + " [ 0.06431899]\n", + " [ 0.06637459]\n", + " [ 0.06765369]\n", + " [ 0.06803664]\n", + " [ 0.0676404 ]\n", + " [ 0.06680749]\n", + " [ 0.06591973]\n", + " [ 0.0648622 ]\n", + " [ 0.06364056]\n", + " [ 0.06256747]\n", + " [ 0.06169691]\n", + " [ 0.06093971]\n", + " [ 0.06010202]]\n" + ] + } + ], + "source": [ + "print(train_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": 419, + "metadata": { + "id": "DuGI6fEDqNZg" + }, + "outputs": [], + "source": [ + "#Transformback to original form\n", + "train_predict=scaler.inverse_transform(train_predict)\n", + "test_predict=scaler.inverse_transform(test_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": 420, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "bcKzIljADK7q", + "outputId": "e2d326f0-96d5-4b7c-e6e0-fb222e02f883" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[[131.5134 ]\n", + " [131.99031]\n", + " [132.55055]\n", + " [133.10336]\n", + " [133.63593]\n", + " [134.20142]\n", + " [134.79001]\n", + " [135.37656]\n", + " [135.88899]\n", + " [136.3629 ]\n", + " [136.85442]\n", + " [137.39294]\n", + " [137.94164]\n", + " [138.58354]\n", + " [139.43445]\n", + " [140.50946]\n", + " [141.65369]\n", + " [142.81856]\n", + " [143.9574 ]\n", + " [145.0609 ]\n", + " [146.18343]\n", + " [147.29836]\n", + " [148.32866]\n", + " [148.93503]\n", + " [149.25978]\n", + " [149.35876]\n", + " [149.40932]\n", + " [149.49725]\n", + " [149.68459]\n", + " [149.91609]\n", + " [150.03508]\n", + " [150.00096]\n", + " [149.83733]\n", + " [149.62862]\n", + " [149.47835]\n", + " [149.39377]\n", + " [149.36482]\n", + " [149.33755]\n", + " [149.2776 ]\n", + " [149.23975]\n", + " [149.18599]\n", + " [149.23096]\n", + " [149.39655]\n", + " [149.73347]\n", + " [150.21371]\n", + " [150.71379]\n", + " [151.0284 ]\n", + " [151.1625 ]\n", + " [151.2494 ]\n", + " [151.3697 ]\n", + " [151.5016 ]\n", + " [151.5662 ]\n", + " [151.53754]\n", + " [151.67818]\n", + " [151.96927]\n", + " [152.45679]\n", + " [153.05664]\n", + " [153.67538]\n", + " [154.38454]\n", + " [155.12888]\n", + " [155.79443]\n", + " [156.30371]\n", + " [156.44061]\n", + " [156.2289 ]\n", + " [155.70349]\n", + " [154.96977]\n", + " [154.14899]\n", + " [153.13771]\n", + " [152.00601]\n", + " [150.96324]\n", + " [150.12997]\n", + " [149.5426 ]\n", + " [149.09473]\n", + " [148.68024]\n", + " [148.2691 ]\n", + " [147.87312]\n", + " [147.44232]\n", + " [146.9631 ]\n", + " [146.4752 ]\n", + " [146.01591]\n", + " [145.71509]\n", + " [145.5789 ]\n", + " [145.60019]\n", + " [145.65387]\n", + " [145.60114]\n", + " [145.55853]\n", + " [145.61003]\n", + " [145.84575]\n", + " [146.34158]\n", + " [147.04784]\n", + " [147.84691]\n", + " [148.66359]\n", + " [149.3882 ]\n", + " [150.05196]\n", + " [150.59053]\n", + " [151.16692]\n", + " [151.62134]\n", + " [151.9053 ]\n", + " [152.13382]\n", + " [152.36221]\n", + " [152.61555]\n", + " [152.86626]\n", + " [153.05965]\n", + " [153.17807]\n", + " [153.1642 ]\n", + " [153.0048 ]\n", + " [152.797 ]\n", + " [152.669 ]\n", + " [152.61948]\n", + " [152.80821]\n", + " [153.38959]\n", + " [154.38383]\n", + " [155.86923]\n", + " [157.44249]\n", + " [158.90063]\n", + " [160.05396]\n", + " [160.91785]\n", + " [161.76773]\n", + " [162.89528]\n", + " [163.90346]\n", + " [164.70319]\n", + " [165.44386]\n", + " [166.34274]\n", + " [167.60228]\n", + " [169.14192]\n", + " [170.93277]\n", + " [172.93361]\n", + " [174.70341]\n", + " [176.19691]\n", + " [177.4924 ]\n", + " [178.1403 ]\n", + " [178.01315]\n", + " [177.47023]\n", + " [176.90945]\n", + " [176.5218 ]\n", + " [176.5308 ]\n", + " [176.91908]\n", + " [177.4995 ]\n", + " [178.1269 ]\n", + " [178.63269]\n", + " [179.20071]\n", + " [179.82793]\n", + " [180.29689]\n", + " [180.28642]\n", + " [179.7984 ]\n", + " [178.91064]\n", + " [177.97713]\n", + " [177.26952]\n", + " [176.79301]\n", + " [176.33823]\n", + " [175.7999 ]\n", + " [175.12201]\n", + " [174.29196]\n", + " [173.20949]\n", + " [171.76256]\n", + " [170.1499 ]\n", + " [168.6592 ]\n", + " [167.38316]\n", + " [166.72046]\n", + " [166.88535]\n", + " [167.67055]\n", + " [168.85667]\n", + " [170.22556]\n", + " [171.47345]\n", + " [172.48509]\n", + " [173.32922]\n", + " [174.1042 ]\n", + " [174.74677]\n", + " [175.10524]\n", + " [175.00043]\n", + " [174.7235 ]\n", + " [174.43132]\n", + " [174.09758]\n", + " [173.66304]\n", + " [172.9408 ]\n", + " [171.97908]\n", + " [170.72711]\n", + " [169.46303]\n", + " [168.34976]\n", + " [167.5154 ]\n", + " [167.00047]\n", + " [166.83774]\n", + " [166.7542 ]\n", + " [166.6365 ]\n", + " [166.35744]\n", + " [165.9832 ]\n", + " [165.41782]\n", + " [164.66968]\n", + " [163.55865]\n", + " [162.2922 ]\n", + " [161.28119]\n", + " [160.66664]\n", + " [160.5894 ]\n", + " [161.03207]\n", + " [161.97879]\n", + " [163.40189]\n", + " [165.16173]\n", + " [167.09305]\n", + " [169.0248 ]\n", + " [170.99408]\n", + " [172.9286 ]\n", + " [174.62369]\n", + " [175.81898]\n", + " [176.73537]\n", + " [177.44339]\n", + " [177.70264]\n", + " [177.54906]\n", + " [177.02194]\n", + " [176.10551]\n", + " [175.01042]\n", + " [173.96872]\n", + " [173.09166]\n", + " [172.13565]\n", + " [171.1916 ]\n", + " [170.3934 ]\n", + " [169.93036]\n", + " [169.57042]\n", + " [168.98546]\n", + " [168.15453]\n", + " [167.05714]\n", + " [166.10095]\n", + " [165.49728]\n", + " [164.79286]\n", + " [164.08292]\n", + " [163.7486 ]\n", + " [163.66505]\n", + " [163.47914]\n", + " [162.94485]\n", + " [162.18266]\n", + " [161.26614]\n", + " [159.81892]\n", + " [158.08734]\n", + " [156.28749]\n", + " [154.71571]\n", + " [153.34558]\n", + " [151.89386]\n", + " [150.34178]\n", + " [148.93082]\n", + " [147.70009]\n", + " [146.66747]\n", + " [145.96477]\n", + " [145.83725]\n", + " [146.24622]\n", + " [147.06111]\n", + " [148.06569]\n", + " [148.92978]\n", + " [149.58807]\n", + " [150.07237]\n", + " [150.46245]\n", + " [150.6911 ]\n", + " [150.40945]\n", + " [149.40154]\n", + " [147.80794]\n", + " [146.09569]\n", + " [144.27766]\n", + " [142.51657]\n", + " [141.12726]\n", + " [140.19789]\n", + " [139.70825]\n", + " [139.71094]\n", + " [140.15825]\n", + " [140.88559]\n", + " [141.59836]\n", + " [142.07101]\n", + " [142.31943]\n", + " [142.52835]\n", + " [142.87637]\n", + " [143.47682]\n", + " [144.30861]\n", + " [145.21092]\n", + " [146.15771]\n", + " [146.97995]\n", + " [147.74356]\n", + " [148.53938]\n", + " [149.37653]\n", + " [150.18208]\n", + " [151.02568]\n", + " [151.96469]\n", + " [152.97284]\n", + " [153.90314]\n", + " [154.58359]\n", + " [155.22127]\n", + " [155.86777]\n", + " [156.81316]\n", + " [157.99763]\n", + " [159.20667]\n", + " [160.53082]\n", + " [161.9213 ]\n", + " [163.19609]\n", + " [164.37593]\n", + " [165.31842]\n", + " [166.19624]\n", + " [167.11507]\n", + " [168.10367]\n", + " [169.15953]\n", + " [170.21768]\n", + " [171.33643]\n", + " [172.37471]\n", + " [173.19164]\n", + " [173.54327]\n", + " [173.41795]\n", + " [172.92569]\n", + " [172.34766]\n", + " [171.86319]\n", + " [171.0484 ]\n", + " [169.9256 ]\n", + " [168.54399]\n", + " [166.95485]\n", + " [165.43608]\n", + " [163.94432]\n", + " [162.52702]\n", + " [161.24011]\n", + " [160.21362]\n", + " [159.80995]\n", + " [159.76378]\n", + " [159.72252]\n", + " [159.49883]\n", + " [158.90761]\n", + " [158.21709]\n", + " [157.75485]\n", + " [157.60399]\n", + " [157.47983]\n", + " [157.14745]\n", + " [156.744 ]\n", + " [156.39934]\n", + " [155.93703]\n", + " [155.16504]\n", + " [153.97812]\n", + " [152.53522]\n", + " [151.19568]\n", + " [150.15918]\n", + " [149.45573]\n", + " [148.81015]\n", + " [148.10419]\n", + " [147.33618]\n", + " [146.51886]\n", + " [145.87643]\n", + " [145.50385]\n", + " [145.2913 ]\n", + " [145.36108]]\n" + ] + } + ], + "source": [ + "print(test_predict)" + ] + }, + { + "cell_type": "code", + "execution_count": 421, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "H6lQTqhZqNZh", + "outputId": "3ce78542-b7ff-4e69-840f-8f080853c163" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "234.70000335222747" + ] + }, + "metadata": {}, + "execution_count": 421 + } + ], + "source": [ + "### Calculate Root Mean Square error performance metrics\n", + "math.sqrt(mean_squared_error(y_train,train_predict))" + ] + }, + { + "cell_type": "code", + "execution_count": 422, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "oQqa_xHBqNZh", + "outputId": "de6f030b-ea49-4360-d773-31e699200bb1" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "158.17459422853247" + ] + }, + "metadata": {}, + "execution_count": 422 + } + ], + "source": [ + "### Test Data Root Mean Square error\n", + "math.sqrt(mean_squared_error(ytest,test_predict))" + ] + }, + { + "cell_type": "code", + "execution_count": 423, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 265 + }, + "id": "_aFRS3pIqNZi", + "outputId": "f8c2c16b-03be-42e9-8c84-9e9ae4d746de" + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "### Plotting \n", + "# shift train predictions for plotting\n", + "look_back=100\n", + "trainPredictPlot = numpy.empty_like(df1)\n", + "trainPredictPlot[:, :] = np.nan #Taking NaN values based on df1 for training.\n", + "trainPredictPlot[look_back:len(train_predict)+look_back, :] = train_predict\n", + "# shift test predictions for plotting\n", + "testPredictPlot = numpy.empty_like(df1)\n", + "testPredictPlot[:, :] = numpy.nan #Taking NaN values based on df1 for testing.\n", + "testPredictPlot[len(train_predict)+(look_back*2)+1:len(df1)-1, :] = test_predict\n", + "# plot baseline and predictions\n", + "plt.plot(scaler.inverse_transform(df1))\n", + "plt.plot(trainPredictPlot)\n", + "plt.plot(testPredictPlot)\n", + "plt.show()\n", + "\n", + "# where blue one is the actual dataset value,\n", + "# Yellow one are the training dataset values\n", + "# and Green one are testing values " + ] + }, + { + "cell_type": "code", + "execution_count": 424, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "u2TR-M8qHUlR", + "outputId": "9cb95487-de76-4461-eb2d-b535b0732163" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 424 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Training dataset graph\n", + "plt.plot(trainPredictPlot)" + ] + }, + { + "cell_type": "code", + "execution_count": 425, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "F-mzvjgTGAoj", + "outputId": "9ec6d2c5-75bd-421d-cb8a-2519f1b1912b" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 425 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD4CAYAAAAXUaZHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd3zcV5no/8+ZUe+99+Imx3Lckjg4jXQSAqEkEBay4RL6XXbvXhaWBfYuP+5eYAOvS8veBELIQiolCYE0Uu04sS132ZYtWXXUe5dGmjm/P+Y7imxrpJE0fZ7366VXRt/5zujJePTozPk+5zlKa40QQojQYvJ3AEIIITxPkrsQQoQgSe5CCBGCJLkLIUQIkuQuhBAhKMLfAQBkZGTokpISf4chhBBB5eDBg31a68yF7guI5F5SUkJNTY2/wxBCiKCilGpxdZ9MywghRAiS5C6EECFIkrsQQoQgSe5CCBGCJLkLIUQIkuQuhBAhaMnkrpR6SCnVo5SqnXdss1LqHaXUEaVUjVJqh3FcKaV+rJRqUEodU0pt8WbwQgghFubOyP1h4Mbzjn0f+F9a683At4zvAW4CKo2ve4H7PROmEBd6ta6bn75aT2v/hL9DESLgLLmISWv9plKq5PzDQJJxOxnoMG7fBjyiHU3i31FKpSilcrXWnR6KVwgA+sam+dxvDmGdtbOvaYD/+vQl/g5JiICy0jn3rwA/UEq1Af8BfN04ng+0zTvPYhy7gFLqXmNKp6a3t3eFYYhw9fBbzczY7Hx4awG76/s42THi75CECCgrTe6fB/5ea10I/D3wy+U+gdb6Aa31Nq31tszMBVsjCLGgGZudxw+0cu36bL75vg1EmhXPHG33d1hCBJSVJvdPAX8wbj8F7DButwOF884rMI4J4TGv1fXQN2blzu2FJMdFsqkghf1NA/4OS4iAstLk3gFcady+Bqg3bj8LfNKomrkUGJb5duFpT9ZYyEyM5so1jk98O0rTOG4ZZsI66+fIhAgc7pRCPga8DaxVSlmUUp8GPgPcp5Q6CvxvHJUxAH8BGoEG4EHgC16JWoStntEpXjvdw+1b8okwO96+l5SmMWvXHG4d8nN0QgQOd6plPubirq0LnKuBL642KCFcefpwOza75iNb353921qciknBvqYBLq/I8GN0QgQOWaEqgobWmqdqLGwpSqEiK2HueGJMJFV5yexr7PdjdEIEFknuIqA8f7yTr/7uKJbBCxcmHWkbor5njI9sK7zgvktK0zjcNsT0rM0XYQoR8CS5i4Chtebfn6/jyRoLf/urAzhm+d711EELMZEmbtmUe8Fjd5SmYZ21c6hF5t2FAEnuIoDUdY3SOjBBdWEK9T1j7JtX3jhptfGnIx3cfFEuiTGRFzx2Z0UGUWYTfz3V7cuQverlk91s/+5f+eWeJn+HIoKQJHcRMF460Y1JwU8/djGJMRE8uq917r4XT3QxOj17zoXU+RKiI7i8Ip2XTnZdMOIPRl3DU/z3xw4zZbXxnedOSh2/WDZJ7iJgnOocoSQ9nsK0OG6/OJ8XarsYGLcC8GRNG0VpcVxSmuby8TdU5dA2MMmhECiJfL62k8kZG4/deylJMRE88nazv0MSQUaSuwgYZ7pHWZOdCMDHLynGarPzxIE2mvvG2Xu2nw9vLcBkUi4ff0t1HkkxEfxyT6OvQvaal050U5mVwMb8ZD68tZAXarsYm5ZFWsJ9ktxFQJiasdHcP86aHEdyX5uTyK7KDP7zjbN8+9kTxEaauWP7wlMyTgnREdx1aTEv1HbR0j/ui7C9Ynhyhv3NA1y3IRuAa9ZlMWvXHGwZ9HNkIphIchcBoaFnDLuGtcbIHeAb71vP6NQMb5zp5QtXlZOdFLPk89y9swSzSfFQEF+ErGkewGbX7Kp0tFfYUpxChEmxv0nq+IX7llyhKoQvnOkeBWBN9ruLk9blJPGnL7+HqRkbW4pS3Xqe7KQY3l+dz5M1Fr5y7RpS46O8Eq837W8aIMps4uKiFADioiKoyk+Wi6piWWTkLgJCS/8ESkFxevw5x6vyktlanIZSrufaz/eZK0qZnLHx230tng7TJ/Y3D1BdmExMpHnu2PbiVI5ahrHO2v0YmQgmktxFQLAMTpKTFENUxOrfkutykthVmcFv97VitwdXWeT0rI3jlmG2lZxbFVRdmIJ11j73CUeIpUhyFwHBMjhBQWqsx57vgxfn0zk8xRFLcJVF1nePMWvXVOUlnXO8usAxRXM0yP5/hP9IchcBwTI4SUFqnMee773rs4k0K54/vrLtBLqGp/jdQYvPe8Sf6nRsF7gh99zkXpgWS2pcJEfbJLkL90hyF343Y7PTOTzp0ZF7cmwkl5Vn8Epdz7Ifa7drvvzYIf7xqaPc9H93MzRh9VhcSznZOUJspPmCaw9KKS4qSOGYZdhnsYjgJsld+F3X8BR2jUeTO8AVlRk09o7TMTS5rMf9pbaTA82D3FqdR8fQJF954ojP5u5PdY6wNicR8wKLtaoLkjnTPSo7Tgm3SHIXftdmtPf15LQMMLdxx1sNfct63O8PWshLjuH/3rGZb99axeune/npaw0ejc2Vhp7xc8pB56suSMGu4UTHiE9iEcFNkrvwO8ugY2Rd6OHkvjY7kYyEKN4+6/7in8FxK7vr+7i1Og+TSXHXJUXctjmPH79ST227d6dEpmZs9I1Nu/wjt6kwGUDm3YVbJLkLv7MMTmJSkJO89ArU5TCZFJsLU5dVYfJqXQ+zds37jJ7xSin+1/urSImL4t+eO+nVjpNdw1MA5KUsPD2VlRhDbnIMR2XeXbhBkrvwO8vghMdq3M+3qSCZxr5xRqdm3Dp/d30v6fFRbMxLnjuWEhfFl6+pYH/TAHuX8SlguZzXBvJdJHeALUWp1DQPhERbY3+YsM4yYwuPhWCS3IXfWQY8WwY536aCZLSG2val56ntds2ehj52VWZc0H3yzh2FpMZF8lRNm1fiBGh3I7nvKE2jc3hqbipLuG9kaobrfvgm19z3OsfCYL2AJHfhd55ewDTfJmPxjzu/zKe6Rugbs8417JovOsLMNeuyebWux2sjv/ahSZSC7ORol+fsMPrZH2iWPjPL9cOXztA+NEnbwCTfee6kv8PxOknuwq+ss3a6Rqa8ltzT4qPISoymvmdsyXN31zuqanZVZix4/3UbshmZmvVaYu0YmiQzIZroCLPLc9ZmJ5IUEyFNxJbJZtf88XA7H9icxzdv2cCB5kGOhPiFaUnuwq/matzTvDMtA1CSEU9z39L93XfX97IuJ5EsF62Fd1VmYDapZVXfLEfH0JTLi6lOJpNiR2maJPdlqm0fZnhyhqvXZXHH9kLio8w8GqSN5dwlyV34lWWuxt07I3eA0vR4mpfYvGPSauNA06DLUTtAfHQE63MTqWn2zqYZHUOTi863O20vSaOxb5ye0SmvxBGK9hhrHS6vyCAhOoJbNuXx3LFOxkN4dytJ7sKvvFXjPl9JRjx9Y9ZFK2aOtw9jtdm5pDR90efaVpzGkbYhj8+7a61pH5okL2XpctC5efcm2ZnJXe809rMuJ5GMBMf1jI9uL2TCauMPh9v9HJn3SHIXftU2OOGVGvf5SjMcfVqa+yZcnnO41ZEonRtkuLKtJJXJGdtcgy9PGRi3Mj1rd2vkvjE/mdhIs+zM5CatNccsw+f8224pSqG6MIVf7m7EFmRtod0lyV34lWVwktzkWCLN3nsrOpN70yJTM4daBylOjyM9wXWlCrzbeve4h1erdgwtvoBpvkhjl6Ya2VPVLS39EwxPzsxVToFjcdpndpXS3D/BvsbQ/CMpyV34lWVwgnwvzrcDFKc7pnwWu6h6uHWIiwsXH7WD49pAYkyEx0fu7UOOTxXuJHdwzLuf6hxxe3FWOHOuUN5UkHzO8avXZhFpVrxZv7zeQ8FCkrvwK8vgpFfn2wFiIs3kJcfQ5CK5941N0zM6zcb85AXvn08pxfqcJE51enZHpHZj5O7OtAw4krtdw6HW0C7n84RjlmGiI0ysmbf5OjgukG8pSmV3fa+fIvMuSe7Cb7xd4z5fSUa8y+Tu3LpubU7igvefb31uInWdIx5tA9wxNElspJmUuEi3zr+4KIVIs2Lv2dAcdXrSMcsQVXlJC0797arM4ETHCAPjvuvZ7yuS3IXfdA5Por3Qx30hJRmuyyHrux0LnM4f2bmyLjeJcattrlWxJ3QYlTLubgQeHx3B1uJU3jwjyX0xszY7te0j58y3z7elOBXw/DWUQLBkcldKPaSU6lFK1c479oRS6ojx1ayUOjLvvq8rpRqUUqeVUjd4K3AR/NoGHGWQ3uorM19pejxDEzML7qp0unuU5NhIshIXv5jqtN7YAs+TUzOO5L68P3JXrMnkVOeI1LsvoqF3jMkZG9WFC0+5VRkN4rzdztkf3Bm5PwzcOP+A1voOrfVmrfVm4PfAHwCUUhuAO4Eq4zE/V0q5XkstwpovFjA5lTgrZhaYmqnvHmVNdoLbo+a12YmYFB69qNo+tPzpqavXZgHwzOEOj8URao61OZL2RfkLj9yTYyMpTo/jREcYJnet9ZvAgmudleO34aPAY8ah24DHtdbTWusmoAHY4aFYRYixDE5iNilyvVjj7lTqIrlrrTnTPUalm1MyALFRZkoy4j2W3J2bdOQlLy+5r89N4rKydB7c3cjUjM0jsYSao5YhEqMjKMuId3nOxrzk8JyWWcIuoFtrXW98nw/M74lqMY5dQCl1r1KqRilV09sbmlerxeIsgxPkJscQ4cUad6eitDhM6sJyyJ7RaYYnZ1i7jOQOjsR6qsszyX2pTToW8+X3VtAzOs2DbzZ6JJZQc8wyzMb85AtaOM+3IS+JtoHJkCsrXe1v1cd4d9S+LFrrB7TW27TW2zIzL2yxKkKfZXDSJ1MyAFERJgrT4mg8L7k7K2UqXexb6sqGXM8lBGcf95Uk953lGbzvolx+8lqDzL2fZ3rWRl3XyNz2hK5UZDn+7c/2Lt1cLpisOLkrpSKA24En5h1uBwrnfV9gHBPiAo7k7v2LqU6lC5RDnllmpYzT+lzH+XVdq7+o6s4mHYv5++vWYJ2183QI90lZibrOUWZsem5VsSvO5N7gRlvoYLKakfu1QJ3W2jLv2LPAnUqpaKVUKVAJ7F9NgCI0Tc3Y6B71TY27kzO5z9+i7kzXKOnxUXMNpdz1bsXM6qdmOtzYpGMxFVkJXFyUwlM1lqVPDiPOfu3VS6w8Lk6LI9Kswi+5K6UeA94G1iqlLEqpTxt33cl5UzJa6xPAk8BJ4AXgi1prudIjLtA2MIHWUJLu+kKXp5VlxDNhtdEzOj137HT36LKnZABykmJIjo30WHJfapOOpdxWnUd9zxit/Z6rvQ92NS2D5CTFkLfEBfsIs4mS9PiQS+4RS52gtf6Yi+N3uzj+XeC7qwtLhDrn9EjJIlUMnlaaYcyt9oyRnRSDza453TXKnTsKl3jkhZRSrM9N5KQHat3d2aRjKbvWOK5b7W7o5a704lXHFApqmgfYVpLqVolrRVaCx/sF+ZusUBV+4VwtWurDkfuaHEdyP21cRG3uH2dyxsYGY4pluTbkJnO6a2TVvd07hiZX3TytLCOe3OQY3mqQFavguI7ROTzFNmMF6lLKMuNpG5z02v64/iDJXfhFU98EqXGRJLvZS8UTMhOiSY2LnKuQOdnhGKltyFtZct9RmsrUjJ2jq9iL07lJx0ovpjoppdhZnsE7jQPnXFMIVzXGPrfbStLcOr8kPR6bXdM2EDrTWpLchV809437dEoGHAlwbU7iXIXLqc4RIs2KyqzlVco4XVaWgVLvbuG2Es5NOpaaF3bH5qIUBsatc9U34exgyyDxUWbWudkMbm5DlyW2YwwmktyFXzT3j/t0SsZpbXYiZ7pG0VpzuHWIyqxEoiJW9muQHBfJpvxkdq+iH/hqatzPt8loWXzcEnqrLZfrQPMgFxelur1A7t32FDJyF2LFhidn6ByeomIFVSqr5ezoeLx9mJqWgUU3xHbHdRuyOdgyyNnelVVadHgwua/NSSTCpDgWgkvpl2N0aobTXSNsdXO+HSA9PorE6IhFN3QJNpLchc8557zd/cjsSVcaVSXffvYEMzY99/1K3bG9iCiziZ+92rCi/u7L3aRjMTGRZtbmJIb9yP1w6xB27djQxF1KqUXbQgcjSe7C55xz3mtzVnYhczXyUmKpLkjmcOsQCdERbC1xf3S3kMzEaD61s5g/HG7n5h/v5ncHLcvacLl9cJK4KPc36VjK5sIUjrQNheymz+6oaR7ApBzXIJZjsQ1dgpEkd+Fzp7tGSIyJ8MhFxJW45z2l5KfE8vO7tqxq4ZDTP9+8nvs+Ug3APz51lH95+rjbj20fmiAvJdbtdsNL2VaSytj0LKc90BYhWNW0DLI+N4mE6CWX8ZyjND2OjqFJpmdDY92lJHfhc6c6R1mbneixhLZct23O562vXcMVq5yScVJK8aGtBTz/d7v47JVlPLa/jWeOuNfnpWNoyiNTMk7bih1TETUtC3bpDnmzNjtH2oaWNSXjVJIRj10TMuWQktyFT41Nz3LMMrTq6ZBApJTiqzeso7ogme/++RRj07NLPqbdAwuY5itIjSUnKYZ9jeGZ3E91jjJhtS3rYqpTqFXMSHIXPrWvsZ8Zm+aKytBs82w2Kb516wZ6Rqf5/cHFG3lNWGcZGLd6dOSulOKa9Vm8Utft1h+XUHNgbvHS8pO7szQ3VCpmJLkLn9pd30dMpGlFI6tgsbU4jY35STy2v3XR1aIdq2z168qHthQwNWPn+eOdHn3eYHCwZZD8lFhyl7mrFUBqfBTJsZE0hUjFjCR34VO763u5pDSdmMjQ3lr3ju1F1HWNLrqJtmXQSO4ebnu8pSiForQ4/hxmyV1rTU3LwIpG7U4lGfEychdiuTqGJjnbO77qhUPB4IaqbABeret2eU6HB2vc51NKcUNVNnsb+kNu67jFWAYn6R6ZdrtZ2EJK0+MkuQuxXHuMZfq7QnS+fb6sxBiqC5J5pa7H5TntQxOYTYqsxJVt0rGY66tysNrsvHEmfPYndlYIudssbCElGfF0DE+FxIbjktyFz7xZ30tWYjRr/NB2wB+uXpfFkbYhhicWHj23D06Sk+SdDcK3FKWSkRDFiydcf3IINTXNgyRGRyx7y8T5nA3EWkJg0xNJ7sIn7HbNWw197KrM9Ft9u69tLU5Fa6jtWLgdgKfLIOczmxTXrs/mtbqekFmUs5SDLYNcXJyK2bTy95dzZ7BQWKkqyV34xImOEQYnZrhiTejPtzttzDO6NLpo5NUxNEWBh+fb57u+Kpux6VnePBP6G3hYZ+009IxxUf7qWlqUhFDrX0nuwiecPc8vrwif5J4aH0VBauyCyX3WZqdrZPXb6y3m8ooMitPj+M5zJ0PmIqErTX3jzNr1qqZkAJJjI0mPj6KpN/hfL0nuwieOtA1SmhFPRoLnLx4Gsovyk6ldILl3jUxhs2uvTcsAREeY+cGHq+kanuKa+17nl3uavPaz/M3ZaXS1yR2gPCuBhhW2cA4kktyFTxyzDLOpINnfYfhcVV4SLf0TF6wWbR/0zgKm8+0oTWP3P13NdRuy+c5zJznhYv4/2J3pHsVsUpRlrn4DmMqsBOq7R4N+u0JJ7sLrekam6ByeYlPB8lqwhgJnW2PnyNLJecGu1AdbDWYnxfD9D1UTE2niN++0ev3n+cPprlFKM+I90uWzMiuBkalZekenPRCZ/0hyF1531Ng8ojoMR+7ODUnOb8F7tneM6AiTV+fc50uOi+TWTXk8c6Q9JGq4z3em29Fp1BMqjeep7wnuqRlJ7sLrjlmGMJsUVXnhl9zzU2KJjzIvkNzHKc2IX1XZ3nLdvCmXCauNdxr7ffYzfWHSaqNlYMIj8+3gGLkD1HcHd098Se7C645ahqnMSiA2KrT7ySzEZFJUZidS1zVyzvGzvWOUZ/l2MddlZenERJp4/XRorVpt6BlDa1ib45nXMzMxmqSYiKC/qCrJXXiV1ppjliGqw3C+3WlDXhInOkbm9lidmrHRNjBBeaZvk3tMpJmd5Rm8ftp1S4RgdNqDlTLg6M1TmZ1IfbckdyFcahuYZGhihk2F4Tcl47S5MIXRqVka+xzJ4mzvGHYNFT4euQPsLE+nuX+CruEpn/9sbznTPUpUhInidM9dnK7MSqBB5tyFcO1Q6yDgSHDhakuRo0vhodYhwLFMHuBiP7wmO0odTbX2N4fOTk2nu0apyEzw6PWLiqwE+set9I8Fb8WMJHfhVW819JEcG8n6nNUtCw9mZRnxJMVEcNhI7geaB8lJiqHAiwuYXNmQm0R8lJkDTaGT3Ou7R1mb45kpGSdnxUwwj94luQuv0Vqz92w/l5WlY/JhVUigMZkU20rSePNML3a75kCTY0MJfzRQizCbuLgolcNtgz7/2d4wMjVDx/CUx+bbnZydS+u6grdiRpK78Jq2gUnahybZWZHu71D87tbqXNqHJrn/jbN0jUyxs9x/PXYqshJo6h0P+hWY8G65oqcqZZxykmLITIzmaNuQR5/Xl5ZM7kqph5RSPUqp2vOOf1kpVaeUOqGU+v68419XSjUopU4rpW7wRtAiOOw962gWtrNckvv1G3KIjTTzgxdPk5EQze1b8v0WS3lmPONWG90jwTuf7HS6yzFt4umRu1KKzYUpHAnl5A48DNw4/4BS6mrgNqBaa10F/IdxfANwJ1BlPObnSqnwK24WAOw9209WYrTPS/4CUXx0BD+6YzM7StP45i3r/bqHbJnx73E2yOu4wVEpEx9l9kqPns2FKTT2jTM0YfX4c/vCkslda/0mcP7Vl88D/0drPW2c4yycvQ14XGs9rbVuAhqAHR6MVwQJ53z7zvL0sNmcYyk3bszhyc9exm2b/TdqB+b+2DaGQHI/3TVKZXaiV95jziqnYN2qcKVz7muAXUqpfUqpN5RS243j+UDbvPMsxrELKKXuVUrVKKVqenuD88UTrrX0T9A3Ns2OUpmSCTTZSdHER5k5GwI9yz3ZU+Z8O0rTWJudyH0vneGvJ7sZGA+uEfxKk3sEkAZcCvxP4Em1zD+dWusHtNbbtNbbMjNDf8PkcOPcWi4c2/wGOqUUJRnxQb/bUN/YNP3jVtZ4uAzSyWxSfPvWDXSNTPHfHqlh1/depSaI1gesNLlbgD9oh/2AHcgA2oHCeecVGMdEmDnRMUKESVEZJpthB5vC1DjaBoJ7E+gzRpmit0buADsrMjj8zet44t5LyUqK4fO/PcSMze61n+dJK03uTwNXAyil1gBRQB/wLHCnUipaKVUKVAL7PRGoCC4nOkaozE70SH9t4XlF6XFYBifn+t0Eo3d7ynh3ABEfHcElZen8883r6R2d5o0gabzmTinkY8DbwFqllEUp9WngIaDMKI98HPiUMYo/ATwJnAReAL6otQ695tFiSSc7hqnKC99VqYGuMDWW6Vk7vUG8vP5U5wjp8VFkJvpm68ar1maSHh/F7w5afPLzVitiqRO01h9zcdcnXJz/XeC7qwlKBLfBcSt9Y1avflwWq1OQFgdA28AE2Ukxfo5mZU51jrI+N8ln1ViRZhO3bMrl8QNtTFhniYtaMn36laxQFR7X1O+7LeTEyhQ5k/tgcM67z9rsnO4eZYOPPx3euDGX6Vl7UEzNSHIXHtdklNiVemCzYuEdzkU/rf2Tfo5kZRr7xrHO2lmf69tPh9tLUkmLj+LZox0+/bkrIcldeFxz/zhmk6IwNc7foQgXYiLNZCdFB+3I/WSHY2erDbm+LbWNMJv46LZCXjjRFfCLwCS5C49r7BunIDWWqAh5ewWyorQ4WoO0HPJU5whRZhNlfvh0+On3lBIdYeKehw/wVkOfz3++u+S3T3hck7H5swhshalxWII0uZ/sHKEyO4FIs+9TWGZiNL+629FV5a5f7OPJmrYlHuEfktyFR2mtae6X5B4MCtPi6ByZwjobHIty5jvVOcKGXP+V2l5Wns4LX7mCS8vS+Lc/naRzOPCuXUhyFx7VMzrNhNUmyT0IFKbFoTW0DwVeYlpMz+gUfWNW1vsxuYPjusX3P1SNddbOf7x4xq+xLESSu/Coxl4pgwwWhcY2f8HWhqC23dG3yNdlkAspSo/j7stL+MNhS8Bt7CHJPUANT87wz388zj88cYSpmeBZ5NssNe5Boyg9OGvdDzQPEmFSVBcExqbrX7qmgqzEaP7p98eYDaC+M5LcA9S3nqnliQNt/PFIO//0+2P+DsdtTX3jREWYyEv2/ebPYnmyE2OIMpuCrmKmpnmAjfnJxEYFRt+ipJhIvnVLFXVdo/z5eKe/w5kjyT0AdQ1P8edjndy9s4R7d5Xxp6MdQTMv2tg7Tkl6XFhviB0sTCZFfmosloHgeG8BTM3YONo2zPaSVH+Hco6bNuZQmZXA/a+fDZi9aSW5B6Ana9qwac2nLivhkztLAHh0X4t/g3KTVMoEl8Igq3V/p7Efq83OpWWBtQmMyaT4m8uKqesapakvMPrkS3IPQC/UdrGlKJWi9DjyU2LZWZ7BSye6/R3Wkmx2TUv/OKUZ0sM9WBSmxgbVnPufj3WSGB3Beyoz/B3KBa5emwXAawHSd0aSe4BpG5jgZOcI12/Injt21dpM6nvGAn5qpn1wkhmbpjRD2g4Ei6K0OIYmZhiZmvF3KEuyztp58UQX11VlB+Q+AYVpcZRnxvP66Z6lT/YBSe4B5uWTjhH69VU5c8euWuvYhjBQ3jSuvNsNUkbuwaJwXuvfQLe7vpeRqVlu2ZTr71Bc2lmeweHWoYDYBEWSe4B56WQXa7ITzpm3Ls9MID8lltcD5OOeK01GIyWZcw8ezuZuwZDc/3ysk6SYCN5TEbh7LlflJTE2PRsQU12S3APIwLiV/U0D3DBv1A6ODY2vXJvJ3oa+gF4q3tQ3TkJ0BBkJUf4ORbip2JhCa+rzfzJazNSMjZdOdnNDVU5AN6RzLqxydq30p8B9lcLQK6e6sWu4fkPOBfddtSaTcauNmpbA3X29rmuU8qwEn+2MI1YvKSaSrMRozgZ4+9o3z/QyNj3LLdV5/g5lUWuyEzGbFKc6JbmLeV462U1ecgwb8y9cVr2zIgOTgncaAzO5z5X0PRoAABwxSURBVNrsHLMMc3FhYKwaFO6ryEoI+OT+3LFOUuMi2VkeWCWQ54uJNFOeGc9JSe7CacI6y+76Xq6vyllw5JsQHUFlViLHLIHVv8KprmuUyRkbW4oDa3GJWFp5ZgINPWMBs/jmfHa75o0zvbx3fbZfWvwu15rsRM50+/+PZeC/UmHi5ZPdTM3YL5hvn29TQTLHLcMB+Ut4qHUQgC1FMnIPNuWZ8YxOzdI7Nu3vUBbU2DfG8OQMO0rS/B2KWyqyEmgbnPB7TyhJ7gHij4fbyU+J5ZJS12/gTYUp9I9b/VbvPjo1w89ea+CbT9dyoPnc6aFX63rIT4md25tTBI/yLEfp6tmewFhZeb6aZmPgECSfCsszE9D63Q6p/iLJPQD0jk6zu76P2zbnLdqTpbrAsV/kMcuwr0Kbc7Z3jJt/vJsfvHiaPxyycMf/e5tf7mkCoHN4kjfP9HL7lny5mBqEyjON5B6g8+4HWwZJjYukPEg2XK8w/lg2+Pn1jPDrTxcAPHu0A5tdc/uW/EXPW5eTRJTZxFHLEDdf5LuFHJ3Dk9z14D5m7XZ+//nLWJuTxP948gjfee4k+5v6mZqxY9fw4a0FPotJeE5ucgxxUeaATu5bi1ODZuBQmhGPScHZHknuYe+Phy1clJ9MRVbioudFRZhYn5vIsTbfjdz7x6b5xC/2MT49y5Ofu2xu95uffXwLP3/9LA+82ciEdZZ/u62K4vTgGFmJcymlKM9M4KyfpxEWMjBupbFvnA9vC56BQ0ykmcK0OBm5h7ua5gFq20f4zm1Vbp2/qSCFpw+3Y7drr7fVHZ2a4e5fHcAyOMkj9+w4Z1uzCLOJ//7eSr5wVTmTMzYSYyK9GovwrvLMeA4Yc9uB5GCLI6ZtxcFxMdWpPDPB7yN3mXP3I601P3/9LKlxkXx4a6Fbj9lUkMzo9CyNXm4rOjVj49O/ruFU5wj3f2ILl7hosRphNkliDwHlmQm0D00yYZ31dyjnONgySKRZscm43hQsKrISaOwbx+bHHjOS3P3AbteMTc/yi91NvFrXw+euLHd7V5nNxiIhb+/X+K1natnfNMB9H63mmnXZSz9ABDVnxYy/KzzO93ZjP5sKUoiJDLwukIupyEzAOmv3a88emZbxoakZG7/Y3cjDe5vpG7MCcO36bD6zq8zt5yjLTCAhOoKjliE+5KULmAeaB3iyxsIXry7nts2LX+QVoaHMqERp6htnY35gjJKHJ2Y4bhniS9dU+juUZXP+sWzoGaPET430JLn7wKTVxiNvN/Prvc10DE/x3nVZbClOJTc5hg9szl/W3LnZpLgoP5kjXhy5P7y3maSYCL54dYXXfoYILCXp7yb3QPF2Yx92DbsCcGOOpVTMKy+9Fv988pXk7mVDE1Y++PO9NPWNs6M0jfs+upnLVtkfo7owhV/uaWRqxubxj6tdw1O8WNvF3TtLiIuSt0e4iIk0k58SG1DJfU9DH/FR5rmpyGCSHBdJTlKMX3vMyJy7l/3L07VYBid45J4dPPnZy1ad2AG2FqcyY9NeGb0/ur8Vm9b8zWXFHn9uEdhKM+JpXEb53mt1Pext6PNaPG819HNpWXpQ9JNZSHVhstevjS1myVdNKfWQUqpHKVU779i/KqXalVJHjK+b5933daVUg1LqtFLqBm8FHgxOdozw3LFOvnBVBVes8dwGA5eUpWE2Kd7y8C+WddbOo/tauXptltSsh6GyzHga+8bd6l30p6Md3PPrA9z98AFq2z2/7sIyOEFT3ziXVwTflIzT5sJUmvsnGBy3+uXnu/Mn8WHgxgWO/0hrvdn4+guAUmoDcCdQZTzm50qp4LrM7UG/2N1IXJSZey4v9ejzJsVEUl2QzB4PJ/fnazvpG5vmUztLPPq8IjiUZjgaiPUvkYyGJqz8y9O1bC5MISkmgp++2uDxWJwDl0DcCNtd1YWOC9NH/dTJdcnkrrV+E3C3ifhtwONa62mtdRPQAOxYRXwBYWrGxvdeqOPaH77Blx87TM/I1JKP6Rye5NmjHdyxvZDkOM/Xgb+nMpOjbUP0jC4di7v+6+0WSjPi2RXEoyWxcs7tEZcqh/z562cZnZrh32+/iPdUZHCoddDjnUr3NPSTlRhNZVbw7se7qSCFCJPy2x4Mq5nM+pJS6pgxbeNs15YPtM07x2Icu4BS6l6lVI1Sqqa3N3D3Bp2asfG53xzk/tfPkpMUw8snu7jlJ3s43TW66ON+9VYzdq09Pmp3en91HnYNTx9u98jztQ9NUtMyyIe3Fnh95asITM4GYk19rufdhydn+O07LdyyKY91OUlcXJRKz+g0ncOeG2TY7Zq3Gvp4T0VG0PSTWUhCdASXlqXz8skuv/z8lSb3+4FyYDPQCdy33CfQWj+gtd6mtd6WmRl4G94OTVj5y/FO7vh/b/P66V7+/faL+M1/u4Snv3g5AB/8+Vv85JV6jrQN0X9eH+y6rhF+9VYTH9icP7e7vKdVZCVwcVEKTxxo88hO688f7wQI6J3lhXflpcQSZTYtuvr5qZo2xq027r3CsTbjYqN/v7Ofvyec6hphYNwa1PPtTtdXZXO2d5wGP7QiWFGtm9a623lbKfUg8JzxbTswfx19gXEsqPz4lXp++loD1lk7mYnR3H/XFm4yujCuy0nimS9dzjf+WMt9L5/hvpfPAJCXHMOW4lSK0uJ4/EAbSTGR/MstG7wa5907S/i7x4/wl9pObtm0ur0lX6jtoiovSS6khjGzSVGcHrfotMyfjnWyqSB5bqHT+lxHp9Lj7cOrfg86hcJ8u9N1G7L51jMneOlkFxVZvl03sqLkrpTK1Vp3Gt9+EHBW0jwLPKqU+iGQB1QC+1cdpQ+9frqHH758hps25nDPe0rZXJhyQSlWbnIsD929nbaBCU53jdLcP86RtiEOtgzy5+OdXFyYwvc/XE1afJRXY71lUx4/fbWBH718hps25mJe4XTK0ISVQ62DfEkWLYW9ssx4l90h2wYmONo2xNduWjd3LNJsoiAtltZ+zy2z313fR2VWAtlJMR57Tn/JTY6luiCZF09084WrAiy5K6UeA64CMpRSFuDbwFVKqc2ABpqBzwJorU8opZ4ETgKzwBe11v7da2qZ7nvpDGUZ8fzojs1LLhAqTIu7YNrFOmsnKsI3dblmk+IfrlvD5397iGeOtHP7lpW1I9jT4FgJeOXaLA9HKIJNWWYCr9b1MGOzXzCo+espxwf2mzaeuxVkcVocrR7qoTI1Y+NA8wAf21HkkecLBNdX5fCDF0/TNTxFTrLv/mC5Uy3zMa11rtY6UmtdoLX+pdb6b7TWF2mtN2mt3z9vFI/W+rta63Kt9Vqt9fPeDd+zznSPcrx9mLsuLV7xyk9fJXanG6pyqMpL4kd/PYN11r6i53j9dC/JsZFBuRJQeNa6nERmbHrBqZm9Z/spSou7YOquKC2O1v4Jj1TMHGodZGrGzntCYL7d6YYqR/uBl091L3GmZwXn0i8vefZIB2aT4v3Vnpk79AWTSfHVG9fRNjDJo/talv14587yuyozVjytI0LHuhxHz/66rnOXzdvsmn2N/excYIV1YVoco9OzDE3MrPrn76nvI8KkXLaYDkblmQmUZcTz0gnfVs1Icp+npmWAjXlJZCZG+zuUZbmiMoPLytL5yasNjE0vrx/3yc4RekenuUqmZASOOfcos4lTneeW+p7sGGFkanbB9hnOkbwnpmbeaujj4qIUEqJDp6+RUorrq3J4+2w/w5Or/wPoLknuBrtdU9s+wqaC4JuaUErxTzeto3/cyoNvNi7rsW+ccawxuGJN6HwMFisXaTZRkZVwwcj9YItjIc72kgt3RCoyrjutNrkPT8xwrH04JEogz3d9VTazds1rdT0++5mS3A2NfWOMTc8G3Y4vTpsLU7hpYw6/2N1I7+j00g8wvHG6l6q8JLISg78yQXjG+twkattHzplDP9Q6RE5SDHkpsRecX5jmOLba5L73bB9aE1Lz7U6bC1LISozmJR8uaJLkbjhqbDpdHcQXFf/xhrVMzth4cLd7o/fhyRkOtg5y1drAW0Qm/Ke6MJm+sWk65q06Pdw2OLdg6XxxURFkJESvuhxyT0MfCdERQf076IrJpLhuQzavn+5lasY3BYSS3A3HLEPERZnnlmAHo/LMBN63KY9H97W6Nbf3VkMfNrvmyjUy3y7e5ayaOmysOu0dnaZtYJItRakuH1OcvvpyyLca+ri0LC1oW/wu5Zp1WUxYbRxq8c1G5KH5Kq7AUcswG/OTg75i5LNXlDE2Pctv3lm6cuavJ7tJjo1ki4sRmQhP63KSiIowcaTV0c1w71nHitHtpRfOtzsVrbLWvW1ggub+iZCcknG6pCydCJNitxd74M8nyR2Ysdk52TlCdZDOt8+3MT+ZK9Zk8qu3mhf9+Ddjs/NKXQ/vXZ9FRIiOlMTKREWYuCg/mQPNjouoe+r7SI6N5KJF9lYtTIujY3hyxWstQqnlgCsJ0RFsKUpld71vGiXKbzVwumsU66w9KCtlFvK5K8voG5vmdwctLs9xlmVdvyHH5TkifF2zLoujlmG6hqfYXe/o0LjYp9qitDi0dnQXXYndDX1kJ0UH9bSoO65al0lt+wiWQc+1a3BFkjtw3NhJJlgrZc53WVk61YUpPPBmIzO2hUdSv97bTFp8lFxMFQu6foNjVeXfP3GErpEprt2w+HWZ4nRHOWRL//L3YNVa8/bZfi4P8ha/7rjlIscCyeeOdS5x5upJcgdq24dJiomYq9cNdkop/u69FbQOTPC95+vQWjM6NcOE1bHA6UDzAK/U9fCJVbRZEKGtIiuBDblJvN3YT2lGPLcu0fGxMNXxu2MZXP7I/WzvOAPjVi4tDZ1Vqa4UpcexuTCFp2ramHUx8PKU0FkGtgq17Y6LqaE0arhmXTZ3XVLEL/Y08czRDvrGpjEpRXlmPK0DE5RmxHPP5SX+DlMEKKUUj37mEh7e28zVa5e+LpOVGE2kWa0oudcYc/tbS1xX44SSz11Zxud+c4iH9zZzz+WlWG12rwyywj65z9jsnOoa5e4Q3Df0327bSFVeMjXNAxSlx2HXjj9k20vS+NI1FaTEebclsQhuKXFRfOXaNW6dazIp8lJiVzTnfqB5kLT4KMoywmMvgRuqcrhmXRb/+y+neHB3I5+8rIQveqHddtgn94aeMayzdqrykvwdiseZTYqPX1LExy8JnfapInAVpMau6ELhgeYBthWnhtQn58Uopfjpxy/mX589wfDkDBu8lHvCPrnXGhdTNy5S5iWEWFp+SiyvnV5emZ9lcILWgQn+NsymCOOiIvj+h6u9+jPC/oLqiY4R4qPMlMr2ckKsSkFqHL2j08taXv/22X6ABbtNitUJ++Re2z7MhrwkTEG+MlUIfytIdTQQ61jGvPvbjf2kx0exJivRW2GFrbBO7ja75mTnCFV5MiUjxGrlGx0j3a2Ycda3X1qWLoMrLwjr5N7UN86E1Sbz7UJ4QIGxTsTdipmW/gk6h6dkSsZLwjq5n+hwXkwNvUoZIXwtOzGaCJNyu2JmrzHfvtDWfWL1wjq5H7cMEx1hoiLE+1kI4QsRZhO5KTFuT8u8drqHnKQYSsOkvt3Xwjq513YMsy43SboiCuEh+SmxtLuR3AfGrbx+uodbq3PDpr7d18I2q9ntmhPtI2wMwcVLQvhLQWqcWyP33x1sY8amuX1LgQ+iCk9hm9zbBicYnZ6Vi6lCeFBBaizdo1OL9nXvGJrkx680sKsyg/W5MrjylrBN7rXtjt3dF9uAQAixPIWpjr7ubS4uqvaNTfPJh/Zj15r/7wMbfRxdeAnf5N4xTKRZUZktF1OF8JTyLMfv09mesQvuG5+e5RO/2IdlcIKH7t5OsawK96rwTe7tw6zJTiQ6QvqZC+EpZZmOhN3Qe2Fy/807LdR1jXL/J7ZyaZmUP3pbWCZ3rTUnOkZCshOkEP6UFBNJdlI0DeeN3K2zdn65p4nLK9K5eu3iuzoJzwjL5N4+NMnAuFXm24XwgoqshAumZd5p7KdndJq7d5b6KarwE5bJXdr8CuE9FZkJNPSMYbfruWMvn+wmNtLMrsoMP0YWXsIyuR9vH8ZsUlKGJYQXVOUlM261cdaYd9da89dT3VyxJkP27PWhJZO7UuohpVSPUqp2gfv+h1JKK6UyjO+VUurHSqkGpdQxpdQWbwS9WsfbR6jMSpA3mhBesL00DXBsnweOsuPO4SmuXZ/tz7DCjjsj94eBG88/qJQqBK4HWucdvgmoNL7uBe5ffYiepbWmtn2YTQUyJSOEN5Skx5GREM0BY+Prl092YVLwXknuPrVkctdavwkMLHDXj4CvAnresduAR7TDO0CKUirXI5F6SMfwlFxMFcKLlFLsKE1l79k+Zm12XjjRxbbiNNLiZUN2X1rRnLtS6jagXWt99Ly78oG2ed9bjGMB47hFLqYK4W3vr86ne2Sar//hOGe6x/jQ1oBKA2Fh2RtkK6XigH/GMSWzYkqpe3FM3VBUVLSap1qWWrmYKoTXXbchm5L0OJ46aKEgNVYahPnBspM7UA6UAkeNVp0FwCGl1A6gHSicd26BcewCWusHgAcAtm3bphc6xxuOtQ/LxVQhvMxsUvzsri3sqe/j8ooMIqWtts8tO7lrrY8Dc0vMlFLNwDatdZ9S6lngS0qpx4FLgGGtdaengl2tGZudg80DfHCLfEQUwtuq8pJlf2I/cqcU8jHgbWCtUsqilPr0Iqf/BWgEGoAHgS94JEoPOWYZYtxq4/JyWUghhAhtS47ctdYfW+L+knm3NfDF1YflHW819KMU0rRICBHywmoi7JW6Hi7KTyZVSrKEECEubJJ7S/84R9uGeN9FAVV2L4QQXhE2yf3ZIx0A3FKd5+dIhBDC+8Iiudvsmidq2ri0LI38lFh/hyOEEF4XFsn9zfpeLIOTfOLSYn+HIoQQPhEWyf2377SQkRDF9Rty/B2KEEL4RMgn9/ahSV6t6+Gj2wqJigj5/10hhADCILk/8nYzAB/b4bv+NUII4W8hndxHp2Z49J1Wbrool8K0OH+HI4QQPhPSyf2x/a2MTs/y2SvK/B2KEEL4VMgmd+usnYf2NLOzPJ1NBSn+DkcIIXwqZJP7Sye76BqZ4jO7ZNQuhAg/IZvcH9/fRn5KLFesyfR3KEII4XMhmdxb+sfZ09DHndsLMZuUv8MRQgifC8nk/viBNswmxUe2FS59shBChKCQS+7WWTtP1bRxzboscpJj/B2OEEL4Rcgl91dOddM3ZuXjsmhJCBHGQi65P7q/lbzkGLmQKoQIayGV3NsGJthd38dH5UKqECLMhVRyf+JAGyYFH5ULqUKIMBcyyX3GZufJmjauXptFnmzIIYQIcyGT3F+t66FndFq6PwohBCGU3B/b30pOUgxXrZULqUIIERLJ3TI4wRtnevnotgIizCHxvySEEKsSEpnwyQNtAHx0u1xIFUIICIHkPmuz80RNG1euyaQgVTbkEEIICIHk/trpXrpH5EKqEELMF/TJ/cHdjeQlx3DNuix/hyKEEAEjqJP7odZB9jcN8OldZUTKhVQhhJgT1BlRa7hiTSZ3yoVUIYQ4R4S/A1iNrcWpPHLPDn+HIYQQASeoR+5CCCEWtmRyV0o9pJTqUUrVzjv2HaXUMaXUEaXUS0qpPOO4Ukr9WCnVYNy/xZvBCyGEWJg7I/eHgRvPO/YDrfUmrfVm4DngW8bxm4BK4+te4H4PxSmEEGIZlkzuWus3gYHzjo3M+zYe0Mbt24BHtMM7QIpSKtdTwQohhHDPii+oKqW+C3wSGAauNg7nA23zTrMYxzoXePy9OEb3FBXJAiQhhPCkFV9Q1Vp/Q2tdCPwW+NIKHv+A1nqb1npbZqZ0chRCCE/yRLXMb4EPGbfbgflF5wXGMSGEED60ouSulKqc9+1tQJ1x+1ngk0bVzKXAsNb6gikZIYQQ3qW01oufoNRjwFVABtANfBu4GVgL2IEW4HNa63allAJ+iqO6ZgL4W611zZJBKNVrPE8wyQD6/B3EMknMviEx+0awxeyNeIu11gvOay+Z3MXClFI1Wutt/o5jOSRm35CYfSPYYvZ1vLJCVQghQpAkdyGECEGS3FfuAX8HsAISs29IzL4RbDH7NF6ZcxdCiBAkI3chhAhBktyFECIESXJ3QSn1d0qpWqXUCaXUV4xj/6qUajdaHR9RSt087/yvG62OTyulbvBhnAu1ZE5TSr2slKo3/ptqHHfZklkp9Snj/Hql1KcCJN6rlFLD817vb817zI3Ga92glPqat+JdJOaPGO8Nu1Jq23nnL/heCNSYlVIlSqnJea/zf867b6tS6rgR84+NtSy+jPkHSqk64/36R6VUyrz7AvV1XjBmn7/OWmv5Ou8L2AjUAnE4mqv9FagA/hX4xwXO3wAcBaKBUuAsYPZRrFcAW4Daece+D3zNuP014HvG7ZuB5wEFXArsM46nAY3Gf1ON26kBEO9VwHMLPIfZeI3LgCjjtd/g49d4PY6FfK8D25Z6LwR4zCXzzzvvefYb7xVlvHdu8nHM1wMRxu3vzXtvBPLr7Cpmn77OMnJf2HociW9Caz0LvAHcvsj5twGPa62ntdZNQAPgk/3/9AItmY14fm3c/jXwgXnHF2rJfAPwstZ6QGs9CLzMhT38/RGvKzuABq11o9baCjxuPIdXLBSz1vqU1vr0Aqe7ei8EcswLMt4bSVrrd7QjAz3C0v82K+Yi5peM30GAd3D0q4LAfp1dxbwgb73OktwXVgvsUkqlK6XicIx4nQ3RvmR83HrIOX2A61bH/pKt3+3p0wVkG7ddxenv+F3FC3CZUuqoUup5pVSVcczf8S4mUF/jpZQqpQ4rpd5QSu0yjuXjiNPJ3zHfg2NUC8HzOs+PGXz4OktyX4DW+hSOj1MvAS8ARwAbjp2lyoHNOHrU3+evGN1ljASCpt71vHgP4eidUQ38BHjab4GFtk6gSGt9MfAPwKNKqSQ/x3QOpdQ3gFkcXWiDwgIx+/R1luTugtb6l1rrrVrrK4BB4IzWultrbdNa24EHeXfqJdBaHXcbH/WcH/l6jOOu4vR3/AvGq7Ue0VqPGbf/AkQqpTICIN7FBOpr7JIxtdFv3D6IY856DY745k8p+CVmpdTdwC3AXcYffwjw13mhmH39Oktyd0EplWX8twjHfPuj6twtAz+IY/oGHK2O71RKRSulSnHsIbvfl/Ge51nAWfHyKeCZeccXasn8InC9UirVmGq63jjm13iVUjnOqgGl1A4c79d+4ABQqZQqVUpFAXcazxEIXL0XAjZmpVSmUsps3C7DEXOj8d4YUUpdavw7fJJ330u+iu1G4KvA+7XWE/PuCtjX2VXMPn+dvXUVOdi/gN3ASRxX299rHPsv4DhwDMcbJnfe+d/A8Zf4NF6sKFggzsdwfNybwTFX92kgHXgFqMdR6ZNmnKuAnxlxHufciol7cFyUasDRqjkQ4v0ScML4N3gH2DnveW4Gzhj/L9/ww2v8QeP2NI5W2C8u9V4I1JhxbLZzAsf04yHg1nnPsw3HIOYsjnbeyscxN+CYQz9ifP1nELzOC8bs69dZ2g8IIUQIkmkZIYQIQZLchRAiBElyF0KIECTJXQghQpAkdyGECEGS3IUQIgRJchdCiBD0/wOhZi+AKGnTTQAAAABJRU5ErkJggg==\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Testing dataset graph\n", + "plt.plot(testPredictPlot)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 426, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "hswAeyAoICIR", + "outputId": "c96cf93f-0fa2-4f14-eaf3-1c200ca2c668" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 426 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# Actual dataset graph\n", + "plt.plot(scaler.inverse_transform(df1))" + ] + }, + { + "cell_type": "code", + "execution_count": 427, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "KetG0VJ6qNZi", + "outputId": "5111ff0d-10d8-4217-b22a-01fc8653097a" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "441" + ] + }, + "metadata": {}, + "execution_count": 427 + } + ], + "source": [ + "len(test_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 428, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "JXqZm2rQqNZj", + "outputId": "7d861321-41e4-47a2-9a51-a0a91819261c" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "(1, 100)" + ] + }, + "metadata": {}, + "execution_count": 428 + } + ], + "source": [ + "x_input=test_data[341:].reshape(1,-1)\n", + "x_input.shape\n" + ] + }, + { + "cell_type": "code", + "execution_count": 429, + "metadata": { + "id": "h_xtDlDAqNZj" + }, + "outputs": [], + "source": [ + "temp_input=list(x_input)\n", + "temp_input=temp_input[0].tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": 430, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "Kid2GZiDqNZk", + "outputId": "e7ab88fe-585b-4d32-d543-53b0d7d81ad3" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[0.09993826398320782,\n", + " 0.10260525990863073,\n", + " 0.10144462279293742,\n", + " 0.09329546857636745,\n", + " 0.09477441659464136,\n", + " 0.09583899246820593,\n", + " 0.0979866650203729,\n", + " 0.0932460797629337,\n", + " 0.07549080133349795,\n", + " 0.06176071119891341,\n", + " 0.05852574391900234,\n", + " 0.06704531423632548,\n", + " 0.054821582911470546,\n", + " 0.056523027534263526,\n", + " 0.0663538708482529,\n", + " 0.06808247931843436,\n", + " 0.07013211507593531,\n", + " 0.07833065810593898,\n", + " 0.08223237436720587,\n", + " 0.08206445240153104,\n", + " 0.07526855167304602,\n", + " 0.06958883812816397,\n", + " 0.07124336337819481,\n", + " 0.0775898259044327,\n", + " 0.08378812199036922,\n", + " 0.0897888628225707,\n", + " 0.09225830349425856,\n", + " 0.09001111248302257,\n", + " 0.09448080009877763,\n", + " 0.0895419187554019,\n", + " 0.09571552043462156,\n", + " 0.10043215211754541,\n", + " 0.10218545499444376,\n", + " 0.10134584516606987,\n", + " 0.10749475243857265,\n", + " 0.1120632176811952,\n", + " 0.1138165205580936,\n", + " 0.11075441412520065,\n", + " 0.10592665761205089,\n", + " 0.11640943326336589,\n", + " 0.11717495987158905,\n", + " 0.1319669094949994,\n", + " 0.1318681318681319,\n", + " 0.1289541918755402,\n", + " 0.13927645388319548,\n", + " 0.14075811828620816,\n", + " 0.1374490677861464,\n", + " 0.1422891715026547,\n", + " 0.13737498456599578,\n", + " 0.1460674157303371,\n", + " 0.15014199283862206,\n", + " 0.15305593283121371,\n", + " 0.15606865045067292,\n", + " 0.15685887146561306,\n", + " 0.16288430670453147,\n", + " 0.15979750586492164,\n", + " 0.15693295468576368,\n", + " 0.14735152487961478,\n", + " 0.14451166810717375,\n", + " 0.14303000370416102,\n", + " 0.14804296826768737,\n", + " 0.15029015927892336,\n", + " 0.13016421780466725,\n", + " 0.12932460797629336,\n", + " 0.12443511544635144,\n", + " 0.11910112359550562,\n", + " 0.12389677737992344,\n", + " 0.1158167675021608,\n", + " 0.11477960242005181,\n", + " 0.11401407581182865,\n", + " 0.11761945919249289,\n", + " 0.13352265711816275,\n", + " 0.12433633781948389,\n", + " 0.11584146190887762,\n", + " 0.11124830225953825,\n", + " 0.10164217804667242,\n", + " 0.10956908260279047,\n", + " 0.11826151376713179,\n", + " 0.11989134461044576,\n", + " 0.10934683294233855,\n", + " 0.10193851092727496,\n", + " 0.10761847141622427,\n", + " 0.10996419311026051,\n", + " 0.09989233238671441,\n", + " 0.09020866773675762,\n", + " 0.08126929250524756,\n", + " 0.08119520928509694,\n", + " 0.08897394740091369,\n", + " 0.09183849858007159,\n", + " 0.09223360908754163,\n", + " 0.08126929250524756,\n", + " 0.07828126929250523,\n", + " 0.0769477713297938,\n", + " 0.07450302506482287,\n", + " 0.08247931843437462,\n", + " 0.08477589825904436,\n", + " 0.08077540437091002,\n", + " 0.09015927892332387,\n", + " 0.08583578219533272,\n", + " 0.08815903197925667]" + ] + }, + "metadata": {}, + "execution_count": 430 + } + ], + "source": [ + "temp_input" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "NXbb8F8GYi-C" + }, + "source": [ + "# Weekly Prediction of Apple stock Market" + ] + }, + { + "cell_type": "code", + "execution_count": 431, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "bpqiIafYrBCF", + "outputId": "cac7bbc2-0d15-4727-be51-39de4249ee7b" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[0.08818653]\n", + "101\n", + "1 day input [0.10260526 0.10144462 0.09329547 0.09477442 0.09583899 0.09798667\n", + " 0.09324608 0.0754908 0.06176071 0.05852574 0.06704531 0.05482158\n", + " 0.05652303 0.06635387 0.06808248 0.07013212 0.07833066 0.08223237\n", + " 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812\n", + " 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552\n", + " 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653]\n", + "1 day output [[0.08909658]]\n", + "2 day input [0.10144462 0.09329547 0.09477442 0.09583899 0.09798667 0.09324608\n", + " 0.0754908 0.06176071 0.05852574 0.06704531 0.05482158 0.05652303\n", + " 0.06635387 0.06808248 0.07013212 0.07833066 0.08223237 0.08206445\n", + " 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886\n", + " 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215\n", + " 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658]\n", + "2 day output [[0.09005003]]\n", + "3 day input [0.09329547 0.09477442 0.09583899 0.09798667 0.09324608 0.0754908\n", + " 0.06176071 0.05852574 0.06704531 0.05482158 0.05652303 0.06635387\n", + " 0.06808248 0.07013212 0.07833066 0.08223237 0.08206445 0.07526855\n", + " 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583\n", + " 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545\n", + " 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003]\n", + "3 day output [[0.09101451]]\n", + "4 day input [0.09477442 0.09583899 0.09798667 0.09324608 0.0754908 0.06176071\n", + " 0.05852574 0.06704531 0.05482158 0.05652303 0.06635387 0.06808248\n", + " 0.07013212 0.07833066 0.08223237 0.08206445 0.07526855 0.06958884\n", + " 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111\n", + " 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585\n", + " 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451]\n", + "4 day output [[0.09197699]]\n", + "5 day input [0.09583899 0.09798667 0.09324608 0.0754908 0.06176071 0.05852574\n", + " 0.06704531 0.05482158 0.05652303 0.06635387 0.06808248 0.07013212\n", + " 0.07833066 0.08223237 0.08206445 0.07526855 0.06958884 0.07124336\n", + " 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808\n", + " 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475\n", + " 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699]\n", + "5 day output [[0.0929325]]\n", + "6 day input [0.09798667 0.09324608 0.0754908 0.06176071 0.05852574 0.06704531\n", + " 0.05482158 0.05652303 0.06635387 0.06808248 0.07013212 0.07833066\n", + " 0.08223237 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983\n", + " 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192\n", + " 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322\n", + " 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 ]\n", + "6 day output [[0.0938786]]\n", + "[[0.08818653225898743], [0.08909657597541809], [0.09005003422498703], [0.09101451188325882], [0.09197699278593063], [0.09293249994516373], [0.0938786044716835]]\n" + ] + } + ], + "source": [ + "# demonstrate prediction for next 7 days\n", + "\n", + "lst_output=[]\n", + "n_steps=100\n", + "i=0\n", + "while(i<7): \n", + " \n", + " if(len(temp_input)>100):\n", + " #print(temp_input)\n", + " x_input=np.array(temp_input[1:])\n", + " print(\"{} day input {}\".format(i,x_input))\n", + " x_input=x_input.reshape(1,-1)\n", + " x_input = x_input.reshape((1, n_steps, 1))\n", + " #print(x_input)\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(\"{} day output {}\".format(i,yhat))\n", + " temp_input.extend(yhat[0].tolist())\n", + " temp_input=temp_input[1:]\n", + " #print(temp_input)\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " else: # First this block is run because temp_input is not greater than 100\n", + " x_input = x_input.reshape((1, n_steps,1))\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(yhat[0])\n", + " temp_input.extend(yhat[0].tolist())\n", + " print(len(temp_input))\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " # This else block predict the next day and after this if part execute.\n", + " \n", + "\n", + "print(lst_output)" + ] + }, + { + "cell_type": "code", + "execution_count": 432, + "metadata": { + "id": "vskPSFGSrBmn" + }, + "outputs": [], + "source": [ + "\n", + "day_new=np.arange(1,101) # taking previous 100 days\n", + "day_pred=np.arange(101,108)" + ] + }, + { + "cell_type": "code", + "execution_count": 433, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "JjSVMyOtrdn-", + "outputId": "608c11ef-1490-40f9-f320-5773cdbeecd6" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 433 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "\n", + "# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value.\n", + "plt.plot(day_new,scaler.inverse_transform(df1[1158:]))\n", + "plt.plot(day_pred,scaler.inverse_transform(lst_output))\n", + "# Yellow line predicts the next 7 day prediction." + ] + }, + { + "cell_type": "code", + "execution_count": 434, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "QdqM38GfreG-", + "outputId": "0162633c-c052-4760-b341-94af527a5a0b" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 434 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df3=df1.tolist()\n", + "df3.extend(lst_output)\n", + "plt.plot(df3[1200:])" + ] + }, + { + "cell_type": "code", + "execution_count": 435, + "metadata": { + "id": "0ItQU9eVrx_h" + }, + "outputs": [], + "source": [ + "df3=scaler.inverse_transform(df3).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": 436, + "metadata": { + "id": "tuPgRKB-sCvG", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "outputId": "5ed70d64-76ed-4b0a-d4d0-b0c582a1ac1d" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 436 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#full graph is given below:\n", + "plt.plot(df3)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "bjl_BDs6X03B" + }, + "source": [ + "# Monthly Prediction of Apple stock Market" + ] + }, + { + "cell_type": "code", + "execution_count": 437, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "T8X9Zcs9qNZk", + "outputId": "eb216031-5715-4b80-e4c9-f27874a81363" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "0 day input [0.09324608 0.0754908 0.06176071 0.05852574 0.06704531 0.05482158\n", + " 0.05652303 0.06635387 0.06808248 0.07013212 0.07833066 0.08223237\n", + " 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812\n", + " 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552\n", + " 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003\n", + " 0.09101451 0.09197699 0.0929325 0.0938786 ]\n", + "0 day output [[0.0948133]]\n", + "1 day input [0.0754908 0.06176071 0.05852574 0.06704531 0.05482158 0.05652303\n", + " 0.06635387 0.06808248 0.07013212 0.07833066 0.08223237 0.08206445\n", + " 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886\n", + " 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215\n", + " 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451\n", + " 0.09197699 0.0929325 0.0938786 0.0948133 ]\n", + "1 day output [[0.09573447]]\n", + "2 day input [0.06176071 0.05852574 0.06704531 0.05482158 0.05652303 0.06635387\n", + " 0.06808248 0.07013212 0.07833066 0.08223237 0.08206445 0.07526855\n", + " 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583\n", + " 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545\n", + " 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699\n", + " 0.0929325 0.0938786 0.0948133 0.09573447]\n", + "2 day output [[0.09664003]]\n", + "3 day input [0.05852574 0.06704531 0.05482158 0.05652303 0.06635387 0.06808248\n", + " 0.07013212 0.07833066 0.08223237 0.08206445 0.07526855 0.06958884\n", + " 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111\n", + " 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585\n", + " 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325\n", + " 0.0938786 0.0948133 0.09573447 0.09664003]\n", + "3 day output [[0.09752827]]\n", + "4 day input [0.06704531 0.05482158 0.05652303 0.06635387 0.06808248 0.07013212\n", + " 0.07833066 0.08223237 0.08206445 0.07526855 0.06958884 0.07124336\n", + " 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808\n", + " 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475\n", + " 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786\n", + " 0.0948133 0.09573447 0.09664003 0.09752827]\n", + "4 day output [[0.098398]]\n", + "5 day input [0.05482158 0.05652303 0.06635387 0.06808248 0.07013212 0.07833066\n", + " 0.08223237 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983\n", + " 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192\n", + " 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322\n", + " 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133\n", + " 0.09573447 0.09664003 0.09752827 0.098398 ]\n", + "5 day output [[0.09924871]]\n", + "6 day input [0.05652303 0.06635387 0.06808248 0.07013212 0.07833066 0.08223237\n", + " 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812\n", + " 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552\n", + " 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003\n", + " 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447\n", + " 0.09664003 0.09752827 0.098398 0.09924871]\n", + "6 day output [[0.10008049]]\n", + "7 day input [0.06635387 0.06808248 0.07013212 0.07833066 0.08223237 0.08206445\n", + " 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886\n", + " 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215\n", + " 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451\n", + " 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003\n", + " 0.09752827 0.098398 0.09924871 0.10008049]\n", + "7 day output [[0.10089397]]\n", + "8 day input [0.06808248 0.07013212 0.07833066 0.08223237 0.08206445 0.07526855\n", + " 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583\n", + " 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545\n", + " 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699\n", + " 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827\n", + " 0.098398 0.09924871 0.10008049 0.10089397]\n", + "8 day output [[0.1016902]]\n", + "9 day input [0.07013212 0.07833066 0.08223237 0.08206445 0.07526855 0.06958884\n", + " 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111\n", + " 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585\n", + " 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325\n", + " 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827 0.098398\n", + " 0.09924871 0.10008049 0.10089397 0.1016902 ]\n", + "9 day output [[0.10247054]]\n", + "10 day input [0.07833066 0.08223237 0.08206445 0.07526855 0.06958884 0.07124336\n", + " 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808\n", + " 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475\n", + " 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786\n", + " 0.0948133 0.09573447 0.09664003 0.09752827 0.098398 0.09924871\n", + " 0.10008049 0.10089397 0.1016902 0.10247054]\n", + "10 day output [[0.10323634]]\n", + "11 day input [0.08223237 0.08206445 0.07526855 0.06958884 0.07124336 0.07758983\n", + " 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192\n", + " 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322\n", + " 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133\n", + " 0.09573447 0.09664003 0.09752827 0.098398 0.09924871 0.10008049\n", + " 0.10089397 0.1016902 0.10247054 0.10323634]\n", + "11 day output [[0.103989]]\n", + "12 day input [0.08206445 0.07526855 0.06958884 0.07124336 0.07758983 0.08378812\n", + " 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552\n", + " 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003\n", + " 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447\n", + " 0.09664003 0.09752827 0.098398 0.09924871 0.10008049 0.10089397\n", + " 0.1016902 0.10247054 0.10323634 0.103989 ]\n", + "12 day output [[0.10472986]]\n", + "13 day input [0.07526855 0.06958884 0.07124336 0.07758983 0.08378812 0.08978886\n", + " 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215\n", + " 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451\n", + " 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003\n", + " 0.09752827 0.098398 0.09924871 0.10008049 0.10089397 0.1016902\n", + " 0.10247054 0.10323634 0.103989 0.10472986]\n", + "13 day output [[0.10545999]]\n", + "14 day input [0.06958884 0.07124336 0.07758983 0.08378812 0.08978886 0.0922583\n", + " 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545\n", + " 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699\n", + " 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827\n", + " 0.098398 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054\n", + " 0.10323634 0.103989 0.10472986 0.10545999]\n", + "14 day output [[0.1061803]]\n", + "15 day input [0.07124336 0.07758983 0.08378812 0.08978886 0.0922583 0.09001111\n", + " 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585\n", + " 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325\n", + " 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827 0.098398\n", + " 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634\n", + " 0.103989 0.10472986 0.10545999 0.1061803 ]\n", + "15 day output [[0.10689145]]\n", + "16 day input [0.07758983 0.08378812 0.08978886 0.0922583 0.09001111 0.0944808\n", + " 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475\n", + " 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786\n", + " 0.0948133 0.09573447 0.09664003 0.09752827 0.098398 0.09924871\n", + " 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634 0.103989\n", + " 0.10472986 0.10545999 0.1061803 0.10689145]\n", + "16 day output [[0.10759383]]\n", + "17 day input [0.08378812 0.08978886 0.0922583 0.09001111 0.0944808 0.08954192\n", + " 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322\n", + " 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133\n", + " 0.09573447 0.09664003 0.09752827 0.098398 0.09924871 0.10008049\n", + " 0.10089397 0.1016902 0.10247054 0.10323634 0.103989 0.10472986\n", + " 0.10545999 0.1061803 0.10689145 0.10759383]\n", + "17 day output [[0.10828774]]\n", + "18 day input [0.08978886 0.0922583 0.09001111 0.0944808 0.08954192 0.09571552\n", + " 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003\n", + " 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447\n", + " 0.09664003 0.09752827 0.098398 0.09924871 0.10008049 0.10089397\n", + " 0.1016902 0.10247054 0.10323634 0.103989 0.10472986 0.10545999\n", + " 0.1061803 0.10689145 0.10759383 0.10828774]\n", + "18 day output [[0.10897321]]\n", + "19 day input [0.0922583 0.09001111 0.0944808 0.08954192 0.09571552 0.10043215\n", + " 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451\n", + " 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003\n", + " 0.09752827 0.098398 0.09924871 0.10008049 0.10089397 0.1016902\n", + " 0.10247054 0.10323634 0.103989 0.10472986 0.10545999 0.1061803\n", + " 0.10689145 0.10759383 0.10828774 0.10897321]\n", + "19 day output [[0.10965019]]\n", + "20 day input [0.09001111 0.0944808 0.08954192 0.09571552 0.10043215 0.10218545\n", + " 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699\n", + " 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827\n", + " 0.098398 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054\n", + " 0.10323634 0.103989 0.10472986 0.10545999 0.1061803 0.10689145\n", + " 0.10759383 0.10828774 0.10897321 0.10965019]\n", + "20 day output [[0.11031866]]\n", + "21 day input [0.0944808 0.08954192 0.09571552 0.10043215 0.10218545 0.10134585\n", + " 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325\n", + " 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827 0.098398\n", + " 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634\n", + " 0.103989 0.10472986 0.10545999 0.1061803 0.10689145 0.10759383\n", + " 0.10828774 0.10897321 0.10965019 0.11031866]\n", + "21 day output [[0.11097834]]\n", + "22 day input [0.08954192 0.09571552 0.10043215 0.10218545 0.10134585 0.10749475\n", + " 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786\n", + " 0.0948133 0.09573447 0.09664003 0.09752827 0.098398 0.09924871\n", + " 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634 0.103989\n", + " 0.10472986 0.10545999 0.1061803 0.10689145 0.10759383 0.10828774\n", + " 0.10897321 0.10965019 0.11031866 0.11097834]\n", + "22 day output [[0.11162917]]\n", + "23 day input [0.09571552 0.10043215 0.10218545 0.10134585 0.10749475 0.11206322\n", + " 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133\n", + " 0.09573447 0.09664003 0.09752827 0.098398 0.09924871 0.10008049\n", + " 0.10089397 0.1016902 0.10247054 0.10323634 0.103989 0.10472986\n", + " 0.10545999 0.1061803 0.10689145 0.10759383 0.10828774 0.10897321\n", + " 0.10965019 0.11031866 0.11097834 0.11162917]\n", + "23 day output [[0.11227097]]\n", + "24 day input [0.10043215 0.10218545 0.10134585 0.10749475 0.11206322 0.11381652\n", + " 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813\n", + " 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498\n", + " 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431\n", + " 0.15979751 0.15693295 0.14735152 0.14451167 0.14303 0.14804297\n", + " 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678\n", + " 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634\n", + " 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134\n", + " 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867\n", + " 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929\n", + " 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754\n", + " 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003\n", + " 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447\n", + " 0.09664003 0.09752827 0.098398 0.09924871 0.10008049 0.10089397\n", + " 0.1016902 0.10247054 0.10323634 0.103989 0.10472986 0.10545999\n", + " 0.1061803 0.10689145 0.10759383 0.10828774 0.10897321 0.10965019\n", + " 0.11031866 0.11097834 0.11162917 0.11227097]\n", + "24 day output [[0.11290366]]\n", + "25 day input [0.10218545 0.10134585 0.10749475 0.11206322 0.11381652 0.11075441\n", + " 0.10592666 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419\n", + " 0.13927645 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742\n", + " 0.15014199 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751\n", + " 0.15693295 0.14735152 0.14451167 0.14303 0.14804297 0.15029016\n", + " 0.13016422 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677\n", + " 0.1147796 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146\n", + " 0.1112483 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683\n", + " 0.10193851 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929\n", + " 0.08119521 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127\n", + " 0.07694777 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928\n", + " 0.08583578 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451\n", + " 0.09197699 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003\n", + " 0.09752827 0.098398 0.09924871 0.10008049 0.10089397 0.1016902\n", + " 0.10247054 0.10323634 0.103989 0.10472986 0.10545999 0.1061803\n", + " 0.10689145 0.10759383 0.10828774 0.10897321 0.10965019 0.11031866\n", + " 0.11097834 0.11162917 0.11227097 0.11290366]\n", + "25 day output [[0.1135272]]\n", + "26 day input [0.10134585 0.10749475 0.11206322 0.11381652 0.11075441 0.10592666\n", + " 0.11640943 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645\n", + " 0.14075812 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199\n", + " 0.15305593 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295\n", + " 0.14735152 0.14451167 0.14303 0.14804297 0.15029016 0.13016422\n", + " 0.12932461 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796\n", + " 0.11401408 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483\n", + " 0.10164218 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851\n", + " 0.10761847 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521\n", + " 0.08897395 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777\n", + " 0.07450303 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578\n", + " 0.08815903 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699\n", + " 0.0929325 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827\n", + " 0.098398 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054\n", + " 0.10323634 0.103989 0.10472986 0.10545999 0.1061803 0.10689145\n", + " 0.10759383 0.10828774 0.10897321 0.10965019 0.11031866 0.11097834\n", + " 0.11162917 0.11227097 0.11290366 0.1135272 ]\n", + "26 day output [[0.11414161]]\n", + "27 day input [0.10749475 0.11206322 0.11381652 0.11075441 0.10592666 0.11640943\n", + " 0.11717496 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812\n", + " 0.13744907 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593\n", + " 0.15606865 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152\n", + " 0.14451167 0.14303 0.14804297 0.15029016 0.13016422 0.12932461\n", + " 0.12443512 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408\n", + " 0.11761946 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218\n", + " 0.10956908 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847\n", + " 0.10996419 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395\n", + " 0.0918385 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303\n", + " 0.08247932 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903\n", + " 0.08818653 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325\n", + " 0.0938786 0.0948133 0.09573447 0.09664003 0.09752827 0.098398\n", + " 0.09924871 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634\n", + " 0.103989 0.10472986 0.10545999 0.1061803 0.10689145 0.10759383\n", + " 0.10828774 0.10897321 0.10965019 0.11031866 0.11097834 0.11162917\n", + " 0.11227097 0.11290366 0.1135272 0.11414161]\n", + "27 day output [[0.11474695]]\n", + "28 day input [0.11206322 0.11381652 0.11075441 0.10592666 0.11640943 0.11717496\n", + " 0.13196691 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907\n", + " 0.14228917 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865\n", + " 0.15685887 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167\n", + " 0.14303 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512\n", + " 0.11910112 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946\n", + " 0.13352266 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908\n", + " 0.11826151 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419\n", + " 0.09989233 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385\n", + " 0.09223361 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932\n", + " 0.0847759 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653\n", + " 0.08909658 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786\n", + " 0.0948133 0.09573447 0.09664003 0.09752827 0.098398 0.09924871\n", + " 0.10008049 0.10089397 0.1016902 0.10247054 0.10323634 0.103989\n", + " 0.10472986 0.10545999 0.1061803 0.10689145 0.10759383 0.10828774\n", + " 0.10897321 0.10965019 0.11031866 0.11097834 0.11162917 0.11227097\n", + " 0.11290366 0.1135272 0.11414161 0.11474695]\n", + "28 day output [[0.11534334]]\n", + "29 day input [0.11381652 0.11075441 0.10592666 0.11640943 0.11717496 0.13196691\n", + " 0.13186813 0.12895419 0.13927645 0.14075812 0.13744907 0.14228917\n", + " 0.13737498 0.14606742 0.15014199 0.15305593 0.15606865 0.15685887\n", + " 0.16288431 0.15979751 0.15693295 0.14735152 0.14451167 0.14303\n", + " 0.14804297 0.15029016 0.13016422 0.12932461 0.12443512 0.11910112\n", + " 0.12389678 0.11581677 0.1147796 0.11401408 0.11761946 0.13352266\n", + " 0.12433634 0.11584146 0.1112483 0.10164218 0.10956908 0.11826151\n", + " 0.11989134 0.10934683 0.10193851 0.10761847 0.10996419 0.09989233\n", + " 0.09020867 0.08126929 0.08119521 0.08897395 0.0918385 0.09223361\n", + " 0.08126929 0.07828127 0.07694777 0.07450303 0.08247932 0.0847759\n", + " 0.0807754 0.09015928 0.08583578 0.08815903 0.08818653 0.08909658\n", + " 0.09005003 0.09101451 0.09197699 0.0929325 0.0938786 0.0948133\n", + " 0.09573447 0.09664003 0.09752827 0.098398 0.09924871 0.10008049\n", + " 0.10089397 0.1016902 0.10247054 0.10323634 0.103989 0.10472986\n", + " 0.10545999 0.1061803 0.10689145 0.10759383 0.10828774 0.10897321\n", + " 0.10965019 0.11031866 0.11097834 0.11162917 0.11227097 0.11290366\n", + " 0.1135272 0.11414161 0.11474695 0.11534334]\n", + "29 day output [[0.11593092]]\n", + "[[0.09481330215930939], [0.09573446959257126], [0.09664002805948257], [0.09752827137708664], [0.09839800000190735], [0.09924871474504471], [0.10008049011230469], [0.10089396685361862], [0.10169020295143127], [0.10247053951025009], [0.10323633998632431], [0.10398899763822556], [0.10472986102104187], [0.10545998811721802], [0.10618029534816742], [0.1068914532661438], [0.107593834400177], [0.1082877367734909], [0.10897320508956909], [0.10965019464492798], [0.11031866073608398], [0.11097833514213562], [0.11162916570901871], [0.11227097362279892], [0.1129036620259285], [0.11352720111608505], [0.11414160579442978], [0.11474695056676865], [0.11534333974123001], [0.11593092232942581]]\n" + ] + } + ], + "source": [ + "# demonstrate prediction for next 30 days\n", + "\n", + "lst_output=[]\n", + "n_steps=100\n", + "i=0\n", + "while(i<30): \n", + " \n", + " if(len(temp_input)>100):\n", + " #print(temp_input)\n", + " x_input=np.array(temp_input[1:])\n", + " print(\"{} day input {}\".format(i,x_input))\n", + " x_input=x_input.reshape(1,-1)\n", + " x_input = x_input.reshape((1, n_steps, 1))\n", + " #print(x_input)\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(\"{} day output {}\".format(i,yhat))\n", + " temp_input.extend(yhat[0].tolist())\n", + " temp_input=temp_input[1:]\n", + " #print(temp_input)\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " else: # First this block is run because temp_input is not greater than 100\n", + " x_input = x_input.reshape((1, n_steps,1))\n", + " yhat = model.predict(x_input, verbose=0)\n", + " print(yhat[0])\n", + " temp_input.extend(yhat[0].tolist())\n", + " print(len(temp_input))\n", + " lst_output.extend(yhat.tolist())\n", + " i=i+1\n", + " # This else block predict the next day and after this if part execute.\n", + " \n", + "\n", + "print(lst_output)" + ] + }, + { + "cell_type": "code", + "execution_count": 438, + "metadata": { + "id": "jSYv7zCJqNZk" + }, + "outputs": [], + "source": [ + "day_new=np.arange(1,101) # taking previous 100 days\n", + "day_pred=np.arange(101,131)" + ] + }, + { + "cell_type": "code", + "execution_count": 439, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "t2bhft22qNZl", + "outputId": "8a0a2881-d2dc-41fd-cf15-f4469d84ec80" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "1258" + ] + }, + "metadata": {}, + "execution_count": 439 + } + ], + "source": [ + "len(df1)" + ] + }, + { + "cell_type": "code", + "execution_count": 440, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "JLmbYz_oqNZl", + "outputId": "9422466c-ce77-4b8f-96d4-cf3e7a26a45a" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 440 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value.\n", + "plt.plot(day_new,scaler.inverse_transform(df1[1158:]))\n", + "plt.plot(day_pred,scaler.inverse_transform(lst_output))\n", + "# Yellow line predicts the next 30 day prediction." + ] + }, + { + "cell_type": "code", + "execution_count": 441, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "matbkSEuqNZl", + "outputId": "f3f22a69-2bfa-4e30-e2d5-bf1383abdfdd" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 441 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "df4=df1.tolist()\n", + "df4.extend(lst_output)\n", + "plt.plot(df4[1200:])\n", + "\n", + "#Exend the graph by joining previous and prdicted one and it,s lokks good." + ] + }, + { + "cell_type": "code", + "execution_count": 442, + "metadata": { + "id": "nj9EQHrXqNZm" + }, + "outputs": [], + "source": [ + "df4=scaler.inverse_transform(df4).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": 443, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 282 + }, + "id": "SlIT-KUvqNZm", + "outputId": "4f5932d7-2a26-4411-db6a-8d5e0a918419" + }, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "[]" + ] + }, + "metadata": {}, + "execution_count": 443 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD4CAYAAAAXUaZHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd3hcxdXA4d9Rt+SiYrnLlnsBV4Qx3YVm0wMESKghcUggQAidkJAAAVJoKU78QYAQCNUBYqoxNs0F3HCRm9wly5JsyZLVy873x727Wkkra1faKp33efR4d+7d1Wi9Opqde+aMGGNQSinVuUSFugNKKaX8T4O7Ukp1QhrclVKqE9LgrpRSnZAGd6WU6oRiQt0BgN69e5vMzMxQd0MppSLK6tWrDxpj0j0dC4vgnpmZyapVq0LdDaWUiigisqe1Yzoto5RSnZAGd6WU6oQ0uCulVCekwV0ppTohDe5KKdUJaXBXSqlOSIO7Ukp1QhrclQqgTftLWbO3JNTdUF1QWCxiUqqzOveZLwHY/di5Ie6J6mp05K6UUp2QBnelguDttXmh7oLqYjS4KxUED/5vU6i7oLoYr4K7iOwWkQ0isk5EVtltqSKySES22/+m2O0iIs+ISI6IrBeRKYH8AZSKBDFROo5SweXLO26GMWaSMSbLvn8PsNgYMxJYbN8HmA2MtL/mAvP81VmlIlV8jAZ3FVwdecddCLxo334RuMit/V/GsgJIFpH+Hfg+SkW8Xt1iQ90F1cV4G9wN8LGIrBaRuXZbX2NMvn37ANDXvj0Q2Of22Fy7Takuq0eCZh2r4PL2HXeKMSZPRPoAi0Rki/tBY4wREePLN7b/SMwFGDx4sC8PVSpi9O4ex8HyWmKiJdRdUV2MVyN3Y0ye/W8h8F9gKlDgnG6x/y20T88DMtwePshua/6c840xWcaYrPR0j7tEKRXxausdoe6C6qLaDO4ikiQiPZy3gbOAjcC7wLX2adcC79i33wWusbNmpgGlbtM3SnUpdQ3WB1rj0+dapTrOm2mZvsB/RcR5/ivGmA9F5BvgdRG5AdgDfNc+/31gDpADVALX+73XSkWIugYduavQaDO4G2N2AhM9tB8CZnloN8BNfumdUhHM4TDUO3TIrkJDk2+VCpA6R+OoXadlVLBpcFcqQJzz7UqFggZ3pQKkTjNlVAhpcFcqQNwvphp0FK+CS4O7UgFSq5kyKoQ0uCsVIDrnrkJJg7tSAdJkWkbjvAoyDe5KBUh1XUOou6C6MA3uSgXIwfIaAOK0lrsKAX3XKRUgBWVWcO/bM15zZVTQaXBXKkAK7eDep0dCiHuiuiIN7koFwMHyGp78ZBsAsVrLXYWABnelAuDhhdlNG3ReRgWZBnelAqCksg6AYwb0RNCRuwo+De5K+VlBWTXlNfUA/Oq8cSHujeqqdNdepfzsqmdXsr2wHICpQ1MBrS2jgs/rkbuIRIvIWhFZaN9/QUR2icg6+2uS3S4i8oyI5IjIehGZEqjOKxWO9hyqdN0WEURnZVQI+DItcyuwuVnbncaYSfbXOrttNjDS/poLzOt4N5WKHGcd0zfUXVDKu+AuIoOAc4FnvTj9QuBfxrICSBaR/h3oo1IRRTwM1bW2jAo2b0fuTwF3Ac1rmD5iT708KSLxdttAYJ/bObl2WxMiMldEVonIqqKiIl/7rVTYqq23asr84dIJADoto0KizeAuIucBhcaY1c0O3QuMAY4HUoG7ffnGxpj5xpgsY0xWenq6Lw9VKmxl7y/jo00FREcJl2VlhLo7qgvzZuR+MnCBiOwGXgVmisi/jTH59tRLDfA8MNU+Pw9wf1cPstuU6vSW7TgIQIOj6TyMzsqoYGszuBtj7jXGDDLGZAJXAJ8aY65yzqOLNcF4EbDRfsi7wDV21sw0oNQYkx+Y7isVXvr36taiTRcxqVDoSJ77yyKSDgiwDrjRbn8fmAPkAJXA9R3qoVIRxDm/ftGkAaHtiOryfAruxpilwFL79sxWzjHATR3tmFKRyLn70i2zRjZpN5ouo4JMyw8o5Ue19VZwj41u/NXSbBkVChrclfIj56bY7sFdqVDQd6BSflTvcI7cmw7XdVJGBZsGd6X8yDUto/umqhDTd6BSfuSclonTaRkVYvoOVMqPnNkyMVHNpmV0XkYFmQZ3pfyo3hncm2TLaLqMCj4N7kr5UYMxREdpMFehp8FdKT9qcEC0p5K/IeiL6to0uCvlRw5jiGr2W6XjeBUKGtyV8qMGh/E4clcq2DS4K+VHDQ5DlKc5d02XUUGmwV0pP3J4uKCqA3kVChrclfIjnZZR4UKDu1J+1Nq0jE7KqGDzOriLSLSIrBWRhfb9oSKyUkRyROQ1EYmz2+Pt+zn28czAdF2p8NPgMC1Wp+o4XoWCLyP3W4HNbvcfB540xowASoAb7PYbgBK7/Un7PKW6hAZjiNJpGRUGvAruIjIIOBd41r4vwEzgTfuUF7H2UQW40L6PfXyW6Ppr1YmVVddRWVsPgMPheYWqJsuoYPN25P4UcBfgsO+nAYeNMfX2/VxgoH17ILAPwD5eap/fhIjMFZFVIrKqqKiond1XKvQmPPgxpzy+BIAGg4dsGR3bqOBrM7iLyHlAoTFmtT+/sTFmvjEmyxiTlZ6e7s+nViroiitquXL+CqpqG9DSMioceLNB9snABSIyB0gAegJPA8kiEmOPzgcBefb5eUAGkCsiMUAv4JDfe65UmFm+8xDpPeJJSYxtccxovowKsjZH7saYe40xg4wxmcAVwKfGmO8DS4BL7dOuBd6xb79r38c+/qnRrd9VF3G4srbFBVUdyKtQ6Eie+93A7SKSgzWn/pzd/hyQZrffDtzTsS4qFTnqGrTkrwoP3kzLuBhjlgJL7ds7gakezqkGLvND35SKSJoto8KBrlBVqgM8zTi2mJbRgbwKAQ3uSnXAip3FAJw+Kp2Byd2AlvunKhUKGtyV6oBVu63gfvKINOJirF+ntO5xLc7TaRkVbBrcleqAQxW1JMZF86NTh1HvsNb49e/VrdlZOpJXwafBXakO2H2ogsy0JESEfcVVAHSLiw5xr5TS4K5Uh+SWVDE4NbFJ2/emDm5xns7KqGDT4K5UOxljyCupYkBy02mYjGbBXrNlVCj4lOeulLI8/uEW+vSIp6qugYEpzefYlQo9De5KtcO8pTtctwcmJwDw49OHsauowuP5WoFDBZsGd6U6aEhaEgD3zh7r8bjOyqhQ0Dl3pTogOkoY2jsp1N1QqgUN7kr5qK7B4brd4DAkxGrqowo/GtyV8lFVXYNP52u2jAoFDe5K+ajaDu4j+nTn7ZtODnFvlPJMg7tSPiquqAXgllkjmZSR7NVjNFlGBZsGd6V8UHikmme/2AXA8HTvLqSK5suoEGgzFVJEEoDPgXj7/DeNMb8WkReA04FS+9TrjDHrxNrq/WlgDlBpt68JROeVCqb6BgdTH1nsuj88vXsIe6PU0XmT514DzDTGlItILPCliHxgH7vTGPNms/NnAyPtrxOAefa/SkW0ymYXUn3JktENslWwebNBtjHGlNt3Y+2vo71TLwT+ZT9uBZAsIv073lWlQquypjG4P3n5RK8fp9kyKhS8mnMXkWgRWQcUAouMMSvtQ4+IyHoReVJE4u22gcA+t4fn2m3Nn3OuiKwSkVVFRUUd+BGUCo6K2nrX7V7dYkPYE6Xa5lVwN8Y0GGMmAYOAqSJyLHAvMAY4HkgF7vblGxtj5htjsowxWenp6T52W6ngcx+5OxxHOdEDzZZRweZTtowx5jCwBDjHGJNvT73UAM8DU+3T8oAMt4cNstuUimiV9sg9My2RU0b29vpxOi2jQqHN4C4i6SKSbN/uBpwJbHHOo9vZMRcBG+2HvAtcI5ZpQKkxJj8gvVcqiCprrZH7k5dP0pIDKux5ky3TH3hRRKKx/hi8boxZKCKfikg6VtG7dcCN9vnvY6VB5mClQl7v/24rFXzOOfekeN+LqeqsjAq2Nt+lxpj1wGQP7TNbOd8AN3W8a0qFF+fIvZuPo3ZdxKRCQVeoKuWlypr2j9yVCjYN7kp5qdwO7olxvs+3605MKtg0uCvlpez8MgYmd/P9YqrOyqgQ0OCuOi1/j5bzDlczzMtiYUqFmgZ31Smd8cRnzH76Czbnl3Hrq2s5Ul3X4ef8dt9hkhPj2vVYnZRRwaZXhlSnlFNolUOa/fQXAHy8qYC1vzqzXfnphytrWbHzEACHymt8frzOyqhQ0OCuOp1F2QUt2qrqGli6tYhzju3n8/Od+vgSjtgXU38yfXiH+6dUMGhwV53Oj/61ymN7fmmVT8/jcBjqHcYV2AFOGeF92YEmdF5GBZkGd9Wp7DlU0eqxoiO+Tamc8/TnbCsod93/yfThSDsKxbTnMUp1lF5QVZ3G+tzDnP6HpU3ausVGs+weazF1bb1vpRzdAzvAzTNGdKh/SgWTjtxVp7F8x6EWbQmxUQxI7kZKYiw1PgZ3pxmj03n++qltn3gUOiujgk1H7qrTcE67XDRpgKttUkYyAPEx0dTUN3h8nCfVdd6f2xadlFGhoMFddRrbCssZ068H50+0gvtV0wbzzJVWzbu4mCifpmUKyxrn5+sdOu5WkUenZVSnsaOwnOMzU5g1ti9L7pjO0N6Nq0njY6J8mpYpOFLtul1a1fEFUFpbRgWbjtxVp1FcUUtad2srX/fADhAf2/6R+5lj+3aoX5oso0LBm52YEkTkaxH5VkQ2ichv7PahIrJSRHJE5DURibPb4+37OfbxzMD+CEpBVW0DVXUNpCZ5Lg8QHxNNaVUdC9fvp8GLaRZnTvwXd83gJs2SURHIm5F7DTDTGDMRmAScY2+f9zjwpDFmBFAC3GCffwNQYrc/aZ+nVEAdKLOmUfr2TPB4PC0pjlV7Srj5lbW8snJPm8+3PreUfj0TGJTSjaiojg+9dVJGBVubwd3eBNuZ8BtrfxlgJvCm3f4i1j6qABfa97GPzxJdxaECyBjDZX9fBsCQtESP50y0s2bAqu7YljV7SzguM8UvC5D0za9Cwas5dxGJFpF1QCGwCNgBHDbGONdl5wID7dsDgX0A9vFSIM3Dc84VkVUisqqoqKhjP4Xq0sqq6jlYXgvA+IG9PJ7Tz21EX1B29OD+4cZ8ckuqSO4W679OKhVkXgV3Y0yDMWYSMAiYCozp6Dc2xsw3xmQZY7LS09M7+nSqCztcZQX2P142sdWqj+k94l23y91qxXjy6AdbACiprPVTD0GTZVSw+ZQtY4w5DCwBTgSSRcSZSjkIyLNv5wEZAPbxXkDLpYNK+YmzCmRKYusj7e4JjVm/lbVHD+6H7E8B/ppN1FlJFQreZMuki0iyfbsbcCawGSvIX2qfdi3wjn37Xfs+9vFPjSb5qgB6+L3NAAxI7tbqOUlx7sH96KtP+/S0RvnnT+jvh94pFRreLGLqD7woItFYfwxeN8YsFJFs4FUReRhYCzxnn/8c8JKI5ADFwBUB6LdSLYzt37PVY0nxjdM1lTVHD+5x0VGcMbYP5xzrv+BuNF9GBVmbwd0Ysx6Y7KF9J9b8e/P2auAyv/ROqTY4HIaYKGHuacOOel73+Ma3eoWHaZkNuaWc/5cveePGE8kvreb4zFS/9VEnZVQo6ApVFdEOVtRQ7zD06+U5v90pyS2455ZUsWl/aZPjP3l5NQCX/X05pVV1bT6fUuFOg7uKaLuKrM05+rWyeMkpNrrpW/3R97c0uT9zTJ8m90f06e6H3jXSq04q2DS4q4hVUFbN5fNXAHDi8BZLKY6q+dRMTFTjr0KPhBhOH+XH9Fydl1EhoMFdRay/LskB4JIpg+iR4NuCo7V7Dzep1Ohe6/2EoWmt5ssrFSk0uKuItbe4koHJ3Xjk4mPb9fgDbitVq+saK0a6Z9b4i07LqGDT4K4i1qHyWkb27e71KPuVH57AvO9Pcd2PdltcVO02cj93vH/z20XnZVQI6GYdKmLtP1zF2P49vD7/pBG9m9yvcyv9W1PnYGz/nvz3pyfplIzqFHTkriLSouwCDlXUMrpf6wuX2lJnb96xr7iSTzYX0KtbjAZ21WlocFcRp6y6jh/9axXQsV2S6hqs4P6LN74F8GmnJl9oaRkVCjotoyJCfYODW15dS12DcRUKO3FYGoNbqd9+NNeeOIQXl++h1g7uB49YW+qlJsUf7WFKRRQduauI8OGmA7y/4YArsAPcf+7Ydj3X9NHWgqW6BmvO/Vi7Bvyts0Z2sJet09p5Ktg0uKuI8PiHW1q0DUppvQrk0ThXq9Y1OKitd9BgDP16JjB+kOeNPjpKZ2VUKGhwV2Hvk+wC9hVXcelxg+jjtulGr3bulBQbbYXbunoHVz27kvfW55MYgNx2pUJJg7sKe08t3gbAQxcey9f3n+Fqb+8mGLEx1tu+sraBr3cXAxAfE9jgrpMyKtj0gqoKax9uzGdjXhkTM5LpFmcF4Ee/M75DUx297QunN/57tastLiZw4xzNllGhoMFdhbW31+4H4AG3i6dXTh3coeccnJZIj4QYjlQ3Fg+Li9YIrDoXb7bZyxCRJSKSLSKbRORWu/1BEckTkXX21xy3x9wrIjkislVEzg7kD6A6t4Ij1ZwyojdZftw8A1rmtAc6mUWTZVSweTNyrwd+YYxZIyI9gNUissg+9qQx5o/uJ4vIOKyt9Y4BBgCfiMgoY8zR9zZTyoPSyjoGHmVv1PaqaRbcHQGMvlpbRoVCmyN3Y0y+MWaNffsI1ubYA4/ykAuBV40xNcaYXUAOHrbjU6ot763PZ+fBChLjAp/J4tCRtepkfLqKJCKZWPuprrSbbhaR9SLyTxFJsdsGAvvcHpaLhz8GIjJXRFaJyKqioiKfO646v5teWQO0HGX7wx8vm9jkfnVdYD9Y6gbZKti8Du4i0h14C7jNGFMGzAOGA5OAfOBPvnxjY8x8Y0yWMSYrPd2Pu96oTsF9Ttx9c2t/GdW36TZ65TUtN832F82WUaHg1W+NiMRiBfaXjTELAIwxBW7H/w9YaN/NAzLcHj7IblPKa0u3FgIwoFcCt585yu/P776n6uxj+/Gj04b5/XsoFUreZMsI8Byw2RjzhFu7+44GFwMb7dvvAleISLyIDAVGAl/7r8uqK3hjdS7pPeL5/K4ZpHX3f0GvWLfUx3lXHceUwSlHObvjNFtGBZs3I/eTgauBDSKyzm67D7hSRCZhLb7bDfwYwBizSUReB7KxMm1u0kwZ5YucwiN8uf0gF04aQEx0YBYXuW+IHWg6LaNCoc3gboz5Es+1j94/ymMeAR7pQL9UF7XlQBnnPPUFAMPSkwL2fWJ00ZLq5LS2jAorO4sqXLdPGt77KGd2TFyAPhG0RmdlVLBpcA9jNfUNTPvdYl5asSfUXQma0qo6AH582jBXnfVAcE73BGfKRD8lqODT4B5GqmobmuRb7zlUyYGyah54e+NRHtW5fLPLqtJ46xmB2zgDGqdlYqI08KrOSYN7mMg7XMX4Bz/ihy+u4rVv9uJwGD7f1nUWdxljeODtjSxYa2XNdgvwRtWx9gXVqCBd7dRsGRVsGtzDxGtf76XeYfgy5yB3v7WBj7MLePi9za7j7367P4S9C4zaegfzP99BdV0DK3YWu6afhqUntbtWu7fiY6IY2juJPzRbqRoImi2jQkFL/oaJ/NLqJvdX7DzU5P4t/1nL5Ixkvs09zHkTBgSzawHz/Fe7ePSDLeSWVDFhULKr/c0bTwr4946KEpbcMT3g30epUNHgHiYOlDUN7i8s2w3A36+awo3/tmqsnPr7JYCVUXL58Rn07ZkQ1D62V4PDEO1hbntPcSUA/1q+B2i8aJyaFBesrgWRzsuo4NJpmTCxo7Cc6aNb1tg5+5h+LdqeWLSNR9ymbMLZJ9kFDL/vfXIKj7Q41lWuZXaRH1OFGQ3uIbYou4DMe95jf6m1KcX6B8/ix6dbdU7mX30cIkJGast65pEyj/uZfVH4i+0HWxxrvmHGlVMzeO7arKD0S6nOTqdlQuz5r3a5bp88ojc9E2K56+wxXHXCEDJSEwH4382ncKS6nqT4GKY8ZO2TkhgX3P+6ihrr+/sqxZ5iKamsa3EsO7+MMf16sPBnp1DvMCQEOEMmlDRbRgWbjtxDLN7emPmK4zMY068HANFR4grsAMmJcWSkJpKaFMegFOcoPnjRYkNuKcf8+iM+yS5o++RmnHnkxo5uizcX8NgHW9hXXMnGvDJOH5VOTHRUpw7skfIpS3UuOnIPse2F5Zw/cQCPXTLBq/P/+9OTOf6RTyivCV4ttp0HywH498o9nDGur0+PbbC3OKqtd3DPW+t59RtrHxdnVcZLjxvkx54qpZx05B4iR6rrmPa7xeSWVDGqT/e2H2BL7xHPMQN68r9v97Nmb0kAe9jIuaDoq5yW8+ZHU9fg4OnF2wF4c3WuK7AD/PnTHABG+PCzRzKdlVHBpsE9BMqq6xj/4Meu9MfvnTDYp8cX2I+76831fu9bc9/sLmbuS6sBqGswrpG4N+5441vX7bLqlnPuQMAXK4UD3SBbhYIG9xDYlFfmuv389cf7vBlFVa01JZNTWO7Xfnny8MLsJvc35JUe9fwGh6G0qo6bXlnDO+v2870TBjM8PYm6hpZ/FLSui1KB481OTBkiskREskVkk4jcarenisgiEdlu/5tit4uIPCMiOfbm2VMC/UNEGucoduHPTmHG6D4+P35oAOucu6uua3AtNHJqvnLW3b7iSobf9z4Tf/Mx763PB+C2WSNb7IE6NTMVgC/unuHnHocvo+kyKsi8uaBaD/zCGLNGRHoAq0VkEXAdsNgY85iI3APcA9wNzMbaWm8kcALWRtonBKLzkepItbUZc8+E2HY9/lfnHcN3/7GcpLjAZZhc+Nev+Hbf4SZtyYmx7Czy/GnB4TA8/F7TUf4nt59On54JTVIo37355CalBrqCLjDzpMJQmyN3Y0y+MWaNffsIsBkYCFwIvGif9iJwkX37QuBfxrICSG6232qXd8QeufdIaF+y0tShqdxx1igqahuoqfd/1owxpklg3/bwbDY8eBaj+vZg18GKFuev3VvCsPve56NNjamST18xyXWx1OE2aj1mQOBqtCulGvk05y4imcBkYCXQ1xiTbx86ADhz5AYC+9welmu3NX+uuSKySkRWFRV1ndK20Dhy797O4A646srkllT5pU8A2fvLWJRdQNGRGlfbvbPHEBcTRY+EWIamJbHrYGWLx33cLP/921+dxYWTGv/LndcInr0my2ONma5AJ2VUsHkdXUSkO/AWcJsxpsw9y8EYY0TEp/evMWY+MB8gKyury7z3cwqP8MSibUQJxHZgq7ex/XsC8MW2Ioan+yedcM4z1t6l35lsBeZX505j2rA01/GUpDjKqppmvby+ah/zlu4A4Ov7Z5HePb5FBsxvLzyWV7/ZyykjA7dtXjjrmn/OVKh5FV1EJBYrsL9sjFlgNxc4p1vsfwvt9jwgw+3hg+y2Ts8Yw4PvbuLaf35N4ZHqFsfrGxz86p1NAPiQUejRyL5WQH/wf9l+n5r5fHsRMVHCCUNTm7R3j4+mtsHRpCbMU4u2uW736ZHgMbVxYkYyj35nQqdehapUuPEmW0aA54DNxpgn3A69C1xr374WeMet/Ro7a2YaUOo2fdOpZeeX8cKy3Xy2rYipjyympKIWsBbz3LtgPSPu/4BlO1rPNvFFfExjoCworTnKmd5xz+Y4WF7LPbPHtAjUzgujF//tK9djDtk/4x1njepwHzozTZZRwebNtMzJwNXABhFZZ7fdBzwGvC4iN2AV4/6ufex9YA6QA1QC1/u1x2Hmuue/JjEumjH9evLWmtwmxxaszeOGU4Yyb+kO/vO1dRliYHI3ThuVTtaQlA5/7+9MGciCNXnkl1YxOC2x7QccxZGa+ib3Jw9u2T/nStVN+8soPFJNfEw0NfUO7p8zlh+dNqxD378z6woLtVT4aTO4G2O+pPVpw1kezjfATR3sV0T4YEM+S7daF4Pf33DA1b79kdmc/vslPLQwm/c35LN6j1Um4KUbpnLqyJY129vrupMyWbAmj7Lq+rZPbsNLy63NMgaldGN03x5MymiZruiewvjyir2cP9FKgurT07dFWEqpwNMVqh3wk5fXNLl/4aQB/OmyicRGR9Gvl5XN4gzsmWmJfg3sgGtxUEVNPRvzSqlvcLTxiNa9tSaXk0ek8eXdM3nuuuM9ZrWMG9CTf99gLVl4evF29hVbmTrpPTS4t0UXMalg06qQrVi58xC5JVVccpSqhT0SYjhSXc+GB8+iR7MFSU9fMdm1Ld6dZ4/m4sktskE7zJlK+c3uYm57bR0/OHkovzp/nM/PU1pZx95DlZzjYden5rrFNY4HnIXERvft4fP3VMpbxRW1bDlQxknDu2a2VXtpcG/mYHkNsdFRXD5/BWDNax9tzvS6kzJbBHaAjNREtj58DtV1Dnp1a99K1LY4R+4vr9wLwMfZB9oV3F9asZsGY7zaeHuK21z8p1sKGdY7yefaOEq15aK/foUxht9fOpGzn/ocsFY8d5Uqov7QJadlnvpkG5n3vMeTbml8YI1gZ/5xKRf85UtX2+LNhU3OWb2nmB1F5dQ3ODhSXU9yYuuBOz4mOmCBHawLnH3cpkTa+8l/X3EV6d3jGTegZ5vnighXHG9luu48WEFvnZLxik7KeK+suo51+w7zbW6pK7ADbDlQdpRHtbQht5TbX1/nylrrajpNcDfGUOdhztkYw0sr9jRJS3zqE6vG+NOLtzeZC12zr4Sy6nr2HGpchflPt23w6hocXDJvORf8+UtXdcRABu+2iEiTkfSQdmTMPPjuJl5btc+14tWrx1xwDBPtC65DUjuWpdMVaLKMb7YdaLmZOsA/PtvZJMDX1Dewo5VaRwA/+88aFqzJY/JDiwJSpiPcdZrg/vuPtjL+wY9YvaeExz/cwr9XWNkfWw4c4YG3NzL5oUUs23GQCQ9+3ORxe+2qh7X1Dt5a3TSV8appg1m24xC//3ALNfUNfLjRyoipqG1gi/0GHOan1aHt5Z4C6V42wJP6BgcPvruJ5TsOUVXbwCXzlvHCst0A9O4e5/X3TIiN5tUfTeOWmSO4cfrwdvVbqdY4M9CcfnnuWESsctPnPGWtoiJ4qNEAABbrSURBVL5y/gpG//JDZv3pM/YVtyyJUdfgYH9p40LCwrKOrwVxd++CDXzHXu8RrjrFnPvOonLXEvhL5i1ztacmxfFTt4yW7/3fStftl394At9/diXf5pYyJC2JvyzJYeH6fLrFRvPT6cNJ7R7HsQN68e8Ve/nb0h38zX5+p+0F1ojBU8pgMJ01ri/zP99JUlw02wvL+WZ3Mcdnpno8d92+w7ywbDdvrs7ltFG9XZk8ANsKfKsN3y0umtvPGt2hvncpOi/jtc35ZYzu24OtBdYAatbYvjz83mbX8T2HKljuVnr64r99xZI7pje59rV0a1GTldRr9pY02Ze4Iypq6vnP19Z1rpzC8rC9DtApRu7O0fdxzRYG/bRZqqLTh7edytShqcTHRLmqH27Jtz7u/ePq4/jZrJF8/4QhHuegbz/TWon5ba71uOa1yoMtKzOVjb85mz9eNhGAy/6+3FV1srnt9uYe5TX1rrz8z+6cTmZaIneerYE6UHQnJu9V1Taw+1CF20bw1tTfdSdluu6/aX/Cnj7aSi0+WF7Lf9c2rXDy7b7DxEQJax84kx4JMdz66joumbeM9zd0fLH8O+v2u27/6p2NHChtWWokHHSK4H7d898AVilcpwfOa8wa2fbwbNe0w/PXH8+Yfj2JjY7imAE9ee7LXRyprqO4opYTh6Vx2qjGXPTmhb3unzOWK6ZaFxPX5x6me3xMWFQ57B4f48qrB5pcM3D3ZrNpp798bzJD0pJYeucMLgpAqqZSvhr7qw/ZUWQF9wG9EkiMiyYqSnjgvHF8cvvppCTG8sJXuwH4+RmNJS+WbClkydZC134D2flljOjTnZSkOIb1tja3Wb2npNUBny/e/TaPAfbv27Idh/jLku0dfs5AiPhpmf2HG0ve3jRjBGeM7cuw3kmkJMUxZXAyA5K7ERcTxTf3n0HRkRr6eLhw+OdPczhYXsN4D5tIvH3TyVzz3ErKquuZPb4f6d3jXfntGSnhkykyKSOZX58/jt/8L5vfLszm9R+f2OS4w2HYmFdKv54JLLr9NI/pmypwdFbGN0N7J7H4F9Mx9isXHSWM6NOdrMxUFtklptO6x/G370/hpy+vYdXuEpZsLWJIWiKf3TmD7P1lnDjcqmj6g1OGcuur61zPvb3gCD27xfqUROB0+2vrWLGzmIsnD+TLnIMUHakhKkyvmEf8yD3PDu5PfHci3eNjOG5ICilJ1ih98uAU13+giLQI7Pefa43ul++wFiy5fxR0mpSRzPoHz2bn7+YwKCUREXFdRHV+n3AgIlx/8lDOGteXr3cVu2qoOxUcqaam3sHNM0doYA+yMP3dDyt5h6uY8tAi1/2h6d3pFhdNYlzT8edgt3nz3t3jmTO+P7edMdJVG2nPoUoOlddwoKyasf2txXUXThrIDacMdT3uzCc/54TfLfa5j4fKa1hgT//Ex0Tx0W2nAda+wRU19ZRWep4ODZWID+7ODBFnfXNfHDckhaunDWFDXin1DsPEo2z/FuU2/TL3VKtI1snD01o7PWTOGGftmXKwvGl2QEmF9cbrrQuOVBh6d91+it3y0ce18vvsPgBzlpCe3mwf4ttes0bp7jHh/jljue2MkU3O87Vcx43/Xg1Ygf2+c8eSmhTHkLRE8kurOfOJz5j424/beIbg6jTBvb31TX7ilsp3fKZ3lRrPndCfr+6ZyS2zRrZ9cpCl28G7sFlapHNT7p4d2P1JtZ/Wljk690D74PnjWv19dpa6mDmmMaCP6tudAb0S+N3F4wH4YrtVFsM9uEdFCScOazoYa/470pZvdlvZZe/dcqpr/+PRfXvw6ZZCV9plOP0/R3RwN8aaR46OElIT2zdFMiC5cSSQ7MNzDEzuRkwHdlIKFOfI/KaX1/Dcl9YCrNp6BzuLrL1Pe4Zw0VVXpbMybcsva8w4OW9i62UwThyexmd3Tue5a7NcbYlxMSy7dxbfO2EwZ4y1gn5mWmKLT6lZzVKE3a/XeSM1KY5zJ/Rvkvp4waSmff3b0h0+P2+g/iCEX3TywUebCnhjdS79eiY0mTbxlXM0Gw6ZLx3lHPEcKKvmoYXZ1NY7mPXEUu777wYgtCtqVddgjOHON77lpeW7vX7M3kOVTBzUi+zfnn3UqUMRYUhaUqv1npzbQnpaXBgdJfzy3LGu+2+t8X6DuKVbCymuqGVEs+ed2uwPxh8+2spTnzQta9KaTftL+cEL37DAh374wpudmP4pIoUistGt7UERyRORdfbXHLdj94pIjohsFZGzA9Jr24RBvbhl5gievmJSh55n8S+m8/4tp/qpV6GV1myl6e8/3OIqzQt4vGisAi98PqwH3vNf7eaN1bk88M4mj6tHPdlTXMGQtKQWF1B95fz03dpA7YenDuPTX5wO4FqI1JZ9xZWudOuTml1n69MzgYcvOrZJ2+urcikoaz33PbekkptfWcO5z3zJqt3FHsum+IM3I/cXgHM8tD9pjJlkf70PICLjgCuAY+zH/E1EArZx5oDkbtx+1ugWH7d8ld7Du6JZkaB5bv6zXzbWxnnq8km6K1AIdJWXvL7BwaHyGn67MNvVtqWVOjGHymu44YVveO7LXewsKmdfcVW7aiM158ymOW9C/1bPGZbe3XV9zTklcrTaM8vdtsYc3a9leeurpg1hy0NNQ+TfluS0OK+6roE/L97OGU98xiebC7h5xgi+uHsmV0wdfJSfqP282YnpcxHJ9PL5LgReNcbUALtEJAeYCixvdw+VX+x6dI4GduUXhWXVNBhDYlyMa5rvnXV5/Py1da6N388a15ePswtYvuMQZ9oZXE7VdQ0c9/AnACzeUshDC612f5QHmDo0lWX3zGxyLc2TGWP68M3uEkoq68gpLOeq51Zy3+wxXDVtSJNradV1Ddz11noA5p42rNVpzeabv1c0S0XetL+UW19dR05hOXPG9+P+c8cxsI0+dlRHPgPdLCLXAKuAXxhjSoCBwAq3c3LtthZEZC4wF2Dw4MD85eqq3r7pZF5cttu1JPv/rsnSwB5iYZRE0SENDsPZT31OiZ3TfXlWBlefOIRfvr3RFdgB7p49horaet5YtY/vTxvMsN6N8+TXPf+1x+e+4CgXUn3RVmAH6GGXDZny0CLOHd+f2noHD/4vG4exFj05OcuCX3dSJvfNGevxuZz+86Np7D5Uwb0LNnCwvAaHwxAVJbz+zT7uf3sDKYlxvHD98S1SNwOlvRdU5wHDgUlAPvAnX5/AGDPfGJNljMlKT/fv9nNd3aSMZNfHzZ/NHNFi5KSCqzP9Yd2QV+oK7ACvrdrHeX/+kiNu+/jOGd+PjJRE7jhrNEdq6pn1p8+Y95lVeK+0qo4VO4sB+OEpQ/n8zhk8e00W799yaovRbyAddvsZ1u5tLKD36ZbG/Rs+yS7gH5/vBJqWOmjNicPTuHLqYM45ph9LtxZx/COf8M3uYu56az3HDOjFh7edFrTADu0cuRtjCpy3ReT/APuDFXlAhtupg+w2FWRD0qx6GnPGtz73qDqHexdsID4mil+fPy6gf0gqa+u56K9Ny9wmxEZRXWddEPzwtlMZnJrouig62W2vgd9/uJWUxDh+Z1d3fOWHJ3DSCGvbvMF+mGv31XFua1r2l1Zz1ri+5B2ucs29V9c1uC64JsRG0esom/I0N9BOWjhUUctlf7dmpGeO6UNqkFe0tyu4i0h/Y4yzvNrFgDOT5l3gFRF5AhgAjAQ8fwZTAXXTjBGcfUy/dq3cVf5nApgv4wxCV00bEtDys1/vKm5y/9W50zhhaOpR/6DcOmski7ILyM4v494FG1ztU4Z4t2AwUE4a3ps3bjzRFXxH9+tBdJSwvbCczfllzH7aqht/xti+POuWU+8NT0H8WreqlsHSZnAXkf8A04HeIpIL/BqYLiKTsDK8dgM/BjDGbBKR14FsoB64yRjT9bZACQNxMVGdJgMo0gVyUqaipnE6ZMuBsoAG92y7LPbaB86kW1y0V9MoPz9zFD8/cxT/+GwHj36wBYDYaAnqFExr+rnVmpo8OJlDFbWUVNSyZGvj1Mwx7fgduvS4QeSWVLn+6N59zpiQrC/xJlvmSg/Nzx3l/EeARzrSKaU6m+o6B+U19X6p///wwmyyMlM559h+fLLZNUPKzqIKVu8pYcrg5IBMz3y9q5hBKd3aVTDvx6cP59qTMtlWcCRsFtJlpCa6MmBmjO7D6j0lHK6qc23EA+0L7n17JvDod8aTNSSFV77ey9zThvmz216L6BWqSkUC54KW+9ymJTryXM9+uctVxMq92NYTi7ZxybxlfPcfy71a0r7/cBVf7ypm/K8/clVXbc2+4kqWbi1i/MBe7e57Qmw0EwYlu64HhYP75ozlphkjEBFSEuNocBj+uzaPbrHRTB2aysn2dYH2uOS4Qbz1k5NCtvJdq0gpFWC5JVbgzCn0bStDT/7w0VbX7eq6BkqrWpaZ/WZ3CRvzyhg/yHMgrq5r4Pw/f+namQvgmU+28/ilEzyev6+4klN/vwSAH5461OM5nYF73aXnrs1yXfCNVDpyVyrA9thL8JN9yLhojftuWmMe+JDVe0roHh/DF3fN4O2bTuZ/N58CwLYCzytDAR7/cEuTwA5WSmODo+Vov6Si1hXYz584gOOGdGw1eDibNrSxtIC/9lsNJQ3uSgVYD7swXY8OlluurmuZm/DF9oOU19STkZrIpIxkxtgbVPzijW9bnZrZbF8Yzf7t2Wx7eLZrL9Ir569oce6tdm30KYOTeeryjtVwCneD0xJ5/JLxXDl1cKeowaTBXakAe+mGEwCorO1Y4phzZedNM4az8GeneDzHvbbQmU9+zgcb8qlvcLh25jLGsDn/CFdOHUxiXAxxMVGu/Ya/3l3MS8t3c/Mra3hzdS63v76Oz7cVkZwYyys/mtYpqqa25fLjB/Pod8Z3ioVnOueuVIANTO7G6aPSKamsbXGsqraBoiM1bS7keWn5btfKzrOP6cexA3ux43dzWLAm17Voxumtn5zEJfOWkVNYzsPvbWZRdgEL1uax43dz+GxbIaVVdWS55ZkPT+/OzTNG8JclOTzwziYAFq7Pdx1/7DsTwiJ1UflGg7tSQZCcGMvuQxUt2m9+ZQ2LtxSy+pdnkOahjnlNfQN3vLGe/327H4A/XzmZCfZ2kNFRwmVZGS0ec+zAxvS9kspa176fVz+3kh4JMfTuHt9ik4mJGZ63mJx/9XFaviJCaXBXKghSEuOapC06LbPLyb6xOpcbT7e2fHxzdS7j+vdkTL8eLFiT5wrs0HSD6NbEx0Sz9I7p/ODFb1w7cLl/r8uzMlqUhp4+Op3bzhhJRkoiJ41II7ekivKaemYEsRaK8i8N7koFQZ+e8Rypruel5bu5+sRMV/uQtES2HDjCYx9s4bqTMimrruOON74FIErg4smDAHjmysk4HIYJraQ3NpfZO4nnrzue0/+wtMWx4X1a5pnHRkdxm1txrP69Iv+CYlenwV2pIHDW7n7gnU1kpCYyYVAyn20rpKa+cReeO99cT7+ejVMzDgNvrcll8uDkdpXDHZKWxKtzpxETJQxL706VvVlEoDaHUOFFg7tSQTD72P7cipVW+NLyPWwv3MReO//96mlD2F54pMn0y8g+3RnVtwfvbchnZAfqxTj3FHV67BLPC5VU56OpkEoFQVxMFBfZFzFzS6pcgR3g6hOH8JsLGvfhHNGnO4tuP52fTB/O+IG9uNWLWuJKNacjd6WC5LFLJrC/tNpVOvfpKyZx/oQBRNn54w+cN46HFmaTEGuNuY4d2Iv/tZLPrlRbdOSuVJAkxEYzxm2D5VNHprsCO+C6WDqqT8tNmJXylY7clQqi284YxfaCcrIyU1ps6pA1JIW/X3Ucp46M7IJVKjyIN6VBAy0rK8usWrUq1N1QSqmIIiKrjTEet4pqc1pGRP4pIoUistGtLVVEFonIdvvfFLtdROQZEckRkfUiMsV/P4ZSSilveTPn/gJwTrO2e4DFxpiRwGL7PsBsrH1TRwJzgXn+6aZSSilftBncjTGfA8XNmi8EXrRvvwhc5Nb+L2NZASSLSH9/dVYppZR32pst09cY4ywbdwBwVhYaCOxzOy/XbmtBROaKyCoRWVVUVNTObiillPKkw6mQxroi6/NVWWPMfGNMljEmKz09vaPdUEop5aa9wb3AOd1i/1tot+cB7jVIB9ltSimlgqi9wf1d4Fr79rXAO27t19hZM9OAUrfpG6WUUkHS5iImEfkPMB3oLSK5wK+Bx4DXReQGYA/wXfv094E5QA5QCVwfgD4rpZRqQ1gsYhKRIqw/Eu3RGzjox+4EWyT3X/seOpHcf+27/wwxxni8aBkWwb0jRGRVayu0IkEk91/7HjqR3H/te3Bo4TCllOqENLgrpVQn1BmC+/xQd6CDIrn/2vfQieT+a9+DIOLn3JVSSrXUGUbuSimlmtHgrpRSnVBEB3cROUdEttr14+9p+xHBJSIZIrJERLJFZJOI3Gq3R0w9fBGJFpG1IrLQvj9URFbafXxNROLs9nj7fo59PDOU/bb7lCwib4rIFhHZLCInRsprLyI/t98zG0XkPyKSEK6vvb/2fBCRa+3zt4vItZ6+VxD7/wf7fbNeRP4rIslux+61+79VRM52aw+veGSMicgvIBrYAQwD4oBvgXGh7lezPvYHpti3ewDbgHHA74F77PZ7gMft23OADwABpgErw+BnuB14BVho338duMK+/XfgJ/btnwJ/t29fAbwWBn1/EfihfTsOSI6E1x6rkuouoJvba35duL72wGnAFGCjW5tPrzOQCuy0/02xb6eEsP9nATH27cfd+j/OjjXxwFA7BkWHYzwK2Tf2w3/IicBHbvfvBe4Ndb/a6PM7wJnAVqC/3dYf2Grf/gdwpdv5rvNC1N9BWJuxzAQW2r+QB93e9K7/A+Aj4ET7dox9noSw773sACnN2sP+taexdHaq/VouBM4O59ceyGwWHH16nYErgX+4tTc5L9j9b3bsYuBl+3aTOON87cMxHkXytIzXtePDgf1ReTKwEj/Uww+Sp4C7AId9Pw04bIypt++798/Vd/t4qX1+qAwFioDn7WmlZ0UkiQh47Y0xecAfgb1APtZruZrIee3B99c5bF5/D36A9WkDIqj/kRzcI4aIdAfeAm4zxpS5HzPWn/mwy0cVkfOAQmPM6lD3pZ1isD5qzzPGTAYqaNwOEgjr1z4Fa1ezocAAIImWW11GjHB9nb0hIvcD9cDLoe6LryI5uEdE7XgRicUK7C8bYxbYzZFQD/9k4AIR2Q28ijU18zTW1onOaqLu/XP13T7eCzgUzA43kwvkGmNW2vffxAr2kfDanwHsMsYUGWPqgAVY/x+R8tqD769zOL3+AIjIdcB5wPftP1AQQf2P5OD+DTDSziCIw7qQ9G6I+9SEiAjwHLDZGPOE26Gwr4dvjLnXGDPIGJOJ9dp+aoz5PrAEuNQ+rXnfnT/Tpfb5IRutGWMOAPtEZLTdNAvIJgJee6zpmGkikmi/h5x9j4jX3ubr6/wRcJaIpNifXM6y20JCRM7BmpK8wBhT6XboXeAKO0NpKDAS+JpwjEehnPD3w0WQOVgZKDuA+0PdHw/9OwXr4+h6YJ39NQdrPnQxsB34BEi1zxfgr/bPswHICvXPYPdrOo3ZMsOw3sw5wBtAvN2eYN/PsY8PC4N+TwJW2a//21hZGBHx2gO/AbYAG4GXsLIzwvK1B/6DdW2gDusT0w3teZ2x5rZz7K/rQ9z/HKw5dOfv7d/dzr/f7v9WYLZbe1jFIy0/oJRSnVAkT8sopZRqhQZ3pZTqhDS4K6VUJ6TBXSmlOiEN7kop1QlpcFdKqU5Ig7tSSnVC/w8CHyZxX/bD9AAAAABJRU5ErkJggg==\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "#full graph is given below:\n", + "plt.plot(df4)\n" + ] + } + ], + "metadata": { + "colab": { + "collapsed_sections": [], + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/stock_market_haseeb.py b/stock_market_haseeb.py new file mode 100644 index 0000000..171ad8a --- /dev/null +++ b/stock_market_haseeb.py @@ -0,0 +1,277 @@ +# -*- coding: utf-8 -*- +"""Stock_Market_Prediction_Using_LSTM.ipynb + +Automatically generated by Colaboratory. + +Original file is located at + https://colab.research.google.com/drive/1lv49VQHHMO-9Fz8OaZmzSTxEYzzFJoYP + +### Stock Market Prediction And Forecasting Using LSTM +""" + +import pandas as pd +import numpy as np +import math +import numpy +from sklearn.metrics import mean_squared_error +from sklearn.preprocessing import MinMaxScaler +from tensorflow.keras.models import Sequential +from tensorflow.keras.layers import Dense +from tensorflow.keras.layers import LSTM +import tensorflow as tf +from numpy import array +import matplotlib.pyplot as plt + +df=pd.read_csv('AAPL.csv') # Read the .csv File + +df.head() # Display the first five rows of data + +df.tail() # Display the last five Rows of dataFile + +df.tail() + +df.plot() #plot a graph of all the data. + +plt.show() + +df1=df.reset_index()['high'] # Choose the high column for the prdeiction of stock prices. + # we can also choose any other value for the prediction of prices. + # all the values of high are in the df1 + +df1.shape # Display the shape of data + +plt.plot(df1) # Draw a graph for the up and down movements from 2017 to 2022 + +df1 #Display the vaule in df1 + +# LSTM are sensitive to the scale of the data. so we apply MinMax scaler +# Min Max convert the all values in range of 0 to 1 +scaler=MinMaxScaler(feature_range=(0,1)) +df1=scaler.fit_transform(np.array(df1).reshape(-1,1)) + +df1.shape + +print(df1) + +#splitting dataset into train and test split +#Where trainig size of data is 65% and test size of data is 35% +training_size=int(len(df1)*0.65) +test_size=len(df1)-training_size +train_data,test_data=df1[0:training_size,:],df1[training_size:len(df1),:1] + +# total no of values in training size and test size +training_size,test_size + +print(train_data,test_data) + +# convert an array of values into a dataset matrix +def create_dataset(dataset, time_step=1): + dataX, dataY = [], [] + for i in range(len(dataset)-time_step-1): + a = dataset[i:(i+time_step), 0] #i=0, 0,1,2,3-----99 100 + dataX.append(a) # 101 goes to data .append + dataY.append(dataset[i + time_step, 0]) + return numpy.array(dataX), numpy.array(dataY) + +# reshape into X=t,t+1,t+2,t+3 and Y=t+4 +# time_step of data is 100 mean it takes 100 previous values to predict the next value. +time_step = 100 +X_train, y_train = create_dataset(train_data, time_step) +X_test, ytest = create_dataset(test_data, time_step) + +print(X_train.shape), print(y_train.shape) + +print(X_test.shape), print(ytest.shape) + +# reshape input to be [samples, time steps, features] which is required for LSTM +# convert a 2d data into 3d using reshape +X_train =X_train.reshape(X_train.shape[0],X_train.shape[1] , 1) +X_test = X_test.reshape(X_test.shape[0],X_test.shape[1] , 1) + +#Create the Stacked LSTM model +model=Sequential() +model.add(LSTM(50,return_sequences=True,input_shape=(100,1))) +model.add(LSTM(50,return_sequences=True)) +model.add(LSTM(50)) +model.add(Dense(1)) +model.compile(loss='mean_squared_error',optimizer='adam') + +model.summary() # details of model. + +# train the data using batch 64 +hist=model.fit(X_train,y_train,validation_data=(X_test,ytest),epochs=100,batch_size=64,verbose=1) + +#print the keys of dictionary that store the loss +print(hist.history.keys()) + +loss = pd.DataFrame(model.history.history) + +#plot the losses during training +loss.plot() + +# Lets Do the prediction and check performance metrics +train_predict=model.predict(X_train) +test_predict=model.predict(X_test) + +print(train_predict) + +#Transformback to original form +train_predict=scaler.inverse_transform(train_predict) +test_predict=scaler.inverse_transform(test_predict) + +print(test_predict) + +### Calculate Root Mean Square error performance metrics +math.sqrt(mean_squared_error(y_train,train_predict)) + +### Test Data Root Mean Square error +math.sqrt(mean_squared_error(ytest,test_predict)) + +### Plotting +# shift train predictions for plotting +look_back=100 +trainPredictPlot = numpy.empty_like(df1) +trainPredictPlot[:, :] = np.nan #Taking NaN values based on df1 for training. +trainPredictPlot[look_back:len(train_predict)+look_back, :] = train_predict +# shift test predictions for plotting +testPredictPlot = numpy.empty_like(df1) +testPredictPlot[:, :] = numpy.nan #Taking NaN values based on df1 for testing. +testPredictPlot[len(train_predict)+(look_back*2)+1:len(df1)-1, :] = test_predict +# plot baseline and predictions +plt.plot(scaler.inverse_transform(df1)) +plt.plot(trainPredictPlot) +plt.plot(testPredictPlot) +plt.show() + +# where blue one is the actual dataset value, +# Yellow one are the training dataset values +# and Green one are testing values + +# Training dataset graph +plt.plot(trainPredictPlot) + +# Testing dataset graph +plt.plot(testPredictPlot) + +# Actual dataset graph +plt.plot(scaler.inverse_transform(df1)) + +len(test_data) + +x_input=test_data[341:].reshape(1,-1) +x_input.shape + +temp_input=list(x_input) +temp_input=temp_input[0].tolist() + +temp_input + +"""# Weekly Prediction of Apple stock Market""" + +# demonstrate prediction for next 7 days + +lst_output=[] +n_steps=100 +i=0 +while(i<7): + + if(len(temp_input)>100): + #print(temp_input) + x_input=np.array(temp_input[1:]) + print("{} day input {}".format(i,x_input)) + x_input=x_input.reshape(1,-1) + x_input = x_input.reshape((1, n_steps, 1)) + #print(x_input) + yhat = model.predict(x_input, verbose=0) + print("{} day output {}".format(i,yhat)) + temp_input.extend(yhat[0].tolist()) + temp_input=temp_input[1:] + #print(temp_input) + lst_output.extend(yhat.tolist()) + i=i+1 + else: # First this block is run because temp_input is not greater than 100 + x_input = x_input.reshape((1, n_steps,1)) + yhat = model.predict(x_input, verbose=0) + print(yhat[0]) + temp_input.extend(yhat[0].tolist()) + print(len(temp_input)) + lst_output.extend(yhat.tolist()) + i=i+1 + # This else block predict the next day and after this if part execute. + + +print(lst_output) + +day_new=np.arange(1,101) # taking previous 100 days +day_pred=np.arange(101,108) + +# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value. +plt.plot(day_new,scaler.inverse_transform(df1[1158:])) +plt.plot(day_pred,scaler.inverse_transform(lst_output)) +# Yellow line predicts the next 7 day prediction. + +df3=df1.tolist() +df3.extend(lst_output) +plt.plot(df3[1200:]) + +df3=scaler.inverse_transform(df3).tolist() + +#full graph is given below: +plt.plot(df3) + +"""# Monthly Prediction of Apple stock Market""" + +# demonstrate prediction for next 30 days + +lst_output=[] +n_steps=100 +i=0 +while(i<30): + + if(len(temp_input)>100): + #print(temp_input) + x_input=np.array(temp_input[1:]) + print("{} day input {}".format(i,x_input)) + x_input=x_input.reshape(1,-1) + x_input = x_input.reshape((1, n_steps, 1)) + #print(x_input) + yhat = model.predict(x_input, verbose=0) + print("{} day output {}".format(i,yhat)) + temp_input.extend(yhat[0].tolist()) + temp_input=temp_input[1:] + #print(temp_input) + lst_output.extend(yhat.tolist()) + i=i+1 + else: # First this block is run because temp_input is not greater than 100 + x_input = x_input.reshape((1, n_steps,1)) + yhat = model.predict(x_input, verbose=0) + print(yhat[0]) + temp_input.extend(yhat[0].tolist()) + print(len(temp_input)) + lst_output.extend(yhat.tolist()) + i=i+1 + # This else block predict the next day and after this if part execute. + + +print(lst_output) + +day_new=np.arange(1,101) # taking previous 100 days +day_pred=np.arange(101,131) + +len(df1) + +# total length is 1258 we take values from 1158 because 100(days) values required to predict next(day) value. +plt.plot(day_new,scaler.inverse_transform(df1[1158:])) +plt.plot(day_pred,scaler.inverse_transform(lst_output)) +# Yellow line predicts the next 30 day prediction. + +df4=df1.tolist() +df4.extend(lst_output) +plt.plot(df4[1200:]) + +#Exend the graph by joining previous and prdicted one and it,s lokks good. + +df4=scaler.inverse_transform(df4).tolist() + +#full graph is given below: +plt.plot(df4) \ No newline at end of file