Free agent Carlos Beltran has agreed to a one-year deal worth $16 million with the Houston Astros, a source told ESPN's Buster Olney.
The deal also includes a full no-trade clause, according to the source.
Beltran, the top player in the deadline-selling Yankees' lackluster offense this past season, was sent to the Rangers on Aug. 1 for right-hander Dillon Tate and two other pitching prospects.
A 39-year-old switch-hitter, Beltran led the Yankees with a .304 batting average, 22 homers and 64 RBI, and finished the year with 29 homers, 93 RBIs and 163 hits.
Beltran signed a $45 million, three-year contract before the 2014 season but played with an elbow bone spur during much of his first season in New York and got off to a slow start in 2015 following surgery.
He was traded from Kansas City to Houston in June 2004 and from the New York Mets to San Francisco in July 2011. While he has appeared in the playoffs with the Astros, Mets, Cardinals and Yankees, Beltran remains in search of his first World Series title, as did the Rangers.
A nine-time All-Star after making this year's AL roster, Beltran has a .281 career average with 414 home runs. He has a limited no-trade provision in his contract, but the Rangers were not among the 15 teams he could not be dealt to without his consent.