相関だけでは足りない。市場の「AがBを動かした」をどう確かめるか

2026年9月14日公開

相場が動くと、「金利が上がったから株が下がった」「ドル高が原因だった」と、すぐに理由が語られます。しかし、同じ値動きに複数の説明を付けることもでき、相関があるだけではどちらが先に動いたのか、その関係が今も続いているのかまでは分かりません。市場で語られる因果仮説を、複数のEvidenceから検証するためにCauseDecodeを開発しています。

なぜ、時系列の関係は見誤りやすいのか

市場でも事業でも、「あとから見れば関係がありそうに見える」時系列は数多くあります。
ある指標が動いたあとに別の指標が動いているように見えると、私たちはつい「先に動いた側が後の変化を説明している」と考えがちです。

しかし、実際にはそう単純ではありません。
同じ日付で並べただけの2系列には、頻度の違い、公開タイミングの違い、変換方法の違いが混ざっています。見えている関係が、分析上の整え方によって生まれたものなのか、もともとデータに含まれていたものなのかを切り分けないまま判断すると、解釈は簡単にぶれてしまいます。

CauseDecodeは、この曖昧さを減らすための道具です。 「何と何を、どう整え、どの順番で確かめるか」を明示しながら、時系列同士の関係を段階的に読み解いていきます。

CauseDecodeが見ようとしているもの

CauseDecodeが扱いたいのは、単なる「相関があるかどうか」だけではありません。知りたいのは、ある系列が別の系列に対していつ、どの向きに、どの程度の関係を持ちやすいのかです。

たとえば、ある市場指標が先に動いて、その数日後に別の市場指標が反応することがあります。
あるいは、同時に動いているように見えても、実際には第三の要因に引っ張られているだけかもしれません。

そのためには、いきなり結論に飛ぶのではなく、まず比較可能な形に系列を整え、そのうえで前後関係を確認し、さらに必要なら因果の方向や頑健性まで掘り下げる必要があります。
CauseDecodeは、この作業を一連の流れとして扱うことを目指しています。

まずは「分析系列」を整える

CauseDecodeで最初に重要になるのが、分析に使う系列をどう定義するかです。同じデータでも、水準で見るのか、変化率で見るのか、リターンで見るのかによって、意味は大きく変わります。

今回の例では、2つの系列を次のように扱っています。

  • Series A: 水準
  • Series B: 日次リターン(対数収益率)

ここで大切なのは、単に2本の線を並べることではありません。どの頻度で観測するのか、どのタイミングで揃えるのか、変換後の系列が何を意味するのかを明確にしておくことで、後段の分析結果の解釈がぶれにくくなります。

分析に用いる2系列。Series Aは水準、Series Bは日次リターン(対数収益率)として扱っている。

図1を見ると、Series Aは中長期の水準変化を持つ一方、Series Bは日々の変動として表れています。
このように系列の性質が異なる場合、同じ時点で単純に比較するだけでは、関係の読み取りを誤りやすくなります。だからこそ、次に「どちらが先に動いているように見えるのか」を、lagをずらしながら確認する必要があります。

前後関係を見るために、Lead-Lag (CCF) を使う

時系列同士の関係を見るとき、同時点の相関だけでは不十分なことがあります。
現実のデータでは、ある系列が動いたあとに、少し遅れて別の系列が反応することがあるからです。

そこで使うのが、Lead-Lag (CCF) です。
lagを前後にずらしながら相関を確認することで、「同時点で関係が強いのか」「どちらかが少し先行しているのか」といった構造を観察しやすくなります。

2系列のLead-Lag (CCF)。lagを前後にずらしながら相関を比較し、どちらが先に動きやすいかの手がかりを確認している。

図2では、lag 0の時点だけでなく、その前後のlagでも相関の形がどう変わるかを確認できます。
この例では、全体として負の相関が見られ、特にlag 0の近傍から正のlag側にかけて、やや深い谷が見られます。少なくとも、単純に「同じ日付で並べたときの関係」だけを見るよりも、前後にずらして見たほうが関係の輪郭をつかみやすいことが分かります。

ただし、ここで注意すべき点もあります。
CCFはあくまで前後にずらしたときの相関の見え方を示すものであり、これだけで因果関係が証明されるわけではありません。どちらが「原因」でどちらが「結果」なのかを、CCFだけで断定することはできません。

相関が見えても、それだけで結論にはならない

時系列分析でよくある誤解のひとつが、「相関が見えた = 予測に使える」「先に動いているように見えた = 原因だ」という短絡です。
しかし実際には、その間にいくつもの確認が必要です。

たとえば、見えている関係が特定の期間だけのものかもしれません。外れ値に引っ張られている可能性もありますし、両方が別の共通要因の影響を受けているだけかもしれません。変換方法を変えると関係が弱まる場合もあります。

CauseDecodeでは、こうした飛躍を避けるために、最初の可視化で終わらせず、必要に応じて次の検証へ進む設計を重視しています。前後関係の確認、条件付きの関係の確認、因果方向の点検、頑健性の確認までを分けて扱うことで、「見えているもの」と「まだ言えないこと」を区別しやすくします。

CauseDecodeが提供したいのは、「もっともらしい説明」ではなく検証の流れ

多くの分析では、最後にもっともらしい解釈だけが残りがちです。しかし、本当に必要なのは、なぜその結論に至ったのかをあとから追えることです。

CauseDecodeが目指しているのは、ブラックボックス的に「答えだけを出す」ことではありません。どの系列を使い、どう変換し、どのように揃え、どの順で検証したのかを追えるようにすることで、分析結果を再点検しやすくすることです。

その意味で、図1のような分析系列の定義も、図2のようなLead-Lag確認も、単なる途中経過ではありません。どちらも、後の解釈を支える土台です。ここが曖昧だと、どれだけ立派な結論に見えても、再現できず、運用にも載せにくくなります。

結論:時系列の関係は、整えて、ずらして、はじめて見えてくる

時系列同士の関係は、同じ日付で重ねただけでは十分に読めません。
どの系列を使うのか、どう変換するのか、どの頻度とタイミングで揃えるのかによって、見える関係は変わります。

今回の図1では、Series Aを水準、Series Bを日次リターン(対数収益率)として定義し、分析の出発点を明確にしました。さらに図2では、Lead-Lag (CCF) を用いて、lagを前後にずらしたときの相関の見え方を確認しました。これにより、同時点の比較だけでは捉えにくい構造があることが分かります。

ただし、ここで見えているのはあくまで関係の手がかりです。相関は因果ではありませんし、先行して見えること自体が、そのまま予測可能性や説明力の保証になるわけでもありません。

だからこそ必要なのは、「関係がありそうだ」で終わらせないことです。CauseDecodeは、時系列の関係を、整え、ずらし、確かめ、必要ならさらに掘り下げるための道具として、その検証プロセス全体を支えることを目指しています。