No, you can’t *
It’s your fault, you didn’t do enough research. Suck up the loss and move on.
It’s passenger’s responsibility to ensure all the required visas are in order for their itinerary. It’s nobody else’s responsibility and you can’t claim a refund for it unfortunately.
I do sympathise with you but trying to look for compensation in this case will be just a waste of your time.
On a side note: UK’s website for checking your visa requirements and exemptions is one of the most straight forward and easy to understand ones and it clearly says what the check-in staff said.
Answering your extended question from comments: Embassies don’t care about initeraries and visits to or transits through any countries other than their own. They can and do provide visa services only for their own country (or some friend countries not providing direct visa services in your country) and they do not care if you have other visas for your route.
* You could if their statement or the reason for refusal was wrong and you really did have an exemption.