# 株価変動に対する大規模言語モデルを用いた株式用語選択

西田隼輔 1 宇津呂武仁 ${ }^{1}$
1 筑波大学大学院 システム情報工学研究群
s2320778_@_u.tsukuba.ac.jp
utsuro_@_iit.tsukuba.ac.jp

## 概要

株価変動記事では，株価変動を表現する株式用語が用いられることが多い。そのような記事の自動生成を目的として，大規模言語モデルに数日間の株価の推移を与え，株価変動の特徴を適切に表す専門用語を自動で選択させる手法の評価を行った. 本手法により，株価変動記事の記者が人手でつけた用語や，それに意味が近い用語を高い精度で選択できることが分かった. また, few-shot 学習や fine-tuning を行うことで，さらに性能を向上させられることが示された.

## 1 はじめに

株価の変動を報じるニュース記事は，株価がどれだけ上昇または下落したかという情報に加え，新製品の発表や社会的な情勢といった，価格変動の要因を知ることができるという点で有用である。通常， このような記事は人手で作成されているが，より多くの銘柄について取り扱えるようにするために，自動で大量に生成されることが望まれる.

株価変動記事では，株式に関する専門的な用語が用いられることが多い [1] [2]. 特に，株価変動を表現する株式用語（以下，株価変動用語）は頻繁に用いられ，株価変動の大きさや連続性などによって使い分けられている。例えば，株価上昇において，株価が急に大きく上昇したときは「急伸」，株価が連続して上昇したときは「続伸」というように区別される．株価変動記事を自動生成する上で，株価の時系列データを自動で分析して文章にする必要があるが，数值の変動の仕方を微妙なニュアンスによって正しく使い分けることは極めて重要である.

この問題に対し本論文では，大規模言語モデルに数日間の株価の推移を与え, 株価変動の特徵を適切に表す専門用語を自動で選択させた。 大規模言語モデルとしては，自然言語処理の幅広い分野で高い性能を示す ChatGPT[3] を用いて評価を行った。その結果，株価変動記事の記者が人手でつけた用語や， それに意味が近い用語を高い精度で選択できることが分かった. また，few-shot 学習や fine-tuning を行うことで，さらに性能を向上させられることが示された。以下に本論文の貢献を簡潔に述べる。

・大規模言語モデルが，株価変動データを対応する株式用語に変換する性能を明らかにした。

・株価の変動とその原因に相当するニュース記事の文章から，自動で株価変動記事を生成できる可能性があることを示した.

## 2 関連研究

ニュース記事と株価に関連する研究として，いくつかの先行研究が存在する. Kalshani ら [4] は, ニュース記事の見出しと数学的な指標を組み合わせることで，株価を予測する手法を提案した．Chen[5] は，ニュース記事の見出しのみを用いて，経済的な大きな出来事が起きた後の短期間の株価変動を予測した. また Kalyani ら [6] は，効率的市場仮説の問題点について議論し，ニュース記事を利用した株価動向予測に関するプロジェクトを提案した.

さらに, Liu ら [7], Gong ら [8] は, サポートベクターマシンや長・短期記憶 (LSTM) といった，いくつかの機械学習，深層学習の手法について，経済ニュース記事を用いた株価変動予測の性能を評価した.

## 3 データセット

## 3.1 株価変動用語

本論文における「株価変動用語」とは，株価の変動の仕方を表現する際に用いられる株式用語 (証券用語) のことを指す。1 節で述べた「急伸」や「続伸」も株価変動用語に含まれる. 数日間の株価の推移から株価変動用語を選択させるにあたり，候補となる用語を選定した。株価の短期間の変動からは
表 1: 各株価変動用語ごとの事例数

判定できない用語や，株価変動記事での出現頻度が少ない用語は除外し，「急伸 ，「急騰」，「続伸」， $\lceil$ 連騰」, 「反発」, 「堅調」, 「急落」, 「続落」, 「反落」,「軟調」, 「続急伸」, 「続急騰」,「急反発」,「続急落」,「急反落」の合計 15 単語を候補とした.

## 3.2 株価変動記事の収集

株価の変動に関するニュース記事の収集対象として，ファイナンスに関するニュース記事を配信している Webメディアである“Yahoo!ファイナンス”") と “MINKABU"2)を利用した。“Yahoo!ファイナンス” の「日本株」タブのニュース記事と, "MINKABU" の「個別株」タブのニュース記事から，3.1 節で選定した 15 個の株価変動用語を見出しに含む記事を抽出し，合わせて 1,000 件の記事を収集した ${ }^{3)}$. 収集した記事からは，記事の見出しと配信日を取得した. また，記事ぺージからリンクされている当該銘柄の株価時系列データを参照し, 記事配信日から遡って一週間までの株価の終値を“Yahoo!ファイナンス”および“MINKABU”から取得した。

収集した 1,000 件の記事のうち, 重複する記事や，個別株の上昇・下落には関係ない記事を除外した 612 件について, 取得した情報から「記事に出現する株価変動用語 (「急伸」など)」と「配信日から遡って一週間の終值」からなるデータセットを作成した. 表 1 に各株価変動用語ごとの事例数を示す.

