Untitled
unknown
python
2 years ago
1.3 kB
22
Indexable
#========================================================
def volume_bars(df, volume_column, m):
'''
compute volume bars
# args
df: pd.DataFrame()
column: name for volume data
m: int(), threshold value for volume
# returns
idx: list of indices
'''
t = df[volume_column]
ts = 0
idx = []
for i, x in enumerate(tqdm(t)):
ts += x
if ts >= m:
idx.append(i)
ts = 0
continue
return idx
def volume_bar_df(df, volume_column, m):
idx = volume_bars(df, volume_column, m)
return df.iloc[idx]
#========================================================
def dollar_bars(df, dv_column, m):
'''
compute dollar bars
# args
df: pd.DataFrame()
column: name for dollar volume data
m: int(), threshold value for dollars
# returns
idx: list of indices
'''
t = df[dv_column]
ts = 0
idx = []
for i, x in enumerate(tqdm(t)):
ts += x
if ts >= m:
idx.append(i)
ts = 0
continue
return idx
def dollar_bar_df(df, dv_column, m):
idx = dollar_bars(df, dv_column, m)
return df.iloc[idx]
#========================================================Editor is loading...