When creating custom entity you will use "BaseFieldDefinition" code snippets where you will define many things about this field, one of the things you may want to define is suffix or prefix that will be used in display of this field either on entity view or on views that use this field. To do that you will add it to setSettings array simple as 'suffix' => '%'
$fields['percent_change_1h'] = BaseFieldDefinition::create('float')
->setLabel(t('Percent change 1h'))
->setDescription(t('Percent change in 1h.'))
->setSettings([
'max_length' => 10,
'suffix' => '%',
])
->setDefaultValue('0')
->setDisplayOptions('view', [
'label' => 'above',
'type' => 'number',
'weight' => -2,
])
->setDisplayOptions('form', [
'type' => 'number_decimal',
'weight' => -2,
])
->setDisplayConfigurable('form', TRUE)
->setDisplayConfigurable('view', TRUE)
->setRequired(FALSE);