ここで，「急騰」，「連騰」，「続急騰」については，事例数が少ないため，それぞれほぼ同じ意味の用語である「急伸」,「続伸」，「続急伸」の事例として扱うことにした。また，「堅調」，「軟調」については，株価の短期間の変動からは判定が難しいことが分かったので，判定候補の単語からは除外した。 よっ $\tau$, 最終的には以下の 10 単語で株価変動用語の選択を行う.これらの 10 用語に対応する株価変動の例を付録の図 2 に示す.

続伸 $\Leftrightarrow$ 続急伸 $\Leftrightarrow$ 急伸 $\Leftrightarrow$ 急反発 $\Leftrightarrow$ 反発

1) https://finance.yahoo.co.jp/

2) https://minkabu.jp/

3） 2023 年 11 月 8 日～2024 年 1 月 5 日に配信された記事.続落 $\Leftrightarrow$ 続急落 $\Leftrightarrow$ 急落 $\Leftrightarrow$ 急反落 $\Leftrightarrow 反$ 落

このデータセットのうち，各用語 10 事例，合計 100 事例を収集したものを評価事例とし，残りを訓練事例の候補集合とした. ただし，「厳しい評価基準」として，これらの 10 語間の誤りを許容しない場合，および，「緩い評価基準」として，人手でも用語の区別が難しいような用語 (上記で”息”で直接結ばれている，合計 8 組の用語組) 同士の誤りは許容する場合の二種類の評価を行う。なお，「緩い評価基準」での評価を行う際の fine-tuning においては,誤りを許容する用語間で訓練事例を拡張4)したものを訓練事例の候補集合とした。

## 4 大規模言語モデルを用いた株価変動用語選択

連続した数日間の株価の終値を与え，3.2 節で定めた 10 語の株価変動用語の中から，数日間の価格の変動の仕方に最も近い用語を ChatGPT に選択させるタスクを行う．ただし，すべてのタスクで OpenAI API ${ }^{5)}$ を用いる. ここで，株価変動用語の選択の際に，一週間分の株価の終値のうち何日分を参照するのが最適であるかの予備調査を行った結果をふまえて，株価の終值を参照する日数は 3 日間とする。

## 4.1 zero-shot 学習

## 4.1.1 ベースライン

プロンプトに

・候補となる 10 種類の株価変動用語

・ 3 日間の株価の終値

のみを与え, ChatGPT に株価変動用語を選択させる. モデルには GPT-4[3] を用いる。これにより， ChatGPT が事前訓練時に獲得している汎用的な言語知識のみで，どの程度用語の判別ができるかを調べる. 以下に実際のプロンプトを示す.

