Thinking Stuff's ATM

Automated Trading Machine (ATM) makes it simple to remove fear and greed from your trading. Automated trading is no longer just for the rich or nerdy. Our revolutionary software runs on your computer, using your trading rules, but none of your emotions. There's just one requirement - you know how to use a mouse.  Learn more...

Thinking Stuff's ATE

Automated Trading Execution (ATE) is where we run your trading systems for you on our servers. Your system can be exported from ATM, or written in plain English and we'll make it for you. We'll even backtest and suggest improvements if you want us to. This service essentially automates your automated trading.  Learn more...

Thinking Stuff's Groups

Join a group of like-minded individuals, and help each other to trading success. Once you join a group, you will have access to that group's trading systems, ideas, and feedback. And please contribute your own knowledge as much as possible. Or contact us to start your own group.  Learn more...

New Release: v0.9.0 - Release Candidate 1 (RC1)

Added in v0.9.0

  • Put a "Close" button next to any "Save And Stay" buttons.
  • Changed the menu structure to be more 'traditional'.
  • Warning message on Oanda Test Connection button.
  • Long Description for trading systems, so you can write a free-text description of how the system works.
  • Decommissioned the Backtest current configuration window.
  • Some GUI changes.
  • Canceling statement due to user request - caused by timeouts when doing database transactions. Have a user option for the timeout period.
  • Bulk delete button for TS Activity.
  • Option to turn off or on the recording of TS Activity.
  • Order rules including Descr and Bar Offset DESC. Both on window and in backtesting output.
  • Allow user to input starting amount when backtesting.
  • Print Expectancy (in terms of pips per trade) in backtesting output summary results. Expectancy = (% winners * avg win) - (% losers * avg loss)
  • Updated Help sections.
  • Added Date Format field to file loader.
  • Allow import from Dukascopy text files of historical prices.
  • New option in "Initiated By" field for when saving orders and trades - "Backtesting"
  • Let the user decide if a trading system can re-enter a trade using a bar that was used for an entry previously.
  • New Money Mgmt option - Variable Fractional Percent (VFP). That is, the % of bank used for each trade varies, depending on the outcome of previous trades. A variation on Morley's technique.
  • Changed how Accounts & Currencies are attached to trading systems.
  • No Trading Long:
    • There must be X or more Short trades in a row before allowing Long trades or orders.
    • Allow up to and including X Long trades in a row.
    • Stop trading Long if X consecutive non-profit long trades in a row.
    • Stop trading Long if the last X long trades were all winners.
  • No Trading - Short:
    • There must be X or more Long trades in a row before allowing Short trades or orders.
    • Allow up to and including X Short trades in a row.
    • Stop trading Short if X consecutive non-profit short trades in a row.
    • Stop trading Short if the last X short trades were all winners.
  • New Rules:
    • ADX In Range
    • ADX Not In Range
    • Toss A Coin

Fixed in v0.9.0

  • Changed email address on Troubleshooting tab of Version Check window. Had listed an email address I shut down months ago. How embarrassing.
  • Fixed NY "Is in daylight savings" option.
  • Internet links point to the correct webpages.
  • Sometimes putting orders in at the preferred entry price, even though the price has moved beyond that already. Depending on the Last Gasp settings, should move the entry price up.
  • GMT offset on File Loader needs only one decimal place.
  • Elapsed time - 07h 01s, needs 00m.
  • File # and total files when not recursing directories.
  • Chart - don't round indicator values.
  • Error on File Load window when loading a text file with 1-Minute bars: ERROR: 23505: duplicate key violates unique constraint "pk_zoanda_gbpusd_1mi"
  • Unhandled exceptions are now handled, and give the options of restarting TS, or just closing.
  • Trying to run more than one instance of TS crashes both.
  • Strange scrolling when highlight a row and click Search again, on Trading Systems search.
  • Clear and disable "I want this to NOT be true" checkbox when the rule type is a Value.
  • Backtesting status - use thousands seperator for column/row numbers.
  • Include currency in backtesting output files.
  • Initiated By field for Trades wasn't updating.
  • Downloading only Oanda 1-Minute bars, had the other fields set to zero, TS stopped downloading after the first currency.
  • Added an extra decimal point when displaying any kind of pip value in backtesting results files - some backtesting data has "pipettes", and by rounding these some of the summary values looked like they didn't match up with the others.
  • Backtesting results in terms of dollars was calculating profit/loss as if only 1 contract is being bought each time (which may not necessarily be the case).
  • Annualised % Gain was working off the start date of the first trade and the end date of the last trade. Should use the start and end dates that the user selected. E.g. user selects a 2-year period to backtest over, but there is only one trade that goes for 1 month. In this case, the annualised % gain should be the actual gain divided by 2, but TS is multiplying by 12.
  • Alerts - disallow the same bar being used to send multiple alerts. E.g. if working off 5-Minute bars, and running Alerting every 1 minute, just alert once, not 5 times.
  • Gain Capital trade's date was set to one hour before the order. Need the NY "is in daylight saving" option set properly.
  • If using the override setting, and not retrieving enough bars to cover the length of a trade, would sometimes close trades prematurely.
  • Removed the need for the user to decide how many bars to retrieve, in the case that they are using an indicator which has a memory. Now just adding 250 bars onto everything. This will get rid of the indicator memory problem, and will not noticeably detract from performance. Backtesting still uses the From and To dates as specified by the user.
  • Now using Rule Type field on Alerts window properly.
  • The prices in trading alerts were being rounded to 2 decimals. Should be 4.
  • If TS puts a long order below the current price, it cancels it when it realises. However, there is also a situation when the high of the bar happens before the order is placed, and then drops below where the order wants to be put. In this case there is no need to cancel the order.
  • Fixed inserts of paper trades.
  • 'Trade Entered' alerts not being sent when using market orders.
  • Create a trading system, and have the rules which determine entry use a longer interval, e.g. Daily, and the rules which determine the stop loss management use a shorter interval, such as Hourly. If the stop loss is taken out quickly, the system will place a new limit order based on the same Daily bar. It should wait until the next Daily bar.
  • Oanda's start of day is at midnight GMT, but when creating interval data for Oanda it was setting the start of day to 4AM. You should re-create your data for the following intervals: 3-Hour, 8-Hour, 12-Hour, Daily, Weekly, Monthly. The other intervals will be correct.