見出し画像

株価をpython【#6】

これで本書を参考にするのは、最後にします。最後は9章を勉強していきます。

9章 売買シミュレーション
9.1 過去の株価データのトレンド
9.2 デイトレード戦略

前提(毎回書く)
教科書:pythonでできる株価データ分析
URL:https://www.morikita.co.jp/books/mid/085711
※アフェリエイトはしていません。本を売る気はありませんが、この本はいい本だと思います。あと、批判的なコメントに思える記述があるかもしれませんが、この本に一切の批判はありません。そういう記述を見かけたら、私の視野の狭さとレベルの低さ故の文章と思ってください。

9章がおもしろそうと思ったのは過去のデータを使って検証する(バックテスト)のをシステマチックにできる技を記載されているところです。
前々回くらいにexcelに落として、自分で結果を書いていたのが、ダサいと思いました。
ということで、backtestingというパッケージを知ろうと思います。


ChatGPT3.5のとのやりとり

「金融取引戦略のバックテストを簡単に行うためのライブラリです。これは、特に株式や仮想通貨などの金融商品に関する取引戦略を評価するために使用されます。」ここしか読んでいませんが、こういうことみたいです。

backtestをするコード
出力される結果
出力されるグラフ

出力された結果などの見方は本書に譲ります。backtestingにはデータを渡して、関数を渡せば、テストをして結果を教えてくれるので利便性が高そうです。では、実際に自分が考えた【#4.7】に記載のアルゴリズムを書いて実行してみます。(あんまりbacktestingを理解していないけど)

backtestingに加工したvolume(マハラノビス距離)を入れたり、close-open差を入れてみた
シミュレーション結果
printの結果

Return[%]で勝っているような感じはしますが、私が【#4.7】で試したことと同じことをしてくれているか確認します。検算なので、使用する株は7203で、取引期間も合わせます。
printの最後の_tradesが気になったので、result._tradesすると、取引情報が出てきました。

result._tradesの出力

実際の私のシミュレーション結果(答え)は↓です。backtestingでは2022-05-11に買い増しをしてくれていないのですが、買い増し以外は想定通りの挙動をしているのでよしとします。backtestingはカスタマイズしてなんとなく使っていけそうです。あとは、マハラノビス距離のthresholdを変更して、複数個の株でお試しして汎用性や、うまくいくorいかない原因を調査すれば、実用性の可否が判断できると思っています。backtestingをすれば、複数個の株でのお試しはスピーディにできると思いますが、あとは、データの取得制限がどうなっているか、、、そこはまだ試していません。。。

当初想定していた取引

これで本書をなぞって勉強していくのは終了します。本書に感謝。著者に感謝。今後は、これを応用していこうと思います。最近はやりの機械学習モデルの作成的なことをしていこうと思います。
なので勉強を独自にするので、次の更新は時間がかかりそうです。
ありがとうございました。

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?