News about Empirica, algorithmic trading and software development.

Now Crypto. Lessons learned from over 10 years of developing trading software

By Michal Rozanski, CEO at Empirica.

Reading news about crypto we regularly see the big money inflow to new companies with a lot of potentially breakthrough ideas. But aside from the hype from the business side, there are sophisticated technical projects going on underneath.

And for new cryptocurrency and blockchain ideas to be successful, these projects have to end with the delivery of great software systems that scale and last. Because we have been building these kinds of systems for the financial markets for over 10 years we want to share a bit of our experience.

“Software is eating the world”. I believe these words by Marc Andreessen. And now the time has come for financial markets, as technology is transforming every corner of the financial sector. Algorithmic trading, which is our speciality, is a great example. Other examples include lending, payments, personal finance, crowdfunding, consumer banking and retail investments. Every part of the finance industry is experiencing rapid changes triggered by companies that propose new services with heavy use of software.

If crypto relies on software, and there is so much money flowing into crypto projects, what should be looked for when making a trading software project for cryptocurrency markets? Our trading software development projects for the capital and crypto markets as well as building our own algorithmic trading platform has taught us a lot. Now we want to share our lessons learned from these projects.

 

  1. The process – be agile.

Agile methodology is the essence of how software projects should be made. Short iterations. Frequent deliveries. Fast and constant feedback from users. Having a working product from early iterations, gives you the best understanding of where you are now, and where you should go.

It doesn’t matter if you outsource the team or build everything in-house; if your team is local or remote. Agile methodologies like Scrum or Kanban will help you build better software, lower the overall risk of the project and will help you show the business value sooner.

 

  1. The team – hire the best.

A few words about productivity in software industry. The citation is from my favourite article by Robert Smallshire ‘Predictive Models of Development Teams and the Systems They Build’ : ‘… we know that on a small 10 000 line code base, the least productive developer will produce about 2000 lines of debugged and working code in a year, the most productive developer will produce about 29 000 lines of code in a year, and the typical (or average) developer will produce about 3200 lines of code in a year. Notice that the distribution is highly skewed toward the low productivity end, and the multiple between the typical and most productive developers corresponds to the fabled 10x programmer.’.

I don’t care what people say about lines of code as a metric of productivity. That’s only used here for illustration.

The skills of the people may not be that important when you are building relatively simple portals with some basic backend functionality. Or mobile apps. But if your business relies on sophisticated software for financial transactions processing, then the technical skills of those who build it make all the difference.

And this is the answer to the unasked question why we in Empirica are hiring only best developers.

We the tech founders tend to forget how important it is to have not only best developers but also the best specialists in the area which we want to market our product. If you are building an algo trading platform, software for market makers or trading bots, you need quants. If you are building banking omnichannel system, you need bankers. Besides, especially in B2B world, you need someone who will speak to your customers in their language. Otherwise, your sales will suck.

And finally, unless you hire a subcontractor experienced in your industry, your developers will not understand the nuances of your area of finance.

 

  1. The product – outsource or build in-house?

If you are seriously considering building a new team in-house, please read the points about performance and quality, and ask yourself the question – ‘Can I hire people who are able to build systems on required performance and stability levels?’. And these auxiliary questions – can you hire developers who really understand multithreading? Are you able to really check their abilities, hire them, and keep them with you? If yes, then you have a chance. If not, better go outsource.

And when deciding on outsourcing – do not outsource just to any IT company hoping they will take care. Find a company that makes systems similar to what you intend to build. Similar not only from a technical side but also from a business side.

Can outsourcing be made remotely without an unnecessary threat to the project? It depends on a few variables, but yes. Firstly, the skills mentioned above are crucial; not the place where people sleep. Secondly, there are many tools to help you make remote work as smooth as local work. Slack, trello, github, daily standups on Skype. Use it. Thirdly, find a team with proven experience in remote agile projects. And finally – the product owner will be the most important position for you to cover internally.

And one remark about a hidden cost of in-house development, inseparably related to the IT industry – staff turnover costs. Depending on the source of research, turnover rates for software developers are estimated at 25% to even 38%. That means that when constructing your in-house team, every fourth or even every third developer will not be with you in a year from now. Finding a good developer – takes months. Teaching a new developer and getting up to speed – another few months. When deciding on outsourcing, you are also outsourcing the cost and stress of staff turnover.

 

  1. System’s performance.

