2026-03-23

今日のバックテスト (2026-03-23)

楽天証券の口座でデイトレの自動売買に挑戦しようと、Windows / Excel 上で動作する マーケットスピード II RSS を利用した Python アプリ (Kabuto) を開発しています。エントリを手動、エグジッドを自動+手動のセミオートでのトレードを始めてみたものの、ルールを守れない自分の性格に呆れ果ててしまいました。そこで、そこそこ自動売買ができるようにして、シミュレータでバックテストを重ねて改良を進めています。

今日の日経平均株価

現在値 51,515.49 -1.857.04 -3.48% 15:45
前日終値 53,372.53 03/19 高値 52,479.81 09:00
始値 52,468.72 09:00 安値 50,688.76 10.01

※ 右の 15 分足チャートは Yahoo! Finance のデータを yfinance で取得して作成しました。

【関連ニュース】

デイトレ用自作アプリ

以下は株価・取引に関連する情報の流れを示しています。

株価データ・取引の流れ(Windows 11)

楽天証券では、Python からネットワーク越しに直接取引できるような API が提供されていないので、マーケットスピード II RSS を介して Python アプリから取引をする構成を取っています。

取引アプリの概要を以下にまとめました。

今日のテスト ─ Start Backtesting

ターゲット銘柄と評価条件
対象銘柄 ソフトバンクグループ (9984)
ティック 2 秒間隔
注文数量 100 株
制  約 ナンピン禁止
モ デ ル MA1 - VWAP のクロス・シグナルによる単純売買
パラメータ
PERIOD_WARMUP 150
BAND_VWAP 3
PERIOD_MA_1 30
PERIOD_RSI 150
PERIOD_MOM 150
DD_PROFIT DOE
DD_RATIO DOE
LOSSCUT_1 -10
N_MINUS_MAX 300

週末の三連休でバックテスト環境の整備を終わらせたいと意気込んでいたのですが、考えが甘かったです。

以前、短周期・長周期の移動平均 MA1 と MA2 の組み合わせ探索のために DOE(実験計画)を組んだ時に何が大変だったかを振り返って、あちこちコードを直しているうちに月曜日になってしまいました。

主に取り組んだことは以下の通りです。

CLI 専用エージェント
  • リアルタイム取引用の Kabuto では、サブスレッドのエージェントが GUI と環境クラスの間に入って Qt のシグナル・スロットによるスレッド間通信をしてます。
  • バックテスト用 Kayaba では、データサーバの AlmaLinux 上において cron による定期運用を考慮したいので、コンソール上で動作する専用エージェントを開発中。
  • 環境クラスとモデルはリアルタイム環境と同じものを利用。
モデルのプラグイン化
  • 異なる売買ロジックを評価できるように、動的にモデルをロードして利用する仕組みを導入しました。
  • 現在は必要としない機能ですが、あとで大変にならないようにリアルタイムとバックテスト用の2つのエージェントを用意したタイミングでで仕組みだけ導入しました。
Momentum(モメンタム)の追加
  • RSI と Momentum はチャートにプロットしているだけで、エントリ・エグジッドの判定に利用できていません。
  • 今後、有効に利用できなければ、他のテクニカルデータに置き換える可能性アリ。
パラメータの追加(予約)
  • 評価しようと考えているパラメータ BAND_VWAP をあらかじめ追加。ただし、現時点では使用していません。

複数銘柄のティック・データを収集するために Kabuto を動かしているので、大引け後のスクリーンショットを掲載しました。

大引け後のアプリの株価トレンド画面: ソフトバンクグループ (9984)

今日のティックデータ解析

今日のところは、本日取得したティック・データを DOE 条件でバック・テストをして、最も収益が高かった条件のレビュー・チャートを掲載しました。

本日のベスト条件: ソフトバンクグループ (9984)

今日のベスト条件が明日のベスト条件にはならない可能性が高いです。今日は集計をする時間がありませんでしたが、明日はヒストリカル・データの解析結果を掲載する予定です。

ちなみに、下記の DOE 条件でバックテストをしました。

本日の DOE テスト: ソフトバンクグループ (9984)
  date run DD_PROFIT DD_RATIO trade total
