Prediction in the darkの2回目、今回はアルゴリズムの組み立てを追っていく。前回同様デイトレードで例えて考えてみる。
・次の日の値が“上がる”のか“下がる”のかを予測したい
モデル化するには事象を分かりやすく数値で表す必要がある。ここではt日目に値が前日より“上がる”場合をy(t)=0、t日目に値が前日より“下がる”場合をy(t)=1とする。この場合、未来を予測するということはt日目にt+1日目を予測するということであり、すなわちy(t+1)=?を得るということである。
・複数のトレーダーの予測を元にする
M人のトレーダーがいて、それぞれが独自に次の日の値を予測する場合を考える。トレーダーi人目のt日目の予測をp(i, t)とする。p(i, t)は0(=上がる)または1(=下がる)のどちらかである。
・全トレーダーに重み(信頼度)を設定する
トレーダーi人目に対するt日目の信頼度をm(i, t)とする。信頼度の初期値は1とする。つまり、m(i, 1)は全てのiにおいて1である。
・予測が外れたトレーダーの重みは下げる
トレーダーiのt+1日目の予測が実際のt+1日目の結果と違っていたらトレーダーiの重みを下げる。つまり、p(i, t+1)\ne y(t+1)ならば、m(i, t+1)=\beta \cdot m(i, t)とする。ここで\betaは重み下げの係数で0<\beta <1の値をとる。
・最終的な予測は、重み付きの多数決で決定する
“上がる”と予測したトレーダーの重みの合計と、“下がる”と予測したトレーダーの重みの合計を比較し、大きい方を採用する。
これがアルゴリズムの全てです。極めてシンプルですがその威力は驚異的です。次回はこの予測確率を解析的に求め、本当に最優秀トレーダー誤答率の2倍以内の予測が可能なのかを確かめます。
0 件のコメント:
コメントを投稿