Cruz won't run in 2018, but if he does he'll have primary troubles and not be the GOP nominee.
Why would he not? He's 44 and will not be the presidential nominee.
Because at this point he'd be just as effective as a right-wing radio talk show host as he is a U.S. Senator.
Cruz has absolutely zero political capital in Washington - the Senator realizes that and Texas Republicans also recognize it.
And, if Cruz were interested in a 2020 presidential run, retirement in 2018 might be a better option for him because it would prevent him from having to take two years' worth of votes in advance of an election.