mirror of
https://github.com/microsoft/qlib.git
synced 2026-07-14 08:16:54 +08:00
fix: gen_training_orders.py bugs
This commit is contained in:
@@ -17,11 +17,11 @@ def generate_order(stock: str, start_idx: int, end_idx: int) -> bool:
|
|||||||
if len(df) == 0 or df.isnull().values.any() or min(df["$volume0"]) < 1e-5:
|
if len(df) == 0 or df.isnull().values.any() or min(df["$volume0"]) < 1e-5:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
df["date"] = df["datetime"].dt.date.astype("datetime64")
|
df["date"] = df["datetime"].dt.date.astype("datetime64[ns]")
|
||||||
df = df.set_index(["instrument", "datetime", "date"])
|
df = df.set_index(["instrument", "datetime", "date"])
|
||||||
df = df.groupby("date", group_keys=False).take(range(start_idx, end_idx)).droplevel(level=0)
|
df = df.groupby("date", group_keys=True).take(range(start_idx, end_idx)).droplevel(level=0)
|
||||||
|
|
||||||
order_all = pd.DataFrame(df.groupby(level=(2, 0), group_keys=False).mean().dropna())
|
order_all = pd.DataFrame(df.groupby(level=(2, 0), group_keys=True).mean().dropna())
|
||||||
order_all["amount"] = np.random.lognormal(-3.28, 1.14) * order_all["$volume0"]
|
order_all["amount"] = np.random.lognormal(-3.28, 1.14) * order_all["$volume0"]
|
||||||
order_all = order_all[order_all["amount"] > 0.0]
|
order_all = order_all[order_all["amount"] > 0.0]
|
||||||
order_all["order_type"] = 0
|
order_all["order_type"] = 0
|
||||||
|
|||||||
Reference in New Issue
Block a user