我有一个数据框,有进入/退出以旧换新栏的信号
long
,索引是date。
长的
看起来像这样(True value表示你持有一个职位,False表示你不再持有一个职位):
2010-01-04 False
2010-01-05 False
2010-01-06 False
2010-01-07 False
2010-01-08 False
2010-01-11 False
2010-01-12 False
2010-01-13 False
2010-01-14 True
2010-01-15 True
2010-01-19 True
2010-01-20 True
2010-01-21 True
2010-01-22 True
2010-01-25 True
2010-01-26 True
2010-01-27 True
2010-01-28 True
2010-01-29 True
2010-02-01 True
2010-02-02 True
2010-02-03 True
2010-02-04 True
2010-02-05 True
2010-02-08 True
2010-02-09 False
2010-02-10 True
2010-02-11 True
2010-02-12 False
2010-02-16 False
所以对于我的数据,我应该得到如下输出
2010-01 1
2010-02 1
我有下面的代码来计算分配中的变化数量,但是我不知道如何有效地按月分割新交易的数量
longs = (df.long-df.long.shift()).ne(0)
在这种情况下,long=4,所以除以2(每两个“勾号”代表一个交易的生命周期)将得到有效的交易数量
如何计算每月开始的交易数量?