Jump to content

Megadroid Pro (links first post)


Recommended Posts

  • Replies 2.1k
  • Created
  • Last Reply

Top Posters In This Topic

Re: Megadroid Pro

 

Ok folx, I have found it. (I think.)

It will be a bit long story, I'm sorry. :)

 

As a foreword, I'd like to tell you it was not my fault. However, it's not

the authors' fault, either. (It's your fault... :D :D :D )

 

MegaDroidPro was created for trading up to a maximum of FOUR DIFFERENT pairs.

While you're trading 1 x EURUSD, 1 x EURGBP, 1 x EURCHF and 1 x USDCHF, there

should be no problems showing up.

 

But as you're begin to trade more EURGBP or EURCHF pairs or such pairs which

requires these logic settings, then MDPro will probably crash sooner or later.

As I've seen, if I trade another EURUSD or USDCHF pair (or pairs that needs

these logics) the problem is not appearing.

 

Just try it:

Start an EURGBP and an EURCHF chart. Put MDPro on both of them.

They're running nicely.

Now go and backtest EURGBP with MDPro. You'll probably get a nice crash.

If not the first time, then at the next try.

I'm on Alpari UK and when TWO EURGBP tests are trying to run with MDPro,

it crashes.

Not so often, but the problem is appearing with EURCHF, too.

 

Now, what is this? And how to fix it?

 

I think there is a limitation or rather a bug in the .dll file. The authors

never thought that there will be more than 4 pairs will be traded with their

robot, especially such pairs which are traded by the same logic. Therefore

they did not tested this case.

That's why I wrote: it's your fault. :D You want to run it on more and more pairs.

 

How to fix this problem? I guess we should not ask the authors to fix the dll

in order to be able to trade 5-8-12 etc. pairs for us. :D

 

Anyway, I have found a solution. It's ugly, it's lame, but IS WORKING!

(at least up to this moment :D )

 

The idea is to make more instances of MegaDroidPro. These instances are

loading their OWN .dll-files, this way there will be no conflict between

the logics.

 

For example: if you're trading a pair which is using logic #3 (EURGBP) and

you want to trade another pair which is also using logic #3, then you MUST

start an other instance of MegaDroidPro for this pair.

Of course, if you want to trade or test a pair which uses logic different than

the one which is already "occupied", then you don't have to start another

instance. One isntance can serve four pairs with DIFFERENT logic.

 

In the next post I'll show you the "new" version.

Link to comment
Share on other sites

Re: Megadroid Pro

 

Crash workaround is here:

 

hxxp://www.filefactory*com/file/ahd9fh3/n/MegaDroidPro_v1_00ee2x_rar

 

MegaDroidPro v1.00ee2 (ee means "Educated & Enhanced" ;) )

------------------------------------------------------------------------

 

Installation:

 

Copy ALL of the .ex4 files to the <your metatrader folder>\experts folder.

Copy ALL of the .dll -files to the <your metatrader folder>\experts\libraries folder.

 

 

This version of MegaDroidPro has

 

1. Disabled Authentication You can write any ReceiptCode or leave the field empty.

The .dll doesn't prevent buy & sell orders anymore if authentication fails.

No annoying "Not Authenticated" message is showing up.

 

2. Applicable on any pairs Not just EUR/USD, EUR/CHF, EUR/GBP and USD/CHF can be traded, but any pairs.

The pairs are traded by separate logics. The default pairs are traded by

their own logics, this cannot be changed.

 

However, if you're start MegaDroidPro on an officially unsupported pair,

you have to choose by which logic should that pair be traded.

For this, there is a Logic variable among the settings.

 

The Logic variable can set to four values:

1 - trade by the EUR/USD logic

2 - trade by the EUR/CHF logic

3 - trade by the EUR/GBP logic

4 - trade by the USD/CHF logic

 

The default is 1 (EUR/USD logic).

 

ATTENTION!

