it is always the programmer's fault for not thinking ahead about these kinds of bugs. for example a simple comparison (1 line of code) can prevent stuff like this. you fetch the price from 3 sources for example and then compare them. if the price is ridiculous in one of them (like being 200000 in one place or 100) it is obviously a mistake and you automatically ignore it and then save a bug report for the "human" to check it later.
In few years the bug will be the opposite. The '$15,000' tag will be the smallest and you'll need to correct this because BTC will be a lot higher