val strategy = EMACrossover() (1)
val feed = CSVFeed("data/US") (2)
val account = run(feed, strategy) (3)
println(account) (4)
roboquant
What is roboquant
Roboquant is an open-source algorithmic trading platform written in Kotlin. It is flexible, free and tries to be developer-friendly. It is designed for anyone serious about algo-trading. So whether you are a beginning retail trader or an established trading firm, roboquant can help you to quickly develop robust and fully automated trading strategies.
But perhaps most important of all, it is blazingly fast. Roboquant is orders of magnitude faster than most other algo-trading platforms.
With historic data sets becoming more widely available and growing in size, it is important that a strategy can still be quickly developed, back-tested and optimized. If this cycle takes too long, it is nearly impossible to create high-performing and robust strategies.
How to use
A lot of effort and attention went into making sure roboquant is easy to use, also for less experienced Kotlin developers. The following example shows the steps required to run a full back test.
| 1 | Create the strategy that you want to validate |
| 2 | Which data feed should be used, in this case, CSV files |
| 3 | Run the back test |
| 4 | Print the account at the end of the run |
As you can see, it is not difficult to get started. So if you are a beginning developer, give roboquant notebooks a try. And if you are an experienced developer or want to develop complex strategies, try out the roboquant libraries.
Features
- Back test millions of candles per second
- Sub millisecond trading
- Stocks, crypto, options, forex, and more
- Multi-currency & multi-region
- Dedicated algo-trading charts
- 150+ technical indicators included
- All source code on GitHub
- Permissive Apache 2.0 license