Saturday, May 29, 2010

Meta-Trader - Forex night sweats

Welcome back Meta-Traders and Forex fans.

It was a week with some drawdown for the robots I'm following - which isn't surprising after the run of winners we have had recently.

On the global macro side, the equity markets hit what seemed to be a short-term bottom on Tuesday and worked their way higher from there. EUR/USD also held its bottom (made the prior week) in the 1.2150 area. Of course we won't know until later whether this is a real bottom - but then again we don't care because we are system traders and we can make money in any market, right?

A quick housekeeping note - the demo accounts i'm following all expired this week. So I opened up new demo accounts and set the initial deposit equal to the balance on the prior demo at the time of expiration. So the % gains will be based on the starting $1000 account size but unfortunately our trading history has been lost for all except my live Megadroid account.

Anyway back to the systems. Megadroid Demo continued to trade like clockwork and picked up 31 pips or about 3% on the week. Megadroid demo is now up a solid 29.4% for the year easily exceeding my 1% per week target.

Megadroid Live got into a bit of trouble on Tuesday. Both MD Live and MD demo bought 0.10 EUR/USD at 1.2348. On the demo side, the trade closed with its 10-pip take profit in a little over 1 hour's time. In the live account, the trade must have missed the TP by just 2 or 3 pips (based on a wider spread in live account) and instead went into drawdown. By the time I went to bed, the position was in 70 pips drawdown and I had no choice but to go to bed and let it ride.

This is a similar situation I've been in the the past few drawdowns with Megadroid. The trade goes 1 of 3 ways.

  • The robot takes a 10-pip take profit within an hour or 2.

  • The trade goes into drawdown and the robot will close out the trade for any profit whatsoever for about the next 14 hours.

  • After 14 hours if the trade still hasn't shown a profit, it will be closed out for whatever loss is on the table at that time.

There is a 4th option and that is that the robot will take the 200 pips stop loss in under 14 hours. Fortunately, I haven't seen that outcome yet.

Anyway, I woke up the next morning and found that most of the 70 pip drawdown had been recovered and I was a mere 10-pips away from exiting this trade with a small profit. So I went to work and later found out that the trade turned back against me and was closed with a -51 pip loss or about 5% of the account. Fortunately the trade size was 0.10 - recall that i'm now managing the 'Recovery Mode' feature myself because this feature in the robot seems to be broken.

So I came home at the end of the day and set the account risk back up to 0.10 so it was now trading double the intended lot size or 0.20. This worked like a champ and the robot took 27 pips out of the market it 3 quick trades, two of which lasted under 10 minutes! So in one day's trading I made back the entire loss which shows the power and accuracy of the Megadroid robot. Also, I set my risk value back down to to 0.05 having recovered this week's drawdown.

In other action, God's Gift GBP/USD took a small, 6-pip profit on Friday and remains up an impressive 18.1% on the year. God's Gift EUR/USD took a 70-pip drawdown but remains up 11.6% for the year

Finally, Megadroid Pro is sucking wind down 27% in just 2 weeks time. Even more suckish is Forex Maximizer which is down a stunning 45.7% is the same 2 weeks. I'll be going after Click Bank for a refund of my $97. Should be interesting to see if they give me any trouble with the refund. Hard to beleive Megadroid and Megadroid pro could be from the same developers.

On a final note, my regular job has kept me busy and both ends of the work day, so I haven't had much chance to do any new robot development. I have some great ideas however regarding multi-timeframe systems so check back later and enjoy your weekend.

