Great EA in backtest! - page 133

 

Very odd, Updated the data via download function and generated new report.

*edit* , meant to mention that this was with build 200

 

I've been working with the ppf version.

Doing some backtest's, trying to optimize the settings for my risk tolerance (higher than yours Aaragorn).

I do keep noticing that my backtests open way less Long trades than short ones. It makes me think that your current version of Cyb does a great job of opening short positions, but maybe there is a better way of opening long ones. I know there would be a lot of work to make those kind of changes, and frankly they are beyond me atm

Currently forward testing Demo, Cyb 1.93 ppf, Balance of $9943. I'm pretty happy with that, it's not losing money quickly, which means it's staying in the game ready for a positive move.

Sorry for the long post!

Best backtest to date for 2006;

 

Hey pple...

There goes the weekly comparative report (backtest vs. DEMO Account);

 

Hi

Hi!

I have been testing the free version of CT found in MIG with acceptable results for T15m, but at 8.00, 13 and 20 GMT there are repeted losses. I tried to paste the part of disabling trading hours

extern string TimeTradeHoursDisabled="08,13,20"; // Example "00,01,02,03,04,05" GMT

extern int GMT=1; // For North Finance GMT = 3, Alpari GMT = 1, IBFX GMT = -1 etc.

extern int MagicNumber=123000; // Magic Number -- change for every pair traded

// ----

int NoTradeHours1=25; // Time not trade

int NoTradeHours2=25; // Time not trade

int NoTradeHours3=25; // Time not trade

int NoTradeHours4=25; // Time not trade

int NoTradeHours5=25; // Time not trade

int NoTradeHours6=25; // Time not trade

I also modified the end adding

//+------------------------------------------------------------------+

//| expert start function |

//+------------------------------------------------------------------+

int start()

{

GetMarketInfo();

CyberiaLots();

CalculateSpread();

FindSuitablePeriod();

CyberiaDecision();

VerbiageAndTimeCheck();

Trade();

SaveStat();

return(0);

}

int VerbiageAndTimeCheck() {

string comment_line="", comment_time="", comment_ver="";

string sp = "------------------------------\n";

comment_ver=StringConcatenate(SystemName," v. ",version,"\n");

if (StringLen(TimeTradeHoursDisabled) > 1) {

NoTradeHours1 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,0,2));

}

if (StringLen(TimeTradeHoursDisabled) > 4) {

NoTradeHours2 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,3,2));

}

if (StringLen(TimeTradeHoursDisabled) > 7) {

NoTradeHours3 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,6,2));

}

if (StringLen(TimeTradeHoursDisabled) > 10) {

NoTradeHours4 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,9,2));

}

if (StringLen(TimeTradeHoursDisabled) > 13) {

NoTradeHours5 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,12,2));

}

if (StringLen(TimeTradeHoursDisabled) > 16) {

NoTradeHours6 = StrToInteger(StringSubstr(TimeTradeHoursDisabled,15,2));

}

int h=TimeHour(CurTime());

int hadj=TimeHour(CurTime())-GMT;

if (((hadj) == NoTradeHours1) || ((hadj) == NoTradeHours2) || ((hadj) == NoTradeHours3) || ((hadj) == NoTradeHours4) ||

((hadj) == NoTradeHours5) || ((hadj) == NoTradeHours6)) {

BlockSell = true;

BlockBuy = true;

comment_time=StringConcatenate("Bad Trading Hour: ", hadj, " GMT");

} else {

BlockSell = false;

BlockBuy = false;

comment_time=StringConcatenate("Good Trading Hour: ", hadj, " GMT");

}

comment_line = comment_ver + sp + comment_time;

if (IsTesting()==false)

Comment(comment_line);

}

But it doesn't work

Somebody knows how to solve this problem?

I attached the CT I downloaded, and tried forward at MIG with good results except for )8,13,20 GMT

Can sb post the latest CT being used

Thanks

Paco

Files:
 

Ok found some ideal settings with CT. There are some varaibles in the risk code which are not setup correctly. The idea was inspired from the later versions using the risk table exported to excel but in fact not required to find absolute values only relative!! The absolute values will change from market conditions but relative values to the risk of opening or closing trades is what we want.

I now have 3 simple extern vars which can be easily modified based on very old version 1.85f in my opinion later versions have made things worse.

