Garrett Richards (1-0) allowed one run on three hits with five walks and seven strikeouts in five innings.
Lucas Harrell (0-1) was roughed up for five runs on seven hits with three walks and three strikeouts in three innings.
Trout hit a solo homer in the first inning and Hamilton hit a three-run drive in the sixth off Jerome Williams that made it 8-1. After Erick Aybar's RBI single, Calhoun added a two-run shot off Williams.
Jose Altuve had two hits and a bases-loaded walk in the fifth inning.
The Astros loaded the bases in the fifth and sixth innings but were only able to get the one run as Richards struck out Marc Krauss to end the fifth and Fernando Salas struck out Marwin Gonzalez and induced an Alex Presley ground out to end the sixth.
NOTES: Astros outfielder Dexter Fowler was out of the lineup and not at the park because of a stomach illness. Through three games, Fowler is hitting .500 with a home run and three RBIs. He recorded his third consecutive multi-hit game Thursday night. . Houston catcher Jason Castro was out with a bruise on his right foot but said he feels much better on Friday. Castro is day to day. .. Aybar picked up his 900th career hit with the single in the seventh. He became the third Angels shortstop to reach that mark joining Jim Fregosi and Gary DiSarcina. .. Houston will send left-hander Dallas Keuchel to the mound against Los Angeles left-hander Tyler Skaggs in the second game of the four-game series.