Our Cryptocurrency Exchange Development Methodology

Naveen Saraswat
Sodio Technologies
Published in
17 min readAug 15, 2018

In this blog, we are going to discuss the nitty-gritty involved in the process of cryptocurrency exchange development. Today, a lot of digital asset exchange software are springing up across the world. This blog is meant for the people who have been looking to make a cryptocurrency exchange (decentralized, or centralized). After finishing this blog, you will be able to understand the following things:

  • Classification Of Digital Asset Exchange Softwares.
  • Scenario Of Decentralized Cryptocurrency Exchanges.
  • Scenario Of Centralized Cryptocurrency Exchanges.
  • Problems that both types face.
  • Technological Advancements that are making these exchanges better.

With passing time, the cryptocurrency sphere has become more and more complicated, more and more intriguing, and certainly, more and more ‘industry-disrupting’ material. It seems like a lifetime ago that the founding technology of crypto, blockchain was developed, back in 2008. Since then, Bitcoin, Ethereum, and other buzzwords have taken over the world in the truest sense of the phrase. For all cryptosphere inhabitants, we believe that it is a good idea to keep themselves duly informed about the latest happenings in the world of blockchain and cryptocurrencies. The developments in these sectors, over the past few years, have been interesting, to say the least. Since the idea of mainstream adoption of cryptocurrencies picked up speed, many individuals and companies decided to cash in and capitalize, by investing in cryptocurrency exchanges. To say this was a good idea would probably be an understatement. The popularity of exchanges has shot through the roof in recent times, and it is fair to say that the graph is ever increasing.

The misconceptions surrounding exchanges

As is the case with any new technology, the hype surrounding exchanges doesn’t come without its fair share of skepticism. Many of these criticisms owe their origins to misconceptions since the topic of cryptocurrency exchanges still hasn’t been perfectly developed. There are a lot of aspects that still need to be ironed out, and we believe that they contribute a fair share to the misconceptions that breed in this sector. We too have been working tirelessly in order to solve these issues with our research in cryptocurrency exchange development. These doubts are further magnified when we consider the situations of centralized and decentralized crypto exchanges on different levels. It is safe to say that these prejudices cannot be ignored in the slightest. With over 2000 people working full-time in crypto-based companies, and about 23–25 million active cryptocurrency wallets in the world, it is only necessary that we remove all sorts of issues and doubts regarding cryptocurrency exchange software from our minds.

Originally Posted Here by Sodio!

When it comes to DEXs and CEXs, skepticisms are magnified, due to the very nature of these two entities. Centralized exchanges(CEX) work like traditional stock brokerage companies, the only difference being that they work on cryptocurrencies rather than other investment instruments. All the users put their trust into the hands of the company, as transactions can only happen through the mechanisms provided by the company running the exchange.

A decentralized exchange(DEX), however, is truer to the idea of a cryptocurrency than a centralized one. We all know that the blockchain was developed as a means to eliminate the need for a middleman in transaction services and to put trust back into the system. A DEX functions in the same way, as it doesn’t hold customer funds, positions or information, rather only provides a routing and matching layer for transactions. The popularity of WavesDEX and EtherDelta is a result of honoring the very legacy that crypto exchanges were built on.

Starting as we mean to go on

Based on our interactions with developers, clients and pioneers of the crypto sphere, and our experiences of developing various crypto exchange platforms, we believe that sharing the knowledge we have about crypto exchanges is a small step towards getting rid of all misconceptions. After all, knowledge is what makes the world go round, isn’t it?

The experience of working on both centralized and decentralized crypto exchanges has taught us some valuable things that every cryptosphere inhabitant should know. We start off by talking about DEXs, and how they are a good idea from a business point of view.

Decentralized Cryptocurrency Exchanges

As discussed before, decentralized exchanges are arguably the true exchanges of the crypto world. From a business standpoint, they present a viable opportunity for growth and trust. Users themselves are in control of their funds and wallets, hence the non-custodial nature of the decentralized exchanges is completely honored. This leaves no place for censorship, as what you see is what you get. About 90% of what users interact with are smart contracts, the remaining is the frontend part of the application. Security, undoubtedly, is one of the biggest advantages of choosing a DEX as a business model. Unless there is a 51% attack on the main network, your exchange simply cannot go down or be infiltrated by hackers. Any knowledgeable person would be able to tell you that executing a 51% attack on a decentralized network would be more difficult than making the earth stop rotating.

We also discussed decentralized cryptocurrency exchanges at Hackernoon. You can have a look at it here.

When it comes to the privacy of your customers, DEXs take the cake again. No user metadata or funds are stored on the network, other than wallet signing requests. Therefore, identity theft and other malicious attacks are pretty much impossible to execute on a DEX network. Atomic swaps and interoperability add to the viability of DEXs as a business model, thus, having a DEX is a sound idea from a business point of view.

