"Can ChatGPT Generate Stock Tickers to Buy and Sell for Day Trading?"
본 연구는 ChatGPT를 활용하여 주식 시장의 매수/매도 신호를 생성하고, 이를 기반으로 한 데이 트레이딩 전략의 성과를 분석하기 위해 다음과 같은 구체적인 분석 방법을 사용했다.
데이터 수집:
* 트위터 뉴스 데이터: Bloomberg와 Wall Street Journal의 트위터 계정에서 2022년 12월부터 2023년 12월까지 게시된 트윗을 수집했다.
* RIC(Refinitiv Instrument Code) 정보: 수집된 트윗 중 일부는 특정 기업과 관련된 정보를 담고 있으며, Refinitiv Eikon News Monitor에서 제공하는 RIC 코드를 활용하여 해당 기업을 식별했다.
* 주식 데이터: CRSP(Center for Research in Security Prices) 데이터베이스에서 개별 주식의 일별 수익률 데이터를 수집했다.
* 고빈도 데이터: NYSE Trade and Quote(TAQ) 데이터베이스에서 5분 단위의 호가 중간값 수익률 데이터를 수집하여 고빈도 거래 전략의 성과를 분석했다.
ChatGPT 프롬프트 엔지니어링:
* 프롬프트 설계: ChatGPT에게 "당신은 금융 전문가이며, 뉴스 기반 거래 전략을 사용하는 전문 데이 트레이더입니다. 트위터에 게시된 Bloomberg 및 Wall Street Journal의 뉴스 기사를 분석하여 단기적으로 매수 또는 매도할 미국 상장 개별 주식을 선택하십시오."와 같은 프롬프트를 사용했다.
* 토큰 제한 고려: ChatGPT가 처리할 수 있는 토큰 수 제한을 고려하여 뉴스 기사를 여러 배치로 분할하고, 각 배치에 대해 독립적으로 매수/매도 목록을 생성하도록 했다.
* 반복 생성: 각 트윗 배치에 대해 프롬프트를 30번 반복 실행하여 매수/매도 목록의 다양성을 확보하고, 주식 선택 신호를 강화했다.
거래 신호 생성:
* 기본 신호(BUY 및 SELL): 각 주식에 대해 해당 주식이 매수 목록에 나타나면 BUY 신호를 1로, 매도 목록에 나타나면 SELL 신호를 1로 설정하고, 그렇지 않으면 0으로 설정했다.
* 합산 신호(SUM_BUY 및 SUM_SELL): 각 주식에 대해 해당 주식이 매수 목록 또는 매도 목록에 나타난 횟수를 합산하여 SUM_BUY 및 SUM_SELL 신호를 생성했다.
* 순 신호(NET_BUY 및 NET_SELL): 각 주식에 대해 SUM_BUY 신호에서 SUM_SELL 신호를 뺀 값을 NET_BUY 신호로, SUM_SELL 신호에서 SUM_BUY 신호를 뺀 값을 NET_SELL 신호로 생성했다.
포트폴리오 구성:
* 등가중 포트폴리오: BUY 및 SELL 신호가 있는 주식들을 동일한 비중으로 매수 또는 매도하여 포트폴리오를 구성했다.
* 신호 가중 포트폴리오: SUM_BUY, SUM_SELL, NET_BUY, NET_SELL 신호를 사용하여 각 주식의 비중을 조절하여 포트폴리오를 구성했다.
* 롱-숏 포트폴리오: 매수 포트폴리오와 매도 포트폴리오 간의 수익률 차이를 이용하여 롱-숏 전략의 성과를 분석했다.
성과 분석:
본 연구에서는 ChatGPT가 생성한 주식 티커를 기반으로 한 데이 트레이딩 전략의 성과를 다각도로 분석하기 위해 다음과 같은 방법들을 사용했다.
1. 기본 포트폴리오 성과 측정:
* 일중 수익률(Intraday Return):
* 주식을 당일 시장 개장 시점에 매수(매도)하여 마감 시점에 청산하는 전략을 사용했다.
* 각 주식에 대한 매수/매도 신호는 ChatGPT가 제공한 목록을 기반으로 결정했다.
* 매수 포트폴리오는 ChatGPT가 "매수" 목록에 제시한 주식을 동일한 비중으로 매수하여 구성했다.
* 매도 포트폴리오는 ChatGPT가 "매도" 목록에 제시한 주식을 동일한 비중으로 공매도하여 구성했다.
* 롱-숏 포트폴리오(BMS: Buy Minus Sell)는 매수 포트폴리오 수익률에서 매도 포트폴리오 수익률을 뺀 값으로 계산했다.
* 초과 수익률(Excess Return):
* 각 포트폴리오의 일중 수익률에서 무위험 자산(미국 1-3개월 만기 국채 ETF)의 일중 수익률을 빼서 초과 수익률을 계산했다.
* 위험 조정 수익률(CAPM Alpha):
* CAPM(Capital Asset Pricing Model) 회귀분석을 사용하여 포트폴리오의 위험 조정 수익률(알파)을 추정했다.
* 회귀 모형은 다음과 같다: R_p - R_f = α + β(R_m - R_f) + ε
* R_p
: 포트폴리오 수익률
* R_f
: 무위험 자산 수익률
* R_m
: 시장 수익률 (S&P 500 ETF 수익률로 대체)
* α
: CAPM 알파
* β
: 베타 (시장 민감도)
* ε
: 오차항
2. 신호 강도별 포트폴리오 성과 측정:
* SUM_BUY 및 SUM_SELL 신호 활용:
* 각 주식에 대한 매수/매도 신호의 강도를 나타내는 SUM_BUY 및 SUM_SELL 신호를 활용하여 포트폴리오를 구성했다.
* SUM_BUY 신호가 높은 주식은 매수 비중을 높이고, SUM_SELL 신호가 높은 주식은 매도 비중을 높이는 방식으로 가중치를 부여했다.
* NET_BUY 및 NET_SELL 신호 활용:
* 매수 신호와 매도 신호의 차이를 나타내는 NET_BUY 및 NET_SELL 신호를 활용하여 포트폴리오를 구성했다.
* NET_BUY 신호가 높은 주식은 매수 비중을 높이고, NET_SELL 신호가 높은 주식은 매도 비중을 높이는 방식으로 가중치를 부여했다.
3. 부가적인 분석:
* 거래량 및 유동성 고려:
* 각 주식의 거래량, 유동성(Bid-Ask 스프레드) 등의 지표를 고려하여 포트폴리오 성과에 미치는 영향을 분석했다.
* 뉴스 기사 정보 포함 여부 고려:
* 입력 뉴스 기사에 특정 기업 관련 정보가 포함되었는지 여부에 따라 포트폴리오를 구분하고, 그 성과를 비교했다.
* 신호 지속성 분석:
* ChatGPT가 생성한 신호가 시간이 지남에 따라 얼마나 지속되는지 분석했다. 예를 들어, 특정 주식에 대한 매수 신호가 며칠 동안 지속되는지 확인했다.
4. 통계적 유의성 검정:
* CAPM 알파 및 기타 성과 지표의 통계적 유의성을 평가하기 위해 t-통계량을 사용했다.
* 표준 오차는 Newey-West 조정을 통해 이분산성 및 자기상관을 고려했다.
이러한 다양한 방법을 통해 ChatGPT가 생성한 주식 티커를 기반으로 한 데이 트레이딩 전략의 성과를 종합적으로 평가하고, 투자 결정에 미치는 영향을 분석하기 시작했다.
이러한 분석 방법을 통해 ChatGPT가 생성한 주식 티커를 기반으로 한 거래 전략의 성과, ChatGPT의 의사 결정 과정, 그리고 ChatGPT가 선택한 주식들의 경제적 연관성을 종합적으로 평가하기 시작했다.
[Compliance Note]
· 셀스마트의 모든 게시글은 참고자료입니다. 최종 투자 결정은 신중한 판단과 개인의 책임 하에 이루어져야함을 알려드립니다.
· 게시글의 내용은 부정확할 수 있으며, 매매에 따른 수익과 손실은 거래 당사자의 책임입니다.
· 코어16은 본 글에서 소개하는 종목들에 대해 보유 중일 수 있으며, 언제든 매수 또는 매도할 수 있습니다.