楽天証券の口座でデイトレの自動売買に挑戦しようと、Windows / Excel 上で動作する マーケットスピード II RSS を利用した Python アプリ (Kabuto) を開発しています。エントリを手動、エグジッドを自動+手動のセミオートでのトレードを始めてみたものの、ルールを守れない自分の性格に呆れ果ててしまいました。そこで、そこそこ自動売買ができるようにして、シミュレータでバックテストを重ねて改良を進めています。
今日のテスト ─ Start Backtesting
ターゲット銘柄と評価条件
| 対象銘柄 |
ソフトバンクグループ (9984) |
| ティック |
2 秒間隔 |
| 注文数量 |
100 株 |
| 制 約 |
ナンピン禁止 |
| モ デ ル |
MA1 - VWAP のクロス・シグナルによる単純売買 |
| パラメータ |
| PERIOD_WARMUP |
150 |
| BAND_VWAP |
DOE |
| PERIOD_MA_1 |
30 |
| PERIOD_RSI |
150 |
| PERIOD_MOM |
300 |
| DD_PROFIT |
DOE |
| DD_RATIO |
DOE |
| LOSSCUT_1 |
-10 |
| N_MINUS_MAX |
300 |
| 備 考 |
午後 1 時以降のエントリを無効化。 |
金曜日 (3/27) の分析結果から見つけた VWAP バンドに関連するバグを修正後、昨日はバックテストをやり直し分析、さらに実験水準を一部変更してバックテストを実施しました。
今日はその分析です。
- doe-005
- BAND_VWAP と DD_PROFIT, DD_RATIO の依存性調査 (Full Factorial Design)
- 実験因子は doe-004 と同じで、水準を一部調整。
実験計画 (doe-005)
| パラメータ |
水 準 |
備 考 |
| BAND_VWAP |
5.0 |
7.5 |
10.0 |
|
単位は 円/株 |
| DD_PROFIT |
10 |
20 |
30 |
40 |
50 |
60 |
70 |
単位は 円/株、含み益が設定値より大きくなったらトレーリング開始 |
| DD_RATIO |
0.4 |
0.5 |
0.6 |
0.7 |
0.8 |
0.9 |
|
(最大含み益ー含み益)÷ 最大含み益 が設定値より大きくなれば利確 |
本日 (2/27) 分で、累積収益が最も良かった条件のチャートを掲載します。
累積収益における本日のベスト条件(パフォーマンスは過去のティックデータの通算)
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
CumSum |
Median |
IQR |
Max |
Min |
profit(2026-03-27) |
| 57 |
7.5 |
30 |
0.7 |
134,900.0 |
3,500.0 |
3,500.0 |
19,900.0 |
-11,000.0 |
10,700.0 |
ベスト条件のレビュー結果: ソフトバンクグループ (
9984)
累積収益トレンド
2 月以降の累積収益のトレンドをプロットしました。色が付いている線は、累積収益トップ 5 の条件です。VWAP バンドの導入で累積収益は増えています。
2/2 以降の累積収益トレンド: ソフトバンクグループ (
9984)
日毎の収益トレンド
2 月以降の 1 日毎の収益のトレンドをプロットしました。色が付いている線は、累積収益トップ 5 の条件です。
2/2 以降の日毎収益トレンド: ソフトバンクグループ (
9984)
累積収益がトップの条件でも、日々の収益でマイナスになるときは他と同様にマイナスになっています。ひとつひとつ原因を調べて対策をする必要があります。
データ分布
過去データ、全条件における日毎の収益の分布を確認しました。正規性の検定をしてもいいのですが、ここでは単に分布形状から、正規分布に従っていないとみなして分析を進めます。
過去データ、全条件における日毎の収益の分布: ソフトバンクグループ (
9984)
パラメータ依存性
日々の収益を実験条件毎に整理して、各実験パラメータ毎に依存性をざっくり調べました。
BAND_VWAP
僅かな差ですが、メジアン値で VWAP バンド (BAND_VWAP) が 7.5 で収益が極大になっています。
BAND_VWAP 依存性: ソフトバンクグループ (
9984)
DD_PROFIT
これも僅かな差ですが、メジアン値で DD_PROFIT が 40 ぐらいで収益が最大になっています。
DD_PROFIT 依存性: ソフトバンクグループ (
9984)
DD_RATIO
DD_RATIO が大きくなるとボックスプロットの IQR(条件によるばらつき幅)が大きくなりますが、メジアン値では 0.7 辺りで収益が最大になっています。
DD_RATIO 依存性: ソフトバンクグループ (
9984)
収益がマイナスの日のレビュー
累計収益がトップの条件でも、収益がマイナスの日は条件に依らずおしなべてマイナスになっています。該当する日のベスト条件のチャートを確認しました。
すぐに有効な対策が思いつきませんが、ピックアップしながら検討します。
2026-02-09
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
profit(2026-02-09) |
| 57 |
7.5 |
30 |
0.7 |
-11,000.0 |
2026-02-12
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
profit(2026-02-12) |
| 57 |
7.5 |
30 |
0.7 |
-4,800.0 |
2026-02-20
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
profit(2026-02-20) |
| 57 |
7.5 |
30 |
0.7 |
-6,000.0 |
2026-02-24
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
profit(2026-02-24) |
| 57 |
7.5 |
30 |
0.7 |
-6,400.0 |
2026-03-13
| |
BAND_VWAP |
DD_PROFIT |
DD_RATIO |
profit(2026-03-13) |
| 57 |
7.5 |
30 |
0.7 |
-10,000.0 |
参考サイト
- マーケットスピード II RSS | 楽天証券のトレーディングツール
- マーケットスピード II RSS 関数マニュアル
- 注文 | マーケットスピード II RSS オンラインヘルプ | 楽天証券のトレーディングツール
- PythonでGUIを設計 | Qtの公式Pythonバインディング
- Python in Excel alternative: Open. Self-hosted. No limits.
- Book - xlwings Documentation