usually negative numbers in Modbus are requested as signed integers either int16 or int32 which have a range from -32768 to 32767 or -2,147,483,648 to +2,147,483,647 respectively. If using unsigned uint16 or uint32 the ranges are from 0 to 65535 and 0 to 4294967295.
This might be completely erroneous for your situation but just putting it out there.