v2.0 Integrated Edition · 2026.05 67 Phases · 11 Supervisor Nodes · 76 Endpoints 1008 tests · 0 FAIL

WDLAB-AlphaForge

설계자의 투자 철학을 24시간 365일 오차 없이 실행하는 외부 신경계.
멀티 에이전트의 환각으로부터 자본을 지키는 화이트박스 AI 자동매매 플랫폼.

"인간의 지혜를 기계의 정확성으로 24시간 무결하게 실행하되,
기계가 인간을 대체하지 않게 하는 것."

11
Specialist Agents
6
RiskGuard Stages
5
AHE Meta Layers
5
Operation Gates
69
FastAPI Routes
246
KRX Symbols

왜 AlphaForge 인가?

AlphaForge는 단순히 돈을 벌어다 주는 블랙박스 소프트웨어가 아닙니다. 이것은 설계자의 투자 철학과 운용 원칙을 외부 신경계(external nervous system)로 시스템화한 정교한 결정체입니다. 본 시스템은 AI의 창의성보다 재현 가능성(reproducibility)에 집중합니다.

⌘

외부 신경계 모델

AI를 독립적인 의사결정자로 두지 않고, 설계자의 두뇌를 확장한 외부 신경계로 정의합니다. 어제 수익을 냈던 논리가 오늘 LLM의 변덕으로 바뀌어서는 안 됩니다.

⊠

환각의 시스템적 차단

통제되지 않은 AI는 금융 시스템 내에서 치명적인 환각(Hallucination)을 일으켜 자산을 순식간에 소멸시킬 수 있습니다. AHE 5개 레이어와 KFinOnto 온톨로지로 환각을 사전·사중에 차단합니다.

◇

화이트박스 시스템

모든 의사결정에 reason_code와 reason_text가 첨부됩니다. "AI가 거부했습니다"가 아니라 "VaR 3.2%가 한도 3.0%를 초과했습니다"처럼 측정 가능한 metric으로 설명됩니다.

▣

Hash-Chained Audit

모든 의사결정이 PostgreSQL audit_trail에 SHA-256 hash chain으로 기록되며, 매주 OpenTimestamps로 비트코인 블록체인에 앵커링되어 사후 변조가 암호학적으로 불가능합니다.

◐

가시성 ≠ 가독성

가시성은 시스템의 책임, 가독성은 운용자의 책임. 평시 90%엔 핵심 5개 지표만, 깊이 볼 때 11개 노드 흐름 즉시 펼침. 보잉 787 글래스 콕핏을 모델로 합니다.

◈

오케스트라 모델

LangGraph Supervisor(마에스트로)가 10명의 Specialist Agent를 지휘. 단원이 자기 악기만 연주하듯, 각 에이전트는 tools.profile에 명시된 도구만 사용 가능. 권한 분리(Privilege Separation)가 코드 레벨에서 강제됩니다.

절대 위반하지 않는 6대 설계 원칙

Brian의 45년 엔지니어링 경험과 AEGIS · LLMOps · wdlab-CLI · LOAN4U · ARGUS · NexusAI · FileForge에서 검증된 운영 노하우에서 도출된 6가지 원칙. 이 원칙은 어떤 경우에도 우회하지 않습니다.

PRINCIPLE 01

기존 API 계층 비변경

vLLM, Ray Serve, Wazuh, Kafka, OpenSearch 등 기존 인프라는 그대로 둡니다. AlphaForge가 추가되어도 기존 워크로드의 안정성에 영향 0.

PRINCIPLE 02

추가형 얇은 라우팅 셸

OpenClaw가 채널·MCP·도구 라우팅만 담당. 비즈니스 로직은 vLLM 뒷단의 순수 API 계층에서. OpenClaw는 트레이딩 엔진이 아니라 게이트웨이.

PRINCIPLE 03

80% 이상 인프라 재사용

AHE 적용 시 약 87% 재사용률. 신규 컴포넌트는 Broker MCP, Strategy SKILLs, RiskGuard 모듈로 한정.

PRINCIPLE 04

멀티 에이전트 하네스 엔지니어링

LangGraph Supervisor 위에 10명의 Specialist를 배치하는 패턴은 ARGUS와 동형(isomorphic). 동일 운영 패턴이므로 학습 비용 0.

PRINCIPLE 05

오픈소스 우선

상용 SaaS 의존을 최소화. 외부 LLM 호출은 prefix block(gpt-, claude-, azure/)으로 차단. 단, 브로커 API는 불가피한 외부 의존.

PRINCIPLE 06

5단계 게이팅

Backtest → Paper → Shadow → Limited Live → Full Live. 단계 간 자동 승급은 절대 금지. 사람의 명시적 수동 승인을 통해서만 진입 가능.

화이트박스의 7가지 구조적 증거

AlphaForge가 화이트박스 시스템임은 다음 7가지 구조적 증거로 입증됩니다. 이 증거들은 운용자가 시스템을 신뢰하기 위해 필요한 모든 검증 가능한 정보를 제공합니다.

①

소스 코드 공개

모든 코드가 Brian의 GitHub 조직(wdlab1958) 안에 있습니다. 외부 의존 코드는 모두 라이선스가 명시된 오픈소스입니다.

②

