Díaz returned to action in 2010, making 2 appearances for the rookie–level Gulf Coast League Astros. He spent 2011 with the Low–A Tri-City ValleyCats, posting a 7–3 record and 1.98 ERA with 70 strikeouts across 50 innings pitched.[3] Díaz spent the 2012 campaign with the Single–A Lexington Legends, registering a 5–4 record and 1.85 ERA with 64 strikeouts and 19 saves.[4] He elected free agency following the season on November 2, 2012.
Chicago Cubs
On December 31, 2012, Díaz signed a minor league contract with the Chicago Cubs.[5] In 13 appearances split between the rookie–level Arizona League Cubs, High–A Daytona Cubs, and Double–A Tennessee Smokies, he compiled a 3.00 ERA with 29 strikeouts over 21 innings pitched. Díaz was released by the Cubs organization on August 24, 2013.[6]
Boston Red Sox
On December 5, 2013, Díaz signed a minor league contract with the Boston Red Sox organization. He split 2014 between the High–A Salem Red Sox and Double–A Portland Sea Dogs, posting a combined 1.80 ERA with 56 strikeouts and 7 saves across 50 innings.[7]
Díaz split the 2015 season between Portland and the Triple–A Pawtucket Red Sox, compiling a 1.73 ERA with 66 strikeouts and 6 saves over 37 appearances out of the bullpen.[8] He elected free agency following the season on November 6, 2015.
Cincinnati Reds
On November 25, 2015, Díaz signed a minor league contract with the Cincinnati Reds organization.[9] On May 22, 2016, Díaz was selected to the 40-man roster and promoted to the major leagues for the first time.[10] In 6 appearances for Cincinnati, he struggled to a 9.45 ERA with 3 strikeouts across 6+2⁄3 innings. On June 18, Díaz was removed from the 40–man roster and sent outright to the Triple–A Louisville Bats.[11] He elected free agency following the season on November 7.[12]
Houston Astros (second stint)
Díaz signed a minor league contract with the Houston Astros on January 21, 2017.[13] On May 5, he was promoted to the major leagues to replace Michael Feliz, who went on Family Medical Emergency leave.[14] Díaz was designated for assignment on August 31.[15]
Los Angeles Angels
On September 4, 2017, Díaz was claimed off waivers by the Los Angeles Angels.[16] On March 29, 2018, the Angels placed Díaz on the restricted list after he failed to report for spring training due to visa issues.[17] On August 14, he was designated for assignment following the acquisition of Odrisamer Despaigne.[18] Díaz elected free agency on October 11.