85a0031a78
- 新增 exchanges/ 模块:MarketDataFeed 统一接口、BaseExchangeAdapter 抽象基类、 BinanceAdapter 完整实现(WebSocket + REST) - WebSocket 层基于 binance 官方 SDK 的 WebsocketClient,自动多路复用与断线重连 - REST 层使用 MainClient(Spot),实现 fetchKlines 自动分页补拉 + fetchMarkets 元数据解析 - 数据标准化:Ticker/Trade/OrderBook/Kline 类型定义与 Binance 原生格式互转 - 引入 RxJS Subject 作为统一事件流管道,按 eventType 运行时路由分发 - 重构 config/:YAML 驱动配置加载 + 零依赖运行时校验(fail-fast) - 重构 db/:TypeORM DataSource 配置 + TimescaleDB K 线 Hypertable 实体 - 新增 utils/logger.ts:Pino 结构化日志(开发环境 pino-pretty 彩色输出) - 新增 env.yaml 作为 TS/Python 共享的统一环境配置源 - 删除旧版手写 SQL schema 与散落配置文件,收敛到 TypeORM 实体管理 - 安装 rxjs@7.8.2 依赖
37 lines
892 B
JSON
37 lines
892 B
JSON
{
|
|
"name": "trade-data",
|
|
"version": "0.1.0",
|
|
"description": "数字货币量化交易系统 - TypeScript 数据模块",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "tsx watch src/index.ts",
|
|
"build": "tsc",
|
|
"start": "node dist/index.js",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"lint": "eslint src/",
|
|
"format": "prettier --write src/"
|
|
},
|
|
"dependencies": {
|
|
"@timescaledb/typeorm": "^0.0.1",
|
|
"binance": "^3.5.9",
|
|
"ccxt": "^4.5.56",
|
|
"ioredis": "^5.11.1",
|
|
"pg": "^8.21.0",
|
|
"pino": "^10.3.1",
|
|
"rxjs": "^7.8.2",
|
|
"typeorm": "^1.0.0",
|
|
"yaml": "^2.9.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/bun": "^1.3.14",
|
|
"@types/node": "^25.9.2",
|
|
"@types/pg": "^8.20.0",
|
|
"@types/ws": "^8.18.1",
|
|
"eslint": "^10.4.1",
|
|
"prettier": "^3.8.3",
|
|
"tsx": "^4.22.4",
|
|
"typescript": "^6.0.3",
|
|
"vitest": "^4.1.8"
|
|
}
|
|
} |