ChartOpen
ChartOpen
打开指定交易品种和周期的新图表。
long ChartOpen(
string symbol, // 交易品种名称
ENUM_TIMEFRAMES period // 周期
);参量
- symbol
[in] 图表交易品种, NULL 意味着当前图表交易品种(附上EA交易)。
- period
[in] 图表周期(时间表)。可以是ENUM_TIMEFRAMES值之一。0代表当前图表周期。
返回值
若成功,返回打开图表ID,否则返回0。
注释
程序端同时打开图表的最大值不能超过CHARTS_MAX值。
示例:
#define CHART_SYMBOL NULL
#define CHART_PERIOD PERIOD_CURRENT
//+------------------------------------------------------------------+
//| 脚本程序起始函数 |
//+------------------------------------------------------------------+
void OnStart()
{
//--- 设置新图表的交易品种和时间框架
string symbol=CHART_SYMBOL;
if(symbol==NULL)
symbol=Symbol();
ENUM_TIMEFRAMES timeframe = (CHART_PERIOD==PERIOD_CURRENT ? Period() : CHART_PERIOD);
//--- 使用指定的交易品种和周期打开新图表
long chart_id=ChartOpen(symbol, timeframe);
if(chart_id==0)
{
Print("ChartOpen() failed. Error ", GetLastError());
return;
}
//--- 在日志中打印打开图表的参数
PrintFormat("A new chart of the %s symbol has been opened with a period of %s and ChartID %I64u",
symbol, StringSubstr(EnumToString(timeframe), 7), chart_id);
/*
结果:
A new chart of the GBPUSD symbol has been opened with a period of M1 and ChartID 133346697706632016
*/
}