Administrator
2023-11-13 3b780d07ed8c39cf43daa1e6eba22ae2aeb1c6a9
A类服务器切换
4个文件已修改
71 ■■■■ 已修改文件
huaxin_client/l1_client.py 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
huaxin_client/l2_client.py 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
huaxin_client/trade_client.py 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2/l2_data_manager_new.py 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
huaxin_client/l1_client.py
@@ -11,6 +11,12 @@
from huaxin_client import tool, constant
from log_module.log import logger_system, logger_local_huaxin_l1, logger_l2_codes_subscript
################B类##################
# ADDRESS = "udp://224.224.1.19:7880"
################A类##################
ADDRESS = "udp://224.224.1.9:7880"
level1_data_dict = {
}
@@ -194,9 +200,12 @@
    # api.RegisterNameServer('tcp://224.224.3.19:7888')
    # api.RegisterNameServer('tcp://10.0.1.101:52370,tcp://10.0.1.101:62370')
    # -------------------------正式地址-------------------------------
    # -------------------------正式地址B类-------------------------------
    api.RegisterMulticast("udp://224.224.1.19:7880", None, "")
    # -------------------------正式地址A类-------------------------------
    # api.RegisterMulticast("udp://224.224.1.9:7880", None, "")
    # 启动接口
    api.Init()
huaxin_client/l2_client.py
@@ -20,11 +20,17 @@
    logger_local_huaxin_g_cancel, logger_l2_codes_subscript
from utils import tool
###B类###
# Front_Address = "tcp://10.0.1.101:6900"
# Multicast_Address = "udp://224.224.2.19:7889"
# Multicast_Address2 = "udp://224.224.224.234:7890"
# Local_Interface_Address = "192.168.84.75"
###A类###
Front_Address = "tcp://10.0.1.101:6900"
Multicast_Address = "udp://224.224.2.19:7889"
Multicast_Address2 = "udp://224.224.224.234:7890"
Local_Interface_Address = "192.168.84.75"
Sender_Interface_Address = "10.0.1.101"
Multicast_Address = "udp://224.224.22.3:8889"
Multicast_Address2 = "udp://224.224.224.231:4889"
Local_Interface_Address = "172.16.22.111"
g_SubMarketData = False
g_SubTransaction = False
@@ -503,13 +509,14 @@
    else:
        # case 1 从一个组播地址收取行情
        api.RegisterMulticast(Multicast_Address, Local_Interface_Address, "")
        api.RegisterMulticast(Multicast_Address2, Local_Interface_Address, "")
    # case 2:注册多个组播地址同时收行情
    # api.RegisterMulticast(Multicast_Address, Local_Interface_Address, Sender_Interface_Address);
    # api.RegisterMulticast(Multicast_Address2, Local_Interface_Address, Sender_Interface_Address);
    # api.RegisterMulticast(Multicast_Address, Local_Interface_Address, "");
    # api.RegisterMulticast(Multicast_Address2, Local_Interface_Address, "");
    # case 3:efvi模式收行情
    # api.RegisterMulticast(Multicast_Address, Local_Interface_Address, Sender_Interface_Address, "enp101s0f0",4096, True);
    # api.RegisterMulticast(Multicast_Address, Local_Interface_Address, "", "enp101s0f0",4096, True);
    # case 1 不绑核运行
    api.Init()
huaxin_client/trade_client.py
@@ -34,6 +34,16 @@
# 深市股东账号
SZSE_ShareHolderID = '0345104949'
########B类########
# LOCAL_IP = "192.168.84.75"
# FRONT_ADDRESS = "tcp://192.168.84.31:6500"
# FRONT_ADDRESS1 = "tcp://192.168.84.32:26500"
########A类########
LOCAL_IP = "192.168.10.111"
FRONT_ADDRESS = "tcp://10.224.123.143:6500"
FRONT_ADDRESS1 = "tcp://10.224.123.147:26500"
# # 仿真
# from mylog import logger_trade_debug
#
@@ -92,7 +102,7 @@
        cls.__front_id = front_id
    # sinfo char(32)
    def buy(self, code, count, price, sinfo, order_ref, shadow_price = None):
    def buy(self, code, count, price, sinfo, order_ref, shadow_price=None):
        if not ENABLE_ORDER:
            return
        if sinfo in self.__buy_sinfo_set:
