자동으로 주식을 매수해 준다는 프로그램을 켜놓고 출근했다가 겪은 번거로운 일들
직장 생활 중에 주식창을 들여다보는 피로감과 자동화에 대한 호기심
업무 중에 스마트폰으로 주식 시황을 확인하는 일이 은근히 스트레스였다. 회의 중에 슬쩍 화면을 내리거나, 화장실에 가서 매수 타이밍을 노리는 것도 하루 이틀이지 피로감이 몰려왔다. 그러다 문득 남들은 다 자동으로 돈을 번다는데 나도 컴퓨터한테 대신 거래를 시키면 편하지 않을까 하는 생각이 들었다. 인터넷에 찾아보니 API를 연결해서 조건에 맞는 종목을 자동으로 사고팔아 주는 시스템을 직접 만들 수 있다고 했다. 직장에 앉아서 머리 싸매고 고민할 필요 없이, 미리 정해둔 알고리즘이 알아서 굴러가면 참 편하겠다는 단순한 기대감에서 시작된 일이었다. 코딩을 엄청 잘하는 건 아니지만 인터넷에 널린 소스코드를 조금 수정하면 어떻게든 돌아갈 것 같았다. 직장인 커뮤니티에서 누구는 자동매매프로그램으로 소소하게 일당을 번다는 글을 올린 것도 내 얇은 귀를 자극하기에 충분했다.
윈도우 32비트 환경과 대신증권 크레온 API를 설정하며 겪은 첫 번째 고비
막상 개발을 시작하려고 보니 생각지도 못한 장애물이 많았다. 요즘 세상에 64비트 컴퓨터가 기본인데, 내가 쓰려는 대신증권 크레온 API는 아직도 32비트 라이브러리 환경에서만 제대로 돌아간다는 것이었다. 내 개인 노트북에 32비트 파이썬을 따로 깔고 가상 환경을 맞추는 데만 주말 내내 시간을 허비했다. 결국 거실 구석에 굴러다니던 구형 윈도우 미니 PC를 꺼내서 전용 머신으로 세팅하기로 했다. 이 과정에서 한 개발 블로그에서 판매하는 5만 원짜리 파이썬 기본 매매 템플릿 코드를 구매했는데, 막상 내 컴퓨터에 올리니 버전 문제로 온갖 붉은색 에러 메시지가 뿜어져 나왔다. 파이썬 라이브러리 버전을 맞추고 관리자 권한으로 로그인 설정을 자동으로 넘어가게 만드는 데만 꼬박 3일이 걸렸다. 모니터도 없는 미니 PC에 원격 제어로 접속해서 이 짓을 하고 있으니, 내가 지금 주식으로 돈을 벌겠다는 건지 코딩 공부를 하는 건지 헷갈리기 시작했다. 그냥 대신증권주가를 검색해서 대형주나 살 걸 그랬나 하는 후회가 처음으로 밀려왔던 순간이다.
조건식 종목검색기를 연동해 실시간으로 매수 주문이 들어가던 며칠간의 기록
세팅을 대충 끝내고 나서는 HTS에서 쓰던 조건검색식, 일종의 종목검색기 엔진을 API와 연동했다. 거래량이 급증하면서 특정 이동평균선을 돌파하는 종목을 실시간으로 포착해 바로 시장가로 매수하게끔 코드를 짰다. 처음 프로그램이 실제로 작동해서 내 스마트폰으로 거래 체결 문자가 띠링 하고 날아왔을 때는 꽤 신기했다. 내가 아무것도 안 하고 회의실에 앉아 있는데 프로그램이 알아서 종목을 찾아 돈을 집어넣고 있었으니 말이다. 하지만 그 기쁨은 반나절을 가지 못했다. 매수 조건이 너무 헐거웠던 탓인지, 평소라면 눈길도 주지 않았을 급등락 테마주들이 포트폴리오에 가득 차기 시작했다. 주가가 순식간에 고점을 찍고 내려오는데 프로그램은 제때 손절 처리를 못 하고 삐걱거렸다. 호가창을 가만히 보고 있자니 자동으로 잔고가 갉아먹히는 모습이 실시간으로 확인됐다. 생각했던 것보다 시장의 움직임은 훨씬 변덕스러웠다.
회사 모니터 너머로 날아오는 알림장과 예상치 못한 에러 코드의 짜증스러움
가장 큰 문제는 안정성이었다. 자동매매프로그램을 켜놓고 출근하면 마음이 편할 줄 알았는데, 오히려 스마트폰을 더 자주 들여다보게 되었다. 텔레그램 봇으로 거래 내역을 실시간 전송받도록 해놓았더니 업무 중에 10분이 멀다 하고 알림이 울려댔다. 가끔은 ‘API Connection Lost’ 같은 연결 끊김 에러가 뜨면서 프로그램이 멈춰 버리기도 했다. 원격 제어 앱으로 회사 컴퓨터에서 집의 미니 PC에 접속해 수동으로 재시작 버튼을 누르는 내 모습이 참 한심하게 느껴졌다. 동료들이 뒤에서 지나갈까 봐 모니터를 슬쩍 가리며 원격 화면을 조작하는 그 순간의 땀나는 긴장감은 주식창을 대놓고 볼 때보다 훨씬 더했다. 게다가 가끔 거래량이 폭발하는 시장 시황 속에서 호가 단위가 급변할 때 프로그램이 주문 수량 오류를 내며 먹통이 되는 현상도 발생했다.
분기배당주를 사 모으거나 미국 주식 앱을 가끔 열어보는 것과의 비교
이런 고생을 하다 보니 차라리 다른 방식의 투자가 훨씬 속 편하겠다는 생각이 자꾸 머리를 스쳤다. 예전에 사둔 맥쿼리인프라나 다른 분기배당주들은 그냥 사놓고 몇 달 동안 잊고 지내도 알아서 배당금이 들어와 신경 쓸 일이 거의 없었다. 변동성이 심한 한국 시장에서 굳이 실시간으로 코스피선물 동향을 체크하거나 급등주를 쫓아다니는 매매 프로그램을 돌리는 게 과연 효율적인가 싶었다. 차라리 밤에 퇴근하고 침대에 누워 테슬라주식가격이나 애플 같은 미국 주식의 시황을 한 번씩 훑어보고 한두 주씩 모으는 편이 정신 건강에 훨씬 이로웠다. 머리 아프게 파이썬 코드를 뜯어고치고 대형 증권사 API 오류 로그를 뒤지는 시간 비용을 계산해 보면, 이 자동화 시스템이 가져다주는 이득은 사실상 마이너스에 가까웠다. 블로그 애드센스 광고를 다는 것처럼 한 번 설정해 두면 알아서 굴러가는 소득을 기대했던 내 상상이 너무 나이브했다는 것을 깨달았다.
결국 미니 PC 전원을 끄고 나서 남은 애매한 감정들
결국 3주 정도 지저분한 매매 기록과 자잘한 손실을 남긴 채 거실 구석의 미니 PC 전원을 꺼버렸다. 자동으로 굴러가는 수익 파이프라인을 만들겠다는 야심 찬 계획은 생각보다 신경 쓸 구석이 너무 많았고, 기술적인 귀찮음이 수익률보다 컸다. 그렇다고 코딩을 아예 포기하자니 그동안 세팅하느라 고생한 시간이 아깝고, 다시 켜자니 내일 출근길에 또 에러 알림이 울릴까 봐 겁이 난다. 세상에 정말로 완벽하게 손 안 대고 코 풀 수 있는 자동화는 존재하지 않는 건가 싶기도 하고, 내가 조건을 너무 멍청하게 설정했나 하는 미련도 여전히 남아 있다. 지금도 책상 밑에 먼지가 쌓여가는 미니 PC를 보면 언제고 다시 세팅을 고쳐서 켜야 할지, 아니면 그냥 중고나라에 팔아버려야 할지 결정을 내리지 못한 채 그대로 방치해 두고 있다.