T_NAKAの阿房ブログ

アクセスカウンタ

zoom RSS 23. Stock Market Simulation の復習(1)

<<   作成日時 : 2016/05/25 00:01   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

次に「株式市場シュミレーション」を考えることになるんですが、まず、株のクラスを見ていきます。

画像


各メソッドを見ていきます。

__init__(self, price, distribution) メソッド

 self 以外の引数は、price と distribution ですが、
   price・・・寄付き、つまり「初期値」を入れます
   distribution・・・これは後述しますが、今回のシュミレーションでは「正規分布」と「一様分布」の式を与えます。
 このメソッドで、株価とその履歴を初期化して、確率分布を与えます。
 lastChange とは、ここでは前回の終値と今回のそれの差を意味しており、増加傾向か減少傾向かを判断するためのパラメータですが、その値もゼロにリセットします。

setPrice(self, price) メソッド

 self 以外の引数は、price ですが、シュミレートした株価を入れると、現在株価がセットされ、履歴にも追加されます。

getPrice(self) メソッド

 現在株価が返ってきます。

makeMove(self, mktBias, mo) メソッド

 具体的に株価を動かすメソットで、self 以外の引数は、mkBias と mo です。
   mkBias・・・「市場バイアス」の意味で floot で与えられます。市場バイアスが無いと考えられる場合は 0.0 を与えます。  
  mo ・・・ モーメンタムが有効と考えられる場合は"True"、考えなくて良い場合は"False"を与えます。


 このメソッドはキーとなるものなので、もう少し詳しく説明したいと思います。
 "if self.price == 0.0: return" としているのは、株価がゼロになれば取引停止となるので、それ以上変化させないための措置です。
 (講義では、「この位置でこの判断をするのは本当は正しくない」とのことですが、良く分かっていなので、このままにしておきます。)
 "oldPrice = self.price" はこのメソッドの終わりで、self.lastChange を更新しておくために、現在株価を oldPrice に代入しておきます。
 "baseMove = self.distribution() + mktBias" 与えられた分布と市場バイアスで「株価変動率」を計算しています。
 "self.price = self.price * (1.0 + baseMove)" 導出された株価変動率から、現在株価を更新しています。
 "if mo:
    self.price = self.price + random.gauss(.5,.5)*self.lastChange
" モーメンタム有効と考えられる場合、つまり mo が True なら、モーメンタムの値に、平均 0.5 標準偏差 0.5 の正規分布乱数を掛けて、さらに現在株価を更新しています。 mo が False ならスルーです。
 "if self.price < 0.01:
    self.price = 0.0
" このシュミレーションでの株価の貨幣単位はドルを使っています。したがって、1セント(=0.01ドル)が最小単位なので、それ以下はゼロとしてしまうという考え方だと理解しました。
 "self.history.append(self.price)" 更新した株価を履歴に追加します。
 "self.lastChange = self.price - oldPrice" 次回のモーメンタム処理のために、lastChange を更新しておきます。

showHistory(self, figNum) メソッド

 figNum・・・図の番号を引数として、株価(終値)の変化を描くものです(詳細の説明は省きます)。


これで、株のクラスの説明は終わりで、これを使う関数を後記事で説明したいと思います。
今日はこの辺で。。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
23. Stock Market Simulation の復習(1) T_NAKAの阿房ブログ/BIGLOBEウェブリブログ
文字サイズ:       閉じる