34 lines
1.5 KiB
Python
34 lines
1.5 KiB
Python
"""HTTP 路由(OpenAPI 契约的载体)——按域拆分:
|
|
|
|
stocks.py /api/stocks*(列表/筛选项/公司/财务/分红/参考数据)+ /api/data/sync
|
|
etfs.py /api/etfs + /api/etf/sync*
|
|
market.py /api/market/*(总览/打板/概念板块/指数 K 线与详情)
|
|
backtest.py /api/backtest + /api/backtest/event
|
|
screener.py /api/screener/*(选股/历史/同步/个股预览)
|
|
signals.py /api/signals*(买卖点实验室:方案/分析/扫描/评估)
|
|
user.py /api/preferences + /api/watchlist* + /api/trades*
|
|
_deps.py 共享件:JSON 直返缓存、复权换算、行转 Bar、共享常量与 SQL
|
|
|
|
统一约定:prefix=/api 与 require_user 鉴权在本层挂一次,子路由不带前缀;
|
|
路由注册顺序 = include 顺序(各域路径前缀互不重叠,顺序不影响匹配)。
|
|
"""
|
|
from fastapi import APIRouter, Depends
|
|
|
|
from ..auth import require_user
|
|
from .backtest import router as backtest_router
|
|
from .etfs import router as etfs_router
|
|
from .market import router as market_router
|
|
from .screener import router as screener_router
|
|
from .signals import router as signals_router
|
|
from .stocks import router as stocks_router
|
|
from .user import router as user_router
|
|
|
|
router = APIRouter(prefix="/api", dependencies=[Depends(require_user)])
|
|
router.include_router(stocks_router)
|
|
router.include_router(etfs_router)
|
|
router.include_router(market_router)
|
|
router.include_router(backtest_router)
|
|
router.include_router(screener_router)
|
|
router.include_router(signals_router)
|
|
router.include_router(user_router)
|