For many crypto projects, especially those related with trading,  system’s performance is crucial. Not for all, but when it is important, it is really important. If you are building a lending portal, performance isn’t as crucial. Your customers are happy if they get a loan in a few days or weeks, so it doesn’t matter if their application is processed in 2 seconds or in 2 minutes. If you are building an algo trading operations or bitcoin payments processing service, you measure time in milliseconds at best, but maybe even in nanoseconds. And then systems performance becomes a key input to the product map.

95% of developers don’t know how to program with performance in mind, because 95% of software projects don’t require these skills. Skills of thinking where bytes of memory go, when they will be cleaned up, which structure is more efficient for this kind of operation on this type of object. Or the nightmare of IT students – multithreading. I can count on my hands as to how many people I know who truly understand this topic.

 

  1. Stability, quality and level of service.

Trading understood as an exchange of value is all about the trust. And software in crypto usually processes financial transactions in someway.

Technology may change. Access channels may change. You may not have the word ‘bank’ in your company name, but you must have its level of service. No one in the world would allow someone to play with their money. Allowing the risk of technical failure may put you out of business. You don’t want to spare on technology. In the crypto sapce there is no room for error.

You don’t achieve quality by putting 3 testers behind each developer. You achieve quality with processes of product development. And that’s what the next point is about.

 

  1. The DevOps

The core idea behind DevOps is that the team is responsible for all the processes behind the development and continuous integration of the product. And it’s clear that agile processes and good development practices need frequent integrations. Non-functional requirements (stability and performance) need a lot of testing. All of this is an extra burden, requiring frequent builds and a lot of deployments on development and test machines. On top of that there are many functional requirements that need to be fulfilled and once built, kept tested and running.

On many larger projects the team is split into developers, testers, release managers and system administrators working in separate rooms. From a process perspective this is an unnecessary overhead. The good news is that this is more the bank’s way of doing business, rarely the fintech way. This separation of roles creates an artificial border when functionalities are complete from the developers’ point of view and when they are really done – tested, integrated, released, stable, ready for production. By putting all responsibilities in the hands of the project team you can achieve similar reliability and availability, with a faster time to the market. The team also communicates better and can focus its energy on the core business, rather than administration and firefighting.

There is a lot of savings in time and cost in automation. And there are a lot of things that can be automated. Our DevOps processes have matured with our product, and now they are our most precious assets.

 

  1. The technology.

The range of technologies applied for crypto software projects can be as wide as for any other industry. What technology makes best fit for the project depends, well, on the project. Some projects are really simple such as mobile or web application without complicated backend logic behind the system. So here technology will not be a challenge. Generally speaking, crypto projects can be some of the most challenging projects in the world. Here technologies applied can be the difference between success and failure. Need to process 10K transaction per second with a mean latency under 1/10th ms. You will need a proven technology, probably need to resign from standard application servers, and write a lot of stuff from scratch, to control the latency on every level of critical path.

Mobile, web, desktop? This is more of a business decision than technical. Some say the desktop is dead. Not in trading. If you sit whole day in front of the computer and you need to refer to more than one monitor, forget the mobile or web. As for your iPhone? This can be used as an additional channel, when you go to a lunch, to briefly check if the situation is under control.

 

  1. The Culture.

After all these points up till now, you have a talented team, working as a well-oiled mechanism with agile processes, who know what to do and how to do it. Now you need to keep the spirits high through the next months or years of the project.

And it takes more than a cool office, table tennis, Xbox consoles or Friday parties to build the right culture. Culture is about shared values. Culture is about a common story. With our fintech products or services we are often going against big institutions. We are often trying to disrupt the way their business used to work. We are small and want to change the world, going to war with the big and the powerful. Doesn’t it look to you like another variation of David and Goliath story? Don’t smile, this is one of the most effective stories. It unifies people and makes them go in the same direction with the strong feeling of purpose, a mission. This is something many startups in other non fintech branches can’t offer. If you are building the 10th online grocery store in your city, what can you tell your people about the mission?

 

Final words

Crypto software projects are usually technologically challenging. But that is just a risk that needs to be properly addressed with the right people and processes or with the right outsourcing partner. You shouldn’t outsource the responsibility of taking care of your customers or finding the right market fit for your product. But technology is something you can usually outsource and even expect significant added value after finding the right technology partner.

