原油预测结果存储到市场信息平台数据库
This commit is contained in:
parent
a06b5dc525
commit
d9efdde78b
26
aa.py
26
aa.py
@ -1,10 +1,18 @@
|
|||||||
# 定时执行cmd命令
|
import numpy as np
|
||||||
import os
|
import config_jingbo
|
||||||
import time
|
from datetime import datetime
|
||||||
|
from decimal import Decimal
|
||||||
|
import pandas as pd
|
||||||
|
from pydantic import BaseModel
|
||||||
|
from typing import Optional
|
||||||
|
from datetime import datetime
|
||||||
|
from decimal import Decimal
|
||||||
|
|
||||||
while True:
|
|
||||||
print(time.strftime('%H:%M'))
|
df = pd.read_csv('predict.csv')
|
||||||
# 判断是不是工作日且 是17:00 7:00 才执行
|
df['created_dt'] = pd.to_datetime(df['created_dt'])
|
||||||
if time.strftime('%A') not in ['Saturday', 'Sunday'] and time.strftime('%H:%M') in [ '07:00']:
|
df['ds'] = pd.to_datetime(df['ds'])
|
||||||
os.system(' D:/ProgramData/anaconda3/python.exe main.py')
|
# 获取次日预测结果
|
||||||
time.sleep(60)
|
df = df[df['ds'] == df['ds'].min()]
|
||||||
|
|
||||||
|
print(df)
|
||||||
|
@ -2300,7 +2300,7 @@
|
|||||||
],
|
],
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"kernelspec": {
|
"kernelspec": {
|
||||||
"display_name": "Python 3",
|
"display_name": "base",
|
||||||
"language": "python",
|
"language": "python",
|
||||||
"name": "python3"
|
"name": "python3"
|
||||||
},
|
},
|
||||||
@ -2314,7 +2314,7 @@
|
|||||||
"name": "python",
|
"name": "python",
|
||||||
"nbconvert_exporter": "python",
|
"nbconvert_exporter": "python",
|
||||||
"pygments_lexer": "ipython3",
|
"pygments_lexer": "ipython3",
|
||||||
"version": "3.7.0"
|
"version": "3.11.7"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nbformat": 4,
|
"nbformat": 4,
|
||||||
|
@ -1951,7 +1951,7 @@
|
|||||||
],
|
],
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"kernelspec": {
|
"kernelspec": {
|
||||||
"display_name": "Python 3",
|
"display_name": "base",
|
||||||
"language": "python",
|
"language": "python",
|
||||||
"name": "python3"
|
"name": "python3"
|
||||||
},
|
},
|
||||||
@ -1965,7 +1965,7 @@
|
|||||||
"name": "python",
|
"name": "python",
|
||||||
"nbconvert_exporter": "python",
|
"nbconvert_exporter": "python",
|
||||||
"pygments_lexer": "ipython3",
|
"pygments_lexer": "ipython3",
|
||||||
"version": "3.7.0"
|
"version": "3.11.7"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nbformat": 4,
|
"nbformat": 4,
|
||||||
|
Binary file not shown.
354
config_jingbo.py
354
config_jingbo.py
@ -1,3 +1,4 @@
|
|||||||
|
from decimal import Decimal
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import logging.handlers
|
import logging.handlers
|
||||||
@ -92,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"
|
||||||
# },
|
# },
|
||||||
@ -256,25 +118,24 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# "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": '原油特征停更预警',
|
||||||
@ -296,6 +157,7 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# }
|
# }
|
||||||
# }
|
# }
|
||||||
|
|
||||||
|
|
||||||
# push_data_value_list_data = {
|
# push_data_value_list_data = {
|
||||||
# "funcModule": "数据表信息列表",
|
# "funcModule": "数据表信息列表",
|
||||||
# "funcOperation": "新增",
|
# "funcOperation": "新增",
|
||||||
@ -318,6 +180,7 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# ]
|
# ]
|
||||||
# }
|
# }
|
||||||
|
|
||||||
|
|
||||||
# push_waring_data_value_list_data = {
|
# push_waring_data_value_list_data = {
|
||||||
# "data": {
|
# "data": {
|
||||||
# "crudeOilWarningDtoList": [
|
# "crudeOilWarningDtoList": [
|
||||||
@ -341,28 +204,179 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# 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 = {
|
||||||
|
'feature_factor_frequency': 'D',
|
||||||
|
'strategy_id': 1,
|
||||||
|
'model_evaluation_id': 1,
|
||||||
|
'tenant_code': '',
|
||||||
|
'version_num': Decimal(1),
|
||||||
|
'delete_flag': '0',
|
||||||
|
'create_user': 'admin',
|
||||||
|
'create_date': datetime.datetime.now(),
|
||||||
|
'update_user': 'admin',
|
||||||
|
'update_date': datetime.datetime.now()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# 开关
|
# 开关
|
||||||
is_train = True # 是否训练
|
is_train = True # 是否训练
|
||||||
is_debug = False # 是否调试
|
is_debug = False # 是否调试
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
from decimal import Decimal
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import logging.handlers
|
import logging.handlers
|
||||||
@ -171,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"
|
||||||
# },
|
# },
|
||||||
@ -303,24 +192,24 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# "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": '原油特征停更预警',
|
||||||
@ -342,6 +231,7 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# }
|
# }
|
||||||
# }
|
# }
|
||||||
|
|
||||||
|
|
||||||
# push_data_value_list_data = {
|
# push_data_value_list_data = {
|
||||||
# "funcModule": "数据表信息列表",
|
# "funcModule": "数据表信息列表",
|
||||||
# "funcOperation": "新增",
|
# "funcOperation": "新增",
|
||||||
@ -365,28 +255,152 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# }
|
# }
|
||||||
# # 八大维度数据项编码
|
# # 八大维度数据项编码
|
||||||
# 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 = {
|
||||||
|
'feature_factor_frequency': 'D',
|
||||||
|
'strategy_id': 1,
|
||||||
|
'model_evaluation_id': 1,
|
||||||
|
'tenant_code': '',
|
||||||
|
'version_num': Decimal(1),
|
||||||
|
'delete_flag': '0',
|
||||||
|
'create_user': 'admin',
|
||||||
|
'create_date': datetime.datetime.now(),
|
||||||
|
'update_user': 'admin',
|
||||||
|
'update_date': datetime.datetime.now()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# 开关
|
# 开关
|
||||||
is_train = True # 是否训练
|
is_train = True # 是否训练
|
||||||
is_debug = False # 是否调试
|
is_debug = False # 是否调试
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
from decimal import Decimal
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import logging.handlers
|
import logging.handlers
|
||||||
@ -118,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"
|
||||||
# },
|
# },
|
||||||
@ -244,24 +139,26 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# "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": {
|
||||||
@ -281,6 +178,7 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# }
|
# }
|
||||||
# }
|
# }
|
||||||
|
|
||||||
|
|
||||||
# push_data_value_list_data = {
|
# push_data_value_list_data = {
|
||||||
# "funcModule": "数据表信息列表",
|
# "funcModule": "数据表信息列表",
|
||||||
# "funcOperation": "新增",
|
# "funcOperation": "新增",
|
||||||
@ -304,26 +202,143 @@ table_name = 'v_tbl_crude_oil_warning'
|
|||||||
# }
|
# }
|
||||||
# # 八大维度数据项编码
|
# # 八大维度数据项编码
|
||||||
# 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 = {
|
||||||
|
'feature_factor_frequency': 'D',
|
||||||
|
'strategy_id': 1,
|
||||||
|
'model_evaluation_id': 1,
|
||||||
|
'tenant_code': '',
|
||||||
|
'version_num': Decimal(1),
|
||||||
|
'delete_flag': '0',
|
||||||
|
'create_user': 'admin',
|
||||||
|
'create_date': datetime.datetime.now(),
|
||||||
|
'update_user': 'admin',
|
||||||
|
'update_date': datetime.datetime.now()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# 开关
|
# 开关
|
||||||
is_train = True # 是否训练
|
is_train = True # 是否训练
|
||||||
is_debug = False # 是否调试
|
is_debug = False # 是否调试
|
||||||
|
@ -123,6 +123,8 @@ global_config = {
|
|||||||
'sqlitedb': None,
|
'sqlitedb': None,
|
||||||
'db_mysql': None,
|
'db_mysql': None,
|
||||||
'baichuan_table_name': None,
|
'baichuan_table_name': None,
|
||||||
|
'DEFAULT_CONFIG': None,
|
||||||
|
'TIME_SPAN_MAPPING': None,
|
||||||
|
|
||||||
# 报告配置
|
# 报告配置
|
||||||
'is_bdwd': None, # 是否使用bdwd数据
|
'is_bdwd': None, # 是否使用bdwd数据
|
||||||
|
33
lib/pydantic_models.py
Normal file
33
lib/pydantic_models.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
from datetime import datetime
|
||||||
|
from decimal import Decimal
|
||||||
|
from pydantic import BaseModel
|
||||||
|
from typing import Optional
|
||||||
|
from datetime import datetime
|
||||||
|
from decimal import Decimal
|
||||||
|
|
||||||
|
|
||||||
|
class PredictionResult(BaseModel):
|
||||||
|
prediction_date: datetime
|
||||||
|
bdwd: Optional[str] = None
|
||||||
|
feature_factor_frequency: str
|
||||||
|
strategy_id: int
|
||||||
|
predicted_price: Decimal
|
||||||
|
model_evaluation_id: int
|
||||||
|
model_id: int
|
||||||
|
tenant_code: Optional[str] = None
|
||||||
|
reserved_str1: Optional[str] = None
|
||||||
|
reserved_str2: Optional[str] = None
|
||||||
|
reserved_str3: Optional[str] = None
|
||||||
|
reserved_str4: Optional[str] = None
|
||||||
|
reserved_str5: Optional[str] = None
|
||||||
|
reserved_num1: Optional[Decimal] = None
|
||||||
|
reserved_num2: Optional[Decimal] = None
|
||||||
|
reserved_num3: Optional[Decimal] = None
|
||||||
|
reserved_num4: Optional[Decimal] = None
|
||||||
|
reserved_num5: Optional[Decimal] = None
|
||||||
|
version_num: Decimal = Decimal(1)
|
||||||
|
delete_flag: str = '0'
|
||||||
|
create_user: Optional[str] = None
|
||||||
|
create_date: Optional[datetime] = None
|
||||||
|
update_user: Optional[str] = None
|
||||||
|
update_date: Optional[datetime] = None
|
69
lib/tools.py
69
lib/tools.py
@ -1,3 +1,4 @@
|
|||||||
|
from decimal import Decimal
|
||||||
from langchain_core.documents import Document
|
from langchain_core.documents import Document
|
||||||
from langchain_openai import ChatOpenAI
|
from langchain_openai import ChatOpenAI
|
||||||
from langchain.chains.summarize import load_summarize_chain
|
from langchain.chains.summarize import load_summarize_chain
|
||||||
@ -35,8 +36,9 @@ import os
|
|||||||
import time
|
import time
|
||||||
import logging
|
import logging
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
load_dotenv()
|
|
||||||
|
|
||||||
|
from lib.pydantic_models import PredictionResult
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
global logger
|
global logger
|
||||||
|
|
||||||
@ -537,6 +539,13 @@ class MySQLDB:
|
|||||||
except pymysql.Error as e:
|
except pymysql.Error as e:
|
||||||
logging.error(f"Error connecting to the database: {e}")
|
logging.error(f"Error connecting to the database: {e}")
|
||||||
|
|
||||||
|
def is_connected(self):
|
||||||
|
try:
|
||||||
|
self.connection.ping(reconnect=True)
|
||||||
|
return True
|
||||||
|
except pymysql.Error:
|
||||||
|
return False
|
||||||
|
|
||||||
def execute_query(self, query):
|
def execute_query(self, query):
|
||||||
try:
|
try:
|
||||||
self.cursor.execute(query)
|
self.cursor.execute(query)
|
||||||
@ -555,6 +564,29 @@ class MySQLDB:
|
|||||||
logging.error(f"Error executing insert: {e}")
|
logging.error(f"Error executing insert: {e}")
|
||||||
self.connection.rollback()
|
self.connection.rollback()
|
||||||
|
|
||||||
|
def execute_batch_insert(self, query, params_list):
|
||||||
|
"""
|
||||||
|
Batch insert data
|
||||||
|
:param query: SQL insert statement
|
||||||
|
:param params_list: Parameter list, each element is a parameter for a record
|
||||||
|
:return: Number of affected rows
|
||||||
|
"""
|
||||||
|
if not self.is_connected():
|
||||||
|
print("Database is not connected, please call the connect method first")
|
||||||
|
return 0
|
||||||
|
try:
|
||||||
|
cursor = self.connection.cursor()
|
||||||
|
cursor.executemany(query, params_list)
|
||||||
|
self.connection.commit()
|
||||||
|
affected_rows = cursor.rowcount
|
||||||
|
cursor.close()
|
||||||
|
return affected_rows
|
||||||
|
except pymysql.Error as err:
|
||||||
|
print(f"Batch insert failed: {err}")
|
||||||
|
if self.is_connected():
|
||||||
|
self.connection.rollback()
|
||||||
|
return 0
|
||||||
|
|
||||||
def execute_update(self, query, values):
|
def execute_update(self, query, values):
|
||||||
try:
|
try:
|
||||||
self.cursor.execute(query, values)
|
self.cursor.execute(query, values)
|
||||||
@ -640,5 +672,40 @@ class DeepSeek():
|
|||||||
return summary
|
return summary
|
||||||
|
|
||||||
|
|
||||||
|
def get_modelsname(df, global_config):
|
||||||
|
'''
|
||||||
|
预测结果和模型表求子集得到模型名称
|
||||||
|
'''
|
||||||
|
columns = df.columns.tolist()
|
||||||
|
tb = 'v_tbl_predict_models'
|
||||||
|
sql = f'select model_name,id from {tb} '
|
||||||
|
modelsname = global_config['db_mysql'].execute_query(sql)
|
||||||
|
model_id_name_dict = {row['model_name']: row['id'] for row in modelsname}
|
||||||
|
model_name_list = [row['model_name'] for row in modelsname]
|
||||||
|
model_name_list = set(columns) & set(model_name_list)
|
||||||
|
model_name_list = list(model_name_list)
|
||||||
|
global_config['db_mysql'].close()
|
||||||
|
return model_name_list, model_id_name_dict
|
||||||
|
|
||||||
|
|
||||||
|
def convert_df_to_pydantic(df_predict, model_id_name_dict, bdwd, global_config):
|
||||||
|
results = []
|
||||||
|
data = global_config['DEFAULT_CONFIG'].copy()
|
||||||
|
data['prediction_date'] = df_predict['created_dt'].values[0]
|
||||||
|
if isinstance(data['prediction_date'], np.datetime64):
|
||||||
|
data['prediction_date'] = pd.Timestamp(
|
||||||
|
data['prediction_date']).to_pydatetime()
|
||||||
|
|
||||||
|
for c in df_predict.columns:
|
||||||
|
if c not in ['ds', 'created_dt']:
|
||||||
|
data['model_id'] = model_id_name_dict[c]
|
||||||
|
data['bdwd'] = bdwd
|
||||||
|
data['predicted_price'] = Decimal(
|
||||||
|
round(df_predict[c].values[0], 2))
|
||||||
|
result = PredictionResult(**data)
|
||||||
|
results.append(result)
|
||||||
|
return results
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
print('This is a tool, not a script.')
|
print('This is a tool, not a script.')
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
from lib.dataread import *
|
from lib.dataread import *
|
||||||
from config_jingbo import *
|
from config_jingbo import *
|
||||||
from lib.tools import SendMail, exception_logger
|
from lib.tools import SendMail, convert_df_to_pydantic, exception_logger, get_modelsname
|
||||||
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
||||||
import datetime
|
import datetime
|
||||||
import torch
|
import torch
|
||||||
@ -90,6 +90,8 @@ global_config.update({
|
|||||||
'sqlitedb': sqlitedb,
|
'sqlitedb': sqlitedb,
|
||||||
'bdwd_items': bdwd_items,
|
'bdwd_items': bdwd_items,
|
||||||
'is_bdwd': is_bdwd,
|
'is_bdwd': is_bdwd,
|
||||||
|
'db_mysql': db_mysql,
|
||||||
|
'DEFAULT_CONFIG': DEFAULT_CONFIG,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -150,6 +152,69 @@ def push_market_value():
|
|||||||
config.logger.error(f"推送数据失败: {e}")
|
config.logger.error(f"推送数据失败: {e}")
|
||||||
|
|
||||||
|
|
||||||
|
def sql_inset_predict(global_config):
|
||||||
|
df = pd.read_csv(os.path.join(config.dataset, 'predict.csv'))
|
||||||
|
df['created_dt'] = pd.to_datetime(df['created_dt'])
|
||||||
|
df['ds'] = pd.to_datetime(df['ds'])
|
||||||
|
# 获取次日预测结果
|
||||||
|
next_day_df = df[df['ds'] == df['ds'].min()]
|
||||||
|
# 获取本周预测结果
|
||||||
|
this_week_df = df[df['ds'] == df['ds'].max()]
|
||||||
|
|
||||||
|
wd = ['next_day', 'this_week']
|
||||||
|
model_name_list, model_id_name_dict = get_modelsname(df, global_config)
|
||||||
|
|
||||||
|
for df, w in zip([next_day_df, this_week_df], wd):
|
||||||
|
next_day_df = df[['ds', 'created_dt'] + model_name_list]
|
||||||
|
pydantic_results = convert_df_to_pydantic(
|
||||||
|
next_day_df, model_id_name_dict, w, global_config)
|
||||||
|
if pydantic_results:
|
||||||
|
insert_query = """
|
||||||
|
INSERT INTO v_tbl_predict_prediction_results (
|
||||||
|
prediction_date, bdwd,
|
||||||
|
feature_factor_frequency, strategy_id, predicted_price,
|
||||||
|
model_evaluation_id, model_id, tenant_code,
|
||||||
|
version_num, delete_flag, create_user, create_date, update_user, update_date
|
||||||
|
) VALUES (
|
||||||
|
%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s
|
||||||
|
)
|
||||||
|
ON DUPLICATE KEY UPDATE
|
||||||
|
feature_factor_frequency = VALUES(feature_factor_frequency),
|
||||||
|
predicted_price = VALUES(predicted_price),
|
||||||
|
model_evaluation_id = VALUES(model_evaluation_id),
|
||||||
|
tenant_code = VALUES(tenant_code),
|
||||||
|
version_num = VALUES(version_num),
|
||||||
|
delete_flag = VALUES(delete_flag),
|
||||||
|
create_user = VALUES(create_user),
|
||||||
|
create_date = VALUES(create_date),
|
||||||
|
update_user = VALUES(update_user),
|
||||||
|
update_date = VALUES(update_date)
|
||||||
|
"""
|
||||||
|
params_list = []
|
||||||
|
for result in pydantic_results:
|
||||||
|
params = (
|
||||||
|
result.prediction_date,
|
||||||
|
result.bdwd,
|
||||||
|
result.feature_factor_frequency,
|
||||||
|
result.strategy_id,
|
||||||
|
result.predicted_price,
|
||||||
|
result.model_evaluation_id,
|
||||||
|
result.model_id,
|
||||||
|
result.tenant_code,
|
||||||
|
result.version_num,
|
||||||
|
result.delete_flag,
|
||||||
|
result.create_user,
|
||||||
|
result.create_date,
|
||||||
|
result.update_user,
|
||||||
|
result.update_date
|
||||||
|
)
|
||||||
|
params_list.append(params)
|
||||||
|
affected_rows = config.db_mysql.execute_batch_insert(
|
||||||
|
insert_query, params_list)
|
||||||
|
print(f"成功插入 {affected_rows} 条记录")
|
||||||
|
config.db_mysql.close()
|
||||||
|
|
||||||
|
|
||||||
def predict_main():
|
def predict_main():
|
||||||
"""
|
"""
|
||||||
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
||||||
@ -467,6 +532,7 @@ def predict_main():
|
|||||||
# logger.info('模型训练完成')
|
# logger.info('模型训练完成')
|
||||||
|
|
||||||
# push_market_value()
|
# push_market_value()
|
||||||
|
# sql_inset_predict(global_config)
|
||||||
|
|
||||||
# # LSTM 单变量模型
|
# # LSTM 单变量模型
|
||||||
# ex_Lstm(df,input_seq_len=input_size,output_seq_len=horizon,is_debug=is_debug,dataset=dataset)
|
# ex_Lstm(df,input_seq_len=input_size,output_seq_len=horizon,is_debug=is_debug,dataset=dataset)
|
||||||
@ -497,5 +563,6 @@ if __name__ == '__main__':
|
|||||||
# end_time = i_time.strftime('%Y-%m-%d')
|
# end_time = i_time.strftime('%Y-%m-%d')
|
||||||
# predict_main()
|
# predict_main()
|
||||||
|
|
||||||
predict_main()
|
# predict_main()
|
||||||
# push_market_value()
|
# push_market_value()
|
||||||
|
sql_inset_predict(global_config)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
from lib.dataread import *
|
from lib.dataread import *
|
||||||
from config_jingbo_yuedu import *
|
from config_jingbo_yuedu import *
|
||||||
from lib.tools import SendMail, exception_logger
|
from lib.tools import SendMail, convert_df_to_pydantic, exception_logger, get_modelsname
|
||||||
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
||||||
import datetime
|
import datetime
|
||||||
import torch
|
import torch
|
||||||
@ -81,6 +81,8 @@ global_config.update({
|
|||||||
# 数据库配置
|
# 数据库配置
|
||||||
'sqlitedb': sqlitedb,
|
'sqlitedb': sqlitedb,
|
||||||
'is_bdwd': is_bdwd,
|
'is_bdwd': is_bdwd,
|
||||||
|
'db_mysql': db_mysql,
|
||||||
|
'DEFAULT_CONFIG': DEFAULT_CONFIG,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -156,6 +158,75 @@ def push_market_value():
|
|||||||
logger.error(f"推送数据失败: {e}")
|
logger.error(f"推送数据失败: {e}")
|
||||||
|
|
||||||
|
|
||||||
|
def sql_inset_predict(global_config):
|
||||||
|
df = pd.read_csv(os.path.join(config.dataset, 'predict.csv'))
|
||||||
|
df['created_dt'] = pd.to_datetime(df['created_dt'])
|
||||||
|
df['ds'] = pd.to_datetime(df['ds'])
|
||||||
|
# 获取次月预测结果
|
||||||
|
next_month_df = df[df['ds'] == df['ds'].min()]
|
||||||
|
# 获取次二月预测结果
|
||||||
|
next_two_months_df = df.iloc[[1]]
|
||||||
|
# 获取次三月预测结果
|
||||||
|
next_three_months_df = df.iloc[[2]]
|
||||||
|
# 获取次四月预测结果
|
||||||
|
next_four_months_df = df[df['ds'] == df['ds'].max()]
|
||||||
|
|
||||||
|
wd = ['next_month', 'next_two_months',
|
||||||
|
'next_three_months', 'next_four_months']
|
||||||
|
model_name_list, model_id_name_dict = get_modelsname(df, global_config)
|
||||||
|
|
||||||
|
for df, w in zip([next_month_df, next_two_months_df, next_three_months_df, next_four_months_df], wd):
|
||||||
|
|
||||||
|
next_day_df = df[['ds', 'created_dt'] + model_name_list]
|
||||||
|
pydantic_results = convert_df_to_pydantic(
|
||||||
|
next_day_df, model_id_name_dict, w, global_config)
|
||||||
|
if pydantic_results:
|
||||||
|
insert_query = """
|
||||||
|
INSERT INTO v_tbl_predict_prediction_results (
|
||||||
|
prediction_date, bdwd,
|
||||||
|
feature_factor_frequency, strategy_id, predicted_price,
|
||||||
|
model_evaluation_id, model_id, tenant_code,
|
||||||
|
version_num, delete_flag, create_user, create_date, update_user, update_date
|
||||||
|
) VALUES (
|
||||||
|
%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s
|
||||||
|
)
|
||||||
|
ON DUPLICATE KEY UPDATE
|
||||||
|
feature_factor_frequency = VALUES(feature_factor_frequency),
|
||||||
|
predicted_price = VALUES(predicted_price),
|
||||||
|
model_evaluation_id = VALUES(model_evaluation_id),
|
||||||
|
tenant_code = VALUES(tenant_code),
|
||||||
|
version_num = VALUES(version_num),
|
||||||
|
delete_flag = VALUES(delete_flag),
|
||||||
|
create_user = VALUES(create_user),
|
||||||
|
create_date = VALUES(create_date),
|
||||||
|
update_user = VALUES(update_user),
|
||||||
|
update_date = VALUES(update_date)
|
||||||
|
"""
|
||||||
|
params_list = []
|
||||||
|
for result in pydantic_results:
|
||||||
|
params = (
|
||||||
|
result.prediction_date,
|
||||||
|
result.bdwd,
|
||||||
|
result.feature_factor_frequency,
|
||||||
|
result.strategy_id,
|
||||||
|
result.predicted_price,
|
||||||
|
result.model_evaluation_id,
|
||||||
|
result.model_id,
|
||||||
|
result.tenant_code,
|
||||||
|
result.version_num,
|
||||||
|
result.delete_flag,
|
||||||
|
result.create_user,
|
||||||
|
result.create_date,
|
||||||
|
result.update_user,
|
||||||
|
result.update_date
|
||||||
|
)
|
||||||
|
params_list.append(params)
|
||||||
|
affected_rows = config.db_mysql.execute_batch_insert(
|
||||||
|
insert_query, params_list)
|
||||||
|
print(f"成功插入 {affected_rows} 条记录")
|
||||||
|
config.db_mysql.close()
|
||||||
|
|
||||||
|
|
||||||
def predict_main():
|
def predict_main():
|
||||||
"""
|
"""
|
||||||
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
||||||
@ -351,8 +422,6 @@ def predict_main():
|
|||||||
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)
|
||||||
|
|
||||||
@ -437,4 +506,5 @@ if __name__ == '__main__':
|
|||||||
# logger.info(f'预测失败:{e}')
|
# logger.info(f'预测失败:{e}')
|
||||||
# continue
|
# continue
|
||||||
|
|
||||||
predict_main()
|
# predict_main()
|
||||||
|
sql_inset_predict(global_config)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
from lib.dataread import *
|
from lib.dataread import *
|
||||||
from config_jingbo_zhoudu import *
|
from config_jingbo_zhoudu import *
|
||||||
from lib.tools import SendMail, exception_logger
|
from lib.tools import SendMail, convert_df_to_pydantic, exception_logger, get_modelsname
|
||||||
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
from models.nerulforcastmodels import ex_Model, model_losss, brent_export_pdf
|
||||||
import datetime
|
import datetime
|
||||||
import torch
|
import torch
|
||||||
@ -80,6 +80,8 @@ global_config.update({
|
|||||||
# 数据库配置
|
# 数据库配置
|
||||||
'sqlitedb': sqlitedb,
|
'sqlitedb': sqlitedb,
|
||||||
'is_bdwd': is_bdwd,
|
'is_bdwd': is_bdwd,
|
||||||
|
'db_mysql': db_mysql,
|
||||||
|
'DEFAULT_CONFIG': DEFAULT_CONFIG,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -139,6 +141,69 @@ def push_market_value():
|
|||||||
logger.error(f"推送数据失败: {e}")
|
logger.error(f"推送数据失败: {e}")
|
||||||
|
|
||||||
|
|
||||||
|
def sql_inset_predict(global_config):
|
||||||
|
df = pd.read_csv(os.path.join(config.dataset, 'predict.csv'))
|
||||||
|
df['created_dt'] = pd.to_datetime(df['created_dt'])
|
||||||
|
df['ds'] = pd.to_datetime(df['ds'])
|
||||||
|
# 获取次日预测结果
|
||||||
|
next_week_df = df[df['ds'] == df['ds'].min()]
|
||||||
|
# 获取本周预测结果
|
||||||
|
next_two_weeks_df = df[df['ds'] == df['ds'].max()]
|
||||||
|
|
||||||
|
wd = ['next_week', 'next_two_weeks']
|
||||||
|
model_name_list, model_id_name_dict = get_modelsname(df, global_config)
|
||||||
|
|
||||||
|
for df, w in zip([next_week_df, next_two_weeks_df], wd):
|
||||||
|
next_day_df = df[['ds', 'created_dt'] + model_name_list]
|
||||||
|
pydantic_results = convert_df_to_pydantic(
|
||||||
|
next_day_df, model_id_name_dict, w, global_config)
|
||||||
|
if pydantic_results:
|
||||||
|
insert_query = """
|
||||||
|
INSERT INTO v_tbl_predict_prediction_results (
|
||||||
|
prediction_date, bdwd,
|
||||||
|
feature_factor_frequency, strategy_id, predicted_price,
|
||||||
|
model_evaluation_id, model_id, tenant_code,
|
||||||
|
version_num, delete_flag, create_user, create_date, update_user, update_date
|
||||||
|
) VALUES (
|
||||||
|
%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s
|
||||||
|
)
|
||||||
|
ON DUPLICATE KEY UPDATE
|
||||||
|
feature_factor_frequency = VALUES(feature_factor_frequency),
|
||||||
|
predicted_price = VALUES(predicted_price),
|
||||||
|
model_evaluation_id = VALUES(model_evaluation_id),
|
||||||
|
tenant_code = VALUES(tenant_code),
|
||||||
|
version_num = VALUES(version_num),
|
||||||
|
delete_flag = VALUES(delete_flag),
|
||||||
|
create_user = VALUES(create_user),
|
||||||
|
create_date = VALUES(create_date),
|
||||||
|
update_user = VALUES(update_user),
|
||||||
|
update_date = VALUES(update_date)
|
||||||
|
"""
|
||||||
|
params_list = []
|
||||||
|
for result in pydantic_results:
|
||||||
|
params = (
|
||||||
|
result.prediction_date,
|
||||||
|
result.bdwd,
|
||||||
|
result.feature_factor_frequency,
|
||||||
|
result.strategy_id,
|
||||||
|
result.predicted_price,
|
||||||
|
result.model_evaluation_id,
|
||||||
|
result.model_id,
|
||||||
|
result.tenant_code,
|
||||||
|
result.version_num,
|
||||||
|
result.delete_flag,
|
||||||
|
result.create_user,
|
||||||
|
result.create_date,
|
||||||
|
result.update_user,
|
||||||
|
result.update_date
|
||||||
|
)
|
||||||
|
params_list.append(params)
|
||||||
|
affected_rows = config.db_mysql.execute_batch_insert(
|
||||||
|
insert_query, params_list)
|
||||||
|
print(f"成功插入 {affected_rows} 条记录")
|
||||||
|
config.db_mysql.close()
|
||||||
|
|
||||||
|
|
||||||
def predict_main():
|
def predict_main():
|
||||||
"""
|
"""
|
||||||
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
主预测函数,用于从 ETA 获取数据、处理数据、训练模型并进行预测。
|
||||||
@ -335,7 +400,6 @@ def predict_main():
|
|||||||
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)
|
||||||
|
|
||||||
@ -413,4 +477,5 @@ if __name__ == '__main__':
|
|||||||
# logger.info(f'预测失败:{e}')
|
# logger.info(f'预测失败:{e}')
|
||||||
# continue
|
# continue
|
||||||
|
|
||||||
predict_main()
|
# predict_main()
|
||||||
|
sql_inset_predict(global_config)
|
||||||
|
@ -241,6 +241,37 @@ def ex_Model(df, horizon, input_size, train_steps, val_check_steps, early_stop_p
|
|||||||
if config.is_update_eta:
|
if config.is_update_eta:
|
||||||
df_predict['ds'] = pd.to_datetime(df_predict['ds'])
|
df_predict['ds'] = pd.to_datetime(df_predict['ds'])
|
||||||
|
|
||||||
|
# 按行遍历df_predict
|
||||||
|
IndexName = data['IndexName']
|
||||||
|
for index, row in df_predict.iterrows():
|
||||||
|
try:
|
||||||
|
yy = config.bdwdname[index]
|
||||||
|
except IndexError as e:
|
||||||
|
break
|
||||||
|
for m in modelsindex[index].keys():
|
||||||
|
if m not in df_predict.columns:
|
||||||
|
continue
|
||||||
|
if m == 'FEDformer':
|
||||||
|
continue
|
||||||
|
list = [{'Date': config.end_time, 'Value': round(row[m], 2)}]
|
||||||
|
data['DataList'] = list
|
||||||
|
data['IndexCode'] = modelsindex[index][m]
|
||||||
|
# data['IndexName'] = f'价格预测{m}模型'
|
||||||
|
data['IndexName'] = data['IndexName'].replace('xx', m)
|
||||||
|
data['IndexName'] = data['IndexName'].replace('yy', yy)
|
||||||
|
data['Remark'] = m
|
||||||
|
print('预测数据上传到eta:')
|
||||||
|
etadata.push_data(data)
|
||||||
|
# print(data)
|
||||||
|
data['IndexName'] = IndexName
|
||||||
|
|
||||||
|
# 把预测值上传到市场信息平台
|
||||||
|
if config.is_update_market:
|
||||||
|
'''
|
||||||
|
预测结果整理,写入到数据表 v_tbl_predict_prediction_results
|
||||||
|
'''
|
||||||
|
df_predict['ds'] = pd.to_datetime(df_predict['ds'])
|
||||||
|
|
||||||
# 按行遍历df_predict
|
# 按行遍历df_predict
|
||||||
IndexName = data['IndexName']
|
IndexName = data['IndexName']
|
||||||
for index, row in df_predict.iterrows():
|
for index, row in df_predict.iterrows():
|
||||||
|
Loading…
Reference in New Issue
Block a user