개요

NautilusTrader는 오픈소스·프로덕션 등급의 Rust-native 다중 자산·다중 거래소 트레이딩 엔진이다. 연구(백테스트)·결정적 시뮬레이션·라이브 실행을 하나의 이벤트 기반 아키텍처로 통합한다. 전략 로직·설정·오케스트레이션은 Python이 컨트롤 플레인(PyO3 바인딩, v2 런타임)을, 고성능 실행 코어는 Rust를 담당한다. 같은 결정적 시간 모델과 실행 의미론을 연구·라이브가 공유해 전략을 재구현 없이 프로덕션으로 배포한다(research-to-live parity).

핵심 사실 (2026-08-18 GitHub API 검증)

  • 소유/개발: Nautech Systems Pty Ltd (© 2015-2026) · 라이선스: LGPL-3.0 (기여는 CLA 필요)
  • 저장소: nautechsystems/nautilus_trader · 생성 2018-06-25 · 기본 브랜치 develop · 홈페이지 https://nautilustrader.io
  • 규모(스냅샷): stars 26,209 / forks 3,396 / open issues 102 / 20,700+ commits, PyPI nautilus_trader (Python 3.12–3.14)
  • 버전: master = v1.231.0 (2026-08-02, 최근 안정) · develop = v2.0.0rc3 (Rust-native v2 RC). Cargo workspace v0.62.0, MSRV Rust 1.97.1
  • 릴리스 주기: 대략 격주(bi-weekly) · still in active development (v2 전환 중엔 breaking change 가능)

아키텍처

NautilusKernel(nautilus-system)이 백테스트·샌드박스·라이브에 공유되는 코어를 소유한다.

  • Core components: MessageBus(통신 라우팅, Redis 백킹 옵션) · Cache(인메모리 상태 + 선택적 DB persistence) · DataEngine(시장 데이터 처리·라우팅) · ExecutionEngine(오더 라이프사이클·reconciliation) · RiskEngine(사전 트레이드 검증·rate limit) · Portfolio(PnL·마진·익스포저) · Trader(actor/strategy/algorithm 오케스트레이션)
  • 환경 컨텍스트 3종: Backtest(과거 데이터 + 시뮬레이션) · Sandbox(실시간 데이터 + 시뮬레이션) · Live(실시간 데이터 + 실거래소)
  • 설계 기법: DDD · 이벤트 드리븐 · 메시징 패턴(pub/sub, request/response, P2P) · 포트·어댑터(hexagonal)
  • 안정성 철학: Crash-only design(릴리즈 프로파일 panic = "abort", 외부 슈퍼바이저 재시작) · fail-fast 정책(가격·수량·타임스탬프 불변식 위반 시 에러/패닉) · assurance-driven engineering(단위·프로퍼티 테스트, 퍼징, static assertion)
  • Rust crate 구성: core · model · system · data · execution · risk · portfolio · backtest · live · adapters · indicators · analysis · persistence · event_store · serialization · network · cryptography · plugin · cli · pyo3 · common · testkit · infrastructure

핵심 기능

  • 백테스팅: 다중 베뉴·인스트루먼트·전략 동시 실행, quote/trade/bar/order book/커스텀 데이터, 나노초 해상도
  • 라이브: 연구 전략과 동일 코드 배포 · 멀티베뉴 마켓메이킹·크로스베뉴 전략
  • AI/ML: 에이전트(RL/ES) 훈련에 충분히 빠른 엔진 성능 명시 (내장 AI/ML 툴링은 스코프 밖)
  • 어드밴스드 오더: TIF IOC/FOK/GTC/GTD/DAY/AT_THE_OPEN/AT_THE_CLOSE, post-only/reduce-only/iceberg, 컨틴전시 OCO/OUO/OTO, 조건부 트리거
  • 정밀도 모드: High-precision(128-bit, 소수점 16자리) / Standard(64-bit, 소수점 9자리) — Python 휠 기본 high-precision, Rust crate는 feature flag

통합 어댑터 (17종, 전부 stable)

크립토 CEX: Binance · BitMEX · Bybit · Coinbase · Deribit · Kraken · OKX 크립토 DEX: dYdX · Hyperliquid · Derive · Lighter · Polymarket(예측시장) 기타: AX(무기한) · Betfair(스포츠 베팅) · Interactive Brokers(멀티베뉴 브로커) · Databento(데이터) · Tardis(데이터)

보안·무결성

서명 커밋·불변 태그·lockfile checksum pin·SLSA build provenance·Sigstore 서명 이미지+SPDX SBOM·OIDC Trusted Publishing·cargo-vet·Gitleaks/Zizmor/CodeQL/cargo-fuzz·OpenSSF Scorecard. TLS에 aws-lc-rs, Ed25519에 ed25519-dalek.

오픈소스 스코프

단일 노드 백테스팅 + 개인/소규모 팀 퀀트용 라이브 트레이딩 초점. 범위 밖(Out of scope): UI 대시보드, 분산 오케스트레이션, 내장 AI/ML 툴링. 커뮤니티 통합은 RFC 이슈 → PR.

관계

검증 경계

2026-08-18 GitHub REST 메타데이터·고정 커밋 README·docs/concepts/architecture.md·recursive 트리(4,694 파일)·릴리스 API로 검증. 로컬 설치·백테스트 실행·라이브 거래소 연결·벤치마크·보안 감사 재현은 수행하지 않았다. raw 캡처: raw/articles/github-nautechsystems-nautilus-trader.md (commit 860561f40c2a78d78752cf02c8582a4c4f2ede5a, README SHA-256 a48105bf…).