From 5648819608a812a34a6ec757a2cbed5e5141777d Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 01 九月 2025 16:31:38 +0800 Subject: [PATCH] 动态总大单公式修改 --- utils/huaxin_util.py | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 8 deletions(-) diff --git a/utils/huaxin_util.py b/utils/huaxin_util.py index 189db1e..2ce0e45 100644 --- a/utils/huaxin_util.py +++ b/utils/huaxin_util.py @@ -1,12 +1,17 @@ # 鎶ュ崟鐘舵�� -TORA_TSTP_OST_Cached = 0 # 棰勫煁 -TORA_TSTP_OST_Unknown = 1 # 鏈煡 -TORA_TSTP_OST_Accepted = 2 # 浜ゆ槗鎵�宸叉帴鏀� -TORA_TSTP_OST_PartTraded = 3 # 閮ㄥ垎鎴愪氦 -TORA_TSTP_OST_AllTraded = 4 # 鍏ㄩ儴鎴愪氦 -TORA_TSTP_OST_PartTradeCanceled = 5 # 閮ㄦ垚閮ㄦ挙 -TORA_TSTP_OST_AllCanceled = 6 # 鍏ㄩ儴鎾ゅ崟 -TORA_TSTP_OST_Rejected = 7 # 浜ゆ槗鎵�宸叉嫆缁� +import random +import threading + +from utils import tool + +TORA_TSTP_OST_Cached = '0' # 棰勫煁 +TORA_TSTP_OST_Unknown = '1' # 鏈煡 +TORA_TSTP_OST_Accepted = '2' # 浜ゆ槗鎵�宸叉帴鏀� +TORA_TSTP_OST_PartTraded = '3' # 閮ㄥ垎鎴愪氦 +TORA_TSTP_OST_AllTraded = '4' # 鍏ㄩ儴鎴愪氦 +TORA_TSTP_OST_PartTradeCanceled = '5' # 閮ㄦ垚閮ㄦ挙 +TORA_TSTP_OST_AllCanceled = '6' # 鍏ㄩ儴鎾ゅ崟 +TORA_TSTP_OST_Rejected = '7' # 浜ゆ槗鎵�宸叉嫆缁� TORA_TSTP_OST_SendTradeEngine = '#' # 鍙戝線浜ゆ槗鏍稿績 # 鎶ュ崟浠锋牸鏉′欢 @@ -27,3 +32,39 @@ TORA_TSTP_EXD_SZSE = 2 # 娣卞湷浜ゆ槗鎵� TORA_TSTP_EXD_HK = 3 # 棣欐腐浜ゆ槗鎵� TORA_TSTP_EXD_BSE = 4 # 鍖椾含璇佸埜浜ゆ槗鎵� + + +# 鏄惁鍙互鎾ゅ崟 +def is_can_cancel(state): + if state == TORA_TSTP_OST_Cached or state == TORA_TSTP_OST_Unknown or state == TORA_TSTP_OST_Accepted or state == TORA_TSTP_OST_PartTraded: + return True + return False + + +# 鏄惁宸茬粡鎾ゅ崟 +def is_canceled(state): + if state == TORA_TSTP_OST_AllCanceled or state == TORA_TSTP_OST_PartTradeCanceled: + return True + return False + + +# 鏄惁宸茬粡鎴愪氦 +def is_deal(state): + if state == TORA_TSTP_OST_PartTraded or state == TORA_TSTP_OST_AllTraded or state == TORA_TSTP_OST_PartTradeCanceled: + return True + return False + + +__order_ref_lock = threading.RLock() +__public_order_ref = int(tool.get_now_time_str().replace(":", "")) + + +# 鍒涘缓璁㈠崟寮曠敤 +def create_order_ref(): + __order_ref_lock.acquire() + try: + global __public_order_ref + __public_order_ref += random.randint(5, 20) + return __public_order_ref + finally: + __order_ref_lock.release() -- Gitblit v1.8.0