I use NorthFinance for testing and demo due to thier almost always fixed 2 pip spreads. (can change in extreme rare conditions) Other like IB and FDD going wide can literally lose a massive 60% of your yearly gains!!

extern double closemultiplier = 1.5; This values changes the risk profile on closing orders the risk of closing should always be less then opening. This value is less then open but more then default builds. In other words we are are scared to enter the market but petrified of lossing our gains:) Sometimes this looks such a waste when the market moves on another 50 pips but my studies have shown you have to be extremly prudent for this to work.

extern double openmultiplier = 1.7; This value changes the risk profile for opening trades. Its greater then then close so in other words we look only for " safe" entries. The 1.0 value woud represent all other builds and i have increased the probabilty and reduced the risk. The trade off is less trades. Too high and you can pass several days with no trades but the profit factor increases dramatically.

extern double StopBias =1.1; This value increases relative postioning for the auto stop loss. As stop loss should be a function of market volatitly then do NOT use fixed hard stops. A 20 stop may have been fine in August but certainly not now when ATR is well over 100 on euro. Therefore wherever possible stops should be a function of current market conditions. The auto stop loss uses the last few bars and works out the ATR plus spread. This means stops are just outside of the noise envelope which is exactly where we want to them to be. The GA optimiser has found that a slight increase here over default of 1 prevents stop banging and taking those really annoying losses by a mere 2 or 3 pips as the edges of the noise envolope is tested.

I only use CCI as a filter nothing else the more you put in the worse things get, becuse without something lagging we cant determine a history trail in which to work on. Forget using hour or news time filters and or trailing stops the bulk of the engine to CT is already there just not quite tuned. Many profitble trades occur during news. Try to use relative decisions and % of something rather then absolute values.

My risk on lots is 0.4 and max lots changed to 99. Dont limit to 10 whats the point of limiting gains when most brokers will allow 100 lots on auto?

I leave you smart guys to think about this and see what you come up with:)

1st Jan till today.

Bars in test 49504

Ticks modelled 1246996

Modelling quality 90.00%

Initial deposit 10000.00

Total net profit 97985.55

Gross profit 224608.37

Gross loss -126622.82

Profit factor 1.77

Expected payoff 176.23

Absolute drawdown 953.60

Maximal drawdown 18422.75 (17.57%)

Relative drawdown 32.86% (5034.65) respectable considering huge gains.

Total trades 556

Short positions (won %) 256 (89.45%)

Long positions (won %) 300 (94.00%)

Profit trades (% of total) 511 (91.91%) very pleasing over 90% success rate.

Loss trades (% of total) 45 (8.09%) Doesnt lose very often.

Largest

profit trade 3894.00

loss trade -11830.00

Average

profit trade 439.55

loss trade -2813.84

Maximum

consecutive wins (profit in money) 74 (19719.35)

consecutive losses (loss in money) 3 (-2841.40)

Maximal

consecutive profit (count of wins) 33358.89 (33)

consecutive loss (count of losses) -11830.00 (1)

Average

consecutive wins 13

consecutive losses 1

 

I am closing my account with IBFX today after watching them fluctuate the eurusd up to a 6 pip spread. I will open an account with FXDD following Davidsx's example. I hope that this will yet become a useful EA with a broker that doesn't jack the spreads around as much.

 

Merry Christmas to me. My new account is open and funded @ fxdd. I have CT going now with max lots=0.01 and I'm hoping to see that 75% win pattern that davidsx is getting. that would be great. I'm also encouraged to learn that fxdd doesn't have any time limit on positions. Some of the strategies I've seen do best exploit positions which are open only a minute or less.

 

Sorry folks I got my wires crossed....

I have posted my latest upgrade to CT here...

https://www.mql5.com/en/forum/trading_systems

 

does FXDD have micro account on demo? i did not know that

 
Aaragorn:
Sorry folks I got my wires crossed....

I have posted my latest upgrade to CT here...

https://www.mql5.com/en/forum/trading_systems

It is good to know that we have another version...

I am going to test it now and compare the results with v1.93b...

By the way, 1.93b on FXDD Demo account showed a performance very similar to Backtests... The difference resided on few less trades, and a little less profit, which isn't worrying at all, given it is NORMAL for CT to have a mediocre performance during year's ends (November and December);

If 1.95 doesn't show better results than 1.93b, I'll surely start with the latter on a FXDD Live account by 2007, given it has been performed good enough for me.

Merry Christmas to everyone!!

and Happy New Year if I don't post by then!!