본문 바로가기

Data & AI

[JeTech Lab] 1. 소개

안녕하세요, 즐거운 명절 보내셨나요?

 

저도 가족들과 시간을 보내면서도

 

올해 출시할 서비스에 대해 고민을 하는 시간을 가졌습니다. 

 

오늘은 깊은 기술적인 내용 없이

 

제가 출시할 서비스 "JeTech Lab"에 대해 

 

제가 서비스를 위해 고민하고 추구하는 방향을 이야기해보려고 합니다. 

 

 

사실하고 싶은 것

 

 

 

저는 시장을 분석하고 직접 참여도 하는 AI를 만들기 위한 목표를 가지고 있습니다. 

 

트레이딩이라는 행위를 AI에게 위임하면서 이 사회를 살아갈 때 겪는 금전적 문제를 해결함은 물론

 

인간으로 살아가면서 인류 역사에 남을 신 기술을 연구하고 활용해 보는 것 그 자체로 흥미롭기 때문입니다.

 

사실 AI를 시장을 분석하고 예측하고 참여자로 만들게 하는 것은 다른 분야에 AI를 적용할 때보다 아주 매우 비효율적입니다. 

 

 

 

예로, 새로운 SOTA 모델들이 제가 살아가는 동안에 쏟아질 텐데

 

그런 모델들로 만든 이미지 인식 AI를 테슬라의 자율주행에 적용하면

 

즉시 테슬라 모델들에게 소프트웨어 업데이트로 성과를 얻어 낼 수 있고

 

강화학습을 게임에 적용하여 사용자들에게 난이도에 맞는 즐거움을 제공할 수 있습니다. 

 

그로 인해 확실하게 더 좋은 상품과 서비스가 되고 금전적인 보상을 확실히 더 기대하기 쉽습니다. 

 

 

 

반면, 시장을 완벽하게 분석하는 AI라는 건 없습니다.  그런 사람 자체도 없고요.

 

가령 시장을 완벽하게 분석한 모델이 있다고 하더라도, 그 모델이 시장에 참여하는 순간

 

시장은 바뀌게 됩니다.

 

효율적 시장 가설과 관련된 개념으로도 그렇고

 

절대적 우위의 참여자가 행동하는 것이 결국 시장에 영향을 주고, 다른 움직임을 만들어내기도 하기 때문입니다. 

 

그럼에도 제가 어떻게 보면 지식대비 비효율적인 무모한 짓을 목표로 삼는 건

 

제가 살아오면서 습득한 지식들의 시너지를 일으키기 정말 좋은 분야이고


장기적으론 좋은 성과를 낼 수 있음을 증명하고 있고

 

새로운 연구와 논문들이 계속되면서 개선할 여지가 충분히 있기도 하고

 

궁극적으로 이 연구 자체가 그저 즐겁기도 합니다.

 

즐거운 일을 하며 살아간다는 것 자체가 주위를 둘러보면 행운인 것 같습니다. 

 

 

트레이딩 에이전트

 

제 목표 달성을 위해선 시장이라는 환경 안에

 

스스로 상호작용하며 최고의 보상을 위해 행동하는 에이전트가 필요합니다. 

 

인간 스스로 어느 정도 프로그래밍을 통해

 

데이터로 어떠한 알고리즘, 매매전략을 자동화하는 건 충분히 구현가능합니다. 

 

하지만 인간이 직접 데이터를 분석하고 전략을 세우기보다 강화학습 방법론으로 만들어져

 

감정에 휩쓸리지 않고 올바른 분석과 판단을 통해 시장 상태를 분석하고 행동하게 하는 에이전트가 필요합니다.

 

 

간단히 이야기하면

 

강화학습과정에 훈련되는 에이전트는

 

주어진 시장이라는 환경에서

 

어떤 상태, 어떤 행동을 하면 보상을 최대화할지 고민합니다. 

 

그 과정에 쓰이는 것들이 상태가치함수, 행동가치함수 등이 있고

 

위와 같은 함수는, 가볍게는 정형화된 데이터 테이블부터

 

수억 파라미터를 가진 딥러닝 모델까지 포함될 수 있습니다. 

 

뛰어난 에이전트를 위해선 에이전트들이 시장을 잘 보고, 분석할 수 있는

 

눈과 귀, 두뇌 역할을 할 수 있는 모델들을 만들어주는 게 필요합니다. 

 

만든 모델들을 통해 시장과 잘 상호작용하는지 훈련시키고 투입시키고 성과를 분석하는 과정의 연속일 것입니다.

알파고의 정책함수(행동가치), 상태 가치 함수 네트워크

 

 

공유

