| | |
| | | import requests |
| | | |
| | | from code_attribute.gpcode_manager import BlackListCodeManager |
| | | from l2.huaxin import huaxin_target_codes_manager |
| | | from l2.l2_transaction_data_manager import HuaXinBuyOrderManager |
| | | from log_module.log import logger_system, logger_debug, logger_kpl_limit_up, logger_request_api |
| | | from third_data.custom_block_in_money_manager import CodeInMoneyManager |
| | |
| | | ContainsLimitupCodesBlocksManager |
| | | from third_data.kpl_limit_up_data_manager import LatestLimitUpBlockManager, CodeLimitUpSequenceManager |
| | | from third_data.third_blocks_manager import BlockMapManager |
| | | from trade.buy_radical import radical_buy_data_manager |
| | | from trade.buy_radical.block_special_codes_manager import BlockSpecialCodesManager |
| | | from trade.buy_strategy import OpenLimitUpGoodBlocksBuyStrategy |
| | | from trade.buy_radical.radical_buy_data_manager import RadicalBuyBlockManager |
| | | from trade.buy_radical.radical_buy_data_manager import RadicalBuyBlockManager, BeforeSubDealBigOrderManager |
| | | from utils import global_util, tool, data_export_util |
| | | from code_attribute import gpcode_manager |
| | | from log_module import log_analyse, log_export, async_log_util |
| | |
| | | |
| | | elif url.path == "/get_l2_subscript_codes": |
| | | # 获取L2订阅的代码 |
| | | ps_dict = dict([(k, v[0]) for k, v in parse_qs(url.query).items()]) |
| | | codes = huaxin_target_codes_manager.HuaXinL2SubscriptCodesManager.get_subscript_codes() |
| | | fresults = [] |
| | | try: |
| | | records = LimitUpDataConstant.history_limit_up_datas |
| | | # 获取历史涨停 |
| | | if not records: |
| | | KPLLimitUpDataRecordManager.load_total_datas() |
| | | records = KPLLimitUpDataRecordManager.total_datas |
| | | if not records: |
| | | records = [] |
| | | codes = set([x[3] for x in records]) |
| | | fdatas = [] |
| | | if codes: |
| | | block_top_in_list = RealTimeKplMarketData.top_in_list_cache |
| | | in_blocks = [x[1] for x in block_top_in_list] |
| | | yesterday_codes = kpl_data_manager.get_yesterday_limit_up_codes() |
| | | if yesterday_codes is None: |
| | | yesterday_codes = set() |
| | | for code in codes: |
| | | index = current_price_process_manager.compute_code_order(code, in_blocks[:30], yesterday_codes) |
| | | if 0 <= index <= 1000: |
| | | fdatas.append((code, gpcode_manager.get_code_name(code))) |
| | | response_data = json.dumps({"code": 0, "data": fdatas}) |
| | | try: |
| | | # 获取成交大单:(参考大单金额,已成交大单金额,大单要求金额) |
| | | th = BeforeSubDealBigOrderManager().get_big_order_threshold(code) |
| | | deal_big_money_info = radical_buy_data_manager.get_total_deal_big_order_info( |
| | | code, gpcode_manager.get_limit_up_price_as_num(code)) |
| | | deal_big_order_info = ( |
| | | output_util.money_desc(th), output_util.money_desc(deal_big_money_info[1]), |
| | | output_util.money_desc(deal_big_money_info[2])) |
| | | except: |
| | | deal_big_order_info = None |
| | | code_name = gpcode_manager.get_code_name(code) |
| | | fresults.append((code, code_name, deal_big_order_info)) |
| | | response_data = json.dumps({"code": 0, "data": fresults}) |
| | | except Exception as e: |
| | | response_data = json.dumps({"code": 1, "data": str(1)}) |
| | | |
| | |
| | | # 保存市场热度 |
| | | if strong is not None: |
| | | RealTimeKplMarketData.set_market_strong(strong) |
| | | |
| | | |
| | | return json.dumps({"code": 0}) |
| | | |