2025-02-26

自動売買への道 (2025-02-26)

(楽天証券の口座で取引する前提で)デイトレ自動売買を実現するには、Windows / Excel 上で マーケットスピード II RSS(以下、単に RSS と呼びます)を利用することがまずは確実な方法だと考え、Windows / Excel / VBA を使って自動売買のためのマクロを作ってリアルタイムの取引シミュレーションを始めています。

自動売買システムの開発状況は、参考サイト [2] にまとめてあります。

今日の Dry Run (2025-02-26)

評価用の銘柄は、「三菱UFJフィナンシャルG (8306)」に固定しています。この銘柄を評価用に選んだ理由は、出来高が多く(= 板が厚く)、試験運用を始めるときに使えそうな価格帯の株価と判断しているからです。

ティックデータと Parabolic SAR

RSS から取得したティックデータと1分足の OHLC データから Excel VBA のマクロが算出した Parabolic SAR(以降 PSAR と呼びます)を、事後に Python の自作シミュレータ・アプリで読み込んでプロットしたものです。

下のプロット(縦軸ラベルが Profit/Loss)は、PSAR のシグナルに従ってトレンド変換したところから、ドテン売買した場合の含み損益のトレンドを示しています。

売買履歴(シミュレーション)

売買単位は 100 株で、ナンピンなど一切無しに、この 100 株だけで建玉を売買するという想定です。

VBA マクロが書き込んだ Excel 上の売買履歴のシートを Python で読み込んで HTML のテーブルに変換しました。

注文番号 時刻 売買 金額 損益 最大益 最大損 備考
1 09:08:02 売建 194,700 建玉, period = 1
1 09:08:08 買埋 194,700 -250 50 -250 損切1, period = 1
2 09:36:01 売建 193,000 建玉, period = 5
2 09:37:01 買埋 193,000 -100 0 -200 損切2, period = 6
3 09:51:01 売建 192,050 建玉, period = 1
3 09:53:52 買埋 192,050 -250 50 -250 損切1, period = 3
4 10:01:01 買建 192,500 建玉, period = 3
4 10:04:16 売埋 192,500 -250 350 -250 損切1, period = 6
5 10:07:01 売建 191,850 建玉, period = 1
5 10:19:35 買埋 191,850 150 600 0 利確1, period = 13
6 10:21:01 買建 191,800 建玉, period = 1
6 10:28:47 売埋 191,800 -250 200 -250 損切1, period = 8
7 10:32:01 売建 191,400 建玉, period = 3
7 10:33:12 買埋 191,400 -250 0 -250 損切1, period = 4
8 10:56:01 売建 190,950 建玉, period = 5
8 11:11:01 買埋 190,950 -50 150 -100 返済, period = 19
9 11:12:01 買建 191,150 建玉, period = 1
9 11:24:01 売埋 191,150 0 250 -100 返済, period = 12
10 11:26:01 売建 191,000 建玉, period = 2
10 11:29:26 買埋 191,000 -300 100 -300 損切1, period = 5
11 12:32:01 買建 191,950 建玉, period = 1
11 12:35:07 売埋 191,950 -250 150 -250 損切1, period = 4
12 13:03:01 買建 191,500 建玉, period = 1
12 13:07:29 売埋 191,500 -250 0 -250 損切1, period = 5
13 13:40:00 買建 191,200 建玉, period = 1
13 13:53:00 売埋 191,200 -50 300 -50 返済, period = 13
14 13:56:00 売建 191,100 建玉, period = 3
14 14:01:05 買埋 191,100 -250 50 -250 損切1, period = 8
15 14:24:00 買建 191,650 建玉, period = 1
15 14:24:50 売埋 191,650 -250 0 -250 損切1, period = 1
16 14:37:00 買建 191,700 建玉, period = 2
16 14:46:00 売埋 191,700 -100 250 -100 返済, period = 10
17 14:54:00 買建 191,850 建玉, period = 1
17 14:59:00 売埋 191,850 -150 0 -200 損切2, period = 6
--- --- --- 実現損益 -2,850 --- --- ---

今日も全然ダメでした。損益は -2,850 円のマイナスになってしまいました。

今日の 8306 の株価は、高値 1,955.0 円、安値 1,908.0 円で 47.0 円差でした。暫定で決めた良し悪しの尺度を算出しました。

本日の Dry Run の成績

実現損益 -2,850 ÷ (47.0 × 100 ) × 100 = -60.6 %

今回は、「損切1」のしきい値が小さすぎて、前場で含み益が出る前に損切りしていましたので損切りレベルを大きくし、あと、今日の後場のように無駄にエントリーしてしまわないように更にエントリー条件を厳しくします。これを明日試します。

損切ファクタ(損切1)
含み益が出る前に損切りしているのでしきい値を拡大。
5 → 7
呼び値(この銘柄は 0.5 円)の 7 倍分の含み損(= -350 円)になったら、1 秒間隔の精度で即損切り。
平常時のエントリ条件のうち、IQR の呼び値ファクタ
エントリ条件を更に厳しくした。
2 → 4
過去 2 分間の ティックデータの IQR が、呼び値の 4 倍以上(かつ、トレンド方向に変化)であればエントリする。

今日のログに対して、VBA アプリのシミュレーションで上記条件を試したところ、全注文セット数が 17 → 5 に激減、実現損益もプラス(+450 円)になりました。シミュレーションではタイミングが微妙に異なるためリアルタイムの Dry Run とけっして同一の実現損益にはならないのですが、効果を検証できます。

現時点では利益を最大化するよりも、無駄なエントリで損失を重ねないようにすることを優先します。

参考サイト

  1. マーケットスピード II RSS | 楽天証券のトレーディングツール
  2. 私の株日記: 自動売買への道 (2025-02-21)
にほんブログ村 株ブログ 株日記へ
PVアクセスランキング にほんブログ村

0 件のコメント:

コメントを投稿