Software for backtesting futures ...

Discussion in 'Trading Software' started by maxpi, Jun 15, 2007.

  1. maxpi


    I'm backtesting a futures contract with Tradestation. The buy and sell keywords are quaint and totally for stocks. Buy first takes you flat if you are short then issues another order to get long for example. If I am trading a fut contract for real I can just buy/sell and the broker software will know whether I am net short or long. I looked at Multicharts but they emulate Tradestation so the buy/sell keywords are probably the same.

    Does anybody know of backtesting software where it can keep track of the net postion without extra coding on the part of the user?
  2. maxpi


    I was trying to backtest with tradestation on the YM continuous contract. In real trading I can just buy one then reverse by selling two but the testing software is set up for stocks. It is quaint to say the least, the buy order will first have to go flat, then issue another order to get long, etc, the overall tested results change if I change the order types from buy to buytocover, or sell to sellshort, it's nuts. Last night I looked at all the popular backtesting sofware and it is all oriented towards stocks like that as far as I can tell.

    I think I can make better progress testing on live data with the IB test account really. The ambiguities about the order types leaves me with the feeling that whatever I test won't work the same with live trading. If I omit the backtest stage I omit that ambiguity. With live data I can watch the chart and see what the heck the software is doing. I'm trialing Multicharts, with that I can test on the IB simulation account. The strategy is so simple that I can get the testing done faster by doing it on realtime data and tweaking it every couple hours than trying to figure out what the backtester at Tradestation is doing.

    Anyhow, still looking for recommendations for a backtesting software that is geared to futures.

    Hee hee, when somebody asks me what I do for a living I'll tell them currently I'm backtesting the future of my choice. OK, maybe the pain meds are affecting me and I think I'm funny......
  3. patoo


    The original program back in the olden days that later evolved to Tradestion on the Windows 3.1 platform was built for backtesting nothing but futures. Since then its branched out.

    I love Tradestation, but I have never seen how it can accurately simulate futures trades.

    I assume you are using Exit Long as well?
  4. i'm not sure about the latest versions of Tradestation, but w/ tradestation2000i, i know for a fact if i'm Long-1 and a short signal is triggered, the program(TS) sends an order to "Sell-2". i can see the order in TWS and in my order management app.

    maybe i'm missing something...
  5. maxpi


    Thanks, I was beginning to think it was just me.

    Yes, I'm just taking a close look at the order entry keywords and trying figure out how I can write code that will keep up with the backtester. It is not easy at all. Like bubba says about the real world, you buy/sell and the broker software [and TS2k] knows whether you are net short or long. The backtester however will not do that. I'm just looking for a simpler backtester. Any of the software companies with a backtester could have a checkbox for "futures" and use the buy/sell keywords as they would be used in the real market. Small traders all went from stocks to futures how long ago?? Several years, come on. I'm not saying some don't have that feature, I have looked at the websites of all of the ones that have more than a couple of reviews on ET and I'm seeing that they seem to be stock oriented. I'll query them to see if I'm wrong about this, I just did the preliminary checking so far. I think Tradestation's backtester is written by RINA so they might have more problems in changing it than just telling the software department to put the feature change in their task list. They are working on portfolio backtesting, maybe when they bring out the new backtester [maybe they won't outsource it] they will have improved futures tests.

    I'm going to first try just trading strategies live on the IB simulation account, maybe I can run several versions of the same strategy with different parameters to effectively optimize rather than repeated simulations.

    Accurate backtesting is not a trivial thing, I have found more ways to screw things up than I thought possible. This thing with the inability to mimic real markets is feeling like it's the last straw. Currently I am getting more done by looking at charts and recording trades on paper than any other way.
  6. MGJ


    I have used "Trading Recipes" and "Trading Blox" to test futures trading systems, and found them to operate exactly as I wished. However, this was (A) position trading with average trade hold time >> 7 days; (B) using End of Day data; (C) using a calendar based rollover schedule similar to the rollovers built into Pinnacle Data's continuous contracts.

    I found that Wealth-Lab Developer and Tradestation didn't meet my needs, when backtesting futures trading systems. Keep in mind, however, that each of them has thousands of very satisfied customers, futures traders, who are perfectly contented with the program as it is, today.

    I have heard nice things said about AmiBroker and eSignal/Genesis for futures trading, but, haven't tried them myself.
  7. Multicharts does the same..... There is no wait for it to go flat then issue another order.. It's a simple reverse position style order...
  8. well, apparently, maxpi has identified an issue in the way TS backtests and switches positions.

    and obviously, it's well over my head.
    but i'll watch here, and hopefully learn.

  9. TS offers you the possibility to export your data (included the values of your indicators) to excel. Click on "send to file" in the data window and you can do the necessary calculations in excel.
    You will have to add an indicator that gives values from -1 to+1 because the buy/sell orders cannot be traced in the exported data.
    Don't know if this is a solution to your problem, but i use this technique often for problems i encounter in TS.
  10. i'm not that familiar with easy language but couldnt you just make your own conditional order management function? make the number of contracts a variable and then just add one going the other way?
    #10     Jun 17, 2007