Backtesting Strategies on Tick Data

Discussion in 'Data Sets and Feeds' started by mike212, May 2, 2010.

  1. mike212


    I have tick data on a bunch of securities that I want to backtest some strategies on. The data includes type (bid, ask, or trade), price, volume, date/time, and condition codes stored in csv files.

    I'm decent with VBA, I don't know any other programming languages and prefer not to learn any, so my plan is to backtest my ideas using VBA and Excel to process the CSV files.

    Before I reinvent the wheel, what software is out there and recommended that I can program to run backtests on my data?

  2. amibroker
  3. LeeD


    If you want to stick with VBA syntax, the best thing is to get a copy of Visual Basic 6 (it's no longer officially sold but you can get it on ebay and many VB6 books come with installation on a disk). VB6 will be way faster than VBA. VB.Net is the next closest thing.

    Obviously, accurately modelling execuation on tick data is no easy business. If you don't feel you are an expert at the subject, it's better to stick with a tool that already does the job, like Neoticker. Then you will be able to concentrate on implementing your strategy in VB6 (you'll have to make a DLL) or VB.NET (which is the closest modern technology to VBA).

    If go for an existing platform, a few things to consider:
    1) Make sure you can feed your data into the platform. There are platforms out there that can download data from "supported" data feeds but cannot load a user's data. You may have to write a simple code that changes the format of the data.
    2) Make sure that platform has proper back tests with tick data and not only "simulation" mode (where it feeds data as if in real time but a fixed number of times faster). You can't realistically backtest with simulation. Good platform will have both.
    3) Whichever platform you choose, it's likely to involve cost and steep learning curve. It's better to go with something that actually meets your requirements. Make a shortlist of platforms and read, ask on respective platform's forums etc.
    4) Most platforms have a free trial. It's the easiest and cheapest way to find out if a particular platform works for you.
  4. mike212


    Neoticker, amibroker...

    any others I should look into?