expert advisor - verschiedene Fragen - Seite 2

 

#Lot - Geschlossen

Ich habe das Problem wie unten beschrieben gelöst .

ObjectSetString( 0, _edtLot, OBJPROP_TEXT, "Lot: " + DoubleToString( _lot, 2 ) );

trotzdem danke @Keith

 

#Fehler bei Bestellungen - Öffnen

Während derUnterbrechung der Internetverbindung habe ich mehrmals auf die Schaltflächen "Kaufen und Verkaufen" geklickt, und es ist nichts passiert. Nach ein paar Minutenwurde die Internetverbindung wiederhergestellt und alle Orders wurden geöffnet (was ich brauche, um die Orders während der Unterbrechung der Internetverbindung zu öffnen - P.S. fast die Anzahl der Orders über 15).

Also ich habe absolut keine Ahnung, wie es passiert ist, dass Problem, woher kommt, bitte lassen Sie mich etwas darüber wissen, ich brauche, um diese Art von unangenehmen Situationen zu verhindern.

Vielen Dank im Voraus.

 

Sie haben geklickt, der Auftrag wurde gesendet, die Verbindung wurde unterbrochen. Sie haben dann weitere Klicks getätigt und sie in die Warteschlange gestellt, bevor entweder OrderSend mit 128 zurückkam oder die Verbindung wiederhergestellt wurde und ein gültiger OrderSend zurückkam. Sie haben den Fehler ignoriert und weitere Klicks ausgeführt.

Ignorieren Sie Klicks, während OrderSend ausgeführt wird.

 
whroeder1:

Sie haben geklickt, die Bestellung wurde gesendet, die Verbindung wurde unterbrochen. Sie haben dann noch mehr geklickt und sie in die Warteschlange gestellt, bevor entweder OrderSend mit 128 zurückkam oder die Verbindung wiederhergestellt wurde und ein gültiger OrderSend zurückkam. Sie haben den Fehler ignoriert und weitere Klicks ausgeführt.

Ignorieren Sie Klicks, während OrderSend ausgeführt wird.

Nochmals vielen Dank für die schnelle Antwort.

Ich verstehe das so:

  • Ich könnte Code für'Ignoriere Klicks während OrderSend läuft' schreiben.
  • Ich könnte Code für "Errors" schreiben.
Ist das richtig?

Nach Ihrer Antwort werde ich darüber recherchieren.

Alles Gute für Sie!

 

#Los 0 (Null) - Offen

Ich versuche zu 'Lot' Größe konnte nicht 0 (Null) sein.

Ich brauche Hilfe, bitte.

double _lotSize = 0.10 ; // Lot Size
double _lotStep = 0.01 ; // Lot Step
//-------Lot Minus--------------------------------------------------------------|
if ( sparam == _btnLotMinus )
{
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_STATE, false );
    _lotSize -= _lotStep;
    if ( _lotSize <= 0 )
    {
        _lotSize = _lotStep;
    }

    _calcUpdade( CALC_CHANGE_LOT );

    Print( " | DoubleToStr /   ", DoubleToStr( _lotSize, 2 ) );
}   //---if Close


Danke!

 
Max Enrik:

#Lot 0 (null) - Offen


Ich versuche zu 'Lot' Größe konnte nicht 0 (Null) sein.

Ich brauche Hilfe, bitte.

double _lotSize = 0.10 ; // Lot Size
double _lotStep = 0.01 ; // Lot Step


Vielen Dank!

NB: Ich habe nicht den ganzen Thread gelesen.

Warum stellen Sie manuell einen Wert für lotstep ein? Dieser wird vom Broker festgelegt (und kann durchaus mehr als 0,01 betragen).

double _lotStep = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP);
 
honest_knave:

Warum legen Sie manuell einen Wert für lotstep fest? Das wird vom Broker festgelegt (und kann durchaus mehr als 0,01 sein)

Oh! Schöner Mann, danke, ich würde es bald in meine EAs einbauen.
 
Max Enrik:
Oh! Schöner Mann, danke, ich werde es bald in meine EA's einbauen.

Sie müssen maxlot, minlot und lotstep überprüfen.

HTH

 
honest_knave:

Sie müssen maxlot, minlot und lotstep überprüfen.

HTH

Ja, genau!

Das hilft sehr. Ich mache mir keine Gedanken über Max und Min Lots. Ich habe angefangen, darüber zu recherchieren. (und ich habe in ein paar Minuten etwas gefunden).

Vielen Dank!

 
Ich verwende NormalizeDouble für meine EAs. Aber ich mache mir Sorgen über die"NormalizeDouble"-Meldung, aber ich sehe die Losgröße auf dem Chart so: 0.07

Also, ich brauche einen guten Rat, bitte.

02:00:00.069 - custom expert EURUSD,H1: | _lotSize - NormalizeDouble: 0.07000000000000001
02:00:00.069 - custom expert EURUSD,H1: | _lotSize - DoubleToString : 0.07