Currently, forx does't support amounts that aren't whole integers. For instance, forx btc usd -q .12 returns forx: error: argument -q: invalid int value: '.12'. Changing the type from int to float on line 72 in convert.py seems to resolve the issue, but I'm unsure of repercussions. I'm more than happy to submit a PR for this as well.
Attempting to convert coins such as XMR, BNB, SAND, NEAR, KLAY, etc return "Invalid currency ." error, I have confirmed these are the names used for these coins on the Coinbase website.
Steps To Reproduce:
Attempt to convert failing coin - forx XMR USD
It's possible this isn't an issue with your application and is instead an issue with the coinbase API. Further testing indicates that lower ranked coins past the 2nd page seem to all fail.
I tried to use an environmental proxy to connect via the Tor network, but it seems that python-requests doesn't bypass cloudflare since I got an error. I tried with the tor browser and it works.
I think that this should be solvable by modifing the http headers.
Most currencies uses two decimal places, but some of them use more or less. For example: BHD uses three.
The decimal places needed for every fiat currency are available in the currencies data provided by #8. For crypto currencies I think that we shouldn't round the price, we should display the price as it is. It there any other idea?