普乐智能

查看: 6610|回复: 0

MT4编程 预定义变量

[复制链接]

338

主题

424

帖子

1670

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1670
发表于 2022-2-28 08:51:40 | 显示全部楼层 |阅读模式

预定义变量 [Pre-defined Variables]
double Ask
通货的买入价
示例:

if(iRSI(NULL,0,14,PRICE_CLOSE,0)<25)
{
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,
"My order #2",3,D'2005.10.10 12:30',Red);
return;
}


int Bars
返回图表中的柱数
示例:

int counter=1;
for(int i=1;i<=Bars;i++)
{
Print(Close[i-1]);
}


double Bid
通货的卖价
示例:

if(iRSI(NULL,0,14,PRICE_CLOSE,0)>75)
{
OrderSend("EURUSD",OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,
"My order #2",3,D'2005.10.10 12:30',Red);
return(0);
}


double Close[]
返回指定索引位置的收盘价格
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv",FILE_CSV|FILE_WRITE,';');
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// write data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
}


int Digits
返回当前通货的汇率小数位
示例:

Print(DoubleToStr(Close[i-1], Digits));


double High[]
返回指定索引位置的最高价格
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv", FILE_CSV|FILE_WRITE, ';');
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// write data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
}


double Low[]
返回指定索引位置的最低价格
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv", FILE_CSV|FILE_WRITE, ";");
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// write data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
}


double Open[]
返回指定索引位置的开盘价格
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv", FILE_CSV|FILE_WRITE, ';');
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// write data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
}


double Point
返回当前图表的点值
示例:

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,Red);


datetime Time[]
返回指定索引位置的时间
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv", FILE_CSV|FILE_WRITE, ';');
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// write data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
}


double Volume[]
返回指定索引位置的成交量
示例:

int handle, bars=Bars;
handle=FileOpen("file.csv", FILE_CSV|FILE_WRITE, ';');
if(handle>0)
{
// write table columns headers
FileWrite(handle, "Time;Open;High;Low;Close;Volume");
// erite data
for(int i=0; i
FileWrite(handle, Time[i], Open[i], High[i], Low[i], Close[i], Volume[i]);
FileClose(handle);
)

字符串函数 [String Functions]
string StringConcatenate( ... )
字符串连接

:: 输入参数
... - 任意值,用逗号分割

示例:

string text;
text=StringConcatenate("Account free margin is ", AccountFreeMargin(), "Current time is ", TimeToStr(CurTime()));
// slow text="Account free margin is " + AccountFreeMargin() + "Current time is " + TimeToStr(CurTime())
Print(text);


int StringFind( string text, string matched_text, int start=0)
在字符串中寻找符合条件的字符串返回索引位置

:: 输入参数
text - 被搜索的字符串
matched_text - 需要搜索的字符串
start - 搜索开始索引位置

示例:

string text="The quick brown dog jumps over the lazy fox";
int index=StringFind(text, "dog jumps", 0);
if(index!=16)
Print("oops!");


int StringGetChar( string text, int pos)
取字符串中的某一个字符

:: 输入参数
text - 字符串
pos - 取字符的位置

示例:

int char_code=StringGetChar("abcdefgh", 3);
// char code 'c' is 99


int StringLen( string text)
返回字符串长度

:: 输入参数
text - 字符串

示例:

string str="some text";
if(StringLen(str)<5) return(0);


string StringSetChar( string text, int pos, int value)
在字符串中设置一个字符

:: 输入参数
text - 字符串
pos - 设置字符的位置
value - 新的字符

示例:

string str="abcdefgh";
string str1=StringSetChar(str, 3, 'D');
// str1 is "abcDefgh"


string StringSubstr( string text, int start, int count=EMPTY)
从字符串中截取一段字符串

:: 输入参数
text - 字符串
start - 开始索引位置
count - 截取字符数

示例:

string text="The quick brown dog jumps over the lazy fox";
string substr=StringSubstr(text, 4, 5);
// subtracted string is "quick" word


string StringTrimLeft( string text)
字符串左侧去空格

:: 输入参数
text - 字符串

示例:

string str1=" Hello world ";
string str2=StringTrimLeft(str);
// after trimming the str2 variable will be "Hello World "


string StringTrimRight( string text)
字符串右侧去空格

:: 输入参数
text - 字符串

示例:

string str1=" Hello world ";
string str2=StringTrimRight(str);
// after trimming the str2 variable will be " Hello World"

分享:
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|11wo.com

Copyright © 2001-2013 Comsenz Inc.Template by Comsenz Inc.All Rights Reserved.

Powered by Discuz!X3.4( 备案号:桂ICP备18000909号-1 )QQ

快速回复 返回顶部 返回列表