명시적 데이터 구조

Schema Layer가 모든 노드 간 전이를 Pydantic 모델로 강제합니다. OrderProposal·Signal·RiskDecision·DecisionToken·AuditEntry.

③

강제 감사 기록

Audit Layer가 모든 의사결정을 hash-chained PostgreSQL audit_trail + OpenSearch alphaforge-audit-*에 기록.

④

암호 서명된 권한

Decision Token이 모든 권한 행사를 Ed25519로 서명. 토큰 없는 주문은 broker MCP 호출 자체가 차단됩니다.

⑤

결정의 재현성

Determinism Layer가 LLM 호출을 캐시(sha256(prompt+input+model+seed+temp)). Backtest와 Live가 동일한 의사결정 경로를 따릅니다.

⑥

추적 가능한 진화

Evolution Layer가 GEPA 진화를 git처럼 버전 추적. Bonferroni correction으로 통계적 유의성 검증, 회귀 시 자동 롤백.

⑦

명시적 사유 첨부

모든 의사결정에 reason_code(예: VAR_EXCEEDED)와 reason_text가 첨부됩니다. 측정 가능한 metric으로 설명.

기술의 효율성을 믿되, 그 효율성이 인간의 통제를 벗어나는 순간을 잊지 마십시오. AlphaForge는 철저하게 계산된 공학적 안전 위에서 춤추는 지적인 여정입니다.
— Brian Lee, Research Director, WDLAB@2023-2026 Co., Ltd.

야생마에 마구를 채우는 AHE 5개 메타 레이어

AHE(Agent Harness Engineering)는 야생마에게 마구(Harness)를 채워 마차를 끌게 하듯, AI의 추론 능력을 강력한 코드 게이트 안에 가두는 기술입니다. 11개 에이전트 노드 위에 횡단(cross-cutting)으로 적용됩니다.

L1

Schema Layer

Pydantic 강제10+ Modelsfield_validator

모든 노드 간 state 전이를 Pydantic 모델로 강제. OrderProposal·Signal·RiskDecision·DecisionToken·AuditEntry·AlphaForgeState 등 10+ 모델. 입력 자체가 변조 불가능.

L2

Audit Layer

Hash ChainSHA-256OpenTimestampsWORM

Hash-chained PostgreSQL audit_trail + OpenSearch 인덱스. cycle_id 기반 11개 노드 흐름 재구성 가능. SHA-256 chain 무결성 깨지면 자동 정지. 매주 OpenTimestamps 비트코인 앵커링.

L3

Policy Layer

3-Gatetools.profileproviderPolicyEd25519

3-gate 권한 분리 — tools.profile(에이전트별 도구) + providerPolicy(외부 LLM 차단) + Decision Token Ed25519 10초 TTL. ExecutionAgent의 place_order는 토큰 없으면 OpenClaw 하네스에서 차단.

L4

Determinism Layer

LLM CacheBacktest = Liveseed + temp

LLM 호출 결과 캐시. 캐시 키 = sha256(prompt_template_version + input_hash + model + seed + temperature). 동일 입력에 동일 출력을 보장하여 Backtest와 Live가 동일 결정 경로.

L5

Evolution Layer

GEPA 0~2세대SkillForgeBonferroniAuto-RollbackBayesian Optimization

GEPA(Genetic-Evolution Prompt Adaptation) 자동 진화 + SkillForge 자동 후보 생성. Bonferroni correction으로 통계적 유의성 검증. 3세대 이상은 overfit 위험으로 보수적 제한. 진화 대상은 프롬프트 텍스트·retrieval top-k·temperature 같은 parameter만이며, 매매 로직·RiskGuard 한도·11개 노드 구조는 절대 진화 대상이 아닙니다.

오케스트라의 11명의 단원

LangGraph Supervisor(마에스트로) 1명 + 10명의 Specialist Agent. 정보 흐름의 단계에 따라 4그룹으로 분류됩니다. 엄격한 품질 검사관인 RiskGuard의 승인 없이는 어떤 신호도 시장에 도달할 수 없습니다.

🎼 LangGraph Supervisor — 마에스트로

Orchestrator

11개 노드의 오케스트레이션, halt 처리, race condition 방지. Sequential 모드(디버깅·백테스트)와 Parallel 모드(Annotated[list[Signal], operator.add] 리듀서로 fan-out)를 모두 지원하며, 두 모드의 출력 신호 집합 일치를 매 빌드마다 검증.

cycle_id (UUID) · Checkpointing: PostgreSQL · Trigger: 분봉(NATS tick) · 일봉(Cron 09:05/14:50) · 이벤트(News) · 수동(/run)

🔵 MarketDataAgent

Read

활성 종목의 실시간 시세·호가·체결 데이터 수집과 정규화. 5초 이상 stale 시 cycle skip.

KIS Open API · Kafka market.tick · WS paper:31000 / live:21000

📰 NewsAnalystAgent

Read

뉴스·공시·SNS 센티먼트 분석. RAG retrieval → LLM reason → score 3-step sub-graph. KFinOnto peer set 사전 주입으로 환각 차단.

Qdrant Vector · Qwen3 / exaone3.5 · DART API · Keyword fallback

📊 FundamentalAnalystAgent

Read

