转换函数

类型转换函数

string CharToStr( int ACSII码 )
将ASCII码转换成字符串

:: 输入参数
char_code - 字符的ACSII码

示例:

string str= "WORL" + CharToStr(44); // 44 是 'D'的ACSII码
// 结果产生的字符串将会是 WORLD

string DoubleToStr( double 值, int 位数)
将双精度浮点型数值转换成指定精度(指定小数位数)的字符串。

:: 输入参数

value - 要转换的数值。

digits - 精度要求,小数点后位数(0-8)

示例:

string value= DoubleToStr(1.28473418, 5);
//值为 1.28473

double NormalizeDouble( double value, int digits)

浮点型数值四舍五入到指定的精度,返回标准化双精度型数值。

计算止损值和赢利值,挂单交易,即时交易的价格都要求将价格标准化(即指定价格的小数位数不能超过服务器所要求的精度)。这个精度要求可以从预定义的 digits变量 中获得。

注意:NormalizeDouble() 函数,它确保了表示价格所需的准确性。在交易过程中,MT4不可能使用非标准价格,即使价格的小数位数多出一位,超出了交易服务器的要求的精度也是不能接受的

:: 输入参数

value - 要转换的数值。

digits - 精度要求,小数点后位数(0-8)

示例:

double var1= 0.123456789;
Print(NormalizeDouble(var1,5));
// 结果输出为: 0.12346

double StrToDouble( string 值串)
将数值形式的字符串转换成双精度型数值

:: 输入参数
value - 数字形式的字符串

示例:

double var= StrToDouble("103.2812");

int StrToInteger( string 值串 )
将数值形式的字符串转换成整型数值

:: 输入参数
value - 数字的字符串

示例:

int var1= StrToInteger("1024");

datetime StrToTime( string 时串)
将数值形式的字符串转换成日期时间数据,

:: 输入参数
value - 时间的字符串 (按年月时分的顺序格式)

示例:

datetime var1;
var1= StrToTime("2003.8.12 17:35");

// 返回结果为 "2003.8.12 17:35" 的时间值(最全面)
var1= StrToTime("17:35");

// 返回结果为当前日期(默认)+给指定的时间
var1= StrToTime("2003.8.12");

// 返回结果为日期时间为"2003.8.12 00:00"(午夜时间"00:00")

//----属于可交易时间内---+

bool 在交易时间内子(string 终时, string 始时)

{

bool 可交易= false;

if(StrToTime(终时)>StrToTime(始时))

  if(TimeCurrent()=StrToTime(始时))

     可交易= true;

if(StrToTime(终时)

  if(TimeCurrent()=StrToTime(始时))

     可交易= true;

if(使用全天交易==true)

  可交易= true;

if(暂停休息日!=0 && DayOfWeek()==暂停休息日)

  可交易= false;

return(可交易);

}

string TimeToStr( datetime value, int mode=TIME_DATE|TIME_MINUTES)

将时间型秒数值转换成字符串型返回

:: 输入参数
value - 时间值,(从1970.1.1 0:0:0 到现在的秒数)
mode- 返回字符串的形式,

         TIME_DATE  (结果为日期 yyyy.mm.dd),

         TIME_MINUTES  (结果到分钟为 hh:mi),

         TIME_SECONDS  (结果到秒为 hh:mi:ss)

示例:

strign var1= TimeToStr( TimeCurrent() ,TIME_DATE|TIME_SECONDS);

你可能感兴趣的:(转换函数)