Bin jetzt bei meinem Broker auf ein ECN-Konto umgestiegen und damit auch von einem 4-digit auf ein 5-digit Konto.
Meines Wissens muss ich jetzt folgende Werte in meinem EA anpassen:
Slippage * 10
Spread * 10
MinimumProfit * 10
TakeProfit * 10
StopLoss * 10
Habe das heute mal versucht, aber irgend etwas hat z.B. mit dem neuen StopLoss nicht gestimmt, der war irgendwie zu groß. Also der SL soll 40 Pips betragen. Bisher im 4-digit-Konto habe ich den SL dann mit UsePoint multipliziert, das Ergebnis war dann 0.004. Im 5-digit-Konto bekomme ich jetzt 0.04 als SL, da ich die 40 noch zusätzlich mit 10 multipliziere.
Ist es richtig, dass die Variable UsePoint in meinem 4-digit-Konto 0.0001 und in meinem 5-digit-Konto auch genauso 0.0001 beträgt?
Anbei die Funktion für das Digit-Handling
Gruß
Dick
PHP-Code:
void BrokerDigitAdjust(string argSymbol)
{
int Multiplier = 1; //bei 2 oder 4 Digits wird nichts umgerechnet und der Multiplier bleibt 1
double digits = MarketInfo(argSymbol,MODE_DIGITS); //Digits (Anzahl der Nachkommastellen) des aktuellen Symbols abfragen - Ergebnis ist z.B.: 4.0 bei 4 Nachkommastellen
if (digits==3 || digits==5) Multiplier = 10; //hat das Symbol 3 oder 5 Nachkommastellen (Digits) dann wird ein Multiplier von 10 verwendet
if (digits==6) Multiplier = 100; //hat das Symbol 6 Nachkommastellen (Digits) dann wird ein Multiplier von 100 verwendet
if (digits==7) Multiplier = 1000; //hat das Symbol 7 Nachkommastellen (Digits) dann wird ein Multiplier von 1000 verwendet
UsePoint = Multiplier*MarketInfo(argSymbol,MODE_POINT); //UsePoint erhält die richtigen Nachkommastellen und kann für spätere Berechnungen benutzt werden
Slippage = Slippage * Multiplier;
Max_Spread = Max_Spread * Multiplier;
MinProfit = MinProfit * Multiplier;
TakeProfit = TakeProfit * Multiplier;
Init_StopLoss = Init_StopLoss * Multiplier;
}