That's just not the case.
For a good geocoder, you need many other data sources (which can be open). OpenAddresses (https://openaddresses.io/) is an example of a vital dataset to delivering anything of any quality.
Returning real results requires extensive parsing and awareness of addresses and place data (including localization of them), and this is not something you get for free based on OSM data.