|
@@ -127,7 +127,7 @@ def cal_and_save_portfolio_nav(cal_portfolio_info, is_save_local) {
|
|
try {
|
|
try {
|
|
|
|
|
|
tb_portfolio_nav.rename!('entity_id', 'portfolio_id');
|
|
tb_portfolio_nav.rename!('entity_id', 'portfolio_id');
|
|
- save_and_sync(tb_portfolio_nav, 'raw_db.pf_portfolio_nav', 'raw_db.pf_portfolio_nav');
|
|
|
|
|
|
+ save_and_sync(tb_portfolio_nav, 'raw_db.pf_portfolio_nav', 'raw_db.pf_portfolio_nav', 'portfolio_id', 'price_date');
|
|
|
|
|
|
// 数据初始化时将指标存入本地
|
|
// 数据初始化时将指标存入本地
|
|
if(is_save_local == true) {
|
|
if(is_save_local == true) {
|
|
@@ -245,37 +245,37 @@ def cal_and_save_entity_indicators(entity_type, cal_entity_info, is_save_local)
|
|
des = get_performance_table_description(entity_type)[0];
|
|
des = get_performance_table_description(entity_type)[0];
|
|
chg_columns_for_mysql(tb_entity_performance, des.sec_id_col);
|
|
chg_columns_for_mysql(tb_entity_performance, des.sec_id_col);
|
|
tb_entity_performance.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
tb_entity_performance.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
- save_and_sync(tb_entity_performance, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_performance, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'end_date');
|
|
if(is_save_local == true) save_table(tb_entity_performance, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_performance, des.table_name, false);
|
|
|
|
|
|
des = get_indicator_table_description(entity_type)[0];
|
|
des = get_indicator_table_description(entity_type)[0];
|
|
chg_columns_for_mysql(tb_entity_indicator, des.sec_id_col);
|
|
chg_columns_for_mysql(tb_entity_indicator, des.sec_id_col);
|
|
- save_and_sync(tb_entity_indicator, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_indicator, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'end_date');
|
|
if(is_save_local == true) save_table(tb_entity_indicator, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_indicator, des.table_name, false);
|
|
|
|
|
|
des = get_risk_stats_table_description(entity_type)[0];
|
|
des = get_risk_stats_table_description(entity_type)[0];
|
|
chg_columns_for_mysql(tb_entity_risk_stats, des.sec_id_col);
|
|
chg_columns_for_mysql(tb_entity_risk_stats, des.sec_id_col);
|
|
- save_and_sync(tb_entity_risk_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_risk_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'end_date');
|
|
if(is_save_local == true) save_table(tb_entity_risk_stats, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_risk_stats, des.table_name, false);
|
|
|
|
|
|
des = get_riskadjret_stats_table_description(entity_type)[0];
|
|
des = get_riskadjret_stats_table_description(entity_type)[0];
|
|
chg_columns_for_mysql(tb_entity_riskadjret_stats, des.sec_id_col);
|
|
chg_columns_for_mysql(tb_entity_riskadjret_stats, des.sec_id_col);
|
|
- save_and_sync(tb_entity_riskadjret_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_riskadjret_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'end_date');
|
|
if(is_save_local == true) save_table(tb_entity_riskadjret_stats, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_riskadjret_stats, des.table_name, false);
|
|
|
|
|
|
des = get_capture_style_table_description(entity_type)[0];
|
|
des = get_capture_style_table_description(entity_type)[0];
|
|
chg_columns_for_mysql(tb_entity_style_stats, des.sec_id_col);
|
|
chg_columns_for_mysql(tb_entity_style_stats, des.sec_id_col);
|
|
- save_and_sync(tb_entity_style_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_style_stats, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'end_date');
|
|
if(is_save_local == true) save_table(tb_entity_style_stats, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_style_stats, des.table_name, false);
|
|
|
|
|
|
des = get_performance_weekly_table_description(entity_type)[0];
|
|
des = get_performance_weekly_table_description(entity_type)[0];
|
|
tb_entity_performance_weekly.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
tb_entity_performance_weekly.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
- save_and_sync(tb_entity_performance_weekly, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_performance_weekly, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'year_week');
|
|
if(is_save_local == true) save_table(tb_entity_performance_weekly, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_performance_weekly, des.table_name, false);
|
|
|
|
|
|
des = get_latest_performance_table_description(entity_type)[0];
|
|
des = get_latest_performance_table_description(entity_type)[0];
|
|
tb_entity_latest_performance.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
tb_entity_latest_performance.rename!('cumulative_nav', des.cumulative_nav_col);
|
|
- save_and_sync(tb_entity_latest_performance, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), );
|
|
|
|
|
|
+ save_and_sync(tb_entity_latest_performance, des.table_name.strReplace('pfdb', 'raw_db').strReplace('mfdb', 'raw_db'), , des.sec_id_col, 'price_date');
|
|
if(is_save_local == true) save_table(tb_entity_latest_performance, des.table_name, false);
|
|
if(is_save_local == true) save_table(tb_entity_latest_performance, des.table_name, false);
|
|
|
|
|
|
|
|
|
|
@@ -299,7 +299,7 @@ def cal_and_save_entity_indicators(entity_type, cal_entity_info, is_save_local)
|
|
* @param updatetime <DATETIME>: 持仓证券净值更新时间,忽略或传入1989.01.01及更早的日期被认为在做数据初始化
|
|
* @param updatetime <DATETIME>: 持仓证券净值更新时间,忽略或传入1989.01.01及更早的日期被认为在做数据初始化
|
|
*
|
|
*
|
|
*
|
|
*
|
|
- * Example: CalPortfolioPerformanceTask(2024.10.28);
|
|
|
|
|
|
+ * Example: CalPortfolioPerformanceTask(2025.01.23);
|
|
* CalPortfolioPerformanceTask(1989.01.01); -- 【初始化专用】 (45min)
|
|
* CalPortfolioPerformanceTask(1989.01.01); -- 【初始化专用】 (45min)
|
|
*/
|
|
*/
|
|
def CalPortfolioPerformanceTask(updatetime) {
|
|
def CalPortfolioPerformanceTask(updatetime) {
|
|
@@ -367,7 +367,7 @@ def cal_and_save_factor_nav(cal_factor_info, is_save_local) {
|
|
}
|
|
}
|
|
|
|
|
|
if(! t_factor_value.isVoid() && t_factor_value.size() > 0) {
|
|
if(! t_factor_value.isVoid() && t_factor_value.size() > 0) {
|
|
- save_and_sync(t_factor_value, 'raw_db.cm_factor_value', 'raw_db.cm_factor_value');
|
|
|
|
|
|
+ save_and_sync(t_factor_value, 'raw_db.cm_factor_value', 'raw_db.cm_factor_value', 'factor_id', 'price_date');
|
|
|
|
|
|
if(is_save_local == true) {
|
|
if(is_save_local == true) {
|
|
save_table(t_factor_value, 'pfdb.cm_factor_value', false);
|
|
save_table(t_factor_value, 'pfdb.cm_factor_value', false);
|
|
@@ -501,7 +501,7 @@ def cal_bond_factor_ret(updatetime) {
|
|
* CalFactorPerformanceTask(1989.01.01); -- 【初始化专用】 (1.3 min)
|
|
* CalFactorPerformanceTask(1989.01.01); -- 【初始化专用】 (1.3 min)
|
|
*/
|
|
*/
|
|
def CalFactorPerformanceTask(updatetime) {
|
|
def CalFactorPerformanceTask(updatetime) {
|
|
-//updatetime=2024.10.28
|
|
|
|
|
|
+//updatetime=2025.01.23
|
|
rt = '';
|
|
rt = '';
|
|
is_save_local = iif(updatetime <= get_ini_data_const()['date'], true, false);
|
|
is_save_local = iif(updatetime <= get_ini_data_const()['date'], true, false);
|
|
|
|
|
|
@@ -560,7 +560,7 @@ def CalCategoryAverageNavTask(updatetime) {
|
|
t_index_value = SELECT entity_id AS index_id, price_date, nav AS index_value, incl_cal_count AS incl_cal_fund_count, total_cnt AS total_fund_count
|
|
t_index_value = SELECT entity_id AS index_id, price_date, nav AS index_value, incl_cal_count AS incl_cal_fund_count, total_cnt AS total_fund_count
|
|
FROM ej(t_tmp, t_ret, ['entity_id', 'price_date']);
|
|
FROM ej(t_tmp, t_ret, ['entity_id', 'price_date']);
|
|
|
|
|
|
- save_and_sync(t_index_value, 'raw_db.indexes_ty_index', );
|
|
|
|
|
|
+ save_and_sync(t_index_value, 'raw_db.indexes_ty_index', ,'index_id', 'price_date');
|
|
|
|
|
|
if(is_save_local == true) {
|
|
if(is_save_local == true) {
|
|
|
|
|