The transaction fee has nothing to do with the value of the underlying transaction. It's not a percentage of the total value. Rather, it is calculated automatically based on network congestion (e.g., the size of the mempool-- the total number of transactions waiting to be confirmed), and the size in bytes. The more inputs a transaction has, the more bytes it will contain.
Bitcoin custom fees: Back by popular demand, custom fee selection for bitcoin is now available. Users can select a fast, medium or slow transaction speed which corresponds to the necessary fee. Faster transaction times will have higher transaction fees, so please choose wisely!
KeepKey automatically calculates the fee for all other assets so users don't send a transaction with too low of a fee and have transactions stuck for days at a time without being confirmed. In other words, it ensures transactions will be confirmed with a minimal wait time.
KeepKey receives no portion of the fee; fees are awarded to the bitcoin miners who mine new bitcoins and secure the blockchain network.
This is why there is an ongoing debate in the bitcoin community about raising the block size limit. Currently, it is only 1mb so each block cannot fit more than 1mb of transactions in it. As more people adopt bitcoin, the more transactions there are, all of which need to be confirmed.
If you don't want to pay high fees, you can wait a while and hope that the fees drop, but it's impossible to know for sure.