Well the title pretty much sums up my question but here is an example: Lets say that my site is hosted in Greece and the domain is also registered to an address in Greece will this affect my position in Google for US results or it doesn't matter where the site is hosted.
Better use your country TLD or one of the generic TLDs. Talking about hosting, it doesn't matter where are your server to search engines.
I have read that the Ip location on the server actually takes a part on positioning and search engine location, is better to find a USA located server or a server located were you want your visits to come from
I think it makes a difference. Better to host where your customers are. Even if the search engine serves your results, your pages will load faster if they are coming from a server physically closer to your customer.
If google can not determine the location from the tld of your site it will look at the location of the ip address. I think it makes sense to have both your tld if country specific and your server in the same country. Further to this some advantages can be had by using a unique ip and your own dns.