At Empirica we have taken part in many challenging crypto projects, so learn our lessons, learn from others, learn your own and share it. This cycle of learning, doing and sharing will help the crypto community build great systems that change the rules of the game in the financial world!

 

 

Independent initiatives that analyze crypto exchanges liquidity and quality

Volume is flawed metric of crypto exchanges liquidity. Because of wash trading practices of many crypto exchanges as well as token issuers, using trading volume as a basis of comparison is misleading. Many exchanges have problems attracting professional market makers and are trying to make shortcuts on the way to attract retail investors. Moreover attracting professional investors requires investments in crypto exchanges system development with stable and performant APIs so they could connect their algorithmic trading systems.]

There are more and more independent initiatives that are taking a closer look at what constitutes a high quality crypto exchange. Three major ones are Blockchain Transparency Institute, CryptoCompare Benchmark and Cointelligence Report. I also take a quick look at the Bitwise report for SEC from March 2019.

 

 

Blockchain Transparency Institute

BTI concentrates on analyzing crypto exchanges data feeds to spot wash trading mechanisms and provide the real volume metric which is cleaned out of suspicious activities.

BTI identified 17 of the CoinMarketCap Top 25 crypto exchanges to be over 99% wash traded. This one number alone shows the magnitude of the problem, as well as how volume is a false measure.

According to BTI Report crypto exchanges which are faking their volumes use a variety of different tactics to try and swindle investors. These tactics include buying twitter followers and likes, filling up fake order books, mirror wash trading the largest exchanges with real volume, and trying to disguise their wash trading using various bot settings to not affect price. On many of these exchanges trading high volumes closing the spread would make the volume plummet as the trading bots had no room to wash trade with themselves. Welcome to the wild wild west of no regulation and surveillance.

BTI finds that “all crypto exchanges combined are currently reporting around $50 Billion in daily volume on CMC. After removing all the wash traded volume via our algorithms the accurate number is around $4-5 Billion. About 88-92% of daily trading volume is fabricated depending on the day. Bitcoin’s daily trading volume is about 92% fabricated, which is in line with the space as a whole when comparing our findings to top data sites reporting wash traded volumes.” 

And further “On our list of the top 40 largest exchanges with actual volume, Bitcoin’s volume is about 65% fabricated. Almost all of this fabricated volume comes from OKEx, Bibox, HitBTC, and Huobi. Of the top 25 tokens by market cap, Tron and Ethereum Classic are the highest wash traded tokens on our list at 85% fake volume each and coming in at #24 and #25 of the most wash traded tokens.”

Top 10 cryptocurrency exchanges according to real (not wash traded) volume by BTI

  1. Binance 
  2. Kucoin
  3. Liquid
  4. Huobi
  5. Coinbase
  6. OKEx
  7. Bitfinex
  8. Upbit
  9. Kraken
  10. Bitstamp

CryptoCompare

CryptoCompare’s Exchange Ranking methodology utilises a combination of 34 qualitative and quantitative metrics to assign a grade to over 100 active crypto exchanges. Metrics were categorised into several buckets ensuring that no one metric overly influences the overall exchange ranking. Each crypto exchange grade is derived from a broad due diligence check using qualitative data, followed by a market quality analysis that uses a combination of order book and transactional data.

Due diligence check comprises of 6 main categories that attempt to qualitatively rate each exchange on the basis of:

  • Geography
  • Legal and regulatory metrics
  • Calibre of investment
  • Team and company quality
  • Quality of data provision
  • Trade surveillance

Although at Empirica we believe in numbers, I like the qualitative approach, as it’s also possible to prove a correlation of metric like number of employees and business size of the exchange, therefore proving this way it’s quality. 

Another important factor is Market Quality. Crypto compare measures the market quality of each exchange using a combination of 5 metrics (derived from trade and order book data) that aim to measure the:

  • Cost to trade, 
  • Liquidity, 
  • Market stability, 
  • Behaviour towards sentiment
  • “Natural” trading behaviour

Exchanges were rated based on a combination of 9 of the most liquid BTC and ETH markets.

It’s worth taking a closer look how CryptoCompare report approaches Spread and Liquidity metrics:

“Generally, those exchanges which offer incentives to provide liquidity through either low or negative maker fees will achieve the tightest spreads. Due to the spread being calculated using the best bid and offer, it is misleading to use it as a sole gauge of liquidity and therefore as the market cost to trade; it must be used in conjunction with a depth

measurement to find the likely transaction price for any given size of transaction.”

 

