Low level back testing libraries

Discussion in 'App Development' started by fan27, Jul 3, 2014.

  1. fan27

    fan27

    I am currently using a web app I built for back testing EOD/Weekly/Monthly data. I am using http://pecl.php.net/package/trader/0.3.0 to help with the TA and I am satisfied with the front end of the web app through to finding signals based on strategies I test. Currently, the code that analyzes the signals (determines exits based on stops, limit, holding period/result metrics/portfolio info/etc.) is all written in PHP. I want to scrap that code in place of an existing library written in a lower level language such as C/C++.

    Any suggestions?

    thanks!
    fan27
     
  2. why not use your current PHP code as a blue print to port into C?
     
  3. fan27

    fan27

    yeah...that is an option. The PHP code (for trade analysis) is something I just threw together quickly. It is not very robust in terms of all the result stats you would want (max draw down, avg draw down length, etc). Ideally I would find a library that had all of the bells and whistles.

    fan27
     
  4. I tried a few open source backtester recently, ended making one from scratch... That was the only way I could know every knot and bolt in the system... The open source systems were ok, but I ended up spending so much time hacking them to use the data I already have or trying to modify a small piece of their behaviour without entirely knowing what everything is supposed to do...

    I haven't seem any C system that was outstanding, but there's a couple of decent ones in sourceforge and maybe 1 in git...

    Zipline (python) is a pretty complete system (many bells n whistles), it was built by Quantopian... ( although it is aimed at lower frequencies and a bit if an object oriented pain in the neck if you try to do anything that is outside their intended use)

    Another option for C-ish syntax is meta trader. It is good if you rely on technical indicators, but hits the wall if you need to go deeper into statistics or ML
     
  5. fan27

    fan27

  6. I've seen the products from modulus before... in my previous job they paid a big pile of money for their charting solution, and ended up not using it and we went with an in house solution :(
     
  7. fan27

    fan27

    Sounds familiar :)
     
  8. was it worth the effort to code up a whole charting library from scratch? Seriously asking not trying to be condescending. Nowadays you get top notch charting libraries for about 600 usd, such as Scichart. I have not seen a faster way to render time series with large sets of data points than this particular library and wonder how a firm can manage to keep the budget below 600 usd and still come up with a solution that does not entirely freeze when trying to plot 1mln+ data points.

     
  9. That was the idea when they bought source code from modulus... I don't know all the details but it ended up being a hassle to maintain, and the solution built on modulus was never released. And mmgment decided to build inhouse from scratch.


    Did it cost less than $600? Not by a long shot....

    The solution runs ok, doesn't choke on its data, and has plenty of features. It was a pain to design and was meant to be just a basic charting tool meant for prop traders who weren't willing to pay for esignal or another commercial solution.
     
  10. I follow you, just customizing an existing charting library is already a chore. If I remember you do not against Windows OS, correct? Otherwise I highly recommend taking a look at Scichart, a WPF chart library, they use a combination of bitmap and vector algorithms to really speed up rendering of large data sets.

     
    #10     Jul 8, 2014