Game Recaps
Boston Red Sox (BOS)
@
Toronto Blue Jays (TOR)
Rogers Centre
BOS Starter
Ranger Suarez
8 IP · 1 H · 0 ER · 10 K · 1 BB · 105 PC
BOS Batters
Wilyer Abreu
2-4 (1 RBI, 1 BB)
Marcelo Mayer
2-3 (1 RBI, 1 BB)
Insight
Ranger Suarez was absolutely filthy tonight, going 8 innings and allowing just 1 hit while striking out 10. That's two shutout performances in his last three starts and the offense gave him just enough support to seal it.
TOR Starter
Dylan Cease
5.2 IP · 7 H · 4 ER · 5 K · 3 BB · 107 PC
TOR Batters
Nothing Noteworthy
Insight
Dylan Cease ran into trouble tonight, giving up 4 runs on 7 hits in under 6 innings. Toronto's offense never got going either and they were shut out for the game.
New York Yankees (NYY)
@
Texas Rangers (TEX)
Globe Life Field
NYY Starter
Max Fried
6 IP · 4 H · 0 ER · 5 K · 2 BB · 89 PC
NYY Batters
Aaron Judge
3-3 (1 HR, 1 RBI)
Insight
Aaron Judge went 3 for 3 with a home run and Max Fried threw 6 clean innings to back him up. The Yankees got what they needed from both sides tonight.
TEX Starter
Jack Leiter
6 IP · 8 H · 4 ER · 4 K · 1 BB · 93 PC
TEX Batters
Nothing Noteworthy
Insight
Jack Leiter has now given up runs in all three of his last starts and tonight he allowed 4 runs on 8 hits over 6 innings. Texas has been trending in the wrong direction with their starting pitching lately.
Chicago Cubs (CHC)
@
San Diego Padres (SD)
Petco Park
CHC Starter
Matthew Boyd
4 IP · 8 H · 5 ER · 4 K · 2 BB · 91 PC
CHC Batters
Seiya Suzuki
2-4 (1 HR, 1 RBI)
Dansby Swanson
2-3 (1 R, 1 BB)
Insight
Matthew Boyd got roughed up early, giving up 5 runs in just 4 innings, and the Cubs bullpen has been shaky lately so this one got away from them fast.
SD Starter
Randy Vásquez
5 IP · 5 H · 5 ER · 4 K · 3 BB · 106 PC
SD Batters
Manny Machado
3-4 (3 R)
Ty France
2-3 (4 RBI, 1 BB)
Fernando Tatis Jr.
2-5
Insight
Ty France drove in 4 runs and Manny Machado scored 3 times as the Padres offense did the heavy lifting. San Diego had enough firepower to win despite their starter also struggling.
St. Louis Cardinals (STL)
@
Pittsburgh Pirates (PIT)
PNC Park
STL Starter
Dustin May
6 IP · 7 H · 2 ER · 2 K · 2 BB · 95 PC
STL Batters
José Fermín
2-2 (2 RBI)
Alec Burleson
2-4 (1 R)
Insight
Dustin May has now given up just 1 run in each of his last three starts heading into tonight, and he kept that strong form going with 6 solid innings to lead St. Louis to the win.
PIT Starter
Mason Montgomery
1 IP · 0 H · 0 ER · 1 K · 0 BB · 7 PC
PIT Batters
Nick Gonzales
3-4 (1 R)
Jake Mangum
2-3 (1 RBI)
Insight
Pittsburgh's offense has been struggling a lot lately and tonight was more of the same, managing just 2 runs in a loss. Nick Gonzales went 3 for 4 but they could not get enough going as a group.
Seattle Mariners (SEA)
@
Minnesota Twins (MIN)
Target Field
SEA Starter
Luis Castillo
5 IP · 7 H · 7 ER · 3 K · 2 BB · 97 PC
SEA Batters
Randy Arozarena
2-3 (1 R, 1 BB)
Insight
Luis Castillo had a rough one, giving up 7 runs in just 5 innings after two solid outings to start his last three starts. Seattle's pitching has been trending down and this was a tough example of that.
MIN Starter
Connor Prielipp
5 IP · 1 H · 2 ER · 5 K · 3 BB · 84 PC
MIN Batters
Kody Clemens
2-5 (1 HR, 5 RBI)
Ryan Jeffers
2-4 (2 RBI, 1 BB)
Trevor Larnach
2-4 (1 RBI, 1 BB)
Insight
Kody Clemens had a massive night, going 2 for 5 with a home run and 5 RBI to carry Minnesota to a blowout win. The Twins offense showed up big tonight despite struggling as a unit recently.
Miami Marlins (MIA)
@
Los Angeles Dodgers (LAD)
UNIQLO Field at Dodger Stadium
MIA Starter
Chris Paddack
4 IP · 4 H · 2 ER · 1 K · 1 BB · 67 PC
MIA Batters
Jakob Marsee
2-3 (1 R, 2 BB)
Insight
Miami's bullpen has been struggling lately and could not hold things together after a decent enough start from Chris Paddack. The Marlins offense has been cold too and they could not find a way to pull this one out.
LAD Starter
Yoshinobu Yamamoto
5 IP · 5 H · 3 ER · 4 K · 4 BB · 87 PC
LAD Batters
Shohei Ohtani
3-5 (1 RBI)
Insight
Shohei Ohtani went 3 for 5 to lead the way and the Dodgers bullpen came through to close it out. Yoshinobu Yamamoto was a bit off tonight but Los Angeles had enough to survive.
Tampa Bay Rays (TB)
@
Cleveland Guardians (CLE)
Progressive Field
TB Starter
Steven Matz
7 IP · 4 H · 2 ER · 2 K · 1 BB · 95 PC
TB Batters
Insight
Steven Matz kept it rolling with 7 solid innings, giving up just 2 runs, and Ryan Vilade went 3 for 4 with 2 RBI to provide the offense. Tampa Bay got a nice complete performance to pick up the win.
CLE Starter
Parker Messick
5.2 IP · 3 H · 1 ER · 9 K · 2 BB · 95 PC
CLE Batters
Insight
Parker Messick struck out 9 batters and has been pitching better and better over his last three starts, but Cleveland could not give him enough run support and fell just short.
Los Angeles Angels (LAA)
@
Chicago White Sox (CWS)
Rate Field
LAA Starter
Jack Kochanowicz
6 IP · 5 H · 2 ER · 5 K · 1 BB · 90 PC
LAA Batters
Vaughn Grissom
2-4 (1 RBI)
Nolan Schanuel
2-4 (1 RBI)
Bryce Teodosio
2-3 (1 RBI)
Insight
Jack Kochanowicz gave up just 2 runs over 6 innings and has been really consistent lately, but the Angels bullpen could not hold the lead and LAA ended up on the wrong side of an 8-7 game.
CWS Starter
Anthony Kay
4 IP · 7 H · 4 ER · 2 K · 2 BB · 90 PC
CWS Batters
Munetaka Murakami
2-4 (1 HR, 3 RBI)
Tristan Peters
2-4 (1 RBI)
Insight
Munetaka Murakami hit a home run and drove in 3 runs to help Chicago come back and win. The White Sox offense has been trending up a lot lately and they showed that again tonight.
Rolling Performance Tables
Bullpen Rankings
📊 Sorted by 7d ERA
📅 7d / 14d / 28d ERA — Rolling ERA.
🔬 FIP — If ERA > FIP then the bullpen should get better.
⚡ K% — Strikeout rate. Higher is better.
📈 Momentum — (28d - 7d). Positive = Good. Negative = Bad.
🎯 Signal — Value = Target. Fade = Avoid. Watch = Mixed signals.
| # |
Team |
7d ERA |
14d |
28d |
FIP |
K% |
Mom. |
Signal |
| 1 |
SF |
0.49 |
0.68 |
3.06 |
3.15 |
17.4% |
+1 |
Neutral |
| 2 |
ATH |
1.58 |
3.59 |
4.17 |
1.87 |
25.6% |
+11 |
Value |
| 3 |
PIT |
1.86 |
2.24 |
3.16 |
3.20 |
24.6% |
0 |
Neutral |
| 4 |
TEX |
2.32 |
3.27 |
3.20 |
3.23 |
21.1% |
0 |
Neutral |
| 5 |
CLE |
2.42 |
4.49 |
4.74 |
3.05 |
20.8% |
+20 |
Value |
| 6 |
KC |
2.81 |
6.16 |
5.90 |
4.72 |
21.4% |
+22 |
Value |
| 7 |
BOS |
2.86 |
3.49 |
3.52 |
1.92 |
25.3% |
0 |
Neutral |
| 8 |
NYY |
2.93 |
4.16 |
4.53 |
4.68 |
25.6% |
+11 |
Value |
| 9 |
TOR |
3.06 |
4.23 |
3.82 |
2.33 |
29.7% |
+2 |
Neutral |
| 10 |
CWS |
3.26 |
4.65 |
4.41 |
4.80 |
20.2% |
+8 |
Value |
| 11 |
SEA |
3.75 |
5.18 |
3.51 |
4.27 |
20.6% |
-5 |
Fade |
| 12 |
MIN |
4.02 |
4.25 |
4.79 |
3.14 |
22.3% |
+14 |
Value |
| 13 |
STL |
4.05 |
4.85 |
4.57 |
2.56 |
24.3% |
+9 |
Value |
| 14 |
LAD |
4.07 |
5.29 |
4.66 |
4.23 |
27.4% |
+9 |
Value |
| 15 |
MIL |
4.17 |
4.61 |
4.54 |
3.99 |
25.1% |
+5 |
Value |
| 16 |
COL |
4.48 |
3.55 |
3.68 |
3.14 |
29.4% |
-6 |
Fade |
| 17 |
WSH |
4.56 |
3.89 |
5.68 |
4.41 |
18.3% |
+10 |
Value |
| 18 |
TB |
4.78 |
4.00 |
4.70 |
4.91 |
22.7% |
+6 |
Value |
| 19 |
ATL |
4.88 |
3.57 |
3.49 |
4.77 |
26.0% |
-14 |
Fade |
| 20 |
MIA |
5.00 |
5.42 |
4.26 |
5.51 |
21.5% |
-5 |
Fade |
| 21 |
PHI |
5.08 |
4.57 |
3.64 |
5.80 |
14.1% |
-12 |
Neutral |
| 22 |
CHC |
5.12 |
3.73 |
3.56 |
4.52 |
20.2% |
-14 |
Fade |
| 23 |
NYM |
5.13 |
5.91 |
4.36 |
3.15 |
29.9% |
-6 |
Fade |
| 24 |
CIN |
5.94 |
2.92 |
2.99 |
7.16 |
16.1% |
-23 |
Neutral |
| 25 |
ARI |
5.97 |
3.98 |
4.23 |
6.37 |
19.8% |
-11 |
Neutral |
| 26 |
DET |
6.08 |
5.61 |
4.57 |
4.79 |
21.0% |
-5 |
Neutral |
| 27 |
BAL |
6.65 |
4.66 |
4.36 |
5.96 |
15.4% |
-11 |
Neutral |
| 28 |
SD |
7.98 |
4.91 |
3.98 |
4.38 |
14.8% |
-16 |
Neutral |
| 29 |
HOU |
10.23 |
5.95 |
6.70 |
6.91 |
7.5% |
+1 |
Neutral |
| 30 |
LAA |
10.56 |
7.13 |
6.36 |
6.06 |
20.4% |
-1 |
Neutral |
SP Rotation Rankings
📊 Sorted by FIP — High ERA + low FIP = ERA likely to drop.
📅 7d / 14d / 28d ERA — Rolling ERA.
🔬 FIP — Strips out defense and luck. Future predictor for ERA.
⚡ K-BB% — If > 15% = Good. < 8% = Bad.
🚶 WHIP — Measures baserunner control and game flow impact.
📈 Momentum — (28d - 7d). Positive = Good. Negative = Bad.
🎯 Signal — Value = Target. Fade = Avoid. Watch = Mixed signals.
| # |
Team |
7d ERA |
14d |
28d |
FIP |
K-BB% |
WHIP |
Mom. |
Signal |
| 1 |
COL |
2.14 |
4.90 |
4.99 |
2.58 |
16.9% |
0.95 |
+28 |
Value |
| 2 |
MIL |
3.30 |
2.56 |
3.08 |
2.84 |
19.5% |
1.14 |
0 |
Neutral |
| 3 |
LAD |
2.29 |
2.23 |
2.69 |
2.98 |
20.0% |
1.04 |
+4 |
Watch |
| 4 |
NYM |
3.15 |
3.88 |
4.23 |
3.14 |
16.4% |
1.28 |
+1 |
Neutral |
| 5 |
PIT |
5.62 |
4.52 |
3.27 |
3.19 |
17.2% |
1.19 |
-4 |
Watch |
| 6 |
MIA |
4.20 |
3.96 |
4.19 |
3.43 |
13.8% |
1.33 |
+9 |
Value |
| 7 |
LAA |
4.44 |
3.35 |
3.59 |
3.53 |
8.9% |
1.45 |
-1 |
Neutral |
| 8 |
NYY |
2.27 |
3.07 |
3.06 |
3.70 |
10.9% |
0.99 |
-5 |
Fade |
| 9 |
SF |
4.03 |
4.87 |
4.41 |
3.77 |
10.0% |
1.20 |
+11 |
Value |
| 10 |
KC |
6.02 |
5.25 |
4.30 |
3.87 |
13.8% |
1.60 |
+8 |
Value |
| 11 |
WSH |
3.15 |
4.79 |
5.35 |
4.02 |
21.6% |
0.99 |
+16 |
Value |
| 12 |
ATH |
3.38 |
4.96 |
4.54 |
4.08 |
8.8% |
1.28 |
+16 |
Value |
| 13 |
CLE |
5.12 |
4.13 |
3.55 |
4.12 |
14.1% |
1.26 |
-3 |
Watch |
| 14 |
CWS |
5.46 |
4.69 |
3.96 |
4.14 |
8.7% |
1.54 |
0 |
Neutral |
| 15 |
CHC |
6.45 |
4.39 |
4.10 |
4.37 |
10.0% |
1.40 |
-2 |
Neutral |
| 16 |
TB |
2.30 |
3.88 |
3.61 |
4.41 |
13.5% |
1.02 |
-5 |
Neutral |
| 17 |
TEX |
4.53 |
4.45 |
4.18 |
4.69 |
15.3% |
1.28 |
+4 |
Watch |
| 18 |
ATL |
4.80 |
3.46 |
3.39 |
4.90 |
13.5% |
1.43 |
-1 |
Neutral |
| 19 |
STL |
4.66 |
3.96 |
4.51 |
4.91 |
11.4% |
1.55 |
+11 |
Value |
| 20 |
BOS |
4.05 |
4.39 |
4.85 |
5.08 |
18.8% |
1.12 |
+5 |
Value |
| 21 |
SD |
5.96 |
5.01 |
4.23 |
5.09 |
9.4% |
1.39 |
-12 |
Neutral |
| 22 |
DET |
5.90 |
3.47 |
3.72 |
5.20 |
11.6% |
1.45 |
-18 |
Neutral |
| 23 |
BAL |
6.75 |
5.66 |
4.69 |
5.22 |
5.3% |
1.75 |
-4 |
Watch |
| 24 |
CIN |
5.93 |
3.88 |
4.84 |
5.24 |
15.2% |
1.60 |
0 |
Neutral |
| 25 |
HOU |
3.42 |
4.70 |
5.60 |
5.42 |
13.8% |
1.41 |
-3 |
Watch |
| 26 |
PHI |
7.16 |
7.69 |
5.73 |
5.56 |
5.3% |
1.97 |
-14 |
Neutral |
| 27 |
TOR |
5.82 |
4.07 |
5.07 |
5.75 |
4.5% |
1.56 |
-4 |
Watch |
| 28 |
MIN |
5.81 |
4.37 |
4.12 |
6.27 |
6.4% |
1.40 |
-20 |
Fade |
| 29 |
ARI |
7.67 |
7.30 |
4.74 |
6.42 |
12.2% |
1.79 |
-3 |
Watch |
| 30 |
SEA |
7.14 |
4.74 |
4.40 |
6.76 |
7.4% |
1.66 |
-14 |
Fade |
Team Batting Rankings
📊 Sorted by 7d R/G
📅 7d / 14d / 28d R/G — Runs per game over each rolling window.
💥 OPS — If > .800 = Good. If < .670 = Bad
🎯 wRC+ — Measures offense against the league average. 100 = league average. 110 = 10% above average.
📈 Momentum — 28d rank - 7d rank. Positive = Trending up.
🎯 Signal — Value = Hot. Fade = Cold. Watch = Neutral.
| # |
Team |
7d R/G |
14d |
28d |
OPS |
wRC+ |
Mom. |
Signal |
| 1 |
KC |
8.20 |
5.25 |
4.17 |
0.677 |
164 |
+20 |
Value |
| 2 |
CIN |
6.80 |
5.33 |
4.46 |
0.665 |
152 |
+15 |
Value |
| 3 |
ARI |
6.60 |
6.10 |
5.00 |
0.721 |
158 |
+5 |
Value |
| 4 |
SD |
6.00 |
4.83 |
5.12 |
0.684 |
123 |
+1 |
Neutral |
| 5 |
ATL |
5.83 |
6.00 |
5.96 |
0.792 |
129 |
-4 |
Watch |
| 6 |
NYY |
5.71 |
5.69 |
5.44 |
0.749 |
143 |
-3 |
Watch |
| 7 |
CHC |
5.57 |
6.38 |
5.08 |
0.778 |
151 |
-1 |
Neutral |
| 8 |
CWS |
5.57 |
5.54 |
3.88 |
0.697 |
125 |
+16 |
Value |
| 9 |
BAL |
5.40 |
4.67 |
4.67 |
0.714 |
156 |
+3 |
Watch |
| 10 |
DET |
5.33 |
4.77 |
4.52 |
0.726 |
156 |
+5 |
Value |
| 11 |
TB |
5.17 |
5.00 |
4.54 |
0.719 |
128 |
+3 |
Watch |
| 12 |
WSH |
5.17 |
4.77 |
5.00 |
0.735 |
104 |
-3 |
Watch |
| 13 |
LAA |
4.83 |
4.85 |
4.76 |
0.723 |
124 |
-2 |
Neutral |
| 14 |
BOS |
4.71 |
4.15 |
4.44 |
0.654 |
85 |
+4 |
Watch |
| 15 |
SEA |
4.67 |
4.08 |
3.92 |
0.689 |
129 |
+7 |
Value |
| 16 |
LAD |
4.43 |
5.31 |
5.84 |
0.832 |
81 |
-14 |
Fade |
| 17 |
MIN |
4.43 |
4.25 |
5.24 |
0.707 |
102 |
-13 |
Fade |
| 18 |
ATH |
4.40 |
4.58 |
4.50 |
0.708 |
127 |
-2 |
Neutral |
| 19 |
MIL |
4.33 |
4.33 |
4.30 |
0.697 |
62 |
+1 |
Neutral |
| 20 |
PHI |
4.33 |
3.00 |
3.67 |
0.659 |
72 |
+8 |
Value |
| 21 |
HOU |
4.20 |
4.67 |
5.04 |
0.784 |
109 |
-14 |
Neutral |
| 22 |
MIA |
4.17 |
4.17 |
4.64 |
0.724 |
104 |
-9 |
Fade |
| 23 |
CLE |
3.83 |
4.08 |
3.88 |
0.699 |
105 |
0 |
Neutral |
| 24 |
COL |
3.83 |
3.85 |
3.76 |
0.709 |
101 |
+2 |
Neutral |
| 25 |
STL |
3.83 |
5.00 |
4.38 |
0.704 |
107 |
-6 |
Fade |
| 26 |
SF |
3.67 |
3.83 |
3.88 |
0.653 |
95 |
-1 |
Neutral |
| 27 |
TOR |
3.67 |
4.08 |
3.54 |
0.697 |
78 |
+2 |
Neutral |
| 28 |
PIT |
3.43 |
4.23 |
4.96 |
0.713 |
52 |
-18 |
Fade |
| 29 |
NYM |
3.33 |
2.73 |
2.92 |
0.629 |
85 |
+1 |
Neutral |
| 30 |
TEX |
3.29 |
3.69 |
3.76 |
0.705 |
80 |
-3 |
Watch |
Table Insights
Extracted from rolling tables above.
Strongest
CWS
Value
VALUE: The Chicago White Sox bullpen has been really sharp over the last week, giving up very few runs. They are facing tough competition but still holding their own. Back the CWS pen when they are protecting a lead this week.
KC
Value
VALUE: The Kansas City bullpen has been on a hot streak lately, posting one of the better ERAs in baseball over the last seven days. This is a big jump from where they were over the past month, so it is worth watching whether they can keep it up. Back the KC pen this week while the momentum is there.
NYY
Value
VALUE: The Yankees bullpen has been really clean over the last week, barely letting runners on base with a WHIP just over 1.0. They are striking out batters at a solid rate and keeping runs off the board. Back the Yankees when their relief corps is in the game this week.
NYM
Fade
FADE: The Mets bullpen has been one of the worst in baseball over the last week and the team is trending in the wrong direction. Despite getting batters out on paper, runs keep scoring at a high rate. Avoid the Mets when the game is in the hands of their relievers.
KC
Value
VALUE: The Royals starting pitchers have struggled to keep runs off the board recently, but they are actually pitching better than the score shows. Their starters have been controlling the game more than the 6.02 ERA this week suggests. Back KC starters as a bounce-back play while the schedule stays manageable.
ATH
Value
VALUE: The Athletics starters have quietly put up a nice week on the mound, holding opponents to just over 3 runs per game. Their numbers over the last week are much better than the longer-term picture suggests. Back the ATH rotation while they are pitching with this kind of confidence.
BOS
Value
VALUE: Boston's starters have been keeping runners off base really well lately, posting a WHIP of just 1.125 despite a tough schedule. The results have been better than their season-long numbers and they are building some momentum. Back the Red Sox rotation at home this week.
COL
Value
VALUE: Colorado's starting pitching has been the best in baseball over the last seven days, giving up just over 2 runs per game with a WHIP under 1.0. This is a massive turnaround from where they have been over the last month. Back the Rockies starters this week and ride the hot streak.
CIN
Value
VALUE: The Reds offense is one of the hottest in the league right now, scoring nearly 7 runs per game this week. Their wRC+ of 152 means they are producing way more than an average lineup, even against tough pitching. Back Cincinnati's bats to keep putting up big numbers this week.
CWS
Value
VALUE: The White Sox lineup has been surprisingly productive lately, ranking among the better offenses in baseball over the past two weeks. They are scoring over 5.5 runs per game this week against a hard schedule, which is a strong sign. Back Chicago's offense to keep contributing while this momentum holds.
Injury & Lineup Log
| Player |
Team |
Status |
Injury |
Impact |
| Max Scherzer |
TOR |
10-day IL |
15-day IL — Right forearm tendinitis and Left ankle inflammation |
Toronto Blue Jays placed RHP Max Scherzer on the 15-day injured list retroactive to April 25, 2026. Right forearm tendinitis and Left ankle inflammation. |
| Tanner Murray |
CWS |
10-day IL |
10-day IL — Left shoulder dislocation |
Chicago White Sox placed LF Tanner Murray on the 10-day injured list. Left shoulder dislocation. |
Max Scherzer
TOR
10-day IL
Injury
15-day IL — Right forearm tendinitis and Left ankle inflammation
Impact
Toronto Blue Jays placed RHP Max Scherzer on the 15-day injured list retroactive to April 25, 2026. Right forearm tendinitis and Left ankle inflammation.
Tanner Murray
CWS
10-day IL
Injury
10-day IL — Left shoulder dislocation
Impact
Chicago White Sox placed LF Tanner Murray on the 10-day injured list. Left shoulder dislocation.
Activated from IL
CWS: Austin Hays — activated from IL
CHC: Phil Maton — activated from IL
COL: Jimmy Herget — activated from IL
MIA: Christopher Morel — activated from IL
Free Tool · mlb.up.railway.app
MLB Stats Tracker
Look up any batter or pitcher on today's slate with rolling performance windows and color-coded data points.
⚾ Batters — AVG/OBP/SLG/HR/K/RBI over last 7/10/21 games
⚾ Pitchers — ERA/WHIP/K/BB over last 2/3/4 starts
🔄 Cache refreshes at 6AM PT daily
Methodology
Rolling windows — 7, 14, and 28-day stats from completed games only. Postponed games excluded.
Momentum — rank_28d - rank_7d. Positive = outperforming recent baseline. Negative = declining.
Schedule strength — Value on Hard schedule is stronger.
ERA-FIP gap — ERA minus FIP. Gap over 1.0 = ERA likely to regress down (unlucky). Under -1.0 = may regress up.
Signals — Value = momentum +5 or more on Avg/Hard. Fade = -5 or worse on Easy/Avg.
Straight rolling ERA with no leverage weighting.
Compass publishes statistical analysis and insights for informational purposes only. Nothing in this newsletter constitutes betting advice.