次のように orderBy に渡される値関数があります。
function getValue(item){
return [parseInt(item.approx_value_usd) || -1];
}
これは間違いなく常に数値配列を返しますが、何らかの理由でフロントエンドの AngularJS では常にプロパティ 'approx_value_usd' の辞書順でアイテムを並べ替えます。
88 > 82 > 8 > 53 (違います!)
何かが足りないような気がしますが、この問題でどこにも行けないようです。