Why does Shylock hate Antonio?
Perhaps Shylock is simply an angry person in general and doesn't like anybody. That's possible, but the text shows specifically that Shylock really does not like Antonio.
Shylock is a Jew, and at the time of the play, Venetian laws segregated Jews with extra laws. Antonio is a Christian, and Shylock sees Christianity and Christians as the reason Venetian law is what it is. In fact, Shylock specifically states that he hates Antonio, because Antonio is a Christian man.
I hate him for he is a Christian...
Shylock is a money lender. He also charges high interest rates. That wouldn't be a problem if he was the only money lender around or all of the other lenders charged the same interest rates. That isn't the case, though. Antonio also lends out money at times, and he doesn't charge any interest. Shylock hates Antonio because he is a business rival that is massively undercutting his business.
But I think the main reason that Shylock hates Antonio is because Antonio has publicly insulted Shylock and spit in his face. It would be tough to walk away from that perfectly cheery and happy.