turtlechanのブログ

無知の私がLinuxをいじりながら書いていくブログ

ランダムウォークについてちょっと調べた

今回はランダムウォークについて調べたので、自分が理解・整理するためにメモがてら記事にします。

はじめに

ランダムウォークについて調べた経緯

株価データをネットから持ってくるのが面倒なので、株価の推移を自分でシミュレーション(でっち上げ)しようと思った。そのためには株価の動き方を知らないといけません。でも、それが分かったら株取引成立しない(負けない)。と訳が分からなくなったので調べた。
どうやら株価の推移はファンダメンタルズ的な見方を抜きにすると、ランダムウォークに極めて近いらしい。

そう、ランダムウォーク。言葉としては知っているが、私はランダムウォークの事を知らない。

という訳で今回勉強しようかなと。

ランダムウォーク

ここからはランダムウォークについて調べたものを私なりにまとめたものです。

ランダムウォークとは

次に現れる位置が確率的に無作為(ランダム)に決定される運動。
(ウィキペディア から引用)

要するに、酔っ払ったおっさんの千鳥足のようなイメージですね。

ランダム

ランダムウォークを知る前に、ただの「ランダム」を知っておく必要がある。
説明する必要すらないが、ランダムは 規則性のないこと。

ランダムを数式的に表現すると以下。

[X_n]_{ n = 0 }^{ infinity } = [x_0, x_1, x_2, ..., x_{ infinity  - 1 }, x_infinity]

とすると

X_i = x_i

(単純)ランダムウォーク

上記の「ランダム」は規則性がない数字が突然出てくるイメージだが、ランダムウォークは以前出たランダムな数字に次のランダムな数字を加えて行く感じ。また、スタート地点(最初)が 0 とは限らないので 定数a を加えてる。
例えば ランダムウォークS2 の場合 a + x0 + x1 となる。

数式で表すと以下。

S_{ 0 } = a, S_{ n } = a + sum from{ i = 0 } to{ n - 1 } X_{ i }

X(ランダム) のインデックスを 0 から始めてしまったので、他のサイトと Σ の範囲が違います。ごめんなさい。

また、ランダムXn の値が {+1, -1} の二択、{+8, -8} の二択など(同じ数字で + か - の二択で確率は不問)の場合は単純ランダムウォークという。
数式で表すと以下。

P( X_n = d )=p, P( X_n = -d ) = q = 1 - p

再度文字で表すと、
Xn が +d(プラス) の確率を p
Xn が -d(マイナス) の確率を q としたとき、q = 1 - p であれば単純ランダムウォーク

ざっくりと説明しましたが以上がランダムウォークと言うものでした。なんとなくイメージ湧きましたかね。

ブラウン運動

ランダムウォークを調べると必ずといって良いほど目にする「ブラウン運動」。何それ?ってなるので、もうちょっと頑張ってみます。

ブラウン運動とは

液体のような溶媒中に浮遊する微粒子が、不規則(ランダム)に運動する現象である。
(ウィキペディア から引用)

ランダムウォークじゃないの?

ブラウン運動の説明を見るとランダムウォークじゃんってなりませんか?私はなります。
似たようなものだから検索して出てくるんでしょうが、厳密に言うと違うようです。

ブラウン運動は物理学で、粒子が不規則に運動する現象の名前で、
ランダムウォークは特に指定なく不規則(でたらめ)に運動すること。

ブラウン運動が狭義で、ランダムウォークが広義って感じ。また、ブラウン運動はx軸が時間、ランダムウォークはx軸が歩数。グラフにすると線(ブラウン運動)か、点(ランダムウォーク)とかイメージしておけば良さそう。

ランダムウォークのx軸(歩数)をめちゃくちゃ小さくすれば、ブラウン運動に近似するよね。
例えば 1歩 で 北に 1m 進んでたとするとグラフ上の x=1, y=1000 に点が一つプロットされる。この 1歩 を 100等分 するとグラフ上の x=0.01, y=10 に点 x=0.02, y=20 に点... x=1.00, y=1000 に点のように 1歩 で 100個の点が打たれるので点→線に近づく感じ。

調べたところ、以上のような違いがあるようでした。

株価のことで言えば、x軸が時間なのでランダムウォークというよりはブラウン運動に近いのかな?

おまけ

株価をシュミレーションする分にはランダムウォークなのかブラウン運動なのか意識する必要はなさそうでした。

《ランダム・ウォークとブラウン運動》
Aritalab:Lecture/NetworkBiology/Diffusion - Metabolomics.JP
上記のページの数式でランダムウォークからブラウン運動を再現しているみたいですが、面倒くさい(理解できない)。「回数が増えれば正規分布になるっしょ」としか思えない。皆は理解できるんでしょうか。私には生産管理のシックスシグマとの違いすら分かりません。

それはさておき、パソコンで発生させる疑似乱数(ランダム)は(正規)分布に従って算出されるので、それを順に加えていけばブラウン運動もどきの出来上がりじゃないですか。

おわりに

間違い等ございましたら指摘していただけると嬉しいです。

何かの参考になれば幸いです。