Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   void Funktion (http://www.expert-advisor.com/forum/showthread.php?t=6319)

Max2018 21.01.19 17:14

void Funktion
 
Hallo,

habe mal eine Frage:

ich habe 2 EAs die ich in einen EA überführen möchte - der eine steuert SELL Positionen der andere BUY Positionen.

Kann ich das so machen, dass ich jeden der EAs in eine void Funktion kopiere und die jeweils aufrufen lasse?

Z.B.
Code:

if(Bid>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))EABUY();
if(Bid<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))EASELL();

void EABUY
{
code von EA 1
}

void EASELL
{
code von EA 2
}


traderdoc 21.01.19 20:14

Ja, aber wenn dann so:

Zitat:

Zitat von Max2018 (Beitrag 42085)
Hallo,

habe mal eine Frage:

ich habe 2 EAs die ich in einen EA überführen möchte - der eine steuert SELL Positionen der andere BUY Positionen.

Kann ich das so machen, dass ich jeden der EAs in eine void Funktion kopiere und die jeweils aufrufen lasse?

Z.B.
Code:

if(Bid>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))EABUY();
if(Bid<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))EASELL();

void EABUY()
{
code von EA 1
}

void EASELL()
{
code von EA 2
}


Wenn der Code von EA1 und EA2 nicht der komplette Code incl. OnInit(), OnTick() und OnDeinit() ist, dann geht das. D.h. in diese void-Funktionen gehört nur der Code zur Abarbeitung der Funktion EABUY bzw. EASELL rein.

traderdoc

Max2018 30.01.19 17:41

DANKE ..... ABER....
Habe ich ausprobiert:
Code:

int start()
  { 
//if(Open[1]<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1)&&Open[0]>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ObjectsDeleteAll(0,OBJ_RECTANGLE);
if(Bid>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ChartIndicatorDelete(0,0,"SELL_VOLRAGE.tpl");
if(Bid>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ChartApplyTemplate(0,"\\BUY_VOLRAGE.tpl");
//if(Open[1]>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1)&&Open[0]<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ObjectsDeleteAll(0,OBJ_RECTANGLE);

if(Bid<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ChartIndicatorDelete(0,0,"BUY_VOLRAGE.tpl");
if(Bid<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))ChartApplyTemplate(0,"\\SELL_VOLRAGE.tpl");

if(Bid>iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))buy();
if(Bid<iMA(NULL,0,MAPeriode,0,MODE_SMA,PRICE_CLOSE,1))sell();

}

Wenn ich den EA auf einem leeren Chart öffne, dann lädt er bei SELL zwar das richtige Template, löscht danach aber sich selber (also den EA) ....und bei BUY führt er den EA aus, kommt es aber zu einem Wechsel passiert nix :confused::confused::confused:


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:55 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum