日本株の自動売買ツール開発を続けています。
前回は、正式なPaper Tradingを始める前に、
- システムが何をしたのか記録する
- 問題があれば先へ進まない
- 確認できない場合も「問題なし」と扱わない
- 仮想口座の状態に矛盾がないか確認する
といった安全確認の仕組みを追加しました。
→ 株の自動売買はいつPaper Tradingを始めていい?安全確認の仕組みを作ってみた
テストでは問題なく動くところまで確認できたので、次はいよいよ実際の日足データを使った確認です。
ところが、実データにつないでみると、すぐに2つの問題が見つかりました。
1つ目は、過去の取引日を確認するためのカレンダー不足。
2つ目は、取引時間中のまだ完成していない日足を使ってしまう問題です。
今回は、この2つの問題がどう見つかり、どう修正したのかをまとめます。
テストが通っても、実際の株価で動くとは限らない
ここまでの開発では、
株価データを読み込む
↓
売買候補を判断する
↓
人間が確認する
↓
仮想注文を出す
↓
市場データから約定したか判定する
↓
仮想口座へ反映する
という流れを少しずつ作ってきました。
さらに前回、安全確認の仕組みも追加しています。
ただし、テストで用意したデータを使って正常に動くことと、
実際の株価データを使って正常に動くこと
は別です。
そこで今回は、実際の日足データを取得し、自動売買ツールの分析へ渡せるか確認することにしました。
東京エレクトロンの実際の日足データで確認
今回の確認では、東京エレクトロン(8035)の日足データを使いました。
取得したのは243本です。
ここで確認したいのは、
「この株を買えば利益が出るか」
ではありません。
目的は、
「売買判断に使ってよい日足だけを、正しくシステムへ渡せるか」
を確認することです。
実際に動かしてみると、最初の問題が見つかりました。

1回目の失敗|取引カレンダーが足りなかった
取得した243本の日足には、2025年までさかのぼったデータが含まれていました。
ところが、システム側で確認できる日本株の取引日は2026年分しか用意していませんでした。
これでは2025年の日足について、
「本当に日本株の取引日だったのか」
をシステム側で確認できません。
株価データそのものは取得できています。
しかし、安全に使えることを確認できないため、ここで処理を止めました。
今回あらためて分かったのは、
「株価データを取得できた」=「そのまま使ってよい」ではない
ということです。
過去の取引日も確認できるように修正
そこで、2025年についても日本株の取引日を確認できるように修正しました。
これによって、取得した過去の日足が、
実際の取引日に対応したデータなのか
を確認できるようになりました。
これで問題は解決したと思い、もう一度実際の日足データを使って動かしてみます。
しかし、今度は別の問題で止まりました。
2回目の失敗|今日の日足がまだ完成していなかった
この確認を行ったのは、
2026年9月30日の午前9時27分ごろ
でした。
日本株はまだ取引時間中です。
ところが、取得したデータには9月30日の日足も含まれていました。
一見すると、
「最新の日足まで取得できている」
ので問題なさそうに見えます。
しかし、9時27分時点ではその日の日足はまだ完成していません。
始値はすでに決まっていますが、
- 高値
- 安値
- 終値
- 出来高
などは、その後の取引によって変化します。
この途中経過のデータを、
「9月30日の完成した日足」
として売買判断に使ってしまうのは問題です。
そのため、ここでも処理を止めました。
「データがある」と「日足が完成している」は別

今回の検証で特に重要だったのが、この違いです。
取引時間中でも、その日の株価データ自体は取得できます。
しかし、
データが存在することと、その日の日足が完成していることは同じではありません。
例えば9時27分に取得した日足と、15時30分に取引が終了したあとの日足では、高値・安値・終値・出来高が変わっている可能性があります。
日足を使って、
- RSI
- MACD
- 移動平均線
- 出来高
- 売買スコア
などを計算しているため、途中の日足を使えば売買判断そのものが変わる可能性もあります。
そこで、
完成した日足だけを売買判断に使う
という条件を明確にする必要がありました。
完成した日足だけを使うように修正
次に、現在時刻と日本株の取引日を確認し、
その日の株価がまだ確定していない場合は、当日の日足を分析に使わない
仕組みを追加しました。
考え方はシンプルです。
日足データを取得
↓
その日足はすでに完成している?
↓
完成している → 分析に使用
まだ完成していない → 分析から除外
これによって、取引時間中に当日の日足データが取得できても、そのまま売買判断へ渡さないようにしました。
日足を使うシステムなので、
最新のデータを使うことより、完成したデータだけを使うこと
を優先します。
引け後の実際の日足でもう一度確認
修正後、今度は市場が終了したあとの実データで確認しました。
確認したのは、
2026年10月2日 21時36分ごろ
です。
東京エレクトロンの日足を取得して確認した結果、
- 取得した日足:243本
- データ上の最新日:10月2日
- 売買判断に使える最新の完成日足:10月2日
- 未完成として除外された日足:0本
となりました。
データの確認も問題なく通り、そのまま分析まで正常に進めることができました。
最初は取引カレンダー不足で止まり、
修正すると今度は未完成の日足で止まり、
さらに修正したことで、
実際の完成した日足データを安全に分析へ渡せる
ところまで確認できました。
エラーで止まったのは、むしろ安全機能が働いた結果
今回、実際の日足データを接続して2回処理が止まりました。
普通に考えると、
「またエラーが出た」
という失敗に見えます。
しかし、自動売買ツールとして考えると少し違います。
1回目は、
過去の取引日を確認できないデータをそのまま使わなかった。
2回目は、
まだ完成していない当日の日足をそのまま使わなかった。
つまり、どちらも確認できないデータを無理に使わず、処理を止めています。
前回の記事で作った、
「確認できないものを、問題なしとして先へ進めない」
という考え方が、実際の株価データでも機能した形です。
自動売買では、エラーを一切出さないことよりも、
「危ない状態なら正しく止まること」
も重要だと感じました。
実際の日足を分析できても、まだPaper Tradingではない
ここまでで、
実際の日足データを取得し、完成したデータだけを分析へ渡す
ところまで確認できました。
ただし、これで正式なPaper Tradingを開始したわけではありません。
今回確認したのは、あくまで
「売買判断に使う日足データを安全に用意できるか」
という部分です。
実際の市場データを使って、
分析
↓
人間による確認
↓
仮想注文
↓
市場データによる約定判定
↓
仮想口座への反映
↓
安全確認
という一連の流れを継続して動かすところまでは、まだ進んでいません。
そのため、正式なPaper Trading開始前という位置づけは変わりません。
まとめ
今回は、日本株の自動売買ツールに実際の日足データを接続しました。
ところが、すぐに、
取引カレンダーが足りない
という問題が発生。
修正後には、
取引時間中のまだ完成していない日足を取得してしまう
という別の問題も見つかりました。
そこで、
「株価データが存在するか」ではなく、「売買判断に使ってよい完成した日足か」を確認する
仕組みを追加しました。
修正後、2026年10月2日の引け後に東京エレクトロンの実データで確認したところ、243本の日足を取得し、最新の完成日足まで正常に分析できました。
今回の開発で分かったのは、
実際の株価データを取得できるだけでは、自動売買には足りない
ということです。
どのデータを売買判断に使ってよいのかまで確認する必要があります。
そして今回も、
「確認できないなら、無理に先へ進まない」
という安全側の仕組みによって、間違ったデータを使う前に処理を止めることができました。
まだ正式なPaper Tradingは開始していません。
次は、実際の市場データを仮想売買の一連の流れへつなぎ、Paper Trading開始へ向けた確認を進めていきます。


コメント