If you want to trade more than one pair with the SAME logic, then you must

use other instance(s) of MegaDroidPro in order to prevent crashes!

This rule is valid for backtests too! (while there is an ongoing live

trading with MegaDroidPro)

MegaDroidPro originally was created for a maximum of four pairs, traded by

DIFFERENT logics!

 

For example:

Let's say you have four charts opened (EURUSD, EURGBP, EURCHF and USDCHF)

and you are running MegaDroidPro on all of them.

Now, if you want to run a backtest or another live trading with MegaDroidPro

on e.g. EURGBP or a pair which uses the EURGBP-logic (3), then it has a good

chance of a crash, because there is already another EURGBP trading in the

background with the SAME instance of MegaDroidPro.

 

There is a workaround for this problem. It's ugly, but works. :)

There are 3 other instances included in this archive:

MegaDroidPro2.dll/ex4, MegaDroidPro3.dll/ex4 and MegaDroidPro4.dll/ex4.

These are completely identical, except that they are loading their own

numbered .dll's separately. This trick is preventing the crashes.

 

If you want to do a backtest or another live trading with a logic that is

already being used by another instance of MegaDroidPro, then you must simply

use (run) a new, numbered copy of the EA.

 

In the example above there all four logics are being used, therefore we must

use another instance of MDPro for the backtest.

It can be either MegaDroidPro2 or MegaDroidPro3 or MegaDroidPro4 as long as

they are not used for a pair with the same logic we want to trade with.

 

Please keep track of the instances and logics you're using in order to

prevent crashes.

 

For example you started MegaDroidPro on a EURGBP chart. This instance cannot

handle more "logic #3" pairs since that one is already occupied by EURGBP.

Now, if you want to trade e.g. GBP/CHF which you found the best to trade

with EURGBP's logic (3), then you must start another instance, like

MegaDroidPro2.

If you want to test or trade further pairs which are not using logic #3,

then you can still safely use MegaDroidPro or MegaDroidPro2 instance for them.

If MegaDroidPro/2 has used up all of its logics, or you want trade another

pair which uses a logic which is already "occupied", then you must run a

new instance, like MegaDroidPro3 and so on.

 

The only drawback of this method is that "Riskproportioning" feature is

being used WITHIN the same instance only. The instances cannot recognize

each other (therefore no more crashes), but the risk cannot be overally

proportioned, just by instances only (in groups of four pairs).

 

3. Spread limit can be freely changed

Some broker has higher night spreads at some pairs, therefore MegaDroid

often sent out the message: "Safe spread limit exceeded"

Therefore there is a new variable called MaxSpread.

If MaxSpread set to 0 (zero), then MegaDroid's default built-in

spread limits are used.

If MaxSpread set to other number, then that number will be used as the new

"Safe spread limit". If you're on 5 digit broker, then multiply it by 10!

 

You can set MaxSpread to -1 (minus one). This tells MegaDroidPro to set

the maximum allowed spread to the currency's actual highest spread.

This way you don't have to guess what is the correct value. This setting is

actually disabling the spread limit protection! (See Warning!)

 

Example: you want to trade GBP/JPY, but its spread is 7 / 10 (day/night).

Set MaxSpread to 10 (night spread) if you're on 4 digit broker.

Set MaxSpread to 100 if you're on 5 digit broker!

Set MaxSpread to -1 and spread limit protection will be disabled.

 

Warning! MegaDroidPro is a scalping robot! If you set MaxSpread too high or

trade pairs with too high spreads, then it may lead to large drawdown or

even account blowup! Try to trade the pairs with the thightest spreads!

 

That's all!

 

Enjoy!

Link to comment
Share on other sites

Re: Megadroid Pro

 

Hey Don on next version can you put in the time window addition I did.. It was pretty simple just change 2 variables.. Take a quick look at the EA I uploaded you will see... Thanks..

 

Uploaded... where? ;)) This forum will not accept archived attachments.

