Administrator
2024-08-09 178158cf7e540b119607309bef5d391637281bb1
bug修复
4个文件已修改
56 ■■■■■ 已修改文件
servers/data_server.py 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
servers/huaxin_trade_server.py 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
third_data/kpl_api.py 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/trade_data_manager.py 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
servers/data_server.py
@@ -715,11 +715,15 @@
                # 获取本月的手续费
                end_date = tool.get_now_date_str("%Y%m%d")
                start_date = f"{end_date[:6]}01"
                delegates = trade_data_manager.AccountMoneyManager().get_delegated_count_info(start_date, end_date)
                deal_count = trade_data_manager.AccountMoneyManager().get_deal_count(start_date, end_date)
                cost = sum([round(0.1 * x[1], 2) for x in delegates])
                make = deal_count * 5
                fdata["month_commission"] = round(make - cost, 2)
                delegates_month = trade_data_manager.AccountMoneyManager().get_delegated_count_info(start_date,
                                                                                                    end_date)
                # 股票,上证可转债 , 深证可转债
                deals_month = trade_data_manager.AccountMoneyManager().get_deal_count_info(start_date, end_date)
                cost_month = sum([round(0.1 * x[1], 2) for x in delegates_month])
                make_month = 0
                make_month += 5 * deals_month[0][1] + 1 * deals_month[1][1] + 0 * deals_month[2][1]
                fdata["month_commission"] = round(make_month - cost_month, 2)
                # 计算当日手续费详情
                delegates = trade_data_manager.AccountMoneyManager().get_delegated_count_info()
                delegates = [{"count": x[1], "price": 0.1, "money": round(0.1 * x[1], 2)} for x in delegates]
@@ -727,8 +731,11 @@
                fdata["delegates"]["buy_cancel"] = delegates[1]
                fdata["delegates"]["sell_cancel"] = delegates[2]
                fdata["delegates"]["sell"] = delegates[3]
                deal_count = trade_data_manager.AccountMoneyManager().get_deal_count()
                fdata["deal"] = {"count": deal_count, "price": 5, "money": round(5 * deal_count, 2)}
                deals = trade_data_manager.AccountMoneyManager().get_deal_count()
                fdata["deals"] = []
                fdata["deals"]["stock"]={"count": deals[0][1], "price": 5, "money": round(5 * deals[0][1], 2)}
                fdata["deals"]["sh_cb"]={"count": deals[1][1], "price": 1, "money": round(1 * deals[1][1], 2)}
                fdata["deals"]["sz_cb"]={"count": deals[2][1], "price": 0, "money": round(0 * deals[2][1], 2)}
                fdata["commission"] = trade_data_manager.AccountMoneyManager().get_commission_cache()
                response_data = json.dumps({"code": 0, "data": fdata})
            except Exception as e:
servers/huaxin_trade_server.py
@@ -776,13 +776,12 @@
    # 持仓刷新
    huaxin_trade_data_update.add_position_list()
    # 定时持仓刷新
    # schedule.every().day.at("09:00:00").do(huaxin_trade_data_update.add_position_list)
    # schedule.every().day.at("09:10:00").do(huaxin_trade_data_update.add_position_list)
    schedule.every().day.at("15:10:00").do(zyltgb_util.update_all_zylt_volumes)
    schedule.every().day.at("08:00:01").do(history_k_data_manager.update_history_k_bars)
    schedule.every().day.at("08:30:01").do(history_k_data_manager.update_history_k_bars)
    schedule.every().day.at("09:00:01").do(history_k_data_manager.update_history_k_bars)
    schedule.every().day.at("09:00:01").do(huaxin_trade_data_update.add_money_list)
    schedule.every().day.at("09:15:20").do(huaxin_trade_data_update.add_money_list)
    threading.Thread(target=run_pending, daemon=True).start()
    l2_data_util.load_l2_data_all(True)
    L2TradeSingleDataManager.set_callback(MyL2TradeSingleCallback())
third_data/kpl_api.py
@@ -258,9 +258,10 @@
if __name__ == "__main__":
    # getCodeBlocks("300198")
    data = (getMarketJingXuanRealRankingInfo())
    data=json.loads(data)
    print(len(data["list"]))
    print(getCodeJingXuanBlocks("003043"))
    # __getConceptBK("300564")
    # data = (getMarketJingXuanRealRankingInfo())
    # data=json.loads(data)
    # print(len(data["list"]))
    # data = json.loads(getCodesByPlate("801235"))
    # print(data)
trade/trade_data_manager.py
@@ -438,17 +438,26 @@
        sql += ") a"
        return self.__mysqldb.select_all(sql)
    def get_deal_count(self, from_date=None, to_date=None):
    def get_deal_count_info(self, from_date=None, to_date=None):
        if not from_date:
            from_date = tool.get_now_date_str("%Y%m%d")
        if not to_date:
            to_date = tool.get_now_date_str("%Y%m%d")
        sql = f"SELECT COUNT(*) FROM (SELECT * FROM `hx_trade_deal_record` r WHERE r.`tradeDate` >='{from_date}' and  r.`tradeDate` <='{to_date}' GROUP BY " \
              "r.`orderSysID`) a "
        return self.__mysqldb.select_one(sql)[0]
        sql = "SELECT * FROM ( "
        sql += f"SELECT '股票', COUNT(*) FROM (SELECT * FROM `hx_trade_deal_record` r WHERE r.`tradeDate` >='{from_date}' and  r.`tradeDate` <='{to_date}' AND (r.`securityID` LIKE '30%' OR r.`securityID` LIKE '60%'  OR r.`securityID` LIKE '68%' OR r.`securityID` LIKE '00%')  GROUP BY r.`orderSysID`) a"
        sql += " UNION ALL "
        sql += f"SELECT '上证基金', COUNT(*) AS '数量' FROM (SELECT * FROM `hx_trade_deal_record` r WHERE r.`tradeDate` >='{from_date}' and  r.`tradeDate` <='{to_date}' AND (r.`securityID` LIKE '11%')  GROUP BY r.`orderSysID`) a"
        sql += " UNION ALL "
        sql += f"SELECT '深证基金', COUNT(*) AS '数量' FROM (SELECT * FROM `hx_trade_deal_record` r WHERE r.`tradeDate` >='{from_date}' and  r.`tradeDate` <='{to_date}' AND (r.`securityID` LIKE '12%')  GROUP BY r.`orderSysID`) a"
        sql += ") a"
        return self.__mysqldb.select_all(sql)
if __name__ == "__main__":
    processor = CodeActualPriceProcessor()
    print(processor.get_top_rate_codes(30))
    print(AccountMoneyManager().get_deal_count())