Comments
Description
Transcript
ニューラルネットと遺伝的アルゴリズムを用いた 株式売買支援システム
ニューラルネットと遺伝的アルゴリズムを用いた 株式売買支援システム 山口 和孝 1 はじめに 1.1 の議論の焦点は専ら、セミストロング型、およびウィー ク型の効率的市場仮説の妥当性にある。 研究の背景 株式市場を近似するモデルとして Fama により効率 的市場仮説が 1970 年に提唱されてから [14] 、既に何十 年にもなるが、これに対する反論も多く出てきている。 代表的なものとして、行動ファイナンスが挙げられる。 これは実際の投資家が、効率的市場仮説が想定する合理 的投資家と違うことを説明する学問として発達してき たものである。行動ファイナンスが提起する理論には、 プロスペクト理論(含み益が出ている株式に対しては、 投資家はリスク回避的になるが、含み損が出ているそれ についてはリスク志向的になる)、アンカー(投資家は、 初期の自分の判断をなかなか変えようとしない)、など 様々なものがある。その他にも、小型株効果、収益上方 修正効果、市場参加者の情報反応の不完全性、低株価収 益率効果、低株価純資産倍率効果、株価変動の長期記憶 効果、投資信託の流動性確保、投資信託運用者の保身な ど、いくつかの反論が挙げられている。 このように、効率的市場仮説の妥当性については、反 論がいくらかある。しかし現在でも、これは市場を理解 するモデルとして広く支持されている。この背景には、 アクティブファンドがインデックスファンドに負けてき た、という歴史がある。アクティブファンド等を運用す る専門家に市場を継続的に上回るものがほとんど現れ ないため効率的市場仮説が正しいように見えるのであ る。また、市場の効率性を支持する研究結果もいくつか 近年、ニューラルネット、遺伝的アルゴリズム (GA)、 遺伝的プログラミング (GP)、Q-Learning、フラクタル 次元、Support-Vector-Machine などの各種学習理論等 を用いての株価予測の研究は活発に行われている。計 算機の性能向上は大規模データを扱うことを容易にし、 これにいっそう拍車をかけている。これらの研究のいく つかは、これらの工学的手法が株価予測にある程度は役 に立つことを示している。これら研究結果も効率的市場 仮説の反論の 1 つとなっている。 1.2 研究の目的 各種工学的手法を用いた市場から利益を上げるため の今までの研究は、株価をいかに精度よく予測するかに 注目し、市場のどの個別銘柄が最も値上がり益が高いか を予測することに関しては全くと言ってよいほど注目し ていない。また、ポートフォリオをどのように構築する か、入力データをどのように決定するか等の実用的問題 にも、従来手法は注目していない。既存の手法でも株価 予測に有用なものは散見されるが、あまり有用でないと 思われるものが多い。個別銘柄の株価予測ができなくと も、個別銘柄内で最も値上がり益が高い銘柄を予想でき れば、利益は上げられるため、本研究では、複数銘柄の 中から値上がり益が高いと期待される銘柄を予想して 利益を得る、ことに焦点を当てる。また、NN への構造 決定、入力値の選択手法についても本研究は提案する。 ある。効率的市場仮説に対する反論は、生存者バイア ス(survivorship bias)や先読みバイアス(look-ahead bias)等のデータバイアスにより作られている面がある とする主張もある。市場が非効率に見える面を持つの は、ベータ等のリスク指標がリスク指標としては完全で はないからであり、適切なリスク指標を開発すれば、市 場の効率性は概ね支持できるとする主張もある。 1.3 本論文の構成 第 2 章では、従来の株価予測の研究動向について述 べる。第 3 章では、本論文が提案する株式売買支援手法 の概要を示す。第 4 章では NN と入力データ決定フィル タのセットを複数ランダムに作成することにより、株価 しかし先に述べたように、効率的市場仮説には反論が 予測問題に適した NN の構造と入力データ決定フィル いくらかあり、これの妥当性については、いまでも研究 タを決定しようとする手法を提案する。第 5 章では、第 者により議論が行われている。たとえば、ストロング型 の効率的市場仮説は厳密には成り立たないという見解 4 章で求まった NN とフィルタのセットを用いて、GA で売買戦略を構築する手法について述べる。第 6 章で は、現在の大方の研究者が支持するところであり、現在 評価実験について述べる。最後に第 7 章でまとめと今 後の課題について述べる。 2 型名 株価予測の研究動向 2.1 表 1: EMH の 3 つの型 説明 ウィーク型 「過去の株価を分析しても超 効率的市場仮説(EMH) 過収益は得られない」とする もの。ある銘柄の過去の株価・ EMH(Efficient Market Hypothesis)は、Fama が 1970 年に提唱した理論 [14] で、市場を近似するモデル として広く用いられている。この理論は市場を金融論の 立場からモデル化したものである。EMH に基づくと株 出来高を分析しても他者を出 し抜くことはできないことに なる。 セミストロング型 価予測や市場を出し抜く売買戦略の研究が意味をなさ 「公表されている企業情報を もとに株式を売買しても超過 なくなるため、株価予測、および市場を出し抜く売買戦 収益は得られない」とするも 略の研究をする際にも、無視できない。EMH は、次の の。企業調査には意味がない 仮定から成り立っている。 ことになる。 ストロング型 1. 金融市場の参加者は市場価格の挙動に関係する全 公表されている情報のみなら ず、公表されていない情報を ての情報を、瞬時に価格に折り込む 用いたとしても他者を出し抜 2. 株価は、公表されている全ての情報を適切に折り 込んでいる 3. その結果いかなる市場参加者も、株価変動に関す る有利な情報を他者に先んじて見つけ出すことは できない。 くことはできないとするもの。 2.2 ニューラルネットワーク(NN)を用い た手法 このように EMH はいかなる市場参加者も他者を出 し抜くことはできないと主張する。しかし、現実の市 ニューラルネットワーク(NN)は、図 1に示すよう 場は EMH では説明できないことが分かっている。たと に、人間の脳内のニューロンの結合からなる神経回路 えば、企業分割にあった会社の株式の値上がり益が高い 網を模擬した学習手法であり、その有効性が様々な分 [1] ことや、収益上方修正があった銘柄の値上がり益が 高い [2] こと、等である。 野で認識されている [15][16] 。樹状突起(dendrite)、軸 EMH では市場を完全にモデル化できないため、Fama 索(axon)、および細胞体(soma)を多数結合したのが NN である。 は 3 つの EMH の型を示し、それらで市場をどれくら い近似できるかの洞察を EMH の研究者たちに与えた。 各型で市場をどの程度近似できるかが古くから議論さ れている。表 1に各々の型について記す。 ストロング型の EMH は市場を近似するモデルと成り 得る、と考える EMH の研究者は現在ではほとんどいな い。しかし、セミストロング型、ウィーク型のそれは、 市場を近似するモデルとして多く用いられている。セミ ストロング型およびウィーク型の EMH が正しければ、 株価予測はできず、他者を出し抜くこともできないこと になる。 図 1: ニューロン しかし、工学的手法を用いての株価予測の研究のい くつかは、株価予測がある程度は可能であることを示し ており、これはセミストロング型、およびウィーク型の EMH の反論の 1 つとなっている。 McCulloch-Pitts は、こうした生物系内のニューロン を次式でモデル化した [16][29] 。 xi (t + 1) = 1[ wij xj (t) − θi ] (1) j ただし、xj はニューロン j からの信号を、wij はニュー ロン j からニューロン i へのシナプス結合度、θi はニュー ロン i の発火しきい値、1[x] は x > 0 のとき 1、x < 0 のとき 0 となる単位ステップ関数である。 (1)式は興味深いモデルではあるが、1[x] の微分は、 x = 0 で無限大となってしまうため、 (1)式を NN を模 擬した計算機構で用いるのは不可能である。 NN における計算機構では、McCulloch-Pitts(1943) が提唱した(1)式は使わず、次式を使う。 xi (t + 1) = f( wij xj (t)) 方向一致率 = 株価上昇下降の予測が的中した回数 株価上昇下降を予測した回数 (3) NN で株価予測を行い 90 %以上の方向一致率が記録 された、とする研究結果もあり [4]、NN が株価予測に 有効であることがわかる。 NN の学習アルゴリズムとしては、一般に、逆誤差伝 播法(BP: Back Propagation)、あるいはそれの改良 型の改良型 BP が用いられる。従来の株価予測の研究 においても、NN の学習アルゴリズムには改良型 BP が 主に用いられてきた。しかし、解決しようとする問題 によっては、改良型 BP では学習が遅い場合があること が、いくつかの事例で示されている [5][25] 。これは改良 (2) 型 BP には局所的最適解に陥りやすいという問題がある j ためである。 株価予測の問題において、改良型 BP が有用であるか NN は、(2)式でモデル化されるニューロンを多数、 回路網上に組み合わせたものである。出力は、入力層の どうかは、詳細には調査されていない。また、どのよう ニューロンに値を代入し、それらの出力を 2 階層以降の な構造の NN が良いのか、どの入力データが入力とし ニューロンに次々に入力し、出力層のニューロンの出力 て相応しいのかについても詳しい調査はされていない。 を求める、ことによって計算される。 2.3 遺伝的アルゴリズム(GA)を用いた手 法 GA は、生物界の個体進化の仕組みをヒントに考案さ れたアルゴリズムである。このアルゴリズムの概要は以 下の通りである。 まず、0 か 1 の組み合わせからなる遺伝子をもつ個体 を複数用意し、各々個体のある問題に対する適合度を定 める。そして適合度をもとに適当な進化方式で個体の取 捨選択(淘汰)を行う。ある個体の適合度は、その個体 の遺伝子の関数であり、世代を経るにしたがって、適合 度の高い個体を作ることが GA の戦略である。 図 2: ニューラルネットワーク 個体群の進化方法には、最も適合度の高い個体を次 世代に必ず残すエリート戦略、トーナメント方式、各個 体の適合度に応じて次世代に残す個体を選択するルー NN は、時系列解析にも用いることができるため、株 レット方式、などがある。また進化効率は、個体の突然 価予測の研究によく使われている [24][26][27] 。予測対 変異率、交叉率、イントロン [7] 等の変数にも影響を受 象の株価、出来高に関連する数値を NN への入力、株 ける。ここで「交叉」とは、2 個体間で遺伝子列の一部 価変動率を教師信号、として NN を訓練しこれを株価 を互いに交換することであり、「突然変異」とはある遺 予測に用いる、という手法で用いられている。相互結合 伝子が変質することである。また、イントロンとは、進 型ネットでの株価予測も行われている。 化効率を上げるために有効遺伝子間中に挿入する無効 NN を使った株価予測は主に訓練事例中のある時点か らの未来の株価の現在株価比騰落率を教師信号とし、株 価の上下を予測することに焦点が当てられている。その ため、予測精度はほとんどの場合、方向一致率で計られ 遺伝子のことである。 る。方向一致率は次式で定義される。 いる。 GA も株価予測問題に使われている [8]。GA を用い て、株式の売買単位を決める手法等が研究されている。 また GA は、人工株式市場の研究にも多く用いられて 図 3: 遺伝的アルゴリズム 図 5: 交叉と突然変異 2.4 遺伝的プログラミング(GP)を用いた 手法 交叉は二つの木構造間で部分木が置き換わる操作で GP は、GA における 0、1 のビット列からなる遺伝 子表現を拡張したものであり、木構造を遺伝子型として 扱ったものである。GP における個体は、終端記号と非 あり、突然変異は木構造内の部分木がランダムに換わる 終端記号から構成される。終端記号は入力定数や定数を けようとする、これが GP の目標である。 表し、非終端記号は関数を表す。また、木構造を解釈し GP を用いた株価予測の研究も行われている。1 分後 の日経平均株価の価格方向性を約 60 %で予測できた、と いう研究結果もある [9]。GP は株価予測に有用である。 たものをその遺伝子型の表現型と呼ぶ。図 4に遺伝子型 と表現型の関係を示す。 ものである。これら操作後、得られた個体群の各個体そ れぞれに適合度を計算し、問題に適した個体表現を見つ 2.5 Support Vector Machine(SVM)を 用いた手法 SVM は、学習用ベクトルのサンプルをもとに、n 次 元空間を 2 分する超平面を作り、ある入力ベクトルから 加工される n 次元ベクトルが、超平面で 2 分された n 次 元空間のいずれに属するかで、その入力ベクトルをクラ ス分けする学習手法である。株価予測問題では、SVM を用いて、株価の上下の予測を分類する問題を扱う。 図 4: 遺伝子型と表現型 SVM で、NN よりも精度よい株価変動の近似ができ た、とする研究結果もある [10] 。 しかし SVM の欠点は、株価の騰落を予測することし 図 4の右図が表現型、左図が遺伝子型である。木構造 かできず、株価変動を予測することはできないことであ の内部にある x、y、z が終端記号、-、*が非終端記号で る。SVM ではまだ、実用的な株式売買支援方式を構築 ある。終端記号、非終端記号を何にするかは、GP を用 できてはいない。 いるユーザーが自由に設定できる。GP では、次世代の 個体群をその前の世代の個体群をもとに生成する。この とき、GA のときのように個体群を交叉や突然変異等の 操作で進化させる。 GP における木構造をもつ個体の突然変異、および交 叉の様子を図 5に示す。 2.6 人工株式市場 人工株式市場は、計算機で株式市場を模擬したもの である。各エージェントの変数を適切に調整し、これら エージェントがどのような株式売買をするか、これから 現実の株式市場の価格変動メカニズムを解明する、これ により始められたものである [20] 。この分野の研究も近 GA の訓練用(800 営業日分)、最後のデータはテスト データ(866 営業日分)である。データセットには、各 銘柄の株価・出来高のみでなく、売上高、資産等の業績 データも含まれる。システムを稼働させるまえに、あ 年活発に行われている。たとえば、数年前に日本で始 らかじめ、データセットから様々な入力値を生成して められた U-Mart プロジェクトがある。これは、各ユー おく。 がこの研究の目的である。 人工株式市場の研究は、サンタフェ研究所の Arthur ザーが U-Mart Web サーバーにアクセスし、サーバー まず NN と入力フィルタのセットをランダムに生成 内のプログラムをもとに、仮想的に株式を売買する、と し、システムが用いる入力データ決定フィルタ、NN の いうものである。 構造を決定する。どの NN と入力フィルタのセットが優 市場の動きと市場における経済行動を解明するため れているかを決めるときには、NN 訓練用データを用い に、サーバー内に人工的に市場を作るプロジェクトが、 る。次に求まった NN と GA を用いて、売買戦略を構 最近活発に行われている。 築する。このとき、GA 用訓練データを入力データ決定 フィルタに通し、必要な入力だけを売買戦略決定に用い 2.7 まとめ 本章では、近年の株価予測の研究動向について述べ た。傾向としては、Support-Vector-Machine を用いた 株価騰落予測と人工株式市場理論の発展が挙げられる。 特に人工株式市場理論の研究は活発に行われている。 3 GA と NN によるハイブリッド株 式売買支援手法 3.1 株式売買支援手法の概要 るようにする。最終世代の最優良個体の遺伝子を、この システムの売買戦略とし、これを用いてテストデータで 株式売買をシミュレートし、どの程度の利益率を上げら れるかで手法の性能を評価する。 また本研究は、GA で売買戦略を構築することを行う 前に、適切な GA 変数などを決めるための予備実験を 行う。 3.2 3.2.1 各手法の説明 入力値決定フィルタ生成、NN の構造最適化 本研究では毎日新聞社開発の株価指数「J30」採用銘 柄 30 種の 1989 年 12 月 29 日から 1999 年 12 月 30 日 提案手法はまず、NN と入力フィルタのセットを 100 のデータ 2,466 日分を用いて、株式売買支援システムを 個ランダムに生成し、入力フィルタを通過した入力デー 構築し、それの性能を評価している。この 30 銘柄の内 タでもって NN を訓練する。そして、各 NN の NN 訓 のいくつかの銘柄を投資対象にしてポートフォリオを組 練用データにおける平均二乗誤差を計算する。そして、 み、利益を獲得することを目指す株式売買支援手法を本 最も低い平均二乗誤差を計算できた NN と入力フィルタ 研究は提案する。支援手法の概要を図 6で示す。 のセットを記録する。以上の作業を複数回行い、優良な NN と入力フィルタのセットがどういうものであるかに ついて調査する。そして、その調査した結果をもとに、 システムが用いるべき NN と入力フィルタのセットを 決定する。 3.2.2 値上がり益順位予測 複数銘柄内から、値上がり益が高いと期待されるも のを選択する NN を構築する手法を本研究は提案する。 図 6: 株式売買支援手法の概要 まずはじめにデータセットを 3 分割する。はじめの データは NN の訓練用(800 営業日分)、次のデータは この NN は、30 銘柄全ての値上がり益順位を予想する。 NN トレーニング時の教師データには、各銘柄の 30 種 内における値上がり益順位を用いる。NN の予想結果 は、GA アルゴリズムで売買戦略を構築するときに使わ れる。 3.2.3 NN の学習アルゴリズム 慣性項を考慮したアルゴリズムは、(5)式右辺第二 改良型 BP 法、および改良型 BP 法とランダム探索法 のハイブリッドアルゴリズム、どちらが値上がり益順位 を予測する NN の学習アルゴリズムとして相応しいか の検証を本論文では行う。改良型 BP 法は、NN の学習 項を考慮するだけでなく、1 ステップ前における結合強 度ベクトルの変更量も考慮するものである。慣性項を用 いたアルゴリズムでは、∆w (k)( = w(k) − (k − 1))は、 次式のようになる。 アルゴリズムとして、最も頻繁に用いられる。また、ハ イブリッドアルゴリズムは、BP 法の欠点(広域的探索 ∆w (k+1) = −(1 − α)η{(∂E(w)/∂w)|w=w(k) } + α∆w (k) 能力の欠如)とランダム探索法の欠点(局所的探索能力 (8) の欠如)を補い、かつ両者の長所を取り入れたアルゴリ ズムとして、近年注目されている。 となる。ただし、α は 0 から 1 の間の数である。 ハイブリッドアルゴリズム 改良型 BP 法 改良型 BP 法には、欠点がある。その欠点とは、この 改良型 BP 法には様々なものがある [17][18][19] が、 アルゴリズムだと局所解に陥りやすい、というものであ それらの中で最もよく用いられているものに、慣性項を る。また、改良型 BP に次いで使用されるランダム探索 考慮に入れたそれがある。以下、慣性項を考慮したアル 法にも欠点がある。その欠点とは、このアルゴリズムは ゴリズムについて説明する。 局所的探索が苦手だというものである。 NN の学習目標は、ある誤差関数 E(w) を最小化する ことである。E(w) は、本研究においては、(19)式の 長所を生かすアルゴリズムとして、近年、BP-ランダム 右辺である。BP においては、E(w) を最小化するため 探索法のハイブリッドアルゴリズムが注目されている。 に E(w) の勾配ベクトル(E(w) をウェイト wij で偏微 このアルゴリズムの概念図を図 7に示す。 両アルゴリズムの欠点を補い、かつ両アルゴリズムの 分したもの)を計算し、それの逆にウェイトを調整する SDM(Steepest Descent Method)を採用する。E(w) を第 s 層第 i ニューロンと第 s − 1 層第 j ニューロンを 結ぶ線分に対応するウェイト wij で偏微分すると、それ は次式になる。 ∂E(w) ∂E(w) ∂zi = · ∂wij ∂zi ∂wij (4) ただし zi は、s 層第 i ニューロンに入ってくる入力の 総和である。第 s-1 層第 j ニューロンの出力を yj とす ると、zi は次式で表される。 zi = wij yj (5) 図 7: ハイブリッドアルゴリズムの概念図 j ところで、(∂zi /∂wij ) = yj だから、(4)は、 ∂E(w) ∂E(w) = · yj ∂wij ∂zi ハイブリッドアルゴリズムはまず、改良型 BP 法で局 所的探索を行い、これで解があまり改善されなくなった (6) ら、広域的探索に移行する。広域的探索で解が改良され たら、また局所的探索を行う。このアルゴリズムの詳細 となる。 を、フローチャート式で図 8に示す。 BP 法では、 (6)式で定義される ∂E(w)/∂wij でもっ て、ウェイトの更新を行う。k ステップ目における結合 3.2.4 GA を用いての売買戦略構築 強度ベクトルを w (k) 、学習係数を η とすると、w (k+1) GA を用いて、複数銘柄で、最適なポートフォリオを は次式のようになる。 組もうとする手法を本研究は提案する。適切な GA 変 数(交叉率、突然変異率、イントロン数)の値を予備実 w (k+1) = w(k) − η · {(∂E(w)/∂w)| w=w(k) } (7) 験で求め、それら値をもとに、GA アルゴリズムで売買 M DL は、Rissanen が考案したもので、これの基本 的性格は AIC のそれと同じである。M DL は次式で定 義される。 K · log N 2 ただし、N は学習データの数である。 M DL = l(θ, σ 2 )+ (10) AIC、MDL の NN への適応 AIC 、M DL を NN へどう適応するかを考える。以 下、NN の変数を単に θ で表す。 いま、十分に学習を行ったあとの NN のある入力ベク トルを oi 、教師信号を zi (θ) とし、それらの誤差 i (θ) を考える。i (θ) は次式で表される。 i (θ) = oi − zi (θ) 図 8: ハイブリッドアルゴリズムのフローチャート (11) AIC 、M DL 算出においては、 (11)式で定義される 2 i (θ) は、平均 0、分散 σ の多次元正規分布 戦略を構築する。値上がり益が高いと期待される銘柄へ の投資配分を GA で決定する手法を本研究は提案する。 3.2.5 k p(i |θ, σ 2 )=(1/2πσ 2 )2 · exp{−|| i (θ)||2 /2σ 2 } (12) に従うと仮定する。この場合、N 個の学習データに AIC と MDL 対する尤度は、次式のようになる。 AIC および M DL というのは、ある数理モデルの性 能の悪さを測る指標であり、様々な分野で使われてい る。[11][12][13] 。これら指標は、モデルの精度がたとえ Nk L(θ, σ 2 )=(1/2πσ 2 )2 · exp{− るとオーバーフィットが起こる可能性を持つ数理モデル の性能を測るのに、この指標は都合がよい。本研究では、 ||i (θ)||2 /2σ 2 } i=1 良かったとしても、それの変数の数が多過ぎると高い値 を出してしまう [23] 。NN のように、変数の数が多過ぎ N (13) (13)式の尤度の対数を最大とする変数、θ 、σ 2 が最 尤推定量である。 実際の NN の学習では、NN の変数 θ が θ になること システムに用いる NN の性能を AIC 、および M DL で は極めて稀である。しかし、十分学習が進んだと考えら 測る。 れる NN においては、θ を θ とする。そして、(13)式 に θ を代入し、これを σ 2 で偏微分して 0 とおくと、σ 2 AIC と MDL でのモデル推定 ある数理モデルの変数の数を K とすると、それの が得られる。σ 2 は次式のようになる。 AIC は次式で表される。 σ2 = N ||i ||2/N k (14) i=1 AIC = −2 · l(θ, σ 2 )+ K ただし、l(θ, σ 2 )は最大対数尤度である。 (9) (13)式、(14)式より最大対数尤度の近似値として 次式を得る。 AIC は、期待平均対数尤度の推定値を表し、Kullbackl(θ, σ 2 )= −(N k/2) log(2π) − (N k/2) log(σ 2 ) − N k/2 Leibler 情報量の期待値と見なすこともできる。AIC の (15) 第一項は、モデルの精度に関する量であり、第二項は、 これより、AIC 、および M DL を次式で近似する。 変数の数に関するものである。変数の数 K が多過ぎる と、AIC の第二項は巨大化してしまう。数理モデルの性 AIC = N k log(σ 2 ) + 2K (16) 能が悪いと、それの第一項が巨大化する。つまり、AIC を低い値に抑えるためには、より少ない変数で高い性能 M DL = N k log(σ2 ) + 2K log(N ) (17) を出す必要がある。 3.3 まとめ 本研究で提案する株式売買支援手法は次のようなも のであった。まず第 1 に、NN と入力フィルタのセット をランダムに生成し、システムが用いるべき入力データ 決定フィルタと NN のセットの候補を決める。次に、求 まった NN を用いて GA で売買戦略を構築する。そし て、最後に手法の性能をテストデータで評価する。 また、効率よいシステムを構築するため、NN の学習 アルゴリズムの検証、GA 変数の適切値の決定を予備実 験で行う。 4 図 9: 単純予測の精度 NN による騰落順位予想 4.1 4.1.1 NN による騰落順位予想の概要 従来手法の問題点 第 2 章で紹介した NN で株価予測をする従来手法の問 題の最も主たるものは、これらが単一銘柄の株価予測、 あるいは株価変動の近似式を作ることに特化し過ぎて おり、複数銘柄内から、値上がり益が高いと期待される ものを予測することに焦点を当てていないことである。 また、複数銘柄でポートフォリオを構成することにも、 これらは全く対応していない。 また、従来手法が株価予測問題にある程度役立つと する研究論文もあるにはある。統計的に有意に 60 %以 上の精度(方向一致率)を出しているものもある。しか しだからといって、それらが株価予測に真に役立つとは 言えないのである。以下、これについて述べる。 予測で明日の株価の上昇下降を予測しても、60 回は正 しく上昇下降が予測できたということである。図を見れ ばわかるように期間によっては、単純予測でも 70 %の 精度を出せることがわかる。これは何を意味するかとい うと、ある工学的手法である期間において 70 %の方向 一致率が出せたとしても、単純予測でもそれと同等の精 度が出せた可能性があり、その手法が株価予測に有用か どうかは全くわからないということである。 EMH を正しいと仮定して、ある工学的手法の有効性 を、それの予測精度が 60 %以上である等の基準で判断 するのは、不十分である。60 %以上の予測精度が出せ る工学的手法があったとしても、それが有用かはわから ないのである。 また、NN における株価予測の問題点には次のような EMH は株価変動が対数正規分布に従うとする。し かし、現実の株価変動は EMH か想定するものとは違 ものがある。それは、NN で株価予測をしようとすると い、これには、長期記憶効果があることがわかっている 下降の予測精度は、単純予測のそれと大差なくなってし き、NN への入力データを適切に選ばないと、その上昇 [21][28] 。株価変動が対数正規分布に従わない以上、60 まう、というものである。 図 10に、MVA(5)、MVA(10)、MVA(30)、PC %以上の予測精度を出す予測手法があったとしても、そ れは全く驚くに値しない。 (1)、PC(5)、PC(10)、PC(30)を入力(各関数の 現実には、単純予測(「昨日の株価が今日のそれより 意味は、表 4を参照のこと)、シグモイド関数を 10 個の も高かったら(低かったら)、明日の株価は今日のそれ ニューロンを持つ中間層の伝達関数、 「5 営業日の株価/ よりも高い(低い)だろう」という予測)でも、期間に 現在株価」を教師信号として NN(中間層ニューロン数 よっては 60 %以上の予測精度(方向一致率)が出せる 10、伝達関数は全てシグモイド関数)を学習させ、5 営 ことがある。図 9に、1949 年 9 月 8 日から 2000 年 12 業日後の騰落を NN で予測した場合における、ある時点 月 22 日の期間における、ある時点からの過去 100 営業 から過去 100 営業日間における NN の予測精度(方向 日間における単純予測の精度を示す。予測対象は日経平 一致率)を示す。図 10には、単純予測(今日の株価が 均株価である。 昨日のそれよりも高(低)かったら、5 日後の株価は今 図 9で、ある時点で精度が 60 %出ているということ 日のそれよりもは高(低)いだろう)での精度を併記し は、その時点から過去 100 営業日間において単純予測 てある。用いたデータには、(株)大林組のそれを使っ で明日の株価騰落を予測しても、60 %の方向一致率が た。学習期間は、1990 年 2 月 15 日から 1993 年 5 月 17 出せたということである。つまり 100 営業日毎日、単純 日の 800 営業日、テスト期間は 1993 年 5 月 18 日から 1998 年 3 月 25 日の 1200 営業日である。 3. 適切な NN の構造決定、および入力データの決定 を人間の手による予備実験で行っており、従来手法 における NN の構造、入力データ決定手法の妥当 性には疑問がある。 4.1.2 概要 本研究が提案する NN による騰落順位予想手法は、従 来手法の主な問題点を改善したものとなっている。本提 案手法の概要を図 17に示す。 図 10: 予測精度の比較 図 10からわかるように、NN の予測精度は、単純予 測のそれよりも優れているとは言えない。NN で株価予 測をする場合、入力値を適切に選ばないと、NN の予測 精度は単純予測のそれを上回れなく、株価予測手法とし ての意味を成さなくなってしまう。NN で株価予測をし ようとするときは、適切な入力データの選択が必要不可 欠なのである。 図 11: 手法の概要 入力値の選択を誤ったとき、予測精度が悪くなる理由 の一つとして、予測に有用でない入力値がノイズのなっ てしまい、NN がうまくトレーニングできないことが挙 げられる。 従来手法における NN への入力データの決定方法は、 本手法はまず、0 と 1 からなるビット列を 100 個ラン ダムに生成する。各々のビット列は、入力データフィル タと NN のセットを構築する。ここで入力データフィル 予備実験を何度が行う、というものである。しかし、入 タとは、特定の入力データしか通さないフィルタのこと 力値の組合せの数は膨大であり、予備実験を何度か行う である。入力データフィルタを通過した NN 訓練用デー ことで適切な入力値が選択できる、などという保証は全 タで NN を訓練し、訓練が終わったら、どのビット列か くない。というよりも、予備実験程度では、最適な入力 ら生成された NN が最も低い平均二乗誤差を出力した 値など求まらないだろう、と考えるのが保守的である。 かを調べる。 従来手法の問題点をまとめると、それは次のように 以上の作業を 54 回行い、最も低い平均二乗誤差を出 なる。 力した入力データフィルタと NN のセットを構築した 1. 従来手法は、複数銘柄でポートフォリオを構成する という実用面にまるで関心がない。 2. EMH が正しいと仮定して、手法の株価予測問題へ の有効性、および適切な入力データの決定を方向一 致率の絶対値(たとえば、60 %以上)で計ってし まっている。しかし、単純予測でも高い予測精度が 出せることがあり、EMH を正しいと仮定して、方 向一致率の絶対値で手法(入力データ)の妥当性を 評価するには無理がある。また、NN への入力値の 選択を誤ると、NN は株価予測手法としての意味を 成さなくなる。つまり、従来手法で適切だとされた ビット列の統計をとる(作業を 54 回行ったのは、時間 的問題のためである。1 回の作業を行うのに、約 5 時間 かかるため、これ以上の施行を行う時間的余裕がなかっ た)。そしてこの統計から、システムに用いるべき、NN と入力データ決定フィルタの候補を決める。 また、本研究は NN の学習アルゴリズムの検証も行っ ている。 4.2 ビット列による NN の構造決定、および 入力データ決定フィルタの生成 本研究では、騰落順位を予想する NN を構成する前 入力データが、実際に適切である保証は全くない。 に、株価騰落順位予測問題に対する NN の適切な構造、 および入力データ決定フィルタをビット列で決定する 方式を採用している。ここでは、これらを求めるため、 データセットを 3 分割したうちのはじめのデータ群(800 日営業日分× 30 銘柄 = 24,000 サンプル)を用いる。 図 12に、NN の構造(層数、ニューロン数、伝達関 数)、どの入力データを NN の入力に用いるか、および どの教師信号を用いるかをビット列でどう表現するかを 示す。 表 2: 対応表(入力 ID) 入力 ID0 入力 ID2 入力 ID4 入力 ID6 入力 ID8 入力 ID10 入力 ID12 入力 ID14 入力 ID16 入力 ID18 入力 ID20 入力 ID22 入力 ID24 入力 ID26 入力 ID28 入力 ID30 入力 ID32 入力 ID34 入力 ID36 入力 ID38 入力 ID40 入力 ID42 入力 ID44 入力 ID46 入力 ID48 MVA(5)(終値) MVA(30)(終値) MVA(100)(終値) MVA(15)(出来高) MVA(50)(出来高) HFR(5)(終値) HFR(30)(終値) HFR(100)(終値) HFR(15)(出来高) HFR(50)(出来高) LFR(5)(終値) LFR(30)(終値) LFR(100)(終値) LFR(15)(出来高) LFR(50)(出来高) PC(1)(終値) PC(5)(終値) PC(15)(終値) PC(50)(終値) PC(5)(出来高) PC(15)(出来高) PC(50)(出来高) PSR ROE PBR の逆数 入力 ID1 入力 ID3 入力 ID5 入力 ID7 入力 ID9 入力 ID11 入力 ID13 入力 ID15 入力 ID17 入力 ID19 入力 ID21 入力 ID23 入力 ID25 入力 ID27 入力 ID29 入力 ID31 入力 ID33 入力 ID35 入力 ID37 入力 ID39 入力 ID41 入力 ID43 入力 ID45 入力 ID47 入力 ID49 MVA(15)(終値) MVA(50)(終値) MVA(5)(出来高) MVA(30)(出来高) MVA(100)(出来高) HFR(15)(終値) HFR(50)(終値) HFR(5)(出来高) HFR(30)(出来高) HFR(100)(出来高) LFR(15)(終値) LFR(50)(終値) LFR(5)(出来高) LFR(30)(出来高) LFR(100)(出来高) PC(2)(終値) PC(10)(終値) PC(30)(終値) PC(1)(出来高) PC(10)(出来高) PC(30)(出来高) PER PBR PER の逆数 PSR の逆数 図 12: ビット列を用いた NN と入力データフィルタ生成 表 3: 対応表(教師信号 ID と伝達関数 ID) たとえば、図 12のビット列からは、第 2 層の伝達関 数は伝達関数 1、第 3 層は 0、出力層の伝達関数 1、の構 造の NN を構成し、入力 ID1、49 番等を NN への入力 とし、NN をトレーニングする。平均二乗誤差を各ビッ ト列が生成した NN について計算する。なお、ある層 のニューロンの数は、その層に対応するビット列上の 2 進数を 10 進数に直したものに 1 を加えたものである。 また、出力層のニューロン数は、強制的に 1 になる。た とえば、第 3 層のニューロンの数がビット列から 12 と 表されていたとしても、中間層の数が 1 なら(このと き、第 3 層は出力層となる)、第 3 層のニューロン数は 1 となる。入力層のニューロン数は、入力 ID フィール ド中の”1”の数となる。なお、入力層の伝達関数は y( 出力)= x(入力)である。具体的な入力 ID と入力デー 教師信号 ID0 教師信号 ID1 教師信号 ID2 教師信号 ID3 教師信号 ID4 教師信号 ID5 教師信号 ID6 教師信号 ID7 教師信号 ID8 教師信号 ID9 教師信号 ID10 教師信号 ID11 教師信号 ID12 教師信号 ID13 教師信号 ID14 教師信号 ID15 伝達関数 ID0 伝達関数 ID1 伝達関数 ID2 伝達関数 ID3 PC-FUTURE(1) PC-FUTURE(3) PC-FUTURE(5) PC-FUTURE(8) PC-FUTURE(10) PC-FUTURE(15) PC-FUTURE(20) PC-FUTURE(25) PC-FUTURE(30) PC-FUTURE(35) PC-FUTURE(40) PC-FUTURE(45) PC-FUTURE(50) PC-FUTURE(60) PC-FUTURE(80) PC-FUTURE(100) 1/{exp(x) + 1} tanh(x) exp(−x2 ) 1 − exp(−x2 ) タ、教師信号 ID と教師信号、伝達関数 ID と伝達関数 名、の対応を表 2から表 4に示す。 表 4: 関数対応表 各ビット列は、自身の情報をもとに入力データフィル タと NN を構築し、NN 用訓練データ 24,000 件を使い その NN を訓練する。教師信号は、教師信号 ID に対 応する数値の 30 銘柄内における順位 ni (i=1∼30)を NN が扱いやすい数値に変換したものである。教師信号 と ni との関係は(18)式で定義する。 MVA(n) PC(n) HFR(n) LFR(n) PC-FUTURE(n) n 日移動平均値からの乖離率 現在値/n 日前の値 (過去 n 日の最高値 − 現在値)/現在値 (現在値 − 過去 n 日の最安値)/現在値 n 日後の株価/現在値 PER 表 5: ファンダメンタル指標 株価収益率(Price to Earnings Ratio) PSR 株価売上高倍率(Price to Sales Ratio) PBR 株価純資産倍率(Price to Book Ratio) ROE 株主資本利益率(Return on Equity) 教師信号 = (0.05 − 0.95) · n i + 0.95 · 30 − 0.05 · 1 30 − 1 (18) この式で教師信号を定めると、教師信号は、値上がり 図 13: 各入力データの出現割合 益順位 1 位と予想されるときは 0.95、値上がり益順位 30 位と予想されるときは 0.05、それ以外のときについ ては、0.05∼0.95 の間の数となる。 NN の学習アルゴリズムには、バックプロパゲーショ ン(BP)とランダム探索法のハイブリッドアルゴリズ ム [6] を用い、各ビット列に対応する NN をフィルタを 通った訓練データを用いて訓練する。十分な訓練が終 わったら、各ビット列が生成した NN の平均二乗誤差を 計算する。平均二乗誤差は(19)式で定義される。 24000 (ti − oi )2 平均二乗誤差 = (19) i=1 ただし ti は教師信号の強さ、oi は NN の出力である。 本研究では、ビット列を 100 個ランダムに生成し、ど 図 14: 各教師信号の出現割合 のビット列から生成された NN が最も低い平均二乗誤 差を計算したかを調べる、という作業を 54 回行い、各 入力 ID、教師信号 ID、伝達関数 ID が 54 個の最優良 ビット列中で何回使われたか、ある NN の構造は 54 個 の最優良ビット列中で何回現れたか、を調べた。図 13 から図 15にその結果を示す。 出現割合が高い入力 ID がいくつかあり、これらは NN への入力には欠くことのできないものであると思わ れる。教師信号 ID0、1、10 番は、NN への教師信号と して高い出現割合を記録した。伝達関数は全ての層で伝 達関数 0 のシグモイド関数が最も高い出現割合を記録 した。中間層の数は 1 ないし 2 が高い出現割合を記録 している。また、中間層のニューロン数はあまり多くし ないほうがよいようである。中間層ニューロン数は 5∼ 10 付近で高い出現割合を記録している。これらの結果 は全て、6 章の評価実験で使われる。 図 15: 各伝達関数の出現割合 図 16: 各中間層数の出現割合 図 18: アルゴリズム性能比較 4.4 まとめ 本章では、ビット列を用いたシステムに用いるべき NN と入力データ決定フィルタの決定手法についてまず 述べた。そして、このアルゴリズムを 54 回動作させ、 最優良ビット列がどのような傾向を持つものなのか、こ れを調べた。この調べた結果は、6 章での評価実験で用 いる。 また本章では、従来型の NN のウェイトアルゴリズム である改良型 BP 法、および、近年注目されているハイ ブリッドアルゴリズム、どちらが株価予測問題には有効 図 17: 各中間層ニューロンの出現割合 なのかを検証し、株価予測問題においては、ハイブリッ ドアルゴリズムがはるかに優れていることを示した。次 章以降での NN の学習アルゴリズムには、全てハイブ リッドアルゴリズムを用いる。 4.3 アルゴリズムの検証 5 GA による売買戦略構築 株価予測問題で NN を使うとき、NN のウェイト最適 化アルゴリズムには、改良型 BP を用いるべきか、それ ともハイブリッドアルゴリズムを用いるべきか、これを 決定するため、本研究は、両アルゴリズムの性能比較を 行った。平均二乗誤差が学習ステップ数ごとにどう変化 するか、両アルゴリズム間で比べた。用いた訓練データ とテストデータおよひ NN は、3 章で NN の予測精度と 単純予測のそれを比較したときに使ったデータと全く同 一である。図 18にその結果を示す。 図 18を見れば明らかなように、ハイブリッドアルゴ リズムのほうが改良型 BP(学習係数を η = 0.05 )より 5.1 売買戦略構築の概要 GA で売買戦略を決定するためには、3 分割したデー タセットの 2 番目のデータ 24,000 サンプル(800 営業 日分× 30 銘柄)を用いる。各銘柄に関する入力データ を入力フィルタに通して NN に代入し、NN はある銘柄 の「n 営業日後の株価/現在の株価」の数値の 30 銘柄内 における順位を予想する。この予想順位に対応する遺伝 子列上のビット列を用いて株式の売買を行う。以上の一 連の作業を個体毎に独立に毎営業日行う。図 19に、1 個 体の遺伝子と NN の出力の関係を示す。 もはるかに優れていることがわかる。本研究で提案する たとえば、銘柄 Si (i=1∼30)の順位が NN により 株式売買支援手法においては、NN のウェイト最適化ア ルゴリズムとして、BP-ランダム探索法のハイブリッド n 位と予想されるとき、その n 位に対応する遺伝子列 上の gn を 10 進数変換したものを ri とし、ri に基づき アルゴリズムを使用する。 各銘柄への投資額 Mi を計算し、ポートフォリオを組み 提案手法における GA での売買戦略決定においては、 有効遺伝子間にイントロンをいくつ用いるのが最も良 いのか、これを知るため、イントロン数と学習効率の関 係を調べた。MVA(5)、MVA(10)、MVA(30)、PC (1)、PC(5)、PC(10)、PC(30)、PER 、PSR 、 PBR 、ROE を NN への入力として NN を訓練用データ で訓練し、その出力を用いて、100 個体の個体群の 1,000 世代目における最優良個体の遺伝子を用いたとき、初期 資産を GA 学習用データ内でいくらにすることができ たかを調べ、利益率を計算した。用いた学習対象、NN、 図 19: NN と 1 個体の遺伝子との関係 および学習期間、テスト期間は図 10のそれらと全く同 一である。進化方式には、最優良個体を必ず次世代に残 直す。この作業を毎営業日繰り返す。Mi は次式のよう に定義する。 すエリート戦略を採用した。個体の適合度に基づく確率 分布で進化させるルーレット方式をエリート戦略ととも に採用した。10 回の実験の平均を図 20に示す。 ri Mi = 30 i=1 ri · Vt (20) ここで Vt は、時点 t において保有する株式の時価総 額である。なお、GA の学習効率を上げるために、図の ように、有効遺伝子中にイントロンを複数混ぜる。各個 体の遺伝子を用いての売買シミュレートが終わったら、 各個体の適合度 F itness を次式のように定義する。 F itness = (100 − 1) · V − 1 · Vmax − 100 · Vmin Vmax − Vmin (21) ただし V は各個体を用いて売買したときの、Vmax は 図 20: イントロン数と学習効率との関係 最優良個体を用いて売買したときの、Vmin は最劣個体 を用いて売買したときの期末時点資産残高である。この 式で F itness を定めると、最優良個体のそれは 100、最 劣個体のそれは 1、それ以外の個体のそれは 1∼100 の 間の数となる。 図 20からわかるように、イントロンの数が 5 近辺の とき、GA は最も効率よく売買戦略を決定できている可 能性が高い。また 5 以上では、大幅な学習効率の上昇は ない可能性が高い。 提案手法における GA での売買戦略決定においては、 5.2 イントロンの決定 イントロンとは、有効遺伝子間に挿入する無効遺伝子 であり、GA において極めて重要である。有効遺伝子間 にあるイントロンの含有量で学習効率が大きく異なる。 最適なイントロン数は、問題により異なる。 イントロンは、現実世界の生物進化においても極めて 重要な役割を果たしており、連続する遺伝子情報が、個 有効遺伝子間に挿入するイントロンの数は 5 とした。 5.3 GA 変数の決定 突然変異率、交叉率等の学習変数も、GA の学習速度 に大きな影響を及ぼすが、これらは扱う問題により最適 値が大きく異なる。 提案手法における GA での売買戦略決定においては、 体の環境への適応度に大きな役割を果たしている場合、 GA 変数(突然変異率、交叉率)はいくつにするのが適 イントロンを遺伝子列にいくつか挿入しないと学習効 切かを知るため、イントロン数決定のときと同条件で、 率が落ちる。イントロンを挿入しないと、個体の環境へ GA 変数と学習効率との関係を調べた。結果を図 21に 記す。 の適合度に大きな役割を果たしている連続する遺伝子 情報間が、交叉点になりやすいからである。 突然変異率が 0 %に近いときと 3 %以上のときに学 表 6: J30 種採用会社名 セコム 大林組 日本電信電話 トヨタ自動車 三菱重工業 アサヒビール ヤマト運輸 ホンダ 京セラ 信越化学工業 三井不動産 キヤノン TDK 花王 野村證券 リコー 松下電器産業 三共 三井住友銀行 大日本印刷 富士通 武田薬品工業 習効率が悪いことが、図 21から分かる。また、交叉率 東京三菱銀行 三菱商事 が高過ぎる場合も、学習効率が悪いことがわかる。突然 東京電力 富士写真フイルム 変異率 2 %、交叉率 92 %のときが、最も学習効率が高 ブリヂストン イトーヨーカ堂 かった。提案手法における GA での売買戦略決定にお コマツ ソニー 図 21: GA 変数と学習効率との関係 いては、突然変異率は 2 %、交叉率は 92 %、とした。 5.4 まとめ 変動した場合は、業績データの資本金の項目を変動分だ け増減させた。 本章では、GA を用いて株式売買戦略を決定する手法 また、株価収益率(PER: Price to Earnings Ratio)、 について述べた。そして学習効率が最もよいような、イ 株価純資産倍率(PBR: Price to Book Ratio)、株価売 ントロン数、突然変異率、交叉率等の GA 変数を実験 上高倍率(PSR: Price to Sales Ratio)、株主資本利益 に基づいて決めた。実験の結果、イントロン数は 5、突 率(ROE: Return on Equity)等の計算に用いる業績 然変異率は 2 %、交叉率は 92 %が適切であることがわ データは全て、ある時点で既に確定している実績値を用 かった。6 章の評価実験で GA を動作させるとき、これ いた。 らの値を用いる。 本研究が用いたデータに、生存バイアスや先読みバ イアス [22] の影響は全くない。これらバイアスの説明 6 評価実験 6.1 実験対象株価指数 J30 評価実験で用いたデータは株価指数 J30 採用銘柄 30 は付録を参照のこと。 6.2 実験手順 第 4 章の実験からわかるように、NN のニューロンの 種である。表 6にそれら 30 銘柄の銘柄名を記す。なお、 伝達関数はすべてシグモイド関数とするのが適当であ 指数 J30 とは、J30 採用銘柄 30 種銘柄の平均株価のこ る。また、第 2 中間層のニューロン数は 12 程度とする とである。 のが適当そうである。また、第 5 章の実験からわかるよ 30 種の株価データと出来高データは Yahoo ファイナ うに、GA による売買戦略決定においては、イントロン ンス(http://quote.yahoo.co.jp )から取得した。また、 数 5、突然変異率 2 %、交叉率 92 %とするのが適当で これらの業績データは(株)日本経済新聞社出版の出版 ある。これら数値は、以下で述べる全システムにおいて 共通である。 物である日経会社情報から入手した。 増資、減資、株式分割等に伴う発行済株式数、およ 本研究では、システムの変数(NN への入力、教師信 び資本金の変動による影響は、研究に支障がないよう 号等)を変え、36 の違った売買支援システムを構築し に適切に調整した。具体的には、増資、減資、株式分割 た。以下の実験で比較する様々な条件の組合せを表 7、 があった場合は、業績データの発行済み株数をそれらに および表 8に示す。 伴って発生した株数の増減分だけ増減させた。資本金が 実験手順は以下の通りである。まず、各システムは NN とフィルタを構成し、その NN をフィルタを通った NN 訓練用データで訓練する。訓練が終わったら、その NN を用いて、フィルタを通った GA 訓練用データで個 体数 100、世代数 1 万の GA で売買戦略を決定する。世 表 8: 様々な条件の組合せ(2) NN への 入力データ セット 教師 信号 中間 層数 ニューロン数 (第 1 中間層) 代の進化方法は、エリート戦略とルーレット方式を併用 システム 19 A 、B 0 0 した。最終世代の最優良個体の遺伝子をシステムの売買 システム 20 A 、B 0 0 システム 21 A 、B 0 1 7 システム 22 A 、B 0 1 18 システム 23 A 、B 0 2 7 システム 24 A 、B 0 2 18 システム 25 A 、B 1 0 システム 26 A 、B 1 0 システム 27 A 、B 1 1 7 システム 28 A 、B 1 1 18 システム 29 A 、B 1 2 7 システム 30 A 、B 1 2 18 システム 31 A 、B 10 0 システム 32 A 、B 10 0 システム 33 A 、B 10 1 7 システム 34 A 、B 10 1 18 システム 35 A 、B 10 2 7 システム 36 A 、B 10 2 18 戦略とし、フィルタを通ったテストデータ(30 銘柄× 866 営業日分)でシステムの性能を測る。ある資金で株 式の売買をはじめ、いくらの利益を得ることができたか を調べて利益率を計算し、それをシステムの性能とす る。テストデータ時の株式売買方法は、GA 訓練用デー タ時のそれと全く同一である。 また、AIC、MDL の両指標で、各システムが数理モ デルとしてどれくらい優れているかを定量的に分析す る。両指標で、システム間の優劣を説明できるかを調 べる。 表 7: 様々な条件の組合せ(1) NN への 入力データ セット 教師 信号 中間 層数 システム 1 A 0 0 システム 2 A 0 0 システム 3 A 0 1 7 システム 4 A 0 1 18 システム 5 A 0 2 7 システム 6 A 0 2 18 システム 7 A 1 0 ステムの変数の違いにより大きな影響を受ける。しか システム 8 A 1 0 し全体を平均すると、J30 指数を単純にバイ・アンド・ システム 9 A 1 1 7 システム 10 A 1 1 18 システム 11 A 1 2 7 システム 12 A 1 2 18 システム 13 A 10 0 システム 14 A 10 0 システム 15 A 10 1 7 システム 16 A 10 1 18 システム 17 A 10 2 7 システム 18 A 10 2 18 ニューロン数 (第 1 中間層) 6.4 考察 実験結果からわかるように、システムの利益率は、シ ホールド(株式を購入したら、売却しない)する戦略よ りも高い利益を獲得できたことがわかる。テストデータ 期間(1996 年 6 月 26 日から 1999 年 12 月 30 日)にお ける J30 指数の上昇率は、44.01 %であるが、システム の平均利益率は 67.02 %であった。J30 平均指数よりも 23.01 %も高い利益を獲得できている。本研究が提案す るシステムで、J30 指数よりも高い利益を獲得できる可 能性があることがわかる。また、36 システム中 J30 指 表 9: 入力データセット A(4 章の実験で頻度が B(4 章の実験で頻度が 30 以上だったもの)の入 29 だったもの)の入力デ 力データ 6.3 実験結果 入力 ID9、14、25、28、 入力 ID1、6、8、13、24 31、36、43、44、49 実験結果を、図 22から図 24に示す。 ータ 図 22: 各システムの利益率 図 24: 各システムの MDL 7 おわりに 7.1 まとめ 近年の計算機の大幅な進歩は、大規模データを扱う ことを容易にし、これに伴い、各種工学的手法を用いて の株価予測の研究も広く行われるようになった。しかし 従来手法は、個別銘柄の株価予測にあまりにも特化し 過ぎており、実用性に欠ける面がある。またこれらは、 適切な入力値選択を決定しようとすることにあまり焦 点を当てていない。実用性のある株式売買支援手法が、 図 23: 各システムの AIC 現在求められている。 そこで本論文では、複数銘柄内から値上がり益が高 数を上回る利益を上げたのは、20 システムであった。 システムの性能の良さと、AIC、MDL の指標の高低と の間には、有意な関係は認められなかった。AIC、MDL の値の低さは、システムの変数の数と逆比例の関係にあ ることが図 23と図 24からわかる。これは、各システム の NN から計算される平均二乗誤差に有意な差がない ことを意味する。 AIC、MDL の両指標は本提案手法のシステムの優劣 を示していない。 6.5 まとめ 本章では、本提案手法の評価実験について記し、そ いと期待される銘柄を予測して、それらでポートフォリ オを組み、利益獲得を目指す実用性のあるシステムを提 案した。NN への入力値選択の工夫、NN の構造決定手 法など、従来手法にない新規性ある手法である。 まず、NN とフィルタのセットをランダムに 100 個作 成し、それら複数のセットの中から、最も良い平均二乗 誤差を算出できたセットを記録することを 54 回行い、 システム性能評価時に用いる NN への入力、NN の構造 の候補を求めた。その結果、ニューロンの伝達関数は全 ての層でシグモイド関数とするのが最も適当であるこ とがはっきりとわかった。中間層のニューロン数を抑え 気味にしたほうがよいこともわかった。教師信号、NN への入力にも、他のものよりも優れていると思われるも れの有効性の可能性を確かめた。36 システムの平均で、 のがいくつかあった。 つぎに、GA で売買戦略を構築する手法を提案した。 J30 平均指数よりも 23.01 %も高い利益が得られたこと 予備実験で、高い学習効率を出せると思われる GA 変 は提案手法が優れている可能性を示すものである。 また、数理モデルの性能の良さを評価する AIC、MDL 数を求め、イントロンを有効遺伝子間に挿入するなど、 両指標でシステムの優劣を説明できるかを実験したが、 効率よい GA で株式売買戦略を構築することを試みた。 これら指標では本提案システムの優劣を説明できない ことがわかった。 そして評価実験では、36 のシステム変数の組合せを 用意し、売買シミュレートにより利益率を求めた。テス トデータ期間(1996 年 6 月 26 日から 1999 年 12 月 30 いれば、NN の初期ウェイトの違いを原因とする性能を 日)における J30 指数の上昇率は、44.01 %であるが、 振れを十分低減できるかを定量的に調べたい。 システムの平均利益率は 67.02 %であった。本提案手法 が、株式売買支援システムとして有効らしいことを示す ことができた。 7.2.3 入力決定フィルタ生成の自動化 また、AIC、MDL の両指標でシステム間の優劣を説 ランダムにフィルタと NN のセットを複数生成し、そ 明できるか調べたが、両指標はシステム間の優劣を説明 れらの中から最も優良なセットを記録する、この作業を できなかった。 何度も行い良いフィルタと NN のセットの統計をとり、 売買戦略に用いるセットを決める、という手法を本研究 7.2 7.2.1 今後の課題 ポートフォリオのボラティラティ抑制 本研究が提案した手法では、ポートフォリオのボラ では採用したが、この手法には恣意性がある。また、こ の手法を実行するにはかなり時間がかかる。 記録された優良セットの中から、実際の売買に使う セットを自動的に決定する方法を今後開発していきたい。 ティラティ(価格変動性)を抑える戦略については一切 考えていない。大きな利益を上げられるシステムを作る ことも大事だが、より小リスク(ボラティラティ)で利 益を上げるほうが当然好ましい。 7.2.4 投資可能性銘柄拡大時の対応 本研究では、30 銘柄のみを投資可能性銘柄とし、売 ポートフォリオのボラティラティに関係する量を GA 買戦略を構築を構築した。その結果、GA での売買戦略 での売買戦略に取り入れる、等の改良を今後行っていき 構築時においては、個体の遺伝子長は比較的短くて済 たい。具体的には、各個体の適合度計算に訓練期間にお んだ。 ける利益率変動の標準偏差を取り入れる等のことを行 いたい。 ベータなどのリスク指標からみても、本手法が有効 かどうかを検証することも今後行いたい。 7.2.2 複数 NN の騰落順位予測によるシステム性能 の安定性向上 NN の初期ウェイトが違うと、同じ入力値で訓練して も、出力がかなり異なる。当然、一つの NN を用いた しかし投資可能性銘柄を、たとえば 1000 に拡大した 場合、個体の遺伝子長は非常に長くなってしまい、この 長い遺伝子長をもつ個体群を GA で適切に進化させる ためには、かなりの世代にわたり個体群を進化させねば ならない。 投資可能性銘柄数が飛躍的に増大したとき、本研究 提案の GA での売買戦略決定手法で売買戦略をうまく 決定できるかの検証をこれから行いたい。もし、うまく いかないようなら、他の売買戦略決定手法を考えたい。 予測手法の性能は、NN の初期ウェイトに大きく依存す る。本システムでは、1 つの NN で銘柄の騰落順位予測 をした。そして実験結果からわかるように、各システム 7.2.5 売買戦略の拡大 の性能は大きく上下に振れている。これの原因には、各 現物株の売買のみを本研究のシステムでは想定して システムの NN の構造が違うこともあるが、各システム おり、信用取引(空売り等)等の取引で利益を得ること の NN の初期ウェイトが異なることもある。たとえば、 は一切想定していない。 システム 1 と 2 は同じ構造の NN、フィルタ、売買戦略 信用取引(空売り等)等の現物株以外の取引を行う売 を用いているが、性能が違う。システム 1 とシステム 2 買戦略をどう構築するためにはどのような手法を用い の違いは、NN の初期ウェイトだけである。システム 1 ればよいのかを今後考えていきたい。 と 2 の性能の違いを引き起こしているのは NN の初期 ウェイト以外に考えられなく、NN の初期ウェイトの違 いが、システム性能の安定性を乱していることは明白で ある。 7.2.6 東京証券取引所上場銘柄以外への応用 J30 種採用銘柄はすべて東京証券取引所上場銘柄であ 複数の NN で銘柄の騰落順位を予測し、それら NN る。本提案手法が外国市場等についても有用であるは の多数決で、ある銘柄の騰落順位の予測を決定する手法 可能性があるかは、本研究だけからではわからない。今 で株式売買支援手法システムの性能安定性を高められ 後、外国市場の株価指数採用銘柄、為替市場等において るかの検証を今後行いたい。いくつの NN を予測に用 も本提案手法が使えるかの検証を行いたい。 参考文献 [1] Patrick J. Cusatis, “Restructuring through spinoffs”, Journal of Financial Economics, vol.33, 1993 [2] David N. Dreman, “Contrarian investment strategies”, Simon and Schuster, June, 1998 [3] GFTA 社 http://www.gfta-analytics.com/ [4] Jason E. Kutsurelis, “Forcasting financial markets using neural networks: An analysis of methods and accuracy”, thesis, Naval PostGraduate School, September, 1998 [5] 馬場規夫, “ニューラルネットの新しい学習アルゴリズムと 各種予測問題への適応”, セミナー “ニューラル/ファジィ の新しい展開を探る”, システム制御情報学会, pp.24-42, 1990 [6] 馬場規夫, “ニューラルネットを活用した株式売買支援シ ステムの構築”, MTEC Journal, vol.11, pp.3-41, 1998 [7] 伊庭 斉志, “遺伝的アルゴリズムの方法”, 東京電機大学出 版局, July, 1997 [8] M. A. H. Dempster, “Computational learning techniques for intraday FX trading using popular technical indicators”, IEEE Trans. Neural Networks, vol.12, no.4, pp.744-754, July, 2001 [21] Craig A.Mackinlay, “A non-random walk down walk street”, Princeton Univ. Pr, Jan, 2002 [22] Guillermo Baquero, “Survival, look-ahead bias and the persistence in hedge fund performance”, Erasmus Research Institute of Management , ERS-2002-104-F and A, November, 2002 [23] 栗田多喜夫, “ニューラルネットにおけるモデル選択の試 み”, 信学技報, PRU89-16, June, 1989 [24] Jovia Roman, “Backpropagation and recurrent neural networks in financial analysis of multiple stock market returns”, Proc 29th Annual Hawaii Int. Conf. on System Science, pp.454-, Jan, 1996 [25] N. Baba, “A hybrid algorithm for finding the global minimum of error function of neural networks and its applications”, Neural Networks, Vol.7, pp.1253-1265, 1994 [26] 馬場規夫, “数理計画法を利用した各種知能システム”, 第 2 回 RAMP シンポジウム予稿集, pp.77-87, 1990 [27] T. Kimoto, “Stock market prediction system with modular neural networks”, IEEE Int. Joint Conf. on Neural Networks, Vol.1, pp.1-6, 1990 [9] 佐々木崇, “遺伝的プログラミングを用いた実時系列デー タ予測”, 卒業論文, 東京大学電子情報工学科, 1999 [28] S. Singh, “A long memory pattern modeling and recognition system for financial forecasting”, Pattern Analysis and Application, vol.2, issue3, pp.264-273, 1999 [10] Haiqin Yang, “Support vector machine regression for volatile stock market prediction”, IDEAL 2002, LNCS 2412, pp.391-396, November, 2002 [29] 西川, “ニューラルコンピューティングについて”, システ ム制御情報学会第 32 回大会予稿集, チュートリアルセッ ション, pp.9-16, 1988 [11] H.Akaike, “A new look at the statistical model identification”, IEEE Trans. on Automatic Control, Vol.AC19, No.6, pp.716-723, 1974 [12] 赤池弘次, “情報処理基準 AIC とは何か - その意味と将 来への展望”, 数理科学, No.153, March, 1976 [13] 坂本慶行, 石黒真木夫, 北側源四郎著, “情報量統計学”, 共立出版, 1983 [14] Fama, E. F. , “Efficient capital markets: A review of theory and empirical work”, Journal of Finance, pp.383-417, May, 1970 [15] D. E. Rumelhart, J. L. McClelland, and the PDP Research Group, “Parallel Distributed Processing”, MIT Press, 1986 [16] W. S. McCulloch and W. H. Pitts, “A logical calculus of the ideas immanent in nervous activity”, Bull. Math. Biophys., Vol.5, pp.115-133, 1943 [17] R. A. Jacobs, “Increased rates of convergence through learning rate adaptation”, Neural Networks, Vol.1, No.4, pp.295-307, 1988 [18] A. V. Ooyen and B. Nienhuis, “Improving the convergence of the back-propagation algorithm”, Neural Networks, Vol.5, No.5, pp.465-471, 1992 [19] S. Fahlman, “An empirical study of learning in backpropagation networks”, Tec, Rep Carnegie Mellon University, CMU-CS-88-162, 1988 [20] Arthur, “Asset pricing under endogenous expectations in an artificial stock market”, SFI Studies in the Sciences of Complexity,Vol.27, Addison-Wesley, 1997