for(int i=1;i<Q_Bars;i++) { min_1 =ArrayMinimum(Volume, Q_Bars,1); //определяем индекс бара с минимальным объемом min_V1=iVolume(0,0,min_1); //величина этого объема
mas2[i,0]=Volume[i]; //заполняем 1-ю часть двумерного массива объемами mas2[i,1]=i; //вторую часть - соответствующими им индексами } ArraySort(mas2); //сортируем по величине объемов min_V2=mas2[2,0]; //определяем второй после минимального объем min_2=mas2[2,1]; //соответствующий ему индекс бара
H1= NormalizeDouble(High[min_2],4); //нормализуем level по знакам после запятой create_line("", H1, Ex_col_2, 0, 2); //пытаемся нарисовать линию
return(0); //Bывод: ничего не рисуется, что еще ему надо - ???? } //-------------------------------------------------------------------- void create_line(string name_line,double level,color c,int style,int w) { ObjectCreate(name_line, OBJ_HLINE, 0, 0,0); ObjectSet(name_line, OBJPROP_PRICE1, level); ObjectSet(name_line, OBJPROP_COLOR, c); ObjectSet(name_line, OBJPROP_STYLE, style); ObjectSet(name_line, OBJPROP_WIDTH, w);
大家好,能否告诉我,MT4在哪里物理存储GlobalVariables的值?我有一个与Windows重新安装有关的问题。
问题:为什么1月14日没有止损平仓?
测试模式:所有刻度线
问题:为什么1月14日没有止损平仓?
测试模式:所有刻度线
请看日志--可能是一个条形错误。
真的是一个酒吧的错误。同时,在H1上,这个地方的一切都正常关闭
从服务器上重新加载数据,它正确地关闭了。
这是一个非常有趣的问题。
在Java中,有截断的AND和 OR(&&和||)逻辑运算,其中操作数的右边不被评估,表达式的结果只取决于左边的。鉴于MQL中没有类似的单值操作(&和||),我的理解是,在使用这些操作时,两个操作数(包括左和右)都应该在MQL中被评估。然而,考虑到在使用这些运算符形成长的逻辑代码时发现了一些测试错误(在禁止的地方下单),我决定具体说明这个问题。谁知道呢--消除任何疑虑。
double level= High[min_V2]; 在函数中使用 double Level=NormalizeDouble(level,Digits)。
我这样试了一下,结果是一样的--零。
int mas2[10][2],min_1,min_2,min_V1,min_V2;
for(int i=1;i<Q_Bars;i++)
{
min_1 =ArrayMinimum(Volume, Q_Bars,1); //определяем индекс бара с минимальным объемом
min_V1=iVolume(0,0,min_1); //величина этого объема
mas2[i,0]=Volume[i]; //заполняем 1-ю часть двумерного массива объемами
mas2[i,1]=i; //вторую часть - соответствующими им индексами
}
ArraySort(mas2); //сортируем по величине объемов
min_V2=mas2[2,0]; //определяем второй после минимального объем
min_2=mas2[2,1]; //соответствующий ему индекс бара
H1= NormalizeDouble(High[min_2],4); //нормализуем level по знакам после запятой
create_line("", H1, Ex_col_2, 0, 2); //пытаемся нарисовать линию
return(0); //Bывод: ничего не рисуется, что еще ему надо - ????
}
//--------------------------------------------------------------------
void create_line(string name_line,double level,color c,int style,int w)
{
ObjectCreate(name_line, OBJ_HLINE, 0, 0,0);
ObjectSet(name_line, OBJPROP_PRICE1, level);
ObjectSet(name_line, OBJPROP_COLOR, c);
ObjectSet(name_line, OBJPROP_STYLE, style);
ObjectSet(name_line, OBJPROP_WIDTH, w);
}
试过这个方法,结果是一样的--零。
create_line("name", H1, Ex_col_2, 0, 2); //пытаемся нарисовать линию
2011.04.26 13:29:42 leve2 NZDJPY,M15: object name passed to ObjectSet function cannot be an uninitialized or empty string