//-------------- задаем значения индикатора Complex_Common по первому символу --------double Complex_1_1=iCustom(NULL,Tf,"Complex_Common_01mod",Period_low,Period_fast,m,0);
//---------------задаем значения индикатора Complex_Common по второму символу ------------ double Complex_1_2=iCustom(NULL,Tf,"Complex_Common_01mod",Period_low,Period_fast,n,0);
int wndNum; // Номер подокна индикатора /// И ЭТО ТОЖЕ НЕ ИСПОЛЬЗУЕТЕ ВИДИМО ОСТАЛОСЬ ОТ ПРЕДЫДУЩЕГО ПИСАТЕЛЯ
string wndName=????; // Наименование окна /// ЧТО ЭТО ?????// Удаляем графический объектvoid DeleteObject(string name) {
ObjectDelete(name+WindowExpertName());// Вы нашли окно предварительно?
}
// Рисуем меткуvoid object(string name, string _text, int fontsize, color color_, int value) {
string objName = name+WindowExpertName();
ObjectCreate(objName, OBJ_LABEL, WindowFind(WindowExpertName()), 0, 0);// То же самоеObjectSetText(objName, _text, fontsize, "Verdana", color_);
ObjectSet(objName, OBJPROP_CORNER, 1);
ObjectSet(objName, OBJPROP_XDISTANCE, 4);
ObjectSet(objName, OBJPROP_YDISTANCE, value);
}
谢谢你,Abolk,谢谢你的澄清。
看起来需要将几个功能合二为一。这个逻辑在哪里都是一样的
-下午好。
在我们以前的专家顾问中,我们使用这种开仓方式(I. Kim的功能)。
现在我正在写另一个EA,我正在复制这段代码
当我试图编译它时,突然得到以下信息
我搞不清楚为什么会出错!?代码是严格平衡的。
更重要的是!当我删除参数ti(在全局变量中声明)时,编译错误消失了。
但我需要确切的票据(ti),以实现MessageBox的 事后执行。
从今天早上开始,我就想不明白了。请告知这里有什么不准确的地方?
为什么我在OpenPosition()之前添加ti= 时突然出现错误?
OpenPosition()必须被声明为void,并且应该是int。
int OpenPosition(....){ .... }
谢谢你,Integer!
是的,--这正是所发生的事情。现在我已经纠正了它,而且都能正常编译了!
下午。
EA突然开始无缘无故地在每个刻度上打印。
2012.01.11 22:28:19 Complex_Common_01mod EURCHF,H1:ObjectCreate函数 的未知子窗口编号-1
我在代码中调用自定义指标(见图)。
能否请你告诉我错误从何而来?以前是没有的。我对代码进行了一些修改,甚至没有触及到指标部分
每一次打勾的日记都开始给我这样的信息......。
ObjectCreate函数 - 完全不在代码中使用
谢谢你,Integer!
是的,--这正是所发生的事情。现在我已经纠正了它,而且都能正常编译了!
指标搜索其窗口名称,但没有找到。见https://docs.mql4.com/ru/customind/IndicatorShortName。
那么,事实证明这是一个指标的缺陷?而不是专家顾问中的一个小故障?我不知道该如何处理它?我在EA的代码中没有要求调用这个指标的窗口
如果可能的话,请告知如何修复这一缺陷。(--ObjectCreate函数的未知子窗口数-1) ?
这里是指标代码。
不要把窗口名称和对象名称绑在一起,只需用唯一的名称来命名对象。
谢谢你,我想我明白了--我现在就试试命名和寻找窗口。