결국 에이전트가 사용할 눈과 귀, 두뇌를 계속 고도화시키면서 트레이딩을 잘하게 만드는 과정을 그려나가는데

 

이 과정 속에 시장을 잘 분석하는 에이전트의 감각기관들과 최고의 보상을 기대하는 행동을 취하는 두뇌가

 

저뿐만 아니라 여러 트레이더, 투자자들에게 좋은 인사이트를 줄 것이라고 믿고 있습니다. 

 

그리고 제가 그런 모델들을 만들고 연구하며 겪은 데이터들과 분석들에 대해서도 

 

하나의 블로그, 데이터 노트 형식으로 제공할까 생각 중입니다. 

 

단순히 바라보는 목표 외에, 그 과정에 발생하는 가치들을 나눌 수 있으면 

 

그것이 금전적인 보상을 통해서이건, 나의 자아실현으로 인해서이건 

 

저는 의미 있을 것이라 생각해서

 

시장을 분석하는 모델연 구내용들을 지속적으로 공유할 수 있는 서비스로

 

"JeTech Lab"이라고 간단히 이름 지어봤습니다. 

 

 

 

 

참신한 명명은 아니지만, 제가 봐온 뛰어난 선배개발자들은 

 

자신이 만들 서비스나 시스템에 작명을 하고, 의미를 부여하면서 프로젝트를 시작하고

 

자연스럽게 서비스에 대한 애착과 우수한 시스템 설계, 한 땀 한 땀의 철학이 담긴 코드로까지 이어내곤 했습니다.

 

저도 이 서비스에 애착을 가지고 앞으로 저의 반려 프로젝트로 진행할 예정입니다.

 

자본주의가 유지되는 한, 제가 죽는 날까지 도 시장을 완벽하게 분석할 순 없으니까요

 

 

 

 

설계전, 필요한 도구들

 

JeTech Lab은 여러분들에게 웹서비스 형태로 제공될 예정입니다. 

 

시장은 항상 시간 움직이고 있고 그런 시장을 실시간으로 보기 위해선 웹서비스가 올바른 수단일 것입니다. 

 

웹기반의 서비스를 설계하고 밑바닥부터 구현해 본 건 처음입니다. 

 

설계는 웹 편과 AI 편을 나눠서 이야기해 볼까 합니다. 

 

오늘은 웹에 중점을 두고 이야기를 해볼까 합니다. 

 

이제부터는 서비스를 출시하기 위해 노력하는 스타트업의 대표가

 

개발자들에게 이야기하듯 소개를 해드리겠습니다. 

 

 

React, Next.js

 

React는 웹서비스를 개발하기 위해 사용하는 라이브러리입니다. 

 

UI 중에서도 사용자가 보는 화면에 집중해서 만들어진 라이브러리입니다. 

 

하지만 라이브러리만으로는 개발을 원활하게 하긴 어렵기 때문에 보통 프레임워크로 활용하곤 합니다.

 

여러 프레임워크들이 있는데 저는 Next.js를 선택했습니다. 

 

공식문서도 잘 되어있고 데이터를 처리하는데 더 장점이 있을 것이라 생각했기 때문입니다. 

 

 

 

Tailwind, React-Query

 

최근 웹 개발에서 널리 사용되는 기술들입니다. 

 

Tailwind는 유틸리티 우선 방식을 따르는 CSS 프레임워크인데

 

개발자가 빠르게 커스텀 디자인을 HTML에 적용하고 반응형 웹 디자인을 손쉽게 구현할 수 있습니다. 

 

웹개발이 두려웠던 게 스타일링인데, 다른 분야에서 개발을 하는 사이 프런트 진영도 많은 발전이 있었구나 느끼게 되었습니다. 

 

 

 

React-Query는 React 애플리케이션에서 서버 상태를 관리하는 라이브러리입니다.

 

데이터 페칭, 캐싱, 동기화 및 업데이트 과정을 쉽게 만들어주어

 

개발자가 서버 상태에 관한 복잡한 로직을 구현하는 것을 피할 수 있게 해 줍니다.

 

React-Query를 사용하면 데이터를 불러오고, 캐시 하며, 동기화하는 작업을 효율적으로 처리할 수 있으며

 

컴포넌트가 최신 상태의 데이터를 렌더링 할 수 있도록 합니다.

 

이는 사용자 경험을 향상하고, 애플리케이션의 성능을 최적화하는데 크게 기여할 수 있습니다. 

 

 

 

DB / Hosting

 

데이터를 담을 DB와 웹서비스를 띄워줄 Hosting은 각각 Supabase와 Vercel을 사용할 예정입니다. 

 

