如何在 MQL4 中自动绘制斐波那契指标?
How to draw a Fibonacci indicator automatically in MQL4?
我想使用斐波那契指标分析图表。是否有任何方法(或库)可以使用 MQL4 在图表上自动绘制斐波那契指标?
使用 MQL4 "Object Functions"(参考 GUI 对象的操作)
在众多的图形元素中,MetaTrader Terminal 4 也可以放置少数几个基于斐波纳契的技术指标(我们先说斐波纳契回撤工具,其他的用法类似,可以同理)。
首先,必须创建这样的对象,使用:
ObjectCreate( chart_ID, // ref. doc
anInterimObjNAME, // a name to be used
OBJ_FIBO, // a type of GUI-obj to draw
0, // sub-window
time1, price1, // where to start
time2, price2 // where to finish
);
接下来,可以将已创建对象的许多属性 - 颜色、线型/线粗、文本以及开始时间、开始价格、结束时间、结束价格 - 调整为令人满意的值一个人的口味。
//--- set how many levels you want to paint
ObjectSetInteger( chart_ID,
anInterimObjNAME,
OBJPROP_LEVELS,
levels
);
//--- set the properties of each of the level
for ( int i = 0; i < levels; i++ )
{ ObjectSetDouble( chart_ID, anInterimObjNAME, OBJPROP_LEVELVALUE, i, values[i] ); // level value
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELCOLOR, i, colors[i] ); // level color
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELSTYLE, i, styles[i] ); // level style
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELWIDTH, i, widths[i] ); // level width
ObjectSetString( chart_ID, anInterimObjNAME, OBJPROP_LEVELTEXT, i, DoubleToString( 100 * values[i], 1 ) ); // level description
}
我想使用斐波那契指标分析图表。是否有任何方法(或库)可以使用 MQL4 在图表上自动绘制斐波那契指标?
使用 MQL4 "Object Functions"(参考 GUI 对象的操作)
在众多的图形元素中,MetaTrader Terminal 4 也可以放置少数几个基于斐波纳契的技术指标(我们先说斐波纳契回撤工具,其他的用法类似,可以同理)。
首先,必须创建这样的对象,使用:
ObjectCreate( chart_ID, // ref. doc
anInterimObjNAME, // a name to be used
OBJ_FIBO, // a type of GUI-obj to draw
0, // sub-window
time1, price1, // where to start
time2, price2 // where to finish
);
接下来,可以将已创建对象的许多属性 - 颜色、线型/线粗、文本以及开始时间、开始价格、结束时间、结束价格 - 调整为令人满意的值一个人的口味。
//--- set how many levels you want to paint
ObjectSetInteger( chart_ID,
anInterimObjNAME,
OBJPROP_LEVELS,
levels
);
//--- set the properties of each of the level
for ( int i = 0; i < levels; i++ )
{ ObjectSetDouble( chart_ID, anInterimObjNAME, OBJPROP_LEVELVALUE, i, values[i] ); // level value
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELCOLOR, i, colors[i] ); // level color
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELSTYLE, i, styles[i] ); // level style
ObjectSetInteger( chart_ID, anInterimObjNAME, OBJPROP_LEVELWIDTH, i, widths[i] ); // level width
ObjectSetString( chart_ID, anInterimObjNAME, OBJPROP_LEVELTEXT, i, DoubleToString( 100 * values[i], 1 ) ); // level description
}