Avete percepito la differenza tra un comando sincrono e uno asincrono.
Potrebbe fornire una lista di funzioni asincrone.
Se ho capito bene, le funzioni Object e Chart (quali altre?) sono tutte asincrone. Allora non è molto chiaro perché ChartGet gira più velocemente di ChartXY?
Avete percepito la differenza tra un comando sincrono e un comando asincrono.
Già...
Ma le osservazioni mostrano che queste funzioni sono abbastanza sincrone nella loro asincronia. :)
Ok, formulerò la mia domanda in modo diverso per gli sviluppatori: c'è la possibilità (o il desiderio) di cambiare queste funzioni asincrone in sincrone?
Se ho capito bene, le funzioni Object e Chart (quali altre?) sono tutte asincrone. Allora non è del tutto chiaro perché ChartGet gira più velocemente di ChartXY?
Sono anche terribilmente lenti, è solo che il punto del mio algoritmo "veloce" è quello di calcolare un'opportunità per non chiamare le funzioni del grafico e farne a meno. E non appena si "afferra" il grafico nel mio esempio e si inizia a muoverlo a sinistra e a destra, tutta la velocità viene persa perché le funzioni del grafico iniziano ad essere applicate a causa del verificarsi dell'evento
Ciao, ho iniziato a studiare MQL5 dahttps://www.mql5.com/ru/articles/100. Ho lanciato il codice e ho ricevuto l'errore 4756. L'errore non è migliorato dopo aver guardato la documentazione. Ok, ho pensato di iniziare con funzioni semplici (Alert/Print...). Una delle funzioni più importanti è OrderSend. Ho iniziato a cercare nel forum/documentazione su come usare OrderSend. Ho trovato questo articolohttps://www.mql5.com/ru/docs/constants/tradingconstants/enum_trade_request_actions e ho trovato il codice per aprire una posizione Buy. Ho ottenuto l'errore 4756 e il retcode 10030. Ho capito che 10030 - è la proprietà OrderSend, ma non ho capito come dovrebbe essere usata questa proprietà (ho guardato il codice di qualcun altro) e a cosa serve principalmente. Poi ho apertohttps://www.mql5.com/ru/docs/trading/ordersend, ho copiato il codice, l'ho eseguito e ha funzionato bene. Ma non ho ancora capito perché appare l'errore 4756 e come liberarmene, così come il 10030.
Guardato il codice tra
voidOnTick(){
//--- объявление и инициализация запроса и результатаMqlTradeRequest request={0};
MqlTradeResult result={0};
//--- параметры запроса
request.action =TRADE_ACTION_DEAL; // тип торговой операции
request.symbol =Symbol(); // символ
request.volume =0.1; // объем в 0.1 лот
request.type =ORDER_TYPE_BUY; // тип ордера
request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); // цена для открытия
request.deviation=5; // допустимое отклонение от цены
request.magic =EXPERT_MAGIC; // MagicNumber ордера//--- отправка запросаif(!OrderSend(request,result))
PrintFormat("OrderSend error %d",GetLastError()); // если отправить запрос не удалось, вывести код ошибкиAlert(GetLastError());
//--- информация об операцииPrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
}
e questo.
uint SendRandomPendingOrder(longconst magic_number)
{
//--- готовим запрос MqlTradeRequest request={0};
request.action=TRADE_ACTION_PENDING; // установка отложенного ордера
request.magic=magic_number; // ORDER_MAGIC
request.symbol=_Symbol; // инструмент
request.volume=0.1; // объем в 0.1 лот
request.sl=0; // Stop Loss не указан
request.tp=0; // Take Profit не указан //--- сформируем тип ордера
request.type=GetRandomType(); // тип ордера //---сформируем цену для отложенного ордера
request.price=GetRandomPrice(request.type); // цена для открытия //--- отправим торговый приказ MqlTradeResult result={0};
OrderSend(request,result);
//--- выведем в лог ответ сервера Print(__FUNCTION__,":",result.comment);
if(result.retcode==10016) Print(result.bid,result.ask,result.price);
//--- вернем код ответа торгового сервера return result.retcode;
}
Mi sembrano quasi identici, non vedo dove appaiono questi errori (4756 e 10030). Per favore, punta il dito e spiega.
Ciao, ho iniziato a studiare MQL5 dahttps://www.mql5.com/ru/articles/100. Ho lanciato il codice e ho ricevuto l'errore 4756. Così ho pensato di cominciare dal più semplice (Allarme/Stampa...). Una delle funzioni più importanti è OrderSend. Ho iniziato a cercare nel forum/documentazione su come usare OrderSend. Ho trovato questo articolohttps://www.mql5.com/ru/docs/constants/tradingconstants/enum_trade_request_actions e ho trovato il codice per aprire una posizione Buy. Ho ottenuto l'errore 4756 e il retcode 10030. Ho capito che 10030 - è la proprietà OrderSend, ma non ho capito come dovrebbe essere usata questa proprietà (ho guardato il codice di qualcun altro) e a cosa serve principalmente. Poi ho apertohttps://www.mql5.com/ru/docs/trading/ordersend, ho copiato il codice, l'ho lanciato, tutto bene, ha funzionato. Ma non ho ancora capito perché appare l'errore 4756 e come liberarmene, così come il 10030.
Guardato il codice tra
e questo.
Mi sembrano quasi identici, non vedo dove appaiono questi errori (4756 e 10030). Si prega di puntare il dito e spiegare
Usate la classe di trading CTrade - in questo modo avrete la garanzia di fare meno errori possibili.
Esempio di invio di un ordine di compravendita per aprire Buy:
Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы...
Avete percepito la differenza tra un comando sincrono e uno asincrono.
Potrebbe fornire una lista di funzioni asincrone.
Se ho capito bene, le funzioni Object e Chart (quali altre?) sono tutte asincrone. Allora non è molto chiaro perché ChartGet gira più velocemente di ChartXY?
Avete percepito la differenza tra un comando sincrono e un comando asincrono.
Potrebbe fornire una lista di funzioni asincrone.
Se ho capito bene, le funzioni Object e Chart (quali altre?) sono tutte asincrone. Allora non è del tutto chiaro perché ChartGet gira più velocemente di ChartXY?
CHARTEVENT_CHART_CHANGECiao, ho iniziato a studiare MQL5 dahttps://www.mql5.com/ru/articles/100. Ho lanciato il codice e ho ricevuto l'errore 4756. L'errore non è migliorato dopo aver guardato la documentazione. Ok, ho pensato di iniziare con funzioni semplici (Alert/Print...). Una delle funzioni più importanti è OrderSend. Ho iniziato a cercare nel forum/documentazione su come usare OrderSend. Ho trovato questo articolohttps://www.mql5.com/ru/docs/constants/tradingconstants/enum_trade_request_actions e ho trovato il codice per aprire una posizione Buy. Ho ottenuto l'errore 4756 e il retcode 10030. Ho capito che 10030 - è la proprietà OrderSend, ma non ho capito come dovrebbe essere usata questa proprietà (ho guardato il codice di qualcun altro) e a cosa serve principalmente. Poi ho apertohttps://www.mql5.com/ru/docs/trading/ordersend, ho copiato il codice, l'ho eseguito e ha funzionato bene.
Ma non ho ancora capito perché appare l'errore 4756 e come liberarmene, così come il 10030.
Guardato il codice tra
e questo.
Mi sembrano quasi identici, non vedo dove appaiono questi errori (4756 e 10030). Per favore, punta il dito e spiega.
Ciao, ho iniziato a studiare MQL5 dahttps://www.mql5.com/ru/articles/100. Ho lanciato il codice e ho ricevuto l'errore 4756. Così ho pensato di cominciare dal più semplice (Allarme/Stampa...). Una delle funzioni più importanti è OrderSend. Ho iniziato a cercare nel forum/documentazione su come usare OrderSend. Ho trovato questo articolohttps://www.mql5.com/ru/docs/constants/tradingconstants/enum_trade_request_actions e ho trovato il codice per aprire una posizione Buy. Ho ottenuto l'errore 4756 e il retcode 10030. Ho capito che 10030 - è la proprietà OrderSend, ma non ho capito come dovrebbe essere usata questa proprietà (ho guardato il codice di qualcun altro) e a cosa serve principalmente. Poi ho apertohttps://www.mql5.com/ru/docs/trading/ordersend, ho copiato il codice, l'ho lanciato, tutto bene, ha funzionato.
Ma non ho ancora capito perché appare l'errore 4756 e come liberarmene, così come il 10030.
Guardato il codice tra
e questo.
Mi sembrano quasi identici, non vedo dove appaiono questi errori (4756 e 10030). Si prega di puntare il dito e spiegare
Usate la classe di trading CTrade - in questo modo avrete la garanzia di fare meno errori possibili.
Esempio di invio di un ordine di compravendita per aprire Buy:
Usa la classe di trading di CTrade per assicurarti di fare meno errori possibili.
Esempio di invio di un ordine di compravendita per aprire un Buy:
CTrade - è una classe universale? Cioè, può sostituire qualsiasi altro codice?
CTrade - è una classe universale? Quindi, è possibile sostituire qualsiasi altro codice con questo?
CTrade è fornito con il terminale nellaLibreria Standard->Trade Classes->CTrade.
Mi sembrano quasi identici, non vedo dove appaiono questi errori (4756 e 10030). Si prega di puntare il dito e spiegare
https://www.mql5.com/ru/search#!keyword=Unsupported%20filling%20mode
Un esempio da kodobase
Ci sono diversi modi per portare il codice in ME
Nel tester MT5, l'oggetto "Campo di input" OBJ_EDIT non permette di modificare un valore in esso. È stato progettato così o è un bug?
Nei terminali e nel tester MT4 è modificabile, ma nel tester MT5 non lo è, il valore inserito programmaticamente quando si crea l'oggetto scompare.