2026年11月9日 · マイクロストラクチャー

日足の高値は午後7:41に付けられた。そこで取引できただろうか?

日足の高値は午後7:41に付けられた。そこで取引できただろうか?

Alex、株式のエクイティカーブを2本と苦情を送ってくれましたね。20日高値ブレイクアウトはバックテストではきれいに見えます。同じ銘柄で同じコードを動かしているペーパー口座では、エントリーが半分ほどしかなく、バックテストでは何事もなかった日に損切りされています。ペーパー取引ゲートウェイが注文を落としているのでは、と尋ねていました。そうではありません。日足データが2つの取引時間帯をひとまとめにして、それを1日としているのです。

10月22日にあなたが丸を付けた中型株を調べました。データベンダーの日足高値は$41.86。通常取引時間中の高値は$41.12でした。$41.86は東部時間午後7:41に付いた800株の約定で、スプレッドは22セントありました。シグナルは20日高値更新と判定し、翌日の寄り付きで買い注文を出しました。こちらのペーパー取引は、設定を切り替えない限り東部時間9:30から16:00で動くため、そのブレイクアウトを見ていません。買うものはなかったのです。

8/14通常取引時間中には一度も付けていないブレイクアウト
800日足高値を決めた約定の株数
22¢午後7:41の約定時のスプレッド

その行にある高値は、どの高値でしょう?

米国株式の日足は、データベンダーが便宜上まとめたものです。同じ暦日に対して少なくとも3種類の日足が渡されることがあり、CSVを書き出しただけでは、どの種類なのか分からないことがほとんどです。

足の種類時間帯高値・安値の由来その高値で約定していた場合の意味
通常取引時間東部時間9:30-16:00、2つのオークションを含む連続取引の板と寄り・引けのクロス通常取引時間内、オークションでの約定も多い
時間外おおむね4:00-9:30と16:00-20:00、ブローカーによる薄いプレマーケットと時間外の約定現金口座では取引権限がないこともある時間帯
複合ベンダーがつなぎ合わせた内容による上記の混合。奇数ロットやTRFの約定が含まれることもある広い気配値の中で80株だけ約定した可能性もある約定

暗号資産では、UTCの午前0時を取引日の始まりと考えるようになりましたね。株式市場に同じ前提を求めることはできません。ロングオンリーの現金口座から実際にアクセスできるマッチングエンジンは、6時間半の連続取引と2回のクロスです。それ以外は参加者もスプレッドも異なり、最終約定値も違うことがよくあります。

2015年のYahoo CSVを保存したディレクトリが、今も残っています。当時は小型バイオ株で見事なドンチャン・チャネルを見つけたと思っていました。高値は二値イベント後の時間外約定でした。他人の200株の狼狽売買をバックテストして、チャネルと呼んでいたのです。あなたは有料フィードを使って、同じことをもっとまともな形でやっています。

調査エージェントがベンダーに日足OHLCVを依頼して取引時間帯を指定しなかったなら、複合データだと考えてください。エージェントは便利なデフォルトを選びます。その便利さのせいで、午後7:41の約定がブレイクアウトに入り込むのです。

ペーパー取引が両方向にずれて見える理由

ファイル上の取引時間帯と口座上の取引時間帯が食い違うと、単純に取引数が少なくなるだけではありません。3種類のずれが起きます。今回はそのすべてが出ていました。

  1. 時間外高値でのブレイクアウト。バックテストでは翌日の通常取引開始時にエントリーします。ペーパー口座にはシグナル自体がありません。それが見当たらなかった8件のエントリーです。
  2. 前日の安値の下に置いたストップ。その安値は複合足から取られています。バックテストでは時間外のヒゲで既に決済済みです。通常取引時間だけで評価するペーパー口座では、バックテスト上はポジションがない日に保有を続けます。
  3. 逆方向のストップ。ペーパー口座はプレマーケットを含む直近値で評価し、午前5:10の約定で決済されます。通常取引時間の日足にはその約定がないため、バックテストではまだポジションを保有しています。

損切りのずれは、ブレイクアウトの見落としより厄介です。エントリーの見落としは取引数の減少として表れます。7人しかいない部屋で発動したストップは、実際に行った取引の損益まで変えてしまいます。だからゲートウェイのせいだと思ったのでしょう。

時間外取引をしないと言っても、データが時間外取引を含まないことにはなりません。この2つは別の設定です。両方設定してください。

1-minute足では同じ不具合も目立ちにくくなります。America/New_Yorkで取引時間帯を絞り込んでください。ファイルに時間帯タグがなければ、そのフィルターは見せかけです。

ルックバック期間を調整する前に取引時間帯を固定する

同じ銘柄、同じ日付で、通常取引時間の日足を使ってあなたの20日高値を再計算しました。ブレイクアウトは6件残りました。これがペーパー口座の結果です。残りの8件は、午後7:41に800株で約定させる必要があったものでした。取引時間帯の不一致を、ペーパー取引のスリッページ設定を調整して解決しようと、1週間も費やさないでください。

株式の各時系列について、調査契約に3つの真偽値を設定してください。includes_premarket、includes_afterhours、includes_odd_lotsです。そのうえで、戦略が取引できる時間帯を選び、約定モデルもその時間帯に合わせます。本当に時間外取引をしたいなら、そう明記し、午後7:41の市場に合わせたサイズにしてください。スプレッドは広く、注文のキャンセルは遅く、気配値に見えて実際には1ロットしかない板です。

日足の行がどの取引時間帯を使ったのかベンダーが明示できないなら、明示されるまでは複合データとして扱ってください。書面で問い合わせましょう。ウェブのチャートを見ても答えは分かりません。後になって戦略を引けで取引させたいと決めたなら、それは別の話です。公式の終値は、参加する必要のあるオークションで決まります。

取引時間帯を固定して、もう一度実行してください。それから6件について話しましょう。

時間外取引株式バックテスト市場データペーパートレード
← 記事一覧