@@ -153,7 +163,6 @@
        其它字段置空
        '''
        # 给L2发送消息
        ret = api.ReqOrderInsert(req_field, self.req_id)
        if ret != 0:
@@ -515,7 +524,7 @@
            # UserProductInfo填写终端名称
            login_req.UserProductInfo = 'jiabei'
            # 按照监管要求填写终端信息
            login_req.TerminalInfo = 'PC;IIP=NA;IPORT=NA;LIP=192.168.84.75;MAC=5C6F69CC2B40;HD=004bc76004aff0882b9052ba0eb00506;@jiabei'
            login_req.TerminalInfo = f'PC;IIP=NA;IPORT=NA;LIP={LOCAL_IP};MAC=5C6F69CC2B40;HD=004bc76004aff0882b9052ba0eb00506;@jiabei'
            # 以下内外网IP地址若不填则柜台系统自动采集,若填写则以终端填值为准报送
            # login_req.MacAddress = '5C-87-9C-96-F3-E3'
            # login_req.InnerIPAddress = '10.0.1.102'
@@ -884,7 +893,8 @@
                        req_rid_dict[sinfo] = (client_id, request_id, sk, order_ref)
                    # threading.Thread(target=lambda: self.__tradeSimpleApi.buy(code, volume, price, sinfo, order_ref),
                    #                  daemon=True).start()
                    self.trade_thread_pool.submit(self.__tradeSimpleApi.buy, code, volume, price, sinfo, order_ref, shadow_price)
                    self.trade_thread_pool.submit(self.__tradeSimpleApi.buy, code, volume, price, sinfo, order_ref,
                                                  shadow_price)
                    async_log_util.info(logger_trade, f"{code}华鑫本地下单线程结束")
                except Exception as e:
@@ -998,9 +1008,13 @@
    if 1:  # 模拟环境,TCP 直连Front方式
        # 注册单个交易前置服务地址
        ##B类服务器##
        api.RegisterFront(FRONT_ADDRESS)  # 正式环境主地址
        api.RegisterFront(FRONT_ADDRESS1)  # 正式环境备用地址
        api.RegisterFront("tcp://192.168.84.31:6500")  # 正式环境主地址
        api.RegisterFront("tcp://192.168.84.32:26500")  # 正式环境备用地址
        ##A类服务器##
        # api.RegisterFront("tcp://10.224.123.143:6500")  # 正式环境主地址
        # api.RegisterFront("tcp://10.224.123.147:26500")  # 正式环境备用地址
        # TD_TCP_FrontAddress = "tcp://210.14.72.21:4400"  # 仿真交易环境
        # TD_TCP_FrontAddress = "tcp://210.14.72.15:4400"  # 24小时环境A套
l2/l2_data_manager_new.py
@@ -1116,15 +1116,14 @@
                order_begin_pos.count = 0
                order_begin_pos.buy_single_index = buy_single_index
                if order_begin_pos.sell_info:
                    if float(total_datas[buy_single_index]["val"]["price"]) >= 3 and cls.volume_rate_info[code][0] > 0.3:
                    if float(total_datas[buy_single_index]["val"]["price"]) >= 3 and cls.volume_rate_info[code][0] > 0.3 and sell_info[1] > 2000 * 10000:
                        # 暂时打8折
                        order_begin_pos.threshold_money = int(sell_info[1] * 0.8)
                        # order_begin_pos.threshold_money = int(sell_info[1] * 0.8)
                        # 深证总卖大于1000万的票,m值打5折
                        if sell_info[1] > 1000 * 10000:
                            if code.find('00') == 0:
                                order_begin_pos.threshold_money = int(sell_info[1] * 0.5)
                            else:
                                order_begin_pos.threshold_money = int(sell_info[1] * 0.7)
                        if code.find('00') == 0:
                            order_begin_pos.threshold_money = int(sell_info[1] * 0.6)
                        else:
                            order_begin_pos.threshold_money = int(sell_info[1] * 0.7)
                    else:
                        order_begin_pos.threshold_money = int(sell_info[1])
                l2_log.debug(code, "获取到买入信号起始点:{} ,计算范围:{}-{} ,量比:{},是否板上买:{},数据:{} 模式:{}({})", buy_single_index,