Blog
March 27, 2019
Ciklum News
Digital Transformation
Software Development

Trade is a Game of Speed. The Story of AlgoTrader

Trade is a Game of Speed. The Story of AlgoTrader

A CEO of algorithmic trading platform AlgoTrader, that has established an IT team in Ciklum Wroclaw, gave an interview to Polish IT media JustGeek. AlgoTrader is the 6th startup for Andy and during the discussion, he revealed the ins and outs of the software development process: how many lines of code testing strategies contain, what technologies are used to create a top-notch solution and what are the biggest challenges on the trading market the company is to tackle.

The article below was originally published on JustGeek.IT on March 12, 2019.

Exchange and finance are two keywords, which for many are still a mystery. This was also the case when Andy started working for the Swiss Intelligence Agency, where he learned to analyze huge datasets. It was there that he also learned what a trader’s work is all about, and later he became one himself. He also created the AlgoTrader system, which facilitates trading on the stock exchange. We talked about its history directly with CEO Andy Flury.

Can we start by listening to your story? Are you more of an entrepreneur or a software developer? Or maybe a trader?

AlgoTrader CEOAll of the above actually. I’m an engineer, a software developer and a trader. I have a long history in startups… This is my startup number 6 already. Some of them were not in the software development industry, however. I launched startups in the areas of music events, computer hardware and trading. Originally, I’m an engineer, however, I used to work for big banks in Switzerland as well as internationally. For a long time, I was a project manager and software architect for Siemens. There we did projects for the Swiss Intelligence Agency – this is like the Swiss NSA. We created huge systems for them. These were the early days of big data, so I learned how to deal with huge amounts of data. After that, I became a trader myself. Together with three partners, we launched a hedge fund here in Switzerland where we traded a fully automated trading strategy, I was responsible for the software and trading model. Back then we were looking for a software like AlgoTrader but it didn’t exist. So, originally, we built the system just for our own purposes. During that time we obviously met many other traders and attended various conferences and we discovered that there was a need for a product like this in the market.

Take a look behind the curtains of Algotrader IT team in Ciklum Wrocław:

Did you have a designated team of developers when you started AlgoTrader?

Until the end of last year, we were only 3 people. During the last 12 months, we have grown tremendously (at the moment we are roughly 25 employees) the reason for that is that we now have an investor from Silicon Valley – a venture capital firm that have invested in us. That is also a reason why we have an office here in Poland.

What was the main idea behind finding an investor?

Trading is probably one of the most difficult areas in IT. You need to be very fast, but your software also needs to be very reliable and you work with a lot of external parties like brokers and exchanges. You have to get this right the first time. We wanted to take our time with our product and build a solid platform. We wanted to get the platform really stable before expanding. We feel like we only became ready to start expanding end of 2017. That is when we decided to look for an investor and open offices in Wrocław and New York.

What are the current trends on the capital market?

The most popular trading strategy is ‘trend following’. In short, it means using technical analysis like moving averages, momentum indicators etc. Basically, what you’re trying to do is predict the future price of an instrument. The other trend in which we are very involved in is the cryptocurrencies. Two years ago, no other software than ours supported trading using crypto. These days, we see a lot of big hedge funds and traders moving towards cryptocurrency markets.

Get more insights about the Cryptocurrency Trading with Java discussed on Ciklum Wrocław Meetup with AlgoTrader:

Is it true that its beneficial for hedge funds to have servers closer to the exchanges?

Yes, trading is a game mostly about speed. If you are serious about trading then for sure this is true. It is quite different when it comes to crypto because servers are spread around data centers all over the world.

Right now, your main task is to build a solid team of developers to expand the AlgoTrader business. Can you say a bit more about the biggest technical challenges that you had to face?