Some popular DEX protocols

For developing a stable decentralized crypto exchange, it is important that entrepreneurs, developers, and business persons look for inspiration in some of the already popular and well established DEX protocols out there. We are about to discuss the three major DEX protocols, namely, the Ethereum/0x protocol, Stellar, and the Bitshares DEX. An efficient cryptocurrency exchange development methodology can be established if and only if one has a sound knowledge on what to base his/her DEX on. Without further ado, let’s get started.

The Ethereum/0x protocol

Before diving into what the 0x/Ethereum protocol is all about, let us get up to speed with some terms and concepts that might prove to be of good use.

  1. Maker. An address which originates the trade order. Instead of pushing the order on the order chain, it puts up the order on the network for a suitable Taker to make a request. More on Takers to follow.
  2. Taker. An address that has authority to ‘take up’ an order that a maker has listed. For the complete execution of a trade, both the maker’s and taker’s signatures need to be submitted to the smart contract of the DEX. Compensation for facilitating the transaction also needs to be paid.
  3. Relayer. Mainly used by 0x, relayers are broadcasters of orders through public or private books. Effectively it is the relayers that act as an exchange, facilitating liquidity by hosting the order books of the network. It cannot actually execute a trade, as that is the job of Maker and Taker.
  4. Point to point orders. When makers issue orders with specific takers in mind, the order is referred to as a point to point one. two users can directly transfer funds using point to point orders, through many messaging media.

It is a well-known fact that most DEXs function on the Ethereum blockchain, utilizing ETH smart contracts for their functioning. Users are thus always in full command of what’s happening, rather than trusting a third party with their money, as is the case with CEXs. To ensure that the transaction issued by users are processed on the blockchain, a tiny amount of ETH referred to as gas is levied on each transaction. Essentially, an effective solution to reducing gas prices would be to combine 0x’s off-chain ordering relays with on-chain settlements.

The Stellar DEXs

The stellar network remains true to the very nature of blockchain and decentralization, with independent servers participating in the network facilitating a fault tolerance system in case of dysfunctional servers. Stellar essentially functions as a database which holds data for each and every account on the network, and a complete copy of the global data is hosted on each and every server of the network. Via consensus, the participants verify all transactions taking place on the network, and the global ledger, so to speak, remains in sync across all nodes on the chain.

For instance, if a certain user is looking to transfer a sum of USD 10 to another account, then the list of trusted servers initiate a transaction verification process, which confirms the fact that the account in question has sufficient credit to go ahead with the transaction. If affirmative, then the transaction is verified and sanctioned, otherwise canceled.

An important character in all stellar DEXs is anchors. Entities that users can trust to hold deposits and issue credit into the network are anchors. Anchors mainly serve two purposes,

  • To take the user deposits and issue a house token to the user account address on the network
  • And to make a withdrawal that the user can encash by bringing the house token and exchanging it for any preferred currency.

Thus, anchors act as a bridge between different currencies and the Stellar network. The whole anchor concept makes it easier for users to convert and buy/sell currencies in forex. As is the case with the Ethereum network, there exists a currency native to the Stellar network, called Lumens. It helps in ease of conversion into preferred currencies for users, and also helps users convert to currencies where direct chains are not available. For instance, a customer can convert EUR to AUD, AUD to ETH, ETH to Lumens and then Lumens to USD if a direct conversion path from EUR to USD is not available.

The Bitshares DEX

A financial smart contracts platform, Bitshares enables digital asset trading and value tracking of underlying market pegged assets. Creating an asset-backed token which a user can then trade on the network is what Bitshares does. These tokens are created on a native platform using BTC, USD or other currencies, and relevant details such as token flags, maximum token supply, and token description need to be specified whilst creation of the token. The token creation process can be carried out either by individuals or by companies looking to utilize the Bitshares API to create their own exchange and list tokens on the Bitshares market for trade.

Token creation requires a small fee, payable in BTS, and once the token is created, it can then be traded to acquire the value it was initially meant to. If working on the Bitshares model, users should be able to set their own fees for issuing their tokens. Taking leverage of the interoperability of the Bitshares model is crucial if you are looking to run a full node of the Bitshares client and trade BTS pegged assets.

Having discussed the major DEX protocols, it is important that we also discuss a few key features which potentially could disrupt the way we see DEXs and how cryptocurrency exchange development is done all over the world currently. Although they have made huge strides in the past few years, a lot of scope for innovation still remains, and it is possible that the DEXs we see now may become a thing of the past come 2021. Visualizing what DEXs in the future of the cryptosphere can look like, here are a few key concepts.

Also Read: Crypto Based POS Billing Solution.

Elimination of front-running

