Recent Results

直近30日の標準AI予想の成績

08-14〜09-13の2,379レース(クリーン母数=中止・返還等と締切後記録を除く)で、 本命1着率45.57%2車複的中率33.50%複勝圏(3着以内)78.44%3連単完全一致6.73%。 いずれも指定時刻に自動記録した標準AI予想を対象とした検証結果で、回収率や利益を示す数字ではありません。
45.57%
本命1着率
n=2,379
33.50%
2車複的中率
n=2,379
78.44%
複勝圏(3着以内)
n=2,379
6.73%
3連単 完全一致
n=2,379
直近30日: 08-14〜09-13 (n=2,379) 直近7日: 09-06〜09-13 (n=609) 記録開始からの累計: 07-30〜09-13 (n=3,388)

3連単の「完全一致」は最大で504通り(9車立ての場合)にもなる組み合わせから1点を言い当てる、最も厳しい的中条件です。 的中率だけを見て「低い」と感じるかもしれませんが、テトラが実際に見せている本命は 1着候補としては45.57%、3着以内でみれば78.44%の実績でした(直近30日・過去の記録に基づく集計であり、将来の的中を保証するものではありません)。 的中の意味は指標によって全く違うので、④較正チャートで「言った確率どおりか」を別角度から確認できるようにしています。 各指標の分子・分母の正確な定義は②集計の定義・対象・除外条件にまとめています。

※ 累計(記録開始07-30〜基準日09-13、n=3,388)は 本命1着率44.78%・2車複的中率32.79%・複勝圏78.28%・3連単完全一致6.61%です。 実際に使用した集計SQL全文はevidence/aggregation_sql.txt、 公開結果・集計定義の検証パックはevidence/current_result.jsonで確認できます。

Definitions & Scope

集計の定義・対象・除外条件

「的中率」という言葉は指標によって意味が変わります。ここでは各数値が何を分子・分母として計算されているかを、 実際に使っているSQL定義のまま明記します。競輪は7車立てを中心に5〜9車で開催されるため、指標名は競輪の言葉(本命1着率・2車複・複勝圏・3連単)で統一しています。

指標分子(何をカウントするか)分母
本命1着率本命(予想1位)車が、実際の着順で1着だった件数クリーン母集団
(void_race=false
AND late_snapshot=false
AND no_valid_snapshot=false)
2車複的中率予想確率上位2車(本命・対抗)が、順不同で実際の1着・2着の車と完全に一致した件数
※車券の「2車複」の的中条件に相当する集計上の呼称です
複勝圏(3着以内)率本命車が、実際の着順で3着以内だった件数
※統計用語としての呼称で、車券として発売されている「複勝」の的中条件そのものではありません
3連単完全一致率予想確率が高い順に3車を並べた1-2-3着の組み合わせ(1点)が、実際の着順3車と完全に一致した件数

対象期間: 2026年7月30日(記録開始)〜2026年9月13日(直近の突合完了日)。以下の条件に該当する行は、分子・分母のどちらにも含まれません。

除外区分定義件数(全期間)
中止・返還等
void_race=true
結果確定から2日経っても着順が確認できなかったレース。中止・返還等とみなし、的中判定をせずに終端した行4件
締切後記録
late_snapshot=true
締切(close_at_used)以前のスナップショットが1つも無く、記録の中で最も早い行を参考値として代用した行。「締切前記録」の前提と矛盾するため除外0件
有効スナップショット無し
no_valid_snapshot=true
締切後記録と同時に立つフラグ(同じ事象の別名)0件

予想自体が記録されなかったレースについて。 対象期間(2026年7月30日〜2026年9月13日)中に、結果テーブル(keirin_results)に記録が存在するレースは3,531件でした。このうち標準AI予想が記録されているのは 3,392件(96.1%)で、残り139件(3.9%)は予想そのものが記録されていません。 この139件は集計の分子・分母のどちらにも含まれていません──「的中」でも「不的中」でもなく、単純に集計の対象外です。内訳は次のとおりです。

稼働フェーズ期間未記録件数備考
初期稼働(稼働初日)2026-07-30(単日)7066システムは当日22:55に稼働開始。それ以前の日中〜夜のレース(66件)は記録の仕組みがまだ動いていなかったため未記録。
モーニング競輪の記録漏れ2026-07-31〜2026-08-21(23日間)7373各開催の1〜3R・締切8:25〜9:06(通称モーニング競輪)の対象レースは、この期間100%が未記録(73件/73件)。早朝帯の締切検知に使うcron収集窓の設定漏れが原因。2026-08-21に修正。
修正後2026-08-22〜2026-09-13(23日間)1,8000モーニング競輪を含め、未記録0件が継続。

未記録の内訳はevidence/coverage_daily.jsonに、レース単位の生データ(日付・開催・レース番号・締切時刻)を含めて公開しています。 モーニング競輪(各開催の1〜3R、締切8:25〜9:06)の記録漏れは、早朝帯の締切検知に使うcron収集窓の設定漏れが原因で、2026-08-21の修正以降は欠測0件が続いています。

