Administrator
2023-08-18 29015da3d2fc0cdee6b5a2307b87d43f6afc5af8
bug修改
3个文件已修改
113 ■■■■■ 已修改文件
huaxin_api/l2_client.py 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2/l2_data_manager_new.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
test/test.py 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
huaxin_api/l2_client.py
@@ -307,18 +307,18 @@
                # print("逐笔成交", item)
                l2_data_manager.add_transaction_detail(item)
        logger_local_huaxin_l2_transaction.info(
            "OnRtnTransaction SecurityID[%s] TradePrice[%.2f] TradeVolume[%d] TradeTime[%d] MainSeq[%d] SubSeq[%d] BuyNo[%d] SellNo[%d] ExecType[%s]" % (
                pTransaction['SecurityID'],
                pTransaction['TradePrice'],
                pTransaction['TradeVolume'],
                pTransaction['TradeTime'],
                pTransaction['MainSeq'],
                pTransaction['SubSeq'],
                pTransaction['BuyNo'],
                pTransaction['SellNo'],
                pTransaction['ExecType'],
            ))
        # logger_local_huaxin_l2_transaction.info(
        #     "OnRtnTransaction SecurityID[%s] TradePrice[%.2f] TradeVolume[%d] TradeTime[%d] MainSeq[%d] SubSeq[%d] BuyNo[%d] SellNo[%d] ExecType[%s]" % (
        #         pTransaction['SecurityID'],
        #         pTransaction['TradePrice'],
        #         pTransaction['TradeVolume'],
        #         pTransaction['TradeTime'],
        #         pTransaction['MainSeq'],
        #         pTransaction['SubSeq'],
        #         pTransaction['BuyNo'],
        #         pTransaction['SellNo'],
        #         pTransaction['ExecType'],
        #     ))
    def OnRtnOrderDetail(self, pOrderDetail):
        can_listen = False
@@ -349,22 +349,22 @@
        print("逐笔委托", item)
        l2_data_manager.add_l2_order_detail(item)
        logger_local_huaxin_l2_orderdetail.info(
            "OnRtnOrderDetail SecurityID[%s] Price[%.2f] Volume[%d] Side[%s] OrderType[%s] OrderTime[%d] MainSeq[%d] SubSeq[%d] OrderNO[%s] OrderStatus[%s] Info1[%d] Info2[%d] Info3[%d]" % (
                pOrderDetail['SecurityID'],
                pOrderDetail['Price'],
                pOrderDetail['Volume'],
                pOrderDetail['Side'],
                pOrderDetail['OrderType'],
                pOrderDetail['OrderTime'],
                pOrderDetail['MainSeq'],
                pOrderDetail['SubSeq'],
                pOrderDetail['OrderNO'],
                pOrderDetail['OrderStatus'],
                pOrderDetail['Info1'],
                pOrderDetail['Info2'],
                pOrderDetail['Info3']
            ))
        # logger_local_huaxin_l2_orderdetail.info(
        #     "OnRtnOrderDetail SecurityID[%s] Price[%.2f] Volume[%d] Side[%s] OrderType[%s] OrderTime[%d] MainSeq[%d] SubSeq[%d] OrderNO[%s] OrderStatus[%s] Info1[%d] Info2[%d] Info3[%d]" % (
        #         pOrderDetail['SecurityID'],
        #         pOrderDetail['Price'],
        #         pOrderDetail['Volume'],
        #         pOrderDetail['Side'],
        #         pOrderDetail['OrderType'],
        #         pOrderDetail['OrderTime'],
        #         pOrderDetail['MainSeq'],
        #         pOrderDetail['SubSeq'],
        #         pOrderDetail['OrderNO'],
        #         pOrderDetail['OrderStatus'],
        #         pOrderDetail['Info1'],
        #         pOrderDetail['Info2'],
        #         pOrderDetail['Info3']
        #     ))
    def OnRtnBondMarketData(self, pDepthMarketData, FirstLevelBuyNum, FirstLevelBuyOrderVolumes, FirstLevelSellNum,
                            FirstLevelSellOrderVolumes):
l2/l2_data_manager_new.py
@@ -548,7 +548,7 @@
            cancel_data, cancel_msg = h_cancel(buy_single_index, buy_exec_index)
        if not cancel_data:
            cancel_data, cancel_msg = l_cancel(buy_single_index, buy_exec_index)
        l2_log.debug(code, "撤单计算结束")
        # l2_log.debug(code, "撤单计算结束")
        # _start_time = l2_data_log.l2_time(code, tool.get_now_timestamp() - _start_time,
        #                                   "已下单-撤单 判断是否需要撤单")
        if cancel_data:
test/test.py
@@ -1,58 +1,27 @@
import logging
import queue
import threading
import time
from log_module.log import logger_l2_process_time, logger_debug
_dict = {}
class TestInstance:
    __instance = None
    # def __new__(cls, *args, **kwargs):
    #     if not cls.__instance:
    #         cls.__instance = super(TestInstance, cls).__new__(cls, *args, **kwargs)
    #         print(cls.__instance)
    #     return cls.__instance
    def test(self):
        i=1
        _dict["test"]=i+2
_queue = queue.Queue()
def test_time(instance, i):
    start = time.time()
    instance.test()
    logger_debug.info(f"开始:{i}")
    time.time()
    # round(time.time() * 1000) - round(start * 1000)
    logger_debug.info(f"结束:{i}")
    if len(_dict.keys()) == 99:
        total = 0
        for k in _dict:
            total += _dict[k]
        print(total / len(_dict))
def add(index):
    start_time = time.time()
    _queue.put(index)
    end_time = time.time()
    logger_debug.debug(end_time -start_time)
if __name__ == "__main__":
    # for k in range(1):
    #     _dict.clear()
    #     for i in range(0, 100):
    #         threading.Thread(target=lambda: test_time(TestInstance(), i), daemon=True).start()
    #     time.sleep(2)
    print(time.time())
    for i in range(1000):
        # logger_debug.debug("结束")
        TestInstance().test()
        pass
    print(time.time())
    for i in range(1000):
        logger_debug.debug("结束")
        pass
    print(time.time())
    for k in range(1):
        _dict.clear()
        for i in range(0, 1000):
            threading.Thread(target=lambda: add(i), daemon=True).start()
        time.sleep(2)
    input()