학습 데이터 구조
이 페이지는 NoahAI Client가 서비스에서 사용하는 판단·시장·계정·리스크·실행·설명 기록의 공개 모델을 설명합니다. 핵심 목적은 AI 의사결정의 추적, 감사, 재현 가능성이며, 실제 원장에는 기관·계정·PAPER/LIVE·전략 버전 경계가 함께 적용됩니다.
왜 필요한가
금융 AI는 단순한 결과 예측을 넘어서 서비스 중인 의사결정의 추적·감사·재현이 가능해야 합니다. NoahAI는 지원되는 판단 경로의 근거·차단·실행 요청·결과를 모드별 원장에 남깁니다.
누가 읽어야 하나
본 구조는 PAPER와 LIVE, 거래소와 증권사, 통화와 전략 버전을 분리하며 제품 검증·기관별 검토·감사에 공통으로 활용됩니다.
현재 서비스 데이터 흐름
- 실시간 시장 정보 수집 (가격, 변동성, 오더북)
- AI 의사결정 생성 (신호, 신뢰도, 가드레일 적용)
- 주문 실행 피드백 (체결, 슬리피지, 거부 여부)
- 거래 후 검토 및 학습 루프
핵심은 "기록의 표준화"입니다.
판단/맥락/결과를 동일한 스키마로 남겨야 복기 가능, 학습 가능, 감사/추적 가능, 사용자 신뢰 확보가 가능합니다. 아래는 CareLog-like Schema로 설계된 주요 데이터 구조입니다.
DecisionLog
의사결정 로그
| 필드명 | 타입 | 설명 |
|---|---|---|
| decision_id | UUID | 고유 결정 ID |
| timestamp | TIMESTAMP | 결정 시점 |
| strategy | STRING | 선택된 전략 |
| action | ENUM | 액션 타입 (BUY/SELL/HOLD) |
| reasoning | JSON | 판단 근거 (패턴, 신호, 가중치) |
| confidence | FLOAT | 신뢰도 점수 (0-1) |
| model_version | STRING | 사용된 AI 모델 버전 |
MarketSnapshot
시장 데이터 스냅샷
| 필드명 | 타입 | 설명 |
|---|---|---|
| snapshot_id | UUID | 고유 스냅샷 ID |
| timestamp | TIMESTAMP | 스냅샷 시점 |
| symbol | STRING | 거래 심볼 |
| price | DECIMAL | 현재 가격 |
| volume | DECIMAL | 거래량 |
| volatility | DECIMAL | 변동성 지표 |
| orderbook_depth | JSON | 오더북 깊이 데이터 |
| market_signals | JSON | 감지된 시장 신호 |
AccountSnapshot
계정 상태 스냅샷
| 필드명 | 타입 | 설명 |
|---|---|---|
| snapshot_id | UUID | 고유 스냅샷 ID |
| timestamp | TIMESTAMP | 스냅샷 시점 |
| balance | DECIMAL | 잔고 |
| positions | JSON | 현재 포지션 목록 |
| leverage | DECIMAL | 레버리지 비율 |
| margin_used | DECIMAL | 사용 중인 마진 |
| unrealized_pnl | DECIMAL | 미실현 손익 |
RiskEvent
리스크 이벤트
| 필드명 | 타입 | 설명 |
|---|---|---|
| event_id | UUID | 고유 이벤트 ID |
| timestamp | TIMESTAMP | 이벤트 시점 |
| risk_type | ENUM | 리스크 유형 (LOSS_LIMIT/VOLATILITY/LEVERAGE/ANOMALY) |
| severity | ENUM | 심각도 (LOW/MEDIUM/HIGH/CRITICAL) |
| trigger_value | DECIMAL | 트리거 값 |
| action_taken | STRING | 취해진 조치 |
| guardrail_applied | BOOLEAN | 가드레일 적용 여부 |
ExecutionResult
실행 결과
| 필드명 | 타입 | 설명 |
|---|---|---|
| execution_id | UUID | 고유 실행 ID |
| decision_id | UUID | 연결된 결정 ID |
| timestamp | TIMESTAMP | 실행 시점 |
| order_type | ENUM | 주문 유형 (MARKET/LIMIT/STOP) |
| quantity | DECIMAL | 수량 |
| executed_price | DECIMAL | 실행 가격 |
| slippage | DECIMAL | 슬리피지 |
| fee | DECIMAL | 수수료 |
| status | ENUM | 상태 (PENDING/FILLED/PARTIAL/CANCELLED/FAILED) |
XAITrace
XAI 추적 로그
| 필드명 | 타입 | 설명 |
|---|---|---|
| trace_id | UUID | 고유 추적 ID |
| decision_id | UUID | 연결된 결정 ID |
| timestamp | TIMESTAMP | 추적 시점 |
| explanation | TEXT | 의사결정 설명 (사람이 읽을 수 있는 형태) |
| evidence | JSON | 근거 데이터 (패턴, 신호, 통계) |
| confidence_breakdown | JSON | 신뢰도 세부 분석 |
| alternative_options | JSON | 고려되었지만 선택되지 않은 옵션들 |
학습 데이터 구조 예시
아래 JSON은 필드 관계를 설명하기 위한 합성 예시이며 실제 사용자·계정·주문·성과 데이터가 아닙니다.
실제 사용되는 학습 데이터 구조는 다음과 같습니다:
{
"example_only": true,
"decision_evidence": {
"decision_history": [
{
"timestamp": "YYYY-MM-DDTHH:MM:SSZ",
"asset_type": "crypto",
"venue": "example_venue",
"execution_mode": "PAPER",
"strategy_key": "example_strategy",
"version_id": "example_version",
"decision": "HOLD_OR_ENTRY_CANDIDATE",
"reasoning": {
"evidence_refs": ["market_snapshot_id"],
"market_regime": "example_regime",
"unsupported_conditions": []
},
"guardrail_result": "ALLOW_OR_BLOCK",
"execution_status": "NOT_SENT_OR_SIMULATED_OR_CONFIRMED",
"result_ref": "execution_result_id"
}
]
}
}이 구조는 판단 근거, 가드레일, 실행 모드, 기관 응답과 전략 버전의 연결을 설명합니다. 실제 내부 스키마와 민감 필드는 공개 범위에서 제외됩니다.
스키마 설계 원칙
- 표준화: 모든 판단/맥락/결과가 동일한 형식으로 기록되어 복기 가능
- 추적 가능성: 각 레코드가 고유 ID와 타임스탬프를 가져 시간순 추적 가능
- 연결성: DecisionLog, ExecutionResult, XAITrace 등이 서로 연결되어 전체 흐름 추적
- 익명화 로드맵: 여러 사용자 집단학습은 별도 동의·익명화·철회·운영 검증 후에만 가능하며, 현재 공개 배포판에서도 운영 기능이 아님
- 확장성: 새로운 필드 추가가 기존 구조를 깨뜨리지 않도록 JSON 필드 활용
데이터 사용 예시
거래 패턴 유사성 검증
과거 암호화폐 거래 패턴과 현재 시장 상황을 비교하여 유사한 패턴에서의 성과를 분석하고, 진입 전 패턴 검증을 통한 리스크 관리에 활용됩니다.
시장 국면별 임계값 조정
변동성 급증, 횡보장, 추세장 등 시장 국면에 따라 신뢰도 및 리스크 임계값을 동적으로 조정하여 최적의 의사결정을 지원합니다.
가드레일 효과 및 손실 방지
가드레일 적용 결과와 최대 낙폭을 분석하여 정책 개선과 리스크 관리 전략 최적화에 반영합니다.
관련 기술 문서
데이터 구조가 연결되는 설명·기록·학습 파이프라인의 상세 내용은 아래 문서에서 확인할 수 있습니다.