A trading system has to be very fast and support many instruments like equities, futures, cryptocurrencies. Each of these markets works differently. Also, a trading system has to be flexible so that all types of trading strategies can be supported. Trading strategies sometimes contain over 100,000 lines of code. Some of our clients place thousands of orders a day through their trading strategies. Right now, our system is based on Java, so our clients have to create their trading strategies in Java as well. In the future, we would like to support more and more languages like Python and R while still maintaining speed and reliability.

What kind of developers can really participate in your project? Should the developers have any knowledge about trading?

Typically, we are looking for experienced, senior level Java developers. For the type of work, we do it is necessary that the developer has trading knowledge as well, it can be either working in a bank or even better somebody who had experience with trading in their private life. In our experience, it is difficult for somebody who has never traded before, who has never felt the pain of losing money or felt the joy of gaining money. In addition, our clients are traders who manage a lot of money and typically they are very impatient.

I think that can be really challenging because working in AlgoTrader is more than programming in some way. Right?

Yes, absolutely. Some developers working with us have seen more trading strategies than most traders ever will. We have more experience than probably 99,9% of traders on the market.

What are the most desirable qualities you look for in developers?

In our case we use a lot of open source technology like spring, hibernate, ActiveMQ, Node, etc. So obviously it is very helpful if someone knows these technologies. But even more, so it is especially valuable to know about concepts like multi-threading, low latency, memory management, basically optimizing your code to be as fast as possible. After already having a team in Poland for a year now, developers in Poland usually have this knowledge so it seems that the skill level is actually very, very high in Poland.

Can you tell me more about how the work is organized in AlgoTrader?

Sure, at the moment we have two locations – Zurich and Wrocław. Backend developers are spread between the two, while all of the Frontend developers are stationed in Wrocław. So, we have two locations but we also have two teams. One team is doing more of the core features of the platform – persistent, execution, the other is focused on adapters, the AlgoTrader UI and various other smaller items. As a software developer at AlgoTrader, you get to work on the trading platform as well as on the trading strategies of ongoing projects. Because of that, the developers learn what the client wants and what the platform has to offer.

Can you tell me more about the work itself – what kind of roles do you have in the projects?

Beside the regular roles like Mid/Senior Backend and Frontend developers we also have a rolling Scrum Master role. Everybody gets to be a Scrum Master at some point – each second week we have a different Scrum Master – it works quite well. Beside that, we have Project Managers, manual testers, test automation engineers, etc.

Are you testing the app on real money or demo accounts?

If there is a demo account then we use that. Most crypto exchanges, however, do not offer demo accounts so we use small accounts with a few 100$ on them.

What are the biggest challenges for the AlgoTrader from the startup point of view?

The biggest challenges right now are organizational issues. We are growing very rapidly, so setting up the processes, having multiple locations and communication between multiple time zones. These are all issues that we have to overcome. We are about to open another office in Singapore so being on 3 continents won’t make it easier. We need people to manage all of the new employees so hiring C-level management is a big topic right now as well. So, there are many, many small challenges associated with growing a company.

What is your role at the moment? Are you focusing on development, sales or managing team leaders of particular spaces?

We have two main goals at the moment: A)  growing the platform and adding more features, and B) growing sales. We have laid the groundwork and now we can focus on expanding the company.

Yes, but what are you working on at the moment?

I am also in operations, but we are hiring the COO at the moment because for me personally, it is becoming more and more difficult to handle operations, product development, clients, investors and partners at the same time.

Would you be able to describe main features that you are working on right now?

There are basically two areas that we will be focusing on during the next big release. One is the execution management. If you are a trader and you want to send a big order – let’s say you want to buy bitcoin worth 10 million $. You cannot just go to the exchange and place an order because the price will run away – this is called slippage. So, you cannot do that. What we provide is a feature that splits this order into smaller chunks and places them intelligently over multiple exchanges. This is the type of software that helps the trader execute a large order without impacting the market. This is really important for cryptocurrency traders.
The other area that we focus on is backtesting – testing strategies with historical data. This has been around for a long time and we are refactoring that area with the aim of having a full-blown web UI for backtesting. After that, the next big task is to add support to other programming languages.

