对象类型及其坐标指定的特点
我们在 图表章节中已经知道,窗口中存在两种坐标系:屏幕(像素)坐标和报价(时间和价格)坐标。在这方面,支持的对象类型总体上分为两大类:与屏幕关联的对象和与价格图表关联的对象。第一类对象始终相对于窗口的某个角保持固定位置(该角落为参考点,由用户或程序员在对象特性中确定)。第二类会随着窗口的工作区域一起滚动。
下图展示了两个带文本标签的对象用于对比:一个附加在屏幕上 (OBJ_LABEL),另一个附加在价格图表上 (OBJ_TEXT)。它们的类型(在括号中给出)以及用于设置坐标的特性,我们将在本章的相关章节中学习。需要注意的是,当滚动价格图表时,OBJ_TEXT 文本会与其同步移动,而 OBJ_LABEL 文本则保持在原位。
对象的两种不同坐标系
此外,这些对象在锚点数量上也有所不同。例如,单个价格标签(“箭头”)需要一个时间/价格点,而趋势线则需要两个这样的点。还有一些对象类型具有更多锚点,例如等距通道、三角形或 Elliott 波浪。
当对象被选中时(例如在 Object List对话框中通过双击或单击图表选中,具体取决于 Charts 选项卡/Select objects with a single mouse click 选项),其锚点会以对比色小方块标示。正是这些锚点被用于拖动对象以及调整尺寸和改变方向。
所有受支持的对象类型均在 ENUM_OBJECT 枚举中进行了描述。你可以在 MQL5 文档中查看其完整内容。我们将逐步、分部分讨论其元素。