Sunday, August 7, 2011

Waking up to Neural Network committees

Time to wake up from my blogging slumber and write a few more posts.

A huge amount has happened in my trading life in the well over 12 months since my last post.  I finally completed the early stopping Neural Network library described in my last post of June 2010, wrote an EA or two and played around with it for ages without success.  I also tried the Nearest Neighbour algorithm, (see a subsequent post that I have not yet written but intend to), and became diverted onto many other ideas.

Then … back to the Neural Network idea: how about a committee of Neural Networks?  I had been reluctant to try this purely because of the processing time: as it is, the EA that I have written can take several hours to run a couple of years’ single backtest.

Well, it seems that this may have some promise.  You train a group of NNs with different topologies and parameters, then the simplest method of obtaining a result is to enter a trade when they all agree.  It is a well-established approach in the NN literature.  I’ve tried up to three NNs, although watching grass grow has now become a new fascinating pastime: some of the arrangements I have tried have taken a couple of days to backtest.  Just as with all NN techniques, this is far more art than science: what is a sufficiently different-looking topology to allow the NN to produce a result that is sufficiently independent of its peers?

Attached is a backtest from 1/1/2008 to present for a NN committee of two, trained with a factset of 6/12 EMA cross and both SL and TP set to 100


8 comments:

  1. Hello Paul,
    could you be so kind and help me with your TradefromCSV script? I would like to make it work quicker, that is to read files let say every 5 sec.

    Greetings,
    XX

    ReplyDelete
  2. Hi xx, just change the input variable Repeat_Delay_Seconds to 5

    ReplyDelete
  3. You are right, I have discovered it afterwards. I must say your script is very useful for me. I would only suggest that you could improve it adding following solutions:
    - sending several orders in one file,
    - deleting all and deleting only pending orders
    Thank you very much for you replay.

    ReplyDelete
  4. What is the other parameter "trade debug" for?

    ReplyDelete
  5. Hi xx, I'll look into your suggestions. trade_debug just switches on more entries into the log

    ReplyDelete
  6. Do you have any of your homegrown EA's running on live accounts? How are they doing? Last year I decided to just bite the bullet and figure out how to trade with out EA's and it seems to be working. The only EA that ever made me money was a breakout EA I did on my own, and I was lucky to catch a trend with it. It's offline now. I've been sticking to one method only, its making sense. I never got into NN, to much for my little brain to handle.
    Wishing you good fortune and success on your projects.

    ReplyDelete
  7. Hello Paul,
    how is your trading going? I am still working on my method. I would like to ask do you have a script that reports account balance after every transaction or in a certain time period?

    XX

    ReplyDelete
  8. Sorry xx, I don't have a script like that. I'll publish a far more complex script (actually an indicator) which emails the status of the account at regular intervals.

    ReplyDelete