| | |
| | | result = strategy_params_settings.settings.to_json_str() |
| | | return {"code": 0, "data": result} |
| | | |
| | | def __on_get_env(self): |
| | | def __on_get_env(self, need_hsitory_data): |
| | | """ |
| | | 获取环境信息 |
| | | @param need_hsitory_data: 是否需要历史数据 |
| | | @return: |
| | | """ |
| | | fdata = {} |
| | |
| | | fdata["real_time_data"] = RealTimeEnvInfo().to_dict() |
| | | # 历史数据 |
| | | fdata["history_data"] = {} |
| | | if tool.get_now_time_str() < '16:00:00': |
| | | # 如果在16:00之前采用当前日期 |
| | | day = tool.get_now_date_str() |
| | | else: |
| | | # 如果在16:00之后采用下一个交易日 |
| | | day = TradeDateManager().get_next_trade_day(tool.get_now_date_str()) |
| | | fdata["history_data"]["leading_limit_up_block_codes_count"] = env_info.get_leading_limit_up_block_codes_count( |
| | | day) |
| | | if need_hsitory_data: |
| | | if tool.get_now_time_str() < '16:00:00': |
| | | # 如果在16:00之前采用当前日期 |
| | | day = tool.get_now_date_str() |
| | | else: |
| | | # 如果在16:00之后采用下一个交易日 |
| | | day = TradeDateManager().get_next_trade_day(tool.get_now_date_str()) |
| | | fdata["history_data"]["leading_limit_up_block_codes_count"] = env_info.get_leading_limit_up_block_codes_count( |
| | | day) |
| | | |
| | | if tool.get_now_time_str() < '16:00:00': |
| | | # 如果在16:00之前采用当前日期 |
| | | day = TradeDateManager().get_previous_trade_day(tool.get_now_date_str()) |
| | | else: |
| | | # 如果在16:00之后采用下一个交易日 |
| | | day = tool.get_now_date_str() |
| | | fdata["history_data"]["k_bars_count"] = env_info.get_history_k_bars(day) |
| | | if tool.get_now_time_str() < '16:00:00': |
| | | # 如果在16:00之前采用当前日期 |
| | | day = TradeDateManager().get_previous_trade_day(tool.get_now_date_str()) |
| | | else: |
| | | # 如果在16:00之后采用下一个交易日 |
| | | day = tool.get_now_date_str() |
| | | fdata["history_data"]["k_bars_count"] = env_info.get_history_k_bars(day) |
| | | return {"code": 0, "data": fdata, "msg": "测试结果"} |
| | | |
| | | def __on_update_leading_limit_up_datas(self): |
| | |
| | | if ctype == "get_settings": |
| | | result_json = self.__on_get_settings() |
| | | elif ctype == 'get_env': |
| | | result_json = self.__on_get_env() |
| | | result_json = self.__on_get_env(data.get("history")) |
| | | elif ctype == 'update_leading_limit_up_datas': |
| | | result_json = self.__on_update_leading_limit_up_datas() |
| | | self.send_response(result_json, client_id, request_id) |
| | |
| | | huaxin_trade_api.run() |
| | | |
| | | threading.Thread(target=test, daemon=True).start() |
| | | test() |
| | | # test() |
| | | |
| | | # -------启动L2 market订阅------ |
| | | __run_l2_market_subscript() |
| | |
| | | params = self.__parse_request() |
| | | logger_debug.info("upload_block_in_datas:{}", f"{params}") |
| | | result_str = json.dumps({"code": 0}) |
| | | elif url.path == "upload_limit_up_list": |
| | | params = self.__parse_request() |
| | | logger_debug.info("upload_limit_up_list:{}", f"{params}") |
| | | result_str = json.dumps({"code": 0}) |
| | | else: |
| | | pass |
| | | self.__send_response(result_str) |
| | |
| | | # 是否可买今日涨停过的票 |
| | | self.can_buy_limited_up = False |
| | | # 最低开盘涨幅 |
| | | self.min_open_rate = -0.21 |
| | | self.min_open_rate = -0.03 |
| | | # 可买的涨幅比例 |
| | | self.avaiable_rates = (-0.03, 0.07) |
| | | # 今日涨停价需突破XX日最高价,None表示此条数据不生效 |
| | |
| | | if __name__ == "__main__": |
| | | print("======3个票涨停之后买+开盘价>=-3") |
| | | statistic_average(r"C:\Users\Administrator\Desktop\3个票涨停之后买.txt") |
| | | print("======3个票涨停之后买+开盘价>=-2") |
| | | statistic_average(r"C:\Users\Administrator\Desktop\3个票涨停之后买_开盘涨幅-2以上.txt") |
| | | print("======3个票涨停之后买+不限开盘涨幅+3个涨停之后大单打折") |
| | | statistic_average(r"C:\Users\Administrator\Desktop\3个票涨停之后买_不限开盘涨幅.txt") |
| | | |
| | |
| | | if __name__ == "__main__": |
| | | back_test_dict = {} |
| | | # days = ["2025-05-06", "2025-05-07", "2025-05-08", "2025-05-09", "2025-05-12", "2025-05-13", "2025-05-14", |
| | | # "2025-05-15", "2025-05-16", "2025-05-19", "2025-05-20"] |
| | | # "2025-05-15", "2025-05-16", "2025-05-19", "2025-05-20", "2025-05-21", "2025-05-22"] |
| | | days = ["2025-05-12", "2025-05-13", "2025-05-14", "2025-05-15", "2025-05-16", "2025-05-19", "2025-05-20", |
| | | "2025-05-21", "2025-05-22", "2025-05-23", "2025-05-26", "2025-05-27", "2025-05-28", "2025-05-29", |
| | | "2025-05-30", "2025-06-03", "2025-06-04", "2025-06-05", "2025-06-06", "2025-06-09"] |