Isaiah J. Downing-USA TODAY Sports

Elias Diaz belted a go-ahead grand slam in the eighth inning and the Colorado Rockies ended an eight-game losing streak with a 7-4 victory over the Los Angeles Angels on Friday night at Denver.

Diaz, Elehuris Montero and Coco Montes each had three hits and Jurickson Profar also homered for Colorado.

Shohei Ohtani and Mike Trout homered for the Angels, who lost their third straight game after winning 11 of their previous 14.

With Colorado trailing 4-3 in the bottom of the eighth, Harold Castro and Ezequiel Tovar singled off Sam Bachman (1-1), putting two on with one out.

Chris Devenski took over on the mound, and Ryan McMahon reached on a fielder's choice when shortstop Andrew Velasquez failed to catch a throw to second from first baseman Jared Walsh. Diaz then clobbered a 1-1 changeup over the fence in center for his ninth homer of the season.

Pierce Johnson (1-3) struck out Ohtani with two on and two outs to end the top of the eighth.

Justin Lawrence fanned two in a perfect ninth for his third save.

Ohtani and Trout both hit 434-foot homers to start the fifth inning off Kyle Freeland, giving the Angels a 4-2 lead.

Ohtani's major-league-best 25th homer went to right-center, while Trout's 16th homer was a high fly over the fence in center.

The Rockies moved within 4-3 in the sixth on Tovar's run-scoring single.

Angels starter Patrick Sandoval allowed three runs and 10 hits over five-plus innings. He struck out three and walked one.

Freeland gave up four runs (three earned) and nine hits in five innings. He struck out three and walked two.

Profar homered to left-center on the first actual pitch of the game from Sandoval. Profar was flagged for delay and given an automatic strike before hitting his sixth blast of the season.

In the second inning, Los Angeles' Hunter Renfroe singled and Kevin Padlo followed with a double off the fence in left-center. Profar fumbled the ball to allow Renfroe to score as Padlo ended up at third. Luis Rengifo followed with a sacrifice fly to give the Angels a 2-1 lead.

The Rockies tied it in the bottom of the second on an RBI single by Montes.

More must-reads:

TODAY'S BEST
Do Oilers need more from Connor McDavid to get to Stanley Cup Final?
All-Rookie teams show gems available all over draft
The NBA has not witnessed this much parity in 50 years
Knicks expected to be 'aggressive' in upgrading their roster
Drew Bledsoe offers advice for Patriots rookie QB Drake Maye
2024 AFC revenge games: Brothers, 'Stefon Diggs Bowl' to take center stage
2024 NFC revenge games: Which game should Cowboys, others have circled?
How All-Star Race victory could turn Joey Logano's season around
Xander Schauffele's triumph could open the floodgates for his career
Anderson Silva, Chael Sonnen will finish off their trilogy in a boxing ring
Ranking the five best MLB free-agent signings of offseason
Veteran WR, former first-round pick announces NFL retirement
Oilers advance to West Final again after holding off Canucks in Game 7
Bengals star WR not expected to sign franchise tender before OTAs
Red Sox RHP diagnosed with ligament damage in elbow
Watch: Caitlin Clark shows off range with logo three, but Fever fall short
Former Dolphins receiving leader announces his retirement from NFL
Detroit Lions dominate PFF's top-25 players under 25
Hall of Famer, legendary Raiders offensive lineman dead at 86
Report: Cavs owner 'would never' trade Donovan Mitchell to this team