add total return

master
Dmitry Maylarov 4 years ago
parent e4701b3d45
commit 2392692f2a

@ -43,7 +43,7 @@ def run(strategy, data, fund_mode=False):
) )
thestrats = cerebro.run() thestrats = cerebro.run()
thestrat = thestrats[0] thestrat = thestrats[0]
cerebro.plot(iplot=False, style="candlestick") # cerebro.plot(iplot=False, style="candlestick")
return thestrat return thestrat
@ -61,6 +61,7 @@ if __name__ == "__main__":
"max_dd", "max_dd",
"max_md", "max_md",
"twr", "twr",
"tr",
] ]
) )
@ -79,9 +80,8 @@ if __name__ == "__main__":
therun = run(strategy, data) therun = run(strategy, data)
dd = therun.analyzers.drawdown dd = therun.analyzers.drawdown
ret = therun.analyzers.returns ret = therun.analyzers.returns
# tr = thestrat.analyzers.tr tr = therun.analyzers.tr
# print(next(reversed(tr.get_analysis()))) # print(next(reversed(tr.get_analysis())))
# print(tr.get_analysis())
params = therun.calc_params() params = therun.calc_params()
annual = 100 * ( annual = 100 * (
(1 + params[0] / 100) ** (365 / (endDate - actualStart).days) - 1 (1 + params[0] / 100) ** (365 / (endDate - actualStart).days) - 1
@ -92,6 +92,7 @@ if __name__ == "__main__":
dd.get_analysis().max.drawdown, dd.get_analysis().max.drawdown,
dd.get_analysis().max.moneydown, dd.get_analysis().max.moneydown,
ret.get_analysis()["vwr"], ret.get_analysis()["vwr"],
list(tr.get_analysis().items())[0][1],
) )
print("Starting from:", actualStart) print("Starting from:", actualStart)
print("Time in Market: {:.1f} years".format((endDate - actualStart).days / 365)) print("Time in Market: {:.1f} years".format((endDate - actualStart).days / 365))

Loading…
Cancel
Save