재무제표·밸류에이션·이벤트 캘린더 기반 가치 점수. 섹터 동종 비교(peer benchmark) PER/PBR/ROE 백분위 점수화.

DART OpenAPI fnlttSinglIndx · FundamentalsStore · timestamp 보존

📈 TechnicalAnalystAgent

Read

TA-Lib 지표·차트 패턴·Regime 분류(trending/ranging/volatile). Pure numpy 구현으로 C 의존성 0.

SMA/EMA/RSI/MACD/Bollinger/ATR · daily_bars · volume_profile

🎯 StrategyAgent

Read-Only

멀티 시그널 융합 → OrderProposal 생성. 직접 주문권 없음. SourceWeightLearner(EMA + Hedge)가 per-source 정확도를 누적 학습.

SKILL.md 5종 · momentum-breakout / momentum-ranking / mean-reversion-rsi / pair-trading-cointegration / dsl-trend

🛡 RiskGuardAgent

Deny

유일한 fail-closed 관문. 6단계 검증 중 하나라도 실패 시 즉시 DENY. 평가 시간 < 10ms. 미잡힌 예외도 무조건 DENY.

6 Stages · Ed25519 sign · Heartbeat 30s TTL · audit_id 멱등키

⚡ ExecutionAgent

Write

시스템에서 유일한 write 권한자. Decision Token 없으면 broker MCP 호출 차단. 멱등성 키 + 24시간 Redis 캐시로 중복 주문 원천 차단.

Broker MCP · KIS Primary + LS Secondary · FailoverBroker

💼 PortfolioAgent

Read

P&L·익스포저·Sharpe·MDD 실시간 추적. 8개 메트릭(현금·평가금액·포지션·일일/누적 P&L·MDD·익스포저·Sharpe).

PostgreSQL ledger · Redis 가격 캐시 · GET /portfolio

⚖ ComplianceAgent

Audit

자본시장법·거래소 룰·시세조종 패턴 자가검증. Wash-trade·Self-cross·Layering 탐지. 연말 세무 자료 자동 생성.

2025 세율 KOSPI 0.15% / KOSDAQ 0.15% (sell-side 합산) · 대주주 양도세 · FIFO 로트 · 14컬럼 CSV

📡 CommunicatorAgent

I/O

Telegram 알림·일일 리포트·Kill Switch 응답. 자연어 명령 파서(LLM-first JSON, regex fallback). CRITICAL 알림 30분 미응답 시 APNs escalate.

/halt /resume /status /portfolio /run · HMAC · MarkdownV2 · APNs Ed25519

RiskGuard Stage 0 → 6단계 검증 파이프라인

모든 매매 주문은 Stage 0 (KFinOnto ontology pre-check, Phase 67) 이후 다음 6단계 관문을 순차적으로 통과해야 합니다 — 실효적 7단 평가. 한 단계라도 실패하면 즉시 DENY되며, Fail-Closed 모드로 진입합니다. 평가 시간 < 10ms를 유지하여 실시간 거래에 영향을 주지 않습니다.

0

KFinOnto Ontology Pre-Check (Phase 67)

RULE-1~6 (unknown symbol · halted/delisted · invalid side · market-cap floor · index membership · tier-4 alone never fires) — 의미 수준 거부.

ONTOLOGY_UNKNOWN · REGULATORY_STATUS · TIER_4_ALONE
1

Schema Validation

주문 파라미터 형식, 필수 필드, 종목코드 유효성. Pydantic OrderProposal + KRX 화이트리스트.

OVERSIZED · INVALID_SYMBOL · MALFORMED_REQUEST
2

Market State Check

시장 개장·거래정지·VI(Volatility Interruption)·Circuit Breaker. KRX 거래 캘린더(2024~2027) 기반.

MARKET_CLOSED · STOCK_HALTED · VI_TRIGGERED · CIRCUIT_BREAKER_ACTIVE
3

Position Limits

동시 보유 ≤5종목, 종목당 ≤10%, 일일 매매 ≤3회, 전략당 ≤30%(STRATEGY_OVER_CAP).

TOO_MANY_POSITIONS · OVERSIZED · OVERTRADE · STRATEGY_OVER_CAP
4

Risk Metrics

VaR(95%, 1day) ≤ 자본의 3%. 신규 포지션 추가 후 상관계수 평균 ≤ 0.7. Kelly 기반 권장 사이즈 비교.

VAR_EXCEEDED · CORRELATION_TOO_HIGH
5

Realized P&L Gate

일일 누적 손실 ≥ 자본의 2% 시 매수 거부(청산만). 5분 누적 손실 ≥ 1% 시 30분 거래 중단.

DAILY_LOSS_LIMIT · CIRCUIT_BREAKER
6

Compliance Cross-Check

시세조종·자전거래·미공개정보 의심 timestamp 검사. ComplianceAgent의 3종 탐지기와 동기화.

WASH_TRADE · SELF_CROSS · LAYERING · INSIDER_INFO_SUSPICION
∑

Position Sizing — 최솟값의 원칙

세 가지 방식의 가중평균이 아니라 최솟값을 선택합니다. min(Fixed Fractional, Volatility Targeting, Fractional Kelly, hard_cap). 각 방식이 서로 다른 위험 가정을 하므로, 가장 보수적인 가정이 항상 채택됩니다.

