2023 NH 투자증권 빅데이터 경진대회, “블룸버그, 나스닥과 함께 세계속으로!”

아이디어 | 정형 | 언어 | 해외주식 분석 | 금융 | 정성평가

  • moneyIcon 상금 : 5,000만 원
  • 1,093명 마감

 

Fin2Vec : Transformer 기반 종목 간 상관관계 분석 모델

공동작성자

stroke
2023.10.07 22:16 1,689 조회 language

Fin2Vec은 팀 hoynet이 직접 설계 및 구현한 증권 종목 관계 분석 모델입니다. Transformer의 self attention 매커니즘을 활용하여 종목간 관계 분석을 진행하였습니다. 여러 종목의 시세 데이터를 입력하면 종목별로 맥락화된 토큰을 출력하는 모델을 설계했습니다. 출력된 토큰들을 적절한 decoder에 입력하면 예측이나 군집화 등 다양한 종류의 작업을 진행할 수 있습니다. 이 모델은 Meta AI가 2022년 공개한 Data2Vec 2.0 모델의 구조를 차용하여 학습시켰습니다. 통시적 분석이 아닌 종목간 분석을 진행하기 위해 각 종목의 시계열 데이터를 압축해야 했습니다. 이를 위해 PCRN encoder를 개발하여 토크나이저로 사용하였습니다. 사용된 데이터는 2013년부터 2023년 상반기까지의 나스닥 및 코스피 종목들의 시세 데이터입니다.

이 프로젝트의 전체 코드는 https://github.com/HOYNET/Fin2Vec 에서 확인할 수 있습니다. 훈련 코드와 추론 코드, 실행 명령어, 환경 설정 방법 등을 볼 수 있습니다. 아래 .ipynb은 모델 이해를 돕기 위한 설명서입니다. 전체 코드 조회 혹은 실행 시 Github 링크를 참조해주시길 바랍니다. 

코드
로그인이 필요합니다
0 / 1000
sixsix
2023.10.14 10:16

너무 잘봤습니다!.. 종목별로 tokenizer를 해서 embeding을 만들어낸다는 아이디어가 참 좋은것 같은데요. 여기서 궁금한점이 있는데 혹시 이 임베딩데이터를 PRCN을 사용하신걸가요? 아니면 PRCN은 따로 만드신 건가요?

ghghghost
2023.10.14 10:45

'PCRN 데이터셋'이라고 해서 오해를 부른거 같습니다. PCRN은 저희가 따로 만든 모델로써 CNN과 RNN을 병렬적으로 수행하여 데이터를 압축하는 역할을 수행합니다!

sixsix
2023.10.14 13:55

아하 감사합니다. 궁금한게 혹시 fusion 같은 경우는 word embeding에 position wise로 더 해주는건가요? 아니면 word 차원에 concat하는 식으로 진행하나요?? word embeding의 attention map과 prcn latentembeding 의attentionmap 과 비교해보면 정말 재밌을것같네요 정말 흥미로운 아이디언인것 같습니다!

중앙고
2023.10.17 21:27

Position-wise로 더해줍니다. 저희 깃헙 코드의 data2vec 탭의 torch 코드를 참고하시면 이해가 편할겁니다.