So let's say I've found two different exchanges where prices of selected cryptocurrencies is varying quite a bit.
How to arbitrage?
Should I buy some BTC at let's say 3.700 then send this amount to second exchange where I will sell it for 3.900? The profit here is that I have more fiat and I can't really multiply this process (or maybe I can send earned money to the first exchange again, but it takes a lot of time).
Am I seeing this right?
You should have an equal balance between two exchanges like you have 1 BTC in first exchange and 1 btc in second exchange and equal amount of fiat as well in two exchanges. If ever you see that one exchange has the lowest ask price amounting to $3,700, you buy it at that amount and then you see in another exchange it has the highest bid price amounting to $3,900 so you sold your bitcoin to that amount. You can do it immediately since you already have the balance of both fiat and bitcoin in two exchanges.
After the orders are filled, you can then send the bitcoin to one exchange and the fiat to the other so that it will be balance again and you already have a gain of $200 without transaction fees. You should not arbitrage like buying one currency then send it to other exchange to sell because it would take time and price might already change before its received and worse you will lose because of it.