로컬 에이전트
백테스트·모의·실거래는 전부 이용자 기기에서 도는 로컬 에이전트가 실행합니다. 키·서명·주문 전송도 전부 이 안에서 일어납니다. 지금 쓰는 PC 에 깔아도 되고, 24시간 돌려야 하는 모의·실거래에는 VPS 를 권합니다.
서버는 어디에 두나요
거래하려는 거래소와 가까운 리전을 고르세요 — 주문 왕복 시간이 곧 체결 품질입니다. 예: 업비트 위주면 한국(서울), 바이낸스 위주면 일본(도쿄)이 일반적으로 유리합니다.
주문은 에이전트에서 거래소로 직접 나갑니다 — 소리트레이딩 서버를 거치지 않으므로, 소리트레이딩로 인한 추가 지연은 0 입니다(비수탁 구조의 부수 효과). 서버 위치로 결정되는 건 순수하게 에이전트↔거래소 거리뿐입니다.
설치
1. 에이전트 관리에서 연결 코드를 발급합니다(1회용, 유효시간 있음).
2. 화면의 설치 명령 한 줄을 붙여넣습니다 — 리눅스·맥은 터미널, Windows 는 PowerShell 용 명령이 따로 있습니다. 연결 코드는 명령에 이미 들어 있습니다. 리눅스·맥에서는 서비스(systemd·launchd)로 등록되어 재부팅해도 다시 뜹니다.
3. 연결되면 에이전트 목록에 바로 나타나고 온라인으로 바뀝니다.
서버 만들기가 처음이라면: 서버 만들기 가이드 — Amazon Lightsail 에 서버를 만들고 브라우저 SSH 로 설치 명령을 붙여넣는 과정 전체를 스크린샷으로 안내합니다(약 15분).
업데이트
에이전트 관리의 [업데이트] 버튼을 누르면 에이전트가 배포본의 서명을 스스로 검증한 뒤 교체하고 다시 시작합니다. 서명이 없거나 틀리면, 또는 지금보다 낮은 버전이면 아무것도 바뀌지 않습니다. 실거래 실행이 돌고 있으면 재시작하는 몇 초 동안 신호를 놓칠 수 있어 한 번 더 확인합니다. 버튼을 모르는 옛 버전·일부 환경은 업데이트 명령을 한 번 실행하라고 화면이 안내합니다.
기동 실패 자동 되돌림(에이전트 1.451.0 이상): 새 버전이 켜지다가 거듭 죽으면 에이전트가 이전 버전으로 스스로 되돌립니다. 에이전트 관리 화면에 무엇에서 무엇으로 되돌렸는지와 기동 오류 첫 줄이 보이고, 그 버전은 자동 업데이트에서 건너뜁니다 — 더 새 버전이 나오면 그걸로 올라갑니다. 고장이 아니라 복구이므로, 실행은 이전 버전에서 계속됩니다.
캔들 저장소
백테스트에 쓰는 봉은 에이전트가 거래소에서 직접 받아 내 기기의 캔들 저장소에 쌓습니다. 거래소에서 그 종목이 사라졌거나(상장폐지 추정) 그 간격의 봉을 거래소가 주지 않으면 '수집 불가'로 이유와 함께 표시합니다.
클라우드 공용 저장소: 유료 플랜은 모은 봉 묶음을 올릴 수 있고, 무료 플랜도 기본 수집 거래소 범위에서는 클라우드에 이미 있는 같은 묶음에 '연결만' 할 수 있습니다(새로 올리지는 않습니다). 클라우드 사본을 확인한 묶음은 내 기기에서 비워 디스크를 아낍니다.
외환(MT5)
외환은 API 키가 없습니다. 내 브로커의 MetaTrader 5 가 에이전트와 같은 Windows 컴퓨터(또는 Windows VPS)에서 돌고, 터미널에 붙인 SoriBridge EA 가 이 컴퓨터 안에서만 에이전트와 이야기합니다. 브로커 로그인은 MT5 밖으로 나가지 않습니다. 설치(Windows 원라인 설치기가 EA 를 같이 넣습니다) → MT5 옵션 → EA 를 차트 하나에 붙이기 → 시세창에 종목 올리기 → 캔들 저장소에 종목 추가 → 페이퍼 → 데모 계좌 → 실계좌. 순서대로 따라 할 수 있는 안내는 외환(MT5) 시작하기. 한 실행에 터미널(계좌) 하나입니다 — 그 터미널의 종목은 여럿 고를 수 있습니다. 한도·시작 자금·손익은 터미널의 계좌 통화이고, 1회 주문 한도가 어느 종목의 최소 랏(예: EURUSD 0.01랏 ≈ 1,000 EUR 노출)보다 작으면 그 종목 이름과 함께 배포가 막힙니다.
지문 확인
웹과 에이전트 콘솔 양쪽에 같은 지문(fingerprint) 이 표시됩니다. 다르면 중간자 공격 의심 — 키를 입력하지 마세요(다르면 키 입력 UI 자체가 숨겨집니다).

