0xProject / standard-relayer-api

Standard specifications for 0x relayer public APIs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Currency pair standards / price notation

riteable opened this issue · comments

I don't know if this is the appropriate place to discuss this, but I will throw it out there.

At this point the protocol or the relayer API standards state nothing about price and currency pair standardization. This is understandable since it's mainly a UI issue. Nevertheless, I think it might be fruitful to have discussion about this.

The regular forex market has an informal standard in place which makes sure that a currency takes prcedence as the base currency. For example, Euro/Dollar prices are always noted as EUR/USD and never as USD/EUR.

The problem is that reverse prices can be confusing to the users who are used to seeing only one side of the price notation.

I think we should have a standard which makes sure prices are always displayed in a certain format. Maybe something simple and neutral as alphabetical order, for example GNT/REP and never REP/GNT. Maybe add an exception to the rule where WETH takes precedence as base currency, since all centralized exchanges list prices in relation to ETH.

I'm trying to setup a relayer at the moment and this is a pretty annoying issue. And I know the guys from Radar Relay are running into the same problem, so it might be worth standardizing this somehow.

This is definitely annoying, but I don't think alphabetical order is the way to go. Most relayers will probably choose quote/base tokens by popularity or volume, so it's difficult to pick a hard rule. I'm also not convinced this is more than a UI issue. Anyone trading programmatically can easily define their own rules around this and would be completely unaffected by how the relayer decided to display the tokens.