How does Coinmarketcap calculate the USD price for Bitcoin? I'm doing a school project in which I'm building my own bitcoin price index similar to coinmarketcap. I want to calculate the USD price for bitcoin by using volume weight averaging from multiple exchanges. Some of the exchanges don't offer USD or any foreign currency (EUR, GBP, etc) trading pairs. 

I thought I understood how coinmarketcap calculated the price, until I looked at their BTC markets page. I see they're averaging in USD prices of altcoin pairs like TRX/BTC, XRP/BTC, etc as well.  

So can someone explain how they determine the USD price (on the BTC markets page) of, for example, TRX/BTC on the Bit-Z exchange without first knowing the actual USD price of BTC? I don't understand where they're getting the USD price of TRX/BTC if its also being factored into the final USD price of BTC as well. 

And when I add up the volume percentages in the "Volume (%)" column, it doesn't add up to 100%. More like 94%. Anyone know why that is? 

I'm not a mathematician, so maybe there's a simple answer to this.
CoinMarketCap takes necessary information like volume and price changes from exchanges and calculates their average.
That's why they delisted some of the Korean exchanges earlier, as you may have seen that their prices are too high when you compare it to other exchanges around the world, which causes price jump and misleading for investors.