messages $=[$

\{"role": "system", "content": "あなたは一昨日、昨日、今日の株価の終値を見て、「急伸」「続伸」「反発」「急落」「続落」「反落」「続急伸」「急反発」「続急落」「急反落」の中から、価格の変動の特徴に最もよく当てはまる用語を選択する AIです。”\},

\{"role": "user","content":（3 日間の株価の終值）\}]

## 4.1.2 株価変動用語の定義を含むプロンプト

プロンプトに

・候補となる 10 種類の株価変動用語

・各用語の定義
- 3 日間の株価の終値

を与え，zero-shot で ChatGPT に株価変動用語を選択させる。モデルには GPT-4 を用いる，以下に実際のプロンプトを示す.

messages $=[$

\{"role": "system", "content": "あなたは一昨日、昨日、今日の株価の終值を見て、「急伸」「続伸」「反発」「急落」「続落」「反落」「続急伸」「急反発」「続急落」「急反落」の中から、価格の変動の特徴に最もよく当てはまる用語を選択する AIです。”

"急伸：昨日から今日にかけて、株価が大きく上昇すること。”

”続伸：連続して株価が上昇すること。”

"反発：株価が下落から上昇に転じること。"

”急落：昨日から今日にかけて、株価が大きく下落すること。”

”続落：連続して株価が下落すること。”

"反落：株価が上昇から下落に転じること。”

”続急伸：株価が連続して、かつ大きく上昇すること。”

”急反発：株価が下落から、大きな上昇へと転じること。”

”続急落：株価が連続して、かつ大きく下落すること。"

”急反落：株価が上昇から、大きな下落へと転じること。"\},

\{"role": "user","content":（3日間の株価の終值）\}, ]

## 4.2 few-shot 学習

few-shot 学習により, ChatGPT に株価変動用語を選択させる. few-shot として，3 節で用意したデータセットの訓練事例の候補集合の中から，各用語 1 事例ずつ，合計 10 事例を収集したものを用いる。したがって，プロンプトには以下の情報が含まれる。
- 候補となる 10 種類の株価変動用語
- few-shot として，各株価変動用語と，それに対応する 3 日間の株価の終値
- 3 日間の株価の終值

モデルには GPT-4 を用いる．以下に実際のプロンプトを示す。

messages=[ \{"role": "system", "content": "あなたは

一昨日、昨日、今日の株価の終値を見て、「急伸」

「続伸」「反発」「急落」「続落」「反落」「続急伸」「急

反発」「続急落」「急反落」の中から、価格の変動の特徴に最もよく当てはまる用語を選択する AI です。”\},

\{"role": "user", "content": "(102.0, 100.0, 118.0)"\},

\{"role": "assistant", "content": "急伸"\},

. . . (中略)

\{"role": "user", "content": "(1808.0, 2087.0, 1818.0)"\},

\{"role": "assistant", "content": "急反落"\},

\{"role": "user","content": (3 日間の株価の終値）\}]

## 4.3 fine-tuning

OpenAI API を利用して，gpt-3.5-turbo ${ }^{6)}$ を finetuning する。訓練事例として，3 節で用意したデー タセットの訓練事例の候補集合の中から，各用語 10 事例ずつ，合計 100 事例を収集する。

fine-tuning された gpt-3.5-turbo を用いて，ChatGPT に株価変動用語を選択させる．評価時のプロンプトは 4.1.1 節と同様である.

## 5 評価

評価実験において，評価事例 100 事例に対して，参照用語と同一の用語を選択した事例数を表 2 に，評価結果における混同行列を図 1 に示す.

表 2: 評価事例 100 事例に対する正解数

(厳: 厳しい評価基準，緩: 緩い評価基準)

厳しい評価基準において，100 事例に対してすべて無作為に用語を選択した場合の正解事例数は 10 程度になると予想される。本論文で評価を行ったすべての手法で，正解事例数は 10 を上回った. また，緩い評価基準において，100 事例に対してすべて無作為に用語を選択した場合の正解事例数は，誤りを許容する用語数の総数となることから， 26 程度にな

6) https://platform.openai.com/docs/models/gpt-3-5

(a) ベースライン

(c) few-shot

(b) 用語定義

(d) fine-tuning

図 1: 評価実験における混同行列 (赤枠線で囲まれた範囲は，緩い評価基準における正解に相当する)

ると予想される。本論文で評価を行ったすべての手法で，正解事例数は 26 を大幅に上回った.

どちらの評価基準においても, few-shot 学習や fine-tuning を行ったとき, zero-shot 学習で評価を行ったときよりも正しい用語を選択できた事例数が増加した. 本論文のタスクのように時系列数値デー タを扱うタスクであっても，ChatGPT に対して例示を行うことで，さらに性能を向上させられることが示された.

## 6 おわりに

本論文では，株価の時系列データから，株価変動記事で用いられる株価変動用語を自動で生成する手法に取り組み，評価を行った. 大規模言語モデルである ChatGPT に 3 日間の株価の推移を与え，株価変動の特徴を適切に表す専門用語を自動で選択させた. その結果，人手でも用語の選択が難しい程度のニュアンスの違いを許容すれば，高い精度で株式用語を選択できることが示された。また, few-shot 学習や fine-tuning を行うことで，さらに性能を向上させられることが明らかになった。これは，将来的に適切な株価変動用語を含んだ株価変動記事を自動で生成する上で，重要であるといえる。残された課題として，より長期的な株価変動に対して株価変動用語を選択する手法について，検討を行いたい。

## 参考文献

[1] G. Tsutsumi and T. Utsuro. Detecting causes of stock price rise and decline by machine reading comprehension with BERT. In Proc. 4th FNP, 2022.

[2] S. Nishida, Y. Zenimoto, X. Wang, T. Tamura, and T. Utsuro. Headline generation for stock price fluctuation articles. In Proc. 6th FinNLP, 2023.

[3] OpenAI. Gpt-4 technical report, 2023. http://arxiv. org/abs/2303.08774

[4] A. H. Kalshani, A. Razavi, and R. Asadi. Stock market prediction using daily news headlines, 2020. https:// ssrn.com/abstract $=3685530$.

[5] Q. Chen. Stock movement prediction with financial news using contextualized embedding from bert, 2021. http: //arxiv.org/abs/2107.08721.

[6] J. Kalyani, H. N. Bharathi, and R. Jyothi. Stock trend prediction using news sentiment analysis, 2016. http: //arxiv.org/abs/1607.01958.

[7] Y. Liu, Q. Zeng, H. Yang, and A. Carrio. Stock price movement prediction from financial news with deep learning and knowledge graph embedding. Knowledge Management and Acquisition for Intelligent Systems, pp. 102-113, 2018.

[8] J. Gong, B. Paye, G. Kadlec, and H. Eldardiry. Predicting stock price movement using financial news sentiment. In Proc. 22nd EANN, 2021.

## A 株式用語に対応する株価変動の例

(a) 急伸

(d) 続落

(g) 続急伸

(b) 急落

(e) 反発

(h) 続急落

(j) 急反落

(c) 続伸

(f) 反落

(i) 急反発

図 2: 株式用語に対応する株価変動の例