{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Loading and Processing Stock-Market Time-Series Data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Introduction\n", "\n", "Across many problems in finance, one starts with time series. Here, we showcase how to generate pseudo-random time-series, download actual stock-market time series from a number of common providers, and how to compute time-series similarity measures." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:16.323844Z", "start_time": "2020-07-13T20:25:12.717917Z" }, "scrolled": true }, "outputs": [], "source": [ "%matplotlib inline\n", "from qiskit_finance import QiskitFinanceError\n", "from qiskit_finance.data_providers import *\n", "import datetime\n", "import matplotlib.pyplot as plt\n", "from pandas.plotting import register_matplotlib_converters\n", "\n", "register_matplotlib_converters()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:16.335367Z", "start_time": "2020-07-13T20:25:16.325777Z" } }, "outputs": [], "source": [ "data = RandomDataProvider(\n", " tickers=[\"TICKER1\", \"TICKER2\"],\n", " start=datetime.datetime(2016, 1, 1),\n", " end=datetime.datetime(2016, 1, 30),\n", " seed=1,\n", ")\n", "data.run()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once the data are loaded, you can run a variety of algorithms on those to aggregate the data. Notably, you can compute the covariance matrix or a variant, which would consider alternative time-series similarity measures based on [dynamic time warping](https://en.wikipedia.org/wiki/Dynamic_time_warping) (DTW). In DTW, changes that vary in speed, e.g., one stock's price following another stock's price with a small delay, can be accommodated." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:17.431763Z", "start_time": "2020-07-13T20:25:17.065473Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Means:\n", "[33.97683271 97.61130683]\n", "A time-series similarity measure:\n", "[[1.00000000e+00 5.41888011e-04]\n", " [5.41888011e-04 1.00000000e+00]]\n" ] }, { "data": { "image/png": "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u+A6WVlZuvnmm+VwONSuXTstXbq0XE16erpatWqlkJAQxcfHa+vWrTXfPACgXvNrQBYXF6tr165KT0+/qPq8vDwNGDBAd955p3JycvTEE0/owQcf1MaNG701q1atUmpqqqZOnart27era9euSkpK0tGjR/21GwCAeijAGGNqZUMBAXrzzTc1ePDgCmsmTpyod955R7t27fKODR06VAUFBcrIyJAkxcfH65ZbbtFLL70kSSorK1NMTIweffRRTZo06aJ68Xg8Cg0NVR8NUoOAhtXfKeAytvFwTl23APiN51SZmt7wtQoLC+V0Ov2yjcvqM8js7GwlJib6jCUlJSk7O1uSdObMGW3bts2nJjAwUImJid4am5KSEnk8Hp8FAIDKXFYB6Xa7FRkZ6TMWGRkpj8ej77//XsePH1dpaam1xu12VzjvrFmzFBoa6l1iYmL80j8A4OpxWQWkv6SlpamwsNC7HDhwoK5bAgBc5hrUdQM/5XK5lJ+f7zOWn58vp9OpRo0aKSgoSEFBQdYal8tV4bwOh0MOh8MvPQMArk6X1SvIhIQEZWZm+oxt3rxZCQkJkqTg4GB1797dp6asrEyZmZneGgAAaoJfA7KoqEg5OTnKycmR9ONlHDk5Odq/f7+kH9/6HDFihLf+oYce0tdff62nn35aX331lf74xz9q9erVevLJJ701qampWrhwoZYtW6bdu3dr3LhxKi4uVkpKij93BQBQz/j1LdbPPvtMd955p/dxamqqJGnkyJFaunSpjhw54g1LSWrdurXeeecdPfnkk/r973+v66+/Xq+++qqSkpK8NUOGDNGxY8c0ZcoUud1uxcXFKSMjo9yJOwAAXIpauw7ycsJ1kKgPuA4SV7N6dx0kAACXCwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALvwbkBx98oIEDByo6OloBAQFat25dpfVr167VXXfdpebNm8vpdCohIUEbN270qZk2bZoCAgJ8lo4dO/pxLwAA9ZFfA7K4uFhdu3ZVenr6RdV/8MEHuuuuu7RhwwZt27ZNd955pwYOHKgdO3b41HXu3FlHjhzxLh9++KE/2gcA1GMN/Dl5//791b9//4uunz9/vs/jZ599VuvXr9fbb7+tbt26eccbNGggl8tVU20CAFDOZf0ZZFlZmU6dOqVmzZr5jO/du1fR0dFq06aNhg8frv3791c6T0lJiTwej88CAEBlLuuAnDdvnoqKinTvvfd6x+Lj47V06VJlZGTo5ZdfVl5enm6//XadOnWqwnlmzZql0NBQ7xITE1Mb7QMArmCXbUC+8cYbmj59ulavXq2IiAjveP/+/fXrX/9aXbp0UVJSkjZs2KCCggKtXr26wrnS0tJUWFjoXQ4cOFAbuwAAuIL59TPI6lq5cqUefPBBrVmzRomJiZXWhoWF6YYbblBubm6FNQ6HQw6Ho6bbBABcxS67V5ArVqxQSkqKVqxYoQEDBlywvqioSPv27VNUVFQtdAcAqC/8+gqyqKjI55VdXl6ecnJy1KxZM7Vo0UJpaWk6dOiQli9fLunHt1VHjhyp3//+94qPj5fb7ZYkNWrUSKGhoZKkp556SgMHDlTLli11+PBhTZ06VUFBQRo2bJg/dwUAUM/49RXkZ599pm7dunkv0UhNTVW3bt00ZcoUSdKRI0d8zkB95ZVXdO7cOT388MOKioryLo8//ri35uDBgxo2bJg6dOige++9V9dee60++eQTNW/e3J+7AgCoZwKMMaaum6htHo9HoaGh6qNBahDQsK7bAfxi4+Gcum4B8BvPqTI1veFrFRYWyul0+mUbl91nkAAAXA4ISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAs/BqQH3zwgQYOHKjo6GgFBARo3bp1ldZnZWUpICCg3OJ2u33q0tPT1apVK4WEhCg+Pl5bt271414AAOojvwZkcXGxunbtqvT09Cqtt2fPHh05csS7REREeJ9btWqVUlNTNXXqVG3fvl1du3ZVUlKSjh49WtPtAwDqsQb+nLx///7q379/ldeLiIhQWFiY9bnnn39eY8aMUUpKiiRpwYIFeuedd7R48WJNmjTJuk5JSYlKSkq8jwsLCyVJ53RWMlVuD7gieE6V1XULgN94in78/TbGf3/E/RqQ1RUXF6eSkhLddNNNmjZtmn7+859Lks6cOaNt27YpLS3NWxsYGKjExERlZ2dXON+sWbM0ffr0cuMfakPNNw9cJpreUNcdAP534sQJhYaG+mXuyyogo6KitGDBAvXo0UMlJSV69dVX1adPH23ZskU333yzjh8/rtLSUkVGRvqsFxkZqa+++qrCedPS0pSamup9XFBQoJYtW2r//v1+O7D+4PF4FBMTowMHDsjpdNZ1OxftSu1bunJ7p+/aRd+1r7CwUC1atFCzZs38to3LKiA7dOigDh06eB/36tVL+/bt0wsvvKD//d//rfa8DodDDoej3HhoaOgV90shSU6nk75r2ZXaO33XLvqufYGB/juV5rK/zKNnz57Kzc2VJIWHhysoKEj5+fk+Nfn5+XK5XHXRHgDgKnXZB2ROTo6ioqIkScHBwerevbsyMzO9z5eVlSkzM1MJCQl11SIA4Crk17dYi4qKvK/+JCkvL085OTlq1qyZWrRoobS0NB06dEjLly+XJM2fP1+tW7dW586d9cMPP+jVV1/Ve++9p02bNnnnSE1N1ciRI9WjRw/17NlT8+fPV3Fxsfes1ovhcDg0depU69uulzP6rn1Xau/0Xbvou/bVRu8Bxo/nyGZlZenOO+8sNz5y5EgtXbpUo0aN0jfffKOsrCxJ0ty5c/XKK6/o0KFDaty4sbp06aIpU6aUm+Oll17Sc889J7fbrbi4OL344ouKj4/3124AAOohvwYkAABXqsv+M0gAAOoCAQkAgAUBCQCABQEJAIDFVRmQJ0+e1PDhw+V0OhUWFqbRo0erqKio0nX69OlT7jZbDz30kE/N/v37NWDAADVu3FgRERGaMGGCzp07V6e9nzx5Uo8++qg6dOigRo0aqUWLFnrssce8X8h+nu02YitXrqx2n1W95diaNWvUsWNHhYSEKDY2Vhs2+H4PrjFGU6ZMUVRUlBo1aqTExETt3bu32v3VRN8LFy7U7bffrqZNm6pp06ZKTEwsVz9q1KhyxzU5OblO+166dGm5nkJCQnxqaut4V7V327/DgIAADRgwwFvj72Ne1dv0ST+esX/zzTfL4XCoXbt2Wrp0abma2rhNX1V7X7t2re666y41b95cTqdTCQkJ2rhxo0/NtGnTyh3vjh071mnftXZrRHMVSk5ONl27djWffPKJ+b//+z/Trl07M2zYsErX6d27txkzZow5cuSIdyksLPQ+f+7cOXPTTTeZxMREs2PHDrNhwwYTHh5u0tLS6rT3nTt3ml/96lfmrbfeMrm5uSYzM9O0b9/e3HPPPT51ksySJUt89u/777+vVo8rV640wcHBZvHixeaLL74wY8aMMWFhYSY/P99a/9FHH5mgoCAzd+5c8+WXX5pnnnnGNGzY0OzcudNbM3v2bBMaGmrWrVtn/v73v5t///d/N61bt652jzXR93333WfS09PNjh07zO7du82oUaNMaGioOXjwoLdm5MiRJjk52ee4njx5ssZ6rk7fS5YsMU6n06cnt9vtU1Mbx7s6vZ84ccKn7127dpmgoCCzZMkSb42/j/mGDRvMf/3Xf5m1a9caSebNN9+stP7rr782jRs3NqmpqebLL780f/jDH0xQUJDJyMjw1lT1ONRW748//riZM2eO2bp1q/nHP/5h0tLSTMOGDc327du9NVOnTjWdO3f2Od7Hjh2r077ff/99I8ns2bPHp6/S0lJvTU0c86suIL/88ksjyXz66afesb/+9a8mICDAHDp0qML1evfubR5//PEKn9+wYYMJDAz0+UPz8ssvG6fTaUpKSuq093+1evVqExwcbM6ePesdu5hfuovVs2dP8/DDD3sfl5aWmujoaDNr1ixr/b333msGDBjgMxYfH2/+8z//0xhjTFlZmXG5XOa5557zPl9QUGAcDodZsWJFjfRcnb7/1blz50yTJk3MsmXLvGMjR440gwYNqrEebara95IlS0xoaGiF89XW8Tbm0o/5Cy+8YJo0aWKKioq8Y7VxzM+7mH83Tz/9tOncubPP2JAhQ0xSUpL38aUeh+qo7r/5Tp06menTp3sfT5061XTt2rXmGruAqgTkd999V2FNTRzzq+4t1uzsbIWFhalHjx7escTERAUGBmrLli2Vrvv6668rPDxcN910k9LS0nT69GmfeWNjY33uJJKUlCSPx6Mvvviiznv/qcLCQjmdTjVo4PtFSQ8//LDCw8PVs2dPLV68uFr3UTt/y7HExETv2IVuOZadne1TL/147M7X5+Xlye12+9SEhoYqPj6+0tuY+bvvf3X69GmdPXu23N0DsrKyFBERoQ4dOmjcuHE6ceJEjfR8KX0XFRWpZcuWiomJ0aBBg3x+R2vjeF9K7z+1aNEiDR06VNdcc43PuD+PeVVd6Pe7Jo5DbSkrK9OpU6fK/Y7v3btX0dHRatOmjYYPH679+/fXUYe+4uLiFBUVpbvuuksfffSRd7ymjvlldTePmuB2uxUREeEz1qBBAzVr1qzc+9M/dd9996lly5aKjo7W559/rokTJ2rPnj1au3atd17bbbbOP1eXvf/U8ePHNXPmTI0dO9ZnfMaMGfrFL36hxo0ba9OmTfrNb36joqIiPfbYY1XqsTq3HKvo2J3fp/P/razmUlX3Vmk/NXHiREVHR/v8o0tOTtavfvUrtW7dWvv27dNvf/tb9e/fX9nZ2QoKCqqTvjt06KDFixerS5cuKiws1Lx589SrVy998cUXuv7662vleFe395/aunWrdu3apUWLFvmM+/uYV1VFv98ej0fff/+9vvvuu0v+3ast8+bNU1FRke69917vWHx8vJYuXaoOHTroyJEjmj59um6//Xbt2rVLTZo0qZM+/XVrxH91xQTkpEmTNGfOnEprdu/eXe35fxoosbGxioqKUt++fbVv3z61bdu22vNK/u/9PI/HowEDBqhTp06aNm2az3OTJ0/2/tytWzcVFxfrueeeq3JA1lezZ8/WypUrlZWV5XPCy9ChQ70/x8bGqkuXLmrbtq2ysrLUt2/fumhVCQkJPl/e36tXL914443605/+pJkzZ9ZJT9WxaNEixcbGqmfPnj7jl+Mxvxq88cYbmj59utavX+/zP+r9+/f3/tylSxfFx8erZcuWWr16tUaPHl0Xrfrt1oj/6ooJyPHjx2vUqFGV1rRp00Yul0tHjx71GT937pxOnjxZpVtinf9u19zcXLVt21Yul6vcGVDnb7t1oXlro/dTp04pOTlZTZo00ZtvvqmGDRtWWh8fH6+ZM2eqpKSkSl/2W51bjrlcrkrrz/83Pz/fe+eW84/j4uIuurea7vu8efPmafbs2Xr33XfVpUuXSmvbtGmj8PBw5ebm1sgf65q4xVvDhg3VrVs3740DauN4S5fWe3FxsVauXKkZM2ZccDs1fcyrqqLfb6fTqUaNGikoKOiyv03fypUr9eCDD2rNmjXl3i7+V2FhYbrhhht8bkRxOejZs6c+/PBDSTV3a8Qr5jPI5s2bq2PHjpUuwcHBSkhIUEFBgbZt2+Zd97333lNZWVmVvtA8JydHkrx/QBISErRz506fANu8ebOcTqc6depUp717PB7169dPwcHBeuutt8qd0l/R/jVt2rTK34RfnVuOJSQk+NRLPx678/WtW7eWy+XyqfF4PNqyZUuN3casurdKmzt3rmbOnKmMjAyfz4YrcvDgQZ04ccIneOqi758qLS3Vzp07vT3VxvG+1N7XrFmjkpIS3X///RfcTk0f86q60O/35X6bvhUrViglJUUrVqzwuZymIkVFRdq3b1+dHe+K+OXWiBd9Os8VJDk52XTr1s1s2bLFfPjhh6Z9+/Y+l0ocPHjQdOjQwWzZssUYY0xubq6ZMWOG+eyzz0xeXp5Zv369adOmjbnjjju865y/zKNfv34mJyfHZGRkmObNm/vlMo+q9F5YWGji4+NNbGysyc3N9Tnl+dy5c8YYY9566y2zcOFCs3PnTrN3717zxz/+0TRu3NhMmTKlWj2uXLnSOBwOs3TpUvPll1+asWPHmrCwMO8Zvg888ICZNGmSt/6jjz4yDRo0MPPmzTO7d+82U6dOtV7mERYWZtavX28+//xzM2jQIL9c5lGVvmfPnm2Cg4PNn//8Z5/jeurUKWOMMadOnTJPPfWUyc7ONnl5eebdd981N998s2nfvr354Ycf6qzv6dOnm40bN5p9+/aZbdu2maFDh5qQkBDzxRdf+Oybv493dXo/77bbbjNDhgwpN14bx/zUqVNmx44dZseOHUaSef75582OHTvMt99+a4wxZtKkSeaBBx7w1p+/zGPChAlm9+7dJj093XqZR2XHoaZUtffXX3/dNGjQwKSnp/v8jhcUFHhrxo8fb7KyskxeXp756KOPTGJiogkPDzdHjx6ts75feOEFs27dOrN3716zc+dO8/jjj5vAwEDz7rvvemtq4phflQF54sQJM2zYMPOzn/3MOJ1Ok5KS4v2jZowxeXl5RpJ5//33jTHG7N+/39xxxx2mWbNmxuFwmHbt2pkJEyb4XAdpjDHffPON6d+/v2nUqJEJDw8348eP97mUoi56P3+6s23Jy8szxvx4qUhcXJz52c9+Zq655hrTtWtXs2DBAp9rhqrqD3/4g2nRooUJDg42PXv2NJ988on3ud69e5uRI0f61K9evdrccMMNJjg42HTu3Nm88847Ps+XlZWZyZMnm8jISONwOEzfvn3Nnj17qt1fTfTdsmVL63GdOnWqMcaY06dPm379+pnmzZubhg0bmpYtW5oxY8bU+B+9qvb9xBNPeGsjIyPN3Xff7XNdmzG1d7yr2rsxxnz11VdGktm0aVO5uWrjmFf0b+p8nyNHjjS9e/cut05cXJwJDg42bdq08blu87zKjkNd9d67d+9K64358ZKVqKgoExwcbK677jozZMgQk5ubW6d9z5kzx7Rt29aEhISYZs2amT59+pj33nuv3LyXesy53RUAABZXzGeQAADUJgISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAACL/wfpYcgKjqEsdAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "A covariance matrix:\n", "[[2.08413157 0.20842107]\n", " [0.20842107 1.99542187]]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcgAAAGiCAYAAABjzlbWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAuV0lEQVR4nO3de1xVdb7/8TegbLRxg4ayofBuGgZimoRTo40kmMejM51JzVJ5mJ6c7pgpc1K8zMlLnnKamJzM66m8zcO0Joc0iulUpOVl0jJHHQpvG2/BBixU+P7+6Oee9vAVBdmg8no+HusR+7s/67s+az2Qd3vvtfYKMMYYAQAAH4H13QAAAJcjAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALvwXkyZMnNWLECDmdToWFhWnMmDEqKSmpcp2+ffsqICDAZ3nwwQd9avLz8zVw4EA1bdpUrVq10sSJE3X27Fl/7QYAoIFq5K+JR4wYoSNHjmjTpk06c+aMUlNTNW7cOL3++utVrjd27FjNmDHD+7hp06ben8vLyzVw4EC5XC59/PHHOnLkiEaOHKnGjRvrmWee8deuAAAaoAB/fFn57t27FRMTo08//VQ9e/aUJGVlZemuu+7SwYMHFRUVZV2vb9++io+P1/z5863P/+Uvf9G//du/6fDhw4qIiJAkLViwQJMmTdKxY8cUHBxc27sCAGig/PIKMjc3V2FhYd5wlKSkpCQFBgZq8+bN+sUvfnHedV977TW9+uqrcrlcGjRokKZMmeJ9FZmbm6vY2FhvOEpScnKyxo8fry+++ELdu3e3zllWVqaysjLv44qKCp08eVLXXnutAgICLnV3AQB1zBij4uJiRUVFKTDQP58W+iUg3W63WrVq5buhRo3UokULud3u86537733qk2bNoqKitLnn3+uSZMmac+ePVq7dq133h+HoyTv46rmnTVrlqZPn17T3QEAXKYOHDig66+/3i9zVysgJ0+erDlz5lRZs3v37ho3M27cOO/PsbGxioyMVL9+/bR//3516NChxvOmp6crLS3N+7ioqEitW7fWN9vayvkTTuTF1ekXN8TWdwuA35zVGX2oDWrWrJnftlGtgJwwYYJGjx5dZU379u3lcrl09OhRn/GzZ8/q5MmTcrlcF729hIQESdK+ffvUoUMHuVwubdmyxaemoKBAkqqc1+FwyOFwVBp3/iRQzmYEJK5OjQIa13cLgP/8/7Nn/PkxWbUCsmXLlmrZsuUF6xITE1VYWKitW7eqR48ekqT33ntPFRUV3tC7GDt27JAkRUZGeuf97//+bx09etT7Fu6mTZvkdDoVExNTnV0BAKBKfnn5dOONNyolJUVjx47Vli1b9NFHH+nhhx/WsGHDvGewHjp0SF26dPG+Ity/f79mzpyprVu36uuvv9abb76pkSNH6mc/+5ni4uIkSf3791dMTIzuv/9+/e1vf9M777yjp59+Wg899JD1FSIAADXlt/cXX3vtNXXp0kX9+vXTXXfdpdtuu00vv/yy9/kzZ85oz549OnXqlCQpODhY7777rvr3768uXbpowoQJuvvuu/XWW2951wkKCtKf//xnBQUFKTExUffdd59Gjhzpc90kAAC1wS/XQV7uPB6PQkND9e3f2/MZJK5ayVHx9d0C4DdnzRnlaL2KiorkdDr9sg3SAQAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALAhIAAAsCEgAACwISAAALvwXkyZMnNWLECDmdToWFhWnMmDEqKSmpsv6RRx5R586d1aRJE7Vu3VqPPvqoioqKfOoCAgIqLStXrvTXbgAAGqhG/pp4xIgROnLkiDZt2qQzZ84oNTVV48aN0+uvv26tP3z4sA4fPqx58+YpJiZG33zzjR588EEdPnxYf/rTn3xqlyxZopSUFO/jsLAwf+0GAKCBCjDGmNqedPfu3YqJidGnn36qnj17SpKysrJ011136eDBg4qKirqoedasWaP77rtPpaWlatTohywPCAjQG2+8oSFDhtS4P4/Ho9DQUH379/ZyNuNdZlydkqPi67sFwG/OmjPK0XoVFRXJ6XT6ZRt+SYfc3FyFhYV5w1GSkpKSFBgYqM2bN1/0POd2/Fw4nvPQQw8pPDxcvXr10uLFi3WhjC8rK5PH4/FZAACoil/eYnW73WrVqpXvhho1UosWLeR2uy9qjuPHj2vm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+5hX9zZ90g9n7N98881yOBzq2LGjli5dWqmmLm7TV93e165dqzvvvFMtW7aU0+lUYmKi3nnnHZ+aadOmVTreXbp0qde+6+zWiOYqlJKSYrp162Y++eQT83//93+mY8eOZvjw4VWu06dPHzN27Fhz5MgR71JUVOR9/uzZs+amm24ySUlJZvv27WbDhg0mPDzcpKen12vvO3fuNL/85S/Nm2++afbt22eys7NNp06dzN133+1TJ8ksWbLEZ/++++67GvW4cuVKExwcbBYvXmy++OILM3bsWBMWFmYKCgqs9R999JEJCgoyc+fONV9++aV5+umnTePGjc3OnTu9NbNnzzahoaFm3bp15m9/+5v593//d9OuXbsa91gbfd97770mMzPTbN++3ezevduMHj3ahIaGmoMHD3prRo0aZVJSUnyO68mTJ2ut55r0vWTJEuN0On16crvdPjV1cbxr0vuJEyd8+t61a5cJCgoyS5Ys8db4+5hv2LDB/Nd//ZdZu3atkWTeeOONKuv/8Y9/mKZNm5q0tDTz5Zdfmt///vcmKCjIZGVleWuqexzqqvfHHnvMzJkzx2zZssX8/e9/N+np6aZx48Zm27Zt3pqMjAzTtWtXn+N97Nixeu37/fffN5LMnj17fPoqLy/31tTGMb/qAvLLL780ksynn37qHfvLX/5iAgICzKFDh867Xp8+fcxjjz123uc3bNhgAgMDff7QvPTSS8bpdJqysrJ67f1frV692gQHB5szZ854xy7ml+5i9erVyzz00EPex+Xl5SYqKsrMmjXLWn/PPfeYgQMH+owlJCSY//zP/zTGGFNRUWFcLpd59tlnvc8XFhYah8NhVqxYUSs916Tvf3X27FnTrFkzs2zZMu/YqFGjzODBg2utR5vq9r1kyRITGhp63vnq6ngbc+nH/PnnnzfNmjUzJSUl3rG6OObnXMy/m6eeesp07drVZ2zo0KEmOTnZ+/hSj0NN1PTffExMjJk+fbr3cUZGhunWrVvtNXYB1QnIb7/99rw1tXHMr7q3WHNzcxUWFqaePXt6x5KSkhQYGKjNmzdXue5rr72m8PBw3XTTTUpPT9epU6d85o2NjfW5k0hycrI8Ho+++OKLeu/9x4qKiuR0OtWoke8XJT300EMKDw9Xr169tHjx4hrdR+3cLceSkpK8Yxe65Vhubq5PvfTDsTtXn5eXJ7fb7VMTGhqqhISEKm9j5u++/9WpU6d05syZSncPyMnJUatWrdS5c2eNHz9eJ06cqJWeL6XvkpIStWnTRtHR0Ro8eLDP72hdHO9L6f3HFi1apGHDhumaa67xGffnMa+uC/1+18ZxqCsVFRUqLi6u9Du+d+9eRUVFqX379hoxYoTy8/PrqUNf8fHxioyM1J133qmPPvrIO15bx/yyuptHbXC73WrVqpXPWKNGjdSiRYtK70//2L333qs2bdooKipKn3/+uSZNmqQ9e/Zo7dq13nltt9k691x99v5jx48f18yZMzVu3Dif8RkzZujnP/+5mjZtqo0bN+rXv/61SkpK9Oijj1arx5rccux8x+7cPp37b1U1l6qmt0r7sUmTJikqKsrnH11KSop++ctfql27dtq/f79+85vfaMCAAcrNzVVQUFC99N25c2ctXrxYcXFxKioq0rx589S7d2998cUXuv766+vkeNe09x/bsmWLdu3apUWLFvmM+/uYV9f5fr89Ho++++47ffvtt5f8u1dX5s2bp5KSEt1zzz3esYSEBC1dulSdO3fWkSNHNH36dN1+++3atWuXmjVrVi99+uvWiP/qignIyZMna86cOVXW7N69u8bz/zhQYmNjFRkZqX79+mn//v3q0KFDjeeV/N/7OR6PRwMHDlRMTIymTZvm89yUKVO8P3fv3l2lpaV69tlnqx2QDdXs2bO1cuVK5eTk+JzwMmzYMO/PsbGxiouLU4cOHZSTk6N+/frVR6tKTEz0+fL+3r1768Ybb9Qf//hHzZw5s156qolFixYpNjZWvXr18hm/HI/51eD111/X9OnTtX79ep//UR8wYID357i4OCUkJKhNmzZavXq1xowZUx+t+u3WiP/qignICRMmaPTo0VXWtG/fXi6XS0ePHvUZP3v2rE6ePFmtW2Kd+27Xffv2qUOHDnK5XJXOgDp3260LzVsXvRcXFyslJUXNmjXTG2+8ocaNG1dZn5CQoJkzZ6qsrKxaX/Zbk1uOuVyuKuvP/begoMB755Zzj+Pj4y+6t9ru+5x58+Zp9uzZevfddxUXF1dlbfv27RUeHq59+/bVyh/r2rjFW+PGjdW9e3fvjQPq4nhLl9Z7aWmpVq5cqRkzZlxwO7V9zKvrfL/fTqdTTZo0UVBQ0GV/m76VK1fqgQce0Jo1ayq9XfyvwsLCdMMNN/jciOJy0KtXL3344YeSau/WiFfMZ5AtW7ZUly5dqlyCg4OVmJiowsJCbd261bvue++9p4qKimp9ofmOHTskyfsHJDExUTt37vQJsE2bNsnpdComJqZee/d4POrfv7+Cg4P15ptvVjql/3z717x582p/E35NbjmWmJjoUy/9cOzO1bdr104ul8unxuPxaPPmzbV2G7Oa3ipt7ty5mjlzprKysnw+Gz6fgwcP6sSJEz7BUx99/1h5ebl27tzp7akujvel9r5mzRqVlZXpvvvuu+B2avuYV9eFfr8v99v0rVixQqmpqVqxYoXP5TTnU1JSov3799fb8T4fv9wa8aJP57mCpKSkmO7du5vNmzebDz/80HTq1MnnUomDBw+azp07m82bNxtjjNm3b5+ZMWOG+eyzz0xeXp5Zv369ad++vfnZz37mXefcZR79+/c3O3bsMFlZWaZly5Z+ucyjOr0XFRWZhIQEExsba/bt2+dzyvPZs2eNMca8+eabZuHChWbnzp1m79695g9/+INp2rSpmTp1ao16XLlypXE4HGbp0qXmyy+/NOPGjTNhYWHeM3zvv/9+M3nyZG/9Rx99ZBo1amTmzZtndu/ebTIyMqyXeYSFhZn169ebzz//3AwePNgvl3lUp+/Zs2eb4OBg86c//cnnuBYXFxtjjCkuLjZPPvmkyc3NNXl5eebdd981N998s+nUqZP5/vvv663v6dOnm3feecfs37/fbN261QwbNsyEhISYL774wmff/H28a9L7ObfddpsZOnRopfG6OObFxcVm+/btZvv27UaSee6558z27dvNN998Y4wxZvLkyeb+++/31p+7zGPixIlm9+7dJjMz03qZR1XHobZUt/fXXnvNNGrUyGRmZvr8jhcWFnprJkyYYHJyckxeXp756KOPTFJSkgkPDzdHjx6tt76ff/55s27dOrN3716zc+dO89hjj5nAwEDz7rvvemtq45hflQF54sQJM3z4cPOTn/zEOJ1Ok5qa6v2jZowxeXl5RpJ5//33jTHG5Ofnm5/97GemRYsWxuFwmI4dO5qJEyf6XAdpjDFff/21GTBggGnSpIkJDw83EyZM8LmUoj56P3e6s23Jy8szxvxwqUh8fLz5yU9+Yq655hrTrVs3s2DBAp9rhqrr97//vWndurUJDg42vXr1Mp988on3uT59+phRo0b51K9evdrccMMNJjg42HTt2tW8/fbbPs9XVFSYKVOmmIiICONwOEy/fv3Mnj17atxfbfTdpk0b63HNyMgwxhhz6tQp079/f9OyZUvTuHFj06ZNGzN27Nha/6NX3b4ff/xxb21ERIS56667fK5rM6bujnd1ezfGmK+++spIMhs3bqw0V10c8/P9mzrX56hRo0yfPn0qrRMfH2+Cg4NN+/btfa7bPKeq41Bfvffp06fKemN+uGQlMjLSBAcHm+uuu84MHTrU7Nu3r177njNnjunQoYMJCQkxLVq0MH379jXvvfdepXkv9ZhzuysAACyumM8gAQCoSwQkAAAWBCQAABYEJAAAFgQkAAAWBCQAABYEJAAAFgQkAAAWBCQAABYEJAAAFgQkAAAW/w+F5sgiQQcingAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "means = data.get_mean_vector()\n", "print(\"Means:\")\n", "print(means)\n", "\n", "rho = data.get_similarity_matrix()\n", "print(\"A time-series similarity measure:\")\n", "print(rho)\n", "plt.imshow(rho)\n", "plt.show()\n", "\n", "cov = data.get_covariance_matrix()\n", "print(\"A covariance matrix:\")\n", "print(cov)\n", "plt.imshow(cov)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you wish, you can look into the underlying pseudo-random time-series using. Please note that the private class members (starting with underscore) may change in future releases of Qiskit." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:18.273108Z", "start_time": "2020-07-13T20:25:18.075425Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The underlying evolution of stock prices:\n" ] }, { "data": { "image/png": "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5DCgEBERkeQwoBAREZHkMKAQERGR5HgloNTU1GDevHno27cvAgMDMXbsWGRlZbmWC4KAp556CtHR0QgMDERaWhpyc3O9UQoRERH5Ia8ElD/96U/49ttv8e677+LXX3/FjTfeiLS0NJw+fRoAsHz5cqxcuRJr167F3r17odVqMWnSJDQ2NnqjHCIiIvIzMkEQBE9usKGhAcHBwfjPf/6Dm2++2TU/KSkJU6ZMwfPPP4+YmBgsWLAACxcuBACYzWYYjUZs3LgRd9555zk/w2KxwGAwwGw2Q6/Xe7J8IiIi8pILOX57vAWlqakJDocDAQEBbvMDAwOxe/du5Ofnw2QyIS0tzbXMYDAgOTkZmZmZnW7TarXCYrG4TURERHTp8nhACQ4ORkpKCp5//nkUFxfD4XDgvffeQ2ZmJkpKSmAymQAARqPR7X1Go9G1rL2lS5fCYDC4ptjYWE+XTURERBLilT4o7777LgRBQO/evaHRaLBy5UrMnDkTcvnFfdzixYthNptdU1FRkYcrJiIiIinxSkAZMGAAdu3ahdraWhQVFWHfvn2w2+3o378/oqKiAAClpaVu7yktLXUta0+j0UCv17tNREREdOny6jgoWq0W0dHRqKqqwrZt2zB16lTEx8cjKioKGRkZrvUsFgv27t2LlJQUb5ZDREREfkLpjY1u27YNgiBg8ODByMvLw2OPPYbExETce++9kMlkmDdvHl544QUMHDgQ8fHxWLJkCWJiYnDrrbd6oxwiIiLyM14JKGazGYsXL8apU6cQGhqK9PR0vPjii1CpVACARYsWoa6uDvfffz+qq6sxfvx4bN26tcOVP0RERHR58vg4KD2B46AQERH5H5+Og0JERETUXQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOR4PKA6HA0uWLEF8fDwCAwMxYMAAPP/88xAEwbWOIAh46qmnEB0djcDAQKSlpSE3N9fTpRAREZGf8nhAWbZsGdasWYO33noLR44cwbJly7B8+XK8+eabrnWWL1+OlStXYu3atdi7dy+0Wi0mTZqExsZGT5dDREREfkgmtG3a8IDf//73MBqNWL9+vWteeno6AgMD8d5770EQBMTExGDBggVYuHAhAMBsNsNoNGLjxo248847z/kZFosFBoMBZrMZer3ek+UTERGRl1zI8dvjLShjx45FRkYGjh07BgD4+eefsXv3bkyZMgUAkJ+fD5PJhLS0NNd7DAYDkpOTkZmZ2ek2rVYrLBaL20RERESXLqWnN/jEE0/AYrEgMTERCoUCDocDL774Iu6++24AgMlkAgAYjUa39xmNRtey9pYuXYpnn33W06USERGRRHm8BeWjjz7C+++/j82bN+PAgQPYtGkTXn31VWzatOmit7l48WKYzWbXVFRU5MGKiYiISGo83oLy2GOP4YknnnD1JbniiitQUFCApUuXYtasWYiKigIAlJaWIjo62vW+0tJSXHnllZ1uU6PRQKPReLpUIiIikiiPt6DU19dDLnffrEKhgNPpBADEx8cjKioKGRkZruUWiwV79+5FSkqKp8shIiIiP+TxFpRbbrkFL774IuLi4jBs2DD89NNPeO2113DfffcBAGQyGebNm4cXXngBAwcORHx8PJYsWYKYmBjceuutni6HiIiI/JDHA8qbb76JJUuWYO7cuSgrK0NMTAz+8pe/4KmnnnKts2jRItTV1eH+++9HdXU1xo8fj61btyIgIMDT5RAREZEf8vg4KD2B46AQERH5H5+Og0JERETUXQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5DChEREQkOQwoREREJDkMKERERCQ5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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "TICKER1\n", "[33.345584192064784, 34.167202335565946, 34.49763941174933, 33.19448218014497, 34.099838046818086, 34.5462126191821, 34.009259383821814, 34.59037748801817, 34.95494988420424, 35.24908238085977, 35.27750462217556, 35.82421760878801, 35.08776352178634, 34.92485357379329, 34.442734261113316, 35.04158047374794, 35.0813025812296, 34.78884583026451, 34.00693736790767, 33.7497451272888, 33.757887307807145, 33.48228440250777, 34.77634821690598, 35.783072532211776, 33.07191005324581, 31.182896807278134, 31.008124715222973, 30.585934303646617, 30.799577301145227]\n", "TICKER2\n", "[96.8774156647853, 98.99525441983634, 97.88323365714406, 97.50562865001707, 99.5484002575094, 100.19510325371124, 100.85816662608751, 100.34416025440004, 98.69608508354439, 98.86354982776713, 98.97256391558868, 97.7452118613441, 97.06198519956354, 96.98994151983632, 96.04518989677554, 95.94691992892332, 96.04240295639278, 96.07798919344826, 95.57169753513395, 96.16544560691977, 97.0566125612021, 97.37746086576867, 96.55923063837835, 97.29088292216379, 96.78944290369674, 97.66860352198472, 96.59681610510728, 97.51128330823606, 97.49121985362058]\n" ] } ], "source": [ "print(\"The underlying evolution of stock prices:\")\n", "for (cnt, s) in enumerate(data._tickers):\n", " plt.plot(data._data[cnt], label=s)\n", "plt.legend()\n", "plt.xticks(rotation=90)\n", "plt.show()\n", "\n", "for (cnt, s) in enumerate(data._tickers):\n", " print(s)\n", " print(data._data[cnt])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Clearly, you can adapt the number and names of tickers and the range of dates: " ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:19.448980Z", "start_time": "2020-07-13T20:25:19.219411Z" }, "tags": [ "nbsphinx-thumbnail" ] }, "outputs": [ { "data": { "image/png": "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QjcryOe35uIREREpSfwCHcntinEtigIUERGRkiZnCPLuxe4tRyEoQBERESlp6mSnyV8zGVb/171luUwKUEREREqaBv+ADsPN8q/j3VmSy6YARUREpKSx2eCaEWY5OR5OJ7m1OJdDAYqIiEhJ5B8CwdmT6x7e4taiXA4FKCIiIiVVeCPznvine8txGRSgiIiIlFT2AGWTe8txGRSgiIiIlFQ5+VAUoIiIiIjHiGhi3g+sKXajeRSgiIiIlFSV6kGLu0za+4XPw7E9zvvTT0NmhnvKdhEKUEREREoqmw16vQtVmpv1Qxsc+45sh9frw/TbICvLLcW7EAUoIiIiJV1OU0/inxC/Gj7qChNbQ1qySYe/8Uv3li8fClBERERKupwAJeFPWPm+6ZOS24LnISPtypfrAhSgiIiIlHThjc17wh+we4lje7uhEBgJJxNg02x3lOy8fNxdABERESliOflQUg6Yd99y8MQuKFPOZJz9+WVY9QE0u91tRTyXalBERERKOv8QCKnuWK/RwQQnAFfdC95l4MBaOLzVHaXLlwIUERGR0qDr847lOl0dywGVTcAC8P3/wfimMON2WP/5lS3fOdTEIyIiUho0uc30Rdm9BFre47yvVkczmid+hVlP2geBEdD8jitezBwKUEREREqLsAbmda5anZzXO/8Lana4MmU6DwUoIiIipV2VZo7lut2h81PuK0s29UEREREp7bx9oP0wKB8GN4x1d2kAsFmWZbm7EAWVkpJCcHAwycnJBAUFubs4IiIicgkK8vmtGhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDxOkQQoBw4c4M4776RixYr4+/vTpEkT1qxZY99vWRbPPfccVapUwd/fn9jYWHbs2FEURREREZFiyOUByvHjx+nQoQO+vr789NNPbN68mTfeeIMKFSrYj3n11VeZMGEC77//PitXrqR8+fJ0796dM2fOuLo4IiIiUgzZLMuyXHnBp59+mt9++43//e9/+e63LIvIyEgee+wxHn/8cQCSk5MJDw9nypQp9O/fP885aWlppKWl2ddTUlKIiooiOTmZoKAgVxZfREREikhKSgrBwcGX9Pnt8hqUOXPm0KpVK/r27UtYWBgtWrTgo48+su/fs2cPCQkJxMbG2rcFBwfTtm1bli9fnu81x44dS3BwsP0VFRXl6mKLiIiIB3F5gLJ7924mTZpE3bp1mTdvHo888giPPvooU6dOBSAhIQGA8PBwp/PCw8Pt+841atQokpOT7a/4+HhXF1tEREQ8iI+rL5iVlUWrVq34z3/+A0CLFi34888/ef/997nnnnsu65p+fn74+fm5spgiIiLiwVxeg1KlShViYmKctjVs2JD9+/cDEBERAUBiYqLTMYmJifZ9IiIiUrq5PEDp0KED27Ztc9q2fft2atSoAUCtWrWIiIhg0aJF9v0pKSmsXLmSdu3aubo4IiIiUgy5vIlnxIgRtG/fnv/85z/069ePVatW8eGHH/Lhhx8CYLPZGD58OC+//DJ169alVq1ajB49msjISHr37u3q4oiIiEgx5PIApXXr1syaNYtRo0bx73//m1q1ajF+/HgGDhxoP+bJJ5/k1KlTPPTQQyQlJXHNNdcQFxdH2bJlXV0cERERKYZcngflSijIOGoRERHxDG7NgyIiIiJSWApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj1PkAcq4ceOw2WwMHz7cvu3MmTMMGTKEihUrEhAQQJ8+fUhMTCzqooiIiEgxUaQByurVq/nggw9o2rSp0/YRI0bw/fff89VXX7F06VIOHjzIrbfeWpRFERERkWKkyAKUkydPMnDgQD766CMqVKhg356cnMzHH3/Mm2++yXXXXUfLli355JNPWLZsGStWrMj3WmlpaaSkpDi9REREpOQqsgBlyJAh3HTTTcTGxjptX7t2Lenp6U7bGzRoQPXq1Vm+fHm+1xo7dizBwcH2V1RUVFEVW0RERDxAkQQoM2fOZN26dYwdOzbPvoSEBMqUKUNISIjT9vDwcBISEvK93qhRo0hOTra/4uPji6LYIiIi4iF8XH3B+Ph4/u///o8FCxZQtmxZl1zTz88PPz8/l1xLREREPJ/La1DWrl3L4cOHueqqq/Dx8cHHx4elS5cyYcIEfHx8CA8P5+zZsyQlJTmdl5iYSEREhKuLIyIiIsWQy2tQunbtysaNG5223XfffTRo0ICnnnqKqKgofH19WbRoEX369AFg27Zt7N+/n3bt2rm6OCIiIlIMuTxACQwMpHHjxk7bypcvT8WKFe3bH3jgAUaOHEloaChBQUEMGzaMdu3acfXVV7u6OCIiIlIMuTxAuRRvvfUWXl5e9OnTh7S0NLp37857773njqKIiIiIB7JZlmW5uxAFlZKSQnBwMMnJyQQFBbm7OCIiInIJCvL5rbl4RERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPI4CFBEREfE4ClBERETE4yhAEREREY+jAEVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDyOywOUsWPH0rp1awIDAwkLC6N3795s27bN6ZgzZ84wZMgQKlasSEBAAH369CExMdHVRREREZFiyuUBytKlSxkyZAgrVqxgwYIFpKen061bN06d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S+vWrXn33XcByMrKIioqimHDhvH00087HZuWlkZaWpp9PSUlhaioKJKTkwkKyr/zqDtYlsXP+3+maeWmVC5XuUDnbj26k2GLHufwmT1kkYW/jz8+toL3Yc60rPP2Qbn0cEdEREq7uuWu49v+r7j0mikpKQQHB1/S57dbRvGcPXuWtWvXMmrUKPs2Ly8vYmNjWb58eZ7jx44dy4svvngli3hZbDYbXWt0vaxzG1Sqw4LbZ7MucR3Dfh5GytnLzwxru3jaFhERkQs6m5V28YOKkFsClKNHj5KZmUl4eLjT9vDwcLZu3Zrn+FGjRjFy5Ej7ek4NSkl0VfhVLOy7kMOprm3qOnIijbSMTJdeU0RESq6w8iFuvX+xyIPi5+eHn1/eOXBKKn8ff3vqfFep4TktYSIiIhfllk6ylSpVwtvbm8TERKftiYmJREREuKNIIiIi4kHcEqCUKVOGli1bsmjRIvu2rKwsFi1aRLt27dxRJBEREfEgbmviGTlyJPfccw+tWrWiTZs2jB8/nlOnTnHfffe5q0giIiLiIdwWoNx+++0cOXKE5557joSEBJo3b05cXFyejrMiIiJS+rgtD0phFGQctYiIiHiGgnx+ay4eERER8TgKUERERMTjKEARERERj6MARURERDyOAhQRERHxOApQRERExOMoQBERERGPowBFREREPE6xmM34XDm55VJSUtxcEhEREblUOZ/bl5IjtlgGKCdOnAAgKirKzSURERGRgjpx4gTBwcEXPKZYprrPysri4MGDBAYGYrPZXHrtlJQUoqKiiI+PL7Fp9PWMJUdpeE49Y8lRGp6zNDwjXP5zWpbFiRMniIyMxMvrwr1MimUNipeXF9WqVSvSewQFBZXoXy7QM5YkpeE59YwlR2l4ztLwjHB5z3mxmpMc6iQrIiIiHkcBioiIiHgcBSjn8PPz4/nnn8fPz8/dRSkyesaSozQ8p56x5CgNz1kanhGuzHMWy06yIiIiUrKpBkVEREQ8jgIUERER8TgKUERERMTjKEARERERj6MARURERDxOscwk60pHjx5l8uTJLF++nISEBAAiIiJo37499957L5UrV3ZzCUVEREqfUj3MePXq1XTv3p1y5coRGxtLeHg4AImJiSxatIjU1FTmzZtHq1at3FxSkdIlIyODTZs2OX1piImJwdfX180lc53S8IxScrjj97VUByhXX301zZo14/33388z6aBlWTz88MP88ccfLF++3E0ldJ1Vq1blqSVq164dbdq0cXPJXCshIYGVK1c6PWfbtm2JiIhwc8lcpyQ/Y1ZWFs899xwTJ04kOTnZaV9wcDBDhw7lxRdfvOgkY56sNDxjbqUhECvJz+jW31erFCtbtqy1ZcuW8+7fsmWLVbZs2StYItdLTEy0rrnmGstms1k1atSw2rRpY7Vp08aqUaOGZbPZrGuuucZKTEx0dzEL7eTJk9bAgQMtb29vy8fHxwoLC7PCwsIsHx8fy9vb27rzzjutU6dOubuYhVIanvGJJ56wKleubL3//vvWnj17rNTUVCs1NdXas2eP9cEHH1hhYWHWk08+6e5iFkppeEbLsqzMzEzrmWeesUJCQiybzeb0CgkJsZ599lkrMzPT3cUslNLwjO78fS3VAUrNmjWtqVOnnnf/1KlTrRo1aly5AhWBPn36WO3atbO2bt2aZ9/WrVut9u3bW7fddpsbSuZaDzzwgFW3bl0rLi7OysjIsG/PyMiw5s2bZ9WrV88aNGiQG0tYeKXhGcPDw624uLjz7o+Li7PCwsKuYIlcrzQ8o2WVjkCsNDyjO39fS3WA8u6771p+fn7Wo48+an333XfWihUrrBUrVljfffed9eijj1r+/v7WxIkT3V3MQgkICLDWrVt33v1r1qyxAgICrmCJikZISIj122+/nXf/r7/+aoWEhFzBErleaXjGcuXKWX/88cd592/YsMEqX778FSyR65WGZ7Ss0hGIlYZndOfva8lo5LxMQ4YMYerUqaxcuZI+ffrQrl072rVrR58+fVi5ciVTpkxh8ODB7i5mofj5+ZGSknLe/SdOnCgRk1plZWVRpkyZ8+4vU6YMWVlZV7BErlcanrFz5848/vjjHD16NM++o0eP8tRTT9G5c+crXzAXKg3PCOb/lsjIyPPur1KlCqdOnbqCJXK90vCMbv19LZKwpxg6e/asdfDgQevgwYPW2bNn3V0clxk8eLBVo0YN69tvv7WSk5Pt25OTk61vv/3WqlmzpjV06FA3ltA1BgwYYLVo0SLf2qJ169ZZLVu2tAYOHOiGkrlOaXjG/fv3W40bN7Z8fHysFi1aWDfccIN1ww03WC1atLB8fHyspk2bWvv373d3MQulNDyjZVnWjTfeaHXr1s06cuRInn1HjhyxbrjhBuumm25yQ8lcpzQ8ozt/X0v1KJ7SIC0tjeHDhzN58mQyMjLs38DPnj2Lj48PDzzwAG+99Vaxr0U5fvw4AwYMYN68eVSoUIGwsDAADh8+TFJSEt27d2fGjBmEhIS4t6CFUBqeEUxN0bx581ixYkWeUWfdunUrEaNbSsMzxsfHc+ONN7J161aaNGnilMZh48aNxMTEMHfuXKKiotxc0stXGp4R3Pf7qgCllEhJSWHt2rVOv1wtW7YkKCjIzSVzrS1btuT7R9SgQQM3l8x1tm7dmu+Q8ZL0jFIylIZArDQ8o7soQCllTp06xZdffsnOnTuJjIykf//+VKxY0d3FEnGSX96e9u3b07p1azeXrGjs2bOHnTt3UqVKFRo3buzu4ojk4Y6/SQUoJVxMTAy//voroaGhxMfH07FjR44fP069evXYtWsXPj4+rFixglq1arm7qIV29uxZZs+ene8fUa9evS7YwbQ4siyLJUuW2D/YunfvXuwTQx0+fJg+ffrw22+/Ub16dacq8/3799OhQwe++eYbe/NWcTR48GBeffVVAgICOH36NHfddRfffvstADabjU6dOjFnzhwCAgLcXFLXULBZvLn1b7JIeraIx7DZbPZEbAMHDrTat29vJSUlWZZlWSdOnLBiY2OtO+64w51FdIkdO3ZY0dHRVtmyZa1OnTpZ/fr1s/r162d16tTJKlu2rFWnTh1rx44d7i5mofTo0cP+s/v777+ttm3bWjabzapcubLl5eVlNWjQwDp8+LCbS1k4pSFvj5eXl/1vctSoUVa1atWsn3/+2Tp16pT166+/WrVr17aefvppN5ey8EpDkshHHnnEOnHihGVZlpWammr16dPHnqjNy8vL6tKli31/ceXOv0kFKCVc7gAlOjramj9/vtP+3377zYqKinJH0VwqNjbW6tWrl9NIpRzJyclWr169rG7durmhZK6T+2f5yCOPWDExMdbu3bsty7Ks+Ph4q2XLltbDDz/sziIWWmnI25P759i4cWNrxowZTvu/++47q169eu4omksp2CwZwaY7/yYVoJRwNpvN/q06MjLS2rhxo9P+vXv3Fvt0/pZlWf7+/nmeLbc//vjD8vf3v4Ilcr3cH2z169e3vvvuO6f9CxcutGrVquWOorlMxYoVrSVLlpx3/+LFi62KFStewRK5Xu6/yUqVKll//vmn0/69e/cW+99Vy1KwaVklI9h059+kuheXAl27duWqq64iJSWFbdu2Oe3bt29fiegkGxISwt69e8+7f+/evcV++C1gn9Ty+PHj1K5d22lfnTp1OHjwoDuK5TK3334799xzD7NmzXJKMJiSksKsWbO47777uOOOO9xYQtcYPXo0I0eOxMvLK8/P7O+//6Z8+fJuKpnrlJYkkTl/kwkJCTRt2tRpX7NmzYiPj3dHsVzGnX+TPkVyVfEYzz//vNP6uR3vvv/+e6699torWaQiMWjQIO6++25Gjx5N165dnTpyLVq0iJdffplhw4a5uZSFd++99+Ln50d6ejp79uyhUaNG9n0JCQnFPgh78803ycrKon///ufN2/P666+7uZSF07FjR/sXhZiYGPbt2+e0/8cff3T6uRZXOR9sb731Fl27drWnNEhJSWHRokWMHDmyxASb5cqVswebuX92JSHYPN/fZFpaGr6+vkX6N6lRPFJivPLKK7z99tskJCTYv9VYlkVERATDhw/nySefdHMJC+e+++5zWu/Rowf9+vWzrz/55JP88ccfxMXFXemiuVxpyduTn927d1OmTBmqVavm7qIUSmlIEtm5c2f7/zUAAwcOZNCgQfb1l19+mYULF7JkyRI3lM61UlJSWLNmDYmJiQCEh4fTqlWrIv2bVIAiJc6ePXucPthKwhDqS3Hq1Cm8vb0pW7asu4siYqdgs/gHm/kpU6YMGzZsoGHDhkV2DwUoUirEx8fz/PPPM3nyZHcXpciUlGc8ffo0a9euJTQ0lJiYGKd9Z86c4csvv+Tuu+92U+lcozQ8IzgyO+dkOt66dStvv/02aWlp3HnnnVx33XXuLmKh5Txj+/btqV+/fol7xpEjR+a7/e233+bOO++092F88803XX5vBShSKmzYsIGrrrqKzMxMdxelyJSEZ9y+fTvdunVj//792Gw2rrnmGj7//HP7jLGJiYlERkaWuGecOXMmVapUAUrGMwLExcXRq1cvAgICSE1NZdasWdx99900a9aMrKwsli5dyvz584v1B3hpeEYvLy+aNWuWp3/b0qVLadWqFeXLl8dms/Hzzz+7/N4KUKREmDNnzgX37969m8cee6xY/6dfGp7xlltuIT09nSlTppCUlMTw4cPZvHkzS5YsoXr16iXiw7s0PCNA+/btue6663j55ZeZOXMmgwcP5pFHHmHMmDEAjBo1irVr1zJ//nw3l/TylYZnHDduHB9++CH//e9/nQItX19fNmzYkKcG0KWKZPCyyBWWk7kxJ4tjfi8vLy93F7NQSsMzhoWFWX/88Yd9PSsry3r44Yet6tWrW7t27bISEhL0jMVEUFCQPXtzZmam5ePj45QXZePGjVZ4eLi7iucSpeEZLcuyVq1aZdWrV8967LHHrLNnz1qWZVk+Pj7Wpk2bivS+yoMiJUKVKlX49ttvycrKyve1bt06dxex0ErDM54+fRofH0f2A5vNxqRJk+jZsyedOnVi+/btbiyda5SGZ8yRM8LFy8uLsmXLEhwcbN8XGBhIcnKyu4rmMqXhGVu3bs3atWs5cuQIrVq14s8//3QavVRUFKBIidCyZUvWrl173v02mw2rmLdmloZnbNCgAWvWrMmz/d1336VXr17cfPPNbiiVa5WGZwSoWbMmO3bssK8vX76c6tWr29f3799v73dTXJWGZ8wREBDA1KlTGTVqFLGxsVekCVIBipQITzzxBO3btz/v/jp16rB48eIrWCLXKw3PeMstt/D555/nu+/dd9/ljjvuKPZBWGl4RoBHHnnE6UOscePGTjVHP/30U7HuPAql4xnP1b9/f9asWcO3335LjRo1ivRe6iQrIiIiHkc1KCIiIuJxFKCIiIiIx1GAIiIiIh5HAYqIiIh4HAUoIiIi4nEUoIiIiIjHUYAiIiIiHuf/AePvx7j+DrTzAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data = RandomDataProvider(\n", " tickers=[\"CompanyA\", \"CompanyB\", \"CompanyC\"],\n", " start=datetime.datetime(2015, 1, 1),\n", " end=datetime.datetime(2016, 1, 30),\n", " seed=1,\n", ")\n", "data.run()\n", "for (cnt, s) in enumerate(data._tickers):\n", " plt.plot(data._data[cnt], label=s)\n", "plt.legend()\n", "plt.xticks(rotation=90)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Access to closing-price time-series\n", "\n", "While the access to real-time data usually requires a payment, it is possible \n", "to access historical (adjusted) closing prices via Wikipedia and Nasdaq Data Link\n", "free of charge, following registration at:\n", "https://data.nasdaq.com/sign-up\n", "In the code below, one needs to specify actual tickers of actual NASDAQ\n", "issues and the access token you obtain from Nasdaq Data Link; by running the code below, you agree to the Nasdaq Data Link terms and \n", "conditions, including a liability waiver.\n", "Notice that at least two tickers are required for the computation\n", "of covariance and time-series matrices, but hundreds of tickers may go \n", "beyond the fair usage limits of Nasdaq Data Link." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:35.200648Z", "start_time": "2020-07-13T20:25:19.646682Z" } }, "outputs": [], "source": [ "stocks = [\"GOOG\", \"AAPL\"]\n", "\n", "token = \"REPLACE-ME\"\n", "if token != \"REPLACE-ME\":\n", " try:\n", " wiki = WikipediaDataProvider(\n", " token=token,\n", " tickers=stocks,\n", " start=datetime.datetime(2016, 1, 1),\n", " end=datetime.datetime(2016, 1, 30),\n", " )\n", " wiki.run()\n", " except QiskitFinanceError as ex:\n", " print(ex)\n", " print(\"Error retrieving data.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once the data are loaded, you can again compute the covariance matrix or its DTW variants." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:35.209735Z", "start_time": "2020-07-13T20:25:35.203166Z" } }, "outputs": [], "source": [ "if token != \"REPLACE-ME\":\n", " if wiki._data:\n", " if wiki._n <= 1:\n", " print(\n", " \"Not enough wiki data to plot covariance or time-series similarity. Please use at least two tickers.\"\n", " )\n", " else:\n", " rho = wiki.get_similarity_matrix()\n", " print(\"A time-series similarity measure:\")\n", " print(rho)\n", " plt.imshow(rho)\n", " plt.show()\n", "\n", " cov = wiki.get_covariance_matrix()\n", " print(\"A covariance matrix:\")\n", " print(cov)\n", " plt.imshow(cov)\n", " plt.show()\n", " else:\n", " print(\"No wiki data loaded.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you wish, you can look into the underlying time-series using:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:25:35.232224Z", "start_time": "2020-07-13T20:25:35.212691Z" } }, "outputs": [], "source": [ "if token != \"REPLACE-ME\":\n", " if wiki._data:\n", " print(\"The underlying evolution of stock prices:\")\n", " for (cnt, s) in enumerate(stocks):\n", " plt.plot(wiki._data[cnt], label=s)\n", " plt.legend()\n", " plt.xticks(rotation=90)\n", " plt.show()\n", "\n", " for (cnt, s) in enumerate(stocks):\n", " print(s)\n", " print(wiki._data[cnt])\n", " else:\n", " print(\"No wiki data loaded.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### [Optional] Setup token to access recent, fine-grained time-series\n", "\n", "If you would like to download professional data, you will have to set-up a token with one of the major providers. Let us now illustrate the data with NASDAQ Data on Demand, which can supply bid and ask prices in arbitrary resolution, as well as aggregates such as daily adjusted closing prices, for NASDAQ and NYSE issues.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you don't have NASDAQ Data on Demand license, you can contact NASDAQ (cf. https://business.nasdaq.com/intel/GIS/Nasdaq-Data-on-Demand.html) to obtain a trial or paid license.\n", "\n", "If and when you have access to NASDAQ Data on Demand using your own token, you should replace REPLACE-ME below with the token. \n", "To assure the security of the connection, you should also have your own means of validating NASDAQ's certificates. The DataOnDemandProvider constructor has an optional argument `verify`, which can be `None` or a string or a boolean. If it is `None`, certify certificates will be used (default). If verify is a string, it should be pointing to a certificate for the HTTPS connection to NASDAQ (dataondemand.nasdaq.com), either in the form of a CA_BUNDLE file or a directory wherein to look.\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:26:39.983133Z", "start_time": "2020-07-13T20:26:39.977794Z" } }, "outputs": [], "source": [ "token = \"REPLACE-ME\"\n", "if token != \"REPLACE-ME\":\n", " try:\n", " nasdaq = DataOnDemandProvider(\n", " token=token,\n", " tickers=[\"GOOG\", \"AAPL\"],\n", " start=datetime.datetime(2016, 1, 1),\n", " end=datetime.datetime(2016, 1, 2),\n", " )\n", " nasdaq.run()\n", " for (cnt, s) in enumerate(nasdaq._tickers):\n", " plt.plot(nasdaq._data[cnt], label=s)\n", " plt.legend()\n", " plt.xticks(rotation=90)\n", " plt.show()\n", " except QiskitFinanceError as ex:\n", " print(ex)\n", " print(\"Error retrieving data.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Another major vendor of stock market data is Exchange Data International (EDI), whose API can be used to query over 100 emerging and frontier markets that are Africa, Asia, Far East, Latin America and Middle East, as well as the more established ones. See:\n", "https://www.exchange-data.com/\n", "for an overview of the coverage.\n", "\n", "The access again requires a valid access token to replace REPLACE-ME below. The token can be obtained on a trial or paid-for basis at:\n", "https://data.nasdaq.com/sign-up" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:26:40.533982Z", "start_time": "2020-07-13T20:26:40.417584Z" } }, "outputs": [], "source": [ "token = \"REPLACE-ME\"\n", "if token != \"REPLACE-ME\":\n", " try:\n", " lse = ExchangeDataProvider(\n", " token=token,\n", " tickers=[\"AEO\", \"ABBY\", \"ADIG\", \"ABF\", \"AEP\", \"AAL\", \"AGK\", \"AFN\", \"AAS\", \"AEFS\"],\n", " stockmarket=StockMarket.LONDON,\n", " start=datetime.datetime(2018, 1, 1),\n", " end=datetime.datetime(2018, 12, 31),\n", " )\n", " lse.run()\n", " for (cnt, s) in enumerate(lse._tickers):\n", " plt.plot(lse._data[cnt], label=s)\n", " plt.legend()\n", " plt.xticks(rotation=90)\n", " plt.show()\n", " except QiskitFinanceError as ex:\n", " print(ex)\n", " print(\"Error retrieving data.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One can also access Yahoo Finance Data, no token needed, from Yahoo! Finance." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "try:\n", " data = YahooDataProvider(\n", " tickers=[\"MSFT\", \"AAPL\", \"GOOG\"],\n", " start=datetime.datetime(2021, 1, 1),\n", " end=datetime.datetime(2021, 12, 31),\n", " )\n", " data.run()\n", " for (cnt, s) in enumerate(data._tickers):\n", " plt.plot(data._data[cnt], label=s)\n", " plt.legend(loc=\"upper center\", bbox_to_anchor=(0.5, 1.1), ncol=3)\n", " plt.xticks(rotation=90)\n", " plt.show()\n", "except QiskitFinanceError as ex:\n", " data = None\n", " print(ex)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the actual use of the data, please see the portfolio_optimization or portfolio_diversification notebooks. " ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2020-07-13T20:26:43.677985Z", "start_time": "2020-07-13T20:26:43.671205Z" } }, "outputs": [ { "data": { "text/html": [ "

Version Information

Qiskit SoftwareVersion
qiskit-terra0.23.1
qiskit-aer0.11.2
qiskit-ibmq-provider0.20.0
qiskit0.41.0
qiskit-finance0.4.0
qiskit-optimization0.5.0
qiskit-machine-learning0.5.0
System information
Python version3.9.10
Python compilerClang 13.1.6 (clang-1316.0.21.2.5)
Python buildmain, Aug 9 2022 18:26:17
OSDarwin
CPUs10
Memory (Gb)64.0
Thu Feb 16 15:52:54 2023 JST
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "

This code is a part of Qiskit

© Copyright IBM 2017, 2023.

This code is licensed under the Apache License, Version 2.0. You may
obtain a copy of this license in the LICENSE.txt file in the root directory
of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.

Any modifications or derivative works of this code must retain this
copyright notice, and modified files need to carry a notice indicating
that they have been altered from the originals.

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import tutorial_magics\n", "\n", "%qiskit_version_table\n", "%qiskit_copyright" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Tags", "kernelspec": { "display_name": "qiskit", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.10" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false }, "vscode": { "interpreter": { "hash": "e3b168dd14084693aa742087410f9921d6040e41eb6bdb17b20e4003862f82dd" } } }, "nbformat": 4, "nbformat_minor": 2 }