chore: baseline — ORM migration + systemd deploy + MCP server + daily check
- ORM migration: models/ops 重构 - deploy: 标准化 systemd timer/service 部署体系 - MCP server: 5 个只读工具(任务/状态/数据集) - daily check: 数据一致性巡检 - watch: task_watch 后台监控 - kline_daily: 麦蕊优先,时间门禁15:00 - 删除: task_industry_sector, task_sector_features
This commit is contained in:
@@ -34,13 +34,13 @@ def _is_market_closed() -> bool:
|
||||
|
||||
|
||||
def _effective_sync_end() -> str:
|
||||
"""若盘后则今天,否则昨天。"""
|
||||
today = datetime.now()
|
||||
if today.time() >= dtime(15, 30):
|
||||
return today.strftime("%Y-%m-%d")
|
||||
# 昨天
|
||||
from datetime import timedelta
|
||||
return (today - timedelta(days=1)).strftime("%Y-%m-%d")
|
||||
"""若盘后则今天,否则昨天。
|
||||
|
||||
委派到 app.core.datasource.utils.effective_market_date() 统一实现,
|
||||
该函数加载交易日历,会跳过节假日返回最近交易日。
|
||||
"""
|
||||
from app.core.datasource.utils import effective_market_date
|
||||
return effective_market_date()
|
||||
|
||||
|
||||
class SyncTask:
|
||||
|
||||
+12
-24
@@ -94,30 +94,6 @@ SYNC_DEFINITIONS: list[dict[str, Any]] = [
|
||||
"dependency_ids": ["stock_basic"],
|
||||
"sort_order": 50,
|
||||
},
|
||||
{
|
||||
"dataset_id": "industry_sector",
|
||||
"name": "股票-行业映射",
|
||||
"description": "股票-行业映射 + 行业字典(Baostock)",
|
||||
"storage_uri": "PG market_data.industry + sectors + stock_sector_map",
|
||||
"storage_layer": "pg",
|
||||
"management_role": "基础字典",
|
||||
"source": "Baostock query_stock_industry",
|
||||
"sync_script": "app.tasks.task_industry_sector:run",
|
||||
"dependency_ids": ["stock_basic"],
|
||||
"sort_order": 60,
|
||||
},
|
||||
{
|
||||
"dataset_id": "sector_features",
|
||||
"name": "行业聚合特征",
|
||||
"description": "由 kline_stock + industry 衍生:行业日收益 / 行业指数 close / EMA10-20-200 / score。纯本地计算,无外部 API。",
|
||||
"storage_uri": "PG market_data.sector_indices + sector_features_daily",
|
||||
"storage_layer": "pg",
|
||||
"management_role": "衍生源",
|
||||
"source": "本地计算(kline_stock + industry)",
|
||||
"sync_script": "app.tasks.task_sector_features:run",
|
||||
"dependency_ids": ["kline_daily", "industry_sector"],
|
||||
"sort_order": 65,
|
||||
},
|
||||
{
|
||||
"dataset_id": "share_snapshot",
|
||||
"name": "股本快照",
|
||||
@@ -178,6 +154,18 @@ SYNC_DEFINITIONS: list[dict[str, Any]] = [
|
||||
"dependency_ids": ["kline_daily"],
|
||||
"sort_order": 90,
|
||||
},
|
||||
{
|
||||
"dataset_id": "mairui_indicators",
|
||||
"name": "日 K 技术指标 MACD/KDJ/BOLL (mairui)",
|
||||
"description": "mairui /hsstock/history/{macd,kdj,boll} 直拉,写 3 张表;每交易日 16:40 增量。",
|
||||
"storage_uri": "PG market_data.kline_stock_macd_daily + kdj_daily + boll_daily",
|
||||
"storage_layer": "pg",
|
||||
"management_role": "原始源",
|
||||
"source": "mairui /hsstock/history/{macd,kdj,boll}/{symbol}/d/n",
|
||||
"sync_script": "app.tasks.task_mairui_indicators:run",
|
||||
"dependency_ids": ["stock_basic"],
|
||||
"sort_order": 91,
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user