ml-finance-python
python scripts for finance machine learning
git clone https://9o.is/git/ml-finance-python.git
notebook.ipynb
(42537B)
1 {
2 "cells": [
3 {
4 "cell_type": "markdown",
5 "metadata": {},
6 "source": [
7 "# Quandl: US GDP, Implicit Price Deflator\n",
8 "\n",
9 "In this notebook, we'll take a look at data set , available on [Quantopian](https://www.quantopian.com/data). This dataset spans from 1947 through the current day. It contains the value for the United States GDP, using the implicit price deflator by the US Federal Reserve via the [FRED data initiative](https://research.stlouisfed.org/fred2/). We access this data via the API provided by [Quandl](https://www.quandl.com). [More details](https://www.quandl.com/data/FRED/GDPDEF) on this dataset can be found on Quandl's website.\n",
10 "\n",
11 "### Blaze\n",
12 "Before we dig into the data, we want to tell you about how you generally access Quantopian partner data sets. These datasets are available using the [Blaze](http://blaze.pydata.org) library. Blaze provides the Quantopian user with a convenient interface to access very large datasets.\n",
13 "\n",
14 "Some of these sets (though not this one) are many millions of records. Bringing that data directly into Quantopian Research directly just is not viable. So Blaze allows us to provide a simple querying interface and shift the burden over to the server side.\n",
15 "\n",
16 "To learn more about using Blaze and generally accessing Quantopian partner data, clone [this tutorial notebook](https://www.quantopian.com/clone_notebook?id=561827d21777f45c97000054).\n",
17 "\n",
18 "With preamble in place, let's get started:"
19 ]
20 },
21 {
22 "cell_type": "code",
23 "execution_count": 2,
24 "metadata": {
25 "collapsed": true
26 },
27 "outputs": [],
28 "source": [
29 "# import the dataset\n",
30 "from quantopian.interactive.data.quandl import fred_gdpdef\n",
31 "# Since this data is public domain and provided by Quandl for free, there is no _free version of this\n",
32 "# data set, as found in the premium sets. This import gets you the entirety of this data set.\n",
33 "\n",
34 "# import data operations\n",
35 "from odo import odo\n",
36 "# import other libraries we will use\n",
37 "import pandas as pd\n",
38 "import matplotlib.pyplot as plt"
39 ]
40 },
41 {
42 "cell_type": "code",
43 "execution_count": 3,
44 "metadata": {
45 "collapsed": false
46 },
47 "outputs": [
48 {
49 "data": {
50 "text/html": [
51 "<table border=\"1\" class=\"dataframe\">\n",
52 " <thead>\n",
53 " <tr style=\"text-align: right;\">\n",
54 " <th></th>\n",
55 " <th>asof_date</th>\n",
56 " <th>value</th>\n",
57 " <th>timestamp</th>\n",
58 " </tr>\n",
59 " </thead>\n",
60 " <tbody>\n",
61 " <tr>\n",
62 " <th>0</th>\n",
63 " <td>1947-01-01</td>\n",
64 " <td>12.566</td>\n",
65 " <td>1947-01-01</td>\n",
66 " </tr>\n",
67 " <tr>\n",
68 " <th>1</th>\n",
69 " <td>1947-04-01</td>\n",
70 " <td>12.745</td>\n",
71 " <td>1947-04-01</td>\n",
72 " </tr>\n",
73 " <tr>\n",
74 " <th>2</th>\n",
75 " <td>1947-07-01</td>\n",
76 " <td>12.957</td>\n",
77 " <td>1947-07-01</td>\n",
78 " </tr>\n",
79 " <tr>\n",
80 " <th>3</th>\n",
81 " <td>1947-10-01</td>\n",
82 " <td>13.276</td>\n",
83 " <td>1947-10-01</td>\n",
84 " </tr>\n",
85 " <tr>\n",
86 " <th>4</th>\n",
87 " <td>1948-01-01</td>\n",
88 " <td>13.379</td>\n",
89 " <td>1948-01-01</td>\n",
90 " </tr>\n",
91 " <tr>\n",
92 " <th>5</th>\n",
93 " <td>1948-04-01</td>\n",
94 " <td>13.497</td>\n",
95 " <td>1948-04-01</td>\n",
96 " </tr>\n",
97 " <tr>\n",
98 " <th>6</th>\n",
99 " <td>1948-07-01</td>\n",
100 " <td>13.747</td>\n",
101 " <td>1948-07-01</td>\n",
102 " </tr>\n",
103 " <tr>\n",
104 " <th>7</th>\n",
105 " <td>1948-10-01</td>\n",
106 " <td>13.789</td>\n",
107 " <td>1948-10-01</td>\n",
108 " </tr>\n",
109 " <tr>\n",
110 " <th>8</th>\n",
111 " <td>1949-01-01</td>\n",
112 " <td>13.717</td>\n",
113 " <td>1949-01-01</td>\n",
114 " </tr>\n",
115 " <tr>\n",
116 " <th>9</th>\n",
117 " <td>1949-04-01</td>\n",
118 " <td>13.579</td>\n",
119 " <td>1949-04-01</td>\n",
120 " </tr>\n",
121 " <tr>\n",
122 " <th>10</th>\n",
123 " <td>1949-07-01</td>\n",
124 " <td>13.509</td>\n",
125 " <td>1949-07-01</td>\n",
126 " </tr>\n",
127 " </tbody>\n",
128 "</table>"
129 ],
130 "text/plain": [
131 " asof_date value timestamp\n",
132 "0 1947-01-01 12.566 1947-01-01\n",
133 "1 1947-04-01 12.745 1947-04-01\n",
134 "2 1947-07-01 12.957 1947-07-01\n",
135 "3 1947-10-01 13.276 1947-10-01\n",
136 "4 1948-01-01 13.379 1948-01-01\n",
137 "5 1948-04-01 13.497 1948-04-01\n",
138 "6 1948-07-01 13.747 1948-07-01\n",
139 "7 1948-10-01 13.789 1948-10-01\n",
140 "8 1949-01-01 13.717 1949-01-01\n",
141 "9 1949-04-01 13.579 1949-04-01\n",
142 "..."
143 ]
144 },
145 "execution_count": 3,
146 "metadata": {},
147 "output_type": "execute_result"
148 }
149 ],
150 "source": [
151 "fred_gdpdef.sort('asof_date')"
152 ]
153 },
154 {
155 "cell_type": "markdown",
156 "metadata": {},
157 "source": [
158 "The data goes all the way back to 1947 and is updated quarterly.\n",
159 "\n",
160 "Blaze provides us with the first 10 rows of the data for display. Just to confirm, let's just count the number of rows in the Blaze expression:"
161 ]
162 },
163 {
164 "cell_type": "code",
165 "execution_count": 9,
166 "metadata": {
167 "collapsed": false
168 },
169 "outputs": [
170 {
171 "data": {
172 "text/html": [
173 "814"
174 ],
175 "text/plain": [
176 "814"
177 ]
178 },
179 "execution_count": 9,
180 "metadata": {},
181 "output_type": "execute_result"
182 }
183 ],
184 "source": [
185 "fred_gdpdef.count()"
186 ]
187 },
188 {
189 "cell_type": "markdown",
190 "metadata": {},
191 "source": [
192 "Let's go plot it for fun. This data set is definitely small enough to just put right into a Pandas DataFrame"
193 ]
194 },
195 {
196 "cell_type": "code",
197 "execution_count": 4,
198 "metadata": {
199 "collapsed": false
200 },
201 "outputs": [
202 {
203 "data": {
204 "image/png": "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\nF5f//Z2qVatWevPNNyVdvH5n+vTpeuqppy5bLKBWrVqXXDMSHh5eeq3MuHHjVFRUdNU8ycnJqlWr\nVmmGfv36SbpYBsLDw0t/4S4vX19fSRevL5L+dzTKxcVFVqu1dNwvpUOS/P39lZOTc9m+DMNQVlbW\nJUe5XF1dS/ddXrt27Sp9XS4uLurSpYuee+45SRePOFWvXr107C9FLCsrSzab7ZLn9vb2VlpamgzD\n0N133126PT8/X126dCl3nuTkZPXs2VNpaWnavn17aTbpYrG52lGlEydO6PXXX9fx48fl4uKi1NRU\nDRs27LJx586du+R1Va9eXWfOnCl9/MuplgDgLChBAGCimjVrymKxKCUlRXXr1i3dfuLECYWEhEi6\neEpZ/fr1VadOHUkXr9955plnLvnF+xedO3fWa6+9poyMDAUGBl7yuWsdIdm+fbsKCwvVpk0bZWRk\nXLYwQkX69eps586dU2Rk5GVjLBaLatasqezs7NJtJSUlSktLK32vyiMyMlJz5869rnw1atSQxWJR\nVlZWaWE7efKk6tatK1dXVy1btuyy0w2v5LdHt5KSkpSQkKDOnTtry5Yt6tKly2VHtq5mypQpat26\ntWbPni2LxaJRo0ZdcVzt2rV17ty50sdZWVmqXbt2uZ8HABwNp8MBgIm8vb01ZMgQzZgxo/Qi/gMH\nDujLL7/UmDFjJElfffWVXnnlldIFC0pKSrRq1Sp16tTpsv01bNhQQ4YM0VNPPVX6l/6ioiJ99tln\n2rlzp+rXr1869telKD4+Xi+++KKefPJJeXp63rDXV95T07755hsZhqGMjAzt3LlTHTp0uORrf/m4\ncePGCg4O1po1ayRJX3zxhSZPnnzJvtzc3HThwoVLjjT93ryGYcgwDHl4eKhbt25atmyZpIsr9j38\n8MNyd3dXr169tHDhQkkXjwI9//zzSk1Nveb+T506paefflr33HOPgoOD1a1bN8XFxZWezrZnzx79\n85//vGres2fPqnnz5rJYLNq0aZMSExNLl053d3cvPaLWu3dvrVy5UgUFBSopKdGSJUvUu3fv635/\nAMBRcCQIAEz20ksvafr06RoyZIgMw5C/v7/+3//7f2ratKkk6YUXXtC0adM0bNgwWSwWlZSUqHPn\nzvrXv/51xf1NnjxZH330ke677z5ZrVYVFhaqVatWmj9/vlq1alU67q233tLs2bNVUFCgatWq6bHH\n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\nECQi4iNqamr44osvSExM5JNPPgHA6XTy2WefMWXKFBYuXEhubi5fffUVt99+O6+99hqXXXZZFnok\nOwAAA3lJREFUy/N79uzJl19++YPtZmRknHWEpNnpoyMAe/bsoW/fvjQ0NPD73/+e9evX07lzZ1as\nWMH+/ft/8PyAgACefvrpVp+XU19f/5PbnTVrFsXFxXz11Vfcf//9PPbYYxiNxjMCXGNj4w9q/iku\nl+uMIHh6WHz00Ud59tlnGTZsGJs2bWLJkiU/+JkEBATwwAMPcPXVV7fq9URE5D+j6XAiIj7io48+\nYtiwYXz88cesW7eOdevWMWfOHNauXcuxY8d477336Nq1K3feeSdXXXUVBw8ePOP5EydOJDs7m48/\n/rjlvsOHD5Oamsq99957ztc/PWBkZGSwdOlS7rzzTmpqajCZTCQmJmK329mwYQMOhwNoCgn19fUA\nDBo0qCW82Ww2nnnmmR+MTLVv357i4mKgaSrc6dvduHEjDoeD6upqXnvtNRISErj11lu57bbbSE9P\nZ8CAAezYsYOGhgagaeGCAQMGtOpnGxUVhclkIj8/H2haHa454JSXl3PJJZfgdDr59NNPW/bHaDT+\n6L41Njby4osvtqxuV1RURIcOHVpVh4iItI5GgkREfMSaNWt44IEHzrjv6quv5qWXXsLpdJKVlcXN\nN99MSEgIERERPPjgg2c81mw28/777/Pcc8/xzjvvYDabCQoK4sUXX6Rjx44tj/up0ZPFixfz4Ycf\nUltbS1BQEPPnz+fSSy8FYNKkSdx0000kJCQwc+ZMHnvsMT7//HOGDx/O3LlzAXjggQeYPXs2t912\nGw6Hg2nTprVMXWs2atQoHnvsMR599FEiIyPP2O5dd93FY489xrZt27Bardx4441ERERgNpt5/vnn\niYuLY+LEiUyfPh2j0UifPn1+sPDCTzEYDDz++OPcf//9dOzY8YyFEe6++25+/etfEx8fz8yZM5k1\naxZLly5l8ODBPPzww/j7+3PPPfeQnZ3NLbfcgtPpZNy4cS3T5rZt23bGeU4iIvKfM7haO3lbRESk\nDfjtb3/Lr371q5YV4tqykydPMm3aNNatW0dwcLC7yxER8RoKQSIi4lVOnDjBgw8+yFtvvXVBrxUE\ncN9992GxWH5w/w033MD1119/QV8Lmi6Wesstt3DFFVdc8G2LiPgyhSAREREREfEpWhhBRERERER8\nikKQiIiIiIj4FIUgERERERHxKQpBIiIiIiLiUxSCRERERETEp/w/3QeYSfIpCZ0AAAAASUVORK5C\nYII=\n",
205 "text/plain": [
206 "<matplotlib.figure.Figure at 0x7f9f8868c110>"
207 ]
208 },
209 "metadata": {},
210 "output_type": "display_data"
211 }
212 ],
213 "source": [
214 "gdpdef_df = odo(fred_gdpdef, pd.DataFrame)\n",
215 "\n",
216 "gdpdef_df.plot(x='asof_date', y='value')\n",
217 "plt.xlabel(\"As Of Date (asof_date)\")\n",
218 "plt.ylabel(\"GDP Rate\")\n",
219 "plt.title(\"US GDP, Implicit Price Deflator\")\n",
220 "plt.legend().set_visible(False)"
221 ]
222 },
223 {
224 "cell_type": "code",
225 "execution_count": null,
226 "metadata": {
227 "collapsed": true
228 },
229 "outputs": [],
230 "source": []
231 }
232 ],
233 "metadata": {
234 "kernelspec": {
235 "display_name": "Python 2",
236 "language": "python",
237 "name": "python2"
238 },
239 "language_info": {
240 "codemirror_mode": {
241 "name": "ipython",
242 "version": 2
243 },
244 "file_extension": ".py",
245 "mimetype": "text/x-python",
246 "name": "python",
247 "nbconvert_exporter": "python",
248 "pygments_lexer": "ipython2",
249 "version": "2.7.10"
250 }
251 },
252 "nbformat": 4,
253 "nbformat_minor": 0
254 }