Link to comment
Share on other sites

Re: Megadroid Pro

 

Thanks Don! Great.

 

Does anyone have experience with the broker FXOpen?

And is it good for Megadroid?

 

Further are ECN brokers workable for megadroid?

 

Would be great to receive your support on this one as i heard this broker fxopen is quite good with ea's with rather low spreads, although i would go for the ECN version of fxopen if megadroid allows that.

 

pleased to hear

Link to comment
Share on other sites

Re: Megadroid Pro

 

Thank you very much Don :)

 

So now, the moneymanagement is not the same because the lots are the same for all pairs... Just a lot more for the last pair it's strange...

Before, with the V2, if you set risk at 20% for example, it was ALL pairs they was risked at 20% but now, it's EACH pair so be careful !

Link to comment
Share on other sites

Re: Megadroid Pro

 

Thank you very much Don :)

 

So now, the moneymanagement is not the same because the lots are the same for all pairs... Just a lot more for the last pair it's strange...

Before, with the V2, if you set risk at 20% for example, it was ALL pairs they was risked at 20% but now, it's EACH pair so be careful !

 

Yes, please test it how the MM works from now on.

If you're satisfied with one instance (different logics) only, then everything is normal.

Link to comment
Share on other sites

Re: Megadroid Pro

 

.

Breaking news!

 

A tester of the ee2 (and x) versions reported that by this "education" the MegaDroidPro robot is able to run on MetaTraders which are installed on Linux! :)) :)>-

 

Please confirm this info.

 

The next best thing we want to do is to target a Non-MT4 broker with High liquidity, is offering good spreads and a low minimum account; Create a bridge to that platform and trade Megapro on it.

 

Sounds familiar? :huh:

Link to comment
Share on other sites

Re: Megadroid Pro

 

.

Breaking news!

 

A tester of the ee2 (and x) versions reported that by this "education" the MegaDroidPro robot is able to run on MetaTraders which are installed on Linux! :)) :)>-

 

Please confirm this info.

 

aifaik there is no linux version of mt4

Link to comment
Share on other sites

Re: Megadroid Pro

 

.

Breaking news!

 

A tester of the ee2 (and x) versions reported that by this "education" the MegaDroidPro robot is able to run on MetaTraders which are installed on Linux! :)) :)>-

 

Please confirm this info.

 

The next best thing we want to do is to target a Non-MT4 broker with High liquidity, is offering good spreads and a low minimum account; Create a bridge to that platform and trade Megapro on it.

 

Sounds familiar? :huh:

 

there is software to copy trades between platforms.

"It is inconceivable that anyone will divulge a truly effective get-rich scheme for the price of a book."

Victor Niederhoffer (1943–), US hedge fund manager and statistician

Link to comment
Share on other sites

Re: Megadroid Pro

 

.

Breaking news!

 

A tester of the ee2 (and x) versions reported that by this "education" the MegaDroidPro robot is able to run on MetaTraders which are installed on Linux! :)) :)>-

 

Please confirm this info.

 

aifaik there is no linux version of mt4

 

But there is a wine-emulator. Some linux-ers used to run MT4 on linux through wine. But up to this date they could not run MegaDroid, because it wanted to use wininet.dll for calling home. But wininet.dll is not running on wine... At least as I know.

But from now on MegaDroidPro is not calling wininet.dll anymore...

Link to comment
Share on other sites

Re: Megadroid Pro

 

Firstly many thanks to Don for all his work on this project. Here are my stats for the last two days. I trade on fxdd

 

13100336 2009.07.15 20:29 balance Deposit 3 000.00

13113997 2009.07.16 01:08 buy 0.06 eurusd 1.4095 1.3969 1.4145 2009.07.16 02:02 1.4105 0.00 0.00 0.00 6.00

13114859 2009.07.16 01:20 sell 0.08 usdchf 1.0755 1.0818 1.0695 2009.07.16 10:55 1.0753 0.00 0.00 0.00 1.49

