0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

日本株式銘柄セミ自動トレードシステムの開発

Last updated at Posted at 2025-02-09

# 日本株式銘柄セミ自動トレードシステムの開発

概要

東証プライム市場上場銘柄(約1900銘柄)を対象に、銘柄選別、新規買注文/決済売注文、保有銘柄の管理をセミオートメーション化した一連のトレーディングシステムを開発しました。本記事では、

  1. 先行事例の紹介
  2. 開発のモチベーションと想定効果
  3. 設計コンセプト
  4. 実装方法
  5. 5ヶ月間の運用実績

について説明します。

image.png


1. はじめに

自動トレードシステムとは?

株式取引、FX、指数先物、オプション取引では、事前に決めたルールに基づき自動的に取引を行う自動トレードシステムが利用されています。

市販システムには以下のようなものがあります。

市販システムは購入後すぐに利用できますが、仕様の範囲内でしか機能しません。一方、独自開発では自由度が高いものの、開発スキルと時間が必要になります。

私が本システムを開発した理由は、

  • 市場分析、銘柄選別、新規買/決済売発注、保有銘柄管理の工数削減
  • プロスペクト理論による損失回避心理を排除し、損切りの最適化

を目指したためです。

そのため、Pythonとkabuステーション® APIを利用して独自のトレードシステムを構築しました。


2. 設計コンセプト

本システムの設計コンセプトは以下の2点です。

  1. システムの単純化

    • 取引対象は「現物株のみ」(空売りなし)
    • 上昇基調の銘柄のみを対象に選別
    • 新規買/決済売の注文を1日1回に限定
  2. リスク低減投資

    • 東証プライム市場の低リスク銘柄に投資
    • 最大4日間の保有ルールで含み損の拡大を防ぐ
    • 新規買注文は前日に目視確認を行い、誤発注を防ぐ

これにより、単純で安定した運用が可能なシステムを実現しました。


3. 実装方法

本システムの処理の流れは、以下の6つのプロシージャーに分割されます。

  1. procedure1: J-Quants API で銘柄データ取得
  2. procedure2: 翌営業日新規買銘柄の選別(ユーザー確認)
  3. procedure3: 損切り・利確ライン、新規買条件の算出
  4. procedure4: DBに記録
  5. procedure5: kabuステーション® API への発注指示
  6. procedure6: 新規買・決済売注文の実行

実行タイミング

  • 前日夜: 損切ライン設定、注文条件の記録
  • 当日14:50: PC起動(SwitchBot使用)、新規買/決済売注文

また、Windows + Docker(Ubuntu) 環境で動作するよう設計し、

  • kabuステーション® API(Windows)
  • jupyter, Python, MySQL(DockerのUbuntuコンテナ)

を利用して、柔軟な運用を可能にしました。


4. 運用結果

5ヶ月間の運用結果を検証しました。

  • 日経平均騰落率と新規買銘柄の関係

    • 相関係数0.42の正相関 → 日経平均が上昇すると新規買銘柄が増加
  • 運用利益率

    • 日経平均とおおよそ連動
    • ただし、以下の期間に特徴的な動き
      1. 日経平均がレンジ相場(2023/7):本システムは利益を確保(+3.8% → +5.6%)
      2. 日経平均急落(2023/8):影響を受け運用利益率が減少
      3. 日経平均下降トレンド(2023/8後半):新規買銘柄が減少し、損失を抑制

5. まとめ

本システムの利点:

  • 取引の自動化による工数削減(1日15分以内)
  • 損切りをルール化し、心理的要因を排除
  • 運用利益率はプラス達成

ただし、以下の課題があります。

  1. 急激なトレンド転換の影響を受ける

    • 対策: 米国CPI, FOMCなどの経済イベント前にポジションを閉じる
  2. 上昇トレンド時の運用利益率が日経平均を下回る

    • 対策: 日経平均VIXが低いときは、ボラティリティが高い銘柄を選別

今後、バックテストを通じてこれらの対策を検証していきます。


参考文献

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?