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

 
VOLDEMAR :

예, x=0으로 설정하면 0으로 재설정되고, 단순히 int x:로 설정하면 0으로 재설정되지 않고 증가합니다.


미안, 나는 그녀가 시작의 내부에 있다는 것을 눈치 채지 못했습니다 ....
 
나는 그것이 null이라고 확신한다. 모두 감사합니다. 약간 소름이 돋습니다.
 
int tiket,tikett; double volume= 0.1 ; int i= 0 ,R1= 0 ,R2= 0 ,A= 1 ;
int start()
  { 
int     X= 0 ; 
double price=(Ask+Bid)/ 2 ;      
int total= OrdersTotal ();                                         
                                       
   for ( int i=total- 1 ; i>= 0 ; i--)                                 
   {
     if ( OrderSelect (i, SELECT_BY_POS))                          
     { 
       Alert ( "Uy" ,i);
       if (OrderSymbol()== Symbol ()&&OrderMagicNumber( )== 1000 ||OrderMagicNumber( )== 2000 &&OrderSymbol()== Symbol ())
       {
       X ++;
       }  
       }
       }
       Alert ( "X" ,X);}

if (X== 0 )
   {
   tiket= OrderSend ( Symbol (), OP_BUYSTOP,  volume*A, price +otstup* Point , Point * 3 , R1, price+takeprofit* Point +otstup* Point , "OP_BUYSTOP" , 1000 ,  expiration, Red ); 
   Alert ( "OP_BUYSTOP" , GetLastError ( )); 
   tikett= OrderSend ( Symbol (), OP_SELLSTOP,  volume*A, price -otstup* Point , Point * 3 ,R2, price-takeprofit* Point -otstup* Point , "OP_SELLSTOP" , 2000 ,  expiration, C'0,128,255' );
     Alert ( "OP_SELLSTOP" , GetLastError ( )); 
    }       


   return ( 0 );
  

이렇게 되는구나!!!!!

 
Dimka-novitsek :
나는 그것이 null이라고 확신한다. 모두 감사합니다. 약간 소름이 돋습니다.
그리고 데이터 출력을 위해서는 comment() 를 사용 하는 것이 좋습니다; 그런 다음 테스트하는 동안 왼쪽 상단에서 변수에 무슨 일이 일어나고 있는지 즉시 볼 수 있습니다 .......
 
감사해요!!
 
코드를 입력했는데 컴파일되지 않습니다. 무슨 일이야, 나는 그것을 알아낼 수 없습니다. 그러나 가장 중요한 것은 여전히 어떤 종류의 논리적 오류가있을 수 있으며 모든 틱마다 주문이 열리고 작동하지 않을 가능성이 큽니다.
 if (OrderSymbol()== Symbol ()&& OrderMagicNumber( )== 1000 ||OrderMagicNumber( )== 2000 && OrderSymbol()== Symbol ())
정확히 이 부분인데 이것도 이해가 안 가나요??
 
VOLDEMAR :

얘들아 질문이 더 복잡해.......

주어진 이익에 도달할 때 EA가 모든 주문을 닫도록 하는 방법 .... 하나의 기호에 대한 주문만 닫기 ..

예: EA는 3쌍에서 작동하며 하나의 기호에 대한 모든 주문을 마감하는 금액은 100r ...

유로 달러가 100 r 이상인 경우 유로 달러로만 주문을 마감하고 다른 경우에는 - 200 r..

accountbalance()를 사용하면 세 쌍의 금액이 100루블을 초과하는 경우에만 고문이 닫힙니다. 이것은 나를 위해 작동하지 않습니다 !!!!

도와주세요.......



글쎄, 아마도
주문 이익 ( )
그리고 또한 If (OrderSymbol()==Symbol()) {} 스스로 쓸 수는 없지만...
[Deleted]  

코드에서 잘못된 점을 알려주세요. 로봇은 매도 주문을 마감해야 하며, 주문이 없으면 매수합니다. 오류 4105가 발생하여 처리를 시도했지만 결과가 없습니다. 아마도 다른 처리 방법이 있습니까?

PRICECURRENTPPROFIT - 구매 수준.


// 로봇 판매
// 매도 주문 이 있는지 확인
if (입찰가>=PRICECURRENTPPROFIT && PRICECURRENTMPROFIT>0)
{
for(cnt=OrdersTotal();cnt>=0;cnt--)
{주문선택(cnt, SELECT_BY_POS, MODE_TRADES); 모드 = 주문 유형(); if(OrderSymbol() == "EURUSD")
{if(모드 == OP_BUY)
{go=OrderClose(OrderTicket(), 제비, 입찰, 미끄러짐, 녹색);

}
}
} // 열려 있으면 닫습니다.
} if(go != true) {Print("판매 주문을 열지 못했습니다. 오류 N", GetLastError());
switch(GetLastError()) {case 4105: OrderSend("EURUSD",OP_SELL,Lots,Bid,2*Point,0,0,"로봇 판매",MagicNumber,0,Red);break;}
}

 

어드바이저가 있는데 매도포지션만 열어주고 매수시 열리도록 기능을 추가하고 싶은데 매도와 매수에는 별도의 매직넘버가 필요합니다

이익 실현이 트리거되면 로봇이 모든 보류 중인 주문 을 닫고 매도 주문에서 이익 실현이 트리거되면 모든 보류 중인 주문 OP_SELLLIMIT을 닫고 OP_BUYLIMIT, OP_BUY를 변경하지 않은 채로 두어야 합니다.

 
Dimka-novitsek :
코드를 입력했는데 컴파일되지 않습니다. 무슨 일이야, 나는 그것을 알아낼 수 없습니다. 그러나 가장 중요한 것은 여전히 어떤 종류의 논리적 오류가있을 수 있으며 각 틱마다 주문이 열리며 작동하지 않는이 부분 일 가능성이 큽니다. 또한 이것을 이해할 수 없습니다 ??
코드가 모두 표시되지 않았거나 맨 아래에 닫는 중괄호가 누락되었습니다.