인덱스로 막대를 기억하는 방법? 새로운 막대가 나타나면 인덱스가 변경됩니다. 예: 체커의 교차점이 있는 경우 다음 막대는 0 막대가 됩니다. 이 막대의 눈금 값을 기억하고 다음 막대 의 표시기 계산 에 사용해야 합니다. 이러한 인덱스를 초기화하는 방법은 무엇입니까? 아니면 어떻게 할까요?
datetime Time_bar; // в глобальных переменных//запоминаем бар по времени открытия
if (...пересечение машек...) Time_bar=Time[ 0 ];
// определяем индекс бара в любой момент
int bar=-1;
for ( int i= 0 ;i< 1000 ;i++){
if (Time[i]==Time_bar) { bar=i; break; }
}
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( "" , H1, Ex_col_2, 0 , 2 ) 을 호출할 때 " " 대신 "Object_name" 을 작성하십시오.
인덱스로 막대를 기억하는 방법? 새로운 막대가 나타나면 인덱스가 변경됩니다. 예: 체커의 교차점이 있는 경우 다음 막대는 0 막대가 됩니다. 이 막대의 눈금 값을 기억하고 다음 막대 의 표시기 계산 에 사용해야 합니다. 이러한 인덱스를 초기화하는 방법은 무엇입니까? 아니면 어떻게 할까요?
인덱스로 막대를 기억하는 방법?
감사합니다. 그렇게 해보겠습니다.
그렇게하려고했지만 결과는 동일합니다 - 0.
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( "" , H1, Ex_col_2, 0 , 2 ) 을 호출할 때 " " 대신 "Object_name" 을 작성하십시오.
GBPUSD를 열지 않음
정수 시작()
{
OrderSend("GBPUSD",OP_SELL,0.1,매도,0,매도+400*포인트,매도-100*포인트);
경고 GetLastError() ;
반품();
}
컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.
브로커가 100핍을 너무 가까이 가지고 있는 것 같습니다(브로커의 경우 5자리)?
GBPUSD를 열지 않음
정수 시작()
{
OrderSend("GBPUSD",OP_SELL,0.1,매도,0,매도+400*포인트,매도-100*포인트);
경고 GetLastError();
반품();
}
컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.
브로커가 100핍을 너무 가까이 가지고 있는 것 같습니다(브로커의 경우 5자리)?
아마도 4번째 사인에서 10pp에 불과하기 때문일 것입니다. 100 대신 적어도 101을 넣고 확인하십시오.
GBPUSD를 열지 않음
컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.
브로커의 100핍이 너무 가깝습니까(브로커의 5자리)?