Skip to content

Instantly share code, notes, and snippets.

@twiecki
Created January 16, 2014 23:59
Show Gist options
  • Save twiecki/8465921 to your computer and use it in GitHub Desktop.
Save twiecki/8465921 to your computer and use it in GitHub Desktop.
{
"metadata": {
"name": ""
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Zipline tutorial"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Enable plotting\n",
"%pylab --no-import-all inline\n",
"\n",
"# Provides tabular data structure and much more!\n",
"import pandas as pd\n",
"\n",
"import datetime\n",
"figsize(10,5)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"Loading in data from stocks Apple. Good source of data hard to come by but yahoo is one source."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from zipline.data import load_from_yahoo\n",
"\n",
"data = load_from_yahoo(stocks=['AAPL'],\n",
" start=datetime.datetime(2006, 1, 1))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"AAPL\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"data.head()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>AAPL</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Date</th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>2006-01-03 00:00:00+00:00</th>\n",
" <td> 72.28</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-04 00:00:00+00:00</th>\n",
" <td> 72.49</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-05 00:00:00+00:00</th>\n",
" <td> 71.92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-06 00:00:00+00:00</th>\n",
" <td> 73.78</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-09 00:00:00+00:00</th>\n",
" <td> 73.53</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows \u00d7 1 columns</p>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 27,
"text": [
" AAPL\n",
"Date \n",
"2006-01-03 00:00:00+00:00 72.28\n",
"2006-01-04 00:00:00+00:00 72.49\n",
"2006-01-05 00:00:00+00:00 71.92\n",
"2006-01-06 00:00:00+00:00 73.78\n",
"2006-01-09 00:00:00+00:00 73.53\n",
"\n",
"[5 rows x 1 columns]"
]
}
],
"prompt_number": 27
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"data['AAPL'].plot()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 16,
"text": [
"<matplotlib.axes.AxesSubplot at 0xf575910>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\nDIDr0/oYFy3GRB/
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\nA3/9pZ5Pmwb89JN6/
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\n8GEpAC/ao13XxYvAjTdK0tW3r5xX1G+/
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\nkqzLTp2SZDU8XBpq3n+/
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\n//RTmVVUKP9/
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
ODq6trn3734F0SMQMiwubNm/Htt9/C19cX\nq1atwrZt26BSqQDcXZ0aO3YsSkpK9PuBrP32nrFMcnJy4OnpiUuXLqGzsxPr169HWVkZEhMTceLE\nCZw6dUrsss3OWC7bt2/HiBEjEB4ejsTERLz++uuoqKhAfHw8dDod1Gq12GWblUqlQlxcHGJjY5Gd\nnY3W1lYAgKurK958801s3LgRAODs7IzIyEh0dHQMipWG3nIB/n9fVFZWFjIyMtDS0gJbW1uxSrWo\nIUOG4JVXXkF+fj68vLxQVFQEAPet9FdVVcHDwwMBAQFoa2tDeXm5WOVaRG9z5d51xtnZGdu2bUN5\neTlkMhlKSkqsfmXXWCb35khNTQ1Gjx6NUaNGISoqCps3b0Z8fDy6urqg0Wge+Tm4kepHEokEZWVl\n+PTTT7FkyRJkZmbiyJEjOHbsmH65fdSoUZgyZQp2794NAFZ/e89YJgqFAr/++is8PT1x5MgRffcf\nEhICd3f3QfGurAdz+f7771FcXIxz587hq6++QnZ2NhITE3Hw4EH4+/vj/PnzsLe3F7tss+rtwkhE\niI+PR3V1NY4cOQKpVAoXFxc0NTUNitsT/9UwSKVS6HQ6jB8/HvHx8UhJSQEAHDp0SMySzSY3NxcK\nhQK3b9+GnZ0dkpKSEBkZiYCAAJw5c0bfFNy7CP79999wcHDAtm3b8NJLL+HChQtilm92vc2Ve+9Y\nHD9+PKZPnw4ACA8PR2trKxwdHUWr1xJ6ywQAvLy8cOXKFbz22mtITk6GTCaDr68v7Ozs+vSCxLqv\n4haQm5sLpVKp7/zHjh2LpqYmaLVaREZGIjAwEL///rv+tHeNRoNnn33Wqm/rPSyTF154Qb/MmpSU\nhPXr16OnpweFhYW4ePGi1S7B/1cuUVFRCAwMRGlpKRobGzFu3DjExsYCAI4ePYrJkydb5erlwy6M\n1dXVkEgkCAwMhFwux0cffYQrV67g6NGjICJ0d3eLPQSzeNSG4X/nxA8//IAdO3bA2dkZlZWVVrNX\niohw/fp1TJs2Ddu3b0dBQQFWrlyJW7duYejQoRgyZAimTp0KNzc3/ab7exfBw4cP46effsKxY8eQ\nn5+PpUuXijkUs3iUuSKRSAzmQ0lJCaRSqX7DtTV5WCaXL18GcHe1ytPTE35+fjhz5gwOHDiAq1ev\n4syZM316Pt4jZYJ7m9TmzJmDyspKNDU1Yd++fYiMjMSNGzfQ0NAAHx8fuLq6YtSoUcjLy0NoaChG\njBgBQRBw8OBBdHR06F8ZWIO+ZDJy5EgUFBTgxRdfxJw5c1BSUoLt27fj3LlzyMrKgr+/v9jD6Td9\nnSv5+fn6uVJeXo6FCxeirq4OqampVtNg9pZJREQEhg8fDkEQ4ODggNraWtTU1EAmk0EqlWLChAlo\nb2/Hvn37oFQqsXHjRnh7e4s9nH7Tl1wuX74MmUwGiUQCiUSCq1evYvHixXB3d8euXbsQFxdnFecm\n3dvvdf36dZw9exb79+/HrFmzoFQqsXPnTsyfPx8A4OLigra2NlRWVuK5556DnZ0dhgwZAgcHB0RF\nRSE1NRWenp4ij6b/mDpXOjs7oVAoMG/ePLS0tODrr7/GyJEjxR5OvzAlE0dHR0RERCA2NhZ2dnYA\ngPnz52P06NF9fnLWBxqNhoiIqquracGCBfrvrVixghYtWkRdXV20ZMkS2rFjB925c4eIiBISEmjN\nmjX636HT6SxfuBmZmklqaioREXV3d9PNmzfFKd6MTM1l9erVRER08+ZNKi0tFaV2c+ktk5UrV1Js\nbOx9P7tnzx5asWIF1dbWkkqlIq1WS0REnZ2dli3aAkzNpaOjg7RaLd25c4fKysosXre5aLVaSklJ\noU8++YRKS0tp//79lJCQcN+/u7u7k0KhuO9x6enpNHr0aHJ3d6c///zT0mVbhKlzRa1WU3d3N50/\nf572799v8brNyZRMampqqKOjgzo7O6mnp+exrst8dv4j0ul0WL16NXp6ejBr1iyoVCr9Cag2Njb6\nU3QvXboEuVyOvXv34tq1a/j8888hCAJCQ0P1v8ta9kU9biZTpkwBcHcZ3s3NTcyh9KvHzWXy5MkA\nADc3N0ybNk3EkfSfh2WSkZEBLy8vKJVKyGQyAEBsbCyqqqoQHR2N9vZ2KBQKjB07Vv/K0Rr0Ry6l\npaV4/vnn9fPmSadUKvHhhx9i6tSpCAkJwZo1a5CamorS0lKUl5cjNDQUgiAgLS0NX3zxBRQKBQDg\n559/Rnp6OuRyOdatWwd3d3dxB9LP+muuBAYGWs079R4nk5kzZ973/8pjreCa3gMOHgqFgoKCgmj5\n8uWUk5NDYWFhdOjQIfL29qbTp0/rf27Tpk00Y8YMIiKqrKyk2bNnU2hoKL3xxhukUqnEKt8sOBPj\nOBdDj5pJZmYmyWQy/deFhYXk4OBAS5cupZaWFhEqNy/OxTilUkm5ubn6r5cvX06ZmZm0detWCgkJ\nIaK7K1LNzc00b948qqur0z9OqVSKUrO58VwxNJAy4UbqEfTlD3vu3Ln6P+zW1la6du2aKDWbG2di\nHOdiiC+MxnEuxnV0dJBardbfys3Ly6OUlBQiIgoKCqKMjAwiIqqoqKC33npLtDotieeKoYGUiXXc\nYzKzSZMm6c/yAYCwsDD95k6dToeNGzdCEARcu3YNtra28PPzA3D3zA5r2cj3IM7EOM7FUF8ysbGx\n0WcSERGBiIgIMUs3K87FOHt7ewwdOlR/RlZxcbH+iJStW7eiqqoKMTExkMvlCAkJEbNUi+G5Ymgg\nZcKN1CPgP2xDnIlxnIshzsQ4zuW/abVa6HQ6tLS06D9U1snJCevWrcNnn32G0tJSrFq1SuQqLYPn\niqEBlUm/rm9ZOY1GQ1qtlmbOnEm1tbVERFRbW0utra10/PhxamxsFLlCy+NMjONcDHEmxnEuvVOr\n1bRw4ULavXs3zZ49mxISEuiff/4RuyzR8FwxNBAy4RWpPrj32U2urq44f/48YmJisHbtWgiCgLCw\nMP3nGg0mnIlxnIshzsQ4zqV3Z8+eRX5+PjZs2IC4uDjs2LEDTk5OYpclGp4rhgZEJmZv1azMyZMn\nSSKR0Msvv0xbtmwRu5wBgTMxjnMxxJkYx7kY19jYSOnp6dTV1SV2KQMGzxVDYmfCJ5v3kUQigYuL\nC7KzszFp0iSxyxkQOBPjOBdDnIlxnItxTk5OCA8P1++DYTxXjBE7EwmRlXwgE2OMMcaYhfEeKcYY\nY4wxE3EjxRhjjDFmIm6kGGOMMcZMxI0UY4wxxpiJuJFijA1YgiAgODgY48ePx4QJE7BhwwY87P0x\nf/31F3bu3GmhChljgx03UoyxAcvBwQFnz57FxYsXUVxcjEOHDuHLL7/8z8fU19ejoKDAQhUyxgY7\nbqQYY08ENzc35OTkYNOmTQCAhoYGREREYOLEiZg4cSJOnToFAEhJScHx48cRHByMjIwM9PT0YNWq\nVQgNDUVQUBBycnLEHAZjzMrwOVKMsQHL0dERKpXqvu85OzujpqYGw4YNg1QqhZ2dHWpra7FgwQJU\nVFRAqVTiu+++w4EDBwAAOTk5uHXrFlJTU9HV1YWwsDAUFRXB19dXhBExxqyNjdgFMMaYKbq7u/He\ne++hsrISgiCgtrYWAAz2UB0+fBgXLlzArl27AABtbW24cuUKN1KMsX7BjRRj7IlRV1cHQRDg5uaG\ntLQ0jBgxAj/++CN0Oh2GDh3a6+M2bdqEqKgoC1bKGBsseI8UY+yJcOvWLSxfvhzvv/8+gLsrS56e\nngCA3Nxc6HQ6AIa3A6Ojo5GZmQmtVgsAqKmpQUdHh4WrZ4xZK16RYowNWGq1GsHBwdBoNLCxsUFC\nQgI+/vhjAMC7776LuXPnIjc3FzNnzsSwYcMAAEFBQRAEARMmTMDixYvxwQcfoKGhASEhISAiuLu7\nY+/evWIOizFmRXizOWOMMcaYifjWHmOMMcaYibiRYowxxhgzETdSjDHGGGMm4kaKMcYYY8xE3Egx\
nxhhjjJmIGynGGGOMMRP9H3ZwX6/tLGiHAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0xf567450>"
]
}
],
"prompt_number": 16
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Simplest algorithm possible: Always buy apple"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from zipline.algorithm import TradingAlgorithm\n",
"from zipline.api import order\n",
"\n",
"def initialize(context):\n",
" print('Initialized!')\n",
" context.last_price = 0\n",
"\n",
"def handle_data(context, data):\n",
" stock = 'AAPL'\n",
" if context.last_price < data[stock].price:\n",
" order(stock, 10)\n",
" else:\n",
" order(stock, -10)\n",
" \n",
" context.last_price = data[stock].price"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Instantiate our algorithm\n",
"my_algo = TradingAlgorithm(initialize=initialize,\n",
" handle_data=handle_data)\n",
"\n",
"# Run algorithm on data\n",
"perf_buy_apple = my_algo.run(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-16 12:33] INFO: Performance: Simulated 2022 trading days out of 2022.\n"
]
},
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-16 12:33] INFO: Performance: first open: 2006-01-03 14:31:00+00:00\n"
]
},
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-16 12:33] INFO: Performance: last close: 2014-01-14 21:00:00+00:00\n"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Initialized!\n"
]
}
],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"perf_buy_apple.head()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>capital_used</th>\n",
" <th>ending_cash</th>\n",
" <th>ending_value</th>\n",
" <th>orders</th>\n",
" <th>period_close</th>\n",
" <th>period_open</th>\n",
" <th>pnl</th>\n",
" <th>portfolio_value</th>\n",
" <th>positions</th>\n",
" <th>returns</th>\n",
" <th>starting_cash</th>\n",
" <th>starting_value</th>\n",
" <th>transactions</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>2006-01-03 21:00:00</th>\n",
" <td> 0.000000</td>\n",
" <td> 100000.000000</td>\n",
" <td> 0.0</td>\n",
" <td> [{u'status': 0, u'created': 2006-01-03 00:00:0...</td>\n",
" <td> 2006-01-03 21:00:00+00:00</td>\n",
" <td> 2006-01-03 14:31:00+00:00</td>\n",
" <td> 0.000000</td>\n",
" <td> 100000.000000</td>\n",
" <td> []</td>\n",
" <td> 0.000000</td>\n",
" <td> 100000.000000</td>\n",
" <td> 0.0</td>\n",
" <td> []</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-04 21:00:00</th>\n",
" <td>-725.207249</td>\n",
" <td> 99274.792751</td>\n",
" <td> 724.9</td>\n",
" <td> [{u'status': 1, u'created': 2006-01-03 00:00:0...</td>\n",
" <td> 2006-01-04 21:00:00+00:00</td>\n",
" <td> 2006-01-04 14:31:00+00:00</td>\n",
" <td> -0.307249</td>\n",
" <td> 99999.692751</td>\n",
" <td> [{u'amount': 10, u'last_sale_price': 72.49, u'...</td>\n",
" <td>-0.000003</td>\n",
" <td> 100000.000000</td>\n",
" <td> 0.0</td>\n",
" <td> [{u'commission': 0.3, u'amount': 10, u'sid': u...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-05 21:00:00</th>\n",
" <td>-719.507192</td>\n",
" <td> 98555.285559</td>\n",
" <td> 1438.4</td>\n",
" <td> [{u'status': 1, u'created': 2006-01-04 00:00:0...</td>\n",
" <td> 2006-01-05 21:00:00+00:00</td>\n",
" <td> 2006-01-05 14:31:00+00:00</td>\n",
" <td> -6.007192</td>\n",
" <td> 99993.685559</td>\n",
" <td> [{u'amount': 20, u'last_sale_price': 71.92, u'...</td>\n",
" <td>-0.000060</td>\n",
" <td> 99274.792751</td>\n",
" <td> 724.9</td>\n",
" <td> [{u'commission': 0.3, u'amount': 10, u'sid': u...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-06 21:00:00</th>\n",
" <td> 737.492622</td>\n",
" <td> 99292.778181</td>\n",
" <td> 737.8</td>\n",
" <td> [{u'status': 1, u'created': 2006-01-05 00:00:0...</td>\n",
" <td> 2006-01-06 21:00:00+00:00</td>\n",
" <td> 2006-01-06 14:31:00+00:00</td>\n",
" <td> 36.892622</td>\n",
" <td> 100030.578181</td>\n",
" <td> [{u'amount': 10, u'last_sale_price': 73.78, u'...</td>\n",
" <td> 0.000369</td>\n",
" <td> 98555.285559</td>\n",
" <td> 1438.4</td>\n",
" <td> [{u'commission': 0.3, u'amount': -10, u'sid': ...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2006-01-09 21:00:00</th>\n",
" <td>-735.607353</td>\n",
" <td> 98557.170828</td>\n",
" <td> 1470.6</td>\n",
" <td> [{u'status': 1, u'created': 2006-01-06 00:00:0...</td>\n",
" <td> 2006-01-09 21:00:00+00:00</td>\n",
" <td> 2006-01-09 14:31:00+00:00</td>\n",
" <td> -2.807353</td>\n",
" <td> 100027.770828</td>\n",
" <td> [{u'amount': 20, u'last_sale_price': 73.53, u'...</td>\n",
" <td>-0.000028</td>\n",
" <td> 99292.778181</td>\n",
" <td> 737.8</td>\n",
" <td> [{u'commission': 0.3, u'amount': 10, u'sid': u...</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows \u00d7 13 columns</p>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 9,
"text": [
" capital_used ending_cash ending_value \\\n",
"2006-01-03 21:00:00 0.000000 100000.000000 0.0 \n",
"2006-01-04 21:00:00 -725.207249 99274.792751 724.9 \n",
"2006-01-05 21:00:00 -719.507192 98555.285559 1438.4 \n",
"2006-01-06 21:00:00 737.492622 99292.778181 737.8 \n",
"2006-01-09 21:00:00 -735.607353 98557.170828 1470.6 \n",
"\n",
" orders \\\n",
"2006-01-03 21:00:00 [{u'status': 0, u'created': 2006-01-03 00:00:0... \n",
"2006-01-04 21:00:00 [{u'status': 1, u'created': 2006-01-03 00:00:0... \n",
"2006-01-05 21:00:00 [{u'status': 1, u'created': 2006-01-04 00:00:0... \n",
"2006-01-06 21:00:00 [{u'status': 1, u'created': 2006-01-05 00:00:0... \n",
"2006-01-09 21:00:00 [{u'status': 1, u'created': 2006-01-06 00:00:0... \n",
"\n",
" period_close period_open \\\n",
"2006-01-03 21:00:00 2006-01-03 21:00:00+00:00 2006-01-03 14:31:00+00:00 \n",
"2006-01-04 21:00:00 2006-01-04 21:00:00+00:00 2006-01-04 14:31:00+00:00 \n",
"2006-01-05 21:00:00 2006-01-05 21:00:00+00:00 2006-01-05 14:31:00+00:00 \n",
"2006-01-06 21:00:00 2006-01-06 21:00:00+00:00 2006-01-06 14:31:00+00:00 \n",
"2006-01-09 21:00:00 2006-01-09 21:00:00+00:00 2006-01-09 14:31:00+00:00 \n",
"\n",
" pnl portfolio_value \\\n",
"2006-01-03 21:00:00 0.000000 100000.000000 \n",
"2006-01-04 21:00:00 -0.307249 99999.692751 \n",
"2006-01-05 21:00:00 -6.007192 99993.685559 \n",
"2006-01-06 21:00:00 36.892622 100030.578181 \n",
"2006-01-09 21:00:00 -2.807353 100027.770828 \n",
"\n",
" positions \\\n",
"2006-01-03 21:00:00 [] \n",
"2006-01-04 21:00:00 [{u'amount': 10, u'last_sale_price': 72.49, u'... \n",
"2006-01-05 21:00:00 [{u'amount': 20, u'last_sale_price': 71.92, u'... \n",
"2006-01-06 21:00:00 [{u'amount': 10, u'last_sale_price': 73.78, u'... \n",
"2006-01-09 21:00:00 [{u'amount': 20, u'last_sale_price': 73.53, u'... \n",
"\n",
" returns starting_cash starting_value \\\n",
"2006-01-03 21:00:00 0.000000 100000.000000 0.0 \n",
"2006-01-04 21:00:00 -0.000003 100000.000000 0.0 \n",
"2006-01-05 21:00:00 -0.000060 99274.792751 724.9 \n",
"2006-01-06 21:00:00 0.000369 98555.285559 1438.4 \n",
"2006-01-09 21:00:00 -0.000028 99292.778181 737.8 \n",
"\n",
" transactions \n",
"2006-01-03 21:00:00 [] \n",
"2006-01-04 21:00:00 [{u'commission': 0.3, u'amount': 10, u'sid': u... \n",
"2006-01-05 21:00:00 [{u'commission': 0.3, u'amount': 10, u'sid': u... \n",
"2006-01-06 21:00:00 [{u'commission': 0.3, u'amount': -10, u'sid': ... \n",
"2006-01-09 21:00:00 [{u'commission': 0.3, u'amount': 10, u'sid': u... \n",
"\n",
"[5 rows x 13 columns]"
]
}
],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"perf_buy_apple.portfolio_value.plot()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 10,
"text": [
"<matplotlib.axes.AxesSubplot at 0x4109a50>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\nNDaidU5Zx5SkDADq6zv/
OX0pJr3J0bg4XNH/9ttvx+233w5AJkzvv/++5nlPPvkknnzySdXxqVOn\n4osvvlAdHzx4MN58803Nez3wwAN44IEHHG0iERFRn9PSAjzxBPDMM8DAgT3zGY4mZaNGWYYt6+p6\npi3UPq59SURE5EL/+AewcCFQWQmMGNEzn/H3vwMZGUBaWsfnbdwok8TNm4H164FNm3qmPf1Vt+uU\nERERUc9pnVbdoz1TjY2Ozyk7elS+Zp9H72NS5mE4nq+NcVFjTLQxLmqMiTZnxaW2Vm67MofLUZ2Z\nU3bwoHzdlaSM3xVtjsaFSRkREZGLCAEcOSJf92RSdvGiYyUxhg61vGZPWe9jUuZhWCNGG+Oixpho\nY1zUGBNtzohLQYHcDh0qE6eeUlMjl1myx/pBg64kZfyuaHNKnTIiIiLqOQNa/xW+7jqgtSZ7j9iy\nBfjmG/vnWa2UiJaWnmsPaWNS5mE4nq+NcVFjTLQxLmqMiTZnxOXKFbkdMwawWvimRyxfbv+cUaMs\nieKzzwJ//WvnPoPfFW2cU0ZEROTmGhvl9sc/7rmkrKZGDo/OmOHY+dY9ZIcP90ybSBvrlBEREbnI\nhx8Cv/0tsHIl8MEHne+ZcsTx40BiIvD5546d37oQDwDZu5ac7Pw29VesU0ZEROSmlDUpvb2B5uae\n+YzvvwdCQjp3zfXXy+2gQc5vD7WPSZmH4Xi+NsZFjTHRxrioMSbauhuXxkZZqFVJyi5fdk672jp1\nCpgwwfHzS0uBRx+VrzublPG7oo1zyoiIiNzYSy8Bv/+9rB/m5dUzPWVNTcA77wAREY5fM2aMJRlj\nT1nvYlLmYVgjRhvjosaYaGNc1BgTbd2NS3W13A4b1nM9ZVu3yuK0kZGdu06pV9bZpIzfFW2sU0ZE\nROTGmprkdvjwnuspUxK/gIDOXeflJbfsKetdTMo8DMfztTEuaoyJNsZFjTHR5ow5ZUDP9pSZTMDm\nzZ1PypSeMm/vzl3H74o2zikjIiJyY217yurq5K+uunJFLo10+rQlwfv2W+DOO7t2L8C2PAb1PNYp\nIyIicoHly2VdspdfBqZMAX7yE/kk5ltvAbNnWyrrO2rIEOCJJ4ANG4DnnwfWrQNGjwY++6zzPWUp\nKcCyZfI1/5l1HtYpIyIicjPvvw+Ul8vXSk8ZIOuW3XWXLCTbWZcuASdPytfKXLK6Ojk82llKLx71\nLiZlHobj+doYFzXGRBvjosaYaOtOXOLjgbfflq+HDFHP3Soq6tz9UlLk1tdXbgcMAN54QyZlV1/d\n+fZ1NSnjd0Ub55QRERH1AV5ectjSmtLT5ahnnpFb5WnJAQOAX//a8rqzlIcQxozp/LXUdUzKPAxr\nxGhjXNQYE22Mixpjos1ZcfHykr1l1qqqOneP8+fl9uWX5XbgQMsTlF2hTPC3XpzcEfyuaGOdMiIi\nIjfUdp63l5d6iLGmpnP3vOsuS2Ln7w8UFgL33ScfGOiKX/4SOHQIqK3t2vXUNUzKPAzH87UxLmqM\niTbGRY0x0dbVuNTXy+2wYUBiIjB9urqnrLOlMRoagAcflK8PHgTS0uTnzJjRpSZiyBDgjjvkwwNK\neQxH8LuizSlzyi5duoTp06cjMjIS4eHheOKJJwAAGzduRFBQEKKiohAVFYX33nvPfM3WrVthMBgw\nceJEZGVlmY/n5+cjIiICBoMBa9euNR9vbGzEokWLYDAYEBMTgyKr2Y0pKSkICwtDWFgYUlNTHfqB\niIiI3JkyX2z0aOD11wE/P3VP2cWLnbtnZSUQHCxfT5okX5861fnir9Z0OmDo0M63hbpB2FFXVyeE\nEOLy5cti+vTp4oMPPhAbN24UO3fuVJ371VdfiSlTpoimpiZRWFgoQkJCREtLixBCiGnTponc3Fwh\nhBB33nmneO+994QQQrzyyiti1apVQggh0tLSxKJFi4QQQlRUVIgJEyaIqqoqUVVVZX5tzYHmExER\nuZUvvxQiMFCIlBTLsZYWIeTApvw1b17n7hkZKcSbb8prhRBi+nR57JVXutfWkBAhTp7s3j3Iwl7e\nYnf48urW9L2pqQlXrlzBiBEjlGROde7+/fuxePFieHt7Izg4GKGhocjNzUVZWRlqa2sRHR0NAFi6\ndCn27dsHAMjIyEBiYiIAYMGCBTh06BAA4MCBA0hISIBer4der0d8fDwyMzO7nYQSERG5UnU1MG4c\nsHSp5VjbyvmdHb68eFEWoD1+XO4PHCiHNLu7duWUKbL4LPUOL3sntLS04KabbsKpU6ewatUqTJo0\nCenp6Xj55ZeRmpqKm2++GTt37oRer0dpaSliYmLM1wYFBcFkMsHb2xtBQUHm44GBgTCZTAAAk8mE\nsWPHysZ4ecHX1xcVFRUoLS21uUa5V1vLli1DcGufrV6vR2RkpPkpB2UMtz/tnzhxAg8//LDbtMdd\n9q3H892hPe6w/+KLL/b7Py9a+8oxd2mPO+zzz49z/76trgauXMlBTo7W90/ul5Zqv9/efmVlDj7/\nHLj3Xrl/8WIOqqqAQYO69/NGRsbixAlg9GjHzleOucPvjzvsK6+PHj2KAEeWVXC0y626ulpMnz5d\nZGdni3PnzomWlhbR0tIinnrqKbF8+XIhhBBr1qwRu3fvNl+zYsUKkZ6eLo4dOyZmzpxpPn7kyBEx\nd+5cIYQQkydPFiaTyfxeSEiIKC8vFzt27BBbtmwxH9+8ebPYsWNHp7oB+6Ps7GxXN8EtMS5qjIk2\nxkWNMdHW1bgMHSrE3Xerj1sPX06a1Ll7+vgIUV1t2b/jDnnsH//oUhPNMjKEmD3b8fP5XdGmxMVe\n3jLAftom+fr64q677sKxY8fg7+8PnU4HnU6HlStXIi8vD4DsASsuLjZfU1JSgqCgIAQGBqKkpER1\nXLnmzJkzAIDm5mbU1NTAz89Pda/i4mKbnjPSpmTpZItxUWNMtDEuaoyJtq7Gpa5OlqzoSGcm11++\nLIcqhw61HBs4ELhwAQgM7FITzaZMATIzgWPHHDuf3xVtjsalw6SsvLwc1a2PiTQ0NODgwYOIiorC\n2bNnzefs3bsXERERAIB58+YhLS0NTU1NKCwshNFoRHR0NAICAuDj44Pc3FwIIbBr1y7Mnz/ffE1K\n6/oQ6enpiIuLAwAkJCQgKysL1dXVqKqqwsGDBzFr1qzORYGIiMgNtZ1D1lZn5pSVlMjK+15WE5KU\n191NylpnF+GHH7p3H3JMh0lZWVkZZsyYgcjISEyfPh1333034uLi8Nhjj+HGG2/ElClT8O9//xsv\nvPACACA8PBwLFy5EeHg47rzzTiQlJUHX+s1LSkrCypUrYTAYEBoaitmtFe1WrFiBiooKGAwGvPji\ni9i2bRsAYOTIkVi/fj2mTZuG6OhobNiwAXq9vidj4RGsx7HJgnFRY0y0MS5qjIm27sTl8cc7fr+8\nHNi9u+Nzzp8HiouB06ct5TDa6u4ySTodEBfn+AMD/K5oczQuHU70j4iIwKeffqo63lHNsCeffBJP\nPvmk6vjUqVPxxRdfqI4PHjwYb775pua9HnjgATzwwAMdNZGIiKhPGTwY+OlP7Z+3YQPws5+1//6C\nBcAHHwB/+Qtw3XW27ynLLnWnTpnCywtobrbsCwH87nfAkiXA5Mndvz9Z6FonnvVJOp1OszQHERGR\nu/LykpXyvdp0i7Qd0hw+XM4La88NNwBffy2TtytXgM2bLe+NGyd70ZzxT+TcucAvfgHcfbfcr6+3\nzF/jP8GdYy9vsVsSg4iIiJxDCJlA2VssfN06+/O4lEXLKyuBCRNs37t0qettbKttT5n1upynTgEh\nIc77rP7O4acvqW/geL42xkWNMdHGuKgxJtq6EpfmZpnkaE30by1kAACIitK+vqUFOHwY+Phjy3JN\nhw+r53w1NXW6ae3y9ras1wlYPheQw6fW+F3R5mhcmJQRERH1EiUp0zJtmlykHJCJ0OXLtu9nZMge\
ntrg4udB4Y6M8XlOjnjvW9truaGmRc9uUJ0Kte8paWpz3OcSkzOOwRow2xkWNMdHGuKgxJtq6EpfL\nl9tPygDLsOagQererooKy3vWw5NlZT3bU1ZaKrdGo9zW1Mj6ZYmJ6mFSfle0OaVOGRERETlPc3PH\nT0QOaP1XWaunTEm0/Pwsx9aulXPUtEpWXHVV99qqUGq/K59fXQ0YDMDIkc6du0ZMyjwOx/O1MS5q\njIk2xkWNMdHWlbjY6ylT5pIpSZlVrXZzAmSdlF1zjdyeO2d7nz17gDfe6HTzNClJmTLZv6YG0OuB\nIUPUSRm/K9qcUqeMiIiInKejOWUA8POfWybuZ2XJ4q8tLcDBg/IXYHkqc8oUy3JMbYcrHamD1pW2\nAzIp8/WVPXENDc7/nP6MPWUehuP52hgXNcZEG+Oixpho60pc7A1fKsOQ1ufU1gKzZgHvvCP3z5+X\nT2oeOwYo9dWtn450ti+/lGUvlKSsulr2lHl5yaFTa/yu2Dp3DvjuO84pIyIicjv2hi+VpExJssaO\nlRP5rQkBTJ0q7xMWBrzyCrBiRc+0FwAmTQLGj1f3lA0YoE7KCPjtby1lQxYtkvPvHMWkzMNwPF8b\n46LGmGhjXNQYE21drVPmSE9ZZCTwyCNAaChw5oz6vAFW/3qvXm1ZOLynWPeKWSdlbUti9PfvSlER\nsGMHMGKEjI1Sj451yoiIiNyMvZ4yJWEbPRrYuVOuaVlUJCfVu5J1VX9l+HLgQNYpa+uTTyyvi4pk\nDyPgeJyYlHkYjudrY1zUGBNtjIsaY6Ktq3PKHBm+VChJWUOD5R94V7BOyjoavuzv3xW93vK6okIu\nPg8AEybEOnQ9kzIiIqJeYm/4su0wpJKUAcDTTwNPPgmUl/dc+9qjJGWvviqXVtLrtYcv+zvrp2CL\ni+VDGgCQn+/Y9UzKPEx/H89vD+OixphoY1zUGBNtPVGnbNw4OZFfMWaMZU5ZXR3wxz/a1inrLUpS\n9vHHcp9zyrQpBX/1euDECUvJknvvzUFBgf3rWaeMiIiol9jrKWvL19dSGDYhoWfa5AglKVPmtnFO\nmbamJmDBAuDWW4Ht2wF/f/mkbH6+Yz2c7CnzMP19PL89jIsaY6KNcVFjTLT1xNqXbSlJmb8/MGFC\npz/OaZSkTBleVYYvOafMQghg/XqZdA8eLFdj+PxzIDoaAGJtFnJvD5MyIiKiXmJvon9bvr5AVZX7\nPH159dVyvU2Ac8raqq8HvvlGLuBuvW7pzTfLbdulsLQwKfMw/X08vz2Mixpjoo1xUWNMtHUlLmfP\nWtardISvr9y6S1LW2Gh5opBzymwpS06dOAGsWQM8/LDcnzkTiI7Owfnz9u/BpIyIiKiXfPdd5yq8\nDx0qt52Zh9YTtJKygQNZ0d+asgrD0KEyXsHBcn/4cCA83LF1QpmUeZj+PJ7fEcZFjTHRxrioMSba\nuhIXo7FzSZlSEd56OMwVHO0p68/flfp6Oefuq6/kvlKzbNgw4PrrY9HYaP8efPqSiIioh50+Dbz2\nmuwpCwnp/PUDXNyFYp2UjRxpaRPnlFnU1QGjRskllgDL3EFvb+Cqq+BQUtbhb/OlS5cwffp0REZG\nIjw8HE888QQAoLKyEvHx8QgLC0NCQgKqlZU3AWzduhUGgwETJ05EVlaW+Xh+fj4iIiJgMBiwVpkl\nCKCxsRGLFi2CwWBATEwMipQqeQBSUlIQFhaGsLAwpKam2v9pqF+P53eEcVFjTLQxLmqMibbOxOWV\nV4Bt22TNMWVYqzMGDuz8Nc7EOWX21dfLByEU1kO7RUU5uHTJ/j06TMquuuoqZGdn48SJE/j888+R\nnZ2N//znP9i2bRvi4+Px7bffIi4uDtu2bQMAFBQUYM+ePSgoKEBmZiZWr14N0VoFb9WqVUhOTobR\naITRaERmZiYAIDk5GX5+fjAajVi3bh0ef/xxADLx27RpE/Ly8pCXl4enn37aJvkjIiLqK5TK7lVV\nnZvor3B1Unb6tFxNoO2cMq1/lt9+27YAbn9RX2+ZAwjIUhjKUPWgQbKn1B67HaJXt6Z9TU1NuHLl\nCkaMGIGMjAwkJiYCABITE7Fv3z4AwP79+7F48WJ4e3sjODgYoaGhyM3NRVlZGWpraxEti3Vg6dKl\n5mus77VgwQIcOnQIAHDgwAEkJCRAr9dDr9cjPj7enMhR+/rzeH5HGBc1xkQb46LGmGjrTFyUdSOb\nm7uWYHWmjEZPOH5cbuvrLetznjoFvPee7Xm33x6LefNcsxSUq7XtKZs4Efj2W/l6xIhYh+5h97e5\npaUFN910E06dOoVVq1Zh0qRJOHfuHEaPHg0AGD16NM61Ft8oLS1FTEyM+dqgoCCYTCZ4e3sjKCjI\nfDwwMBAmkwkAYDKZMLa1Gp2Xlxd8fX1RUVGB0tJSm2uUe7W1bNkyBLf2Bev1ekRGRpr/oCjdqNzn\nPve5z33uu3K/sFDuA127vq4uBzk5rmu/Tif39+2Lxdy58v3PP1f/PDExcj87Owf+/u4T/97Yz88H\nrr7a9n3l9fHjp+EQ4aDq6moxffp0cfjwYaHX623eGzFihBBCiDVr1ojdu3ebj69YsUKkp6eLY8eO\niZkzZ5qPHzlyRMydO1cIIcTkyZOFyWQyvxcSEiLKy8vFjh07xJYtW8zHN2/eLHbs2GHzuZ1ofr+R\nnZ3t6ia4JcZFjTHRxrioMSbaOhOXefOEkIN6nf8cQIhbb+38dc4UFWVp/1tvyWOPPKL+efbvzxaA\nEF991fttdLU//1mIlSu138vOzhbZ2fbzlgGOpW6Ar68v7rrrLuTn52P06NE4e/YsAKCsrAz+/v4A\nZA9YcXGx+ZqSkhIEBQUhMDAQJSUlquPKNWdaV1ttbm5GTU0N/Pz8VPcqLi626TkjIiLqK+rqune9\nq4cvrUtyKHPKlHljEyda3lNqcSlz6PqTujrb4cu2lCWqOtJhUlZeXm6eXN/Q0ICDBw8iKioK8+bN\nQ0pKCgD5hOQ999wDAJg3bx7S0tLQ1NSEwsJCGI1GREdHIyAgAD4+PsjNzYUQArt27cL8+fPN1yj3\nSk9PR1xcHAAgISEBWVlZqK6uRlVVFQ4ePIhZs2bZ/4n6OaUrlWwxLmqMiTbGRY0x0daZuCiFRbvK\n1RP9m5p9FicrAAAgAElEQVQsr5WkTHm68JtvLE9hRkTEAoBDTxp6mrYT/a3FxsaaS2V0pMPcu6ys\nDImJiWhpaUFLSwuWLFmCuLg4REVFYeHChUhOTkZwcDDefPNNAEB4eDgWLlyI8PBweHl5ISkpCbrW\nyndJSUlYtmwZGhoaMGfOHMyePRsAsGLFCixZsgQGgwF+fn5IS0sDAIwcORLr16/HtGnTAAAbNmyA\nXqnERkRE1IfU1QEBAXKZpc7avh2YMsX5beqMv/8d+OtfZWkPJSl78EHgpZfk6wsXZLFUpUfQ1cVu\nXaHtRP+2lCWzOqITou8+uKrT6dCHm98jcnJy+L9aDYyLGmOijXFRY0y0dSYuBoNMYr76Cnj99R5t\nVo85fBiIiwNyc2W5B8Cy4kBpKTBmDPDiizlYty4W77wDzJnjura6wiOPAEFBctuW8l2xl7c4PKeM\niIiIuqauDrj//r6bkAGyKj1gKYlhLS9PDmEqc8qshzs9TXs5lb2eMkcwKfMw/N+sNsZFjTHRxrio\nMSbaHI3L5ctATQ3g49Oz7elpyrClsrV2zz3Am28CEybEAvDspGzAAODTTy37zz0nf387mujv6HeF\na18SERH1oJwcICICGD7c1S3pHqWnzDopCwoClOIKVVWW9zw5KQOAqVMtPWaPPy7j0NFEf0exp8zD\nWBesIwvGRY0x0ca4qDEm2hyNy5EjQEJCz7alN2j1lO3ebXnd0AAcP54DoH9M9K+ttSRmVVUdD186\n+l1hUkZERNSDKiuB1nKefdqA1oyhdUEfAMDttwPKyNylS5ZSGJ7aU2adbPr4WNazLCsDzp+XT6B2\nB5++JCIi6kE/
+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
J2XtzSlbvBg4dAg4fx4YMQIYOVJd\n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\nCC/
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\n",
"text": [
"<matplotlib.figure.Figure at 0x412e4d0>"
]
}
],
"prompt_number": 10
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"A classic: Dual Moving Average crossover strategy."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from zipline.transforms import MovingAverage\n",
"from zipline.api import order_target, record\n",
"\n",
"def initialize_dma(context):\n",
" # Add 2 mavg transforms, one with a long window, one\n",
" # with a short window.\n",
" # Note that this is bound to change soon and will be easier.\n",
" context.add_transform(MovingAverage, 'short_mavg', ['price'],\n",
" window_length=100)\n",
"\n",
" context.add_transform(MovingAverage, 'long_mavg', ['price'],\n",
" window_length=300)\n",
"\n",
"def handle_data_dma(context, data):\n",
" short_mavg = data['AAPL'].short_mavg['price']\n",
" long_mavg = data['AAPL'].long_mavg['price']\n",
"\n",
" if short_mavg > long_mavg:\n",
" order_target('AAPL', 100)\n",
" elif short_mavg < long_mavg:\n",
" order_target('AAPL', 0)\n",
" \n",
" record(short_mavg=short_mavg,\n",
" long_mavg=long_mavg)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 21
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"dma = TradingAlgorithm(initialize=initialize_dma,\n",
" handle_data=handle_data_dma)\n",
"perf_dma = dma.run(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-15 22:02] INFO: Performance: Simulated 2022 trading days out of 2022.\n"
]
},
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-15 22:02] INFO: Performance: first open: 2006-01-03 14:31:00+00:00\n"
]
},
{
"output_type": "stream",
"stream": "stderr",
"text": [
"[2014-01-15 22:02] INFO: Performance: last close: 2014-01-14 21:00:00+00:00\n"
]
}
],
"prompt_number": 23
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"perf_dma.long_mavg"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 34,
"text": [
"2006-01-03 21:00:00 72.280000\n",
"2006-01-04 21:00:00 72.385000\n",
"2006-01-05 21:00:00 72.230000\n",
"2006-01-06 21:00:00 72.617500\n",
"2006-01-09 21:00:00 72.800000\n",
"2006-01-10 21:00:00 73.696667\n",
"2006-01-11 21:00:00 74.757143\n",
"2006-01-12 21:00:00 75.600000\n",
"2006-01-13 21:00:00 76.395556\n",
"2006-01-17 21:00:00 76.947000\n",
"2006-01-18 21:00:00 77.202727\n",
"2006-01-19 21:00:00 77.137500\n",
"2006-01-20 21:00:00 76.863077\n",
"2006-01-23 21:00:00 76.737143\n",
"2006-01-24 21:00:00 76.522667\n",
"...\n",
"2013-12-23 21:00:00 480.488300\n",
"2013-12-24 18:00:00 480.342233\n",
"2013-12-26 21:00:00 480.167267\n",
"2013-12-27 21:00:00 479.930967\n",
"2013-12-30 21:00:00 479.692867\n",
"2013-12-31 21:00:00 479.515167\n",
"2014-01-02 21:00:00 479.384967\n",
"2014-01-03 21:00:00 479.135967\n",
"2014-01-06 21:00:00 478.963700\n",
"2014-01-07 21:00:00 478.767233\n",
"2014-01-08 21:00:00 478.605767\n",
"2014-01-09 21:00:00 478.439100\n",
"2014-01-10 21:00:00 478.288600\n",
"2014-01-13 21:00:00 478.143433\n",
"2014-01-14 21:00:00 478.097700\n",
"Name: long_mavg, Length: 2022"
]
}
],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"fig = plt.figure()\n",
"ax1 = fig.add_subplot(211)\n",
"perf_dma.portfolio_value.plot(ax=ax1)\n",
"\n",
"ax2 = fig.add_subplot(212)\n",
"data['AAPL'].plot(ax=ax2)\n",
"perf_dma[['short_mavg', 'long_mavg']].plot(ax=ax2)\n",
"\n",
"perf_dma_trans = perf_dma.ix[[t != [] for t in perf_dma.transactions]]\n",
"buys = perf_dma_trans.ix[[t[0]['amount'] > 0 for t in perf_dma_trans.transactions]]\n",
"sells = perf_dma_trans.ix[[t[0]['amount'] < 0 for t in perf_dma_trans.transactions]]\n",
"ax2.plot(buys.index, perf_dma.short_mavg.ix[buys.index],\n",
" '^', markersize=10, color='m')\n",
"ax2.plot(sells.index, perf_dma.short_mavg.ix[sells.index],\n",
" 'v', markersize=10, color='k')\n",
"plt.legend(loc=0)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 24,
"text": [
"<matplotlib.legend.Legend at 0xc3b4850>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\n2rdvb+xiGdWff/4JV1dXBAcHY/
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\nAEBNTQ2Wlpa1NAJOXVOyVLgkqR5v8zZv8/
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\n8WVszOLBeH4wjhSo9PdN+gs8646KxP/
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
meFJVFT82pzAHZx6fwZGI\n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\n/
TyjouT90lK5fpq7O3zxhXzM319OlDQY5GTRDz6Qt/LtqN74dA9rT80nPn8NGErxLGjDkG534ePl\ngZvRjY3rXdm+1ZXRT7vSOtxKdlE2WYVZZBVmcTL/JAmnEvBx86Fd3Xa0CmhFeFA44UHh+Hlcecug\nv4/6O9Yj1kvGjl1OIDCEGPhowUc3mzZFURTNOWxBNnHiRHx8fJg0aRLvvvsueXl5lwzqj4uLqxjU\nf/jwYZsWIp1Oh9UqOHRITga71ppSdxohBGPuH8OTO55kacdlvPTpfCZN0vG//8nxTVlZ8nXjx8tl\nJPz9ZSH17LNyvHNCAgwfLi/SQUFybFfDhnLZh/c/KqFhs2w8/LJYvyWLrPPZ1G2STeOwbAqsWRi9\nstibdJ5iayE1ahVRP6QQnUsh+SX5nD5/mhDvEJr5NqOpb1Oa+TSjuV9zwvzDcHNysz2Q8+fl8gJJ\nSfKWkiILsNRUWV0GB8vAgoPlkgr33CMH3gfd2Ppi1ckXX0BkJKSnw+TJcqLjuHFyC6n775fj4S7m\n5SUbGUNDoXNnWVxHRUFxsdwUIDYWpk+XrV0g62LPuifoMzKRAxl/gLEYnIowuBQzYHAxvkFF6HV6\nfN198XXzxdfdl4AaAbQKbIWvu9o0W1EUxR6HKMgiIyOJjY0lKyuLgIAA/vWvfzFgwAAee+wxjh8/\nbrPsxdtvv82CBQswGo3MmDGDXr162Qav0zFpkuCbuet5uFMKf3vJn0YP9MPZ7S8uFOkA1qyBz2au\nJWJbEh3Nbdiq28100ZwRz/Rl+nTZMrZ6tVwB/9gx2bhUVLKBfMu91KyXwdT/JJF+/hg/mE6QYz5J\ngS4Di1MOuOahcz2LzmClrMAXL6MPQbV8aeDrQ6NAH3zc5M3X3RcP5xq4O7njcdHWQB7OHtT1rIuT\n3ii35Tl16sq39HR5Ky2V/WzNmskR36GhsomnvAi7nia8v6AqNqOXF9zt29s+J4TstuzXD5YulcuR\nlK/qcOSILNwKCsDV1cTGjV2ZPl3O3jxyRLae1ap1URdkGcydK9//zDPyj4DS0so91spUFc+Vv0rl\nxD6VF1sqJ/Zdb5dlpQ3qX7lypd3HN27caPfxKVOmMGXKlGt+bpel/rxsySY5vgbWJ0ogt4STNfSc\nCPGlsElDCAjE4F0bJ19/XP3r4NUwFN+77sXTpw66qwywKi6WdcLtanU7dEguBp6aKrsJ09PlGCAP\nDzhxAjZuFLT3WEMH85MAdBLhDOu4jDlz+lBoLmTr8V0c8I+hZGAiRXlHKcg6StEfhfg2r02gZwA7\n85vSyLsRLw4Lob5zB+o6++BR4k4tnTO+RidczAJdcbE80KIiecv+89/FxVB08sJzxcWylev06QvF\nVmamXGo9MND2FhYml5WoW1c2v3h7V/tuxlvNycl+MQYy1X37ym2qhg69dG/r8oVlAUwm+dopU2SB\nVlICtS8b4qfXywIOZIF37twtPxRFURSFKrBS/7Jnx/Pw6y+TkduAmTPBtLkY/dk4Itv/iOfpRHRZ\n2biX5hNoLKCO/jw184rwP2dGLyDb00iOuwu5ZU64ehqw6vWY0XO2UE+p1YAw6Knpa8CjpgFhMGBw\nccXgWRM3b39q+dXDy7ceXr510NfwlMWJhwd4eoKHB8eOwaxZ0DVC0OkBweZNgrN5AldXmP+Z4OhR\nwf2tiwmoWYwbRfTsXETijmL0pQW4OeeSyy6EqQltzfdVHO8O/RZyQj6klcd5Aow1qWOsTW2dOx5W\nPa5mgaHEjK6ioPrza2mpvCK7uclNpC/+au+xKz3n7i77RMuLroCAS6/0iqIoiqJclUN0Wd4OVzqw\nDz6AiRNlw8y8eXLw++uvy4UpQdYVr08+xfmMA6xZdITQBrkUny+l4JwZH28znTuWEtrYzJEUMzEb\nzRh1ZoL8zXjXPE9QrRyM5jOUFWQh8vNxLizBy2KglsWIl1lPjVIdzoUCcynoDCDKoEynQ6cHdAKh\nA71eoDdCqZOOQidBkUFQYLBSYLBSZCjD7OzEF4ebMr5gps0imYsavs+CaY9j8PC4vsLKxUW1TimK\noiiKA6h2BRnIcTQXbwwNchy5k5McU/7cc3Lg8pQpclC8r6/9ZSJyc+WSAYcOwXvvyS7GS4MoA5ez\n9BuSQ7uIbI6cOsOW3Wfo1VvQoT2cPasjKwsah+hxd3bBxeiCs8EZJ70TTgYnvFy88HLxwtPZEy8X\nL1yNrvz09U9XXAbgatP/Vf+9fSov9qm82FI5saVyYp/Kiy2VE/scbgxZZdPpLi3G4MJSAUFBsG+f\nLMAubjyy15Dk7S23u3vwQRg7Vr7nwAE5hCooCPLy9GRne3P8uDfPRTfGaJT7DHbufHNxCyFY8+81\nPFn4pN3nyxfJ7DOoz83v66goiqIoikOpsi1kWjhxQhaBgYE3/xmOtEimoiiKoii3TrVsIdNCvXp/\n/TM2/bQJazsraaRd8TUCQfradFWQKYqiKEoVoVrIqhDVf2+fyot9Ki+2VE5sqZzYp/JiS+XEvusd\nQ3YLdjpUHEViYqLWITgklRf7VF5sqZzYUjmxT+XFlsqJfdebF4cuyNavX0+zZs1o0qQJ7733ntbh\nOLy8vDytQ3BIKi/2qbzYUjmxpXJin8qLLZUT+643Lw5bkFmtVp5//nnWr1/PgQMHWLlyJQcPHtQ6\nLEVRFEVRlFvOYQuyuLg47rrrLoKDg3FycuKJJ57gu+++0zosh5Zqs0iaAiovV6LyYkvlxJbKiX0q\nL7ZUTuy73rw47KD+1atX87///Y/PPvsMgGXLlrFz507++9//VrxGrcOlKIqiKMqd5I5b9uJ6ii0H\nrSUVRVEURVFuiMN2WdatW5e0tAtrcaWlpVHvViz0pSiKoiiK4mActiBr27YtKSkppKamUlpayqpV\nq3jkkUe0DktRFEVRFOWWc9guS6PRyKxZs+jVqxdWq5XRo0fTvHlzrcNSFEVRqhmLxYLx8s2RFeUW\nc9hB/crVbdy4EW9vb9q0ufKel9VRXl4etWrV0joMh1JaWoqzs7PWYTgclRf7rFYrBoNB6zAcQvlE\nsqCgIKKiomjRooWaTPan4uJiXF1dtQ7D4Zw5cwY/P7+bKuIdtstSse+3336jd+/ePProoxw+fFjr\ncBzGzp07GTBgANHR0Xz++ecUFxdrHZLmtm/fzvDhw5k2bRrJyclYrVatQ3II27dvZ+jQoUyYMIED\nBw6ovADbtm3jtddeA1DFGHLC2LRp0xgzZgx9+vTBYrHwySefkJCQoHVomouPj2fQoEGMHz+eTZs2\nqZ8f5Ply/vx5nnjiCQYMGADIXr4bbe9SBdkdoqysjOjoaKKjo3nmmWcYNmxYxUiymyMAAA7FSURB\nVEK5ZWVlGkenrd27dzNu3DiGDBnCkCFDiImJqfbF6r59+3jxxRd5+OGH8ff357PPPmPJkiVah6W5\n06dP8/zzz9O3b198fHyYMWMGCxYs0DosTS1evJinn36a6dOns2rVKkB20VVnOp2Ohg0bsnjxYoYP\nH86rr77KsWPHqnXxIYRg8uTJjB07lgEDBtCgQQMWLVrEmTNntA5NczqdDg8PDwCys7OZPXs2cOPX\nZlWQ3SH0ej09e/Zk69atDBw4kMGDBxMTE0NxcTF6ffX+b9yxYweNGzfmqaeeomfPnhQVFdGgQQOt\nw9LUr7/+SrNmzYiMjGTMmDG4ubmxbNkyjh49qnVomtq3bx+hoaGMHDmSCRMmMGjQIL777juSk5O1\nDk0z9evXZ/Pmzaxfv54JEyYAN/fX/Z3OZDKxY8eOivuRkZG0bNmSkpISfHx88PT0JCMjQ8MItaXT\n6YiIiGDDhg08/fTTjBgxgtLSUmrWrKl1aJoSQiCEICMjg4CAAObPn8+cOXPIzc3FYDDcUBFvmDZt\n2rTbF6ryV6xYsYKvvvqKc+fO0axZM+655x6cnJwoKysjNTWVjIwMIiIicHd31zrUSnV5Xho0aMCE\
nCRMoKChgzJgx6PV6du3aRVJSEp06ddI63EpxeU4MBgOrVq2ic+fOBAYGsmXLFvLy8jh+/DgPPfSQ\n1uFWGpPJxKlTpyqWzPHy8uLNN9+kX79+BAQE4O3tTVpaGtu2baNXr14aR1s5Ls9Jw4YN8fDwIDQ0\nlDVr1nD06FG6deuGxWKpFt2X+fn5REZG8u6773L+/Hm6dOmCm5sber0eg8GA0WjEbDYzY8YMoqOj\n8fHx0TrkSnP5udKkSRPc3NzYunUr/fr1w2w2ExcXR1FREWFhYRpHW3kuzosQAr1ej6enJ59++inD\nhw8nPT2dnTt30qhRI3x9fa/7c6t304qDEkIwZ84cPvjgA4KDg3nllVdYuHAh+fn5gGwta968OZs2\nbaoYK1Udui3t5WXevHkEBgZy4MABiouLef/999mxYwcjRozg119/Zfv27VqHfVvZy8miRYsICgqi\nc+fOjBgxggEDBhAfH8/QoUOxWq0UFRVpHfZtl5+fz6BBgxg4cCBz584lJycHAF9fXx577DFmzpwJ\ngLe3N927d6ewsLDKt35cKSdwYdzYp59+yowZM8jMzMTJyUmrUCuVs7MzDz74IMuXL6dOnTp89dVX\nAJf0PBw8eJCAgABCQ0M5d+4ccXFxWoVbKa50rpRfZ7y9vVm4cCFxcXFERESwadOmatHKbC8v5edJ\ncnIyISEh1KtXjx49ejBnzhyGDh1KSUkJZrP5uj5fFWQOSKfTsWPHDiZNmsSoUaOYPXs2GzduZMuW\nLRXdCPXq1aNjx458/fXXANWi29JeXkwmEz/99BOBgYFs3Lix4q+R8PBw/P39q/wsustz8sknn7Bh\nwwYSExN56623mDt3LiNGjODHH3+kSZMm7N27Fzc3N63Dvu2udJEVQjB06FCSkpLYuHEjer0eHx8f\n0tPTq3zXy9UKD71ej9VqpUWLFgwdOpTJkycDsG7dOi1Dvm2WLFmCyWQiNzcXFxcXoqOj6d69O6Gh\noezevbuiuCi/kGZnZ+Pu7s7ChQu5//772bdvn5bh33ZXOlfKZ5i2aNGCbt26AdC5c2dycnLw9PTU\nLN7KcqW8ANSpU4fDhw/zyCOPMGHCBCIiIggODsbFxeW6/7ip+lfxO8SSJUuIjY2t+EukefPmpKen\nY7FY6N69O2FhYfzyyy8VuxeYzWbuuuuuKt9dea283HvvvRXNx9HR0bz//vuUlZWxatUq9u/fXyW7\nF66Wkx49ehAWFkZMTAxpaWncc889DBw4EIDNmzfToUOHKtuaeq2LbFJSEjqdjrCwMCIjIxk/fjyH\nDx9m8+bNCCEoLS3V+hBuuestPC4+Jz7//HMWL16Mt7c3e/bsqTJjyYQQnDx5kq5du7Jo0SJWrFjB\nc889x5kzZ3B1dcXZ2Zn77rsPPz+/iskN5RfSn3/+mS+++IItW7awfPlyRo8ereWh3BbXc67odDqb\n82HTpk3o9fqKQe1VzbXycujQIUC2ngUGBtKoUSN2797NDz/8wPHjx9m9e/d1fy81hkxD5QMB+/fv\nz549e0hPT+fbb7+le/funDp1itTUVBo0aICvry/16tVj2bJltG/fnqCgIAwGAz/++COFhYUVf6lU\nFTeSl7p167JixQratm1L//792bRpE4sWLSIxMZFPP/2UJk2aaH04t8SNnivLly+vOFfi4uJ48skn\nOXLkCFOnTq1SReqV8tKlSxdq1qyJwWDA3d2dlJQUkpOTiYiIQK/X06pVKwoKCvj222+JjY1l5syZ\n1K9fX+vDuSVuJCeHDh0iIiICnU6HTqfj+PHjjBw5En9/f1avXs2gQYOqxLpb5ePhTp48SUJCAt9/\n/z19+vQhNjaWlStX8vjjjwPg4+PDuXPn2LNnD02bNsXFxQVnZ2fc3d3p0aMHU6dOJTAwUOOjuXVu\n9lwpLi7GZDIxZMgQMjMzeeedd6hbt67Wh3PL3ExePD096dKlCwMHDsTFxQWAxx9/nJCQkBv6xooG\nzGazEEKIpKQkMWzYsIrHxo0bJ5566ilRUlIiRo0aJRYvXizy8vKEEEJERUWJ1157reIzrFZr5Qd+\nm91sXqZOnSqEEKK0tFScPn1am+Bvk5vNyauvviqEEOL06dMiJiZGk9hvpyvl5bnnnhMDBw685LVr\n1qwR48aNEykpKSI/P19YLBYhhBDFxcWVG/RtdrM5KSwsFBaLReTl5YkdO3ZUety3i8ViEZMnTxYT\nJ04UMTEx4vvvvxdRUVGXPO/v7y9MJtMl75s+fboICQkR/v7+4vfff6/ssCvFzZ4rRUVForS0VOzd\nu1d8//33lR737XYzeUlOThaFhYWiuLhYlJWV3fS1We0FUcmsViuvvvoqZWVl9OnTh/z8/IrVfI1G\nY8Wq0AcOHCAyMpJvvvmGEydOMGXKFAwGA+3bt6/4rKo0buyv5qVjx46A7GLw8/PT8lBumb+akw4d\nOgDg5+dH165dNTySW+taeZkxYwZ16tQhNjaWiIgIAAYOHMjBgwfp1asXBQUFmEwmmjdvXvGX7J3u\nVuQkJiaGu+++u+K8udPFxsby0ksvcd999xEeHs5rr73G1KlTiYmJIS4ujvbt22MwGJg2bRr//Oc/\nMZlMAHz55ZdMnz6dyMhI3n77bfz9/bU9kFvsVp0rYWFhVWpm5V/JS+/evS/5vXLTrcp/rZZUboTJ\nZBItW7YUY8eOFfPmzROdOnUS69atE/Xr1xc7d+6seN2sWbNEz549hRBC7NmzR/Tt21e0b99ePPro\noyI/P1+r8G8blRdbKif2XW9eZs+eLSIiIirur1q1Sri7u4vRo0eLzMxMDSK/fVRO7IuNjRVLliyp\nuD927Fgxe/ZssWDBAhEeHi6EkC1kGRkZYsiQIeLIkSMV74uNjdUk5ttNnSv2OUpeVEFWiW7kF8Tg\nwYMrfkHk5OSIEydOaBJzZVB5saVyYp+6yNpSObGvsLBQFBUVVXRPL1u2TEyePFkIIUTLli3FjBkz\nhBBCxMfHiyeeeEKzOCuTOlfsc5S8VJ0+rztAu3btKtaCAujUqVPFIFqr1crMmTMxGAycOHECJycn\nGjVqBMg1X6rSgMnLqbzYUjmx70byYjQaK/LSpUsXunTpomXot43KiX1ubm64urpWrLG2YcOGimVx\nFixYwMGDB+nXrx+RkZGEh4drGWqlUeeKfY6SF1WQVSL1C8I+lRdbKif2qbzYUjm5OovFgtVqJTMz\ns2LjZy8vL95++23+8Y9/EBMTwyuvvKJxlJVDnSv2OUxebllbm3LdzGazsFgsonfv3iIlJUUIIURK\nSorIyckRW7duFWlpaRpHqA2VF1sqJ/apvNhSObmyoqIi8eSTT4qvv/5a9O3bV0RFRYmzZ89qHZZm\n1Llin9Z5US1kGijfG83X15e9e/fSr18/3nzzTQwGA506darYN6y6UXmxpXJin8qLLZWTK0tISGD5\n8uV89NFHDBo0iMWLF+Pl5aV1WJpR54p9mufltpZ7yhVt27ZN6HQ68cADD4j58+drHY7DUHmxpXJi\nn8qLLZUT+9LS0sT06dNFSUmJ1qE4DHWu2KdlXtRK/RrR6XT4+Pgwd+5c2rVrp3U4DkPlxZbKiX0q\nL7ZUTuzz8vKic+fOFWOEFHWuXImWedEJUUU2KlMURVEURblDqTFkiqIoiqIoGlMFmaIoiqIoisZU\nQaYoiqIoiqIxVZApiqIoiqJoTBVkiqJUCwaDgdatW9OiRQtatWrFRx99xLXmNB07doyVK1dWUoSK\nolRnqiBTFKVacHd3JyEhgf3797NhwwbWrVvHG2+8cdX3HD16lBUrVlRShIqiVGeqIFMUpdrx8/Nj\n3rx5zJo1C4DU1FS6dOlCmzZtaNOmDdu3bwdg8uTJbN26ldatWzNjxgzKysp45ZVXaN++PS1btmTe\nvHlaHoaiKFWIWodMUZRqwdPTk/z8/Ese8/b2Jjk5mRo1aqDX63FxcSElJYVhw4YRHx9PbGwsH374\nIT/
88AMA8+bN48yZM0ydOpWSkhI6derEV199RXBwsAZHpChKVWLUOgBFURStlZaW8vzzz7Nnzx4M\nBgMpKSkANmPMfv75Z/bt28fq1asBOHfuHIcPH1YFmaIof5kqyBRFqZaOHDmCwWDAz8+PadOmERQU\nxNKlS7Farbi6ul7xfbNmzaJHjx6VGKmiKNWBGkOmKEq1c+bMGcaOHcsLL7wAyJauwMBAAJYsWYLV\nagVsuzl79erF7NmzsVgsACQnJ1NYWFjJ0SuKUhWpFjJFUaqFoqIiWrdujdlsxmg0EhUVxcsvvwzA\ns88+y+DBg1myZAm9e/emRo0aALRs2RKDwUCrVq0YOXIkL774IqmpqYSHhyOEwN/fn2+++UbLw1IU\npYpQg/oVRVEURVE0prosFUVRFEVRNKYKMkVRFEVRFI2pgkxRFEVRFEVjqiBTFEVRFEXRmCrIFEVR\nFEVRNKYKMkVRFEVRFI39P3d/v+URStPUAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0xbd61ed0>"
]
}
],
"prompt_number": 24
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment