pybacktest 的疑点
第(一)节“教程”原文,是用 ipython notebook 写成,程序代码是一些片段组成。
为了阅读方便,合并在一起。
import pybacktest
import pandas as pd
ohlc = pybacktest.load_from_yahoo('SPY')
ohlc.tail()
short_ma = 50
long_ma = 200
ms = pandas.rolling_mean(ohlc.C, short_ma)
ml = pandas.rolling_mean(ohlc.C, long_ma)
buy = cover = (ms > ml) & (ms.shift() < ml.shift()) # ma cross up
sell = short = (ms < ml) & (ms.shift() > ml.shift()) # ma cross down
print '> Short MA\n%s\n' % ms.tail()
print '> Long MA\n%s\n' % ml.tail()
print '> Buy/Cover signals\n%s\n' % buy.tail()
print '> Short/Sell signals\n%s\n' % sell.tail()
bt = pybacktest.Backtest(locals(), 'ma_cross')
print filter(lambda x: not x.startswith('_&