consulente esperto - domande varie - pagina 2

 

#Lot - Chiuso

Ho risolto il problema come segue.

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

Comunque grazie @Keith

 

#Errori negli ordini - Aprire

Durante il periodo di disconnessione da internet ho cliccato più volte i pulsanti degli ordini di acquisto e vendita, e non è successo nulla, quindi dopo pochi minuti internet si èricollegato e tutti gli ordini si sono aperti (che ho bisogno di aprire gli ordini durante il periodo di disconnessione - P.S. quasi tutti gli ordini sono più di 15.)

Quindi non ho assolutamente idea di come sia successo, da dove venga questo problema, per favore fatemi sapere qualcosa su questo, ho bisogno di prevenire questo tipo di situazioni sgradevoli.

Grazie in anticipo.

 

Hai cliccato, l'ordine è stato inviato, hai perso la connessione. Avete poi cliccato ancora un po' mettendoli in coda, prima che OrderSend tornasse con 128, o che tornasse la riconnessione e un OrderSend valido. Hai ignorato l'errore e hai elaborato altri clic.

Ignora i clic mentre OrderSend è in corso.

 
whroeder1:

Hai cliccato, l'ordine è stato inviato, hai perso la connessione. Hai poi cliccato ancora un po' mettendoli in coda, prima che OrderSend tornasse con 128, o riconnessione e OrderSend valido tornasse. Hai ignorato l'errore e hai elaborato altri clic.

Ignora i clic mentre OrderSend è in corso.

Molto più grazie per la risposta rapida.

Ho capito così:

  • Potrei scrivere codice per'Ignora i clic mentre OrderSend è in corso'.
  • Potrei scrivere codice per Errori.
È giusto?

Dopo la tua risposta farò delle ricerche su questo.

Tutto il meglio!

 

#Lotto 0 (zero) - Aperto

Provo a 'Lot' la dimensione non può essere 0 (zero).

Ho bisogno di aiuto, per favore.

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


Grazie!

 
Max Enrik:

#Lotto 0 (zero) - Aperto


Provo a 'Lot' la dimensione non può essere 0 (zero).

Ho bisogno di aiuto, per favore.

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


Grazie!

NB: Non ho letto tutto il thread

Perché stai impostando manualmente un valore per lottep? Quello è determinato dal broker (e può benissimo essere più di 0.01)

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

Perché stai impostando manualmente un valore per lotstep? Quello è determinato dal broker (e può benissimo essere più di 0,01)

Bello, grazie, lo metterò presto nei miei EA.
 
Max Enrik:
Bello, grazie lo metterò presto nei miei EA.

Devi controllare maxlot, minlot e lotstep.

HTH

 
honest_knave:

Devi controllare maxlot, minlot e lotstep.

HTH

Si!

Questo aiuta molto. Non mi preoccupo dei lotti max e min. Ho iniziato a fare ricerche su questo. (e ho trovato qualcosa in pochi minuti).

Un grande grazie.

 
Sto usando NormalizeDouble per i miei EA. Ma mi preoccupo del messaggio'NormalizeDouble', ma vedo la dimensione del lotto sul grafico in questo modo: 0.07

Quindi, ho bisogno di un buon consiglio, per favore.

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