Files
catalyst/zipline/examples/buyapple.ipynb
T

163 KiB
Raw Blame History

In [1]:
%matplotlib inline
import zipline
In [2]:
%%zipline --start=2011-1-1 --end=2013-1-1 -o perf

from zipline.api import order, record, symbol
import matplotlib.pyplot as plt

def initialize(context):
    pass

def handle_data(context, data):
    order(symbol('AAPL'), 10)
    record(AAPL=data[symbol('AAPL')].price)
    
def analyze(context, perf):
    ax1 = plt.subplot(211)
    perf.portfolio_value.plot(ax=ax1)
    ax2 = plt.subplot(212, sharex=ax1)
    perf.AAPL.plot(ax=ax2)
    plt.gcf().set_size_inches(18, 8)
    plt.show()
In [3]:
perf
Out [3]:
AAPL algo_volatility algorithm_period_return alpha benchmark_period_return benchmark_volatility beta capital_used ending_cash ending_exposure ... short_exposure short_value shorts_count sortino starting_cash starting_exposure starting_value trading_days transactions treasury_period_return
2011-01-03 21:00:00 44.025853 0.000000e+00 0.000000e+00 -0.033600 0.011315 0.000000 0.000000 0.00000 10000000.00000 0.00000 ... 0 0 0 0.000000 10000000.00000 0.00000 0.00000 1 [] 0.0336
2011-01-04 21:00:00 44.255622 3.367492e-07 -3.000000e-08 -0.033607 0.009987 0.141748 0.000002 -442.85622 9999557.14378 442.55622 ... 0 0 0 0.000000 10000000.00000 0.00000 0.00000 2 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0336
2011-01-05 21:00:00 44.617639 3.189365e-06 3.020170e-07 -0.034978 0.015044 0.100231 0.000002 -446.47639 9999110.66739 892.35278 ... 0 0 0 0.000000 9999557.14378 442.55622 442.55622 3 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0350
2011-01-06 21:00:00 44.581568 3.061500e-06 1.998750e-07 -0.034396 0.012889 0.099481 0.000011 -446.11568 9998664.55171 1337.44704 ... 0 0 0 -23565.182910 9999110.66739 892.35278 892.35278 4 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0344
2011-01-07 21:00:00 44.900840 6.772637e-06 1.127691e-06 -0.033335 0.011021 0.093360 -0.000017 -449.30840 9998215.24331 1796.03360 ... 0 0 0 -22849.578256 9998664.55171 1337.44704 1337.44704 5 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0334
2011-01-10 21:00:00 45.746438 2.115034e-05 4.480083e-06 -0.032983 0.009629 0.086675 -0.000078 -457.76438 9997757.47893 2287.32190 ... 0 0 0 -22622.524165 9998215.24331 1796.03360 1796.03360 6 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0332
2011-01-11 21:00:00 45.638232 2.086359e-05 3.909053e-06 -0.033518 0.013390 0.080133 -0.000092 -456.68232 9997300.79661 2738.29392 ... 0 0 0 -3483.780133 9997757.47893 2287.32190 2287.32190 7 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0337
2011-01-12 21:00:00 46.009602 2.139637e-05 6.107273e-06 -0.033794 0.022518 0.084200 -0.000019 -460.39602 9996840.40059 3220.67214 ... 0 0 0 -3509.560955 9997300.79661 2738.29392 2738.29392 8 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0340
2011-01-13 21:00:00 46.177921 2.011778e-05 7.255506e-06 -0.033183 0.020769 0.082298 -0.000025 -462.07921 9996378.32138 3694.23368 ... 0 0 0 -3446.156543 9996840.40059 3220.67214 3220.67214 9 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0334
2011-01-14 21:00:00 46.551958 2.183817e-05 1.021780e-05 -0.033255 0.028307 0.081684 0.000019 -465.81958 9995912.50180 4189.67622 ... 0 0 0 -3450.897073 9996378.32138 3694.23368 3694.23368 10 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0335
2011-01-18 21:00:00 45.505985 5.420647e-05 7.740450e-07 -0.033931 0.029722 0.077794 0.000075 -455.35985 9995457.14195 4550.59850 ... 0 0 0 -467.522948 9995912.50180 4189.67622 4189.67622 11 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0339
2011-01-19 21:00:00 45.264195 5.295654e-05 -1.673855e-06 -0.033781 0.019306 0.094544 0.000122 -452.94195 9995004.20000 4979.06145 ... 0 0 0 -536.976025 9995457.14195 4550.59850 4550.59850 12 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0337
2011-01-20 21:00:00 44.441305 6.419337e-05 -1.075564e-05 -0.034965 0.017986 0.091418 0.000180 -444.71305 9994559.48695 5332.95660 ... 0 0 0 -521.144535 9995004.20000 4979.06145 4979.06145 13 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0347
2011-01-21 21:00:00 43.645134 7.200051e-05 -2.033970e-05 -0.034819 0.020443 0.087940 0.000159 -436.75134 9994122.73561 5673.86742 ... 0 0 0 -518.817098 9994559.48695 5332.95660 5332.95660 14 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0344
2011-01-24 21:00:00 45.078508 1.075741e-04 -1.735835e-06 -0.034472 0.026399 0.086618 0.000348 -451.08508 9993671.65053 6310.99112 ... 0 0 0 -512.296426 9994122.73561 5673.86742 5673.86742 15 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0343
2011-01-25 21:00:00 45.606171 1.080754e-04 5.621447e-06 -0.033536 0.026669 0.083889 0.000322 -456.36171 9993215.28882 6840.92565 ... 0 0 0 -498.601529 9993671.65053 6310.99112 6310.99112 16 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0335
2011-01-26 21:00:00 45.933458 1.060857e-04 1.050075e-05 -0.034490 0.031003 0.081822 0.000343 -459.63458 9992755.65424 7349.35328 ... 0 0 0 -512.522955 9993215.28882 6840.92565 6840.92565 17 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0345
2011-01-27 21:00:00 45.847962 1.031942e-04 9.102816e-06 -0.034220 0.033316 0.079396 0.000341 -458.77962 9992296.87462 7794.15354 ... 0 0 0 -537.649558 9992755.65424 7349.35328 7349.35328 18 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0342
2011-01-28 21:00:00 44.898168 1.172538e-04 -7.073682e-06 -0.033788 0.014869 0.105327 0.000575 -449.28168 9991847.59294 8081.67024 ... 0 0 0 -389.884990 9992296.87462 7794.15354 7794.15354 19 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0336
2011-01-31 21:00:00 45.328314 1.176796e-04 6.389460e-07 -0.034345 0.022646 0.105374 0.000608 -453.58314 9991394.00980 8612.37966 ... 0 0 0 -395.649056 9991847.59294 8081.67024 8081.67024 20 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0342
2011-02-01 21:00:00 46.091090 1.251200e-04 1.510169e-05 -0.034918 0.039717 0.115978 0.000677 -461.21090 9990932.79890 9218.21800 ... 0 0 0 -400.588086 9991394.00980 8612.37966 8612.37966 21 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0348
2011-02-02 21:00:00 45.996243 1.224326e-04 1.317475e-05 -0.035310 0.036887 0.114251 0.000675 -460.26243 9990472.53647 9659.21103 ... 0 0 0 -424.267183 9990932.79890 9218.21800 9218.21800 22 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0352
2011-02-03 21:00:00 45.878689 1.200563e-04 1.067612e-05 -0.035949 0.039328 0.111647 0.000673 -459.08689 9990013.44958 10093.31158 ... 0 0 0 -451.896844 9990472.53647 9659.21103 9659.21103 23 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0358
2011-02-04 21:00:00 46.287460 1.206036e-04 1.963908e-05 -0.036871 0.042325 0.109260 0.000681 -463.17460 9989550.27498 10646.11580 ... 0 0 0 -463.430922 9990013.44958 10093.31158 10093.31158 24 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0368
2011-02-07 21:00:00 47.006150 1.281322e-04 3.613895e-05 -0.036768 0.048830 0.107905 0.000730 -470.36150 9989079.91348 11281.47600 ... 0 0 0 -461.429089 9989550.27498 10646.11580 10646.11580 25 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0368
2011-02-08 21:00:00 47.449657 1.287472e-04 4.675312e-05 -0.037403 0.053219 0.105957 0.000744 -474.79657 9988605.11691 11862.41425 ... 0 0 0 -469.168623 9989079.91348 11281.47600 11281.47600 26 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0375
2011-02-09 21:00:00 47.845070 1.286240e-04 5.660844e-05 -0.036273 0.050285 0.104931 0.000697 -478.75070 9988126.36621 12439.71820 ... 0 0 0 -455.552081 9988605.11691 11862.41425 11862.41425 27 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0365
2011-02-10 21:00:00 47.361489 1.337009e-04 4.400534e-05 -0.036904 0.051072 0.103021 0.000710 -473.91489 9987652.45132 12787.60203 ... 0 0 0 -422.237078 9988126.36621 12439.71820 12439.71820 28 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0370
2011-02-11 21:00:00 47.670074 1.327820e-04 5.230713e-05 -0.036276 0.056860 0.101753 0.000723 -477.00074 9987175.45058 13347.62072 ... 0 0 0 -414.641288 9987652.45132 12787.60203 12787.60203 29 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0364
2011-02-14 21:00:00 47.981327 1.319879e-04 6.099221e-05 -0.036023 0.059381 0.099992 0.000725 -480.11327 9986695.33731 13914.58483 ... 0 0 0 -411.667449 9987175.45058 13347.62072 13347.62072 30 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0362
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2012-11-16 21:00:00 71.116514 5.618301e-03 4.192297e-03 -0.013889 0.081295 0.191082 0.011729 -711.46514 9706253.02397 335669.94608 ... 0 0 0 -2.935129 9706964.48911 333651.12951 333651.12951 473 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0158
2012-11-19 21:00:00 76.244591 5.879154e-03 6.612719e-03 -0.013060 0.102772 0.191416 0.012348 -762.74591 9705490.27806 360636.91543 ... 0 0 0 -2.722651 9706253.02397 335669.94608 335669.94608 474 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0161
2012-11-20 21:00:00 75.594985 5.877550e-03 6.305426e-03 -0.013728 0.103503 0.191214 0.012346 -756.24985 9704734.02821 358320.22890 ... 0 0 0 -2.873132 9705490.27806 360636.91543 360636.91543 475 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0166
2012-11-21 21:00:00 75.701459 5.871421e-03 6.355864e-03 -0.014020 0.106064 0.191018 0.012346 -757.31459 9703976.71362 359581.93025 ... 0 0 0 -2.933896 9704734.02821 358320.22890 358320.22890 476 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0169
2012-11-23 18:00:00 77.022227 5.881984e-03 6.983199e-03 -0.013891 0.120472 0.191042 0.012430 -770.52227 9703206.19135 366625.80052 ... 0 0 0 -2.885262 9703976.71362 359581.93025 359581.93025 477 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0170
2012-11-26 21:00:00 79.452167 5.933219e-03 8.139821e-03 -0.012875 0.118198 0.190850 0.012390 -794.82167 9702411.36968 378986.83659 ... 0 0 0 -2.668056 9703206.19135 366625.80052 366625.80052 478 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0166
2012-11-27 21:00:00 78.811997 5.931551e-03 7.834430e-03 -0.012808 0.112353 0.190692 0.012410 -788.41997 9701622.94971 376721.34566 ... 0 0 0 -2.666485 9702411.36968 378986.83659 378986.83659 479 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0164
2012-11-28 21:00:00 78.564018 5.926152e-03 7.715866e-03 -0.012835 0.121092 0.190572 0.012385 -785.94018 9700837.00953 376321.64622 ... 0 0 0 -2.665345 9701622.94971 376721.34566 376721.34566 480 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0163
2012-11-29 21:00:00 79.429250 5.926881e-03 8.130282e-03 -0.012558 0.125879 0.190395 0.012405 -794.59250 9700042.41703 381260.40000 ... 0 0 0 -2.598175 9700837.00953 376321.64622 376321.64622 481 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0162
2012-11-30 21:00:00 78.879381 5.924147e-03 7.866315e-03 -0.012704 0.126062 0.190197 0.012406 -789.09381 9699253.32322 379409.82261 ... 0 0 0 -2.635477 9700042.41703 381260.40000 381260.40000 482 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0162
2012-12-03 21:00:00 79.002029 5.918076e-03 7.925278e-03 -0.012744 0.120718 0.190034 0.012398 -790.32029 9698463.00293 380789.77978 ... 0 0 0 -2.652430 9699253.32322 379409.82261 379409.82261 483 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0163
2012-12-04 21:00:00 77.608479 5.932444e-03 7.253557e-03 -0.012990 0.118802 0.189843 0.012417 -776.38479 9697686.61814 374848.95357 ... 0 0 0 -2.699883 9698463.00293 380789.77978 380789.77978 484 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0162
2012-12-05 21:00:00 72.613831 6.175693e-03 4.841112e-03 -0.014062 0.120575 0.189649 0.012372 -726.43831 9696960.17983 351450.94204 ... 0 0 0 -2.638616 9697686.61814 374848.95357 374848.95357 485 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0160
2012-12-06 21:00:00 73.752651 6.181496e-03 5.392271e-03 -0.013706 0.124280 0.189466 0.012394 -737.82651 9696222.35332 357700.35735 ... 0 0 0 -2.564139 9696960.17983 351450.94204 351450.94204 486 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0159
2012-12-07 21:00:00 71.867195 6.210549e-03 4.477795e-03 -0.014696 0.127564 0.189280 0.012358 -718.97195 9695503.38137 349274.56770 ... 0 0 0 -2.735365 9696222.35332 357700.35735 357700.35735 487 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0164
2012-12-10 21:00:00 71.404922 6.206427e-03 4.253100e-03 -0.014719 0.127946 0.189086 0.012358 -714.34922 9694789.03215 347741.97014 ... 0 0 0 -2.745126 9695503.38137 349274.56770 349274.56770 488 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0163
2012-12-11 21:00:00 72.964240 6.223235e-03 5.012458e-03 -0.014677 0.135333 0.188945 0.012418 -729.94240 9694059.08975 356065.49120 ... 0 0 0 -2.728224 9694789.03215 347741.97014 347741.97014 489 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0166
2012-12-12 21:00:00 72.642132 6.218018e-03 4.855239e-03 -0.015357 0.135842 0.188752 0.012418 -726.72132 9693332.36843 355220.02548 ... 0 0 0 -2.867480 9694059.08975 356065.49120 356065.49120 490 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0172
2012-12-13 21:00:00 71.387403 6.227560e-03 4.241647e-03 -0.015829 0.128662 0.188619 0.012470 -714.17403 9692618.19440 349798.27470 ... 0 0 0 -2.966252 9693332.36843 355220.02548 355220.02548 491 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0174
2012-12-14 21:00:00 68.705439 6.292247e-03 2.927455e-03 -0.016282 0.123994 0.188454 0.012551 -687.35439 9691930.84001 337343.70549 ... 0 0 0 -2.997439 9692618.19440 349798.27470 349798.27470 492 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0172
2012-12-17 21:00:00 69.923777 6.300007e-03 3.525629e-03 -0.016659 0.137337 0.188444 0.012625 -699.53777 9691231.30224 344024.98284 ... 0 0 0 -3.054194 9691930.84001 337343.70549 337343.70549 493 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0178
2012-12-18 21:00:00 71.954797 6.333091e-03 4.524860e-03 -0.016836 0.150401 0.188421 0.012761 -719.84797 9690511.45427 354737.14921 ... 0 0 0 -3.072124 9691231.30224 344024.98284 344024.98284 494 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0184
2012-12-19 21:00:00 70.931874 6.337186e-03 4.020529e-03 -0.016844 0.141670 0.188315 0.012808 -709.61874 9689801.83553 350403.45756 ... 0 0 0 -3.085890 9690511.45427 354737.14921 354737.14921 495 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0182
2012-12-20 21:00:00 70.314622 6.334684e-03 3.715577e-03 -0.016941 0.147936 0.188161 0.012780 -703.44622 9689098.38931 348057.37890 ... 0 0 0 -3.103211 9689801.83553 350403.45756 350403.45756 496 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0181
2012-12-21 21:00:00 69.991169 6.329414e-03 3.555438e-03 -0.016560 0.137170 0.188099 0.012786 -700.21169 9688398.17762 347156.19824 ... 0 0 0 -3.048816 9689098.38931 348057.37890 348057.37890 497 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0177
2012-12-24 18:00:00 70.104372 6.323138e-03 3.611556e-03 -0.016713 0.134395 0.187920 0.012782 -701.34372 9687696.83390 348418.72884 ... 0 0 0 -3.082421 9688398.17762 347156.19824 347156.19824 498 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0179
2012-12-26 21:00:00 69.138058 6.326216e-03 3.131268e-03 -0.016726 0.128964 0.187766 0.012813 -691.68058 9687005.15332 344307.52884 ... 0 0 0 -3.094058 9687696.83390 348418.72884 348418.72884 499 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0177
2012-12-27 21:00:00 69.415691 6.320563e-03 3.269499e-03 -0.016353 0.127588 0.187581 0.012810 -694.45691 9686310.69641 346384.29809 ... 0 0 0 -3.023706 9687005.15332 344307.52884 344307.52884 500 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0174
2012-12-28 21:00:00 68.678484 6.319787e-03 2.901603e-03 -0.016362 0.115128 0.187566 0.012847 -687.08484 9685623.61157 343392.42000 ... 0 0 0 -3.045813 9686310.69641 346384.29809 346384.29809 501 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0173
2012-12-31 21:00:00 71.721638 6.403634e-03 4.423150e-03 -0.016230 0.134021 0.187750 0.013154 -717.51638 9684906.09519 359325.40638 ... 0 0 0 -2.995648 9685623.61157 343392.42000 343392.42000 502 [{u'commission': 0.3, u'amount': 10, u'sid': 0... 0.0178

502 rows × 39 columns

In [ ]: