アクティビティ・ドリブン・バーは、タイム・バーに関してあなたがおっしゃったすべての問題を解決するわけではありません。例えば
The Subtle Intra-Bar Leakage: However, a more subtle form of data leakage can still occur within the very formation of that time bar. If a significant event transpires midway through a 1-minute bar (e.g., at 09:00:35), any features derived from that bar (such as its high price or a flag for the event) will inevitably incorporate this information by the bar's end.
イコール・ボリューム、イコール・レンジ、その他のティック・ベースのカスタム・バーを構築する場合、そのようなバーにはいずれにせよ単一のラベルを付けることになり、バー全体にわたって高値に関する情報が漏れる(より正確には、ぼやける)ことになります。
これを解決する唯一の方法は、(使用する)特定の機能を念頭に置いて「バー」を構築することです。例えば、高値や安値が主な特徴である場合、正確な時刻が記された終値を持つジグザグの「バー」を試してみるべきです。
実際、一定のタイムフレームを使用し、特にM1に限定するアプローチは、MT5におけるデータ漏洩の文脈では問題があります。M1バーに終了時刻を表示することは、開始時刻を表示することよりもはるかに優れているとは言えません。
MT5でネイティブにカスタムバー(チャート)を構築することに興味がある方には、イコールボリューム、イコールレンジ、およびレンコバーをMQL5で実装した記事が あります。もちろん、オープンソースのコードでは、終了時刻でバーをマークすることができます。
- www.mql5.com
アクティビティ・ドリブン・バーは、タイム・バーに関してあなたがおっしゃったすべての問題を解決するわけではありません。例えば、あなたはこう書いた:
イコール・ボリューム、イコール・レンジ、またはその他のティック・ベースのカスタム・バーを構築する場合、いずれにせよそのようなバーには単一のラベルを付けることになり、バー全体にわたって高値に関する情報が漏れる(より正確には、ぼやける)ことになります。
これを解決する唯一の方法は、(使用する)特定の機能を念頭に置いて「バー」を構築することです。例えば、高値や安値が主な特徴である場合、正確な時刻が記された終値のあるジグザグの「バー」を試してみるべきです。
実際、一定のタイムフレームを使用し、特にM1に限定するアプローチは、MT5におけるデータ漏洩の文脈では問題があります。M1バーに終了時刻を表示することは、開始時刻を表示することよりもはるかに優れているとは言えません。
MT5でネイティブにカスタムバー(チャート)を構築することに興味がある方には、イコールボリューム、イコールレンジ、およびレンコバーをMQL5で実装した記事が あります。もちろん、オープンソースのコードでは、終了時刻でバーをマークすることができます。
アクティビティドリブン棒グラフは、棒グラフに含まれる統計的特性情報を改善することを目的としています。私が提案した「微妙なバー内リーク」の解決策は、バーの終了時刻を使ってバーにラベルを付けることで、バー内で発生したすべてのイベントがタイムスタンプに取り込まれるようにすることです。有用な例は、フーリエ変換のようなタイムスタンプに由来する特徴をモデルのトレーニングに使用する場合です。MetaTrader5 の慣例で、バーが期間の開始でラベル付けされている場合、モデルに誤った情報を与えることになります。この区別は、モデルによってはあまり重要ではないかもしれませんが、市場の循環的な性質を利用することを目的とするモデルには大きな影響を与えます。
。
アクティビティ・ベース・バーは、あなたがタイム・バーについて述べたすべての問題を解決しているわけではありません。例えば、あなたはこう書いた:
同じボリューム、レンジ、または他のティックベースのカスタムバーのバーを作成した場合、いずれにせよ、そのようなバーに単一のラベルを付けることになり、最高価格に関する情報がバー全体に漏れる(より正確には、ぼやける)ことになります。
この問題を解決する唯一の方法は、(使用する)特定の機能を念頭に置いて「バー」を作成することです。 たとえば、高値または安値が主な特徴である場合、時間通りに正確にマークされたエクスターマムを持つ「ジグザグ・バー」を作成するようにします。
一定の時間枠のアプローチ、特にM1への制限は、MT5のデータ漏れの文脈では問題があります。M1バーを終了時刻でマークすることは、開始時刻でマークするよりもはるかに優れているとは言えません。
MT5でネイティブにカスタムバー(チャート)を作成することに興味がある方には、MQL5によるEqual Volume、Equal Range、およびRenkoバーの実装に関する記事が あります。もちろん、オープンソースのコードでは、終了時間をバーにマークすることができます。
同じボリューム、レンジ、またはその他のティックベースのカスタムバーのバーを作成すると、いずれにせよそのようなバーに単一のラベルを付けることになり、最高価格に関する情報がバー全体に漏れる(正確にはぼやける)ことになります。
I don't understand what is unclear. My sentence is a direct reply to your sentence that I quoted in the previous post . No matter how you form the bar, all the properties of the bar are attributed by a single timestamp, and the actual "events" of the properties do not match that time.
Now I understand the meaning of blur. Thank you for your explanation.
非常に興味深い視点ですね。ただ、1つ考えられるトレードオフについて気になっています。
タイムバーには、特定の時間帯における反復的なパターン、市場取引時間、経済指標の発表、あるいは特定の曜日など、カレンダー上の時間に関連する情報が含まれている可能性があります。こうした時間的な影響は、機械学習モデル が実際に学習できるものかもしれません。
ティックバーの場合、観測値に含まれる取引量はより均一になりますが、バー間の経過時間は変動するようになります。そのため、タイムバーからティックバーに移行する際、特定の市場イベントがいつ 発生するかという情報の一部が失われてしまうのではないかと懸念しています。
市場活動をサンプリングするための「活動主導型バー」と、追加の特徴量としてカレンダー上の時間情報を保持すること――この両方の側面を考慮する価値があるのではないでしょうか?
私の見落としがあるかもしれませんので、この点について著者の見解を伺えれば大変興味深いです。
ティックバーの場合、観測値の活動レベルはより均一になりますが、バー間の経過時間は変動するようになります。したがって、タイムバーからティックバーに切り替えた際、特定の市場イベントがいつ 発生するかに関する情報の一部が失われてしまうのではないかと懸念しています。
市場活動を捉えるために活動量主導のバーを採用しつつ、追加の特徴量としてカレンダー上の時間情報を保持するという、両方の側面を考慮することが理にかなっているのではないでしょうか?
もしかしたら私の見落としがあるかもしれませんので、このトピックに関する著者の見解をぜひ伺いたいと思います。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「MetaTrader 5機械学習の設計図(第1回):データリーケージとタイムスタンプの修正」はパブリッシュされました:
データスヌーピングやデータリーケージは一見すると些細に思えるかもしれませんが、その影響は機械学習モデルにとって計り知れず、時には壊滅的です。テスト勉強をしている際に、知らないうちに答えを先に覗き見してしまったと想像してみてください。満点は自分の実力で得られたように感じますが、実際には不正をしているのです。MetaTrader 5のデフォルトのタイムスタンプを機械学習に使うと、まさにこれと同じことが起こります。データリーケージが不意にモデルの整合性を損なってしまうのです。
MetaTrader 5のタイムスタンプが仕掛ける罠

MetaTrader 5は、18:55に始まる5分足(上の2番目のバー)を次のようにラベル付けします。開始時にタイムスタンプを付与することで、MetaTrader 5はこのバーのデータが18:55:00に利用可能であるかのように示しています。しかし実際には、このバーが確定するのは5分後です。 もしモデルの学習にこれを利用してしまうと、それはまるで生徒に試験が始まる5分前に解答を渡してしまうようなものです。これを回避するためには、MetaTrader 5が生成する既成の時間足を使わず、ティックデータから自分でバーを作成してモデルに利用すべきです。
作者: Patrick Murimi Njoroge