寻找熊猫最大缩幅的开始

时间:2017-07-28 15:26:19

标签: python pandas portfolio

我对Python,Pandas和一般的投资组合统计数据都很陌生。我有一个包含不同资产和超过4000行返回数字的大型投资组合。我正在尝试计算每个资产(列)的最高N max下降的开始,结束和持续时间。我正在使用Pandas库,我在我的下拉列表中应用nsmallest()来找出最大n个最小值,即最大下降值,然后我遍历列并将每个资产的最大下拉值添加到ndrawdown列表中。但是,我很难找到这些下降和持续时间的开始。这就是我到目前为止所做的:

def max_drawdown(self, ddcount):

    returns = self.df
    maxd = returns.cummax()
    dd = returns/maxd - 1.0


             def finddrawdowns(n, count=ddcount):
             dd1 = dd.nsmallest(count, dd.columns[n])
             d = dd1[dd1.columns[n]]
             return d 

    ndrawdowns = []
    for a in range(0, length):
        values = finddrawdowns(a)
        ndrawdowns.append(values)

    return ndrawdowns

欢迎任何建议!谢谢!

0 个答案:

没有答案