La documentazione di ibernazione dice:
lt.trade.volume
è un implicito inner join tra LocationTrade e Trade, quindi la query non è valida. Dovrai riscriverlo in qualcosa di simile al seguente:
update LocationTrade lt set lt.hasVeryHighVolume=true where lt.locationIndices=?
and lt.id in (
select lt2.id from LocationTrade lt2 where lt2.trade.volume > 20000)
Oppure dovrai invece utilizzare una query SQL.