importpandasfromone_piece_serverimportTQZTianQinClientfromtqz_extern.json_operatorimportTQZJsonOperatorimportreimportosimportsysclassTQZAutoMakeConfig:__config_fold="./config"__trading_time_json=f"{__config_fold}/trading_time.json"__main_futures_xlsx=f"{__config_fold}/main_futures.xlsx"__futures_info_json=f"{__config_fold}/futures_info.json"@classmethoddefauto_make_session_json:"""基于天勤量化,生成小结文件."""all_tq_main_futures=TQZTianQinClient.load_all_tq_main_futuresret={}fortq_main_futureinall_tq_main_futures:_tq_future=f"{tq_main_future.split[0]}.{re.match).group}"tq_main_future_data=TQZTianQinClient.query_single_quoteret[_tq_future]={"day":vars["day"],"night":vars["night"]}forinstrument,datainret.items:forsession_dataindata.values:foriinrange):forjinrange):hour=session_data[i][j].split[0]ifhour>="24":new_hour=str-int).zfillsession_data[i][j]=f"{new_hour}:{session_data[i][j].split}:{session_data[i][j].split}"TQZJsonOperator.tqz_write_jsonfile@classmethoddefauto_make_main_futures_excel:"""根据所有合约的日线收盘数据,更新当日的所有品种的主力合约"""#last_day,main_futures_list="2023-04-29",["SHFsn2306","DCc2307"]last_day,main_futures_list=TQZTianQinClient.get_lastDay_mainFuturesListdaily_main_futures_df=pandas.read_exceliflast_day!=daily_main_futures_df["date"].values.tolist[-1]:new_row=lenelse:new_row=len-1daily_main_futures_df.loc[new_row,"date"]=last_dayformain_futureinmain_futures_list:main_fut=f"{main_future.split[0]}.{re.match).group}"ifmain_futnotindaily_main_futures_df.columns:daily_main_futures_df[main_fut]=main_futureelse:daily_main_futures_df.loc[new_row,main_fut]=main_futuredaily_main_futures_df.to_excel@classmethoddefauto_make_futures_info_json:ifos.path.existsisTrueandrefreshisFalse:returnresult={}all_tq_symbols=TQZTianQinClient.load_all_tq_main_futuresfortq_symbolinall_tq_symbols:exchange_str,symbol=tq_symbol.split[0],tq_symbol.splittq_sym=f"{exchange_str}.{cls.__get_sym}"iftq_symnotinresult.keys:tq_result=TQZTianQinClient.query_single_quoteresult[tq_sym]={"min_tick_price_flow":tq_result["price_tick"],"contract_multiple":tq_result["volume_multiple"]}TQZJsonOperator.tqz_write_jsonfile@classmethoddef__get_sym:returnre.match.groupif__name__=="__main__":#sys.argv.appendif2==len:ifsys.argv=="session":printTQZAutoMakeConfig.auto_make_session_jsonelifsys.argv=="main_futures":printTQZAutoMakeConfig.auto_make_main_futures_excelelifsys.argv=="futures_info":printTQZAutoMakeConfig.auto_make_futures_info_jsonelse:print
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点