Kraken is the largest cryptocurrency exchange in the United States. The platform was launched in 2013 and is known for its advanced trading capabilities, low fees, user-friendly interface and high level of security. According to CoinMarketCap, it has over 6 million active clients and is the fourth largest crypto exchange in the world in terms of trading volume. Next, we will talk about the principles of this platform and how to create a Kraken clone - an exchange with similar functions and similar design.
Business model and monetization
A diagram of directions and components to consider when launching your own cryptocurrency exchange like Kraken.
Kraken is one of the oldest cryptocurrency exchanges in the world and is widely regarded as the best place to buy and sell bitcoins. In its design, it is a traditional centralized site that is operated by a commercial company headquartered in San Francisco, California, USA. The main source of the company's profit is trading commissions and input/output fees.
The amount of commissions and fees depends on the type of operation and the specific asset:
- Kraken Pro. When placing orders to buy, sell or convert an asset, the transaction fee is 0.26% for the buyer and 0.16% for the seller (volume - $ 0-50). It can be reduced to 0.02% for the seller and 0.12% for the buyer (volume - 5-10 million dollars) or reduced to zero for the seller and 0.10% for the buyer if the trading volume is 10+ million dollars.
- Instant purchase. When placing orders to buy, sell or convert assets through the Buy Crypto widget, Kraken has a 1.5% transaction fee. If you buy a stablecoin with another stablecoin or with US dollars, the transaction fee is 0.9%. It is also worth adding here a payment card processing fee - 3.75% + 0.25 €, or an online banking processing fee - 0.5% from each transaction.
- Stablecoins and currency pairs. For EUR / USD currency pairs where stablecoin is the base currency, such as USDT / USD, DAI / USDT, etc., Kraken charges sellers and buyers from 0.20 to 0.00% commission based on trading volume trader's activity for 30 days.
- Margin trading. The platform also charges an additional commission for margin trading both when opening and closing positions: for BTC and USDT it is 0.01% for opening and 0.01% for rollover 4 hours per (quote currency - dollars, euros), and twice as large commissions for ETH, LTC and XRP (quote currency - bitcoins, dollars, euros).
- Futures trading. Depending on trading activity over a 30-day period, the commission for futures transactions ranges from 0.20% to 0.00% for sellers and from 0.05% to 0.01% for buyers. The minimum will be with a trading volume of 100 thousand dollars or more.
When developing your Kraken clone, you can implement a similar monetization model with the same fees and commissions. But this is optional. Nothing stops you from setting your own rates and adding other monetization methods like listing fees, premium accounts, or paid beginner courses.
The main functions of the crypto exchange
The next important part to learn in order to understand how to create a cryptocurrency exchange like Kraken is the functionality of the trading platform. Usually, all functions are divided into basic and advanced. Basic functions are those without which the exchange cannot perform the main task, for example, registration and login, trading engine, deposit and withdrawal of money, liquidity, admin panel.
Registration / Login. This is the starting point for every user who wants to trade on the exchange. The login function acts as a security gateway to prevent unauthorized access to money and data from users of the marketplace, so it should be as secure as possible. This means that, in addition to the usual identifier in the form of a login + password link, you should also add two-factor authentication and / or other security measures, for example, biometric or hardware identification.
After creating an account on the Kraken exchange, the user must be verified. Without this, he will not have access to trading on the exchange.
Source.
User's personal account. Through this functionality, users will manage the visibility of personal data, customize the appearance of the user interface, track and manage their financial flows, and more.
Depending on the target audience and platform (smartphone, computer), the user's account can be as simple and as convenient as possible (if the target audience is newbies), or as functional as possible (if the target audience is experienced traders). In addition, the personal account should allow you to specify and change payment information.
Cryptoexchange trading module. This is the heart of your platform, which will be responsible for matching trade orders and rates, executing transactions, processing commissions and fees data, creating charts, and much more. Here is a more detailed description of the trading engine features that you will need to implement when developing your clone of the Kraken cryptocurrency exchange:
- Matching system. Responsible for the basic trading mechanics of any cryptocurrency exchange. The system algorithm keeps track of all open orders for the purchase and sale of assets in open markets and generates new deals if the conditions of two orders (rate, amount) can be executed by each other.
- Charts (graphs). They allow you to see all fluctuations in the rates of trading pairs in the form of dynamic charts. Most often, crypto exchanges use a trading volume chart or so-called Japanese candlesticks to display the rate. In addition to them, there are also empty candles, bars, kagas, tic-tac-toe and other charts.
- Order form. Responsible for placing buy and sell orders and order books, in which users' bids are displayed, awaiting counter offers. In order for traders of your Kraken clone to always see the actual picture, you should implement this function using WebSocket - a protocol of continuous data transfer between the server and the client.
- Trade history. Collects, groups and shows the user information about already closed deals. Thanks to this, a trader can monitor and analyze the statistics of his trades, which is very important for creating strategies and simply checking his effectiveness as a trader.
Payment services (input/output). The more payment services for input /output of money are available on your platform, the more opportunities you give to your users and, therefore, the more audience you can attract. If you launch an exchange like Kraken, you will need integration with Fedwire, SWIFT, Etana Custody Silvergate Exchange Network (SEN) or other payment systems - PayPal, Strip, Authorize.Net, 2Checkout and others.
In addition, if your trading platform will operate internationally, then you will also have to connect the local payment systems, which are most popular in the selected region. This will greatly improve the user experience, which will expand your audience reach further.
How to choose an integration method and a payment solution provider is described in detail in the article: «How to Choose and Integrate a Payment Gateway on the Site?».
Exchange admin panel. So far, we have described the functions that are necessary to attract traders and investors. But these are not the only end users of cryptocurrency exchanges. In addition to them, employees who support the server side and manage the exchange will also have access to your platform. They will carry out their work through the admin dashboard, which will allow you to control trading, accept or reject access requests, track new user accounts and make sure that nothing goes wrong on the exchange. High-level access to the system will be retained by employees to avoid complications.
Analytical tools. This functionality is necessary for traders to obtain additional information on the markets, predict the movement of currency rates, search and analyze new and existing trends, create and test trading strategies, and much more. In the case of the Kraken platform, after registration, users get access to charts and market analysis tools from TradingView, as well as to several types of trading terminals for traders with different skill levels. When developing your own crypto exchange, you can also use the TradingView API to integrate charts, widgets and other tools for analyzing cryptocurrency markets into your platform.
TradingView charting features.
Source.
Liquidity management. For the successful operation of your exchange, you need liquidity - the property of assets to be quickly convertible into other assets and / or fiat money. Lack of liquidity is a very common problem faced by almost all new platforms, especially if they operate on a decentralized model. In the case of launching a cryptocurrency exchange like Kraken, liquidity can be increased in the following ways:
- By simulating trading activity on the platform, buying and selling assets between two artificial intelligence - trading bots.
- By implementing an API that will connect your exchange to another exchange.
- By combining several cryptocurrency exchanges into one large market.
User deposit. Since Kraken is a centralized exchange, traders must deposit money on their platform to trade on it. Exchanges usually store all the money in user deposits in one wallet, which is needed to create liquidity, while trading transactions between investors (their deposits) are imitation of operations, since in fact, crypto assets do not move between user accounts. Their deposit balances change.
Notifications. They will inform people about account changes, the completion of a transaction, a sharp change in the chosen course, a trading indicator signal, a new message, as well as about promotions, news, social offers and platform updates. In addition, notifications can notify about "strange" transactions with their account, for example, about carrying out several operations to withdraw money without trading activity or errors when entering a password / login during authorization.
KYC / AML. KYC is a procedure for identifying and verifying the identity of a user, and AML is a procedure for verifying the origin of money (that it is not money laundering, corruption or terrorist financing). All exchanges that plan to work with American and European users must necessarily implement these procedures in their trading platform.
Extended capabilities of the Kraken clone
Now let's look at a few functions that do not necessarily need to be implemented when creating your own exchange for trading bitcoins and other cryptocurrencies, but the presence of which can greatly increase the attractiveness of your trading platform. These things include the following functions.
Mobile support. The presence of a mobile application is almost a prerequisite for the success of any modern project. In the case of launching an exchange for trading bitcoin and cryptocurrency, its mobile application can greatly increase the engagement and loyalty of traders, since they will be able to trade anytime and anywhere, and not just being at home or at work with their computer or laptop.
What the Kraken mobile app interface looks like.
Source.
How to develop your own mobile application, like that of Kraken, is detailed in the article: «
How to create a cryptocurrency app?».
Safe crypto wallet. Another thing that can increase the appeal of your platform is developing the same secure wallet as Kraken. For example, you can also add two-factor verification with Google Authenticator and YubiKey, or run a program that will reward you for finding holes in your security system.
Cryptocurrency staking. As with bank deposits, cryptocurrency staking allows you to block a certain amount of funds and start earning interest income. The income from such staking is usually not as large and profitable as with other DeFi options, but it is a great alternative to cold storage, when the assets are simply in the account and do not generate any profit.
Advanced trading capabilities. On Kraken, traders and investors have access to margin trading, futures trading, OTC trading, limit orders, stop orders and more. The presence of these things makes trading more interesting and allows you to significantly increase its profitability.
Integration with hardware wallets. Tech-savvy traders will appreciate the ability to connect their hot exchange wallets to safer hardware wallets. Thanks to this, your platform can become popular among large investors who are afraid of keeping large amounts on exchange deposits, since hackers often rob them.
Credit card integration. Leading exchanges, including Kraken, offer their users the ability to connect a credit card to speed up input/output and pay for everyday expenses with cryptocurrency.
Referral program. A very useful tool for attracting new traders to your site. To implement it, you need to decide what commissions you will have, how much of the profit you are ready to give to those who will bring you new customers, and how long you will give % of commissions.
Social elements. You might also consider adding some cool features based on user communication and interaction. It can be both ratings and competitions between traders, and PAMM accounts.
Architecture and technology stack
Information architecture. It is created at an early stage of development to organize information and visualize navigation on a future application / site. Here is an example of the information structure of a cryptocurrency exchange.
Coinbird / CEX architecture - exchanges for trading bitcoins and other coins.
Source..
An example of a technical stack for developing an exchange like Kraken
:
- SQL databases: MySQL, PostgreSQL, MariaDB, MS SQL, Oracle.
- DevOps: GitLab CI, TeamCity, GoCD Jenkins, WS CodeBuild, Terraform.
- NoSQL databases: MongoDB, Cassandra, DynamoDB.
- Search engines: Apache Solr, Elasticsearch.
- Programming languages: Java, PHP, Python.
- Frameworks: Spring, Symphony, Flask.
- Cache: Redis, Memcached.
An example of a frontend stack for building an app like Kraken:
- Programming languages for web: Angular.JS, React.JS and Vue.JS.
- Programming languages for App: Java, Kotlin for Android and Swift for iOS.
- Architecture: MVVM for Android and MVC, MVP, MVVM and VIPER for iOS.
- IDE: Android Studio and Xcode for iOS.
- SDK: Android SDK and iOS SDK.
Kraken clone development process
Kraken cryptocurrency exchange has been recognized many times as the safest platform for trading Bitcoin and other cryptocurrencies. And if you want to create a clone of it and compete with Kraken and other market leaders, then the best way to do this is through custom development. Yes, it will take more time and will cost more, but this is the only way to ensure an appropriate level of project security and not lose to other sites in this parameter.
The process of developing an exchange from scratch follows this scenario:
- Setting goals. Business analysis of the project idea, market and target audience analysis, definition of exchange functions and design requirements. Drawing up a technical task for the development of a Kraken clone.
- Development of UI- / UX-design. Creation of cryptocurrency exchange architecture, development of user flows, formation of the corporate identity of the brand. Creation of interactive prototypes of the future product.
- Writing program code. Implementation of functions and design of a cryptocurrency platform in code - frontend, backend, mobile application, cryptocurrency wallet, smart contracts, etc.
- Product testing. Vulnerability testing; KYC verification testing; testing deposit and withdrawal of funds; testing the purchase and sale of cryptocurrency; testing the registration process, OWASP testing; API and WebSockets testing.
- Deployment of the release. Placing the created software into a production environment. Providing access to the exchange to users. Platform publication in various listings, mobile application - in App Store, Google Play, Amazon App Store.
- Product support. Training employees to work with the administrator panel, organizing a support service and troubleshooting, collecting user feedback for further improvement of the exchange.
The cost of creating a Kraken clone