Administrator
2023-07-24 0e68e24f54db11d340785b17570fff2bc5fc7ac6
l2/l2_data_util.py
@@ -12,12 +12,11 @@
import numpy
import constant
import gpcode_manager
import l2_data_util
from code_attribute import gpcode_manager
from l2 import l2_data_log, l2_data_source_util
import log
from log_module import log
from db import redis_manager
import tool
from utils import tool
_redisManager = redis_manager.RedisManager(1)
# l2数据管理
@@ -33,17 +32,18 @@
local_today_buyno_map = {}
def load_l2_data(code, force=False):
def load_l2_data(code, load_latest=True, force=False):
    redis = _redisManager.getRedis()
    # 加载最近的l2数据
    if local_latest_datas.get(code) is None or force:
        # 获取最近的数据
        _data = redis.get("l2-data-latest-{}".format(code))
        if _data is not None:
            if code in local_latest_datas:
                local_latest_datas[code] = json.loads(_data)
            else:
                local_latest_datas.setdefault(code, json.loads(_data))
    if load_latest :
        if local_latest_datas.get(code) is None or force:
            # 获取最近的数据
            _data = redis.get("l2-data-latest-{}".format(code))
            if _data is not None:
                if code in local_latest_datas:
                    local_latest_datas[code] = json.loads(_data)
                else:
                    local_latest_datas.setdefault(code, json.loads(_data))
        # 获取今日的数据
    if local_today_datas.get(code) is None or force:
@@ -104,8 +104,7 @@
        # 只填充买入数据
        key = "{}".format(data["val"]["orderNo"])
        if local_today_buyno_map[code].get(key) is None:
            local_today_buyno_map[code].setdefault(key, [])
        local_today_buyno_map[code].get(key).append(data)
            local_today_buyno_map[code].setdefault(key, data)
@tool.async_call
@@ -153,11 +152,12 @@
    if len(add_datas) > 0:
        # 保存最近的数据
        __start_time = round(time.time() * 1000)
        redis.setex("l2-data-latest-{}".format(code), tool.get_expire(), json.dumps(datas))
        l2_data_log.l2_time(code, round(time.time() * 1000) - __start_time, "保存最近l2数据用时")
        # 设置进内存
        local_latest_datas[code] = datas
        set_l2_data_latest_count(code, len(datas))
        if datas:
            redis.setex("l2-data-latest-{}".format(code), tool.get_expire(), json.dumps(datas))
            l2_data_log.l2_time(code, round(time.time() * 1000) - __start_time, "保存最近l2数据用时")
            # 设置进内存
            local_latest_datas[code] = datas
            set_l2_data_latest_count(code, len(datas))
        try:
            log.logger_l2_data.info("{}-{}", code, add_datas)
        except Exception as e: