getTip

return the cached tip or recalculate it if it is null. Returns null if the tip cannot be determined