13213513 2009.07.17 01:04 buy 0.08 eurusd 1.4130 1.4054 1.4180 2009.07.17 01:06 1.4140 0.00 0.00 0.00 8.00

13215168 2009.07.17 01:07 sell 0.08 eurchf 1.5186 1.5231 1.5126 2009.07.17 02:31 1.5182 0.00 0.00 0.00 2.98

13215555 2009.07.17 01:10 sell 0.07 eurgbp 0.8610 0.8655 0.8560 2009.07.17 04:10 0.8621 0.00 0.00 0.00 -12.61

13217146 2009.07.17 01:45 sell 0.07 eurgbp 0.8615 0.8680 0.8555 2009.07.17 13:03 0.8649 0.00 0.00 0.00 -38.82

 

 

I removed usdchf after the first day after Don mentioned it was not as profitable. I have removed eurgbp for obvious reasons. JUst added gbpusd for next week and I will test more pairs in a seperate instance of mt4 next week so as aviod logic.

 

I notice some people are getting alot more trades than me....difference in brokers?? Anybody else with fxdd?

Link to comment
Share on other sites

Re: Megadroid Pro

 

 

aifaik there is no linux version of mt4

 

But there is a wine-emulator. Some linux-ers used to run MT4 on linux through wine. But up to this date they could not run MegaDroid, because it wanted to use wininet.dll for calling home. But wininet.dll is not running on wine... At least as I know.

But from now on MegaDroidPro is not calling wininet.dll anymore...

 

oh okay thank you for that information. so it would be possible to rent a linux vps, cause they are a lot cheaper than windows vps and install everything. thank you for all your efforts :)

Link to comment
Share on other sites

Re: Megadroid Pro

 

I wish to experiment and trade the Pro EA during the European session how do I adjust the configuration time settings to make the EA trade other session times?

 

it wont be profitable, cause the sense of the robot is to trade pairs in a session which has low action. means in asian session eur/usd etc dont make moves. if you trade it during european session news are destroying the possibility of scalping. anyway you could trade pairs which are not in action when european market is open, like jpy/? :D

you have to figure out the gmt offset to get it trading at european markets. so you first have to know when market of europe is open then calculate the gmt offsett for this time.

after that set autolocalgmtoffset to false and autoservergmtoffset to false. and enter the number at gmtoffset.

much luck :)

Link to comment
Share on other sites

Re: Megadroid Pro

 

Hey Don on next version can you put in the time window addition I did.. It was pretty simple just change 2 variables.. Take a quick look at the EA I uploaded you will see... Thanks..

 

Uploaded... where? ;)) This forum will not accept archived attachments.

 

Don, great work!!!

 

Here is the link to the version that Hacker posted. This one had begin and end times that you can set. Useful feature because Megadroid trades for 2 hours by default. I think to trade AUD or JPY pairs, the best time would be one hour between US close and Asia open. Of course I need to run backtest to verify....

 

 

I beat you to it.. Heres the same version as Don above, except you can change the trade window...

 

http://[email protected]/724574

Link to comment
Share on other sites

Re: Megadroid Pro

 

I have updated the comment code for int indicators for file version 2e. Note that the variables need checking every time a decompile is done as the int variable names change, not hard just check the s1_int & s2_int calls.

 

Add following line at start of code

extern bool ShowInternalVariables = False; // Set to true to show variables on chart

 

Add following at begining of start() section.

 

// Check Symbols

