Exemplo n.º 1
0
 def bootstrap_rules(self, n=10000, **kw):
     z = self.forecast_returns(**kw)
     a = pd.Series({k: v.shape[0] for k, v in z.items()})
     b = (a / a.sum())
     sharpes = []
     corrs = {}
     for k, v in b.iteritems():
         for x in range(0, int(round(v * n))):
             sample = draw_sample(z[k], 252)
             sharpes.append(sharpe(sample).rename(k))
             corrs[(k, x)] = (sample.resample('W').sum().corr())
     return pd.DataFrame(sharpes), pd.Panel(corrs).mean(axis=0)
Exemplo n.º 2
0
 def bootstrap_rules(self, n=10000, **kw):
     z = self.forecast_returns(**kw)
     a = pd.Series({k: v.shape[0] for k, v in z.items()})
     b=(a/a.sum())
     sharpes = []
     corrs = {}
     for k, v in b.iteritems():
         for x in range(0,int(round(v*n))):
             sample = draw_sample(z[k], 252)
             sharpes.append(sharpe(sample).rename(k))
             corrs[(k, x)] = (sample.resample('W').sum().corr())
     return pd.DataFrame(sharpes), pd.Panel(corrs).mean(axis=0)
Exemplo n.º 3
0
 def sharpe(self):
     return sharpe(np.trim_zeros(self.returns().sum(axis=1)))
Exemplo n.º 4
0
 def gross_sharpe(self):
     return sharpe(
         np.trim_zeros((self.position_returns() -
                        self.transaction_returns()).sum(axis=1)))
Exemplo n.º 5
0
 def sharpe(self):
     return sharpe(np.trim_zeros(self.returns().sum(axis=1)))
Exemplo n.º 6
0
 def gross_sharpe(self):
     return sharpe(np.trim_zeros((self.position_returns() - self.transaction_returns()).sum(axis=1)))