5 comments:

  1. Hello Chris,

    Thank you for the update :o) It is always interesting to read your weekend post !

    I would like to put some attention here in the live/demo differences you are observing and the huge - yet not very studied - effect that spread widening has on these systems. Here you missed a 10 pip TP by a few pips due to live execution, imagine if this was the case for just 5% of the trades on backtesting results. Generally one minute interpolation errors and the neglect of live execution variables deeply underestimates long term performance of systems with small TP values and very unfavorable risk to reward ratios. The reason why I don't trade this systems is precisely because of this effect. In the long term an expert with an unfavorable risk to reward ratio that just slightly underestimates loses will put a huge risk on overall account equity. It is not possible - using metatrader 4 - to get accurate risk and draw down targets for these scalping systems !

    Regarding Maximizer and Megadroid Pro... Well, I guess we all knew from the beginning where those would go ;o). Traders sometimes underestimate the vital need for accurate, extensive and reliable evidence to address long term profitability and systems that neglect to show it are most of the time just... Well, like Maximizer and Megadroid Pro.

    Again, very interesting post so thank you very much for keeping us updated. Of course, I am much more interested in the EA development side of Chris than the "horse-race", I am sure that you will impress us with some well-designed long term profitable systems. Keep up the good work :o)

    Best Regards,

    Daniel

    ReplyDelete
  2. Daniel-

    Thanks for the comments.

    Despite the broker issues, i'm still satisfied with the Megadroid robot performance. I really can't blame the system in this case and I think if the robot were executed on a commission-based broker (such as IamFX) the live account performance would be much closer to the demo account performance. And I don't want to switch brokers at this time of the year because I want to get a full years performance in both live and demo trading. Adding another Megadroid would mean another $97 purchase of Megadroid since they limit you to 1 live and one demo account per Clickbank receipt code.

    BTW - I put the request in for refund for Maximizer and MD Pro - let's see what happens.

    Thanks again for the comment,

    Chris

    ReplyDelete
  3. I have an EA question that you or maybe Daniel could answer.

    When using the refreshrates() call, is it suppose to go out immediately and get the latest into your internal variables Ask and Bid or does it reset those variables to 0 and wait for the next tick?

    I had a failed trade today #136. I run the refresh rates just before I make the ordersend() call. I use the Ask or Bid internal variables. I am guessing that the trade was just refused, the price moved really quickly in one minute. Or it could be the EUR/USD was temporarily turned off by broker (according to the error code).

    At any rate I wish I new the best way to do stuff just before I execute the ordersend(). Maybe some good programming tips for optimal success when opening orders.

    Thanks.

    JT

    ReplyDelete
  4. JT-

    According to "the book", RefreshRates() refreshes all the internal variables (Bid, Ask, etc) without waiting for the next tick. Take a look at:

    http://book.mql4.com/variables/predefined

    In terms of how to code the order execution, take a look at:

    http://book.mql4.com/trading/ordersend

    Unfortunately, it does not lend itself to a simply summary since there is a lot to it.

    The simplest thing is for your EA to enter at Market minus some amount of slippage. If the order is rejected, presumably the conditions that lead you to execute the order will happen again shortly, and in which case your order will execute on the next tick. If it doesn't, perhaps the market has moved too far too fast, and it is preferable to have missed the order.

    In any case, the results of order execution will be saved in a file, named for each day found under:

    {MetatraderRootFolder}\Logs\yyyymmdd.log

    From there you can see the details results from the Journal tab inside MT4.

    I probably didn't answer your question, but for whatever its worth, I hope it helps,

    Chris

    ReplyDelete
  5. I was worried that refreshrates() set those internal variables to 0 and those internal variables did not get set to fresh values until the next tick.

    I am implementing 3 tries. If it fails at first try it will tell me the error code, sleep a half second, then refreshrates() and try again. Of course if the order succeeds at any point it kicks out of retries loop.

    Thanks for your input. I am a little shocked at how live trading Tiger Tail is working. There have only been 3 possible trades since I went live. First one went off without a hitch, second one I got a re-quote error, third one is this silly #136 error (no prices/no quotes/ possibly refused order). Missing this last one was okay with me as it would have failed, but it would be nice to get this thing working without so many errors. Otherwise I may go back to open orders (broadcasting my position).

    Thanks again

    JT

    ReplyDelete