How It Works

なぜ、結果確定後に予想を更新しないのか。

「AIの的中率」を名乗るサービスは他にもありますが、後から都合よく数字を作れてしまえば意味がありません。KEIRINCRAFTは締切前に記録し、結果確定後に更新しない運用でこれを防いでいます。この作法は姉妹アプリBOATCRAFTで先に形にしたものを踏襲しています。

01

締切前に記録する

各レースの投票締切が30分以内に迫ると、cronが5分おきにテトラの予想計算(アプリの表示経路と同じ計算)を呼び出し、本命車・確率・全車の順位付けをkeirin_prediction_logに追記します。1レースにつき複数回スナップショットを撮り、締切時刻(close_at_used)と記録時刻(snapshot_at)を両方保存しています。

02

結果確定後に更新しない運用

この記録を書き込むデータベースロール(keirincraft)には、更新(UPDATE)・削除(DELETE)の権限がデータベース側の設定でそもそも付与されていません(SELECT・INSERTのみ。2026年9月11日に実機で確認)。 日次の突合バッチも「一度書いた行は書き換えない(INSERT ON CONFLICT DO NOTHING)」実装です。ただし、テーブルを所有するデータベース管理者権限まで含めれば技術的に完全な不変性を証明するものではないため、 本ページでは「改ざん不能」という言い切りは使わず、この事実に基づいた表現にとどめています。

03

毎日、自動で答え合わせ

公式の着順が確定すると、深夜1時台に日次バッチが自動で記録と突き合わせ、締切前に一度も撮れていなかった行は参考値扱いにしつつ、的中/非的中を判定してkeirin_prediction_reconciliationに追記します。結果が2日経っても見つからないレースは中止・返還等とみなして終端します。

公開する集計では、締切前に記録された予想だけを対象にしています(本ページではvoid_race=false AND late_snapshot=false AND no_valid_snapshot=false)。 的中に有利な母集団だけを選んでいるわけではなく、締切後の記録という「後出し疑惑が生じうる行」と、 そもそも結果が存在しないレースを除いているだけです。定義の詳細は②集計の定義・対象・除外条件、 判定ロジックのより詳しい説明は競輪AI予想の仕組みページを参照してください。

Calibration

「言った確率どおり」に当たっているか。

KEIRINCRAFTが訴求したいのは「的中率が高い」ことではなく、言った確率どおりに当たっているか(較正)です。 テトラが「1着になる確率60%」と言った本命車が、実際に60%前後で1着になっていれば、その数字は信頼できます。 逆に、低い確率の予想が低い的中率で終わるのは失敗ではなく、確率が正直に機能している証拠です。

予想時点の平均確率 実際に1着になった率
0% 50% 100% 24.1%0-20%帯n=87 33.9%20-40%帯n=962 46.9%40-60%帯n=986 74.8%60-80%帯n=226 89.8%80-100%帯n=118
読み方: 各帯の「予想時点の平均確率」(薄い金)と「実際に1着になった率」(濃い金)を比べています (0-20%帯: 予想16.6%→実績24.1%/20-40%帯: 予想31.1%→実績33.9%/40-60%帯: 予想48.2%→実績46.9%/60-80%帯: 予想71.4%→実績74.8%/80-100%帯: 予想90.2%→実績89.8%、いずれも直近30日)。 差はどの帯も0.4〜7.5ポイント程度です。 競艇(BOATCRAFT)と異なり、KEIRINCRAFTでは0-20%帯にも一定数のデータがあります──競輪は5〜9車立てで、 本命でも確率が20%を下回るレースが構造上起こりうるためです。この帯もそのまま公開しています。
Weekly / Monthly Log

週ごと・月ごとの内訳

良かった週だけを切り出さず、記録が始まった週からすべて期間順に並べています。公開後に成績が悪化した週があっても、 さかのぼって削除・非表示にすることはしません。数字は週によって上下します──それ自体が「後から選んでいない」ことの証拠です。

期間レース数本命1着2車複複勝圏3連単完全一致
2026-W3107-30〜08-02(稼働初日(07-30)を含む・週の前半のみ)24440.16%33.20%77.46%6.56%
2026-W3208-03〜08-0949843.98%27.71%77.91%6.63%
2026-W3308-10〜08-1645544.40%32.75%77.36%5.49%
2026-W3408-17〜08-23(モーニング競輪の記録漏れ修正(08-21)をまたぐ週)56445.39%34.04%78.90%6.03%
2026-W3508-24〜08-3052146.26%30.33%77.93%6.33%
2026-W3608-31〜09-0655644.06%35.25%77.34%7.55%
2026-W3709-07〜09-1355046.55%35.82%80.36%7.45%

※ 稼働初日を含む週と、週の途中までしか無い最新週は母数が小さい/期間が不完全なため、傾向を読むときは参考程度に。全週の合計n=3,388は、上記「記録開始からの累計」と一致します。

期間レース数本命1着2車複複勝圏3連単完全一致
2026年7月07-30〜07-31(稼働初日を含む2日間のみ)9341.94%35.48%79.57%9.68%
2026年8月08-01〜08-312,28144.67%31.65%77.99%6.23%
2026年9月09-01〜09-13(進行中(09-01〜09-13))1,01445.27%35.11%78.80%7.20%

3連単の完全一致率は週によって5.49%〜7.55%の範囲で動いています。この振れ幅自体が母数(1週間で約250〜600件)相応のばらつきであり、 毎週「絶好調」と言えるような一本調子の数字ではありません。数字が動く様子ごと、そのまま載せています。

Philosophy

なぜ、数字を盛らないか。

「的中率○○%」を売り文句にする予想サービスは珍しくありません。しかしKEIRINCRAFTがこのページで目指しているのは 「すごいでしょう」ではなく「言ったとおりでしょう」です。この2つは似ているようで、作り方が正反対になります。

的中率の自慢(やらない)較正の開示(やる)
主役調子が良かった日全ての日(当たりも外れも)
自信度の低い予想見せない・隠す見せる(低い的中率でも「それが正しい」ことの証明になる)
大穴的中ヒーロー扱い全体の中の1行として淡々と記録
目的「すごいでしょ」「言ったとおりでしょ」

競合サービスがこの形式を簡単に真似できないのは、真似した瞬間に自分たちの外れも同じ土俵で公開することになるからです。 KEIRINCRAFTは「当たった実績」ではなく「記録の透明性」そのものを差別化にしています。

回収率・利益・勝率の保証はこのページに出しません。 出すのは「言った確率どおりに当たっているか」という較正の話と、過去の記録に基づく検証結果だけです。 投資としての損得を示す表現(回収率・儲かる・勝てる・保証する 等)は、KEIRINCRAFTの表記ルール上使用しません。
How To Read

この数字の読み方。

この数字は、アプリでつまみを調整した後の予想実績ですか?
いいえ。このページの数字は指定時刻に自動記録した標準AI予想(16のつまみを調整する前のAI出力そのもの)の検証結果です。ユーザーがアプリで実際に見る予想や、つまみを動かした後の予想の実績を記録する仕組みは、現在別途整備を進めています。将来的にこのページ、またはアプリ内の表示に反映する予定です。
「複勝圏」とは具体的に何を指しますか?
本命(予想1位)車が、実際の着順で3着以内に入った割合です(SQL上はhit_in3という判定列)。車券として発売されている「複勝」の的中条件とは異なる場合がある、集計上の呼称としてお読みください。
「2車複的中率」「3連単の完全一致」とは具体的に何ですか?
「2車複的中率」は、予想確率が高い順に選んだ上位2車が、順不同で実際の1着・2着と完全に一致した割合です。「3連単の完全一致」は、予想確率が高い順に3車を並べた1-2-3着の組み合わせを1点選び、それが実際の着順3車の並び順と完全に一致した割合です。どちらも本ページ独自の集計で、判定用の列がテーブルに用意されているわけではなく、公開している集計SQL(evidence/aggregation_sql.txt)で機械的に算出しています。
記録は本当に書き換えられないのですか?
「改ざん不能」という言い切りはしていません。この記録を書き込むアプリ用データベースロール(keirincraft)には更新(UPDATE)・削除(DELETE)の権限が付与されておらず(2026年9月11日に実機で確認・SELECTとINSERTのみ)、日次の突合バッチも一度書いた行を上書きしない実装(INSERT ON CONFLICT DO NOTHING)です。ただし、テーブルを所有するデータベース管理者権限まで含めれば技術的に完全な不変性を証明するものではないため、「締切前に記録された予想を結果確定後に更新しない運用」という事実に基づいた表現にとどめています。
記録されなかったレースはありますか?
あります。対象期間中に結果テーブルに記録が存在する3,531レースのうち、139件(3.9%)は標準AI予想そのものが記録されていません。稼働初日の記録開始前(66件)と、モーニング競輪(各開催1〜3R・締切8:25〜9:06)の記録漏れ期間(2026-07-31〜08-21、73件)にすべて集中しており、2026-08-22以降は一貫して未記録0件です。この139件は集計の分子・分母どちらにも含まれていません。詳しくは②集計の定義・対象・除外条件、レース単位の生データはevidence/coverage_daily.jsonを参照してください。
数字はどのくらいの頻度で更新されますか?
現在は手動実行のみです。週次などの自動更新の仕組みは今後の検討課題で、まだ実装していません。数字を更新する際は、集計定義・SQLや文言そのものを変えない限り、既存の値を書き換えず基準日を進める形で追記します。基準日の更新方針や公開ステップの判断は、編集長検品と有田さんのGOを経て決定します。
Disclaimer

免責事項。

この予想を、アプリで確認する。

テトラの予想は毎日、全国の競輪場ぶん自動で記録・答え合わせされています。アプリでは今日のレースの予想確率をそのまま確認できます。

App Store で見る → 予測の仕組みを読む →