Skip to content

Instantly share code, notes, and snippets.

@snippsat
Created May 16, 2020 18:16
Show Gist options
  • Save snippsat/8c4c7532a0c73b780fda7ddba944944b to your computer and use it in GitHub Desktop.
Save snippsat/8c4c7532a0c73b780fda7ddba944944b to your computer and use it in GitHub Desktop.
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# use future imports for python 3.x forward compatibility\n",
"from __future__ import print_function\n",
"from __future__ import unicode_literals\n",
"from __future__ import division\n",
"from __future__ import absolute_import\n",
"\n",
"# other imports\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import datetime\n",
"from talib.abstract import *\n",
"\n",
"# project imports\n",
"import pinkfish as pf\n",
"\n",
"# format price data\n",
"pd.options.display.float_format = '{:0.2f}'.format\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# set size of inline plots\n",
"'''note: rcParams can't be in same cell as import matplotlib\n",
" or %matplotlib inline\n",
" \n",
" %matplotlib notebook: will lead to interactive plots embedded within\n",
" the notebook, you can zoom and resize the figure\n",
" \n",
" %matplotlib inline: only draw static images in the notebook\n",
"'''\n",
"plt.rcParams[\"figure.figsize\"] = (10, 7)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"symbol = '^GSPC'\n",
"#symbol = 'SPY'\n",
"#symbol = '^DJI'\n",
"#symbol = 'DJA'\n",
"#symbol = 'DIA'\n",
"#symbol = 'QQQ'\n",
"#symbol = 'IWM'\n",
"#symbol = 'TLT'\n",
"#symbol = 'GLD'\n",
"#symbol = 'AAPL'\n",
"#symbol = 'BBRY'\n",
"capital = 10000\n",
"#start = datetime.datetime(1900, 1, 1)\n",
"start = datetime.datetime.strptime(pf.SP500_BEGIN, '%Y-%m-%d')\n",
"end = datetime.datetime.now()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"use_adj = False"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>high</th>\n",
" <th>low</th>\n",
" <th>open</th>\n",
" <th>close</th>\n",
" <th>volume</th>\n",
" <th>adj_close</th>\n",
" </tr>\n",
" <tr>\n",
" <th>date</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1971-01-04</th>\n",
" <td>92.19</td>\n",
" <td>90.64</td>\n",
" <td>92.15</td>\n",
" <td>91.15</td>\n",
" <td>10010000</td>\n",
" <td>91.15</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-05</th>\n",
" <td>92.28</td>\n",
" <td>90.69</td>\n",
" <td>91.15</td>\n",
" <td>91.80</td>\n",
" <td>12600000</td>\n",
" <td>91.80</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-06</th>\n",
" <td>93.00</td>\n",
" <td>91.50</td>\n",
" <td>91.80</td>\n",
" <td>92.35</td>\n",
" <td>16960000</td>\n",
" <td>92.35</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-07</th>\n",
" <td>93.26</td>\n",
" <td>91.75</td>\n",
" <td>92.35</td>\n",
" <td>92.38</td>\n",
" <td>16460000</td>\n",
" <td>92.38</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-08</th>\n",
" <td>93.02</td>\n",
" <td>91.60</td>\n",
" <td>92.38</td>\n",
" <td>92.19</td>\n",
" <td>14100000</td>\n",
" <td>92.19</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" high low open close volume adj_close\n",
"date \n",
"1971-01-04 92.19 90.64 92.15 91.15 10010000 91.15\n",
"1971-01-05 92.28 90.69 91.15 91.80 12600000 91.80\n",
"1971-01-06 93.00 91.50 91.80 92.35 16960000 92.35\n",
"1971-01-07 93.26 91.75 92.35 92.38 16460000 92.38\n",
"1971-01-08 93.02 91.60 92.38 92.19 14100000 92.19"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ts = pf.fetch_timeseries(symbol)\n",
"ts = pf.select_tradeperiod(ts, start, end, use_adj)\n",
"ts.head()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>high</th>\n",
" <th>low</th>\n",
" <th>open</th>\n",
" <th>close</th>\n",
" <th>volume</th>\n",
" <th>adj_close</th>\n",
" <th>sma50</th>\n",
" <th>sma200</th>\n",
" </tr>\n",
" <tr>\n",
" <th>date</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1971-01-04</th>\n",
" <td>92.19</td>\n",
" <td>90.64</td>\n",
" <td>92.15</td>\n",
" <td>91.15</td>\n",
" <td>10010000</td>\n",
" <td>91.15</td>\n",
" <td>nan</td>\n",
" <td>nan</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-05</th>\n",
" <td>92.28</td>\n",
" <td>90.69</td>\n",
" <td>91.15</td>\n",
" <td>91.80</td>\n",
" <td>12600000</td>\n",
" <td>91.80</td>\n",
" <td>nan</td>\n",
" <td>nan</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-06</th>\n",
" <td>93.00</td>\n",
" <td>91.50</td>\n",
" <td>91.80</td>\n",
" <td>92.35</td>\n",
" <td>16960000</td>\n",
" <td>92.35</td>\n",
" <td>nan</td>\n",
" <td>nan</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-07</th>\n",
" <td>93.26</td>\n",
" <td>91.75</td>\n",
" <td>92.35</td>\n",
" <td>92.38</td>\n",
" <td>16460000</td>\n",
" <td>92.38</td>\n",
" <td>nan</td>\n",
" <td>nan</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1971-01-08</th>\n",
" <td>93.02</td>\n",
" <td>91.60</td>\n",
" <td>92.38</td>\n",
" <td>92.19</td>\n",
" <td>14100000</td>\n",
" <td>92.19</td>\n",
" <td>nan</td>\n",
" <td>nan</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" high low open close volume adj_close sma50 sma200\n",
"date \n",
"1971-01-04 92.19 90.64 92.15 91.15 10010000 91.15 nan nan\n",
"1971-01-05 92.28 90.69 91.15 91.80 12600000 91.80 nan nan\n",
"1971-01-06 93.00 91.50 91.80 92.35 16960000 92.35 nan nan\n",
"1971-01-07 93.26 91.75 92.35 92.38 16460000 92.38 nan nan\n",
"1971-01-08 93.02 91.60 92.38 92.19 14100000 92.19 nan nan"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sma50 = SMA(ts, timeperiod=50)\n",
"ts['sma50'] = sma50\n",
"\n",
"sma200 = SMA(ts, timeperiod=200)\n",
"ts['sma200'] = sma200\n",
"\n",
"ts.head()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x17ee632bd88>"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAmoAAAGPCAYAAADss/zTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nOzdeZyP9f7/8cd7FjOWGTvNGBpRjGEaTNaQXQkpSV8VUUjnV7ScLOe0HlLnVNIiSUUpoaQTaXfIEkMku8oyQ2MdDGbM8v79cV0zDcbMkM98Znneb7fP7XNd7+t6X5/XNZ3b6dV7NdZaRERERKTw8fF2ACIiIiKSMyVqIiIiIoWUEjURERGRQkqJmoiIiEghpURNREREpJBSoiYiIiJSSPl5OwBPqVKlig0PD/d2GCIiIiJ5WrNmzUFrbdWzyz2WqBljAoElQID7O3OttU8YY54E7gUOuLeOsdYudOuMBgYD6cAD1tov3fKmwLtAaWAh8KDNYwG48PBwYmNjL/VriYiIiFxyxphdOZV7skUtBehgrU0yxvgDPxhjvnCvvWSt/c9ZATYA+gGRQCjwjTHmKmttOjAZGAKsxEnUugFfICIiIlKMeWyMmnUkuaf+7ie3VrBewCxrbYq19ndgB9DMGBMCBFtrV7itaDOAmzwVt4iIiEhh4dHJBMYYX2PMOmA/8LW19kf30t+MMT8bY942xlR0y2oAe7JVj3PLarjHZ5eLiIiIFGsenUzgdltGG2MqAPOMMQ1xujGfwWldewZ4ARgEmJwekUv5OYwxQ3C6SKlVq9Y511NTU4mLiyM5OfnCX6aECQwMJCwsDH9/f2+HIiIiUmIVyKxPa22iMWYx0C372DRjzFTgc/c0DqiZrVoYsNctD8uhPKffeRN4EyAmJuacZC4uLo6goCDCw8MxJqf8TwCstRw6dIi4uDhq167t7XBERERKLI91fRpjqrotaRhjSgOdgC3umLNMvYFf3OPPgH7GmABjTG3gSmCVtXYfcNwY08I42dVdwPyLiSk5OZnKlSsrScuDMYbKlSur5VFERMTLPNmiFgJMN8b44iSEs621nxtj3jPGRON0X+4EhgJYazcaY2YDm4A04H636xTgPv5cnuML/sKMTyVp+aO/k4iIiPd5LFGz1v4MNM6h/M5c6owDxuVQHgs0vKQBFhJPPvkk5cqV45FHHvF2KCIiIlLIaAspERERkUJKiVoBmzFjBlFRUVx99dXceeeZjYvr1q2jRYsWREVF0bt3b44cOQLApEmTaNCgAVFRUfTr1w+AEydOMGjQIK655hoaN27M/PkXNWxPRERECrFiu9dnXkaMGMG6desu6TOjo6OZOHHiea9v3LiRcePGsWzZMqpUqcLhw4eZNGlS1vW77rqLV155hXbt2vH444/z1FNPMXHiRCZMmMDvv/9OQEAAiYmJAIwbN44OHTrw9ttvk5iYSLNmzejUqRNly5a9pO8kIiIi3qMWtQL03Xff0adPH6pUqQJApUqVsq4dPXqUxMRE2rVrB8CAAQNYsmQJAFFRUfTv35/3338fPz8nt/7qq6+YMGEC0dHRXHfddSQnJ7N79+4CfiMRERHxpBLbopZby5enWGsvajblggULWLJkCZ999hnPPPMMGzduxFrLxx9/TL169TwQqYiIiHjS+vXrSU5Opnnz5rnepxa1AtSxY0dmz57NoUOHADh8+HDWtfLly1OxYkWWLl0KwHvvvUe7du3IyMhgz549tG/fnueff57ExESSkpLo2rUrr7zyCs72p/DTTz8V/AuJiIjIRYmOjqZFixZ53ldiW9S8ITIykrFjx9KuXTt8fX1p3Lgx4eHhWdenT5/OsGHDOHnyJFdccQXvvPMO6enp3HHHHRw9ehRrLSNHjqRChQr885//ZMSIEURFRWGtJTw8nM8///z8Py4iIiJFjslskSluYmJibGxs7BllmzdvJiIiwksRFT36e4mIiHhG5lCozDzMGLPGWhtz9n3q+hQREREpQOnp6Xnf5FKiJiIiIlKAvvgi/zthKlETERERKUA9evTI971K1EREREQKKSVqIiIiIoWUEjURERGRQkrrqBVx4eHhBAUF4evri5+fH5lLkhw+fJjbbruNnTt3Eh4ezuzZs6lYsaKXoxURERFwWsryszu3WtSKge+//55169aRfd24CRMm0LFjR7Zv307Hjh2ZMGGCFyMUERGR7P4D/AaQkZHrfUrUCtCJEyfo3r07V199NQ0bNuSjjz4iPDycMWPG0LJlS2JiYli7di1du3alTp06vPHGGwAkJSXRsWNHmjRpQqNGjZg/f36evzV//nwGDBgAOBu8f/rppx59NxEREclb5gK3I4EqAHFxud5fcrs+R4yAdesu7TOj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\n",
"text/plain": [
"<Figure size 720x504 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure()\n",
"axes = fig.add_subplot(111, ylabel='Price in $')\n",
"\n",
"ts['close'].plot(ax=axes, label='close', color='k')\n",
"ts['sma50'].plot(ax=axes, label='sma50', color='r')\n",
"ts['sma200'].plot(ax=axes, label='sma200', color='b')\n",
"plt.legend(loc='best')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"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.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment