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...

Blogs

Start of February 2010 Update

Hey ho, another month flashes by.

v3.0.0 is almost there. There's just 1 thing I want to change which will probably take a couple of days. And then a couple of days of clicking around to flush out and fix little errors. And then a couple of days to figure out what needs to go into the installation file.

Add that up and it comes to around 6 days. In software development land though, that's actually going to work out to be more like 12 days:

Valentines Day!

Perfect.

[Edit: To make sure we deliver on or before Valentines Day, I have promised 4 people A$100 each if we don't].

End Of 2009 Update

We hope you all had a good 2009 and have an even better 2010.

Back in April or so we decided to tear down our software and start again. The rebuild has been a long journey. However at the end we are left with better code, better features, and a better product. Moreover, adding new features, new indicators, and new brokers to trade with from here on in will be much simpler.

But none of that really means much because you are yet to have anything to play with. And that's pretty much because when we near completion, I say "hey, you know what we should do is..." The most recent end to that sentence was "have it so dates show up in any timezone the customer wants, rather than just GMT". And one-sentence changes like that sometimes take a really long time. Like that one-sentence change did :-)

So I'm going to stop trying to make v3.0.0 "perfect", because it is just going to be an alpha release after all, and instead pump it out, use it as a base, and build on it incrementally.

Also in 2009 we got a new website, with forums. But of course everyone's scared to be the first to post in a shiny new forum :-)

Best wishes for the new year.
 

New Release: v2.0.10

Simply moved the automated trading expiration date forward. If you are not using auto-trading then you can continue using v2.0.9.

Added in v2.0.10

  • Automated trading expiration date moved forward to 31st March 2010.

New Release: v2.0.9 - Free

All existing customers have tested v2.0.9 and report that it works fine. And so it is now available for everyone, and we will begin the transition to the new website.

Remember that once we change websites, any previous version will cease to work.

To make sure nobody was effected by that, v2.0.9 no longer has a version check, nor a subscription check (and also we got existing customers to test it before making the change).

Another reason you might want to use v2.0.9 is because Backtesting and Alerts are now free for all.

This is of course all gearing up for the release of v3.

Here is the full list of changes:

Added in v2.0.9

  • Removed version check.
  • Removed subscription check.
  • Backtesting and Alerts now free.

New website complete

Step 1 on the road to v3 is to finish the new website with forums and so on. That is complete. However, when we upload that new website, it's going to break v2.0.8 and any version before that. So before we can upload the website, first we need to make available v2.0.9.

To explain a bit more on why a new website would break the software...

In v2.0.8 and earlier, the first thing that happens when you start the software is a version check. The software asks the website "what's the minimum required version?"

Next comes the subscription check. The software asks the website "is this computer allowed to use backtesting, alerts, and/or auto-trading?"

Just to get all technical on you for a second, let's say the old website speaks English, and the new website speaks Japanese. Here's what happens now:

v2.0.8: What's the minimum required version?
website: Hello sir. Thank you for your enquiry. We are pleased to be able to tell you that the minimum required version number is v2.0.6.

When we upload the new website, here's what's going to happen:

v2.0.8: What's the minimum required version?
website: ごめんごめん。英語話せないんだけど。日本語できる人はいないんでしょうか?

Unfortunately for v2.0.8, there will indeed be no one around who can speak Japanese, so the version check will fail and you won't be able to move past the version check window.

That's where v2.0.9 comes in. So that's our next task.

Incidentally, these calls to the website have been an annoyance to many customers over the years. Mainly because it enforced an internet connection to use the software, even if you just wanted to do some backtesting or something. So in v3 we've changed it.

When you start v3, there is no version check, and there is no subscription check.

Backtesting, alerts, price downloads will all be free.

Auto-trading in demo accounts will be free (where we have the ability to differentiate between demo and live accounts in our code).

It's only when you finally come to auto-trade in your live account where we will charge to use our software. And this is when the subscription check takes place. You need an internet connection to do auto-trading anyway, so this shouldn't be a problem.

You can do a version check yourself, but the results will be more "what versions are available", rather than force you to upgrade to a particular version.

Lastly, you may have noticed that the minimum required version number has been set to 2.0.6. This version was chosen because the majority of customers were still using v2.0.6, instead of the current release of v2.0.8. And that's fine, because v2.0.7 and v2.0.8 added only the ability to download prices from FXCM. If you don't use FXCM then you wouldn't have needed to upgrade. However...

When the new website is published, that will essentially be a forced upgrade to v2.0.9. Just an advanced warning that you'll soon need to set aside some time to upgrade.

The Road To v3

1. New Website

We've got a new website in the making, with forums. Also other cool stuff.

But when we make that website live, that's going to break v2. Because v2 currently "calls home" to the thinkingstuff.com website to find the required version number and check your subscription details.

So before we can release the new website, we have to release...
 

2. New Update To v2

... which doesn't do the call-home-thing.

In this new version, we are also going to make everything except auto-trading free. So backtesting and alerts will be gratis. Because that's the plan for v3 as well.
 

3. Alpha Release of v3

In the software industry, releases are labelled "alpha", "beta", "release candidate", "stable", in order of quality. (Or in order of alleged quality). So when I say "alpha release", you need to understand that it's going to be a piece of crap :-) It won't do auto-trading, and you shouldn't rely on the backtesting results. It'll be just good enough to preview what v3 can do, hopefully get you excited, and hopefully elicit some helpful feedback and suggestions.

It was customer feedback that made us go back and rewrite TSATM. And although some hard work and long hours, it's definitely been a huge improvement. We hope the feedback continues so v3 becomes an industry leader.
 

4. Continued Improvement of v3

As per title.

v3 Completed Its First Backtest

About 2 years ago I wanted to move house. So I looked at an apartment, and it was nice enough and had fantastic views of the beach. Next door was an empty yard. Just grass. I signed a 6-month lease.

On the very day that I moved in to that apartment, they started building an apartment block in that empty yard :-) I was stuck there for 6 months, and nobody would take over my lease because of the construction next door.

