이벤트 기반 코어와 리플레이 재현성
vn.py가 이벤트 기반을 택한 이유는 트레이딩의 상태 변화가 본질적으로 이산 이벤트이기 때문이다. 틱, 주문 업데이트, 체결, 계정/포지션 변화를 하나의 이벤트 스트림으로 정규화하면 전략은 구독과 반응에 집중하고, 재연결·레이트리밋·주문 상태 전이 같은 실행 디테일은 엔진/게이트웨이에 격리된다. 동시성과 I/O 복잡도가 하부로 수렴해 전략 코드는 테스트와 감사가 쉬워진다. 또한 이벤트 시퀀스를 기록·리플레이할 수 있어 백테스트, 회귀, 운영 장애 재현이 같은 입력 경로를 공유하며 재현 실패를 줄인다.