As is the case with traditional exchanges, front-running has also been a problem for traders in crypto exchanges. For the honest traders in the cryptosphere (nomenclature not for the purpose of firing shots), front-running continues to be a real problem that must be dealt with one way or another. The major causes of front-running are two-faced-

  1. Total information on orders to miners
  2. Large dependences on this information that miners possess

One method to eradicate front-running can be to implement k-anonymity. Concealing that the transaction is taking place is the way to go, and not concealing the transaction amounts since that can prove to be detrimental. Superficial data points can be added with the regular, actual points so that it becomes almost impossible for fraudsters and people with malicious intent to track down and front run the trade order.

We have been working continuously to eliminate front-running from the digital asset exchange software that is born as a result of our cryptocurrency exchange development practices.

Cross chain swapping and plasma

All up and coming DEXs are looking to solve the grave problem of trade restrictions on a single blockchain. For instance, Neo smart contracts support atomic swaps across blockchains and hence can be a solution to the aforementioned problem. As time passes, we can expect to see more and more exchanges come up which utilize atomic swaps and thus support operability across various blockchains. Our research focus also includes this for our cryptocurrency exchange development practices.

The plasma protocol is a market ready solution to speed up the working of DEXs. Based on enhancing the performances of DEXs to match the throughput of CEXs, they use hierarchical state channel approaches to achieve the same and ensure the safety of assets.

Also Read: UX For Blockchain.

The CEX situation

Enough about decentralized exchanges, why not give some love to their centralized brethren now? As the name suggests, centralized exchanges perhaps do not stand true to the ideology of the blockchain, but as it stands, 99% of crypto trades still happen on centralized networks. Higher liquidity and trade volumes add fuel to the centralized exchange fire, while acceptance of payments in bank transfers, cards or fiat currencies also enables many users to trade. Centralized cryptocurrency exchanges offer a larger pool of functionalities as compared to DEXs, with margin trading, discounts for high volume trading, currency pair trading, and lending being some of the standout features of popular centralized versions of digital asset exchange software out there. Centralized exchanges are sure a great option for your cryptocurrency exchange development project.

Security is where the worry creeps in for most of the cryptocurrency exchange development projects. CEXs have been notoriously known to be immensely susceptible to hacks, as proved by the Bitfinex and the Mt Gox hacks. It all depends on the organization running the exchange, however, and risks can be reduced by using a more robust architecture, but, in all honesty, they simply cannot match the safety of DEXs. Limited privacy and increased risk of identity theft also become a factor which drives the argument in the favor of DEXs. As a wide range of user information is needed to trade on a CEX, the risk of this information falling into wrong hands always looms large. That makes the stakeholders in any cryptocurrency exchange development project start worrying. The good thing, however, is that user accounts are mostly insured, and users are pretty much guaranteed to get their money back should anything go awry. While this is a good backup plan, running your cryptocurrency exchange development project could sure be the right thing to do.

CEX system design targets

To design a CEX that does the job, there are a few key design elements that need to be kept in mind while the development process unfolds. Execution speed, customer features, liquidity, and scalability are a few of the various system design elements that we are about to discuss in the next section of this article. Read on to find out the system design goals that a CEX should hope to emulate/achieve. Let’s find what would mean for the success of a cryptocurrency exchange development project. Here are some of the must-have features:

Liquidity is a must

The volume of trade on a CEX must be enough for buyers and sellers to not run out of the services of each other. Keeping the bid-offer spread low and processing large orders without much movement in their prices is what is effected by having high liquidity. The developer API or the customer order book should communicate to the customer the amount of liquidity in the exchange. Liquidity is a prime focus of about every cryptocurrency exchange development project in the world.

Speed is all that matters

Customers when placing orders should not experience any kind of delay in processing. Your cryptocurrency exchange development project needs to make sure of this. Obviously, orders with set prices cannot be executed instantaneously, but the status of all orders should be made available to customers the instant that they click the ‘place order’ button. This will help maintain a solid user base, and keep the digital asset exchange software running smoothly with no out-of-order transactions. Practices such as in-memory caching of the order book can help developers achieve instantaneous status updates, with the cache being invalidated when triggered by transactions for successful cryptocurrency exchange development. Although a nifty little feature, it needs to be implemented carefully in order to avoid database deadlocks. Speed can increase the adoption of the result of your cryptocurrency exchange development efforts.

Safety of assets

Safety has always been a major issue with CEXs, owing to the incredibly hack-proof nature of their decentralized brethren. This makes it even more crucial for the success of any cryptocurrency exchange development project. Companies should be looking to take all necessary steps to keep the data and finances of their customers safe and sound; while customers do not have access to any of the backend, they must be kept in the loop with suitable communications and alerts. This helps customers build confidence in the CEX, and helps them believe that their money is safe and is with the right guys. Like any other product or service in the world, the customers must be having trust in your cryptocurrency exchange development software.

