Character data is stored internally in the server character set that is designated for that column in the table definition (default is LATIN1, a superset of ASCII). The mapping of character and control codes from EBCDIC to LATIN1 is documented in Appendix D of the "International Character Set Support" reference manual.
Since the EBCDIC NL (0x15) character has no standard equivalent in LATIN1, Teradata maps it to 0xd5 (uppercase O with tilde). I don't know why that particular mapping was chosen, but it probably goes back to the very earliest version of Teradata.
The bottom line is: If character data is to be shared by both ASCII and EBCDIC clients, it should only use characters and control codes that are common to both character sets.