♥

Heartbeat & Self-Halt

RiskGuard 자체가 죽으면 시스템 전체가 fail-closed로 진입. Redis 30초 TTL heartbeat key. RiskGuard 응답 없으면 ExecutionAgent도 fail-closed. 재기동 시 마지막 상태를 PostgreSQL에서 복구.

위조 불가능한 Decision Token

RiskGuard의 6단계 검증을 통과한 주문에는 결정 토큰(Decision Token)이라는 디지털 서명이 부여됩니다. 이는 공장의 품질 검사관이 찍는 최종 합격 도장과 같습니다. StrategyAgent → RiskGuardAgent(서명) → ExecutionAgent의 권한 분리(RBAC)를 암호학적으로 강제합니다.

Ed25519 · TTL 10s

디지털 도장 비유

"도장이 있어야만 출하 가능"의 정확한 구현.

  • 알고리즘Ed25519 (Edwards-curve, Curve25519), 64 bytes signature
  • 키 관리alphaforge-keygen CLI · keys/ 폴더 mode 0600
  • TTL10초 (Replay attack 차단)
  • 발행자RiskGuard 단독. StrategyAgent는 발행 권한 없음
  • 검증 위치broker MCP gateway에서 서명 재검증
  • 멱등 키audit_id = idempotency_key. Redis 24h 캐시
  • Claim 커버리지symbol·side·qty·order_type·limit_price 전체
// RiskGuard가 발행한 Decision Token { "audit_id": "5f8c…d3e9", "issuer": "RiskGuardAgent", "issued_at": "2026-05-03T14:21:08.412Z", "expires_at": "2026-05-03T14:21:18.412Z", "payload_hash": "sha256:af71…b9c2", "order": { "symbol": "005930", "side": "BUY", "qty": 42, "order_type": "LIMIT", "limit_price": 71800 }, "riskguard": { "stages_passed": 6, "var_pct": 2.1, "reason_code": "OK" }, "signature": "ed25519:7f3a…0d4b" }

payload_hash가 주문 필드를 모두 커버하므로, 토큰을 받은 후 주문 내용을 조작하면 hash가 바뀌어 서명이 즉시 깨집니다. 토큰 위조 / 변조 / 재전송이 모두 암호학적으로 불가능합니다.

자전거 비유로 설명되는 5단계 운용 게이트

처음부터 두 발 자전거를 타는 사람은 없습니다. 보조바퀴(Stage 1~2)로 균형을 잡고, 평지 천천히(Stage 3) 자신감을 쌓고, 짧은 거리(Stage 4)부터 시작하여 마지막에 자유롭게(Stage 5) 달립니다. 단계 간 자동 승급은 코드와 인프라 양쪽에 다중으로 차단되어 있습니다.

Stage 1

Backtest

가상 시간 가상 자본. 252일+ 시세 EventBus 시간순 dispatch + SimulatedBroker 3단계 슬리피지.

실 KIS API 0건 · Walk-Forward IS 4년 / OOS 1년
Stage 2

Paper Trading

KIS 모의 계좌(가상 1억). 4주 동안 10개 승급 기준 자동 검증.

/promote stage3 · ComplianceAgent 자동 검증
Stage 3

Shadow Mode

실시장 신호로 모의 P&L 추적. 시뮬-실거래 P&L 일치도 5% 이내 검증.

14일 · 실시장 데이터 직접 사용
Stage 4

Limited Live

실 자본 최초 진입. 최대 100만원 한정. 28일 일일 손실 한도 위반 0건.

alphaforge-doctor GREEN · ArgoCD 수동 sync · 인증서 ≥ 90d
Stage 5

Full Live

정상 자본 투입 + 상시 운용. 일간 리뷰·분기 백테스트 재검증·월간 GEPA 진화.

Sharpe ≥ 1.0 · MDD ≤ 15% 일관 유지가 목표
⊘

자동 승급 절대 금지 — 4중 게이트

① Helm chart 강제 — mode=live + stage<4에서 {{ fail }} 방어
② ArgoCD 수동 sync — production 환경 변경은 수동 클릭만 허용
③ Telegram 서명 명령 — 운영자 chat_id 인증 후 명시적 명령
④ 운영자 인증서 — Sharpe ≥ 1.0, MDD ≤ 15%, ≥ 30 trades + Ed25519 sign-off + 90일 만료

⌖

Stage 2 → Stage 3 승급 10개 기준

C01 슬리피지 ≤ 백테스트 추정의 30% · C02 Sharpe ≥ 1.0 · C03 Schema 위반 = 0 · C04 Decision Token 위반 = 0 · C05 Audit hash chain 무결성 깨짐 = 0 · C06 일일 손실 한도(2%) 위반 = 0 · C07 동시 보유 ≤ 5 · C08 Heartbeat 끊김 ≤ 1회 · C09 Telegram 지연 5초 초과 = 0 · C10 페일오버 정상 동작 검증 완료 · (Stage 1→2 추가: MDD < 15% · Stage 3→4 추가: P&L drift ≤ 5%) — SoT: src/alphaforge/runtime/promotion_gate.py

SKILL.md 형식으로 표준화된 활용 전략 5종

