[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 350

 

인덱스로 막대를 기억하는 방법? 새로운 막대가 나타나면 인덱스가 변경됩니다. 예: 체커의 교차점이 있는 경우 다음 막대는 0 막대가 됩니다. 이 막대의 눈금 값을 기억하고 다음 막대 의 표시기 계산 에 사용해야 합니다. 이러한 인덱스를 초기화하는 방법은 무엇입니까? 아니면 어떻게 할까요?

 
david2 :

인덱스로 막대를 기억하는 방법?

 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; }                   
                        }
 
KONDOR :

감사합니다. 그렇게 해보겠습니다.
 
C 또는 C++에서 MQL4로의 변환기가 있습니까? 글쎄요, 즉 C로 어드바이저를 쓰는게 더 편하고 방송이 가능할까요?
 
-xlapex- :

그렇게하려고했지만 결과는 동일합니다 - 0.

int start() {

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" 을 작성하십시오.


 
artmedia70 :

감사합니다. 이미 모든 작업을 완료했습니다.
 

GBPUSD를 열지 않음

정수 시작()
{
OrderSend("GBPUSD",OP_SELL,0.1,매도,0,매도+400*포인트,매도-100*포인트);
경고 GetLastError() ;
반품();

}

컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.

브로커가 100핍을 너무 가까이 가지고 있는 것 같습니다(브로커의 경우 5자리)?

 
Danil93 :

GBPUSD를 열지 않음

정수 시작()
{
OrderSend("GBPUSD",OP_SELL,0.1,매도,0,매도+400*포인트,매도-100*포인트);
경고 GetLastError();
반품();

}

컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.

브로커가 100핍을 너무 가까이 가지고 있는 것 같습니다(브로커의 경우 5자리)?


아마도 4번째 사인에서 10pp에 불과하기 때문일 것입니다. 100 대신 적어도 101을 넣고 확인하십시오.
 
안녕 모두. 그리고 테스터가 스왑을 고려합니까? 그리고 내 이익이 의심스러울 정도로 일부 페어(특히 장기간 지속되는 거래의 경우)에서 녹고 있습니다.
 
Danil93 :

GBPUSD를 열지 않음


컴파일할 때 Alert GetLastError()와 관련된 오류를 작성합니다.

브로커의 100핍이 너무 가깝습니까(브로커의 5자리)?


 int start()
{
   OrderSend ( "GBPUSD" ,OP_SELL, 0.1 ,Ask, 0 ,Ask+ 400 * Point ,Ask- 100 * Point );
   Alert ( GetLastError () ) ;
   return ();

}