diff --git a/core/sfgrid_strategy.py b/core/sfgrid_strategy.py index c125a63..5d9ddfc 100644 --- a/core/sfgrid_strategy.py +++ b/core/sfgrid_strategy.py @@ -61,8 +61,9 @@ class SFGridStrategy: return bool(self.tradeTarget.enabled) def onDataUpdate(self, data): - print(f'|- 标的{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name} 市价更新-START') + print(f'|- 市价更新[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}] - START') self.dataUpdateLock.acquire() + print(f'|- 市价更新[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}] - LOCKED') try: index = self.tradeTarget.grid_index price = sfgrid_constants.grid_price[int(index)] # pyright: ignore[reportArgumentType] @@ -70,7 +71,7 @@ class SFGridStrategy: highPrice = sfgrid_constants.grid_price[int(index) - 1] # pyright: ignore[reportArgumentType] lastPrice = float("{:.3f}".format(data[self.tradeTarget.stock_code]['lastPrice'])) - print(f"|- 标的{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name} 市价信息-价格: {lastPrice}, 网格序号: {index}, 网格价格: {price}, 计划多单价: {lowPrice}, 计划空单价: {highPrice}") + print(f"|- 市价更新[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}] - 价格: {lastPrice}, 网格序号: {index}, 网格价格: {price}, 计划多单价: {lowPrice}, 计划空单价: {highPrice}") if lastPrice <= lowPrice: # 下下方多单 orders = queryPendingOrder(str(self.tradeTarget.stock_code), self.getName(), self.xt_trader, self.account) @@ -111,14 +112,15 @@ class SFGridStrategy: print(f' |- 下网格空单号 {self.tradeTarget.current_sell_order_no}, 网格基准价 {price}, 下单价 {highPrice}, 下单量 {sfgrid_constants.grid_volume}') self.tradeTarget.save() finally: - print('onDataUpdate release lock') + print(f'|- 市价更新[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}] - release lock') self.dataUpdateLock.release() - print(f'|- 标的{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name} 市价更新-END') + print(f'|- 市价更新[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}] - END') def onAsyncOrderResponse(self, order:XtOrderResponse): - print(f' |- 委托下单回调') + print(f' |- 委托回调[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{order.order_id}]:START') self.dataUpdateLock.acquire() + print(f' |- 委托回调[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{order.order_id}]:LOCKED') try: stockCode = order.order_remark orderSeq = order.seq @@ -128,16 +130,17 @@ class SFGridStrategy: elif self.tradeTarget.current_sell_order_no == order.seq: self.tradeTarget.current_sell_order_no = order.order_id else: - print(f' |- 委托回调: 委托单 {order.order_id} {stockCode} {orderSeq} 不在策略监控范围内') + print(f' |- 委托回调[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{order.order_id}]: 不在策略监控范围内') rc = self.tradeTarget.save() finally: - print('onAsyncOrderResponse release lock') + print(f' |- 委托回调[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{order.order_id}]:release lock') self.dataUpdateLock.release() - print(f' |- 委托下单成功[{rc}]: 委托单 {order.order_id} {stockCode} {orderSeq} ') + print(f' |- 委托回调[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{order.order_id}]:END') def onOrderTrade(self, trade:XtTrade): - print(f' |- 委托成交通知') + print(f' |- 委托成交通知[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{trade.order_id}]:START') self.dataUpdateLock.acquire() + print(f' |- 委托成交通知[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{trade.order_id}]:LOCKED') try: if int(self.tradeTarget.status) == 0 and trade.order_id == self.initBuyOrderId : # type: ignore # 此时为建仓成交 @@ -174,6 +177,6 @@ class SFGridStrategy: # 打印订单信息和订单状态 print(f'|- 非策略内部订单,或订单状态不满足监控条件 {trade.order_id} {trade.stock_code}-{trade.instrument_name} {trade.commission}') finally: - print('onOrderTrade release lock') + print(f' |- 委托成交通知[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{trade.order_id}]:release lock') self.dataUpdateLock.release() - print(f' |- 委托成交处理完成 {trade.stock_code}') + print(f' |- 委托成交通知[{self.tradeTarget.stock_code}-{self.tradeTarget.stock_name}-{trade.order_id}]:END')