API 키 등록
에이전트 상세에서 거래소 키를 등록합니다. 키는 E2E 암호문으로 전달되어 에이전트 기기에만 암호화 저장됩니다. 출금 권한 없는 키가 기본이고, 거래소에 권한을 물어볼 수 있으면 출금이 켜진 키는 거부됩니다. 출금을 뗄 수 없는 거래소는 경고와 동의를 거쳐 받고, 탈중앙 거래소는 위임 키를 먼저 씁니다 — 시드 문구는 받지 않습니다(자세한 건 보안). 웹을 아예 거치지 않으려면 에이전트 콘솔 명령으로 서버에서 직접 넣을 수도 있습니다.
일부 선물 거래소는 실거래 전에 연결 시험(주문 왕복) 을 거칩니다 — 내 에이전트가 최소 수량의 실제 주문으로 주문 경로를 확인하고, 메인넷에서 통과하면 그 계정은 바로 실거래를 쓸 수 있습니다. 키를 바꾸면 다시 시험합니다.
운영
- 기본은 dry-run. 실주문은 웹에서 E2E 로 켭니다.
- 전략 배포는 전략 스튜디오에서, 정지·승격·하락·로그 확인은 실행과 통합 현황에서.
- 엔진이 바뀌면(업데이트로 백테스트 엔진이 달라지면) 돌고 있는 실행에 '엔진 변경' 표시가 뜹니다. 같은 구간을 자동으로 다시 백테스트해 결과(체결·지표)가 같으면 경고를 내리고, 달라졌으면 차이를 보여 주고 [새 엔진 확인] 을 기다립니다. 자동으로 판단하지 못하면 그렇다고 말합니다 — 그때는 직접 백테스트로 확인하세요.
- 에이전트가 오프라인이면 화면에 그렇게 표시됩니다 — 온라인인 척하지 않습니다.
제거 — 흔적 없이
은행 보안 프로그램처럼 "지워지지 않는 상주 프로그램"이 되지 않는 것이 설계 원칙입니다. 에이전트는 표준 위치에만 설치되고(커널 확장·루트 데몬 없음), 한 줄로 깨끗하게 제거됩니다:
curl -fsSL https://soritrading.com/dl/uninstall.sh | bash
한 번에 다 끝납니다: 서버 쪽 페어링 해제 → 서비스 등록(systemd/launchd) 해제 → 프로그램 폴더 삭제 → 페어링 정보(~/.soritrading-agent) 삭제. 무엇을 지웠는지 전부 출력하고, 이 컴퓨터에 남는 것은 없습니다. 웹 '에이전트 관리'에 다시 갈 필요도 없어요(목록에서도 바로 사라집니다). 서버에 연결하지 못하면 그 사실을 알려줍니다 — 그때만 웹에서 지워 주세요. Windows 용 제거 명령은 에이전트 관리 화면에 있습니다.