Graham Ashcraft punched out 10 batters over seven innings of work to lead the Cincinnati Reds to a 4-3 win over the Los Angeles Angels.