Supabase는 오픈 소스 Firebase 대안으로, 개발자에게 실시간 데이터베이스와 인증, 자동 API 생성 등을 제공하는 서비스입니다.

 

PostgreSQL을 기반으로 한 Supabase는 SQL을 사용하여 강력한 데이터 관리를 할 수 있게 해 줍니다.

 

간단한 인터페이스와 빠른 설정으로 개발자는 서버리스 백엔드를 손쉽게 구축하고 관리할 수 있습니다.

 

게다가 Vector 형식의 데이터를 지원하면서 추후 Vector 모델들을 활용한 시장분석도 기대가 됩니다. 

 

 

 

Vercel은 프런트엔드 프레임워크에 최적화된 클라우드 호스팅 플랫폼입니다.

 

React, Vue, Angular 같은 현대적인 웹 프레임워크를 위한 정적 사이트 및 서버리스 함수 호스팅을 제공합니다.

 

Vercel은 개발자가 만든 사이트를 자동으로 빌드하고, 배포하며, 전 세계 CDN을 통해 빠른 로딩 속도를 제공합니다.

 

또한, 무중단 배포와 자동 스케일링 기능을 통해 사이트의 트래픽이 증가해도 안정성을 유지할 수 있습니다.

 

그리고 제가 선택했던 Next.js를 만든 회사이기도 합니다. 좋은 시너지도 기대됩니다. 

 

 

 

Tensorflow.js

 

Tensorflow.js는 구글에서 개발한 라이브러리로,

 

웹 브라우저 내에서 직접 머신 러닝 모델을 훈련시키고 배포할 수 있는 기능을 제공합니다.

 

JavaScript 기반으로 작동하기 때문에, 웹 개발자들은 별도의 서버 없이

 

브라우저에서 바로 머신 러닝 모델을 사용할 수 있는 큰 이점이 있습니다.

 

하지만 AI 설계 영역에서 별도로 이야기를 하겠지만 별도 GPU로 학습을 진행하고

 

만들어진 모델들을 스토리지에 저장해서 사용할 것으로 예상됩니다. 

 

 

 

 

수익

 

트레이딩이란 분야 자체가 수익을 만들어낼 수 있는 영역이긴 하지만

 

트레이딩이라고 해서 항상 주기적으로 수익을 얻어낼 수 있는 건 아닙니다. 

 

고위험 고수익의 영역에는 언젠간 깊은 하락을 견뎌내야 하는 구간이 있습니다. 

 

마치 반도체 기업이 반도체 사이클상 엄청난 적자를 견뎌내야하는 구간이 있듯, 

반도체 기업 영업이익과 트레이딩 월간 수익

 

트레이딩을 하면서도 그런 구간을 견뎌낼 다른 성격의 수익이 있으면 참 좋겠단 생각이 듭니다. 

 

(수익을  떠나서 제 철학적으로도 저는 이런 방향을 원하지만 다른 이야기로 흘러갈 것 같네요)

 

올웨더에서도 그런 방식으로 특정 자산 하락구간을 방어해 내듯

 

반도체기업들이 반도체 외에 사업을 다각화하듯,

 

저도 사실 트레이딩 외의 수익을 얻어내면 참 좋겠단 생각을 늘 하고 있습니다. 

 

트레이딩이 주 수익원이겠지만 부가적으로 상관성이 낮은 수익을 얻는 건 제가 투자에서 배운 것 중 하나이기도 합니다. 

 

 

그렇다고 아직 실체도 없는 서비스에 얼마를 꼬박꼬박 받겠단 계획은 없습니다. 

 

대부분의 시장을 분석한 데이터들을 무료로 공개할 예정이고

 

이 프로젝트에서는 수익보다는 저의 존재를 좀 더 알리는 계기가 되었으면 하는 바람도 있습니다. 

 

 

 

올해 꼭 JeTech Lab을 출시하려는 목표를 이루기 위해 설계를 진행했습니다. 

 

학생 때 여러 프로젝트를 해보기도 하고 회사에서도 여러 개발들을 했지만

 

데이터를 주로 다루는 개발을 하다 보니

 

남들이 원하는, 보기 좋은 서비스가 아닌 제가 원하는 서비스를 직접 만드는 건 처음인 것 같습니다. 

 

연말에는 JeTech Lab에서 저의 연구내용들과 모델들을 여러분들이 직접 조회하고 있으면 좋을 것 같습니다. 

 

 

블로그에서 글을 읽으시는 분들, 

 

영상으로 접하시는 분들 모두 새해 복 많이 받으시고 건강하시기 바랍니다. 

 

감사합니다.