株のシステムトレードをしよう - 1から始める株自動取引システムの作り方

株式をコンピュータに売買させる仕組みを少しずつ作っていきます。できあがってから公開ではなく、書いたら途中でも記事として即掲載して、後から固定ページにして体裁を整える方式で進めていきます。

固定ページ未反映

アイデアメモ - CSVに調整後終値を付与(自然言語を倍数表記に換算)

## 今回の内容 今回は、「●株→●株」のような表記になっている `併合比率` カラムについて、「●倍」のように倍数表記に変更することで、プログラムから扱いやすいようにする。 ## 前回の振り返り 前回は、調整後終値を計算するためにHTMLを解析してCSVを作成…

アイデアメモ - CSVに調整後終値を付与(株式併合、株式分割を加味)

前回の内容 今回の内容 調整後終値とは 株式併合・株式分割とは 戦略・アイデアメモ まずは、HTML を DataFrame に変換するところまで heigou.py 出力 前回の内容 前回は、 KABU+ を契約してCSVを取得するところまでやった。 how-to-make-stock-trading-syst…

サービス・技術調査 - #2 KABU+ by ZEROBYTE社

## 前回の記事 前回は、KABU+ の紹介をし、KABU+が採用するデータ配布手段である WebDAV について調べた。 ## 今回の内容 実際に KABU+ を契約し、いろいろ試したことで、契約前と後での気づきをまとめる。

サービス・技術調査 - WebDAV

2020-11-29更新 API制限を受けずにデータを取得するには、WebDAVを使うだけではなく、共有フォルダ一括同期ツールの使用が必要である事が明記されていた。つまり、本記事に従ってWebDAVでアクセスしても、規約を満たさない過剰アクセスとなる可能性がある。…

Jupyter Notebookの導入 ◆ Backtrader 最初の戦略その7

前回の振り返り 今回の内容 解説 Dockerfile docker-compose.yml Pipfile 実行 Jupyter 前回の振り返り 前回はグラフに単純移動平均のグラフを追加した。 how-to-make-stock-trading-system.dogwood008.com how-to-make-stock-trading-system.dogwood008.com…

グラフに単純移動平均 (SMA) を追加する ◆ Backtrader 最初の戦略その6

前回の振り返り 今回の内容 単純移動平均 (Simple Moving Average; SMA)とは? main.py を変更 前回の振り返り 前回は、バックテストの結果をグラフとして出力した。 how-to-make-stock-trading-system.dogwood008.com how-to-make-stock-trading-system.dog…

バックテストの結果を出力する(変更内容PRの紹介) ◆ Backtrader 最初の戦略その5.1

概要 下記の記事で修正した内容を、GitHubのPRにまとめたので、参考にしてほしい。 how-to-make-stock-trading-system.dogwood008.com GitHubのPR github.com サンプル 実際にこのPRに沿ってグラフを出力すると、下記のようなものになる。 how-to-make-stock…

バックテスト中に手仕舞いする(変更内容PRの紹介) ◆ Backtrader 最初の戦略その4.2

概要 下記の2記事で修正した内容を、GitHubのPRにまとめたので、参考にしてほしい。 how-to-make-stock-trading-system.dogwood008.com how-to-make-stock-trading-system.dogwood008.com GitHubのPR github.com

バックテストの結果を出力する ◆ Backtrader 最初の戦略その5

前回の振り返り 今回の内容 main.py の変更 Photo by Lorenzo from Pexels 前回の振り返り 前回は手仕舞いするためのコードを紹介した。 how-to-make-stock-trading-system.dogwood008.com 今回の内容 今回は、一連のバックテストの結果をグラフとして出力す…

バックテスト中に手仕舞いする ◆ Backtrader 最初の戦略その4.1

前回の振り返りと今回の内容 main.py の修正 next() の修正内容 Photo by Chris Ried on Unsplash 前回の振り返りと今回の内容 この記事は、下記記事の続きの記事である。手仕舞い戦略の部分の説明を追加する。 how-to-make-stock-trading-system.dogwood008…

backtrader-plotting: Backtraderのグラフを綺麗に描画してくれるライブラリ

Backtrader の標準の機能で出力できるグラフは、2種類ある。PNGの静止画として出力するか、Jupyter等で対話的に出力することでインタラクティブなグラフとして出力するかである。 しかし、後者の場合、ファイルとして保存することがやや難しい。 backtrader-…

バックテスト中に手仕舞いする ◆ Backtrader 最初の戦略その4.0

前回の振り返り 前回は、株式を買うことで建玉を作った。 how-to-make-stock-trading-system.dogwood008.com 今回の内容 建玉を手仕舞い(売る)ことで、含み益または含み損を確定させる。また、どのようなタイミングで売買しているかをグラフにプロットする…

委託保証金維持率

委託保証金維持率とは、信用取引で借りているお金のうち、保証金でどれだけの割合を維持しないといけないかを示したパーセンテージである。 これを下回ると、追加で証拠金が必要になり、この状態を追証という。 Photo by Karolina Grabowska from Pexels 保…

代用有価証券

代用有価証券とは、委託保証金として現金の代わりに差し入れる証拠金相当の有価証券である。 Photo by Karolina Grabowska from Pexels 例えば、1000万円分の現物株を持っていて、ある一定の割合で現金同等として扱ってもらうことができる。この一定の割合を…

呼値、呼値単位

