The correct option is
C I haven't bought anything today.
Option B: 'Haven't bought' is in present perfect tense. It is the same as the given sentence 'have you bought'. The present perfect states an action that has recently happened. It agrees with the sentence, where the action happened recently 'today'.
Hence option B is correct.
Option A: 'Didn't bought' is grammatically incorrect. 'Did' is already a past tense verb that refers to a past action. So, it is followed by the base verb 'buy', and not the past verb 'bought'.
Option C: 'Hadn't bought' is in past perfect tense. It states an action that completed in the past. But the action here completed in the present 'today'.
Option D: 'Am not bought' is in passive voice, since it follows the syntax for past tense in passive voice 'am + not + past participle 'bought'.
The meaning is incomplete since it means that the person 'I' was not bought by anybody.
Hence options A, C and D are incorrect.