バックナンバーはこちら。
https://www.simulationroom999.com/blog/stock-predict-matlabpython-backnumber/
はじめに
前回は、売却、買付タイミング時のVTI単価特定コードのPython版を作成。
コードの流れはMATLAB版と同一。
ついでに論理インデックス検索のやり方も修正しておいた。
今回は、このコードの実際の動作確認を行う。
登場人物
博識フクロウのフクさん

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
売却、買付タイミング時のVTI単価特定コード(Python版)の実行結果(グラフ)

じゃー、前回作成した、Pythonコードの動作確認だ。

とりあえず、動かすよー。
・・・実行中・・・

まずはグラフ。


そして、一番下のグラフだけを表示。

売却、買付タイミング時のVTI単価特定コード(Python版)の実行結果(VTI単価)

VTI単価は・・・コンソールに出力されてるね。
maxima_index:(array([ 23, 62, 126, 157, 219], dtype=int64),)
minima_index:(array([ 1, 43, 91, 138, 190, 247], dtype=int64),)
VTI maxima value:[28264. 28970. 30668. 30131. 28848.]
VTI minima value:[27501. 28946. 28590. 30505. 27033. 25389.]

パッと見、MATLABと一緒かな?

MATLABのコマンドウィンドウの結果も貼っておこう。
maxima_index: 24 63 127 158 220
minima_index: 2 44 92 139 191 248
VTI maxima value: 28264 28970 30668 30131 28848
VTI minima value: 27501 28946 28590 30505 27033 25389

拾ってくるindexの数値が違うけど、
これはMATLABは1オリジン、Pythonが0オリジンなせいだね。
つまり、全く同じ結果が得られたってことだOKか。

そうだね。
MATLABとPythonで差異は無いだろう。
次の話

うーん、ここまで長かったな・・・。

これで売却、買付タイミング時のVTI単価が分かるんで、
シミュレーションもできる。

シミュレーション時は手数料とか税金も加味するんだよね?

うん。
それ以外もあるが、基本は手作業だ。
10回分の売買で5回分の収益計算を行うだけだからそれほど手間では無いだろう。

(しかし、具体的な金額の話が出てくるとちょっと生々しい感じになるな。)
まとめ

まとめだよ。
- Python版の売却、買付タイミング時のVTI単価特定コードを実行。
- グラフはOK。
- VTI単価出力もOK。
- 極大値、極小値のインデックスがMATLABで実施した時と異なるが、これはオリジンのせい。
- MATLABは1オリジン、Pythonは0オリジン。
バックナンバーはこちら。
コメント