Einzelnen Beitrag anzeigen
  #4 (permalink)  
Alt 10.06.21
droyo33 droyo33 ist offline
Neues Mitglied
 
Registriert seit: Jun 2021
Beiträge: 29
droyo33 befindet sich auf einem aufstrebenden Ast
Standard

Zunächst einmal danke für die raschen Antworten!

Zum ersten Fall:


profitFac & profit sind jeweils double Variablen, die vor der OnTick Funktion deklariert sind.
Ich muss gestehen im zweiten Fall habe ich den Code hier etwas abgeändert weil ich dachte der gesamte Code wäre irrelevant, vllt liegt es an der zusätlichen Abfrage die ebenfalls erfüllt sein muss:

if (OrdersTotal() == 1){
profitFac = 0.0003;
}else if(profitC == 1 && OrdersTotal() > 1){
profitFac = 0.0003;
total = OrdersTotal();
total = total / 10000;
total = NormalizeDouble(total,Digits);
profitFac = 0.0003 + total;
profitC = 0;
}

und zwar ist in der if else (profitC == 1);
diese Variable bewirkt, dass der Compiler nicht nach jedem Tick in die Funktion geht, sondern erst wenn eine neue Order gesendet wurde, siehe folgenden Codeabschnitt:

int executeShort(){
entry = Bid;
NormalizeDouble(entry,Digits);
ticket = OrderSend(Symbol(),OP_SELL,lotSize,Bid,1000,0,0,Co mmentary,Magic);
comC = 1;
profitC = 1;
return ticket;
}
gilt analog für Long Orders!

Hier wird profitC auf 1 gesetzt, da eine neue Order gesendet wurde. Anschließend kann der Compiler oben in die Abfrage und den ProfitFaktor berechenen. Liegt das nun daran, dass ich den EA ja auf 4 verschiedenen Währungen laufen lasse und wenn eine Order für bpsw. EUR/USD gesendet wurde profitC auf 1 gsetzt wird, er dann deshalb für den EUR/USD EA in die Fu nktion geht und den Profit nur für EUR/USD errechnet? Aber OrdersTotal() ist doch wie Timo erwähnt hat eine "globale Abferage und gilt immer für alle ORders...", deshalb wäre müsste es doch deshalb trotzdem funktionieren...
Ohne die zusätzliche Abfrage würde sich profitFac ins unermessliche steigern, deshalb die Abffrage!

Zum zweiten Fall, da probiere ich nochmal OrderSymbol() == Symbol() aus und melde mich!

Vielen lieben Dank!
Nettes Forum und schnelle Hilfe, SUPER!