Administrator
2023-08-02 a3c05bddc4c61d63b804ee541cf6dd01717ba94d
l2/l2_data_manager.py
@@ -4,6 +4,7 @@
import json
from db import redis_manager
from db.redis_manager import RedisUtils
from utils import tool
from log_module.log import logger_l2_trade_buy
from utils.tool import CodeDataCacheUtil
@@ -42,7 +43,7 @@
    def delete_buy_point(code):
        CodeDataCacheUtil.clear_cache(TradePointManager.__buy_compute_index_info_cache, code)
        redis = TradePointManager.__get_redis()
        redis.delete("buy_compute_index_info-{}".format(code))
        RedisUtils.delete(redis, "buy_compute_index_info-{}".format(code))
    # 获取买入点信息
    # 返回数据为:买入点 累计纯买额 已经计算的数据索引
@@ -87,7 +88,8 @@
            data_ = (_buy_single_index, buy_exec_index, compute_index, nums, count, list(max_num_sets),
                     volume_rate)
        CodeDataCacheUtil.set_cache(TradePointManager.__buy_compute_index_info_cache, code, data_)
        redis.setex(_key, expire,
        RedisUtils.setex(
            redis,_key, expire,
                    json.dumps(data_))
    # 获取撤买入开始计算的信息
@@ -108,20 +110,20 @@
    def set_buy_cancel_single_pos(cls, code, index):
        redis = TradePointManager.__get_redis()
        expire = tool.get_expire()
        redis.setex("buy_cancel_single_pos-{}".format(code), expire, index)
        RedisUtils.setex(redis,"buy_cancel_single_pos-{}".format(code), expire, index)
    # 删除买撤点数据
    @classmethod
    def delete_buy_cancel_point(cls, code):
        redis = TradePointManager.__get_redis()
        redis.delete("buy_cancel_single_pos-{}".format(code))
        RedisUtils.delete( redis, "buy_cancel_single_pos-{}".format(code))
    # 设置买撤纯买额
    @classmethod
    def set_compute_info_for_cancel_buy(cls, code, index, nums):
        redis = TradePointManager.__get_redis()
        expire = tool.get_expire()
        redis.setex("compute_info_for_cancel_buy-{}".format(code), expire, json.dumps((index, nums)))
        RedisUtils.setex( redis,"compute_info_for_cancel_buy-{}".format(code), expire, json.dumps((index, nums)))
        logger_l2_trade_buy.info("{}保存撤单纯买额信息:{},{}", code, index, nums)
    # 获取买撤纯买额计算信息
@@ -138,14 +140,14 @@
    @classmethod
    def delete_compute_info_for_cancel_buy(cls, code):
        redis = TradePointManager.__get_redis()
        redis.delete("compute_info_for_cancel_buy-{}".format(code))
        RedisUtils.delete(redis, "compute_info_for_cancel_buy-{}".format(code))
    # 从买入信号开始设置涨停买与涨停撤的单数
    @classmethod
    def set_count_info_for_cancel_buy(cls, code, index, buy_count, cancel_count):
        redis = TradePointManager.__get_redis()
        expire = tool.get_expire()
        redis.setex("count_info_for_cancel_buy-{}".format(code), expire, json.dumps((index, buy_count, cancel_count)))
        RedisUtils.setex(redis,"count_info_for_cancel_buy-{}".format(code), expire, json.dumps((index, buy_count, cancel_count)))
        logger_l2_trade_buy.info("{}保存撤单纯买额信息:{},{}", code, index, buy_count, cancel_count)
    # 获取买撤纯买额计算信息
@@ -162,17 +164,17 @@
    @classmethod
    def delete_count_info_for_cancel_buy(cls, code):
        redis = TradePointManager.__get_redis()
        redis.delete("count_info_for_cancel_buy-{}".format(code))
        RedisUtils.delete(redis, "count_info_for_cancel_buy-{}".format(code))
# 清除l2数据
def clear_l2_data(code):
    redis_l2 = redis_manager.RedisManager(1).getRedis()
    keys = redis_l2.keys("l2-{}-*".format(code))
    keys = RedisUtils.keys( redis_l2, "l2-{}-*".format(code))
    for k in keys:
        redis_l2.delete(k)
        RedisUtils.delete(redis_l2,k)
    redis_l2.delete("l2-data-latest-{}".format(code))
    RedisUtils.delete(redis_l2, "l2-data-latest-{}".format(code))
second_930 = 9 * 3600 + 30 * 60 + 0
@@ -184,9 +186,9 @@
    redis = _redisManager.getRedis()
    count = redis.scard(key)
    if count > 0:
        redis.delete(key)
    redis.sadd(key, "000000")
    redis.expire(key, tool.get_expire())
        RedisUtils.delete(redis, key)
    RedisUtils.sadd(redis, key, "000000")
    RedisUtils.expire(redis, key, tool.get_expire())
# 移除l2固定监控代码
@@ -200,8 +202,8 @@
def add_to_l2_fixed_codes(code):
    key = "l2-fixed-codes"
    redis = _redisManager.getRedis()
    redis.sadd(key, code)
    redis.expire(key, tool.get_expire())
    RedisUtils.sadd(redis, key, code)
    RedisUtils.expire(redis, key, tool.get_expire())
# 是否在l2固定监控代码中