Hi i have this part of mql4
i want convert to mql5 , how can do it ? i find double BidPrice = SymbolInfoDouble( but ordersymbol? ? ? i can do it ?
try selecting the order with mql4OrderSelect
and then call mql4OrderSymbol
//auto selection of pending history or live ulong SELECTED_TICKET=0; enum selected_type{ selected_empty=0,//empty selected_market=1,//live selected_market_history=2,//history selected_pending=3,//pending selected_pending_history=4//pending history }; selected_type SELECTED_TYPE=selected_empty; bool mql4OrderSelect(ulong ticket){ SELECTED_TICKET=0; SELECTED_TYPE=selected_empty; //live if(PositionSelectByTicket(ticket)){SELECTED_TICKET=ticket;SELECTED_TYPE=selected_market;return(true);} //pending if(OrderSelect(ticket)){SELECTED_TICKET=ticket;SELECTED_TYPE=selected_pending;return(true);} //market history if(HistorySelectByPosition(ticket)){SELECTED_TICKET=ticket;SELECTED_TYPE=selected_market_history;return(true);} //pending history if(HistoryOrderSelect(ticket)){SELECTED_TICKET=ticket;SELECTED_TYPE=selected_pending_history;return(true);} return(false); } //sco basics : oil the keyboard //open price or pending price double mql4OrderOpenPrice(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetDouble(POSITION_PRICE_OPEN));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetDouble(ORDER_PRICE_OPEN));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetDouble(SELECTED_TICKET,ORDER_PRICE_OPEN));} } return(0.0); } //close price or current price double mql4OrderClosePrice(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetDouble(POSITION_PRICE_CURRENT));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetDouble(ORDER_PRICE_CURRENT));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetDouble(SELECTED_TICKET,ORDER_PRICE_CURRENT));} } return(0.0); } //stop loss double mql4OrderStopLoss(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetDouble(POSITION_SL));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetDouble(ORDER_SL));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetDouble(SELECTED_TICKET,ORDER_SL));} } return(0.0); } //take profit double mql4OrderTakeProfit(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetDouble(POSITION_TP));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetDouble(ORDER_TP));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetDouble(SELECTED_TICKET,ORDER_TP));} } return(0.0); } //open time datetime mql4OrderOpenTime(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return((datetime)PositionGetInteger(POSITION_TIME));} //pending if(SELECTED_TYPE==selected_pending){return((datetime)OrderGetInteger(ORDER_TIME_SETUP));} //pending history if(SELECTED_TYPE==selected_pending_history){return((datetime)HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TIME_SETUP));} } return(0); } //close time datetime mql4OrderCloseTime(){ if(SELECTED_TYPE!=selected_empty) { //market if(SELECTED_TYPE==selected_market){return(0);} //history market if(SELECTED_TYPE==selected_market_history){return((datetime)PositionGetInteger(POSITION_TIME_UPDATE));} //pending if(SELECTED_TYPE==selected_pending){return(0);} //pending history if(SELECTED_TYPE==selected_pending_history){return((datetime)HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TIME_DONE));} } return(0); } //lots double mql4OrderLots(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetDouble(POSITION_VOLUME));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetDouble(ORDER_VOLUME_CURRENT));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetDouble(SELECTED_TICKET,ORDER_VOLUME_CURRENT));} } return(0.0); } #define OP_BUY 1 #define OP_SELL 2 #define OP_BUYLIMIT 3 #define OP_BUYSTOP 4 #define OP_SELLLIMIT 5 #define OP_SELLSTOP 6 //order symbol string mql4OrderSymbol(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetString(POSITION_SYMBOL));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetString(ORDER_SYMBOL));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetString(SELECTED_TICKET,ORDER_SYMBOL));} } return(NULL); } //order comment string mql4OrderComment(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return(PositionGetString(POSITION_COMMENT));} //pending if(SELECTED_TYPE==selected_pending){return(OrderGetString(ORDER_COMMENT));} //pending history if(SELECTED_TYPE==selected_pending_history){return(HistoryOrderGetString(SELECTED_TICKET,ORDER_COMMENT));} } return(NULL); } //order type int mql4OrderType(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history) { if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY){return(OP_BUY);} if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL){return(OP_SELL);} } //pending if(SELECTED_TYPE==selected_pending) { if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_BUY_LIMIT){return(OP_BUYLIMIT);} if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_BUY_STOP){return(OP_BUYSTOP);} if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_SELL_LIMIT){return(OP_SELLLIMIT);} if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_SELL_STOP){return(OP_SELLSTOP);} } //pending history if(SELECTED_TYPE==selected_pending_history) { if(HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TYPE)==ORDER_TYPE_BUY_LIMIT){return(OP_BUYLIMIT);} if(HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TYPE)==ORDER_TYPE_BUY_STOP){return(OP_BUYSTOP);} if(HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TYPE)==ORDER_TYPE_SELL_LIMIT){return(OP_SELLLIMIT);} if(HistoryOrderGetInteger(SELECTED_TICKET,ORDER_TYPE)==ORDER_TYPE_SELL_STOP){return(OP_SELLSTOP);} } } return(NULL); } //order magic ulong mql4OrderMagic(){ if(SELECTED_TYPE!=selected_empty) { //market + market history if(SELECTED_TYPE==selected_market||SELECTED_TYPE==selected_market_history){return((ulong)PositionGetInteger(POSITION_MAGIC));} //pending if(SELECTED_TYPE==selected_pending){return((ulong)OrderGetInteger(ORDER_MAGIC));} //pending history if(SELECTED_TYPE==selected_pending_history){return((ulong)HistoryOrderGetInteger(SELECTED_TICKET,ORDER_MAGIC));} } return(0); }
Hi i have this part of mql4
i want convert to mql5 , how can do it ? i find double BidPrice = SymbolInfoDouble( but ordersymbol? ? ? i can do it ?
Hi, here is the MQL5 solution to your MQL4 conversion:
int ordersTotal = OrdersTotal(); for(int x = 0; x < ordersTotal; x++) { if(OrderGetTicket(x) > 0) //--Select the order { //-- Get the Bid and Ask prices for the order instrument in MQL5 string orderSymbol = OrderGetString(ORDER_SYMBOL); ENUM_ORDER_TYPE orderType = (ENUM_ORDER_TYPE)OrderGetInteger(ORDER_TYPE); double bidPrice = SymbolInfoDouble(orderSymbol, SYMBOL_BID); double askPrice = SymbolInfoDouble(orderSymbol, SYMBOL_ASK); //-- You can now process your order Alert( "orderSymbol: ", orderSymbol, ", orderType: ", EnumToString(orderType), ", bidPrice: ", bidPrice, ", askPrice: ", askPrice); } }
You can also read the MQL5 Trade Functions and Order Properties documentation for more information.

- www.mql5.com
thanks for rply @Lorentzos Roussos, but your code is a part of library ? if yes is public? thanks again
and thanks also @Kelvin Muturi Muigua, i look also in mql5


- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Hi i have this part of mql4
i want convert to mql5 , how can do it ? i find double BidPrice = SymbolInfoDouble( but ordersymbol? ? ? i can do it ?