New EA based on the !xMeter - page 62

 
Carl:
The default settings is NOT to use Stochastic.

Hi again,

You are write I turn on Stochastic from settings. But why are look back only 24 instead of 84. If you try some wave indicators they are looking for the values for a longer periods. That why I still wondering how this EA will performs in longer period then M1. I think that M1 is too short period for calculating currency strength but I am not sure. I was looking for the calculation of the currency strengths for M1 but it starts from M5.

Do you think that this short period is not the reason for the wrong direction of positions?

On my demo for 4 months (1000 USD initial balance I gain 471 USD till now current open positions -105USD)

If you look at the mq4-code., then you will find...

int ahighBar = iHighest(symb, 60, MODE_HIGH, xMeterLookBackPer / 3, 0);

int alowBar = iLowest(symb, 60, MODE_LOW, xMeterLookBackPer / 3, 0);

...which means that the xMeterLookBackPer is only used to calculate the highest and lowest value within that last hours. Since most trades are closed within 24 hours, I consider 84 hours to be too many hours back. Since this EA trades on all major currencies, it's not a good idea to let positions be opened too long. They should be closed ASAP. So waves should be within that value (xMeterLookBackPer).

I think you're wrong when you say that most indicators are looking for longer periods. All wave indicators can be adjusted for periods. For instance, RSI has the default period of 14. So if you apply this indicator to the H1 chart it will calculate RSI based on values 14 hours back.

When I added Stochastiic I wanted more precise times for entry, and using any period less than D1 can be used here. I first started with M1, which I know might be just too short. I later on added all other timeframes. And I'm covinced that all timeframes less than D1 can be used here, but we should not use higher timeframes than H1 (since this means looking back 14 hours - which I used as the period for Stochastic). So the Stochastic has nothing to do with how this EA calculates the currency strength, it's just a way to find more precise entry points. So both the condition that the currency strength must be there as well as the Stochastic. And as I said, I never used Stochastic in this my test where the account made a bid DD of ~75% due to one single currency pair.