呼値、呼び値(よびね)とは、株式を売買できる価格の最小単位である。 例えば、現在4000円の株があったとする。この株が TOPIX 100 の構成銘柄なら、最も近い値段では 3999円, 4001円 で注文を出すことができる。一方で、そうでないなら、 3995円, 4005円 …

バックテスト中に買い建玉を作成する ◆ Backtrader 最初の戦略その3

前回の振り返り 今回の内容 変更差分 Photo by Jason Leung on Unsplash 前回の振り返り 前回は、ログレベルに応じたログ出力をできるように改造した。 how-to-make-stock-trading-system.dogwood008.com 今回の内容 今回は、簡単なロジックに基づいて、バッ…

logger と handler を使用して、ログレベルに応じたログ出力 ◆ Backtrader 最初の戦略その2

前回の振り返り 今回の内容 バックテストの実行 Photo by Arget on Unsplash 前回の振り返り 前回は基礎的な戦略 TestStrategy を作成した。 how-to-make-stock-trading-system.dogwood008.com 今回の内容 今回は昨日作成した戦略を使用した、バックテストを…

backtrader 最初の戦略その1

前回の振り返り 今回の内容 Photo by Pixabay from Pexels 前回の振り返り 前回はヒストリカルデータ(過去データ)を読み込めるようにした。 how-to-make-stock-trading-system.dogwood008.com 今回の内容 最初の取引戦略1を実装していく。 www.backtrader.…

backtrader クイックスタートその2

前回の振り返り 今回の変更差分 サンプルの取得とビルド エラーの修正と再実行 Photo by Adam Nowakowski on Unsplash 前回の振り返り 前回の記事では、初歩の初歩からはじめた。今回はもう少し発展的なサンプルに挑戦する。 how-to-make-stock-trading-syst…

Docker Composeの利用

本日の差分 Docker Compose とは Makefile との違い docker-compose.yml の作成とビルド、実行 Docker 本日の差分 いつものように、GitHub上に差分PRを作っておくので、参考にしてほしい。 github.com Docker Compose とは 下記の過去の記事で docker のイメ…

昨日分の差分をGitHubにも反映

昨日は backtrader 利用の最初の一歩を試した。 how-to-make-stock-trading-system.dogwood008.com GitHubの専用のリポジトリに、今回の変更内容ををコメント付きで作ったので参考にしてほしい。 github.com 本日分はシンプルにこれでおしまい。

backtrader の最初の一歩

## 昨日の振り返りと今日やること 昨日は Dockerfile 内で `pipenv sync` を呼ぶ事で、固定したバージョンで backtrader をインストールした。今日は backtrader の最初のサンプルを実行する。

Pipenv を使って backtrader をインストールする:イメージのビルドの段階でインストール編

これまでの振り返り 今日の完成形 昨日作ったファイル Dockerfile の修正 イメージのビルド 動作確認 これまでの振り返り 昨日はコンテナの中でインストールしたが、今度はその操作を Dockerfile に書き込むことで、自動化する。 how-to-make-stock-trading-…

Pipenv を使って backtrader をインストールする:コンテナの中でインストール編

使用する Python のバージョンを固定する Pipenv で backtrader をインストールする 昨日は Pipenv のインストールまで行った。今回は Pipenv を使って backtrader をインストールする。 how-to-make-stock-trading-system.dogwood008.com 使用する Python …

Pipenvのインストール:Pipenvによるパッケージのバージョン固定

リポジトリの紹介 Pipenvの紹介 便利スクリプトの作成 Dockerfile を修正する Dockerfile を使った、イメージのビルド Windows の人向け Pipenv リポジトリの紹介 今回の作業内容について、下記のリポジトリで差分を見ることができる。 github.com Pipenvの…

Dockerfileの作成:バックテスト環境の構築

開発環境と本番環境をできるだけ近い状態にするため、またプログラムの作成時期によって結果が変わることをできるだけ減らすため、 Docker を用いてコンテナで開発を進めることにする。

売買単位、単元株 ver.2

how-to-make-stock-trading-system.dogwood008.com この記事は上記の書き直し記事である。 売買単位とは、売買の最低単位である。単元株とは特に株式の売買の最低単位を指す。この数を下回ると、基本的1には売買できない。日本の株式は今まで1000株単位や100…

バックテスト環境の構築の前に、OSSにおけるライセンスの話、GPLv3の解釈の難しさ

あるフレームワークを導入しようとしたら、 GPLv3 がライセンスとして採用されていた。自分のやろうとしていることが公開義務に引っかかるのか、そもそも派生的著作物とは何か、集めた情報を元に解釈し、方針としてどうするかを限られた時間(2時間)の中で…

Headless Recorder を使って、セレクタ+αを取得する - Puppeteer で使用するセレクタを手軽に取得する方法 - 02

Photo by Digital Buggu from Pexels これまで Puppeteer や Selenium で使用できるセレクタを取得する方法の続編である。昨日は、 DevTools を使用した方法を紹介した。 how-to-make-stock-trading-system.dogwood008.com 本日は、Chrome の拡張機能である …

Puppeteer で使用するセレクタを手軽に取得する方法 - 01

how-to-make-stock-trading-system.dogwood008.com 上記の昨日の記事に引き続き、セレクタの話である。ここからは Google Chrome での話で進めるが、現行版であれば他のブラウザでも概ね似たようなことができる。 まず、macの人は、 Cmd ⌘ + Shift + C 、Win…

(C) 2020 dogwood008 禁無断転載 不許複製 Reprinting, reproducing are prohibited.