Although hackers are a legitimate threat to the crypto sphere, they are not the only roadblock when it comes to the security of a CEX. Flawed trading algorithms can perhaps be worse than hacks and breaches, since they are more difficult to recover from, and the investors may actually end up owing money instead of earning it. It may so happen that the system accepts legitimate orders for the exchange, but due to the bug in the trading algorithm, the exchange loses a large part of its assets, and with it, the people’s finances. You will need to figure out a way to avoid this problem in order to make your cryptocurrency exchange development project successful.

Categorising the risks to systems

As discussed before, hacks are not the only danger to crypto exchanges. Here, we discuss and classify the different risks to crypto exchanges, and also talk about how to mitigate them by various additions to the cryptocurrency exchange development project of yours.

Financial Risks

This is the risk that arises due to buggy or glitched trading algorithms. Unprofitable transactions, such as selling below market prices, may be caused due to a glitch in the system. This can, in turn, cause the digital asset exchange software to lose all of its assets. Fortunately, mitigating this risk is a little easier than avoiding hacks. Here is how we do it in our cryptocurrency exchange development projects:

The market prices of assets are updated at extremely small time intervals in any given digital asset exchange software, usually of the order of milliseconds. When there is an unusual move in the house account balance, admins are notified, who can then analyze and check for any suspicious activity. On the automated side of things, orders are only processed when prices match actual or virtual offers. The order book and other features are made sure of being customizable in our white label cryptocurrency exchange solution. This has been incorporated in our white label cryptocurrency exchange solution.

If the aforementioned processes fail, then it is the duty of the exchange to notify customers about the breach/risk, and use whatever means necessary to recover from the loss. Admins follow up after a dedicated service checks the account balance for a negative figure. However easy and futile it may seem, this is of utmost importance in any cryptocurrency exchange development project.

The market maker provides the digital asset exchange software with volume by automated trading. An effective way to minimize risk due to failure in automation is to set up a real-time admin dashboard, open 24X7 to all admin staff that notifies them about irregular changes in account balances and sets up alerts. We have been doing continuous research in this regard, you may get in touch with us and we can discuss it, you might also see a demo in our white label cryptocurrency exchange solution.

Also Read: How to make a Decentralized App.

Identity theft

Identity theft is another happenstance that you must consider in cryptocurrency exchange development. People with malicious intent may attempt to impersonate legitimate accounts, by stealing user login or personal information. They may then attempt to make trades in a false name on the network, resulting in the legitimate account holder to lose a lot of his/her assets. Mitigating this risk is fairly simple and we’ve managed to fix it with our white labeled digital asset exchange software. Two-factor authentication is a popular tool used nowadays to login into all personal accounts, and there is no excuse to why it cannot be used here. Also, original ID validation could be required for traders to trade over a specific amount, set by the organization governing the exchange.

Other security risks

In our research and development about cryptocurrency exchange development, security is the one thing that we never compromise with. Tons of work and hours of research is put into making our white label cryptocurrency exchange software more secure and unhackable.

Corporate espionage can never be ruled out of the picture. It may happen that employees with malicious intent leak out your trade secrets or user information to competitors for personal gain, thus making it very hard to identify the source of the leak and subsequently recover. Like this, there are many other instances where a digital asset exchange software stands the risk of getting hacked. To mitigate these threats, both internal and external measures need to be taken, such as role separation within the organization, and component isolation and DDoS protection external to the organization. The security is probably one of the most detrimental aspects of any cryptocurrency exchange development project.

Keeping in mind the discussed system design goals of the digital asset exchange software, one can design Centralized Cryptocurrency Exchanges which can compete with decentralized ones on all fronts, including security. Although in the current scenario, it is the decentralized cryptocurrency exchanges that need to up their game, security still proves to be a negative point for the centralized exchanges. Incorporating all system design elements discussed here, and doing the basics right is what it takes to develop an effective digital asset exchange software, be it centralized or decentralized.

It may be a good idea from a business standpoint to look into cryptocurrency exchange development, with all the innovations and new tech coming in from all sides, for instance, Stellar and Bitshares DEXs, but it is never a good idea to count out centralized exchanges when you set out on your journey to create a digital asset exchange software. They still rule the roost, due to higher liquidity and trade volumes, even with the lowered sense of security and regulations, people opt to trade on centralized cryptocurrency exchanges. How much time will it take to alter this notion? Only the time will tell. Here’s to hoping that if it does change, it changes for only the better!

Get In Touch for Cryptocurrency Exchange Development!

This was all you needed to know about the digital asset exchange software if you’re looking to start up a cryptocurrency exchange platform. Our Cryptocurrency exchange development has been recognized and been applauded by clients, end-users and other organizations all the same. If you have any doubts or inquiries regarding cryptocurrency exchange development, or just want to discuss digital asset exchange software, feel free to get in touch with us.

Originally published at sodio.tech on August 15, 2018.

--

--