aggarwamnew/transact-guard
GitHub: aggarwamnew/transact-guard
一个基于 Spring Boot 的轻量级反洗钱交易监控引擎,通过可插拔规则检测可疑金融活动。
Stars: 0 | Forks: 0
# TransactGuard
一个 Spring Boot AML (反洗钱) 交易监控引擎。使用可插拔、基于规则的检测机制标记可疑的金融活动。
## 架构
```
POST /transactions → Ingest → Rule Engine → Flag → Store
GET /alerts → Query flagged transactions with risk scores
```
### 规则引擎(可插拔)
每个检测规则都实现了 `TransactionRule` 接口。添加新规则只需添加一个类。
**包含的规则:**
- **High Value** — 单笔交易超过报告阈值(欧盟 AMLD 规定的 €10,000),风险随金额增加
- **Structuring** — 在时间窗口内多笔交易金额略低于报告阈值(拆分交易检测/Smurfing)
- **Velocity** — 同一账户在短时间内交易频率异常
- **Round-tripping** — 循环资金流:A → B → C → A
## 技术栈
- Java 17+
- Spring Boot 3.x
- REST API (Spring Web)
- AWS DynamoDB (持久化)
- JUnit 5 + MockMvc (测试)
## 10 天构建计划
- [x] **第 1 天** — 项目脚手架、README、CI 骨架
- [x] **第 2 天** — `TransactionRule` 接口 + 规则引擎核心
- [x] **第 3 天** — `RuleName` 枚举(用于审计合规的封闭集合)+ 结构化 AUDIT 日志
- [x] **第 4 天** — `HighValueRule` + `StructuringRule` 及完整测试套件(20 个测试通过)
- [ ] **第 5 天** — `VelocityRule` + `RoundTripRule` 实现及测试
- [ ] **第 6 天** — `POST /transactions` REST 端点 + 内存交易存储
- [ ] **第 7 天** — `GET /alerts` REST 端点 + 内存警报存储 + 集成测试
- [ ] **第 8 天** — AWS DynamoDB 集成(替换内存存储)
- [ ] **第 9 天** — Kafka 事件流(从 topic 摄取交易,发布警报)
- [ ] **第 10 天** — Dashboard 指标端点,文档完善,发布
标签:AML, AWS, DPI, DynamoDB, FinTech, REST API, Spring Boot, 云计算, 交易分析, 交易监控, 反洗钱, 后端开发, 域名枚举, 异常检测, 欺诈检测, 洗钱监测, 结构化交易识别, 网络测绘, 规则引擎, 金融合规, 金融科技, 风险评分