
betting
热门博彩分析——赔率转换、去水、边缘检测、凯利准则、套利检测、串关分析和赔率变动。纯计算,无 API 调用。适用于任何来源的赔率:ESPN(美式赔率)、Polymarket(小数概率)、Kalshi(整数概率)。 适用场景:用户询问关于投注规模、期望值、边缘分析、凯利准则、套利、串关、赔率变动、赔率转换或跨来源比较赔率。也适用于当你有 ESPN 的赔率和预测市场价格,并想评估某个投注是否具有正期望值时。 不适用场景:用户询问实时赔率或市场数据——请先使用 polymarket、kalshi 或特定运动技能获取赔率,然后使用此技能进行分析。
博彩分析——赔率转换、去水、边缘检测、凯利准则、套利检测、串关分析和赔率变动。纯计算,无 API 调用。适用于任何来源的赔率:ESPN(美式赔率)、Polymarket(小数概率)、Kalshi(整数概率)。 适用场景:用户询问关于投注规模、期望值、边缘分析、凯利准则、套利、串关、赔率变动、赔率转换或跨来源比较赔率。也适用于当你有 ESPN 的赔率和预测市场价格,并想评估某个投注是否具有正期望值时。 不适用场景:用户询问实时赔率或市场数据——请先使用 polymarket、kalshi 或特定运动技能获取赔率,然后使用此技能进行分析。
博彩分析
在编写查询之前,请查阅 references/api-reference.md 了解赔率格式、命令参数和关键概念。
快速开始
sports-skills betting convert_odds --odds=-150 --from_format=american
sports-skills betting devig --odds=-150,+130 --format=american
sports-skills betting find_edge --fair_prob=0.58 --market_prob=0.52
sports-skills betting evaluate_bet --book_odds=-150,+130 --market_prob=0.52
sports-skills betting find_arbitrage --market_probs=0.48,0.49
sports-skills betting parlay_analysis --legs=0.58,0.62,0.55 --parlay_odds=600
sports-skills betting line_movement --open_odds=-140 --close_odds=-160
Python SDK:
from sports_skills import betting
betting.convert_odds(odds=-150, from_format="american")
betting.devig(odds="-150,+130", format="american")
betting.find_edge(fair_prob=0.58, market_prob=0.52)
betting.find_arbitrage(market_probs="0.48,0.49")
betting.parlay_analysis(legs="0.58,0.62,0.55", parlay_odds=600)
betting.line_movement(open_odds=-140, close_odds=-160)
关键:在任何分析之前
关键:在调用任何分析命令之前,请验证:
- 赔率格式是否正确识别(american、decimal 或 probability)。
- 在计算边缘与预测市场价格之前,使用
devig对 ESPN 赔率进行去水。 - 此模块仅计算——不获取数据。请先从特定运动技能或 polymarket/kalshi 获取赔率。
工作流程
比较 ESPN 与 Polymarket/Kalshi
- 获取 ESPN 的胜负赔率(例如,从
nba get_scoreboard):主队:-150,客队:+130 - 获取同一结果的 Polymarket/Kalshi 价格(例如,主队为
0.52) - 去水:
devig --odds=-150,+130 --format=american→ 公平概率:主队 57.9%,客队 42.1% - 比较:
find_edge --fair_prob=0.579 --market_prob=0.52→ 边缘:5.9%,EV:11.3% - 或一步完成:
evaluate_bet --book_odds=-150,+130 --market_prob=0.52
套利检测
- 从不同来源获取每个结果的最佳价格(Polymarket 主队 0.48,Kalshi 客队 0.49)
find_arbitrage --market_probs=0.48,0.49 --labels=home,away- 总隐含概率 0.97(< 1.0)→ 发现套利,保证 ROI:3.09%
串关评估
- 对每个单关去水:第 1 关 → 0.58,第 2 关 → 0.55,第 3 关 → 0.50
parlay_analysis --legs=0.58,0.55,0.50 --parlay_odds=600- 返回组合公平概率、边缘和凯利分数
赔率变动分析
- 获取 ESPN 的开盘和收盘赔率:开盘 -140,收盘 -160
line_movement --open_odds=-140 --close_odds=-160- 返回概率变化、方向和分类(sharp_action、steam_move 等)
示例
示例 1:使用 ESPN 和 Polymarket 价格进行边缘检查
用户说:“湖人队比赛有边缘吗?ESPN 给出 -150,Polymarket 给出 52 美分”
操作:
- 调用
devig(odds="-150,+130", format="american")→ 主队公平概率约 58% - 调用
find_edge(fair_prob=0.58, market_prob=0.52)→ 边缘约 6%,正 EV - 调用
kelly_criterion(fair_prob=0.58, market_prob=0.52)→ 最优投注比例
结果:展示边缘百分比、每美元 EV 和推荐投注金额占资金的比例
示例 2:套利机会检测
用户说:“我能套利吗?Polymarket 主队 48 美分,Kalshi 客队 49 美分”
操作:
- 调用
find_arbitrage(market_probs="0.48,0.49", labels="home,away") - 检查结果中的
arbitrage_found
结果:如果存在套利:展示分配比例和保证 ROI。如果不存在:展示超额赔率并解释无保证利润
示例 3:串关评估
用户说:“这个 3 关串关 +600 值得吗?”
操作:
- 对每个单关去水以获得公平概率(例如,0.58、0.62、0.55)
- 调用
parlay_analysis(legs="0.58,0.62,0.55", parlay_odds=600)
结果:展示组合公平概率、边缘、EV、正 EV 或负 EV 结论,以及凯利分数
示例 4:赔率变动解读
用户说:“赔率从 -140 变动到 -160,这意味着什么?”
操作:
- 调用
line_movement(open_odds=-140, close_odds=-160)
结果:展示概率变化、方向、幅度和分类(sharp action、steam move 等)
示例 5:对标准盘口去水
用户说:“这个盘口的真实赔率是多少?两边都是 -110”
操作:
- 调用
devig(odds="-110,-110", format="american")
结果:展示每边公平概率为 50%,水约为 4.5%
示例 6:赔率格式转换
用户说:“将 -200 转换为隐含概率”
操作:
- 调用
convert_odds(odds=-200, from_format="american")
结果:展示 66.7% 的隐含概率和 1.50 的小数赔率
不存在的命令——切勿调用
— 不存在。此模块分析赔率,不获取赔率。请使用 nba-data/nfl-data 等获取 ESPN 赔率,或使用 polymarket/kalshi 获取预测市场价格。get_odds— 不存在。请使用calculate_evfind_edge或evaluate_bet代替。— 不存在。请使用compare_marketsmarkets技能进行跨平台比较。
如果命令未在 references/api-reference.md 中列出,则不存在。
故障排除
错误:调用 convert_odds 时出现 ValueError: unknown format
原因:from_format 参数不是 american、decimal 或 probability 之一
解决方案:使用确切的 american、decimal 或 probability 作为格式字符串
错误:find_edge 在预期正边缘时返回负 EV
原因:公平概率和市场概率可能颠倒,或跳过了去水步骤
解决方案:先对体育博彩赔率运行 devig,然后将去水后的 fair_prob 传递给 find_edge
错误:即使价格看起来很低,find_arbitrage 也显示无套利
原因:当所有结果都正确包含时,价格总和可能大于 1.0
解决方案:验证您使用的是所有结果的正确概率;检查结果中的 total_implied
错误:凯利分数非常高(大于 0.5)
原因:边缘估计非常大——通常是由于公平概率计算错误
解决方案:使用半凯利或四分之一凯利进行保守投注。通过 devig 重新验证公平概率





