各 Phase 對應服務清單
這份文件的重點,是把 Phase 1 到 Phase 5 從抽象藍圖落到具體服務邊界。
原則不是每個 phase 都暴增服務數量,而是每一階段都增加剛好足夠的系統能力。
Phase 1:建立最小平台骨架
必要服務
instrument-master-serviceconfig-servicemarket-data-vendor-connectorhistorical-loadernormalizerraw-archive-writerstrategy-runtimerisk-engineexecution-gateway
角色說明
instrument-master-service: 管理instrument_id、symbol mapping、market/venue 基本資訊config-service: 管理策略設定、broker 設定、風控參數market-data-vendor-connector: 接入至少一條 live market data sourcehistorical-loader: 匯入歷史資料,供 replay 與回測使用normalizer: 把來源資料轉成 canonical eventsraw-archive-writer: 保留 raw immutable logstrategy-runtime: 讓策略只吃 canonical eventsrisk-engine: 執行基本 pre-trade checksexecution-gateway: 統一 broker abstraction
先不要急著做
- 太細的 microservice 拆分
- 複雜 portfolio engine
- 進階 data quality 平台
Phase 2:統一 replay 與 research
新增服務
replay-servicebar-aggregatorindicator-enginedata-quality-monitor
角色說明
replay-service: 將 historical data 重播為與 live 相同的事件介面bar-aggregator: 根據 event time 與 session 規則聚合 barsindicator-engine: 從 canonical events 產出可重用指標與特徵data-quality-monitor: 偵測 gap、duplicate、stale、late event
成熟化重點
- strategy runtime 不知道自己吃的是 replay 還是 live
- bars 有明確聚合規則與 finalize 規則
- data quality 不再只是人工看圖
Phase 3:治理與分析層成形
新增服務
schema-registry或等價 schema 管理元件analytics-loaderworkflow-orchestratormetrics-exporteralert-router
角色說明
schema-registry: 管理 canonical schema version 與相容性analytics-loader: 將 canonical / derived data 匯入 ClickHouseworkflow-orchestrator: 管 daily ingest、backfill、recompute、quality jobsmetrics-exporter: 暴露服務層與資料層 metricsalert-router: 將資料品質與系統異常送到告警管道
成熟化重點
- backfill 與 daily jobs 不再靠一堆散落 script
- analytics 與 operational query 開始正式分層
- 各 topic/table/dataset 有更清楚 owner 與用途
Phase 4:營運與交易成熟化
新增服務
fill-reconcilerposition-reconcileraccount-snapshot-serviceops-control-servicevendor-divergence-monitor
角色說明
fill-reconciler: 對帳 order、fill、position 的一致性position-reconciler: 比對 internal 與 broker positionsaccount-snapshot-service: 產出 account / portfolio snapshotsops-control-service: 提供 kill switch、strategy on/off、stale data guardvendor-divergence-monitor: 比對不同 source 的行情差異
成熟化重點
- production 不只是能下單,而是能安全營運
- incidents 可以回放,也可以對帳與追責
- execution truth 開始被正式管理
Phase 5:資料資產與平台治理
新增服務或平台元件
metadata-cataloglineage-servicefeature-dataset-registryresearch-dataset-builder
角色說明
metadata-catalog: 管理資料資產描述、owner、用途、文件lineage-service: 追蹤 topic、table、dataset 的上下游依賴feature-dataset-registry: 管理 feature / factor dataset 的版本與定義research-dataset-builder: 建立可重現的研究資料集
成熟化重點
- 平台不只是能跑,而是變成公司正式研究資產
- 新人與新策略可更快理解與接入既有資料資產
- 資料與服務開始有 ownership、catalog、lineage
最小服務集合建議
如果你希望避免一開始服務數量爆炸,可以先把多個角色合併成較少進程:
control-plane: instrument + configingestion-plane: connectors + normalizer + raw writercompute-plane: replay + bar + indicator + qualitytrading-plane: strategy + risk + executionops-plane: metrics + alerts + reconciliation
等邊界穩定,再逐步拆細。