What stage is the AlgoTrader software currently in?

We have reached a stable state, so all the core features are there but there are still a lot we want to add. The app will become more powerful, more user friendly and so on. It’s proven in real life with over 100 customers so it’s safe to say that it’s at a stable stage, but there are many many items still in our product backlog. Also, since we work very closely with the clients, they tell us what features they would like to see, and we take that into consideration when planning the next release of AlgoTrader.

Will you disrupt the financial markets?

Every startup says that it is going to disrupt the market and make the world a better place. We try not to use the buzzwords. I think we are more realistic, we don’t want to be another Facebook or another Snapchat. We want to be a reliable, solid enterprise software that real clients, real traders are using and it makes their lives better. We are not going to change the whole trading industry and make it something different. This is a real market, in terms of capital this is the biggest market there is. A few years from now, every asset is going to be tradeable on a blockchain. Soon there will not be a difference between cryptocurrencies and traditional assets. So, a new era is about to start in the entire financial space including the trading domain, and it is our vision is to be a preferred trading software infrastructure provider in this new age.

You seem to be quite a realistic person, right?

The thing is, it’s already my sixth startup. I’m not a junior straight from the university that wants to build another Facebook. I’ve seen what works at what doesn’t. Usually, i can judge if something is going to be successful or not. So yes, you might say that I’m a realist.

What you’ve learned from through all of those 6 startups?

It’s not so much about the original idea you have. It’s much more about the execution, the right people, the right process. That’s much more important, you should always be willing to pivot, to change your idea when you see it’s needed. From what I’ve learned, early on focus on the market is crucial. Having a product that people actually want to buy is the most important thing. At the end, it’s all about the revenue. I see a lot of startups that have this fancy idea that no one wants to buy. Being close to the market is really important. There is no recipe for success, sometimes you’re just lucky, and you are at the right place, at the right time.

Do you have the same approach to people? How would you describe yourself in regards to working with other people?

I would say I’m a very energetic and creative person. I also enjoy discussions on a very technical level. Because I am an engineer, people often come to me with technical challenges and I’m able to help because I’ve been with AlgoTrader long enough. I think if you are in a tech startup, technology is the core and you need to understand it even as a manager. I work a lot myself but I’m also quite demanding from people. Working for AlgoTrader you can expect lots of things happening, you are never going to be bored. We as a team decided what features are important for the next software release and what we should focus on. So, you as a developer can actually have an impact on what the product is going to look like in the future.

What is your approach to the subject of work-life balance?

Personally, my work life balance is not at its best, I work around the clock, even during the weekends. The people in my team, however, have regular 8 hour working days. We have flex time working hours, you can come in early in the morning or stay later at night if you prefer. I don’t really believe in teams working 10-12-15 hours a day, I don’t think that’s productive. Unfortunately for me, it doesn’t work like that, and there is always too much work.

Right now, you live in Switzerland and you are visiting Poland on a frequent basis?

I’m visiting our offices in Poland, New York regularly. At the moment, we are also building a separate QA team in Kiev. And we are launching a sales office in Singapore this year. Also, I go to a lot of conferences, I’m a frequent speaker at trading and cryptocurrency conferences.

What about the future of AlgoTrader? How will the company look in a couple of years?

There is a huge potential in the market. There are over 13’000 hedge funds globally. Right now, we have 100 customers so there is still a lot of room to grow. We want to grow to 40-45 employees till end of this year, and then 100 people throughout the next two years. We will set up additional locations around the globe. We will connect with more brokers, more exchanges and we want to add more features to the AlgoTrader UI. We will make the product more flexible and faster. We will support additional programming languages like Python, C# and R. Our ambition is to be the preferred choice for professional trading companies, so you are going to hear a lot about us.

Read also: