import pyfolio as pf
import empyrical as ep
import numpy as np
import pandas as pd
import datetime
bt = get_backtest('5d55118d4a208c60d6636539')
returns = bt.daily_performance['returns']
cum_returns = ep.cum_returns(returns)
ax = cum_returns.plot(figsize=(14,5))
ax.set(title='Cumulative Returns', ylabel='returns', xlabel='date');
benchmark_rets = pf.utils.get_symbol_rets('SPY')
pf.plotting.show_perf_stats(returns, benchmark_rets)
def initialize_log(algo_dict):
return pd.DataFrame(pd.Series(algo_dict), columns=['id']).transpose()
def record_returns(log):
log.loc[pd.Timestamp(datetime.datetime.now())] = \
log.loc['id'].apply(lambda algo_id:
get_live_results(algo_id).cumulative_performance.ix[-1, 'returns'])
def sorted_log(log):
return log[log.loc[log.last_valid_index()].argsort()]
algos = {'Disqualified Algo' : '57949d107e11f595a7000270',
}
df = initialize_log(algos)
record_returns(df)
sorted_log(df)
bt = get_backtest('5d5512876a94c5604b998139')
returns = bt.daily_performance['returns']
cum_returns = ep.cum_returns(returns)
ax = cum_returns.plot(figsize=(14,5))
ax.set(title='Cumulative Returns', ylabel='returns', xlabel='date');
benchmark_rets = pf.utils.get_symbol_rets('SPY')
pf.plotting.show_perf_stats(returns, benchmark_rets)