用于获取当前图表基本特性的函数
在本书的许多示例中,我们已经需要使用 预定义变量,这些变量包含图表及其交易品种的主要特性。MQL 程序还可以访问用于返回其中某些变量值的函数。无论使用变量还是函数效果等同,因此你可以使用自己偏好的源代码风格。
每个图表均以其交易品种和时间范围为特征。它们可以分别通过 Symbol和Period 函数来获取。此外,MQL5 提供了对两个最常用交易品种特性的简化访问方式:价格点值(Point)和价格中小数点后的有效位数(Digits)。
string Symbol()
Symbol函数返回当前图表的交易品种名称,即系统变量_Symbol 的值。要获取任意图表的交易品种,可以使用 ChartSymbol 函数,该函数基于图表标识符运行。我们稍后将讨论获取图表标识符的方法。
ENUM_TIMEFRAMES Period()
Period函数返回当前图表的时间范围值 (ENUM_TIMEFRAMES),该值对应_Period变量。要获取任意图表的时间范围,可使用 ChartPeriod函数,该函数同样需要图表标识符作为参数。
double Point()
Point函数返回当前金融工具的点值,以报价货币计算,该值与 _Point 变量的值相同。
int Digits()
Digits() 函数返回小数点后的小数位数,该值决定了当前图表交易品种价格的测量精度,与 _Digits变量等效。
当前工具的其他特性允许获取 SymbolInfo-functions,这些函数在更普遍的情况下可对所有金融工具进行分析。
以下是 ChartMainProperties.mq5脚本的简单示例,用于记录本节描述的各项特性。
void OnStart()
|
对于 EURUSD,H1 图表,我们将得到以下日志条目。
_Symbol=EURUSD / ok
|