Good point. And liquidity:

“Market depth is the total volume of orders in the order book. It provides an idea of how much it is possible to trade on crypto exchange, and how much the price is likely to move if large amounts are traded. An exchange with greater average depth is likely to be more stable (i.e flash crashes are much less likely) and allows trading of greater amounts at better prices.

We consider the depth up to 1% either side of the mid price. 

Depth = E(depthUp+depthDown)/2

Where depthUp is the total volume that would be required to move the price by 1% upwards from the mid price, and

depthDown is the total volume that would be required to move the price by 1% downwards from the mid price.”

 

Top 10 crypto exchanges according CryptoCompare quality benchmark:

  1. Coinbase 
  2. Poloniex 
  3. Bitstamp 
  4. bitFlyer 
  5. Liquid
  6.  itBit 
  7. Kraken 
  8. Binance 
  9. Gemini 
  10. Bithumb 

 

Cointelligence Rating System

Cointelligence is the most qualitative rating of crypto exchanges from the above. The methodology of the team was to manaully open accounts on all analyzed crypto exchanges and check from the user perspective the core aspects of beeing an exchange customer. The aspects cover:

Usability – covers KYC process, the quality of exchange website, extent of features and how easy it is to get a human answer from support staff. 

Performance – functionalities and historical robustness of exchange matching engine, fees height, trading instruments like futures contracts and margin trading.

Team – analysis of the available information about management team behind the crypto exchange, especially business and technical experience of C-level staff, including person responsible for exchange’s security

Risk – information on past hacks, insurance status, account security layers but also regulatory status of cryptocurrency exchange. Based on the geographical location of the exchange headquarters and registration any potential run-ins with the local law or any sign of authorities involvement.

 

This way Contelligence analyzed 85 crypto exchanges, but only 15 is rated with good quality mark, lead by Liquid and Gemini. 

Top 10 cryptocurrency exchanges by Cointelligence by qualitative criteria 

  1. Liquid (Quoine)
  2. Gemini
  3. Binance
  4. Bitstamp
  5. Gibraltar Blockchain Exchange
  6. OKEx
  7. Bittrex
  8. itBit
  9. Kraken
  10. ABCC

Bitwise report for SEC

Bitwise analysis is based on detecting wash trading patterns in public marked data published by crypto exchanges. Out of 81 exchanges they have analyzed in March 2019 only 10 were identified as be free of wash trading practices. These exchanges are:

  1. Binance
  2. Bitfinex
  3. Kraken
  4. Bitstamp
  5. Coinbase
  6. bitFlyer
  7. Gemini
  8. itBit
  9. Bitrex
  10. Poloniex

Bitwise identified that only 4,5% (about $275M daily) of officially reported volume (eg by the public sources like coinmarketcap) is the actual volume. The rest is wash traded.

The Bitcoin market is more orderly and efficient than is commonly understood. The 10 exchanges trade as a uniform, highly connected market. They form a singular price. Average deviations from the aggregate price for the ten exchanges is well within the expected arbitrage band when you account for exchange-level fees (~30 basis points), volatility and hedging costs. Arbitrage is operating well. Sustained deviations (defined as deviations >1% that last more than 100 seconds) appear as single white lines on the graph below. The graph demonstrates that the ten exchanges trade at a single unified price.

So although the message about the amount of wash traded volume is alarming, the report shows that the real crypto market is quite concentrated, ordered, efficient and well performing. The rest is just noise.

 

Schedule your appointment right now to learn more

Blockchain meetup sponsored by Empirica, Wroclaw

Monday June 19th a beautiful sunny day in IT-friendly Wroclaw, tech start-ups and cryptocurrency enthusiast gather together at IT corner Tech meetup, sponsored by Empirica.

The event was planned to focus on key areas of current trends in Blockchain and Ethereum.

The event began with Mr Wojciech Rokosz, Ardeo CEO presentation. The session was dedicated to introduction to the economics of token. Explaining the new changes and updates we are and we will face in our economy with this huge entrance of virtual currencies.

The event later carried on with Mr Marek Kotewicz on introduction to Blockchain, Bitcoin and Ethereum. The session was summarizing the differences between Bitcoin and Ethereum.

The third and last part of the event was conducted with Mr Tomek Drwga, Blockchain meetup organizer,  diving deeper into smart contracts and programming ( introduction to Solidity) for Ethereum.

