穴馬探しの指標検討（タイム差編）

# はじめに
これは過去に投稿した[「人気急落馬は穴馬」説を検証してみた](https://qiita.com/lefirea/items/7d85fcbeac73f9190fcf)の続きみたいな記事。
短期的な勝ちを狙うためには穴馬探しが重要となる。
そのための指標として、過去走の着順とタイム差の関係が使えるか検討する。






# そもそもタイム差使えるの？
分かりやすいレースとして[2025阪神牝馬S](https://race.netkeiba.com/race/result.html?race_id=202509020511&rf=race_list)を見てみよう。
結果は、1着が9番人気サフィラ、3着が8番人気ラヴァンダという大荒れレースとなっている。
この2頭の過去走を見てみると、
- サフィラ
    - 秋華賞4着+0.5秒
    - ローズS 7着+0.6秒
    - オークス11着+1.1秒
- ラヴァンダ
    - ローズS 11着+1.1秒
    - オークス13着+1.3秒

という感じで、負けていてもかなり喰らいつけていることが分かる。
一見弱そうに見えても、実は周りが化け物だったから負けただけで、実力はちゃんとある可能性が伺える。

ということで、着順に対するタイム差の基準値を調べ、穴馬候補を選ぶときの指標を求めることを目的とし、調査を行う。






# 全レースを対象とした分析
まずはグレードや芝/ダート、距離などを一切区別せず、全レースの基準値を求めてみる。
基準値としては、各着順におけるタイム差の平均値や中央値を採用する。

以下は、2015年～2023年の中央競馬のレース約2.7万件を対象として分析を行った結果である。
主に平地レースを想定しており、5秒より長い遅れは外れ値とみなして除外して集計した。
余談だが、平地でも普通に10秒以上遅れてゴールする馬がそこそこ居て驚いた。
地方を含めると70秒以上遅れた馬も確認できた。

| 着順 | 平均値 | 中央値 |
| ---: | ----: | ----: |
| 1 | 0.00 | 0.0 |
| 2 | 0.25 | 0.2 |
| 3 | 0.47 | 0.4 |
| 4 | 0.66 | 0.5 |
| 5 | 0.83 | 0.7 |
| 6 | 1.00 | 0.8 |
| 7 | 1.17 | 1.0 |
| 8 | 1.34 | 1.1 |
| 9 | 1.49 | 1.3 |
| 10 | 1.63 | 1.4 |
| 11 | 1.77 | 1.6 |
| 12 | 1.92 | 1.7 |
| 13 | 2.05 | 1.9 |
| 14 | 2.23 | 2.1 |
| 15 | 2.42 | 2.3 |
| 16 | 2.62 | 2.5 |
| 17 | 2.25 | 2.1 |
| 18 | 2.53 | 2.4 |

これと、上記2025阪神牝馬Sの結果を見比べると、2頭とも平均値/中央値の両方以下のタイム差であるため、かなり喰らいつけていることが分かる。

また、タイム差のばらつきを見ると、以下のグラフになる。

![all-time-diff_box.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/382806/e976ab13-bf7f-479e-a3f5-5c88a1d08691.png)


このグラフより、以下のことが分かる
- 良い着順ほど、悪い方向にばらつきが大きくなる
    - 1着馬が化け物だった可能性
    - （1頭だけさっさとゴールして、残りは置いてけぼりな状況）
- 悪い着順ほど、良い方向にも広がる
    - 実力の割に健闘
    - 集団に飲まれつつ/阻まれつつも喰らいつけている






# レースグレードごとに分析
レースグレードによって出馬する面々の強さは変わってくる。
基本的に身の丈にあったレースに出場するものだと思うが、G3以上では記念受験（と言うと失礼だが）のような出場に見える馬も居る。
加えて、上位のグレードほどレース数自体が少ないため、データに偏りが生まれる。
上記の結果はグレードの低い＝（相対的に）遅い馬のデータが多いため、例えばG1などの上位グレードでの結果に対する信頼性は低い。`(G1馬に相応しくない強さだったとしても、上記を参考にすると強く見える可能性がある)`

そこで、グレードごとに分けて分析を行う。
本分析におけるグレード区分は以下に従う。
- G1, G2, G3
- L(リステッド)
- 特別競走
- 一般競走








## G1～G3の集計結果

<table>
    <tr class="header-row">
        <th></th>
        <th colspan="2" class="pattern-header">G1</th>
        <th colspan="2" class="pattern-header">G2</th>
        <th colspan="2" class="pattern-header">G3</th>
    </tr>
    <tr class="sub-header">
        <td>着順</td>
        <td>平均値</td>
        <td>中央値</td>
        <td>平均値</td>
        <td>中央値</td>
        <td>平均値</td>
        <td>中央値</td>
    </tr>
    <tr>
        <td class="number-cell">1</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
    </tr>
    <tr>
        <td class="number-cell">2</td>
        <td class="number-cell">0.17</td>
        <td class="number-cell">0.1</td>
        <td class="number-cell">0.19</td>
        <td class="number-cell">0.1</td>
        <td class="number-cell">0.18</td>
        <td class="number-cell">0.1</td>
    </tr>
    <tr>
        <td class="number-cell">3</td>
        <td class="number-cell">0.34</td>
        <td class="number-cell">0.2</td>
        <td class="number-cell">0.35</td>
        <td class="number-cell">0.3</td>
        <td class="number-cell">0.34</td>
        <td class="number-cell">0.3</td>
    </tr>
    <tr>
        <td class="number-cell">4</td>
        <td class="number-cell">0.52</td>
        <td class="number-cell">0.4</td>
        <td class="number-cell">0.51</td>
        <td class="number-cell">0.4</td>
        <td class="number-cell">0.48</td>
        <td class="number-cell">0.4</td>
    </tr>
    <tr>
        <td class="number-cell">5</td>
        <td class="number-cell">0.63</td>
        <td class="number-cell">0.5</td>
        <td class="number-cell">0.63</td>
        <td class="number-cell">0.5</td>
        <td class="number-cell">0.61</td>
        <td class="number-cell">0.5</td>
    </tr>
    <tr>
        <td class="number-cell">6</td>
        <td class="number-cell">0.75</td>
        <td class="number-cell">0.6</td>
        <td class="number-cell">0.75</td>
        <td class="number-cell">0.6</td>
        <td class="number-cell">0.72</td>
        <td class="number-cell">0.6</td>
    </tr>
    <tr>
        <td class="number-cell">7</td>
        <td class="number-cell">0.87</td>
        <td class="number-cell">0.7</td>
        <td class="number-cell">0.89</td>
        <td class="number-cell">0.7</td>
        <td class="number-cell">0.83</td>
        <td class="number-cell">0.7</td>
    </tr>
    <tr>
        <td class="number-cell">8</td>
        <td class="number-cell">0.92</td>
        <td class="number-cell">0.8</td>
        <td class="number-cell">0.97</td>
        <td class="number-cell">0.8</td>
        <td class="number-cell">0.96</td>
        <td class="number-cell">0.8</td>
    </tr>
    <tr>
        <td class="number-cell">9</td>
        <td class="number-cell">1.08</td>
        <td class="number-cell">1.0</td>
        <td class="number-cell">1.19</td>
        <td class="number-cell">1.0</td>
        <td class="number-cell">1.02</td>
        <td class="number-cell">0.9</td>
    </tr>
    <tr>
        <td class="number-cell">10</td>
        <td class="number-cell">1.22</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.27</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.16</td>
        <td class="number-cell">1.0</td>
    </tr>
    <tr>
        <td class="number-cell">11</td>
        <td class="number-cell">1.26</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.38</td>
        <td class="number-cell">1.2</td>
        <td class="number-cell">1.26</td>
        <td class="number-cell">1.1</td>
    </tr>
    <tr>
        <td class="number-cell">12</td>
        <td class="number-cell">1.49</td>
        <td class="number-cell">1.3</td>
        <td class="number-cell">1.45</td>
        <td class="number-cell">1.3</td>
        <td class="number-cell">1.38</td>
        <td class="number-cell">1.2</td>
    </tr>
    <tr>
        <td class="number-cell">13</td>
        <td class="number-cell">1.49</td>
        <td class="number-cell">1.3</td>
        <td class="number-cell">1.57</td>
        <td class="number-cell">1.4</td>
        <td class="number-cell">1.52</td>
        <td class="number-cell">1.3</td>
    </tr>
    <tr>
        <td class="number-cell">14</td>
        <td class="number-cell">1.71</td>
        <td class="number-cell">1.6</td>
        <td class="number-cell">1.73</td>
        <td class="number-cell">1.5</td>
        <td class="number-cell">1.72</td>
        <td class="number-cell">1.5</td>
    </tr>
    <tr>
        <td class="number-cell">15</td>
        <td class="number-cell">1.99</td>
        <td class="number-cell">1.8</td>
        <td class="number-cell">1.84</td>
        <td class="number-cell">1.7</td>
        <td class="number-cell">1.89</td>
        <td class="number-cell">1.7</td>
    </tr>
    <tr>
        <td class="number-cell">16</td>
        <td class="number-cell">2.20</td>
        <td class="number-cell">2.0</td>
        <td class="number-cell">2.03</td>
        <td class="number-cell">1.9</td>
        <td class="number-cell">2.13</td>
        <td class="number-cell">1.9</td>
    </tr>
    <tr>
        <td class="number-cell">17</td>
        <td class="number-cell">2.36</td>
        <td class="number-cell">2.1</td>
        <td class="number-cell">2.04</td>
        <td class="number-cell">1.9</td>
        <td class="number-cell">1.97</td>
        <td class="number-cell">1.8</td>
    </tr>
    <tr>
        <td class="number-cell">18</td>
        <td class="number-cell">2.66</td>
        <td class="number-cell">2.6</td>
        <td class="number-cell">2.54</td>
        <td class="number-cell">2.3</td>
        <td class="number-cell">2.13</td>
        <td class="number-cell">2.0</td>
    </tr>
</table>

サフィラ、ラヴァンダの結果を見ると、以下のようになる。
- サフィラ
    - 秋華賞 `G1` 4着+0.5秒 → 平均値以下、中央値より上
    - ローズS `G2` 7着+0.6秒 → 平均値/中央値ともに以下
    - オークス `G1` 11着+1.1秒 → 平均値/中央値ともに以下
- ラヴァンダ
    - ローズS `G2` 11着+1.1秒 → 平均値/中央値ともに以下
    - オークス `G1` 13着+1.3秒 → 平均値/中央値ともに以下

よって、この2頭は十分に勝てる可能性があったことが分かる。










## G3未満の結果
<table>
    <tr class="header-row">
        <th></th>
        <th colspan="2" class="pattern-header">Ｌ(リステッド)</th>
        <th colspan="2" class="pattern-header">特別競走</th>
        <th colspan="2" class="pattern-header">一般競走</th>
    </tr>
    <tr class="sub-header">
        <td>着順</td>
        <td>平均値</td>
        <td>中央値</td>
        <td>平均値</td>
        <td>中央値</td>
        <td>平均値</td>
        <td>中央値</td>
    </tr>
    <tr>
        <td class="number-cell">1</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
        <td class="number-cell">0.00</td>
        <td class="number-cell">0.0</td>
    </tr>
    <tr>
        <td class="number-cell">2</td>
        <td class="number-cell">0.18</td>
        <td class="number-cell">0.1</td>
        <td class="number-cell">0.20</td>
        <td class="number-cell">0.1</td>
        <td class="number-cell">0.27</td>
        <td class="number-cell">0.2</td>
    </tr>
    <tr>
        <td class="number-cell">3</td>
        <td class="number-cell">0.36</td>
        <td class="number-cell">0.3</td>
        <td class="number-cell">0.37</td>
        <td class="number-cell">0.3</td>
        <td class="number-cell">0.51</td>
        <td class="number-cell">0.4</td>
    </tr>
    <tr>
        <td class="number-cell">4</td>
        <td class="number-cell">0.45</td>
        <td class="number-cell">0.4</td>
        <td class="number-cell">0.52</td>
        <td class="number-cell">0.4</td>
        <td class="number-cell">0.71</td>
        <td class="number-cell">0.6</td>
    </tr>
    <tr>
        <td class="number-cell">5</td>
        <td class="number-cell">0.59</td>
        <td class="number-cell">0.5</td>
        <td class="number-cell">0.65</td>
        <td class="number-cell">0.5</td>
        <td class="number-cell">0.91</td>
        <td class="number-cell">0.8</td>
    </tr>
    <tr>
        <td class="number-cell">6</td>
        <td class="number-cell">0.71</td>
        <td class="number-cell">0.6</td>
        <td class="number-cell">0.79</td>
        <td class="number-cell">0.7</td>
        <td class="number-cell">1.09</td>
        <td class="number-cell">0.9</td>
    </tr>
    <tr>
        <td class="number-cell">7</td>
        <td class="number-cell">0.86</td>
        <td class="number-cell">0.7</td>
        <td class="number-cell">0.94</td>
        <td class="number-cell">0.8</td>
        <td class="number-cell">1.27</td>
        <td class="number-cell">1.1</td>
    </tr>
    <tr>
        <td class="number-cell">8</td>
        <td class="number-cell">0.98</td>
        <td class="number-cell">0.8</td>
        <td class="number-cell">1.07</td>
        <td class="number-cell">0.9</td>
        <td class="number-cell">1.45</td>
        <td class="number-cell">1.3</td>
    </tr>
    <tr>
        <td class="number-cell">9</td>
        <td class="number-cell">1.09</td>
        <td class="number-cell">0.9</td>
        <td class="number-cell">1.20</td>
        <td class="number-cell">1.0</td>
        <td class="number-cell">1.62</td>
        <td class="number-cell">1.4</td>
    </tr>
    <tr>
        <td class="number-cell">10</td>
        <td class="number-cell">1.24</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.33</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.77</td>
        <td class="number-cell">1.6</td>
    </tr>
    <tr>
        <td class="number-cell">11</td>
        <td class="number-cell">1.29</td>
        <td class="number-cell">1.1</td>
        <td class="number-cell">1.45</td>
        <td class="number-cell">1.3</td>
        <td class="number-cell">1.91</td>
        <td class="number-cell">1.7</td>
    </tr>
    <tr>
        <td class="number-cell">12</td>
        <td class="number-cell">1.41</td>
        <td class="number-cell">1.2</td>
        <td class="number-cell">1.58</td>
        <td class="number-cell">1.4</td>
        <td class="number-cell">2.08</td>
        <td class="number-cell">1.9</td>
    </tr>
    <tr>
        <td class="number-cell">13</td>
        <td class="number-cell">1.56</td>
        <td class="number-cell">1.4</td>
        <td class="number-cell">1.68</td>
        <td class="number-cell">1.5</td>
        <td class="number-cell">2.22</td>
        <td class="number-cell">2.1</td>
    </tr>
    <tr>
        <td class="number-cell">14</td>
        <td class="number-cell">1.81</td>
        <td class="number-cell">1.6</td>
        <td class="number-cell">1.85</td>
        <td class="number-cell">1.7</td>
        <td class="number-cell">2.41</td>
        <td class="number-cell">2.3</td>
    </tr>
    <tr>
        <td class="number-cell">15</td>
        <td class="number-cell">2.01</td>
        <td class="number-cell">1.8</td>
        <td class="number-cell">2.06</td>
        <td class="number-cell">1.9</td>
        <td class="number-cell">2.60</td>
        <td class="number-cell">2.5</td>
    </tr>
    <tr>
        <td class="number-cell">16</td>
        <td class="number-cell">2.22</td>
        <td class="number-cell">1.9</td>
        <td class="number-cell">2.27</td>
        <td class="number-cell">2.1</td>
        <td class="number-cell">2.81</td>
        <td class="number-cell">2.7</td>
    </tr>
    <tr>
        <td class="number-cell">17</td>
        <td class="number-cell">1.78</td>
        <td class="number-cell">1.6</td>
        <td class="number-cell">1.86</td>
        <td class="number-cell">1.7</td>
        <td class="number-cell">2.44</td>
        <td class="number-cell">2.3</td>
    </tr>
    <tr>
        <td class="number-cell">18</td>
        <td class="number-cell">2.36</td>
        <td class="number-cell">2.2</td>
        <td class="number-cell">2.11</td>
        <td class="number-cell">1.9</td>
        <td class="number-cell">2.72</td>
        <td class="number-cell">2.6</td>
    </tr>
</table>

[2025阪神牝馬S](https://race.netkeiba.com/race/result.html?race_id=202509020511&rf=race_list)で4着だった6番人気ビヨンドザヴァレーは、長岡京S, 豊明Sに出場している。
その結果を検討すると、以下のようになる。
- 長岡京S `特別競走` 5着+0.1秒
    - 平均値/中央値ともに1/5以下という好成績
- 豊明S `特別競走` 5着+0.2秒
    - 平均値/中央値ともに1/3以下という好成績

また、この馬はG3にも出場しており、結果は以下である。
- 中山牝馬S 4着+0.2秒
    - 平均値/中央値ともに半分以下
- ターコイズS 2着+0.1秒
    - 2着なので文句なし
    - （平均値未満、中央値以下）

G2初出馬ゆえに少し低い6番人気となったが、抜けてくる可能性は十分あったことが分かる。








# 逆に地雷馬を見抜けるのか
人気の割に振るわない結果になる馬のことを勝手に「地雷馬」と呼んでいる。
そんな地雷馬をタイム差を基準として見抜けるか考えてみる。

[2025阪神牝馬S](https://race.netkeiba.com/race/result.html?race_id=202509020511&rf=race_list)で1番人気だったボンドガールは5着になっていた。
過去の成績を見ると、3走前の秋華賞が2着という好成績の割に+0.3秒と遅れていることが分かる。
上記の表を参照すると、G1の2着は0.1～0.17秒が基準となっており、0.3秒は遅れに遅れていることが分かる。
当時1着だったチェルヴィニアが独走してぶっちぎったのだとは思うが、（今走1番人気の割に）G1で基準より遅れたということはマイナス要因として影響してくるだろう。

同様に、同レース2番人気だったタガノエルピーダは7着になっていた。
成績だけで見れば、タイム差も特に悪い点はない。
しかし2番人気という点を考慮すると、基準値ギリギリのタイム差であるから、負けたことも納得がいく。








# まとめ
今回は穴馬探しの指標の一つとしてタイム差が使えるかどうか調査した。
グレードに着目し、各着順におけるタイム差の平均値や中央値を求め、実際のレースの結果と比較した。
今回求めた値以下のタイム差となった馬は十分穴馬たり得ることが確認でき、また人気の割に過去走タイム差が悪い馬は着順が悪いことも確認できた。

今回はグレードにのみ着目したが、今後は芝/ダートや距離、今走人気などを考慮した分析も行いたい。
更に細かく分けて分析することで、より実用的な指標になることが期待できる。