Administrator
2024-06-06 cf6f6207116803318e16705999f122fa3eceff3d
huaxin_client/l1_client_for_output.py
@@ -89,21 +89,21 @@
        else:
            printlog('Login fail!!! [%d] [%d] [%s]'
                  % (nRequestID, pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
                     % (nRequestID, pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
    def OnRspSubMarketData(self, pSpecificSecurityField, pRspInfoField):
        if pRspInfoField.ErrorID == 0:
            printlog('OnRspSubMarketData: OK!')
        else:
            printlog('OnRspSubMarketData: Error! [%d] [%s]'
                  % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
                     % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
    def OnRspUnSubMarketData(self, pSpecificSecurityField, pRspInfoField):
        if pRspInfoField.ErrorID == 0:
            printlog('OnRspUnSubMarketData: OK!')
        else:
            printlog('OnRspUnSubMarketData: Error! [%d] [%s]'
                  % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
                     % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
    def OnRtnMarketData(self, pMarketDataField):
        if pMarketDataField.SecurityName.find("S") == 0:
@@ -143,6 +143,21 @@
    # 上传数据
def __get_target_codes():
    data_bytes = socket_util.load_header(json.dumps({"type": "get_l1_target_codes", "data": {}}).encode("utf-8"))
    # 上传数据
    sk = socket_util.create_socket(SERVER_HOST, SERVER_PORT)
    try:
        sk.sendall(data_bytes)
        datas_str, header_str = socket_util.recv_data(sk)
        data = json.loads(datas_str)
        if data['code'] == 0:
            return data['data']
    finally:
        sk.close()
    return None
is_re_subscript = False
@@ -179,10 +194,18 @@
    codes_sh = []
    codes_sz = []
    for i in range(15):
        # 拉取数据
        try:
            codes_sh, codes_sz = l1_subscript_codes_manager.get_codes()
            logger_local_huaxin_l1.info(f"获取上证,深证代码数量:sh-{len(codes_sh)} sz-{len(codes_sz)}")
            break
            codes = __get_target_codes()
            if codes:
                # 分离代码
                for code in codes:
                    market = tool.get_market_type(code)
                    if market == tool.MARKET_TYPE_SZSE:
                        codes_sz.append(code.encode('utf-8'))
                    elif market == tool.MARKET_TYPE_SSE:
                        codes_sh.append(code.encode('utf-8'))
                break
        except Exception as e:
            logger_local_huaxin_l1.exception(e)
            time.sleep(4)