It seemed like it took a really long time just to dig the hole for the foundation and the carpark. But once the foundation was complete, the actual construction of the apartment block went relatively quickly (though I still cursed them every morning).

And that's the segue into the update on v3. I tore everything down and started again. And man, it seemed like it took a really long time to create the foundation. But now that I'm getting into the "fun stuff" (of getting TSATM to actually do backtests and autotrading, etc), it's all just clicking into place.

v3 completed its first backtest yesterday, 24th August. A milestone which probably doesn't mean much to you, but was certainly a big deal for us. Because so many little operations have to work, and work together, in order to spit out a backtest result.

Get excited! :-)

New Release: v2.0.8 - FXCM Historical Prices II

FXCM either stopped offering USDSGD prices, or only offer it to accounts in certain denominations (e.g. USD). 'Coz trying to subscribe to that currency now fails, and that in turn prevents anybody from downloading price history from FXCM.

Anyway, fixed now. Go grab v2.0.8, and go watch the video tutorial on downloading historical price data from FXCM. Also:

This is the first release to be done using Visual Studio 2008. So, in case any problems arise, I've left v2.0.7 available for download.

Anyhoo, here is the full list of changes:

Fixed in v2.0.8

  • No longer cancels login to FXCM accounts if a subscription to a particular currency fails upon login.

Version 3.0.0

A quick summary before I get into the explanation: TS v3.0.0 will be a complete re-write. We threw just about everything out and started again. If you have any suggestions for new features; if there's anything in the current version of TS that's annoys you, that hampers your efforts, that prevented you from installing it or understanding how it works; please tell us. Either through the Contact Us page, or via the comments below.

If you, personally, wanted automated trading software designed just for you, what features would be in it?

We've completely re-designed TS. Nothing has been spared. If you have any suggestions, anything at all, now is the time to come forward.

To the explanation...

About 4 to 4.5 years ago, in my room near Shinjuku in Tokyo, Japan, I started making some software to help me out with my currency trading. It was just for backtesting at first, but things progressed, knowledge expanded, plans became grander.

Now I have a company with a few staff based around that software, and our goal here at Thinking Stuff Pty Ltd, printed and stuck up on the wall, is to bring automated trading to the masses. Regardless of how good you are with computers, we think you should have all the advantages that automated trading provides at your fingertips.

Just about every manual on how to create a successful business says to find a niche. Ours' is the niche of people who want to get into automated trading but don't have the computer skills. And even if you have computer skills, it doesn't necessarily mean you want to learn computer programming. And even if you know computer programming, I'm guessing you mostly prefer to just click buttons than write code. I know I certainly enjoy downloading something and using it a few second later. So really, our niche are people who want to get into automated trading quickly and easily. (TradeStation, MQL, etc, will always have their niches, and we don't pretend we are direct competitors of theirs' other than a small subset of potential customers).

Over the years though, we've run into speed bumps. People would ask "can it do this?", and we'd have to say "no, in trying to make TS as simple as possible to use, we had to make some design decisions that cut off certain types of trading".

And there was the legacy code. "Legacy code" means old code, that's been around forever, that nobody wants to touch because it looks really scary and would probably break everything.

Actually my buddy came around the other week and asked why some things were like there were, and I had to reply a few times "historical reasons".

From comments and emails we get, and me saying to my buddy "historical reasons" more than a few times, it was clear that things had to change. People both want to be able to do more complicated trading systems, and they want the software to be easier to use.

The legacy code was holding us back. PostgreSQL was holding us back. The version check and subscription system were holding us back. The lack of supported brokers was holding us back. The lack of custom indicators was holding us back. This website and the lack of forums were holding us back.

So I thought to myself "Sharky, if you were going to design this from scratch, how would you do it?" And because I now have 4.5 years experience in writing this kind of software, along with 4.5 years' worth of comments and emails from customers, I made a lot of different decisions to 4.5 years ago. A lot of problems solved. A lot of niggly little things solved. A lot of big annoying things solved. And some prettier code too :-)

The drawback to all this of course, is that the monthly release had to be abandoned for a couple of months. And the next release, being a complete re-write, will need very thorough testing from us *and you* before it's ready for use. But let me guarantee to you, that this is entirely worth the trouble, and the few steps back will be followed by about 100 steps forward.

So as I said in the opening, if you have anything you want changed; anything you think needs to be changed; any reason at all that prevented you from signing up (and by the way - there probably won't be a subscription fee from v3 onwards), now is the time to come forward. Don't assume anything. The more people request a feature, the more likely it is to get done. Thanks.

New Video Tutorial

Backtesting using FXCM historical price data demonstrates these things:

  1. where to go to set up a demo FXCM account
  2. how to enter that account's details into TS
  3. how to download the historical price data from FXCM
  4. how to create a simple trading system
  5. how to backtest that trading system over the historical price data
  6. viewing the backtesting results

Steps 4 to 6 should make this video useful viewing even if you aren't going to use FXCM.