| | |
| | | :return: |
| | | """ |
| | | if datas: |
| | | start_time = time.time() |
| | | # logger_debug.debug(f"{code} - L2逐笔成交上报:{len(datas)}") |
| | | price, time_str = datas[-1][1], huaxin_util.convert_time(datas[-1][3]) |
| | | try: |
| | |
| | | finally: |
| | | self.__last_price_dict[code] = price |
| | | data_cache.latest_deal_price_dict[code] = price |
| | | use_time = time.time() - start_time |
| | | if use_time > 0.1: |
| | | logger_debug.warning(f"L2逐笔成交处理耗时:{use_time} 最后一条数据:{datas[-1]}") |
| | | |
| | | |
| | | def OnMarketData(self, code, datas): |
| | | # logger_debug.info(f"收到L2Market数据:{datas}") |
| | |
| | | # ((大盘综合强度分数 + 大盘指数情绪预期分数) * 0.01) * (账户可用金额 * 0.9 * 极端低迷情绪比例 / 今日最大新增持仓票数(常量:3)) |
| | | # data_cache.today_planned_order_amount = ((data_cache.real_time_market_strong + data_cache.index_trend_expectation_score) * 0.01) * ( |
| | | # usefulMoney * 0.9 * low_emotion_mood_ratio / Unfinished_opening_plan_number) |
| | | # 除以3应该是一个常量,如果以Unfinished_opening_plan_number,会出现float division by zero 错误 |
| | | # 除以3应该是一个常量,如果以Unfinished_opening_plan_number,会出现float division by zero |
| | | |
| | | # 如果不为空 或 计划金额为默认值,那么就计算第一次计划金额,并固定记录下来 |
| | | if not data_cache.today_planned_order_amount or data_cache.today_planned_order_amount <= 0: |
| | | data_cache.today_planned_order_amount = usefulMoney * 0.95 * ideal_trading_market_score / 3 |
| | | logger.info(f"第一次计划下单金额==={data_cache.today_planned_order_amount}元") |