È necessario scrivere a SR se uno dei server ottiene uno zero Result.deal ogni volta che unaposizione vieneaperta con successo da un ordine a mercato?
Non sono sicuro che questo sia un errore, perché probabilmente è come è impostato il server stesso. Inoltre, puoi sempre ottenere Result.deal da Result.order in ogni caso.
Perché?
Ci sono perizomi (due pezzi).
Gli sviluppatori potrebbero ancora fare una soluzione simile funzionante per MqlTradeResult se
{
uint retcode; // Код результата операции
ulong deal; // Тикет сделки, если она совершена
ulong order; // Тикет ордера, если он выставлен
double volume; // Объем сделки, подтверждённый брокером
double price; // Цена в сделке, подтверждённая брокером
double bid; // Текущая рыночная цена предложения (цены реквота)
double ask; // Текущая рыночная цена спроса (цены реквота)
string comment; // Комментарий брокера к операции (по умолчанию заполняется расшифровкой кода возврата торгового сервера)
uint request_id; // Идентификатор запроса, устанавливается терминалом при отправке
uint retcode_external; // Код ответа внешней торговой системы
};
la stringa di campo verrebbe fatta per ultima. Ma per MqlTradeRequest anche questo non aiuterebbe.
Ci sono perizomi (due pezzi).
fxsaber:
Risultato
STRUCT::~STRUCT
STRUCT::~STRUCT
Quasi sempre una chiamata sarà inutile ... ecco i dettagli https://www.mql5.com/ru/forum/1111/page1657#comment_2729876
Cioè non è un bug, ma il risultato di una chiave del compilatore C++ che gli sviluppatori usano?
Questo è un comportamento standard, che nella stragrande maggioranza dei casi può essere ottimizzato senza danni e non è ancora ottimizzato
//оптимизация: сразу присвоить 3
Questo è un comportamento standard, che nella stragrande maggioranza dei casi può essere ottimizzato senza danni e non è ancora ottimizzato
//оптимизация: сразу присвоить 3
L'ottimizzazione è buona, grazie. Ma se tutto viene eseguito onestamente, da dove vengono i tre passi?
Notifica a ServiceDesk
S() { Print( __FUNCTION__ ); }
~S() { Print( __FUNCTION__ ); }
};
S f()
{
S s;
return s;
}
void OnStart() //2 раза
{
f();
}
quindi 2 volte chiamare (cosa è cambiato? - c'è un costruttore),
Ho supposto che il compilatore nel tuo esempio completi il codice in questo modo
void OnStart() //3 раза
{
S s = f(); //s при этом - не используется
}
Segnala al ServiceDesk
Ha scritto.
quindi 2 volte la chiamata(cosa è cambiato? - c'è un costruttore),
È necessario scrivere a SR se uno dei server ottiene uno zero Result.deal ogni volta che unaposizione vieneaperta con successo da un ordine a mercato?
Non sono sicuro che questo sia un errore, perché probabilmente è come è impostato il server stesso. Inoltre, puoi sempre ottenere Result.deal da Result.order in ogni caso.