12 MQL4转换函数

从一种格式转换到另一种格式提供数据的一组函数。

必须特别注意NormalizeDouble()函数它提供了价格介绍的必要的准确性。 在交易的操作中,如果当前的数字超出交易服务器的需求,意味着没有任何标准的价格可以使用

12.1 CharToString(字符转字符串)

string CharToStr(    int char_code)

将字符型转换成字符串型结果。

参量:

char_code      –      字符的ACSII码 。

示例:

string str=”WORL” + CharToStr(44); // ‘D’的44个代码。

// 结果字串符将被WORLD

12.2 DoubleToString(浮点转字符串)

string DoubleToStr(    double value, int digits)

将双精度浮点型转换成字符串型的结果返回。

参量:

value      –      浮点型数字。

digits      –      精确格式,小数点后位(0-8)。

示例:

string value=DoubleToStr(1.28473418, 5);

// 值为”1.28473″

12.3 NormalizeDouble(正常化浮点数)

double NormalizeDouble(    double value, int digits)

给出环绕浮点值的精确度。返回双重类型的正常化。
计算止损和赢利值,挂单交易交易的开盘价必须正常化。精确值需要在小数点中预定义。

参量:

value      –      浮点值。

digits      –      精确格式,小数点之后的精确数字 (0-8)。

示例:

double var1=0.123456789;

Print(DoubleToStr(NormalizeDouble(var1,5),8));

// 输入信息: 0.12346000

12.4 StringToDouble(字符串转浮点)

double StrToDouble(    string value)

将字符串型转换成双精度浮点型结果。

参量:

value      –      数字的字符串转换格式 。

示例:

double var=StrToDouble(“103.2812”);

12.5 StringToInteger(字符串转整型)

int StrToInteger(    string value)

将字符串型转换成整型结果。

参量:

value      –      数字的字符串转换格式。

示例:

int var1=StrToInteger(“1024”);

12.6 StringToTime(字符串转时间)

datetime StringToTime(    string value)

将字符串型转换成时间型,输入格式为 “yyyy.mm.dd hh:mi”

参量:

value      –      日期时间的字串符格式为 “yyyy.mm.dd hh:mi”。

示例:

datetime var1;

var1=StrToTime(“2003.8.12 17:35”);

var1=StrToTime(“17:35”); // 返回当前给出日期

var1=StrToTime(“2003.8.12″); // 返回午夜时间日期”00:00”

12.7 TimeToString(时间转字符串)

string TimeToString(    datetime value, void mode)

时间类型(从1970 1月1 日通过的相当数量秒数)转换为 “yyyy.mm.dd hh:mi”格式。

参量:

value    –      自1970年1月所通过的数量秒数。

mode      –      选择数据输出模式可以是以下的一个或者组合:
TIME_DATE 结果格式为 “yyyy.mm.dd”,
TIME_MINUTES 结果格式为 “hh:mi”,
TIME_SECONDS 结果格式为 “hh:mi:ss”。

示例:

string var1=TimeToString(TimeCurrent(),TIME_DATE|TIME_SECONDS);