Re. your 4 month backtest. Do you mind showing me/us your demo-result? Can you save it as a Detailed Report (right-click on the Account History tab and choose Save as Detailed Report, then either upload it here or send it in e-mail attachment to me. I just want to compare it with my result.

 

Hi Carl,

Related to the time - I know that the trades should be closed ASAP but in my case they are waiting for a longer periods.

I have a question:

You have more than one deal in the wrong direction. You have the average stop with small +. I would like to know is in this case EA applied dynamic trailing stop or it is only a fixed stop. If the trend goes in the proper direction and you have more then 1 open trades you will be more profitable.

Unfortunately in many cases as you will see from the report it is opening trades against the trend and even with this current results I still thing that it is quite dangerous to use the EA in this configuration.

 

[langtitle=id]terima kasih semuanya,....good luck....[/langtitle]

[lang=id]terima kasih semuanya,....good luck....[/lang]

 

Correlation not working

Hi Carl,

This EA having lots of bugs. With SwapMode = SWAP_DONT_CARE param. Correlation not working. EA starts open trade of the same Correlation pairs and it leads to double loss or multiple recovery. I suspect someone altered the EA at the begining that leads to lots of bugs.

Regards,

Guru.

 
Carl:

Hi Carl,

Related to the time - I know that the trades should be closed ASAP but in my case they are waiting for a longer periods.

I have a question:

You have more than one deal in the wrong direction. You have the average stop with small +. I would like to know is in this case EA applied dynamic trailing stop or it is only a fixed stop. If the trend goes in the proper direction and you have more then 1 open trades you will be more profitable.

Unfortunately in many cases as you will see from the report it is opening trades against the trend and even with this current results I still thing that it is quite dangerous to use the EA in this configuration.

The code contains the following...

#define STOPLOSS 500 // safety stoploss

#define SL_MOVING 50 // stoploss moving

#define TP_MOVING 5 // takeprofit moving

...so it has a moving stoploss of 50 pips and a moving takeprofit of 5 pips. Also the stoploss as default is 500 pips!!!

In my opinion, this is extremely high, especially for an EA that open lots of positions at the same time.

The above #define lines can be changed to externals instead, so that their values easily can be changed.

 
guruliving:
Hi Carl,

This EA having lots of bugs. With SwapMode = SWAP_DONT_CARE param. Correlation not working. EA starts open trade of the same Correlation pairs and it leads to double loss or multiple recovery. I suspect someone altered the EA at the begining that leads to lots of bugs.

Regards,

Guru.

Yes, I agree that this EA is buggy. This EA should be remade from scratch with only the currency strength as the core signal, and then different settings for choosing other indicators to pinpoint more precisely when to open positions, and a proper money management. In its current form it's extremely dangerous and unreliable, even though it makes lots of good trades.

 
zed2002:
It seems there are error in calculate currencies meter.

Currencies meter is calculated as sum of currency's power. It's clear.

aMeter = NormalizeDouble((aLookup+aLookup+aLookup+aStrength[EURUSD]+aStrength[GBPUSD]+aStrength[AUDUSD])/6,1);

USDJPY - power USD vs JPY

USDCHF - power USD vs CHF

USDCAD - power USD vs CAD

GBPUSD - power GBP vs USD - isn't it?

Same about EURUSD , AUDUSD.

May be I don't understand something. Who can explain it ?

Thanks.

aMeter = NormalizeDouble((aLookup+aLookup+aLookup+aStrength[EURUSD]+aStrength[GBPUSD]+aStrength[AUDUSD])/6,1);

aMeter[EUR] = NormalizeDouble((aLookup[EURUSD]+aLookup[EURJPY]+aLookup[EURGBP]+aLookup[EURCHF]+aLookup[EURAUD])/5,1);

aMeter[GBP] = NormalizeDouble((aLookup[GBPUSD]+aLookup[GBPJPY]+aLookup[GBPCHF]+aStrength[EURGBP])/4,1);

aMeter[CHF] = NormalizeDouble((aStrength+aStrength[EURCHF]+aStrength[GBPCHF])/3,1);

aMeter[CAD] = NormalizeDouble((aStrength),1);

aMeter[AUD] = NormalizeDouble((aLookup[AUDUSD]+aStrength[EURAUD])/2,1);

aMeter[JPY] = NormalizeDouble((aStrength+aStrength[EURJPY]+aStrength[GBPJPY])/3,1);

I am trying to figure this out too...

Anyone can share ideas how is this logic works?

 

I can explain how currency meter work as an idea, and can also explain how an EA works out from reading its sourcecode. However, I cannot explain the logic in the text you refer to, simply 'cause I cannot see that text in any if the latest versions of this EA?

 

IS the code required

Carl:
I can explain how currency meter work as an idea, and can also explain how an EA works out from reading its sourcecode. However, I cannot explain the logic in the text you refer to, simply 'cause I cannot see that text in any if the latest versions of this EA?

Hi carl

in void SelectTradePairs() function last few lines of code not required. I think we can remove it. Because when you next call the funcation SelectTradePairs() will expty in line ArrayResize(Symbols, 0); So the code should be removed.

//--- remove symbols that cannot be bought or sold ---

for (i = TradeableCount - 1; i >= 0; i--) {

found = false;

for (j = 0; j != TradeCountBuy; j++)

if (Symbols == TradePairBuy[j]) {

found = true;

break;

}

if (!found)

for (j = 0; j != TradeCountSell; j++)

if (Symbols == TradePairSell[j]) {

found = true;

break;

}

if (!found) {

//--- remove symbol ---

RemoveSymbol(Symbols, Symbols, TradeableCount);

}

}

 

Yes, maybe. But it does not change the trade logic. The problem with this EA as I see it, is that it uses "grid strategy", something that usually works very well, but as soon as a currency pair trends strongly in one direction it will result in a major DD that easily wipes out the account. Not all currency pairs are suited for grid-trading, so it's basically wrong to try to improve the EA in its current form. My suggestion is to change it from a grid-strategy to another strategy.

guruliving:
Hi carl

in void SelectTradePairs() function last few lines of code not required. I think we can remove it. Because when you next call the funcation SelectTradePairs() will expty in line ArrayResize(Symbols, 0); So the code should be removed.

//--- remove symbols that cannot be bought or sold ---

Reason: