レース結果・的中判定
概要
レース結果を取得し、予想買い目との照合で的中/不的中を自動判定する。
的中判定ロジック
| 買い目 | 判定条件 |
|---|---|
| 単勝 (win) | 1着馬番が予想と一致 |
| 複勝 (place) | 予想馬番が1〜3着に含まれる |
| 馬連 (quinella) | 1-2着の組み合わせが一致(順不同) |
| ワイド (wide) | 選択2頭が共に1〜3着に含まれる |
| 馬単 (exacta) | 1-2着の順番まで一致 |
| 三連複 (trio) | 1-3着の組み合わせが一致(順不同) |
| 三連単 (trifecta) | 1-3着の順番まで一致 |
主要関数
| 関数 | 説明 |
|---|---|
fetchRaceResult(url) | レース結果ページを取得・パース |
checkHit(bet, order) | 買い目の的中を判定 |
judgeBet(bet, result) | 的中判定+払戻金額計算 |
judgeAllBets(bets, result) | 全買い目を一括判定 |
払戻金額計算
typescript
// PayoutInfoのpayoutは100円あたりの払戻額
payout = Math.floor((payoutInfo.payout / 100) * bet.amount)
profit = payout - bet.amountJudgmentResult
typescript
interface JudgmentResult {
bet: Bet
isHit: boolean
payout: number // 払戻金額(0 = ハズレ)
profit: number // 損益
}