AlphaForge에서 모든 전략은 SKILL.md 한 파일로 표현됩니다 (YAML frontmatter + 마크다운 본문). 전략은 AI가 발견하지 않습니다. Brian의 45년 경험과 검증된 퀀트 문헌(Andreas Clenow, Ernie Chan)에서 도출된 가설을 안전하게 실행할 뿐입니다.

Momentum Breakout

Sharpe 1.2
"20일 신고가를 돌파하는 종목은 추세를 형성한다"는 전통적 추세추종 가설
  • 종가 > 20일 최고가
  • 거래량 > 20일 평균 × 1.5
  • 20일 모멘텀 > 0 + 200일 SMA 위(장기추세 필터)
  • 시가총액 > 1,000억 KRW (유동성)
  • KOSPI200 또는 KOSDAQ150 편입
BUYsize 8%SL −8%TP +20%trail 5%holding 5~20d

Mean Reversion RSI

Sharpe 0.9
"RSI 30 이하 + Bollinger 하단 터치는 일시적 과매도이며 평균으로 회귀한다"
  • RSI(14) < 30 (과매도)
  • 종가 < Bollinger 하단 (20일, 2σ)
  • 200일 SMA 위 (하락 추세 종목 제외)
  • 최근 5일 ATR ≤ 평소 1.5배 (이상치 제거)
  • 거래정지·관리종목·우선주 제외
BUYsize 5%SL −5%TP 20D SMAholding 1~5d

Pair Trading Cointegration

Sharpe 1.5
"공적분 관계가 있는 두 종목의 spread는 평균으로 회귀한다"는 통계적 차익거래
  • 동일 섹터 + Engle-Granger p-value < 0.05
  • 최근 252일 상관계수 > 0.7
  • z_score > +2 → SHORT_A + LONG_B
  • z_score < −2 → LONG_A + SHORT_B
  • |z_score| < 0.5 → 청산 / |z| > 4 → 강제 청산
PAIRsize 6%holding ≤15dmarket_neutral월 1회 재선정

DSL Trend

Sharpe 0.8
SKILL.md 본문의 dsl: 블록을 백엔드 부팅 시 자동 컴파일하는 안전한 전략 표현 언어
  • Python ast 제한 파서
  • 9개 지표 + 5개 패널명 화이트리스트
  • 속성·서브스크립트·kwargs·미지정 식별자 거부
  • 빈 __builtins__로 안전 eval
  • Hypothesis 속성 기반 테스트 검증 (200 examples)
DSLSKILL.mdsafe-evalproperty-based

Momentum Ranking

