View Single Post
  #116 (permalink)  
Old 07-14-2006, 06:19 PM
Wackena's Avatar
Wackena Wackena is offline
Senior Member
 
Join Date: May 2006
Posts: 216
Wackena is on a distinguished road
Quote:
Originally Posted by Hendrick
Before I start my holydays Wednesday next week I will try to finish version 1.2 of Phoenix. It’s my intention to remove the Surf function completely as I’m not satisfied with the performance of it. Apart from that I think it’s after all not a good idea to try to make an EA that’s suitable for a ranging as well as a trending market. I think it’s better to focus on the fact that Phoenix is a counter-trend EA that’s doing very well in a ranging market. We better try to improve Phoenix insofar that it avoids the trending markets and gets the most out of a ranging market.

How to improve Phoenix?

Avoid a trending/volatile market: I think SafePipsDistance and SafeArea are doing quit well. We maybe need a little tweaking.

Avoid trading during certain parts of the day: The TradeFrom/TradeUntil will do.

Money management is another issue. How to deal with loosing trades? There are 3 different approaches:

Phoenix is using a money management function were the number of lots is based on the free margin of your account. If the free margin decreases so will the number of lots and vice versa.

After a loosing trade you open a new trade for the same pair and you increase your lots with the intention to level out the first loosing trade. If the second is a loser too you increase your lots again. So with a TP=25 and SL=50 and Lots=1 you get the following summary:

First trade 1 lot looser -50
Second trade 2 lots looser -100
Third trade 4 lots looser -200
Fourth trade 8 lots looser -400
Fifth trade 16 lots and so on.

The idea behind this is that after a couple of losers for the same pair it becomes more and more unlikely that the following trade is a loser too. I’ve never tried this approach, but I like the idea.

The third approach is to decrease the number of lots after a couple of losers in a row (for different pairs). The idea behind this is that the EA apparently arrived in a less suitable period and have to wait for better times. Only after a couple of winning trades the number of lots will increase. I think we have sufficient options for Phoenix to avoid these less suitable periods so we leave this approach for what it is.

I think I will add the second option (increase the number of lots after a loosing trade) to the next version of Phoenix for those who want to user this.

At the end of every week I study all the trades that were made by Phoenix. This is very useful and I’ve noticed that all the JPY-pairs need a different approach. I will tell you more in my next post.

This weekend I will make a new version of Phoenix, test it on Monday and post it Tuesday. Stay tuned!

Hendrick,

If I read the code correctly in Phoenix v1.1, if using Micro account and MM that calculates, using 5% Risk, the lot size to 0.025, then the code below will return LotMM=0.

lotMM = MathRound(lotMM*10)/10; MathRound(0.025*10) will return 0.

You might consdier using the NormalizeDouble() function to round the lots. You can set number of decimal points needed.

if(Lots>0.1) Lots=NormalizeDouble(Lots,1); else Lots=NormalizeDouble(Lots,2);

Is my assumption above correct and could this code be useful?

Wackena
Reply With Quote