[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 533

 
Sancho77:

Caro, sto testando un EA nel tester e il log mostra l'errore 138. Cioè, il tester genera requotes? Sospetto di avere un errore da qualche parte in questa parte del codice

Se davvero c'è un errore, per favore avvisatemi cosa c'è che non va?

Probabilmente il prezzo sbagliato in OrderClose()
 
PapaYozh:

Probabilmente il prezzo non è corretto in OrderClose()
Come posso controllare/correggere?
 
Sancho77:
Come si controlla/corregge?

Usa il prezzo valido al momento in cui la richiesta è stata inviata al server.
 
PapaYozh:

Usa il prezzo valido al momento in cui la richiesta viene inviata al server.
Non devo usare RefreshRates per ottenere un prezzo valido?
 
Sancho77:
Come posso controllare/correggere?


In realtà, c'è un ramo di sensitivi che aspetta questa domanda. Non è chiaro dal tuo codice che tipo di ordine stai chiudendo.

È OP_BUY?

OrderSymbol() è lo stesso di Symbol()?

 
Sancho77:
Non ottengo un prezzo valido con RefreshRates?


Lo fai se RefreshRates() restituisce true.

L'unica domanda è: "il Bid è il prezzo al quale l'ordine può essere chiuso?".

 
PapaYozh:


In realtà, il ramo psichico sta aspettando questa domanda. Non è chiaro dal vostro codice quale ordine state chiudendo.

È OP_BUY?

OrderSymbol() è lo stesso di Symbol()?


OrderSymbol() è uguale a Symbol()

Chiudo tutti gli ordini aperti sia lunghi che corti.

PapaYozh:


Lo fai se RefreshRates() restituisce true.

L'unica domanda è: "Bid è il prezzo al quale l'ordine può essere chiuso?".

Cioè per separare la chiusura dei lunghi e dei corti?

 
Sancho77:

OrderSymbol() è uguale a Symbol()

Chiudo tutti gli ordini aperti, sia lunghi che corti.


Quali sono gli altri corti a prezzo di offerta?

Solo gli ordini di tipo OP_BUY possono essere chiusi da Bid

 
PapaYozh:


quali altri pantaloncini a prezzo di offerta?

Solo gli ordini di tipo OP_BUY possono essere chiusi al Bid

Grazie per l'aiuto!
 
Sancho77:

OrderSymbol() è uguale a Symbol()

Chiudo tutti gli ordini aperti sia lunghi che corti.

Cioè separare la chiusura dei lunghi e dei corti?


if ( OrderType()=OP_BUY )
   OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Orange);
else if ( OrderType()=OP_SELL )
   OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, Orange);