Spirit, tu que decías que tenías muchos programadores a tu cargo, diles que traduzcan mql, que es mucho curroFer137 escribió:Para pasar de mq4 a mq5 estoy haciendo un mqh, muchas de las funciones se pueden traducir en una linea.

Código: Seleccionar todo
//___________________________________________________________________________________________________________________________________________________
string OrderComment(){return(OrderGetString(ORDER_COMMENT));}
string OrderSymbol(){return(OrderGetString(ORDER_SYMBOL));}
long OrderType(){return(OrderGetInteger(ORDER_TYPE));}
long OrderMagicNumber(){return(OrderGetInteger(ORDER_MAGIC));}
long OrderOpenTime(){return(OrderGetInteger(ORDER_TIME_SETUP));}
long OrderCloseTime(){return(OrderGetInteger(ORDER_TIME_DONE));}
double OrderLots(){return(OrderGetDouble(ORDER_VOLUME_CURRENT));}
double OrderProfit(){return(OrderGetDouble(ORDER_VOLUME_CURRENT));}
double OrderOpenPrice(){return(OrderGetDouble(ORDER_PRICE_OPEN));}
double OrderStopLoss(){return(OrderGetDouble(ORDER_SL));}
double OrderTakeProfit(){return(OrderGetDouble(ORDER_TP));}
int OrdersHistoryTotal(){return(HistoryOrdersTotal());}
//___________________________________________________________________________________________________________________________________________________
int Day(){MqlDateTime tm; TimeCurrent(tm); return(tm.day);}
int DayOfWeek(){MqlDateTime tm;TimeCurrent(tm);return(tm.day_of_week);}
int DayOfYear(){MqlDateTime tm;TimeCurrent(tm);return(tm.day_of_year);}
int Hour(){MqlDateTime tm;TimeCurrent(tm);return(tm.hour);}
int Minute(){MqlDateTime tm;TimeCurrent(tm);return(tm.min);}
int Seconds(){MqlDateTime tm;TimeCurrent(tm);return(tm.sec);}
int Year(){MqlDateTime tm;TimeCurrent(tm);return(tm.year);}
int TimeDay(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.day);}
int TimeDayOfWeek(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.day_of_week);}
int TimeDayOfYear(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.day_of_year);}
int TimeHour(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.hour);}
int TimeMinute(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.min);}
int TimeMonth(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.mon);}
int TimeSeconds(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.sec);}
int TimeYear(datetime date){MqlDateTime tm;TimeToStruct(date,tm);return(tm.year);}
//___________________________________________________________________________________________________________________________________________________
string TerminalPath(){return(TerminalInfoString(TERMINAL_PATH));}
string TerminalCompany(){return(TerminalInfoString(TERMINAL_COMPANY));}
string TerminalName(){return(TerminalInfoString(TERMINAL_NAME));}
//___________________________________________________________________________________________________________________________________________________
double AccountBalance(){ return(AccountInfoDouble(ACCOUNT_BALANCE));}
double AccountCredit(){return(AccountInfoDouble(ACCOUNT_CREDIT));}
string AccountCompany(){return(AccountInfoString(ACCOUNT_COMPANY));}
string AccountCurrency(){return(AccountInfoString(ACCOUNT_CURRENCY));}
double AccountEquity(){return(AccountInfoDouble(ACCOUNT_EQUITY));}
double AccountFreeMargin(){return(AccountInfoDouble(ACCOUNT_FREEMARGIN));}
long AccountLeverage(){return(AccountInfoInteger(ACCOUNT_LEVERAGE));}
double AccountMargin(){return(AccountInfoDouble(ACCOUNT_MARGIN));}
string AccountName(){return(AccountInfoString(ACCOUNT_NAME));}
long AccountNumber(){return(AccountInfoInteger(ACCOUNT_LOGIN));}
double AccountProfit(){return(AccountInfoDouble(ACCOUNT_PROFIT));}
string AccountServer(){return(AccountInfoString(ACCOUNT_SERVER));}
double AccountStopoutLevel(){return(AccountInfoDouble(ACCOUNT_MARGIN_SO_SO));}
long AccountStopoutMode(){return(AccountInfoInteger(ACCOUNT_MARGIN_SO_MODE));}
//___________________________________________________________________________________________________________________________________________________
string CharToStr(uchar ch ){return(CharToString(ch));}
string DoubleToStr(double val, int dig ){return(DoubleToString(val,dig));}
double StrToDouble(string str){return(StringToDouble(str));}
long StrToInteger(string str ){return(StringToInteger(str));}
datetime StrToTime(string str){return(StringToTime(str));}
string TimeToStr(datetime t,int mode=TIME_DATE|TIME_MINUTES){return(TimeToString(t,mode)); }
ushort StringGetChar(string str, int pos){return(StringGetCharacter(str,pos));}
bool StringSetChar(string& str,int pos, ushort character ){return(StringSetCharacter(str,pos,character));}
//___________________________________________________________________________________________________________________________________________________
// overrideando
int OrderSend(string symbol, int cmd, double volumen, double precio, int slippage, double stoploss, double takeprofit,
string comentario=NULL, int magicn=0, datetime expiracion=0, color arrow_color=CLR_NONE){
MqlTradeRequest op; MqlTradeResult res;
op.action=TRADE_ACTION_DEAL;
op.symbol=symbol;
op.type=cmd;
op.volume=volumen;
op.price=precio;
op.deviation=slippage;
op.sl=stoploss;
op.tp=takeprofit;
op.comment=comentario;
op.magic=magicn;
op.expiration=expiracion;
if(OrderSend(op,res)){if(cmd<2)return(res.deal);else return(res.order);}else return(-1);
}
//___________________________________________________________________________________________________________________________________________________