diff --git a/hts/OrderChecker.py b/hts/OrderChecker.py index 001a709..be52611 100644 --- a/hts/OrderChecker.py +++ b/hts/OrderChecker.py @@ -2,8 +2,8 @@ import os import pandas as pd from datetime import datetime, timedelta -class OrderChecker: +class OrderChecker: RESOURCE_PATH = None order_df = None @@ -45,8 +45,11 @@ class OrderChecker: order_df = self.read(ymd) # 새로운 주문을 추가한다. - order_df = order_df.append({"stock_code": "A" + stock_code, "type": 0, "orderNum": str(orderNum), "canceled": 0, "count": count, "price": price, "datetime": datetime.now()}, ignore_index=True) - order_df = order_df.astype({"stock_code": str, "type": int, "orderNum": str, "canceled": int, "count": int, "price": int}) + order_df = order_df.append( + {"stock_code": "A" + stock_code, "type": 0, "orderNum": str(orderNum), "canceled": 0, "count": count, + "price": price, "datetime": datetime.now()}, ignore_index=True) + order_df = order_df.astype( + {"stock_code": str, "type": int, "orderNum": str, "canceled": int, "count": int, "price": int}) # 파일로 기록한다. saveFileName = os.path.join(self.RESOURCE_PATH, "etf_order", ymd + ".csv") @@ -73,7 +76,7 @@ class OrderChecker: now = datetime.now() - timedelta(minutes=min) # min 분 이상 된 시간인 내용을 가지고 옴 - df = order_df.loc[(order_df.index <= now) ] + df = order_df.loc[(order_df.index <= now)] # 취소가 되지 않은 것만 가지고 옴 (0: 취소 되지 않음, 1: 취소함) df = df.loc[(order_df["canceled"] == 0)] @@ -83,4 +86,11 @@ class OrderChecker: saveFileName = os.path.join(self.RESOURCE_PATH, "etf_order", ymd + ".csv") order_df.to_csv(saveFileName, index=False) - return True \ No newline at end of file + orderListToCancel = [] + if ORDER_LIST is not None and len(ORDER_LIST) > 0: + orderNumSet = set(list(df["orderNum"])) + for item in ORDER_LIST: + if item.orderNum in orderNumSet: + orderListToCancel.append(item) + + return orderListToCancel