The event ended with open discussion between the audience and speakers, and visitors were served with beverages.

 

 

Schedule your appointment right now to learn more

The WEALTHTECH Book: The FinTech Handbook for Investors, Entrepreneurs and Finance Visionaries

CEO at Empirica S.A. was a Co-Author of The WealthTech Book published in March 2018 by Wiley. He wrote a brilliant article on Robo-Advisors, which was placed in Chapter 67 – link to the release below ↓ https://lnkd.in/dUmfPt4

 

 

New York Intensive Business Journey | Consensus 2019

During our last visit to New York, we held multiple business meetings with our partners and potential clients, which led to kick-start some new, exciting algo trading projects.

We had been spreading the word about our flagship products – Algorithmic Trading Engine, Liquidity Engine and the newborn baby – Liquidity Analytics Dashboard for crypto markets. Making use of every spare hour, we participated in different industry events connected with crypto trading and blockchain.

You might have met Empirica’s Vice-President and Co-Funder Piotr Stawiński on conferences and meetups such as NYC Crypto Mondays, various Blockchain Week events or Consensus 2019.

 

Hummingbot

Hummingbot short review 2019

Hummingbot is a software client that allows users to create and customize automated, algorithmic trading bots for making markets on both centralized and decentralized crypto asset exchanges.

Hummingbot was launched to the public on April 04, 2019. Its main features include a command line-based user interface, trading strategy configuration and trade execution. 

Functionality HummingBot
Installation Self-driven with Docker images. Needs to know Docker if one wants to use a server. No Docker support in case of problems. 
User Experience – GUI All done from config files and a command line. No straightway to visualise the current strategy output. More than one instance hard to manage. 
User Experience – Parameters modification Modification of the strategy’s parameters requires a restart of the strategy.
Reference price  A midpoint. 
Inventory management Automatic size adjustments, manual pricing adjustments. 
Risk management No parameters related to risk management. 
Performance – Technology behind Written in Python, scripting programming language (one of the slowest)
Performance – Price validation Time interval based orders price validation
Connectors Centralised:  Binance, Coinbase, Huobi Global, Bittrex International.

Decentralised: DDEX, IDEX, Radar Relay, 0x Relayers

Summary Humming Bot is set for individuals acting as market-makers on illiquid markets. 

Read reviews on follwing bot platforms:

Vendor website: hummingbot.io

Bitcoin and Arbitrage: hand in hand

Empirica presented ‘ways of implementing Robo-Advisors’ at Fintech Trends

On behalf of Empirica, Hanif Nezhad talked about the different ways Robo Advisors could be implemented and the lessons we have learnt from firms which have digitalized their wealth management operations

He used our Robo-Advisory platform to showcase the different ways possible to apply Robo-Advisors. Although the list of choices firms may have before going Robo is long, he used the major options available, such as model portfolio vs discretionary portfolio management, different ways to perform rebalancing and Empirica’s recommendation engine.

At the end of his presentation he showed how at Empirica we can improve advisor-customer relationship using our built-in house machine learning algorithm for Robo-Advisors.

The event was followed with a panel session where the three speakers discussed variety of topic related to Robo-Advisors such as differences among Robo-Advisors, the Robo-Advisor business in Europe and Poland. The panelists also talked about ETFs and why Robo-Advisors are a big fan of them. After the panel audiences could approach the speakers and ask their questions. The event was concluded with networking session.

Empirica was a proud sponsor of the event.

Empirica is a Wrocław-based company that supports many local IT initiatives. Empirica is offering solutions such as an Quant Trading Software implemented by major institutional investors in Poland, market making software, portfolio management system framework, crypto trading bots and trading software development for companies from capital and cryptocurrency markets.

 

 

 

 

Empirica will take part in Robo-Advisors – Open Mic Night run by Fintech Trends

On behalf of Empirica, Hanif Nezhad will talk about the different ways Robo Advisors can be implemented and the lessons we have learnt from firms which have digitalized their wealth management operations.

We are also a proud sponsor of the event, so make sure you come and visit us there.

Organizations will be provided free entry, but in order to make sure you will have a seat – register here.

 

About us

Empirica is a Wrocław-based company that supports many local IT initiatives. Empirica is offering solutions such as Automated Cryptocurrency Trading Software implemented by major institutional investors in Poland, market making software, portfolio management system framework, crypto trading bots and trading software development for companies from capital and cryptocurrency markets.