Systematic Trading research and development, with a flavour of Trend Following
Au.Tra.Sy blog – Automated trading System header image 2

How to decide on a Backtesting and Trading Platform

November 23rd, 2009 · 8 Comments · Backtest, Software

As an automated trader you probably need the following components:

  • Broker Account – The starting point to trade in the markets
  • Live Market Data – To feed to your trading robot so that it can generate trading signals. Most brokers provide market data with proprietary or third-party technology- although market data can also be obtained from an independent vendor (e.g. eSignal).
  • Order Routing – To transmit your orders to the exchange. These can be proprietary to the executing broker or third-party based (e.g. Zen Fire).
  • Broker Trading Platform – To access your account information, place orders, etc.
  • Charting Platform – Sometimes the broker platform charting capabilities are mediocre and an independent charting platform is required (e.g. eSignal)
  • Signal Generation Platform – The actual trading robot: it analyses market data, account and positions information and implements the automated trading strategies to generate trade management signals (i.e. Buy / Sell / Exit, etc.).
  • Excecution Platform – Receives trade signals and forwards them to the order routing.
  • Platform Hosting – You can host the trading robot on your local machine, host it in a dedicated rented server or entrust a specialised broker to host and run your trading robot.
  • Historical Market Data – Used as source for back-testing trading strategies
  • Strategy Development Application – Allows for coding, optimisation, back-test and result analysis of trading strategies.
  • Statistical Analysis package – for in-depth statistical analysis of back-testing results.

Some of these distinctions are physical, some are logical. For example, TradeStation packs many of the points above into one system: a broker account and a trading platform that allows you to:
Access live market data + Visualise price charts + Automate trading strategies that generate signals + Route the trading signals as orders on the exchange + Access account information + Store historical data + Back-test strategies

Sounds like it fits the bill perfectly, doesn’t it?
Well let’s look at the areas you need to consider when deciding on your automated platform.

Type of broker

Different issues to consider: is the broker a clearing broker, a non-clearing FCM or an introducing broker? If the latter is it an independent introducing broker or a guaranteed introducing broker (backed by a clearer)? It would seem that the closer to the exchange you broker is (in terms of relationship), the better/safer it is. See Anatomy of a Futures transaction for more detail on the different types of brokers.

Markets supported

Every broker offers access to different products and different markets. For example Interactive Brokers offers one of most complete coverage (worldwide Futures, Options, Equites and Forex) all “housed” under the same Universal Account. Other brokers only offer access to specific products/markets.

Latency/Speed

For some type of trading strategy, this can have a large impact and various platforms/feeds offer different levels of performance. This has led to specialist companies such as Zen Fire or Trading Technologies – which locate their servers very close to the exchange – achieving speed and reliability for data feed and order routing. They offer their services to brokers who can in turn offer it to their clients.

Development Language

This is mostly a matter of personal preference, experience and expertise. TradeStation has been around for longer and a big collection of Easy Language scripts are available for re-use while NinjaTrader, for example, uses C# and CQG Trader their own language.

Strategy Complexity vs. Platform Functionality

Most of the automated trading platforms that offer back-testing functionality lack sophistication of dedicated applications such as Mechanica, TraderStudio or Trading Blox. For example portfolio testing is usually not available in the live trading platforms. This might work for some simple strategies but not for more complex Money Management ones.

Hosting

You can run the trading robot on your machine, which makes you subject to power and connection failures or you can choose to rent a server to host your robot. Some brokers also offer trading strategy hosting and execution on their own servers.

Charting

Some specialised platforms offer better charting capabilities than the standard trading platforms and can be used as a standalone charting application. Some, such as eSignal, also offer a data feed.

Costs

An obvious one but between platform costs, execution costs, hardware, etc. there exists a wide range between bottom-end and top-end offerings.

What/how to choose?

While researching for this article I have come across many different packages offering different solutions. One of the best ways to help you decide on a solution that makes sense to you is to list your goals and cross-check each platform against them in this fashion (PDF doc).

There are endless possibilities for combining all the differenty packages. Just for fun I tried to “virtually build” the opposite of an all-in-one package such as TradeStation (which will probably not address most automated trader goals) – here is one “wacky” implementation.

wacky ATS architecture

A trader decides to use TradeStation as a signal generating platform. However she does not want to use TradeStation data feed and instead decides to go for the eSignal package integrating the broker Dorman Trading and the Zen-Fire connection for market data and a charting platform. In order to route the market data to TradeStation, she needs a bridge application - OwnData from TS Support for example. The backup feed solution would be TradeStation data feed. For the execution side of things, our trader decides to send the trading signals generated by TradeStation to NinjaTrader, which can route the orders to the exchange through a broker. The primary route is through Velocity Futures broker using Trading Technologies order routing, while the secondary route is through Interactive Brokers via their TWS trading platform and API! Additionally, the strategy research and testing is performed with Mechanica using CQG tick data while the results are analysed using R.

Conclusion

Sorry to end up on a cliche but there are no silver bullet to making the choice. If you take away one point is that you need to list your own requirements clearly and make the choice for yourself based on them.

Check that 60-page thread at EliteTrader if you want an endless discussion as to which is the best platform/architecture…

Related Posts with Thumbnails

Tags: ···········

8 Comments so far ↓

  • Nicolas

    Thanks for an other interesting article!
    Nicolas

  • Mark

    One inexpensive setup is:

    IB Realtime Data->Amibroker->IBController->IB TWS

    You only pay for Amibroker, everything else is free.

  • Mike K @ Automated Forex System

    Great information on choosing a trading platform. I’m wondering if you have any suggested forex brokers that are best for automatic trading systems.

  • Jez

    The 2 that come to mind are OANDA (ideal for small sizes but $600 API fee – monthly, with reduction based on traded volume) or IB. Although NinjaTrader has a few connections with some FX brokers which seem to be good too..

  • Clarence

    Hi Jez, any followup thoughts on backtesting software now that you’ve had some time to tinker and reflect? I was thinking about tradersstudio 2.5 as it is significantly cheaper then blox. Right now I’m only dabbling (and I use that term lightly) in automated systems.

    Btw, I feel fortunate to have stumbled upon your blog as it’s very helpful.

  • Jez

    As per other comments throughout the blog I still believe Trading Blox Builder is the best option despite its higher price (even if not perfect). In hindsight, I regret having gone for its cheaper competitor (TStudio) first and not TBB directly…
    Its not ideal obviously (for that you would have to build it yourself at a much greater time cost though!) but it gives you a great headstart.

  • MS

    Stay away from Prodigio robot platform. It’s free through Think Or Swim. It just doesn’t deliver what it promises. The back test is slow, trailing stop is inaccurate, and assumes you have unlimited funds giving unrealistic returns. They don’t allow you to turn on your own strategies once you build one with the excuse the feature is in maintenance. So you have to use their pre-made strategies which you can’t back test. So I had to paper-trade day to day with Prodigio using their premade strategies. I had a lot of trades but no profits. They are churning commissions and not caring about the client making a profit obviously.
    So I’m looking around for a robot similar to Prodigio but does the job correctly.

  • paststat

    1) you may want to check http://paststat.com , not real time though ( 15 minutes delayed), but has the single click backtest functionality against 400 odd predefined technical strategies .

    2) the tradeideas tabcan comb through all the 6000 odd US stocks/etfs and can filter tradeideas based on outlier adjusted profit factor / avg win % / median change % / percentage winning trades etc.

Leave a Comment