微信登录
注册忘记密码
查看: 1268|回复: 0

MQL4/MQL5 函数变化对照表(mt5/mt4对比)

[复制链接]

该用户从未签到

发表于 2022-5-21 07:19:42 | 显示全部楼层 |阅读模式
MQL4/MQL5 函数变化对照表

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()



声明:以上内容来源于网络,如有侵权请联系我们(123@shiyan.com)删除!

发表回复

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则