You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
- Oracle 서비스 어댑터 5개를 실제 API 포맷에 맞게 수정 - 모든 경로에 /api/v1/ prefix 추가 - price: data[] → bars 매핑, volume float→int - filings: accession_number→accession_no, total_count→total - financial: financial_data[] → periods, period_date 파싱 - finra: entries[] → data 매핑 - fred: data.observations 언패킹, value string→float (버그 수정 포함) - fixtures 6개를 실제 Oracle 응답 포맷으로 전면 교체 - 통합 테스트에서 httpx_mock 완전 제거 → 실제 Oracle 직접 호출 - 신규 단위 테스트 3개 파일 추가 (logging, fred_service, llm_parser_stub) - test_retries.py에 exhaustion 테스트 추가 - test_oracle_client.py에 connection/timeout/no-ctx 테스트 추가 - Phase 1/2 testing_checklist.md 실제 구현 기준으로 전면 재작성 - 전체 114 tests pass (unit 100 + replay 5 + integration 9) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
5 months ago | |
|---|---|---|
| .. | ||
| README.md | 5 months ago | |
| approval_ticket.schema.json | 5 months ago | |
| broker_integration_and_order_lifecycle.md | 5 months ago | |
| configuration_and_schemas.md | 5 months ago | |
| implementation_plan.md | 5 months ago | |
| live_config.schema.json | 5 months ago | |
| monitoring_alerting_and_ops.md | 5 months ago | |
| operator_runbook.md | 5 months ago | |
| order_event.schema.json | 5 months ago | |
| paper_trading_and_live_architecture.md | 5 months ago | |
| risk_guard_and_approval_workflow.md | 5 months ago | |
| state_machine_and_reconciliation.md | 5 months ago | |
| testing_checklist.md | 5 months ago | |
README.md
Phase 6 개발문서 패키지
이 문서는 Phase 0의 전략/리스크/데이터 정책, Phase 1의 저장소 구조/DB/서비스 계약, Phase 2의 ingestion 파이프라인, Phase 3의 parser/feature/label 규칙, Phase 4의 백테스터, Phase 5의 attention overlay를 바탕으로, AI 코딩 에이전트가 paper trading 및 live execution 운영 레이어를 구현할 수 있도록 만든 Phase 6 상세 개발문서입니다.
목표
Phase 6의 목표는 아래 10가지를 실제 코드 수준으로 구현하는 것입니다.
- paper trading orchestrator를 구현한다.
- broker abstraction layer와 최소 1개 브로커(기본 reference: Alpaca paper)를 연동한다.
- candidate -> order plan -> order submit -> fill -> position -> exit 전체 주문 생명주기를 상태머신으로 구현한다.
- risk guard / pre-trade checks / kill switch / day halt를 구현한다.
- reconciliation(브로커 상태와 내부 상태 대사)와 idempotent recovery를 구현한다.
- human approval mode / fully automatic mode / dry-run mode를 지원한다.
- paper/live 공통 contract를 정의하고, Phase 4 백테스터 결과와 비교 가능한 blotter를 산출한다.
- 알림/모니터링/운영 대시보드를 구현한다.
- 장애 시 degraded mode / no-trade mode로 안전하게 전환한다.
- 실전 운영 전 테스트, paper gate, small-capital live gate를 문서화한다.
포함 문서
paper_trading_and_live_architecture.md- Phase 6 전체 아키텍처
- paper/live 모드 구분
- 상태 저장과 복구 전략
broker_integration_and_order_lifecycle.md- broker abstraction layer
- 주문/체결/취소/교체 규칙
- client order id 규칙
risk_guard_and_approval_workflow.md- pre-trade / in-trade / post-trade risk guard
- human approval workflow
- kill switch / trading halt 정책
state_machine_and_reconciliation.md- 실행 상태머신
- reconciliation loop
- restart / crash recovery 절차
monitoring_alerting_and_ops.md- 운영 모니터링
- alert routing
- degraded mode와 no-trade mode
configuration_and_schemas.md- live/paper 설정 구조
- schema 파일 설명
implementation_plan.md- AI 코딩 에이전트용 구현 순서
- 작업 분할
- 완료 기준
- 금지사항
testing_checklist.md- 단위/통합/replay/failover/UAT 체크리스트
operator_runbook.md- 운영자가 장 시작 전/중/후에 수행할 절차
live_config.schema.json- Phase 6 런타임 설정 스키마
order_event.schema.json- 주문/체결 이벤트 canonical schema
approval_ticket.schema.json- human approval ticket schema
Phase 6 범위
Phase 6에서는 아래를 구현합니다.
- broker abstraction layer
- paper trading runner
- optional live trading runner
- pre-trade checks
- order submit/cancel/replace
- fill handling / partial fill handling
- position lifecycle manager
- reconciliation job
- approval workflow
- kill switch / daily halt / degraded mode
- trade blotter / execution journal / alerts
Phase 6에서는 아직 아래를 구현하지 않습니다.
- multi-broker 동시 생산 운영
- 옵션/선물/숏셀 자동화
- 초단타 ORB 전용 execution stack
- 완전한 웹 기반 OMS/EMS
- 멀티유저 권한 체계
- 24/7 NOC 수준의 운영 자동화
핵심 원칙
- 실행은 항상 보수적이어야 한다. 좋은 체결보다 잘못된 체결을 피하는 것이 우선이다.
- 내부 상태와 브로커 상태는 항상 대사 가능해야 한다.
- 모든 실행 액션은 재시도 가능해야 하지만, 중복 주문은 절대 허용하지 않는다.
- 장애 시에는 자동으로 더 안전한 모드로 degrade 되어야 한다.
- paper와 live는 최대한 같은 코드 경로를 사용한다.
- human approval 없이도 돌아갈 수 있게 설계하되, 초기 운영은 approval mode를 기본으로 한다.
- Phase 0 정책(무료 데이터 전용, 공식 이벤트 우선, 소셜 overlay only)을 절대 깨지 않는다.
권장 구현 순서
paper_trading_and_live_architecture.mdbroker_integration_and_order_lifecycle.mdstate_machine_and_reconciliation.mdrisk_guard_and_approval_workflow.mdmonitoring_alerting_and_ops.mdconfiguration_and_schemas.mdlive_config.schema.jsonorder_event.schema.jsonapproval_ticket.schema.jsonimplementation_plan.mdtesting_checklist.mdoperator_runbook.md
완료 기준
Phase 6 완료의 최소 기준은 다음과 같습니다.
- 같은 candidate set으로 dry-run / paper / live-simulated 실행이 같은 order plan을 생성한다.
- broker adapter를 mocking 했을 때 주문/체결/부분체결/취소/교체/거부 전이가 모두 검증된다.
- restart 이후에도 실행 상태를 복구하고 reconciliation이 가능하다.
- approval mode와 auto mode가 동일한 risk checks를 통과한 주문만 제출한다.
- 장중 장애가 발생하면 degraded mode 또는 no-trade mode로 전환할 수 있다.
- 종가 후 trade blotter, exception log, execution journal, risk summary가 생성된다.