2026-05-12

自動売買への道 (2026-05-12)

楽天証券の口座でデイトレの自動売買に挑戦しようと、Windows / Excel 上で動作する マーケットスピード II RSS を利用した Python アプリ (Kabuto) を開発しています。

今日の日経平均株価

現在値 62,742.57 +324.69 +0.52% 15:45
前日終値 62,417.88 05/11 高値 63,218.51 09:58
始値 62,618.72 09:00 安値 62,158.43 10:41

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

【関連ニュース】

パラメータのスクリーニング

自動売買に向けた自動売買のアルゴリズムについて、主要なパラメータについて水準振りをしてスクリーニングをしようと、先週金曜日の大引け後、慌てて実験表を用意して、過去のティックデータに対して長い長い売買シミュレーションを実施しました。

実験パラメータと水準

実験の目的

  • 過去の有効なティックデータ全てに対して、実験パラメータを水準を振って売買シミュレーションを実施し、有意な水準依存のあるパラメータが存在するかどうかを確認する。

背景

  • 過去データに対して実験計画を組んで各条件で売買シミュレーションをすると、パラメータの水準間でばらつきがあって差があるように見えても、データ数が増えると、水準毎の平均値では差が見えなくなってしまう。
  • 部分的な条件振りで感じていたことを、網羅的に条件を振っても同じであることを確認したい。

実験表

昨日のブログ記事に書いたように、条件表の凡ミスが発覚しました(下表の赤字部分)が、仕方がないので、このまま解析します。

パラメータ 水  準 説  明
MAX_TRADE 200 約定数上限(仮)(今回は未使用)
PERIOD_WARMUP 300 インジケータのウォームアップ期間(今回は未使用)
PERIOD_MA_1 30 60 90 短周期移動平均線の期間(VWAP 線とのクロスシグナル)
PERIOD_MA_2 300 長周期移動平均線の期間(今回は未使用)
PERIOD_RSI 300 RSIの期間(今回は未使用)
PERIOD_MOM 300 モメンタムの期間(今回は未使用)
N_MINUS_MAX 300 600 900 連続含み損の最大カウント数
N_POSITION_MIN 150 300 450 建玉を保持する最小カウント数
LOSSCUT_1 -10 -25 -30 -50 単純ロスカット
DD_RATIO_MAX 0.25 0.50 0.75 ドローダウン利確の最大比率
DD_THRESHOLD 10 30 50 ドローダウン利確を始める閾値

データスコープ

データスコープ ティックデータ数
2026-02-02 - 2026-05-08 63 日分

日毎の収益で集計

各実験パラメータについて、水準毎にその日の収益 (PnL) をプロットした結果を示しました。点は各条件の収益、線は各水準毎の平均を結んでいます。

結論

  • 定義しているパラメータでは、今回の実験水準では水準毎の平均値では水準間に明確な差がでない。→ 最適な水準の組み合わせはないのか?

総収益で集計

各パラメータに対して、通算収益 (Total PnL) を確認しました。

結論

日毎の収益の集計とは異なり、総収益では目に見える平均値での水準差を、特定のパラメータで確認できます。

総収益 Top 9 の条件

総収益のトップ 9 の条件をまとめました。

ランキング 1 2 3 4 5 6 7 8 9
PERIOD_MA_1 30 30 30 30 30 30 30 30 30
N_MINUS_MAX 900 900 900 600 300 600 600 300 900
N_POSITION_MIN 450 300 150 450 300 300 150 150 300
LOSSCUT_1 -50 -50 -50 -50 -25 -50 -50 -25 -25
DD_RATIO_MAX 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75
DD_THRESHOLD 10 10 10 10 10 10 10 10 10
総収益 / 株 1,283 1,222 1,221 1,176 1,116 1,115 1,114 1,103 1,094

当面の POR

同じパラメーター設定で、ずっと自動売買システムを運用できるとは考えていませんが、当面、下記の条件をターゲット銘柄 (9984) の出発点 POR, Process of Record にしてチューニングを続ける予定です。

当面の POR 条件
パラメータ 水  準 説  明
MAX_TRADE 200 約定数上限(仮)(未使用)
PERIOD_WARMUP 300 インジケータのウォームアップ期間
PERIOD_MA_1 30 短周期移動平均線の期間(VWAP 線とのクロスシグナル)
PERIOD_MA_2 300 長周期移動平均線の期間(未使用)
PERIOD_RSI 300 RSIの期間(未使用)
PERIOD_MOM 300 モメンタムの期間(未使用)
N_MINUS_MAX 900 連続含み損の最大カウント数
N_POSITION_MIN 300 建玉を保持する最小カウント数
LOSSCUT_1 -50 単純ロスカット
DD_RATIO_MAX 0.75 ドローダウン利確の最大比率
DD_THRESHOLD 10 ドローダウン利確を始める閾値

昨日 (2026-05-11) のシミュレーション結果

昨日のティックデータの POR 条件での売買シミュレーション結果を示しました。

ソフトバンクグループ (9984) の昨日のシミュレーション結果

本日のシミュレーション結果

こちらは、今日のティックデータでシミュレーションした結果です。POR を決めたばかりですが、損切り・利確の改善余地があります。

ソフトバンクグループ (9984) の本日のシミュレーション結果

参考サイト

  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アクセスランキング にほんブログ村