So relatively, fees should be like tolls and not relative to the number of traffic. However, when BTC started its bull run in fall of 2017 through early 2018, fees were also increased and this was due to traffic. I think it was just an unusual anomaly. But is there a specific calculation for fees?
fees have nothing to do with "traffic" or "high USD value" of bitcoin. it has not changed ever since fees were introduced to bitcoin. fees are there to prevent spam attacks, practically to prevent them from being able to go on forever since it makes them more and more expensive to attack bitcoin.
obviously the amount of fee you pay first depends on the size of your transaction. if your tx size is 180 bytes you will pay a lot less fee than if your tx size is 100000 bytes (~100 kilo bytes).
also you can think of fee as a competition for a place in the block. there is always going to be a limited block size whether it is 1 MB or 100MB. when it is empty you can pay the minimal amount or even 0 and get that space. but when that space is full you will have to compete with others and pay a higher fee to be able to get that space.
the reason why fees sometimes go up during bull runs is that there are more transactions being made on chain so the blocks are full since there is more transactions. you can call this "traffic" but it is a traffic that is higher than capacity. which is why there is more competition and the fees go up. this can increase both on rises and falls as people make more transactions in both cases.
however in 2017 alongside that competition we had a serious case of spam attack which made everything 10 times worse.