MQL4
| MQL5
|
Ask
| SymbolInfoDouble(Symbol(),SYMBOL_ASK);
|
Bid
| SymbolInfoDouble(Symbol(),SYMBOL_BID);
|
|
|
Bars
| Bars(Symbol(),PERIOD_CURRENT);
|
|
|
Digits
| _Digits or Digits()
|
Point
| _Point or Point()
|
|
|
Close[]
High[]
Low[]
Open[]
Time[]
Volume[]
| int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &Time[],
const double &Open[],
const double &High[],
const double &Low[],
const double &Close[],
const long &Volume[],
const long &Real_Volume[],
const int &Spread[])
{
ArraySetAsSeries(Open,true);
ArraySetAsSeries(High,true);
ArraySetAsSeries(Low,true);
ArraySetAsSeries(Close,true);
ArraySetAsSeries(Time,true);
ArraySetAsSeries(Volume,true);
ArraySetAsSeries(Spread,true);
|
| in EA/script
use CopyClose,CopyHigh,CopyLow,CopyOpen,CopyTime,
CopyTickVolume
|
|
|
AccountBalance()
| AccountInfoDouble(ACCOUNT_BALANCE);
|
AccountCredit()
| AccountInfoDouble(ACCOUNT_CREDIT);
|
AccountCompany()
| AccountInfoString(ACCOUNT_COMPANY);
|
AccountCurrency()
| AccountInfoString(ACCOUNT_CURRENCY);
|
AccountEquity()
| AccountInfoDouble(ACCOUNT_EQUITY);
|
AccountFreeMargin()
| AccountInfoDouble(ACCOUNT_FREEMARGIN);
|
AccountFreeMarginCheck()
| read AccountFreeMarginCheck
|
AccountFreeMarginMode()
| ???
|
AccountLeverage()
| AccountInfoInteger(ACCOUNT_LEVERAGE);
|
AccountMargin()
| AccountInfoDouble(ACCOUNT_MARGIN);
|
AccountName()
| AccountInfoString(ACCOUNT_NAME);
|
AccountNumber()
| AccountInfoInteger(ACCOUNT_LOGIN);
|
AccountProfit()
| AccountInfoDouble(ACCOUNT_PROFIT);
|
AccountServer()
| AccountInfoString(ACCOUNT_SERVER);
|
AccountStopoutLevel()
| AccountInfoDouble(ACCOUNT_MARGIN_SO_SO);
|
AccountStopoutMode()
| AccountInfoInteger(ACCOUNT_MARGIN_SO_MODE);
|
|
|
ArrayBsearch()
| read ArrayBsearch
|
ArrayCopyRates()
| read CopyRates
|
ArrayCopySeries()
| read CopyClose/CopyHigh/CopyLow/CopyOpen/CopyTickVolume/CopyTime
|
ArrayDimension()
| ????
|
ArraySort()
| // MQL4 ArraySort(SortInt, 0, 0, MODE_ASCEND);
ArraySort(SortInt);
//MQL4 ArraySort(SortInt, 0, 0, MODE_DESCEND);
ArraySetAsSeries(SortInt,true);
ArraySort(SortInt);
|
|
|
GetLastError()
| you need to call ResetLastError() before use.
|
IsConnected()
| (bool)TerminalInfoInteger(TERMINAL_CONNECTED)??
|
IsDemo()
| bool IsDemo(){
ENUM_ACCOUNT_TRADE_MODE tradeMode=(ENUM_ACCOUNT_TRADE_MODE)AccountInfoInteger(ACCOUNT_TRADE_MODE);
if(tradeMode == ACCOUNT_TRADE_MODE_DEMO) return(true);
// tradeMode is ACCOUNT_TRADE_MODE_CONTEST or ACCOUNT_TRADE_MODE_REAL
return(false);
}
|
IsDllsAllowed()
IsLibrariesAllowed()
| (bool)MQL5InfoInteger(MQL5_DLLS_ALLOWED)???
|
IsOptimization()
| (bool)MQL5InfoInteger(MQL5_OPTIMIZATION)???
|
IsTesting()
| (bool)MQL5InfoInteger(MQL5_TESTING)???
|
IsTradeAllowed()
| (bool)MQL5InfoInteger(MQL5_TRADE_ALLOWED) &&
(bool)TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)??
|
IsExpertEnabled()
| (bool)TerminalInfoInteger(TERMINAL_EXPERTS_ENABLED)??
|
IsTradeContextBusy()
| LOST????
|
IsVisualMode()
| (bool)MQL5InfoInteger(MQL5_VISUAL_MODE)???
|
UninitializeReason()
| _UninitReason
|
TerminalCompany()
| TerminalInfoString(TERMINAL_COMPANY)
|
TerminalName()
| TerminalInfoString(TERMINAL_NAME)
|
TerminalPath()
| TerminalInfoString(TERMINAL_PATH)
TerminalInfoString(TERMINAL_DATA_PATH)
TerminalInfoString(TERMINAL_COMMONDATA_PATH)
|
|
|
Alert()
| LOST????
|
MarketInfo()
| read SymbolInfoInteger/Double/String
|
|
|
CharToStr()
| CharToString()
|
DoubleToStr()
| DoubleToString()
|
StrToDouble()
| StringToDouble()
|
StrToInteger()
| StringToInteger()
|
StrToTime()
| StringToTime()
|
TimeToStr()
| TimeToString()
|
|
|
IndicatorBuffers()
| #property indicator_buffers 7
#property indicator_plots 7
|
IndicatorCounted()
| const int prev_calculated
|
IndicatorDigits()
| IndicatorSetInteger(INDICATOR_DIGITS,_Digits);
|
IndicatorShortName()
| IndicatorSetString(INDICATOR_SHORTNAME,name);
|
SetIndexArrow()
| PlotIndexSetInteger(0,PLOT_ARROW,213);
|
SetIndexBuffer()
| SetIndexBuffer(0,MABuffer,INDICATOR_DATA); // or INDICATOR_CALCULATIONS
|
SetIndexDrawBegin()
| PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,KPeriod);
|
SetIndexEmptyValue()
| PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0.0);
|
SetIndexLabel()
| PlotIndexSetString(0,PLOT_LABEL,"Moving Average");
|
SetIndexShift()
| PlotIndexSetInteger(0,PLOT_SHIFT,26);
|
SetIndexStyle()
| PlotIndexSetInteger(0,PLOT_LINE_STYLE,STYLE_SOLID);
PlotIndexSetInteger(0,PLOT_LINE_WIDTH,2);
PlotIndexSetInteger(0,PLOT_LINE_COLOR,DeepPink);
|
SetLevelStyle()
| IndicatorSetInteger(INDICATOR_LEVELSTYLE,STYLE_DOT);
|
SetLevelValue()
| IndicatorSetInteger(INDICATOR_LEVELS,2);
IndicatorSetDouble(INDICATOR_LEVELVALUE,0,20);
IndicatorSetDouble(INDICATOR_LEVELVALUE,1,80);
|
|
|
Day()
DayOfWeek()
DayOfYear()
Hour()
Minute()
Month()
Seconds()
Year()
| MqlDateTime tm;
TimeCurrent(tm);
int Day=tm.day;
int DayOfWeek=tm.day_of_week;
int DayOfYear=tm.day_of_year;
int Hour=tm.hour;
int Minute=tm.min;
int Seconds=tm.sec;
int Year=tm.year;
|
|
|
TimeDay()
TimeDayOfWeek()
TimeDayOfYear()
TimeHour()
TimeMinute()
TimeMonth()
TimeSeconds()
TimeYear()
| datetime TargetTime = D'2003.12.31';
MqlDateTime tm;
TimeToStruct(TargetTime,tm);
int Day=tm.day;
int DayOfWeek=tm.day_of_week;
int DayOfYear=tm.day_of_year;
int Hour=tm.hour;
int Minute=tm.min;
int Seconds=tm.sec;
int Year=tm.year;
|
|
|
FileOpenHistory()
| LOST????
|
FileSeek()
| read FileSeek
|
|
|
ObjectCreate()
| ObjectCreate(0,…
|
ObjectDelete()
| ObjectDelete(0,name);
|
ObjectDescription()
| ObjectGetString(0,name,OBJPROP_TEXT);
|
ObjectFind()
| ObjectFind(0,name);
|
ObjectGet()
| read ObjectGetIngeger/Double/String
|
ObjectGetFiboDescription()
| ObjectGetString(0,name,OBJPROP_LEVELTEXT,int level);
|
ObjectGetShiftByValue()
| ObjectGetTimeByValue(0,string name,double value,int line_id);
|
ObjectGetValueByShift()
| ObjectGetValueByTime(0,string name,datetime time, int line_id);
|
ObjectMove()
| ObjectMove(0, string name, int point, datetime time1, double price1)
|
ObjectName()
| ObjectName(0,int pos,int nwin=-1,int type=-1);
|
ObjectsDeleteAll()
| ObjectsDeleteAll(0,int window=EMPTY, int type=EMPTY)
|
ObjectSet()
| read ObjectSetIngeger/Double/String
|
ObjectSetFiboDescription()
| ObjectSetString(0,string name,OBJPROP_LEVELTEXT,int level,string newstring);
|
ObjectSetText()
| ObjectSetString(0,string name,OBJPROP_LEVELTEXT,string newstring);
|
ObjectsTotal()
| ObjectsTotal(0,int nwin=-1,int type=-1);
|
ObjectType()
| ObjectGetInteger(0,name,OBJPROP_TYPE);
|
|
|
StringConcatenate()
| int StringConcatenate(string& string_var,void arg1,void arg2....);
|
StringGetChar()
| StringGetCharacter()
|
StringSetChar()
| StringSetCharacter()
|
|
|
iBars()
| Bars()
|
iBarShift()
iClose()
iHigh()
iHighest()
iLow()
iLowest()
iOpen()
iTime()
iVolume()
| use mt4timeseries.mqh ()
|
iTime()
| datetime iTime(string symbol,ENUM_TIMEFRAMES timeframe,int index)
{
datetime Times[];
datetime tm=0;
ArraySetAsSeries(Times,true);
int copied=CopyTime(symbol,timeframe,0,Bars(symbol,timeframe),Times);
if(copied>0 && index<copied) tm=Times[index];
return(tm);
}// My Simple code..
|
|
|
HideTestIndicators()
| LOST????
|
Period()
| PeriodSeconds(Period())/60
|
RefreshRates()
| LOST????
|
WindowBarsPerChart()
| ChartGetInteger(0,CHART_VISIBLE_BARS)
|
WindowExpertName()
| MQL5InfoString(MQL5_PROGRAM_NAME)???
|
WindowFind()
|
|
WindowFirstVisibleBar()
| ChartGetInteger(0,CHART_FIRST_VISIBLE_BAR)
|
WindowHandle()
| *ChartGetInteger(0,CHART_WINDOW_HANDLE)
|
WindowIsVisible()
| ChartGetInteger(0,CHART_WINDOW_IS_VISIBLE)
|
WindowOnDropped()
| ChartWindowOnDropped()
|
WindowPriceMax()
| ChartGetDouble(0,CHART_PRICE_MIN,0);
|
WindowPriceMin()
| ChartGetDouble(0,CHART_PRICE_MAX,0);
|
WindowPriceOnDropped()
| ChartPriceOnDropped()
|
WindowRedraw()
| ChartRedraw()
|
WindowScreenShot()
| read ChartScreenShot
|
WindowTimeOnDropped()
| ChartTimeOnDropped()
|
WindowsTotal()
| ChartGetInteger(0,CHART_WINDOWS_TOTAL)
|
WindowXOnDropped()
| ChartXOnDropped()
|
WindowYOnDropped()
| ChartYOnDropped()
|