refactor: Modify stacked_imbalance to return list of prices instead of max price

This commit is contained in:
Joe Schr
2025-01-03 16:21:54 +01:00
parent 471df70f62
commit fb4aae080b
+10 -8
View File
@@ -269,16 +269,18 @@ def stacked_imbalance(
int_series.groupby((int_series != int_series.shift()).cumsum()).cumcount() + 1 int_series.groupby((int_series != int_series.shift()).cumsum()).cumcount() + 1
) )
max_stacked_imbalance_idx = stacked.index[stacked >= stacked_imbalance_range] stacked_imbalance_idx = stacked.index[stacked >= stacked_imbalance_range]
stacked_imbalance_price = np.nan stacked_imbalance_prices = []
if not max_stacked_imbalance_idx.empty:
idx = ( if not stacked_imbalance_idx.empty:
max_stacked_imbalance_idx[0] indices = (
stacked_imbalance_idx
if not should_reverse if not should_reverse
else np.flipud(max_stacked_imbalance_idx)[0] else np.flipud(stacked_imbalance_idx)
) )
stacked_imbalance_price = imbalance.index[idx] stacked_imbalance_prices = [float(imbalance.index[idx]) for idx in indices]
return stacked_imbalance_price
return stacked_imbalance_prices if stacked_imbalance_prices else [np.nan]
def stacked_imbalance_ask(df: pd.DataFrame, stacked_imbalance_range: int): def stacked_imbalance_ask(df: pd.DataFrame, stacked_imbalance_range: int):