Cryptocurrency exchange engine
Cryptocurrency exchange engine is a digital market where traders can buy and sell bitcoins and altcoyines at market established exchange rates.
Cryptoexchange is an online platform that acts as an intermediary between buyers and sellers of cryptocurrency.
For each currency represented on the exchange, a unique ticker is used: for bitcoins - BTC or XBT, for Etherium - ETH, etc.
Bitcoin exchanges help buyers with sellers. As on the traditional exchange, traders can choose: to buy and sell coins, placing a market (market) or limit order (limit order).
When a market order is selected, the trader allows exchanging his coins for others at the best available price on the online market. This is an immediate transaction at the best price.
When a sell order is placed, the trader directs the coin exchange at a price lower than the current demand or above the current rate, depending on whether he buys or sells. This is an application with a price limit.
For example, on the exchange, three coin sellers are asking
BTC / USD 19265.65,
BTC / USD 20,269.55
BTC / USD 22790.40.
The trader, who initiates a market order for the purchase of bitcoins, will execute the order at $ 22,790.40, as far as the coins in the offer are enough.
Nevertheless, a trader who thinks he can get bitcoins for the best price can set a limit order, say, for $ 19210,00. If there is such a rate from the seller or below, the order will be executed.
Internet-exchange cryptocurrencies usually use the "maker-taker" model.
When a buyer or seller places a limit order, the exchanges add it to the order book until the price is matched with the other side.
All stock exchange cryptocurrencies have commission fees for transactions that apply to each completed purchase and sale order conducted through the exchange. The rate depends on the volume. For example, Poloniex has its rate from 0 to 0.25%, the GDAX fee varies from 0 to 0.30%, the Kraken fee ranges from 0 to 0.36%, and Paxful - 1% of the sales amount for the seller, but the buyer not taken.
For example, according to the model maker-taker from Bittrex:
0% -0.1% (Maker)
0.1% -0.2% (Taker)
Types of cryptoexchange exchanges
Trading platforms. These are websites that connect buyers and sellers and charge a fee for each transaction.
Direct trade. These platforms provide tools for direct exchange between people. Direct trading exchanges do not have a fixed market price, instead each seller establishes its own exchange rate.
Brokers. These are sites that anyone can visit to buy currencies at a price set by the broker. cryptocurrency brokers are similar to foreign currency dealers.
cryptocurrency funds. They are a pool with professional management, in which you can buy and hold assets in the cryptocurrency. One example is GBTC.
How to Start Your Own CryptoCurrency Exchange
Specify which things you need to consider before starting your own bitcoin / crypto exchange, how to structure the internal architecture of the software and, most importantly, where you can get the software for the exchange.
Decide where you want to do business
Regardless of whether you want to work globally or restrict yourself to a specific region or country, you usually need to obtain the necessary licensing and approval for the company to open the exchange in accordance with operational coverage. Laws vary from place to place, therefore, consult a legal expert on licensing and compliance with local laws and regulations.
Learn about the relevant rules in this area
Almost all governments require organizations that participate in financial bills to follow the rules of "Know Your Customer" (KYC). This is the process by which a business checks the identity of its customers on government-issued identity cards or passports. The main goal is to counter money laundering. Make sure that you adhere to the country's KYC standards and integrate a suitable procedure for checking customers on the exchange. Otherwise, it threatens prosecution.
Join a partnership with a bank or payment processor
You need to cooperate with a bank or processing to process payments through a currency. Choosing a reliable bank with a lot of online services is a good option. This is more relevant in developing and underdeveloped countries, where most banks do not have an opportunity to conduct an immediate online banking transaction. Transactions can take up to two days. Partnership with the bank, which has a quick clearing and settlement of funds, will provide convenience for the client. Adding and withdrawing funds can be automated through a payment gateway or done by hand.
Set the transaction history and liquidity on the exchange
Every exchange needs liquidity for successful work. Customers do not dare to place orders or even invest if they do not see a large order book and active trading activities. New cryptoexchange exchanges, of course, face liquidity problems. There are three established ways to increase liquidity:
-You can simulate trading activities within the exchange by buying and selling between two artificial bills.
-You can implement an API that links your exchange to another existing exchange.
-You can join an entire network of crypto-exchange exchanges, such as Trust-Deposit, which combine the liquidity of all exchanges in your network. The larger the network, the higher liquidity.
-Introduction of the best security methods
-Any exchange requires a first-class security system to ensure that the funds of the operator and his traders remain intact. This should apply to personal data of customers, which include personal data and information about the bank account. According to Reuters, a third of all bitcoin exchanges operating between 2009 and 2017 were hacked. The main emphasis: safety should be a top priority.
Finally, customer support is another important component of a successful exchanger or exchange. The staff is needed to verify KYC data, respond to complaints, process deposits and withdraw cash, etc. A fast technical support mechanism ensures that customers do not disperse at the first problem.
The architecture of the software for the exchange of cryptocurrencies engines
Any software on the exchange has these four different components that work together:
1. The trading mechanism. It must be the core of any exchange. He refers to a book of warrants, seeks compliance with orders for purchase / sale, performs transactions and calculates balances. Without a trade mechanism, the exchange can not function.
2. User interface (UI) or front end of the exchange website. This is how traders see the stock exchange. Any interface should be convenient and intuitive. It should also be adaptive, as the use of smartphones is constantly growing. A special application for mobile devices will make the exchange more accessible, which, in turn, can strengthen the presence of traders. Ideally, the user interface should allow the user:
Registration and access to the account,
Deposit, maintenance and withdrawal in the Crypto and Fiat,
View current order book, past transactions, balances, statistics, etc.,
Requests for purchase and sale,
Access technical support.
3. Wallet. The purse is a demo of bitcoins, launched on the server of the exchange. It stores bitcoins and other cryptocurrency (the exchange operator and its traders), so it needs maximum security. Any exchange must introduce a so-called hot / cold purse system for risk diversification.
A hot purse is a bitcoin-gateway of the exchange, it allows the client to instantly withdraw the bitcoins to an external wallet without the need for permission from the exchange operator. A hot purse should have a positive balance for instant withdrawal, which can be set in accordance with the turnover of the exchange.
A purse with cold storage is located where the remains of coins are stored. This wallet is completely self-contained, which guarantees: no one can gain access to the remaining bitcoin, even if the hot wallet is hacked (so it is always advisable to postpone a certain amount of cryptocurrency to purses with cold storage). A simple wallet for storage can be a piece of paper or USB-drive, which contains personal keys.
The division of the Exchange's cryptocurrency Exchange into a hot / cold wallet system provides an ideal balance between security and convenience.
4. The administration panel. On the exchange, it is the equivalent of business intelligence and management software. This helps the exchange operator to manage the exchange and control it. Functions should include:
Change in liquidity,
Editing the spread and trading fees,
Confirmation of user accounts, after checking KYC or other requirements,
Management of currencies such as BTC, USD, ETH, etc. And markets such as USD / BTC, BTC / ETH, etc.
Crediting of fake deposits or debiting the withdrawal of funds requested by users,
Appeal to requests for technical support.
Thus, these four components should form the basis of any exchange software.
Where can I get the software for the exchange (cryptocurrency exchange engine)?
There are three options when it comes to the acquisition (and maintenance) of bitcoin-exchange software:
Create your own software: build a team of developers (friends, freelancers) to create (and maintain) your software. Make sure that they understand how the stock exchange works in general, how encryption technologies work, and that they implement the above components.
From the point of view of the programming language, the choice of the correct language can vary depending on what kind of cryptocurrency you want to implement for your exchange. In addition, make sure that the software is compatible with various payment processing platforms or banks to protect payment transactions within the exchange.
Most importantly, you need to assess the costs and time associated with the development, maintenance and continuous updating of software within the company. Due to the inherent complex nature of the development of the exchange from scratch will be quite expensive and can take 1-2 years (depending on the experience of the developers) until it works properly. Depending on the salary, experience and functions that you want to include in your exchange (multiple languages, currencies, mobile application, etc.), development costs range from 300,000 to 400,000 euros.
Using free scripts / open source: if you visit GitHub or other forums, you saw quite a few files on open source exchanges. A big advantage, obviously, is that the source code is free. However, there are also several risks that need to be considered:
You still need someone with technical knowledge to understand and implement the code in an open source scenario.
The amount of support in an open source system is rather modest. In most cases, your development team will be left to itself to figure out how to fix errors or improve performance. In the worst case, if the project is abandoned, you will have absolutely no support.
Firmware: this software, which has already been thoroughly tested and tested in work (in particular, on the trading mechanism!). It allows you to customize and modify the program according to individual requirements (for example, design, branding, languages, currencies, charts, etc.).
A great advantage of using proprietary software is that you get rid of the hassle associated with technical requirements, implementation and constant maintenance. Since the main components (trading engine, wallet, user interface and admin panel) are already developed and tested, it remains only to "customize" everything at your discretion. You save time, because the setup time is much shorter (usually several months), and save a lot of money, because you pay significantly less for a software license compared to its development (fee starts from 10,000 euros).
What you need to check when choosing an exchange
Before you start trading on the stock exchange, it is important to do a little analysis.
Reputation. The best way to learn about the exchange is to search for reviews from individual users and well-known sites. You can ask any questions that may arise on forums such as BitcoinTalk or Reddit.
Fees. Most exchanges place information on fees and their terms. Before joining, make sure that the input, transaction and withdrawal fees are transparent. Tariffs can vary significantly depending on the exchange.
Payment Methods. What payment methods are available on the exchange? Credit / debit card, PayPal, Yandex.dengi, other wallets? If the exchange has limited payment options, it may be uncomfortable. Remember that buying assets with a credit card always requires an identity check and has a higher price because there is a high risk of fraud. The acquisition of cryptocurrency by bank transfer will take considerably longer, since processing takes time.
Requirements for verification. The vast majority of trading platforms require identity cards to make deposits and withdrawals. Some exchanges will remain anonymous. Although a check that can take up to several days may seem terrible, it protects the exchange from fraud and money laundering.
Geographical restrictions. Some specific user functions offered by the exchange are available only from certain countries. For residents of other countries, it can be closed.
Exchange rate. Different exchanges have different rates. In some cases, the difference in rates ranges from 10% or even higher.