2025年7月1日发版

This commit is contained in:
workpc 2025-07-01 08:51:17 +08:00
parent c85d11866f
commit 68ec1c8ffb
6 changed files with 536 additions and 542 deletions

View File

@ -93,163 +93,24 @@ data = {
ClassifyId = 1214 ClassifyId = 1214
# # 变量定义--线上环境 # 变量定义--线上环境
# server_host = '10.200.32.39' server_host = '10.200.32.39'
# login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login" login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login"
# upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave" upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave"
# upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save" upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save"
# query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos" query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
# # 上传停更数据到市场信息平台
# push_waring_data_value_list_url = f"http://{server_host}/jingbo-api/api/basicBuiness/crudeOilWarning/crudeSaveOrupdate"
# # 获取预警数据中取消订阅指标ID
# get_waring_data_value_list_url = f"http://{server_host}/jingbo-api/api/basicBuiness/crudeOilWarning/dataList"
# login_data = {
# "data": {
# "account": "api_dev",
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "groupNo": '', # 用户组id
# "ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
# "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# warning_data = {
# "groupNo": '', # 用户组id
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# push_waring_data_value_list_data = {
# "data": {
# "crudeOilWarningDtoList": [
# {
# "lastUpdateDate": "20240501",
# "updateSuspensionCycle": 1,
# "dataSource": "8",
# "frequency": "1",
# "indicatorName": "美元指数",
# "indicatorId": "myzs001",
# "warningDate": "2024-05-13"
# }
# ],
# "dataSource": "8"
# },
# "funcModule": "商品数据同步",
# "funcOperation": "同步"
# }
# get_waring_data_value_list_data = {
# "data": "8", "funcModule": "商品数据同步", "funcOperation": "同步"}
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': '原油大数据预测|FORECAST|PRICE|T',
# 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
# 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
# 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
# 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
# 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
# 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
# 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
# }
# # 生产环境数据库
# host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
# port = 3306
# dbusername = 'jingbo'
# password = 'shihua@123'
# dbname = 'jingbo'
# table_name = 'v_tbl_crude_oil_warning'
# # 变量定义--测试环境
server_host = '192.168.100.53' # 内网
# server_host = '183.242.74.28' # 外网
login_pushreport_url = f"http://{server_host}:8080/jingbo-dev/api/server/login"
# 上传报告
upload_url = f"http://{server_host}:8080/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
# 停更预警
upload_warning_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
# 查询数据项编码
query_data_list_item_nos_url = f"http://{server_host}:8080/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# 上传数据项值 # 上传数据项值
push_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/dw/dataValue/pushDataValueList" push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
# 上传停更数据到市场信息平台 # 上传停更数据到市场信息平台
push_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/crudeSaveOrupdate" push_waring_data_value_list_url = f"http://{server_host}/jingbo-api/api/basicBuiness/crudeOilWarning/crudeSaveOrupdate"
# 获取预警数据中取消订阅指标ID # 获取预警数据中取消订阅指标ID
get_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/dataList" get_waring_data_value_list_url = f"http://{server_host}/jingbo-api/api/basicBuiness/crudeOilWarning/dataList"
login_data = { login_data = {
"data": { "data": {
"account": "api_test", "account": "api_dev",
# "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456 "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
"password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
"tenantHashCode": "8a4577dbd919675758d57999a1e891fe", "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
"terminal": "API" "terminal": "API"
}, },
@ -257,25 +118,24 @@ login_data = {
"funcOperation": "获取token" "funcOperation": "获取token"
} }
upload_data = { upload_data = {
"groupNo": '', # 用户组id
"funcModule": '研究报告信息', "funcModule": '研究报告信息',
"funcOperation": '上传原油价格预测报告', "funcOperation": '上传原油价格预测报告',
"data": { "data": {
"ownerAccount": 'arui', # 报告所属用户账号 "groupNo": '', # 用户组id
"ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
"reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
"fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称 "fileName": '', # 文件名称
"fileBase64": '', # 文件内容base64 "fileBase64": '', # 文件内容base64
"categoryNo": 'yyjgycbg', # 研究报告分类编码 "categoryNo": 'yyjgycbg', # 研究报告分类编码
"smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码 "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
"reportEmployeeCode": "E40116", # 报告人 "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
"reportDeptCode": "D0044", # 报告部门 "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
"productGroupCode": "RAW_MATERIAL" # 商品分类 "productGroupCode": "RAW_MATERIAL" # 商品分类
} }
} }
# 已弃用
warning_data = { warning_data = {
"groupNo": '', # 用户组id "groupNo": '', # 用户组id
"funcModule": '原油特征停更预警', "funcModule": '原油特征停更预警',
@ -297,6 +157,7 @@ query_data_list_item_nos_data = {
} }
} }
push_data_value_list_data = { push_data_value_list_data = {
"funcModule": "数据表信息列表", "funcModule": "数据表信息列表",
"funcOperation": "新增", "funcOperation": "新增",
@ -319,6 +180,7 @@ push_data_value_list_data = {
] ]
} }
push_waring_data_value_list_data = { push_waring_data_value_list_data = {
"data": { "data": {
"crudeOilWarningDtoList": [ "crudeOilWarningDtoList": [
@ -342,27 +204,165 @@ push_waring_data_value_list_data = {
get_waring_data_value_list_data = { get_waring_data_value_list_data = {
"data": "8", "funcModule": "商品数据同步", "funcOperation": "同步"} "data": "8", "funcModule": "商品数据同步", "funcOperation": "同步"}
# 八大维度数据项编码 # 八大维度数据项编码
bdwd_items = { bdwd_items = {
'ciri': 'yyycbdwdcr', 'ciri': '原油大数据预测|FORECAST|PRICE|T',
'benzhou': 'yyycbdwdbz', 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
'cizhou': 'yyycbdwdcz', 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
'gezhou': 'yyycbdwdgz', 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
'ciyue': 'yyycbdwdcy', 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
'cieryue': 'yyycbdwdcey', 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
'cisanyue': 'yyycbdwdcsy', 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
'cisiyue': 'yyycbdwdcsiy', 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
} }
# 北京环境数据库 # 生产环境数据库
host = '192.168.101.27' host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
port = 3306 port = 3306
dbusername = 'root' dbusername = 'jingbo'
password = '123456' password = 'shihua@123'
dbname = 'jingbo_test' dbname = 'jingbo'
table_name = 'v_tbl_crude_oil_warning' table_name = 'v_tbl_crude_oil_warning'
# # # 变量定义--测试环境
# server_host = '192.168.100.53' # 内网
# # server_host = '183.242.74.28' # 外网
# login_pushreport_url = f"http://{server_host}:8080/jingbo-dev/api/server/login"
# # 上传报告
# upload_url = f"http://{server_host}:8080/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
# # 停更预警
# upload_warning_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
# # 查询数据项编码
# query_data_list_item_nos_url = f"http://{server_host}:8080/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/dw/dataValue/pushDataValueList"
# # 上传停更数据到市场信息平台
# push_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/crudeSaveOrupdate"
# # 获取预警数据中取消订阅指标ID
# get_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/dataList"
# login_data = {
# "data": {
# "account": "api_test",
# # "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "groupNo": '', # 用户组id
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "ownerAccount": 'arui', # 报告所属用户账号
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40116", # 报告人
# "reportDeptCode": "D0044", # 报告部门
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# # 已弃用
# warning_data = {
# "groupNo": '', # 用户组id
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# push_waring_data_value_list_data = {
# "data": {
# "crudeOilWarningDtoList": [
# {
# "lastUpdateDate": "20240501",
# "updateSuspensionCycle": 1,
# "dataSource": "8",
# "frequency": "1",
# "indicatorName": "美元指数",
# "indicatorId": "myzs001",
# "warningDate": "2024-05-13"
# }
# ],
# "dataSource": "8"
# },
# "funcModule": "商品数据同步",
# "funcOperation": "同步"
# }
# get_waring_data_value_list_data = {
# "data": "8", "funcModule": "商品数据同步", "funcOperation": "同步"}
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': 'yyycbdwdcr',
# 'benzhou': 'yyycbdwdbz',
# 'cizhou': 'yyycbdwdcz',
# 'gezhou': 'yyycbdwdgz',
# 'ciyue': 'yyycbdwdcy',
# 'cieryue': 'yyycbdwdcey',
# 'cisanyue': 'yyycbdwdcsy',
# 'cisiyue': 'yyycbdwdcsiy',
# }
# # 北京环境数据库
# host = '192.168.101.27'
# port = 3306
# dbusername = 'root'
# password = '123456'
# dbname = 'jingbo_test'
# table_name = 'v_tbl_crude_oil_warning'
DEFAULT_CONFIG = { DEFAULT_CONFIG = {
'feature_factor_frequency': 'D', 'feature_factor_frequency': 'D',
'strategy_id': 1, 'strategy_id': 1,

View File

@ -172,131 +172,19 @@ data = {
ClassifyId = 1214 ClassifyId = 1214
# # 变量定义--线上环境 # 变量定义--线上环境
# server_host = '10.200.32.39' server_host = '10.200.32.39'
# login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login" login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login"
# upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave" upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave"
# upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save" upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save"
# query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos" query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
# login_data = {
# "data": {
# "account": "api_dev",
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "groupNo": '', # 用户组id
# "ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
# "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# warning_data = {
# "groupNo": '', # 用户组id
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': '原油大数据预测|FORECAST|PRICE|T',
# 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
# 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
# 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
# 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
# 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
# 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
# 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
# }
# # 报告中八大维度数据项重命名
# columnsrename = {
# '原油大数据预测|FORECAST|PRICE|T': '次日', '原油大数据预测|FORECAST|PRICE|W': '本周',
# '原油大数据预测|FORECAST|PRICE|W_1': '次周', '原油大数据预测|FORECAST|PRICE|W_2': '隔周',
# '原油大数据预测|FORECAST|PRICE|M_1': '次月', '原油大数据预测|FORECAST|PRICE|M_2': '次二月',
# '原油大数据预测|FORECAST|PRICE|M_3': '次三月', '原油大数据预测|FORECAST|PRICE|M_4': '次四月'
# }
# # 生产环境数据库
# host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
# port = 3306
# dbusername = 'jingbo'
# password = 'shihua@123'
# dbname = 'jingbo'
# table_name = 'v_tbl_crude_oil_warning'
# 变量定义--测试环境
server_host = '192.168.100.53:8080' # 内网
# server_host = '183.242.74.28' # 外网
login_pushreport_url = f"http://{server_host}/jingbo-dev/api/server/login"
upload_url = f"http://{server_host}/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
upload_warning_url = f"http://{server_host}/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
query_data_list_item_nos_url = f"http://{server_host}/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# 上传数据项值 # 上传数据项值
push_data_value_list_url = f"http://{server_host}/jingbo-dev/api/dw/dataValue/pushDataValueList" push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
login_data = { login_data = {
"data": { "data": {
"account": "api_test", "account": "api_dev",
# "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456 "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
"password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
"tenantHashCode": "8a4577dbd919675758d57999a1e891fe", "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
"terminal": "API" "terminal": "API"
}, },
@ -304,24 +192,24 @@ login_data = {
"funcOperation": "获取token" "funcOperation": "获取token"
} }
upload_data = { upload_data = {
"groupNo": '', # 用户组id
"funcModule": '研究报告信息', "funcModule": '研究报告信息',
"funcOperation": '上传原油价格预测报告', "funcOperation": '上传原油价格预测报告',
"data": { "data": {
"ownerAccount": 'arui', # 报告所属用户账号 "groupNo": '', # 用户组id
"ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
"reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
"fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称 "fileName": '', # 文件名称
"fileBase64": '', # 文件内容base64 "fileBase64": '', # 文件内容base64
"categoryNo": 'yyjgycbg', # 研究报告分类编码 "categoryNo": 'yyjgycbg', # 研究报告分类编码
"smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码 "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
"reportEmployeeCode": "E40116", # 报告人 "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
"reportDeptCode": "D0044", # 报告部门 "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
"productGroupCode": "RAW_MATERIAL" # 商品分类 "productGroupCode": "RAW_MATERIAL" # 商品分类
} }
} }
warning_data = { warning_data = {
"groupNo": '', # 用户组id "groupNo": '', # 用户组id
"funcModule": '原油特征停更预警', "funcModule": '原油特征停更预警',
@ -343,6 +231,7 @@ query_data_list_item_nos_data = {
} }
} }
push_data_value_list_data = { push_data_value_list_data = {
"funcModule": "数据表信息列表", "funcModule": "数据表信息列表",
"funcOperation": "新增", "funcOperation": "新增",
@ -366,27 +255,138 @@ push_data_value_list_data = {
} }
# 八大维度数据项编码 # 八大维度数据项编码
bdwd_items = { bdwd_items = {
'ciri': 'yyycbdwdcr', 'ciri': '原油大数据预测|FORECAST|PRICE|T',
'benzhou': 'yyycbdwdbz', 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
'cizhou': 'yyycbdwdcz', 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
'gezhou': 'yyycbdwdgz', 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
'ciyue': 'yyycbdwdcy', 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
'cieryue': 'yyycbdwdcey', 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
'cisanyue': 'yyycbdwdcsy', 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
'cisiyue': 'yyycbdwdcsiy', 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
} }
# 报告中八大维度数据项重命名 # 报告中八大维度数据项重命名
columnsrename = {'yyycbdwdbz': '本周', 'yyycbdwdcey': '次二月', 'yyycbdwdcr': '次日', 'yyycbdwdcsiy': '次四月', columnsrename = {
'yyycbdwdcsy': '次三月', 'yyycbdwdcy': '次月', 'yyycbdwdcz': '次周', 'yyycbdwdgz': '隔周', } '原油大数据预测|FORECAST|PRICE|T': '次日', '原油大数据预测|FORECAST|PRICE|W': '本周',
# 北京环境数据库 '原油大数据预测|FORECAST|PRICE|W_1': '次周', '原油大数据预测|FORECAST|PRICE|W_2': '隔周',
host = '192.168.101.27' '原油大数据预测|FORECAST|PRICE|M_1': '次月', '原油大数据预测|FORECAST|PRICE|M_2': '次二月',
'原油大数据预测|FORECAST|PRICE|M_3': '次三月', '原油大数据预测|FORECAST|PRICE|M_4': '次四月'
}
# 生产环境数据库
host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
port = 3306 port = 3306
dbusername = 'root' dbusername = 'jingbo'
password = '123456' password = 'shihua@123'
dbname = 'jingbo_test' dbname = 'jingbo'
table_name = 'v_tbl_crude_oil_warning' table_name = 'v_tbl_crude_oil_warning'
# # 变量定义--测试环境
# server_host = '192.168.100.53:8080' # 内网
# # server_host = '183.242.74.28' # 外网
# login_pushreport_url = f"http://{server_host}/jingbo-dev/api/server/login"
# upload_url = f"http://{server_host}/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
# upload_warning_url = f"http://{server_host}/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
# query_data_list_item_nos_url = f"http://{server_host}/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}/jingbo-dev/api/dw/dataValue/pushDataValueList"
# login_data = {
# "data": {
# "account": "api_test",
# # "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "groupNo": '', # 用户组id
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "ownerAccount": 'arui', # 报告所属用户账号
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40116", # 报告人
# "reportDeptCode": "D0044", # 报告部门
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# warning_data = {
# "groupNo": '', # 用户组id
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': 'yyycbdwdcr',
# 'benzhou': 'yyycbdwdbz',
# 'cizhou': 'yyycbdwdcz',
# 'gezhou': 'yyycbdwdgz',
# 'ciyue': 'yyycbdwdcy',
# 'cieryue': 'yyycbdwdcey',
# 'cisanyue': 'yyycbdwdcsy',
# 'cisiyue': 'yyycbdwdcsiy',
# }
# # 报告中八大维度数据项重命名
# columnsrename = {'yyycbdwdbz': '本周', 'yyycbdwdcey': '次二月', 'yyycbdwdcr': '次日', 'yyycbdwdcsiy': '次四月',
# 'yyycbdwdcsy': '次三月', 'yyycbdwdcy': '次月', 'yyycbdwdcz': '次周', 'yyycbdwdgz': '隔周', }
# # 北京环境数据库
# host = '192.168.101.27'
# port = 3306
# dbusername = 'root'
# password = '123456'
# dbname = 'jingbo_test'
# table_name = 'v_tbl_crude_oil_warning'
DEFAULT_CONFIG = { DEFAULT_CONFIG = {
'feature_factor_frequency': 'D', 'feature_factor_frequency': 'D',
'strategy_id': 1, 'strategy_id': 1,

View File

@ -119,125 +119,19 @@ data = {
ClassifyId = 1214 ClassifyId = 1214
# # 变量定义--线上环境 # 变量定义--线上环境
# server_host = '10.200.32.39' server_host = '10.200.32.39'
# login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login" login_pushreport_url = "http://10.200.32.39/jingbo-api/api/server/login"
# upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave" upload_url = "http://10.200.32.39/jingbo-api/api/analysis/reportInfo/researchUploadReportSave"
# upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save" upload_warning_url = "http://10.200.32.39/jingbo-api/api/basicBuiness/crudeOilWarning/save"
# query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos" query_data_list_item_nos_url = f"http://{server_host}/jingbo-api/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
# login_data = {
# "data": {
# "account": "api_dev",
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "groupNo": '', # 用户组id
# "ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
# "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# warning_data = {
# "groupNo": '', # 用户组id
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': '原油大数据预测|FORECAST|PRICE|T',
# 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
# 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
# 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
# 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
# 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
# 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
# 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
# }
# # 生产环境数据库
# host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
# port = 3306
# dbusername = 'jingbo'
# password = 'shihua@123'
# dbname = 'jingbo'
# table_name = 'v_tbl_crude_oil_warning'
# # 变量定义--测试环境
server_host = '192.168.100.53:8080' # 内网
# server_host = '183.242.74.28' # 外网
login_pushreport_url = f"http://{server_host}/jingbo-dev/api/server/login"
upload_url = f"http://{server_host}/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
upload_warning_url = f"http://{server_host}/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
query_data_list_item_nos_url = f"http://{server_host}/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# 上传数据项值 # 上传数据项值
push_data_value_list_url = f"http://{server_host}/jingbo-dev/api/dw/dataValue/pushDataValueList" push_data_value_list_url = f"http://{server_host}/jingbo-api/api/dw/dataValue/pushDataValueList"
login_data = { login_data = {
"data": { "data": {
"account": "api_test", "account": "api_dev",
# "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456 "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=",
"password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
"tenantHashCode": "8a4577dbd919675758d57999a1e891fe", "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
"terminal": "API" "terminal": "API"
}, },
@ -245,24 +139,26 @@ login_data = {
"funcOperation": "获取token" "funcOperation": "获取token"
} }
upload_data = { upload_data = {
"funcModule": '研究报告信息', "funcModule": '研究报告信息',
"funcOperation": '上传原油价格预测报告', "funcOperation": '上传原油价格预测报告',
"data": { "data": {
"ownerAccount": 'arui', # 报告所属用户账号 "groupNo": '', # 用户组id
"ownerAccount": '27663', # 报告所属用户账号 27663 - 刘小朋
"reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
"fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称 "fileName": '', # 文件名称
"fileBase64": '', # 文件内容base64 "fileBase64": '', # 文件内容base64
"categoryNo": 'yyjgycbg', # 研究报告分类编码 "categoryNo": 'yyjgycbg', # 研究报告分类编码
"smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码 "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
"reportEmployeeCode": "E40116", # 报告人 "reportEmployeeCode": "E40482", # 报告人 E40482 - 管理员 0000027663 - 刘小朋
"reportDeptCode": "D0044", # 报告部门 "reportDeptCode": "002000621000", # 报告部门 - 002000621000 SH期货研究部
"productGroupCode": "RAW_MATERIAL" # 商品分类 "productGroupCode": "RAW_MATERIAL" # 商品分类
} }
} }
warning_data = { warning_data = {
"groupNo": '', # 用户组id
"funcModule": '原油特征停更预警', "funcModule": '原油特征停更预警',
"funcOperation": '原油特征停更预警', "funcOperation": '原油特征停更预警',
"data": { "data": {
@ -282,6 +178,7 @@ query_data_list_item_nos_data = {
} }
} }
push_data_value_list_data = { push_data_value_list_data = {
"funcModule": "数据表信息列表", "funcModule": "数据表信息列表",
"funcOperation": "新增", "funcOperation": "新增",
@ -305,26 +202,129 @@ push_data_value_list_data = {
} }
# 八大维度数据项编码 # 八大维度数据项编码
bdwd_items = { bdwd_items = {
'ciri': 'yyycbdwdcr', 'ciri': '原油大数据预测|FORECAST|PRICE|T',
'benzhou': 'yyycbdwdbz', 'benzhou': '原油大数据预测|FORECAST|PRICE|W',
'cizhou': 'yyycbdwdcz', 'cizhou': '原油大数据预测|FORECAST|PRICE|W_1',
'gezhou': 'yyycbdwdgz', 'gezhou': '原油大数据预测|FORECAST|PRICE|W_2',
'ciyue': 'yyycbdwdcy', 'ciyue': '原油大数据预测|FORECAST|PRICE|M_1',
'cieryue': 'yyycbdwdcey', 'cieryue': '原油大数据预测|FORECAST|PRICE|M_2',
'cisanyue': 'yyycbdwdcsy', 'cisanyue': '原油大数据预测|FORECAST|PRICE|M_3',
'cisiyue': 'yyycbdwdcsiy', 'cisiyue': '原油大数据预测|FORECAST|PRICE|M_4',
} }
# 北京环境数据库 # 生产环境数据库
host = '192.168.101.27' host = 'rm-2zehj3r1n60ttz9x5.mysql.rds.aliyuncs.com'
port = 3306 port = 3306
dbusername = 'root' dbusername = 'jingbo'
password = '123456' password = 'shihua@123'
dbname = 'jingbo_test' dbname = 'jingbo'
table_name = 'v_tbl_crude_oil_warning' table_name = 'v_tbl_crude_oil_warning'
# # # 变量定义--测试环境
# server_host = '192.168.100.53:8080' # 内网
# # server_host = '183.242.74.28' # 外网
# login_pushreport_url = f"http://{server_host}/jingbo-dev/api/server/login"
# upload_url = f"http://{server_host}/jingbo-dev/api/analysis/reportInfo/researchUploadReportSave"
# upload_warning_url = f"http://{server_host}/jingbo-dev/api/basicBuiness/crudeOilWarning/save"
# query_data_list_item_nos_url = f"http://{server_host}/jingbo-dev/api/warehouse/dwDataItem/queryDataListItemNos"
# # 上传数据项值
# push_data_value_list_url = f"http://{server_host}/jingbo-dev/api/dw/dataValue/pushDataValueList"
# login_data = {
# "data": {
# "account": "api_test",
# # "password": "MmVmNzNlOWI0MmY0ZDdjZGUwNzE3ZjFiMDJiZDZjZWU=", # Shihua@123456
# "password": "ZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2U=", # 123456
# "tenantHashCode": "8a4577dbd919675758d57999a1e891fe",
# "terminal": "API"
# },
# "funcModule": "API",
# "funcOperation": "获取token"
# }
# upload_data = {
# "funcModule": '研究报告信息',
# "funcOperation": '上传原油价格预测报告',
# "data": {
# "ownerAccount": 'arui', # 报告所属用户账号
# "reportType": 'OIL_PRICE_FORECAST', # 报告类型固定为OIL_PRICE_FORECAST
# "fileName": '2000-40-5-50--100-原油指标数据.xlsx-Brent活跃合约--2024-09-06-15-01-29-预测报告.pdf', # 文件名称
# "fileBase64": '', # 文件内容base64
# "categoryNo": 'yyjgycbg', # 研究报告分类编码
# "smartBusinessClassCode": 'YCJGYCBG', # 分析报告分类编码
# "reportEmployeeCode": "E40116", # 报告人
# "reportDeptCode": "D0044", # 报告部门
# "productGroupCode": "RAW_MATERIAL" # 商品分类
# }
# }
# warning_data = {
# "funcModule": '原油特征停更预警',
# "funcOperation": '原油特征停更预警',
# "data": {
# 'WARNING_TYPE_NAME': '特征数据停更预警',
# 'WARNING_CONTENT': '',
# 'WARNING_DATE': ''
# }
# }
# query_data_list_item_nos_data = {
# "funcModule": "数据项",
# "funcOperation": "查询",
# "data": {
# "dateStart": "20200101",
# "dateEnd": "20241231",
# "dataItemNoList": ["Brentzdj", "Brentzgj"] # 数据项编码,代表 brent最低价和最高价
# }
# }
# push_data_value_list_data = {
# "funcModule": "数据表信息列表",
# "funcOperation": "新增",
# "data": [
# {"dataItemNo": "91230600716676129",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.11
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# },
# {"dataItemNo": "91230600716676129P|ETHYL_BEN|CAPACITY",
# "dataDate": "20230113",
# "dataStatus": "add",
# "dataValue": 100.55
# }
# ]
# }
# # 八大维度数据项编码
# bdwd_items = {
# 'ciri': 'yyycbdwdcr',
# 'benzhou': 'yyycbdwdbz',
# 'cizhou': 'yyycbdwdcz',
# 'gezhou': 'yyycbdwdgz',
# 'ciyue': 'yyycbdwdcy',
# 'cieryue': 'yyycbdwdcey',
# 'cisanyue': 'yyycbdwdcsy',
# 'cisiyue': 'yyycbdwdcsiy',
# }
# # 北京环境数据库
# host = '192.168.101.27'
# port = 3306
# dbusername = 'root'
# password = '123456'
# dbname = 'jingbo_test'
# table_name = 'v_tbl_crude_oil_warning'
DEFAULT_CONFIG = { DEFAULT_CONFIG = {
'feature_factor_frequency': 'D', 'feature_factor_frequency': 'D',
'strategy_id': 1, 'strategy_id': 1,

View File

@ -581,11 +581,11 @@ def predict_main():
if __name__ == '__main__': if __name__ == '__main__':
# global end_time # global end_time
# # 遍历2024-11-25 到 2024-12-3 之间的工作日日期 # # 遍历2024-11-25 到 2024-12-3 之间的工作日日期
for i_time in pd.date_range('2025-6-11', '2025-6-28', freq='B'): # for i_time in pd.date_range('2025-6-19', '2025-6-28', freq='B'):
global_config['end_time'] = i_time.strftime('%Y-%m-%d') # global_config['end_time'] = i_time.strftime('%Y-%m-%d')
global_config['db_mysql'].connect() # global_config['db_mysql'].connect()
predict_main()
# predict_main() # predict_main()
predict_main()
# push_market_value() # push_market_value()
# sql_inset_predict(global_config=global_config) # sql_inset_predict(global_config=global_config)

View File

@ -473,44 +473,44 @@ def predict_main():
# except Exception as e: # except Exception as e:
# logger.info(f'更新accuracy表的y值失败{e}') # logger.info(f'更新accuracy表的y值失败{e}')
# 判断当前日期是不是周一 # # 判断当前日期是不是周一
is_weekday = datetime.datetime.now().weekday() == 0 # is_weekday = datetime.datetime.now().weekday() == 0
if is_weekday: # if is_weekday:
logger.info('今天是周一,更新预测模型') # logger.info('今天是周一,更新预测模型')
# 计算最近60天预测残差最低的模型名称 # # 计算最近60天预测残差最低的模型名称
model_results = sqlitedb.select_data( # model_results = sqlitedb.select_data(
'trueandpredict', order_by="ds DESC", limit="60") # 'trueandpredict', order_by="ds DESC", limit="60")
# 删除空值率为90%以上的列 # # 删除空值率为90%以上的列
if len(model_results) > 10: # if len(model_results) > 10:
model_results = model_results.dropna( # model_results = model_results.dropna(
thresh=len(model_results)*0.1, axis=1) # thresh=len(model_results)*0.1, axis=1)
# 删除空行 # # 删除空行
model_results = model_results.dropna() # model_results = model_results.dropna()
modelnames = model_results.columns.to_list()[2:-1] # modelnames = model_results.columns.to_list()[2:-1]
for col in model_results[modelnames].select_dtypes(include=['object']).columns: # for col in model_results[modelnames].select_dtypes(include=['object']).columns:
model_results[col] = model_results[col].astype(np.float32) # model_results[col] = model_results[col].astype(np.float32)
# 计算每个预测值与真实值之间的偏差率 # # 计算每个预测值与真实值之间的偏差率
for model in modelnames: # for model in modelnames:
model_results[f'{model}_abs_error_rate'] = abs( # model_results[f'{model}_abs_error_rate'] = abs(
model_results['y'] - model_results[model]) / model_results['y'] # model_results['y'] - model_results[model]) / model_results['y']
# 获取每行对应的最小偏差率值 # # 获取每行对应的最小偏差率值
min_abs_error_rate_values = model_results.apply( # min_abs_error_rate_values = model_results.apply(
lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].min(), axis=1) # lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].min(), axis=1)
# 获取每行对应的最小偏差率值对应的列名 # # 获取每行对应的最小偏差率值对应的列名
min_abs_error_rate_column_name = model_results.apply( # min_abs_error_rate_column_name = model_results.apply(
lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].idxmin(), axis=1) # lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].idxmin(), axis=1)
# 将列名索引转换为列名 # # 将列名索引转换为列名
min_abs_error_rate_column_name = min_abs_error_rate_column_name.map( # min_abs_error_rate_column_name = min_abs_error_rate_column_name.map(
lambda x: x.split('_')[0]) # lambda x: x.split('_')[0])
# 取出现次数最多的模型名称 # # 取出现次数最多的模型名称
most_common_model = min_abs_error_rate_column_name.value_counts().idxmax() # most_common_model = min_abs_error_rate_column_name.value_counts().idxmax()
logger.info(f"最近60天预测残差最低的模型名称{most_common_model}") # logger.info(f"最近60天预测残差最低的模型名称{most_common_model}")
# 保存结果到数据库 # # 保存结果到数据库
if not sqlitedb.check_table_exists('most_model'): # if not sqlitedb.check_table_exists('most_model'):
sqlitedb.create_table( # sqlitedb.create_table(
'most_model', columns="ds datetime, most_common_model TEXT") # 'most_model', columns="ds datetime, most_common_model TEXT")
sqlitedb.insert_data('most_model', (datetime.datetime.now().strftime( # sqlitedb.insert_data('most_model', (datetime.datetime.now().strftime(
'%Y-%m-%d %H:%M:%S'), most_common_model,), columns=('ds', 'most_common_model',)) # '%Y-%m-%d %H:%M:%S'), most_common_model,), columns=('ds', 'most_common_model',))
if is_corr: if is_corr:
df = corr_feature(df=df) df = corr_feature(df=df)
@ -590,13 +590,10 @@ def predict_main():
if __name__ == '__main__': if __name__ == '__main__':
# global end_time # global end_time
# 遍历2024-11-25 到 2024-12-3 之间的工作日日期 # 遍历2024-11-25 到 2024-12-3 之间的工作日日期
# for i_time in pd.date_range('2025-3-13', '2025-3-31', freq='B'): for i_time in pd.date_range('2025-6-4', '2025-6-30', freq='B'):
# try: global_config['end_time'] = i_time.strftime('%Y-%m-%d')
# global_config['end_time'] = i_time.strftime('%Y-%m-%d') global_config['db_mysql'].connect()
# predict_main() predict_main()
# except Exception as e:
# logger.info(f'预测失败:{e}')
# continue
# predict_main() # predict_main()
sql_inset_predict(global_config=global_config) # sql_inset_predict(global_config=global_config)

View File

@ -383,44 +383,44 @@ def predict_main():
# except Exception as e: # except Exception as e:
# logger.info(f'更新accuracy表的y值失败{e}') # logger.info(f'更新accuracy表的y值失败{e}')
# 判断当前日期是不是周一 # 判断当前日期是不是周一 预测目标周度许转换,暂注释
is_weekday = datetime.datetime.now().weekday() == 0 # is_weekday = datetime.datetime.strptime(global_config['end_time'], "%Y-%m-%d").weekday() == 0
if is_weekday: # if is_weekday:
logger.info('今天是周一,更新预测模型') # logger.info('今天是周一,更新预测模型')
# 计算最近60天预测残差最低的模型名称 # # 计算最近60天预测残差最低的模型名称
model_results = sqlitedb.select_data( # model_results = sqlitedb.select_data(
'trueandpredict', order_by="ds DESC", limit="60") # 'trueandpredict', order_by="ds DESC", limit="60")
# 删除空值率为90%以上的列 # # 删除空值率为90%以上的列
if len(model_results) > 10: # if len(model_results) > 10:
model_results = model_results.dropna( # model_results = model_results.dropna(
thresh=len(model_results)*0.1, axis=1) # thresh=len(model_results)*0.1, axis=1)
# 删除空行 # # 删除空行
model_results = model_results.dropna() # model_results = model_results.dropna()
modelnames = model_results.columns.to_list()[2:-2] # modelnames = model_results.columns.to_list()[2:-2]
for col in model_results[modelnames].select_dtypes(include=['object']).columns: # for col in model_results[modelnames].select_dtypes(include=['object']).columns:
model_results[col] = model_results[col].astype(np.float32) # model_results[col] = model_results[col].astype(np.float32)
# 计算每个预测值与真实值之间的偏差率 # # 计算每个预测值与真实值之间的偏差率
for model in modelnames: # for model in modelnames:
model_results[f'{model}_abs_error_rate'] = abs( # model_results[f'{model}_abs_error_rate'] = abs(
model_results['y'] - model_results[model]) / model_results['y'] # model_results['y'] - model_results[model]) / model_results['y']
# 获取每行对应的最小偏差率值 # # 获取每行对应的最小偏差率值
min_abs_error_rate_values = model_results.apply( # min_abs_error_rate_values = model_results.apply(
lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].min(), axis=1) # lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].min(), axis=1)
# 获取每行对应的最小偏差率值对应的列名 # # 获取每行对应的最小偏差率值对应的列名
min_abs_error_rate_column_name = model_results.apply( # min_abs_error_rate_column_name = model_results.apply(
lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].idxmin(), axis=1) # lambda row: row[[f'{model}_abs_error_rate' for model in modelnames]].idxmin(), axis=1)
# 将列名索引转换为列名 # # 将列名索引转换为列名
min_abs_error_rate_column_name = min_abs_error_rate_column_name.map( # min_abs_error_rate_column_name = min_abs_error_rate_column_name.map(
lambda x: x.split('_')[0]) # lambda x: x.split('_')[0])
# 取出现次数最多的模型名称 # # 取出现次数最多的模型名称
most_common_model = min_abs_error_rate_column_name.value_counts().idxmax() # most_common_model = min_abs_error_rate_column_name.value_counts().idxmax()
logger.info(f"最近60天预测残差最低的模型名称{most_common_model}") # logger.info(f"最近60天预测残差最低的模型名称{most_common_model}")
# 保存结果到数据库 # # 保存结果到数据库
if not sqlitedb.check_table_exists('most_model'): # if not sqlitedb.check_table_exists('most_model'):
sqlitedb.create_table( # sqlitedb.create_table(
'most_model', columns="ds datetime, most_common_model TEXT") # 'most_model', columns="ds datetime, most_common_model TEXT")
sqlitedb.insert_data('most_model', (datetime.datetime.now().strftime( # sqlitedb.insert_data('most_model', (datetime.datetime.now().strftime(
'%Y-%m-%d %H:%M:%S'), most_common_model,), columns=('ds', 'most_common_model',)) # '%Y-%m-%d %H:%M:%S'), most_common_model,), columns=('ds', 'most_common_model',))
if is_corr: if is_corr:
df = corr_feature(df=df) df = corr_feature(df=df)
@ -492,13 +492,10 @@ def predict_main():
if __name__ == '__main__': if __name__ == '__main__':
# global end_time # global end_time
# 遍历2024-11-25 到 2024-12-3 之间的工作日日期 # 遍历2024-11-25 到 2024-12-3 之间的工作日日期
# for i_time in pd.date_range('2025-2-1', '2025-3-31', freq='B'): for i_time in pd.date_range('2025-6-23', '2025-6-30', freq='B'):
# try: global_config['end_time'] = i_time.strftime('%Y-%m-%d')
# global_config['end_time'] = i_time.strftime('%Y-%m-%d') global_config['db_mysql'].connect()
# predict_main() predict_main()
# except Exception as e:
# logger.info(f'预测失败:{e}')
# continue
# predict_main() # predict_main()
sql_inset_predict(global_config=global_config) # sql_inset_predict(global_config=global_config)