def main():
legend = []
# p0 = Profolio('All short-only')
# for etf in ETFs:
# data = util.get_data(etf, '2016/1/1', '2016/12/31')
# p0.profits -= data.Return
# label, = plt.plot(range(1, 253), p0.accProfits(), 'y--', label=p0.name)
# legend.append(label)
# baseline1 SPY long-only
p1 = Profolio('SPY long-only')
data = util.get_data('SPY', '2016/1/1', '2016/12/31')
p1.profits = data.Return * 9
label, = plt.plot(range(1, 253), p1.accProfits(), 'b--', label=p1.name)
legend.append(label)
# baseline2 All long-only
p2 = Profolio('All long-only')
for etf in ETFs:
data = util.get_data(etf, '2016/1/1', '2016/12/31')
p2.profits += data.Return
label, = plt.plot(range(1, 253), p2.accProfits(), 'g--', label=p2.name)
legend.append(label)
# My strategy
my = Profolio('My strategy')
my.profits = numpy.zeros(252)
for etf in ETFs:
my.profits += smart_trade(etf, 'SVM', 4)
label, = plt.plot(range(1, 253), my.accProfits(), 'r--', label=my.name)
legend.append(label)
plt.legend(handles=legend)
plt.show()
print p1.annualSharpeRatio(), p2.annualSharpeRatio(), my.annualSharpeRatio()
评论列表
文章目录