if (ShowInternalVariables) {

Comment(""

+ "Current Symbol: " + Symbol()

+ "\n"

+ " Strategy 1 Variables" + "\n"

+ "\n"

+ "gi_260: " + gi_260 + "\n"

+ "gi_268: " + gi_268 + "\n"

+ "gi_272: " + gi_272 + "\n"

+ "gi_276: " + gi_276 + "\n"

+ "g_period_288: " + g_period_288 + "\n"

+ "g_period_292: " + g_period_292 + "\n"

+ "g_period_296: " + g_period_296 + "\n"

+ "gd_300: " + gd_300 + "\n"

+ "gd_308: " + gd_308 + "\n"

+ "gd_316: " + gd_316 + "\n"

+ "gd_324: " + gd_324 + "\n"

+ "gd_364: " + gd_364 + "\n"

+ "gd_372: " + gd_372 + "\n"

+ "gd_384: " + gd_384 + "\n"

+ "gd_392: " + gd_392 + "\n"

+ "gi_404: " + gi_404 + "\n"

+ "gi_416: " + gi_416 + "\n"

+ "gi_420: " + gi_420 + "\n"

+ "gi_424: " + gi_424 + "\n"

+ "gi_428: " + gi_428 + "\n"

+ "g_timeframe_256: " +g_timeframe_256+ "\n"

+ "\n"

+ " Strategy 2 Variables" + "\n"

+ "\n"

+ "gi_436: " + gi_436 + "\n"

+ "gi_444: " + gi_444 + "\n"

+ "gi_448: " + gi_448 + "\n"

+ "gd_452: " + gd_452 + "\n"

+ "gi_460: " + gi_460 + "\n"

+ "gi_472: " + gi_472 + "\n"

+ "g_period_476: " + g_period_476 + "\n"

+ "g_period_480: " + g_period_480 + "\n"

+ "gd_496: " + gd_496 + "\n"

+ "gd_504: " + gd_504 + "\n"

+ "gd_512: " + gd_512 + "\n"

+ "gi_528: " + gi_528 + "\n"

+ "gi_540: " + gi_540 + "\n"

+ "gi_544: " + gi_544 + "\n"

+ "gi_548: " + gi_548 + "\n"

+ "gi_552: " + gi_552 + "\n"

+ "g_timeframe_432: " +g_timeframe_432+ "\n"

 

);}

Link to comment
Share on other sites

Re: Megadroid Pro

 

What I am really working towards is seeing if a free dll version can be created. I don't care about auto-GMT, it looks to me like the system rules are still in the mq4 file not the dll but can anyone confirm if this is true?? I am not sure yet how to modify the rule calls for no dll mode.

Link to comment
Share on other sites

Re: Megadroid Pro

 

Crash workaround is here:

 

hxxp://www.filefactory*com/file/ahd9fh3/n/MegaDroidPro_v1_00ee2x_rar

 

MegaDroidPro v1.00ee2 (ee means "Educated & Enhanced" ;) )

------------------------------------------------------------------------

 

Installation:

 

Copy ALL of the .ex4 files to the <your metatrader folder>\experts folder.

Copy ALL of the .dll -files to the <your metatrader folder>\experts\libraries folder.

 

 

This version of MegaDroidPro has

 

1. Disabled Authentication You can write any ReceiptCode or leave the field empty.

The .dll doesn't prevent buy & sell orders anymore if authentication fails.

No annoying "Not Authenticated" message is showing up.

 

2. Applicable on any pairs Not just EUR/USD, EUR/CHF, EUR/GBP and USD/CHF can be traded, but any pairs.

The pairs are traded by separate logics. The default pairs are traded by

their own logics, this cannot be changed.

 

However, if you're start MegaDroidPro on an officially unsupported pair,

you have to choose by which logic should that pair be traded.

For this, there is a Logic variable among the settings.

 

The Logic variable can set to four values:

1 - trade by the EUR/USD logic

2 - trade by the EUR/CHF logic

3 - trade by the EUR/GBP logic

4 - trade by the USD/CHF logic

 

The default is 1 (EUR/USD logic).

 

ATTENTION!

If you want to trade more than one pair with the SAME logic, then you must

use other instance(s) of MegaDroidPro in order to prevent crashes!

