How to run an ethical Bitcoin exchange

In light of the FTX meltdown and the cascading effect on other exchanges I thought I’d put out my thoughts on how someone could set up and run a trustworthy Bitcoin exchange.  I’m not an expert on any of this, and I don’t know all the mechanics behind the scenes, but this is just a broad overview to get anyone who wants to run with it started.

A quick explanation of terms:

  • Bitcoin is (in the US) considered an asset, it’s treated like your home or more appropriately gold.
  • Crypto currency is (in the US) considered a security, it’s treated like stock and subject to more regulation

Non-custodial exchange

Right now you can store Bitcoin (and crypto currency securities) on the exchange where you buy it.  A trustworthy exchange should be a non-custodial exchange, meaning when you buy Bitcoin you have to provide a wallet address that the Bitcoin is sent to.  The exchange will never hold your Bitcoin for you.  The same should be true in reverse, when you send Bitcoin to the the exchange you should tell it how much you want to sell and then the exchange will prove an invoice with the address and QR code to request the exact amount needed to fill the request.

The issue comes along when you think about USD, it costs money to move USD (more than the Bitcoin fees).  So USD deposited into the exchange would be held for a set amount of time after which it would be returned to the depositor with a small ACH fee removed.

But how will the exchange make money?  On every buy and sell page the fees will be listed, the fee to send the Bitcoin and the $0.04 per dollar fee for the exchange.  This amount won’t make you rich by any means, if the exchange has 100,000 weekly users buying $10 worth of BTC that’s only $40,000 per week.  But if you tie this in with other related business you can support the exchange.  Maybe you run a retail payment terminal business that supports traditional credit and debit payments but also supports BTC and Lightning payments.  Well you will already have the infrastructure built up to support the payment network so the exchange can run next to that with minimal added overhead.

User account vs. Exchange account

When you deposit your money into this exchange it should be placed into the user account pool.  This user account pool would hold all the money deposited by the users and would be off limits to the exchange for operating costs.

When the exchange takes its $0.04 fee from each transaction it would be sent to the exchange account.  This is where the operating costs for the exchange would be paid from.

Both accounts would be interest bearing accounts to provide a little more money to the exchange.  The user account would build interest to help cover any rise in the price of BTC when users sell.  The exchange account would provide a little more capital for operating expenses.

Now sure I know what you’re thinking, “I only get $0.01 per month on my interest bearing account” true but when you have large amounts of cash in an account the banks will give you a higher interest rate and the large amount of money will generate more.  This is why when you buy something at the store they take your money right away but if you return the item they take 7 days to give you your money back, they are holding it for long enough to earn some interest on the money before giving it back to you.


Everyday at a set time, I’d suggest midnight GMT, the exchange should publish its books.  Everyday it will publicly show it’s holding for the world to see and verify.  If you don’t like something you see you can leave.  Obviously this would not include individual user balances, but just a broad overview of the accounts and holdings.  I would suggest the following:

  • Profits vs. loses
  • User account balance
  • Exchange account balance
  • Outstanding loans
  • Outside holdings balance

This would give every user a better idea of how the exchange is doing and if they can trust the exchange going forward.


So there you go, the basic idea I have for a trustworthy exchange.  Did I miss things?  Of course, I’m not an expert and don’t know the details.  Can you improve on the idea and actually build this exchange?  Yep, have fun.  Sure you can add in crypto currency securities if you want but if I were running the exchange it would be Bitcoin only.

This post is under the oppy Open Source License

Copyright <2022> <>