0 2026-03-23 00:00:00 0 10 0.10 12 4,400.00
1 2026-03-23 00:00:00 1 10 0.20 12 3,900.00
2 2026-03-23 00:00:00 2 10 0.30 12 6,100.00
3 2026-03-23 00:00:00 3 10 0.40 12 5,500.00
4 2026-03-23 00:00:00 4 10 0.50 12 4,400.00
5 2026-03-23 00:00:00 5 10 0.60 12 4,000.00
6 2026-03-23 00:00:00 6 10 0.70 12 2,300.00
7 2026-03-23 00:00:00 7 10 0.80 12 10,000.00
8 2026-03-23 00:00:00 8 10 0.90 10 300.00
9 2026-03-23 00:00:00 9 20 0.10 12 -1,400.00
10 2026-03-23 00:00:00 10 20 0.20 12 -2,100.00
11 2026-03-23 00:00:00 11 20 0.30 12 200.00
12 2026-03-23 00:00:00 12 20 0.40 12 -400.00
13 2026-03-23 00:00:00 13 20 0.50 12 -1,300.00
14 2026-03-23 00:00:00 14 20 0.60 12 -1,600.00
15 2026-03-23 00:00:00 15 20 0.70 12 -2,300.00
16 2026-03-23 00:00:00 16 20 0.80 12 5,400.00
17 2026-03-23 00:00:00 17 20 0.90 10 -4,100.00
18 2026-03-23 00:00:00 18 30 0.10 12 1,000.00
19 2026-03-23 00:00:00 19 30 0.20 12 1,600.00
20 2026-03-23 00:00:00 20 30 0.30 12 1,100.00
21 2026-03-23 00:00:00 21 30 0.40 12 200.00
22 2026-03-23 00:00:00 22 30 0.50 12 -700.00
23 2026-03-23 00:00:00 23 30 0.60 12 -1,600.00
24 2026-03-23 00:00:00 24 30 0.70 12 -2,300.00
25 2026-03-23 00:00:00 25 30 0.80 12 5,400.00
26 2026-03-23 00:00:00 26 30 0.90 10 -4,100.00
27 2026-03-23 00:00:00 27 40 0.10 12 2,100.00
28 2026-03-23 00:00:00 28 40 0.20 12 2,400.00
29 2026-03-23 00:00:00 29 40 0.30 12 1,300.00
30 2026-03-23 00:00:00 30 40 0.40 12 700.00
31 2026-03-23 00:00:00 31 40 0.50 12 -700.00
32 2026-03-23 00:00:00 32 40 0.60 12 -1,600.00
33 2026-03-23 00:00:00 33 40 0.70 12 -2,300.00
34 2026-03-23 00:00:00 34 40 0.80 12 5,400.00
35 2026-03-23 00:00:00 35 40 0.90 10 -4,100.00
36 2026-03-23 00:00:00 36 50 0.10 12 4,300.00
37 2026-03-23 00:00:00 37 50 0.20 12 3,400.00
38 2026-03-23 00:00:00 38 50 0.30 12 2,400.00
39 2026-03-23 00:00:00 39 50 0.40 12 1,400.00
40 2026-03-23 00:00:00 40 50 0.50 12 -700.00
41 2026-03-23 00:00:00 41 50 0.60 12 -1,600.00
42 2026-03-23 00:00:00 42 50 0.70 12 -2,300.00
43 2026-03-23 00:00:00 43 50 0.80 12 5,400.00
44 2026-03-23 00:00:00 44 50 0.90 10 -4,100.00
45 2026-03-23 00:00:00 45 60 0.10 10 -4,100.00
46 2026-03-23 00:00:00 46 60 0.20 10 -4,100.00
47 2026-03-23 00:00:00 47 60 0.30 10 -4,100.00
48 2026-03-23 00:00:00 48 60 0.40 10 -4,100.00
49 2026-03-23 00:00:00 49 60 0.50 10 -4,100.00
50 2026-03-23 00:00:00 50 60 0.60 10 -4,100.00
51 2026-03-23 00:00:00 51 60 0.70 10 -4,100.00
52 2026-03-23 00:00:00 52 60 0.80 10 -4,100.00
53 2026-03-23 00:00:00 53 60 0.90 10 -4,100.00
54 2026-03-23 00:00:00 54 70 0.10 10 -4,100.00
55 2026-03-23 00:00:00 55 70 0.20 10 -4,100.00
56 2026-03-23 00:00:00 56 70 0.30 10 -4,100.00
57 2026-03-23 00:00:00 57 70 0.40 10 -4,100.00
58 2026-03-23 00:00:00 58 70 0.50 10 -4,100.00
59 2026-03-23 00:00:00 59 70 0.60 10 -4,100.00
60 2026-03-23 00:00:00 60 70 0.70 10 -4,100.00
61 2026-03-23 00:00:00 61 70 0.80 10 -4,100.00
62 2026-03-23 00:00:00 62 70 0.90 10 -4,100.00

対象銘柄の日足チャート

ティックデータを収集している銘柄については、日足チャートと高値安値の差分のトレンドをモニターしています。そのうち、本日のバックテスト対象銘柄の日足チャートをまとめています。

ソフトバンクグループ (9984)

※ 上の日足チャートは Yahoo! Finance のデータを yfinance で取得して作成しました。

参考サイト

  1. マーケットスピード II RSS | 楽天証券のトレーディングツール
  2. マーケットスピード II RSS 関数マニュアル
  3. 注文 | マーケットスピード II RSS オンラインヘルプ | 楽天証券のトレーディングツール
  4. PythonでGUIを設計 | Qtの公式Pythonバインディング
  5. Python in Excel alternative: Open. Self-hosted. No limits.
  6. Book - xlwings Documentation
にほんブログ村 株ブログ 株日記へ
PVアクセスランキング にほんブログ村