This rule is valid for backtests too! (while there is an ongoing live

trading with MegaDroidPro)

MegaDroidPro originally was created for a maximum of four pairs, traded by

DIFFERENT logics!

 

For example:

Let's say you have four charts opened (EURUSD, EURGBP, EURCHF and USDCHF)

and you are running MegaDroidPro on all of them.

Now, if you want to run a backtest or another live trading with MegaDroidPro

on e.g. EURGBP or a pair which uses the EURGBP-logic (3), then it has a good

chance of a crash, because there is already another EURGBP trading in the

background with the SAME instance of MegaDroidPro.

 

There is a workaround for this problem. It's ugly, but works. :)

There are 3 other instances included in this archive:

MegaDroidPro2.dll/ex4, MegaDroidPro3.dll/ex4 and MegaDroidPro4.dll/ex4.

These are completely identical, except that they are loading their own

numbered .dll's separately. This trick is preventing the crashes.

 

If you want to do a backtest or another live trading with a logic that is

already being used by another instance of MegaDroidPro, then you must simply

use (run) a new, numbered copy of the EA.

 

In the example above there all four logics are being used, therefore we must

use another instance of MDPro for the backtest.

It can be either MegaDroidPro2 or MegaDroidPro3 or MegaDroidPro4 as long as

they are not used for a pair with the same logic we want to trade with.

 

Please keep track of the instances and logics you're using in order to

prevent crashes.

 

For example you started MegaDroidPro on a EURGBP chart. This instance cannot

handle more "logic #3" pairs since that one is already occupied by EURGBP.

Now, if you want to trade e.g. GBP/CHF which you found the best to trade

with EURGBP's logic (3), then you must start another instance, like

MegaDroidPro2.

If you want to test or trade further pairs which are not using logic #3,

then you can still safely use MegaDroidPro or MegaDroidPro2 instance for them.

If MegaDroidPro/2 has used up all of its logics, or you want trade another

pair which uses a logic which is already "occupied", then you must run a

new instance, like MegaDroidPro3 and so on.

 

The only drawback of this method is that "Riskproportioning" feature is

being used WITHIN the same instance only. The instances cannot recognize

each other (therefore no more crashes), but the risk cannot be overally

proportioned, just by instances only (in groups of four pairs).

 

3. Spread limit can be freely changed

Some broker has higher night spreads at some pairs, therefore MegaDroid

often sent out the message: "Safe spread limit exceeded"

Therefore there is a new variable called MaxSpread.

If MaxSpread set to 0 (zero), then MegaDroid's default built-in

spread limits are used.

If MaxSpread set to other number, then that number will be used as the new

"Safe spread limit". If you're on 5 digit broker, then multiply it by 10!

 

You can set MaxSpread to -1 (minus one). This tells MegaDroidPro to set

the maximum allowed spread to the currency's actual highest spread.

This way you don't have to guess what is the correct value. This setting is

actually disabling the spread limit protection! (See Warning!)

 

Example: you want to trade GBP/JPY, but its spread is 7 / 10 (day/night).

Set MaxSpread to 10 (night spread) if you're on 4 digit broker.

Set MaxSpread to 100 if you're on 5 digit broker!

Set MaxSpread to -1 and spread limit protection will be disabled.

 

Warning! MegaDroidPro is a scalping robot! If you set MaxSpread too high or

trade pairs with too high spreads, then it may lead to large drawdown or

even account blowup! Try to trade the pairs with the thightest spreads!

 

That's all!

 

Enjoy!

 

 

Hi Don,

 

Actually I am only trading the 4 pairs which are recommended by the Megadroid PRO and it seems that it shouldn't cause overload as four of them are using their own logics separately. I do trade EurChf with Fapturbo "Paid For" version and also trade Eur_usd with original "Paid for" MD version too. They are using their own Dll file which are totally independent from MDPro. Thus, I think there might be other reason(s) that crashed the MT4. :(

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...