[英]How to calculate the average hours between two different times in Python
[英]Python: how to calculate average length of times when a variable=yes
我有一組 EURUSD 數據並正在尋找套利機會。 數據格式如照片所示。
buy_b_sell_A>0
mispricing_1=yes
當 buy_b_sell_A>0 時 mispricing_2 mispricing_2=yes
當buy_A_sell_B>0
在照片中沒有數據點exploitable=yes
但是當buy_b_sell_A>6
或當buy_A_sell_B>6
時,我們得到exploitable=yes
我希望計算存在可利用套利機會的平均時間長度,由exploitable=yes
顯示
如何計算連續exploitable=yes
的時間長度,以便我可以 plot 分布然后計算平均值?
df=pd.DataFrame(data={'ts':list(range(1,14)),
'mp':[0,0,1,1,1,0,0,1,1,0,0,1,0]}) # your data
df.loc[df.mp.diff(1)==1, 'ts1'] = df.ts # TS1
df.loc[df.mp.diff(1)==-1, 'ts2'] = df.ts # TS2
df=df[~(df.ts1.isna())|~(df.ts2.isna())] # keep only rows with changes
df.loc[~df.ts2.isna(), 'delta'] = df.ts2 - df.ts1.shift(1) # TS2-TS1
print (df)
如果你把它作為一個熊貓框架導入,我們稱之為 df,你可以做 df.groupby['exploitable'].mean 你可以做.histogram 或其他東西來分發。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.