| | |
| | | # data_date_and_target_date = False |
| | | # return data_date_and_target_date |
| | | |
| | | # 盘中不进行时间与数据的判断,一方面判断应该在开盘前完成,另一方面收盘后离最新拉取时间都还有很长时间 |
| | | # if (hour < 9 or (hour == 9 and minute < 30)) or hour >= 17: |
| | | if data_cache.opening_time > now_time or now_time > data_cache.closing_time: |
| | | # 盘中不进行时间与数据的判断(也不能早于服务器重启时间,因为次日凌晨拉取的K线会有错误),一方面判断应该在开盘前完成,另一方面收盘后离最新拉取时间都还有很长时间 |
| | | # 在这个时间段内运行 9:00--9:30 或 15:00--23:00 |
| | | if data_cache.server_restart_time < now_time < data_cache.opening_time or data_cache.closing_time < now_time < data_cache.program_sleep_time: |
| | | # 然后判断一下,当K线字典中的任意一只个股的的第一个K线表中的第一个日期 等于 上一个交易日日期 或 今日日期 且 运行时时间未到 18:30 那么不需要新拉取直接读取已有的就行, |
| | | # 否者还是得调用K线对象方法拉取,并重新读取赋值全局化 |
| | | # if hour < 18 or (hour == 18 and minute < 31): |
| | | if now_time < data_cache.update_data_time: |
| | | # if now_time < data_cache.closing_time: |
| | | # if now_time < data_cache.closing_time: |
| | | check_pre_trading_day = check_data_date(data_cache.DataCache().pre_trading_day) |
| | | if check_pre_trading_day is True: |
| | | # if hour >= 17: |
| | |
| | | 设定基本时间点 |
| | | ''' |
| | | Local_startup_time = datetime.datetime.now().strftime("%H:%M:%S") |
| | | server_restart_time = datetime.time(9, 00, 00).strftime("%H:%M:%S") # 定义9:00 |
| | | L1_data_start_time = datetime.time(9, 15, 00).strftime("%H:%M:%S") # 定义9:15 |
| | | before_open_bidding_time = datetime.time(9, 20, 00).strftime("%H:%M:%S") # 定义9:20 |
| | | open_bidding_time = datetime.time(9, 25, 00).strftime("%H:%M:%S") # 定义 盘前 集合竞价 时间 |
| | |
| | | after_closing_time = datetime.time(15, 1, 00).strftime("%H:%M:%S") # 定义 收盘后时间 |
| | | checking_data_time = datetime.time(17, 00, 00).strftime("%H:%M:%S") # 定义 检查数据时间 |
| | | update_data_time = datetime.time(18, 31, 00).strftime("%H:%M:%S") # 定义更新数据时间 |
| | | program_sleep_time = datetime.time(23, 00, 00).strftime("%H:%M:%S") # 定义程序休眠时间 |
| | | |
| | | # 读取已经获取到并存储在本地的目标范围的个股的板块概念 |
| | | # 读取JSON文件并解析为字典 |
| | |
| | | import multiprocessing |
| | | import threading |
| | | |
| | | # import log |
| | | from strategy import data_cache, account_management |
| | | import data_server |
| | | from log_module.log import logger_debug |
| | |
| | | logger.info(f"【十分之{part_of_value * 10}可用资金】委买完毕") |
| | | data_cache.available = available - buy_order_value |
| | | logger.info(f"买票执行成功:【{sec_name}】") |
| | | logger.info(f"买票后剩余资金:{round(data_cache.available, 2)}") |
| | | logger.info(f"买票后剩余资金:{data_cache.account_finance_dict['usefulMoney']}") |
| | | else: |
| | | logger.info(f"【{sec_name}】,持仓:{available}小于计划委托:{part_of_value},委托失败!") |
| | | |