楽天証券の口座でデイトレの自動売買に挑戦しようと Windows / Excel 上で利用できる マーケットスピード II RSS を活用して Python であれこれ取り組んでいます。この「自動売買への道」のトピックでは、プログラミングの話題にも踏み込んで、日々の活動をまとめています。
今日の日経平均株価
| 現在値 | 51,939.89 | +822.63 | +1.61% | 15:30 | |
|---|---|---|---|---|---|
| 前日終値 | 51,117.26 | 01/08 | 高値 | 51,986.91 | 14:58 |
| 始値 | 51,367.98 | 09:00 | 安値 | 51,189.14 | 09:00 |
※ 右の 15 分足チャートは Yahoo! Finance のデータを yfinance で取得して作成しました。
【関連ニュース】
- イオン、サンデーにTOB 1株1280円で完全子会社化 | ロイター [2026-01-08]
- 米労働生産性、7-9月は過去2年で最も高い伸び-労働コスト低下 - Bloomberg [2026-01-08]
- 米10月貿易赤字39%減、約16年ぶり低水準 輸入減で | ロイター [2026-01-09]
- 米新規失業保険申請件数は0.8万件増、25年人員削減は過去5年で最多 | ロイター [2026-01-09]
- 米消費者の雇用認識が悪化、1年先インフレ期待は上昇-NY連銀調査 - Bloomberg [2026-01-09]
- 米国株式市場=まちまち、ハイテク株下落 防衛関連は高い | ロイター [2026-01-09]
- 中国CPI、12月は約3年ぶり高い伸び PPIは下落鈍化 | ロイター [2026-01-09]
- 日経平均は3日ぶり反発、ファストリ株高が寄与 日中関係への懸念和らぐ | ロイター [2026-01-09]
デイトレ用自作アプリ
以下は株価・取引に関連する情報の流れを示しています。
楽天証券では、Python からネットワーク越しに直接取引できるような API が提供されていないので、マーケットスピード II RSS を介して取引をする構成を取っています。
リアルタイムの取引シミュレーション (7011)
| パラメータ | 設定値 | |
|---|---|---|
| PERIOD_WARMUP | 180 | sec |
| PERIOD_MA_1 | 60 | sec |
| PERIOD_MA_2 | 600 | sec |
| PERIOD_SLOPE | 5 | sec |
| THRESHOLD_SLOPE | 0.05 | - |
| PERIOD_RR | 30 | - |
| TURBULENCE | 7.5 | - |
| LOSSCUT_1 | -25 | 円 |
メインのパラメータは移動平均線 MA1 と MA2 の周期の組み合わせですが、日に日にパラメータが増えて、新規パラメータの説明も追いついていません。😅
全部のパラメータで実験水準を決めてシミュレーションをしようとすると実験条件数が膨大になってしまうので、まずは MA1 と MA2 の周期の組み合わせを決めることを優先し、他のパラメータは仮決めでしばらくは運用します。
以下は、本日のリアルタイム取引シミュレーション (Simulated Trade) による取引結果です。
本日のリアルタイムの取引シミュレーション (Simulated Trade) の取引明細(100 株単位)
| 注文番号 | 注文日時 | 銘柄コード | 売買 | 約定単価 | 約定数量 | 損益 | 備考 |
|---|---|---|---|---|---|---|---|
| 1 | 2026-01-09 09:24:47 | 7011 | 売建 | 4249.0 | 100 | ||
| 2 | 2026-01-09 09:25:48 | 7011 | 買埋 | 4249.0 | 100 | 0.0 | |
| 3 | 2026-01-09 09:45:41 | 7011 | 買建 | 4258.0 | 100 | ||
| 4 | 2026-01-09 09:46:45 | 7011 | 売埋 | 4249.0 | 100 | -900.0 | |
| 5 | 2026-01-09 10:15:57 | 7011 | 買建 | 4230.0 | 100 | ||
| 6 | 2026-01-09 10:25:49 | 7011 | 売埋 | 4228.0 | 100 | -200.0 | |
| 7 | 2026-01-09 10:25:50 | 7011 | 売建 | 4228.0 | 100 | ||
| 8 | 2026-01-09 10:33:34 | 7011 | 買埋 | 4227.0 | 100 | 100.0 | |
| 9 | 2026-01-09 10:53:35 | 7011 | 買建 | 4213.0 | 100 | ||
| 10 | 2026-01-09 11:07:07 | 7011 | 売埋 | 4223.0 | 100 | 1000.0 | |
| 11 | 2026-01-09 11:13:21 | 7011 | 売建 | 4223.0 | 100 | ||
| 12 | 2026-01-09 11:14:20 | 7011 | 買埋 | 4225.0 | 100 | -200.0 | |
| 13 | 2026-01-09 11:27:33 | 7011 | 買建 | 4232.0 | 100 | ||
| 14 | 2026-01-09 12:31:26 | 7011 | 売埋 | 4231.0 | 100 | -100.0 | |
| 15 | 2026-01-09 12:42:29 | 7011 | 買建 | 4228.0 | 100 | ||
| 16 | 2026-01-09 12:44:13 | 7011 | 売埋 | 4223.0 | 100 | -500.0 | |
| 17 | 2026-01-09 13:06:23 | 7011 | 売建 | 4222.0 | 100 | ||
| 18 | 2026-01-09 13:19:17 | 7011 | 買埋 | 4216.0 | 100 | 600.0 | |
| 19 | 2026-01-09 14:24:08 | 7011 | 買建 | 4256.0 | 100 | ||
| 20 | 2026-01-09 14:32:05 | 7011 | 売埋 | 4254.0 | 100 | -200.0 | |
| 21 | 2026-01-09 14:32:06 | 7011 | 売建 | 4254.0 | 100 | ||
| 22 | 2026-01-09 14:42:13 | 7011 | 買埋 | 4257.0 | 100 | -300.0 | |
| 23 | 2026-01-09 14:42:14 | 7011 | 買建 | 4257.0 | 100 | ||
| 24 | 2026-01-09 14:55:27 | 7011 | 売埋 | 4260.0 | 100 | 300.0 | |
| 25 | 2026-01-09 15:07:31 | 7011 | 売建 | 4264.0 | 100 | ||
| 26 | 2026-01-09 15:09:47 | 7011 | 買埋 | 4267.0 | 100 | -300.0 | |
| 合計損益 | -700.0 | ||||||
オフラインの取引シミュレーション (7011)
本日収集したティックデータによる事後シミュレーションをまとめました。
本日の事後の取引シミュレーションの取引明細(100 株単位)
| 注文番号 | 注文日時 | 銘柄コード | 売買 | 約定単価 | 約定数量 | 損益 | 備考 |
|---|---|---|---|---|---|---|---|
| 1 | 2026-01-09 09:24:47 | 7011 | 売建 | 4249 | 100 | ||
| 2 | 2026-01-09 09:25:48 | 7011 | 買埋 | 4249 | 100 | 0 | |
| 3 | 2026-01-09 09:45:41 | 7011 | 買建 | 4258 | 100 | ||
| 4 | 2026-01-09 09:46:45 | 7011 | 売埋 | 4249 | 100 | -900 | |
| 5 | 2026-01-09 10:15:57 | 7011 | 買建 | 4230 | 100 | ||
| 6 | 2026-01-09 10:25:49 | 7011 | 売埋 | 4228 | 100 | -200 | |
| 7 | 2026-01-09 10:25:50 | 7011 | 売建 | 4228 | 100 | ||
| 8 | 2026-01-09 10:33:34 | 7011 | 買埋 | 4227 | 100 | 100 | |
| 9 | 2026-01-09 10:53:35 | 7011 | 買建 | 4213 | 100 | ||
| 10 | 2026-01-09 11:07:07 | 7011 | 売埋 | 4223 | 100 | 1000 | |
| 11 | 2026-01-09 11:13:21 | 7011 | 売建 | 4223 | 100 | ||
| 12 | 2026-01-09 11:14:20 | 7011 | 買埋 | 4225 | 100 | -200 | |
| 13 | 2026-01-09 11:27:33 | 7011 | 買建 | 4232 | 100 | ||
| 14 | 2026-01-09 12:31:26 | 7011 | 売埋 | 4231 | 100 | -100 | |
| 15 | 2026-01-09 12:42:29 | 7011 | 買建 | 4228 | 100 | ||
| 16 | 2026-01-09 12:44:13 | 7011 | 売埋 | 4223 | 100 | -500 | |
| 17 | 2026-01-09 13:06:23 | 7011 | 売建 | 4222 | 100 | ||
| 18 | 2026-01-09 13:19:17 | 7011 | 買埋 | 4216 | 100 | 600 | |
| 19 | 2026-01-09 14:24:08 | 7011 | 買建 | 4256 | 100 | ||
| 20 | 2026-01-09 14:32:05 | 7011 | 売埋 | 4254 | 100 | -200 | |
| 21 | 2026-01-09 14:32:06 | 7011 | 売建 | 4254 | 100 | ||
| 22 | 2026-01-09 14:42:13 | 7011 | 買埋 | 4257 | 100 | -300 | |
| 23 | 2026-01-09 14:42:14 | 7011 | 買建 | 4257 | 100 | ||
| 24 | 2026-01-09 14:55:27 | 7011 | 売埋 | 4260 | 100 | 300 | |
| 25 | 2026-01-09 15:07:31 | 7011 | 売建 | 4264 | 100 | ||
| 26 | 2026-01-09 15:09:47 | 7011 | 買埋 | 4267 | 100 | -300 | |
| 合計損益 | -700 | ||||||
収集したティックデータによる売買シミュレーションの結果に疑念があったので、ここ数日間、リアルタイムと収集したティックデータによる事後シミュレーションとで、取引明細を較べました。差が認められないようなので、この週末に実験計画 (DOE) を実施しても問題無さそうです。
テクニカル指標の時系列トレンド
環境内で管理している、売買シグナルのソースとなるテクニカル指標と含み損益のトレンドをプロットしました。
縦の赤線は、取引明細の時間から入れたもので、売買をしたタイミングになります。
売買ロジックへのインプット
売買ロジックは Maskable PPO 互換のインターフェイスを持った自作のアルゴリズムを備えた疑似モデルです。
なるべくシンプルなロジックで売買判断できることを目指しているため、現在のところ、[0, 1] あるいは [-1, 0, 1] といった離散的なシグナルをインプットするようにしています。
シグナル名は短縮してしまって意味が判りにくいので、それぞれの機能をまとめました。
- クロスS1
- 移動平均 MA1, MA2 のクロスシグナル。デッドクロス、クロス無し、ゴールデンクロスを -1, 0, 1 としたシグナル。
- クロスS2
- クロスS1の 1 秒遅れのシグナル。反対売買用。
- クロ強
- MA1 の傾き(絶対値)が THRESHOLD_SLOPE より大きい場合に発生するクロス・シグナルの強さを示すシグナル。
- 乱高下
- Rolling Range の値が TURBULENCE より大きい場合は、株価が乱高下しているとみなしてエントリを抑制するシグナル。
- ロス1
- 含み損益が LOSSCUT_1 を下回った時に発生するシグナル。
- 建玉
- ポジション SHORT, NONE, LONG を -1, 0, 1 としたシグナル。
参考サイト
- マーケットスピード II RSS | 楽天証券のトレーディングツール
- マーケットスピード II RSS 関数マニュアル
- 注文 | マーケットスピード II RSS オンラインヘルプ | 楽天証券のトレーディングツール
- Gymnasium Documentation
- Stable-Baselines3 Docs - Reliable Reinforcement Learning Implementations
- Maskable PPO — Stable Baselines3 - documentation
- PyTorch documentation
- PythonでGUIを設計 | Qtの公式Pythonバインディング
- Python in Excel alternative: Open. Self-hosted. No limits.
- Book - xlwings Documentation






0 件のコメント:
コメントを投稿