Administrator
2024-04-09 521058f11b090d704268c9b7d09ea38e99aecc75
test/test_sell.py
@@ -1,16 +1,50 @@
from l2.huaxin import l2_huaxin_util
from l2.l2_transaction_data_manager import HuaXinSellOrderStatisticManager
from l2 import l2_data_util
from log_module import log_export, async_log_util
from utils import tool
def statistic_buy_order():
    code = "600768"
    data_map = log_export.load_huaxin_transaction_map(date=tool.get_now_date_str())
    datas = data_map.get(code)
    __latest_buy_order_dict = {}
    total_money = 0
    for data in datas:
        for d in data:
            if code not in __latest_buy_order_dict:
                # 格式:[买单号,手数,单价]
                __latest_buy_order_dict[code] = [d[6], d[2], d[1], (d[3], d[1]), (d[3], d[1])]
            else:
                if __latest_buy_order_dict[code][0] == d[6]:
                    __latest_buy_order_dict[code][1] += d[2]
                    __latest_buy_order_dict[code][2] = d[1]
                    __latest_buy_order_dict[code][4] = (d[3], d[1])
                else:
                    info = __latest_buy_order_dict[code]
                    # 上个卖单成交完成
                    # 封存数据,计算新起点
                    # 大于50w的卖单才会保存
                    # 大于50w加入卖单
                    money = info[1] * info[2]
                    # if 101328000 > info[3] > 101324000:
                    if tool.trade_time_sub(l2_huaxin_util.convert_time(info[3][0]), "10:08:30") >= 0 and info[2] >= 11.54:
                        total_money += money
                        print(int(total_money), round(money / 10000, 1), info)
                    if money >= 500000:
                        pass
                    __latest_buy_order_dict[code] = [d[6], d[2], d[1], (d[3], d[1]), (d[3], d[1])]
# 卖单统计
def statistic_sell_order():
    code = "000888"
    code = "600768"
    data_map = log_export.load_huaxin_transaction_map(date=tool.get_now_date_str())
    datas = data_map.get(code)
    __latest_sell_order_dict = {}
    total_money = 0
    for data in datas:
        for d in data:
            if code not in __latest_sell_order_dict:
@@ -28,8 +62,10 @@
                    # 大于50w的卖单才会保存
                    # 大于50w加入卖单
                    money = info[1] * info[2]
                    if 101328000 > info[3][0] > 101324000 and info[0] > 12265084:
                        print(money, info)
                    if tool.trade_time_sub(l2_huaxin_util.convert_time(info[3][0]), "10:08:30") >= 0:
                        if info[2] >= 11.54:
                            total_money += money
                            print(money, round(total_money), info)
                    if money >= 500000:
                        pass
                    __latest_sell_order_dict[code] = [d[7], d[2], d[1], (d[3], d[6]), (d[3], d[6])]
@@ -65,4 +101,4 @@
if __name__ == '__main__':
    statistic_sell_order()
    statistic_buy_order()