As statement in your system's or your own init file. By launching GNU
Emacs with -q you can check, whether it's the system's one: if you
still see the €, then it's not the system's init file which converts
it to ¤. I already gave you a hint: "display table." I don't use any,
so I can see € and ¤.

If this does not help, bisecting can. It's a method of commenting one
half of your init file and launching GNU Emacs. When the error is
gone, then it's in the commented section. Otherwise it's in the not
yet commented section. Now take care of the culprit section and
divide it. And so on, until you've located the guilty line.

--
Greetings
Pete

Theory and practice are the same, in theory, but, in practice, they
are different.