Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 08.06.21
droyo33 droyo33 ist offline
Neues Mitglied
 
Registriert seit: Jun 2021
Beiträge: 29
droyo33 befindet sich auf einem aufstrebenden Ast
Unhappy Problem mit EA Verständnis (OrdersTotal())

Guten Tag Zusammen,

ich programmiere seit längeren an meinem EA. Habe bis dato alle Probleme selber lösen können aber nun stehe ich vor einem wobei ich eure Hilfe benötige!

Und zwar möchte ich ein und den selben EA auf meheren Paaren laufen lassen (z.B.: EUR/USD, GBP/USD & GBP/CAD). Das klappt auch wunderbar er öffnet die Positionen wenn der das go bekommt.
1.Fall:
if (OrdersTotal() == 1){
profitFac = 0.0003;
}else if( OrdersTotal() > 1){
profitFac = 0.0003;
total = OrdersTotal();
total = total / 10000;
total = NormalizeDouble(total,Digits);
profitFac = 0.0003 + total;
Print("Profitfaktor betägt : ", profitFac);

}
Das ist die die erste Abfrage wo der EA rum spinnt und zwar möchte ich je mehr Orders ich offen habe (alle Währungspaare eingeschlossen) auch meinen Profit erhlöhen bevor der EA alle Positionen schließt. Das komische in diesem Fall, wählt er sich ein willkürliches Währungspaar aus (obwohl ich OrdersTotal abfrage ), schaut wie viele Orders von dem Paar offen sind (z.B. 5x EUR/USD)und zählt nur das Paar auf den Profit zusammen (obwohl 10 Orders offen sind 5x EUR/USD und 5x GBP/USD). Ich hoffe man kann verstehen was ich meine...

Zweitens, im selben EA:

if(AccBal < 4000){
if(OrdersTotal() >= 9){
lotSize = 0.02;
}else if(OrdersTotal() <= 9){
lotSize = 0.01;
}

ich möchte die LotSzize erhöhen und zwar wenn ich 10 Orders (für nur jeweils ein Paar!!) offen habe.
Hier wiederum zählt er alle geöffneten Orders zusammen und erhöht nach der 10 Order die Lotsize.
Bsp: Er soll 9x EUR/USD zu 0.01 öffnen bevor er beim 10. EUR/USD auf 0.02 erhöht.
Der EA macht aber:
5x EUR/USD 0.01 Lot
5x GBP/USD --> 4x 0.01 Lot und bei der 10. Order 0.02 GBP/USD
er soll aber erstmal 10 Orders einer einizgen Wähung aufhaben, bevor er die LotSize erhöht....
Ich verstehe nicht warum er im 1.Fall, jedes Währungspaar einzelt anschaut und im 2. Fall unten alle Paare obwohl ich OrdersToTal() benutze.
Mit Ordersymbol() == Symbol() habe ich rum probiert klappt aber tzd nicht...

Weiß jemand woran es liegen kann?


Mit freundlichen Grüßen

Dennis!