Sharpe 1.0
"universe 내 상위 모멘텀 종목을 추려 신호 빈도를 보장한다" — breakout 임계 미달 cycle에서도 신호를 발사하는 ranking-기반 전략 (2026-05-21 도둑 #50 추가)
  • universe 전체에 대해 20일 모멘텀 percentile 산출
  • 상위 ranking 종목 우선 신호화
  • breakout 미발생 cycle에서도 0-신호 cycle 방지
  • RiskGuard 22-게이트가 받은 모든 proposal을 정상 검증
BUYrankinguniverse-awareenabled
"백테스트는 통과 기준이 아니라 탈락 기준이다.
Sharpe 1.5의 백테스트가 실거래 0.3을 만들 수도 있지만,
백테스트에서조차 0.5인 전략이 실거래에서 1.0을 만드는 경우는 없다."
— 통합 가이드북 §11.3 Stage 1 핵심 메시지

의미적 환각 차단 — KFinOnto 한국 금융 온톨로지

Phase 67에서 도입된 KFinOnto(Korean Financial Ontology)는 LLM의 환각을 의미 수준에서 차단합니다. RiskGuard 6단계 이전에 Stage 0으로 실행되며, 4개 메커니즘 + 6개 SHACL-equivalent 룰로 구성됩니다.

⊞

6개 SHACL-equivalent 규칙

RULE-1 unknown_symbol — 화이트리스트 외 거부
RULE-2 regulatory_status — HALTED/DELISTED 거부
RULE-3 side ∈ (BUY, SELL) — 잘못된 방향 거부
RULE-4 market_cap_floor / forbidden_sector — 전략별 사전조건
RULE-5 index_membership — KOSPI200/KOSDAQ150 편입 검증
RULE-6 tier-4 alone never fires — LLM 단독 추론만으론 절대 주문 안 됨

◐

Pre-LLM Context Injection

pre_llm_context() 헬퍼가 NewsAnalyst의 프롬프트에 동종 산업 peer set을 사전 주입.

예시: 005930(삼성전자) 분석 시 peers=000660(SK하이닉스), 005935(삼성전자우)…를 audit chain에 포함.

LLM이 임의로 영향 종목을 추론하는 것을 사전에 막아 환각을 차단합니다.

①

Phase A — 클래스 계층 확장

Asset(Equity/Derivative/Bond) · Theme · Event · RiskFactor · ComplianceRule · TradingStrategy

②

Phase B — SHACL 룰

ontology/shacl/order_shape.ttl — OrderShape + StrategyShape (rdf-aware deployments용 canonical 형식)

③

Phase C — Neo4j 마이그레이션

YAML SeedRegistry → Neo4jRegistry로 swap. 인터페이스 유지로 RiskGuard 코드 변경 0.

단일 호스트 운용 모델 · 7-Layer Architecture

단일 호스트(ubuntu-02 172.30.1.9 또는 wdlab-Z790 10.10.10.77)에서 모든 컴포넌트를 컨테이너로 운영. AEGIS의 7-layer 패턴 차용. 모든 컨테이너는 비충돌 포트로 시프트되어 다른 프로젝트와 평행 운영.

UI · Glass Cockpit (Neumorphism)
9 Panels + 3 Modals
Mermaid DAG
i18n ko/en
Capabilities · Brian Q&A · Onboarding Wizard
▼
FastAPI Backend · 76 Routes
LangGraph Supervisor (11 nodes)
RiskGuard Pipeline
Decision Token Service
Strategy Engine + GEPA
5-Stage Promotion Gate
EOD Reconcile
▼
OpenClaw In-Process Gateway · Routing Shell
tools.profile · allow/deny
providerPolicy
Multi-Channel Gateway 8ch
MCP Native (kis-broker)
Skills (SKILL.md)
Cron / Webhook
▼
PostgreSQL
audit_trail (hash-chained, no-update trigger) · LangGraph Checkpointing · ledger · system_state · ai_act_registrations
Redis
RiskGuard Heartbeat 30s TTL · Idempotency 24h · 실시간 가격 캐시 · Halt state
Kafka / Redpanda
market.tick 시간 정렬 큐 · alphaforge.audit.v1 fan-out → OpenSearch
NATS JetStream
signal.<strategy>.<symbol> · alphaforge.command.{halt,resume,promote,run}
Qdrant
News Embedding · RAG retrieval (동종 산업 5~10건)
OpenSearch
alphaforge-audit-YYYY.MM 인덱스 · Compliance 검색 · Wazuh 연동
Neo4j (선택)
KFinOnto 그래프 SoT · NEO4J_URI ENV 활성
MinIO / Wazuh
백업 · FIM /etc/alphaforge · 17 룰 디코더 · Rules 100600/100601
▼
LLM Inference · Local Only · Hybrid Routing
vLLM (PagedAttention + prefix-caching)
Ollama (exaone3.5:7.8b · gemma3 · qwen3)
External LLM prefix block (gpt-, claude-, azure/)
Hybrid: 결정 노드 = Qwen3 30B / 보조 = 경량
▼
Broker Layer · Dual Failover
KIS Open API (Primary, Account: 위탁계좌 종합)
LS증권 (Secondary)
FailoverBroker (3회 재시도 후 자동 전환 · 5분 헬스체크)
SimulatedBroker (Backtest)
미래: IBKR 동일 인터페이스

KIS API 연동과 환경 고정 5단계

AlphaForge는 KIS Open API를 Primary 브로커로 사용합니다. API 키 발급 전에 모의투자 계좌부터 신청하는 것이 핵심입니다. 모든 시크릿은 mode 0600으로 잠기고, systemd ExecStartPre가 환경 검증 + KIS 토큰 발급을 시도하여 실패 시 서비스 자체가 시작되지 않도록 fail-closed가 보장됩니다.

Step A

시크릿 파일 생성

/etc/alphaforge/.env.{paper,live.LOCKED} · mode 0600 · root만 read

AIDE 변경 추적 + Wazuh FIM
Step B

환경 검증

scripts/validate_env.py · KIS_APP_KEY/SECRET/ACCOUNT/ENV/HTS_ID 정규식 매처

Live gate 자동 검사
Step C

토큰 사전 검증

scripts/probe_kis.py · OAuth /oauth2/tokenP 사전 검증

실패 시 부팅 차단
Step D

systemd 서비스

infra/systemd/alphaforge.service · ExecStartPre로 검증 호출

fail-closed boot
Step E

환경 잠금

AIDE 변경 추적 + Wazuh FIM + 30일마다 만료일 체크 (check_kis_expiry.py)

D-30 / D-7 / D-1 CRITICAL alert
⊟

MCP Tool 카탈로그 — Read-Only

broker.get_quote(symbol)
broker.get_orderbook(symbol, depth=10)
broker.get_balance(account)
broker.get_positions(account)
broker.get_order_history(account, start, end)
broker.get_executions(account, start, end)
broker.get_daily_bars(symbol, days=252)
broker.get_minute_bars(symbol, minutes=390)
broker.subscribe_ticks(symbols)

⊞

Write Tools — RiskGuard 승인 필수

broker.place_order(...) → order_id, status
broker.cancel_order(account, order_id)
broker.modify_order(account, order_id, qty, price)

Decision Token + idempotency_key(audit_id) 필수. Redis 24시간 캐시로 중복 주문 차단. FailoverBroker는 재시도성 오류에서만 KIS → LS 페일오버하며, 잔고 부족 같은 논리적 거부에는 페일오버를 거부.

비상 운용과 자동 회복

본 시스템은 정지 상태에서 손실이 더 커지지 않도록 설계되어 있습니다. 기술이 통제 불능에 빠졌다고 느낄 때, 두 번 생각하지 말고 /halt를 누르세요.

■

3가지 호출 경로

① 대시보드의 빨간 [EMERGENCY HALT] 버튼
② Telegram에서 /halt 입력 (자연어 /run halt now because earnings out도 가능)
③ 자동 트리거 — 일일 손실 한도 도달 · heartbeat 끊김 · hash chain 무결성 깨짐 · 양 broker 모두 실패

⊕

비상 정지 시 8단계 동작

① halt 신호 → 모든 cycle
② 진행 중 cycle은 현재 노드 완료 후 즉시 종료
③ 미체결 주문 모두 자동 취소
④ Live: 보유 포지션 시장가 청산 (자본 보호 우선)
⑤ Paper: 포지션 보존 (학습 목적)
⑥ system_state DB에 halted=true 기록
⑦ Telegram "🚨 SYSTEM HALTED" 알림
⑧ /resume 전까지 신규 cycle 0

↻

AutoRecoveryPolicy

연속 오류 trip 시 자동 복구 시도.
① 1분마다 alphaforge-doctor kis 진단
② 5번 연속 GREEN 시 halt 해제 + 루프 재가동
③ 5분 안에 5번 GREEN 못 뜨면 GAVE_UP → 사람 개입 대기

영구적 장애는 사람에게 escalate. 추측으로 복구하지 않습니다.

OpenTimestamps 앵커 — 매주 KST 월요일 00:00에 audit chain의 루트 SHA-256이 비트코인 블록체인에 게시됩니다. 이는 "우리가 데이터를 나중에 고쳐 쓴 것 아니냐"는 의심을 암호학적으로 차단합니다.
— §14.5 감사 체인 무결성

2026-05 구현 현황 · 정직한 공개

AlphaForge는 총 67개 Phase에 걸쳐 정밀하게 구축되었습니다 — 11 supervisor 노드, 76 FastAPI 엔드포인트, 12 MCP broker 도구, 8 알림 채널, 5 SKILL.md 전략. 시스템 아키텍트로서 현재의 구현 상태를 투명하게 공개하는 것은 운용자의 책임입니다. 수치는 scripts/update_webpage_stats.py가 코드에서 직접 추출합니다.

1008
Tests collected · 0 FAIL
76
FastAPI Routes
11 / 12
Capabilities OK (1 blueprint: Proxmox)
0
FAIL · Honest Pruning
5
Live Containers
246
KRX Symbols Catalog
8
Multi-Channel Alerts
Stage 4
Awaiting KIS Live Cred

가장 큰 실제 갭 — 코드의 결함이 아니라 배포·통합의 미완수

  • KIS Live Credentials 입력 대기 (Stage 5 진입 차단 중)
  • OpenClaw 데몬 미설치 (in-process runtime으로 우회 운영 중)
  • KakaoTalk 채널 — Brian의 최종 채널 목표
  • ClawHub 외부 스킬 레지스트리 미연결
  • 적대적 토론 (multi-agent debate) — 의도적 보류 (재현성 저하 위험)
  • Proxmox VM — 단일 호스트 모델에서는 정상 부재

2026-05-03 부록 E·F 핵심 갱신 (단일 진실의 원천)

  • Run-AlphaForge.sh — venv·deps·Ed25519·front 4단계를 1줄로 통합 (자동 비충돌 포트 시프트)
  • OpenClaw in-process runtime — minimal/messaging/coding/full + per-agent override
  • Multi-Channel Gateway — 2채널(Telegram+APNs) → 8채널 fan-out, AlertRouter fail-soft
  • 5-Stage Gate 자동 평가기 — 10 criterion 코드 평가, X-AlphaForge-Operator 헤더 검증
  • RiskGuard 적대성 테스트 격상 — Hypothesis max_examples 80→200 + BAD_PORTFOLIO_CAPITAL
  • KFinOnto 확장 — Phase A(클래스) · Phase B(SHACL) · Phase C(Neo4j) scaffold
  • Operator-level RBAC — 4 권한(read_only / submit / promote / admin)
  • PQC scaffold — Ed25519 default + Dilithium2 / Falcon-512 selector
  • EVM audit anchor — OpenTimestamps + AlphaForgeAnchor.sol 스마트 컨트랙트
  • KRX-Symbols 통합 — 246 종목(KOSPI 102 / KOSDAQ 79 / KONEX 10 / KSM 5 / ETF 30 / INDEX 20)
  • HedgeManager · KODEX 인버스(114800) alphaforge_role 메타데이터 부팅 검증
  • 우선주(005935) ↔ 보통주(005930) wash-trade 매칭 (instrument equivalence)

Black-box AI vs AlphaForge

상용 SaaS에서 자주 일어나는 시나리오 — "왜 손실이 났나요?" → "AI가 그렇게 판단했습니다" — 가 AlphaForge에서는 시스템적으로 발생할 수 없습니다.

차원
WDLAB-AlphaForge
Black-box AI Trading
의사결정 근거
reason_code + 측정 가능한 metric (예: VAR_EXCEEDED 3.2% / 한도 3.0%)
"AI가 그렇게 판단했습니다"
주문 권한
Ed25519 Decision Token 10초 TTL · payload_hash 위조 불가
단일 시스템이 분석·결정·주문 모두 수행
실행 가능 단계
5-Stage Gating · 자동 승급 절대 금지 · 4중 강제
Live부터 시작 또는 모호한 단계 구분
전략의 출처
Brian의 SKILL.md (1차) + 학술 문헌 (2차) + AI는 후보만 제안
AI가 "최고 전략" 자동 선별
감사 추적
Hash-chained audit_trail + 매주 OpenTimestamps 비트코인 앵커링
로그 보관만 (사후 변조 가능)
환각 차단
KFinOnto 6 SHACL 룰 · Pre-LLM peer set 주입 · RULE-6 tier-4 alone never fires
LLM 신뢰에만 의존
Backtest = Live 보장
Determinism Layer LLM 캐시(sha256(prompt+input+model+seed+temp))
백테스트와 실거래의 의사결정 경로 분리
비상 회복
AutoRecoveryPolicy + Heartbeat fail-closed + Kill Switch 3경로
관리자 수동 대응만
외부 LLM 호출
prefix block (gpt- / claude- / azure/) — 데이터 외부 유출 0
SaaS API에 의존
✕

AlphaForge가 발견하지 *않는* 것

❌ 새로운 매매 전략을 자동 발견하지 않음
❌ 최적의 매매 룰을 자동 생성하지 않음
❌ 가격 패턴을 학습해 미래를 예측하지 않음
❌ AI가 "최고 전략"을 자동 선별하지 않음

✓

AlphaForge가 *하는* 일

✅ 사람이 설계한 전략의 24/7 무결성 실행
✅ 자본 손실 사고의 시스템적 차단
✅ 컴플라이언스 및 감사 자동화
✅ 점진적 개선의 안전한 자동화 (GEPA 0~2세대)

운용 3대 핵심 수칙

이 3대 수칙은 단순한 가이드라인이 아니라, AlphaForge 67 Phase의 모든 결정이 향하는 목적지입니다.

01

안전 우선

어떤 분석가 노드의 신호가 아무리 강해도, RiskGuard가 한도 위반을 감지하면 무조건 거부됩니다. 이 우선순위를 뒤집으려는 모든 시도(예: "이번 한 번만 한도 초과 허용")는 시스템의 안전 모델을 무너뜨립니다.

02

단계 엄수

Backtest 4주 + Paper 4주 + Shadow 2주 + Limited Live 4주 = 총 14주. 이는 기술적 검증 시간이 아니라 운용자의 직관 형성 시간이기도 합니다. 이 시간 동안 운용자는 시스템 패턴, 평소 latency, 거부 사유 분포를 체화합니다.

03

인간 개입

기술이 통제 불능에 빠졌다고 느낄 때, 두 번 생각하지 말고 /halt를 누르세요. 시스템은 정지 상태에서 손실이 더 커지지 않도록 설계되어 있습니다. 정지 후 천천히 원인을 점검하면 됩니다.

AlphaForge의 최종 목표

단기는 운용 안정성, 중기는 단계적 자본 확장, 장기는 투자자문 플랫폼으로의 전환. 궁극적으로는 AI 자동매매의 표준 안전 모델로 자리잡는 것이 목표입니다.

NOW · 2026.05

Stage 4 진입 임박

KIS Live Credentials 통합 → 42일 staging soak test (Phase 55) → Stage 4 첫 승급 (Phase 56)

Q1~Q2

신뢰성 + UX

Honest Pruning Pass · Onboarding Wizard · 음성 명령 (Whisper) · Multi-modal Daily Report (TTS)

Q3~Q4

성능 + 확장성

Bayesian Optimization for GEPA · Transformer-based Forecasting · Multi-Account Federation 강화 · PQC 점진 마이그레이션

2~3년

자문 플랫폼 전환

다중 운용자 → 자문가-운용자 분리 → Federated Strategy Network → 기관 수준 자문 서비스 (라이선스)

▲

5대 표준화 영역

① AHE — LLM 자유도 제한 5개 메타 레이어
② Decision Token Protocol — Ed25519 + 10초 TTL
③ 5-Stage Gating Standard — Backtest→Live 진입 표준
④ Hash-Chained Audit + OpenTimestamps
⑤ KFinOnto — 한국 금융 도메인 온톨로지 오픈 표준

★

사회적 책임

• 개인 투자자 보호 — AI 환각 자본 손실 사고 시스템적 차단
• 시장 무결성 — 시세조종·자전거래·미공개정보 사전 차단
• 세무 투명성 — 모든 거래 기록과 자동 신고 자료
• 법적 책임 추적성 — 분쟁 발생 시 완벽한 증거 체인

⊘

의도적으로 *하지 않을* 일

❌ Strategy Marketplace 모더레이션 surface
❌ SSE 실시간 대시보드 스트리밍 (30분 인트라데이로 충분)
❌ Multi-modal Generation (트레이딩 도메인 외)
❌ Voice + Smart Home 통합 (AEGIS Seruphine 영역)

정교한 에이전트 오케스트레이션, AHE 기반의 마구, 위조 불가능한 결정 토큰은 AI 자동매매가 가야 할 표준적인 안전 모델을 제시합니다.

AlphaForge와 함께하는 투자는 단순한 자동화가 아니라, 철저하게 계산된 공학적 안전 위에서 춤추는 지적인 여정입니다.
— Brian Lee · 2026-05-02 · WDLAB Internal