포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 910

 

안녕하세요!

내 전문가는 이전 양초 에서 양초를 열 수 있는지 확인합니다. 조건이 허용되면 위치가 열리고 그렇지 않으면 열리지 않습니다. 문제는 이전 캔들의 상태를 확인하기 전에 포지션을 오픈했다는 점이다. 로그에서 나는 포지션의 시작을 보고 그 포지션 을 열어서는 안된다는 것이 밝혀졌습니다. 이 문제를 어떻게 해결할 것인가?

 
evillive :

중괄호가 없습니다.

고마워, 알았다! 문제는 더 깊었습니다. 이 글의 결과가 무엇인지에 대한 내 오해에서 일반적으로 기대가 결과와 일치하지 않았고 카운터를 망쳤습니다. 모든 것이 생각한 대로 작동합니다.
 

도움말, EA가 테스트 중에 주문을 열지 않는 이유는 무엇입니까? (아무것도 안하나요?) 제발 도와주세요!!

 extern double     OrderValue =   0.01 ;         
extern int        Up         =   70 ;
extern int        Dn         =   30 ;
extern int        rrr        =   5 ;
extern int        S1_period  =   5 ;
extern int        S1_slowing =   3 ;
extern double     TP         =   30 ;
extern double     SL         =   30 ;

double     S1a          = 0 ;
double     S1b          = 0 ;
      
double MyOrderStateB;
double MyOrderStateS;

int     OpenOrderB      ;   
int     OpenOrderS      ;   

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  
   {
     if ( Digits == 3 || Digits == 5 )
     {
       TP *= 10 ;
       SL  *= 10 ;
      
     }
  
  
  
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----

   S1a = NormalizeDouble ( iStochastic ( NULL , 0 , S1_period, 3 , S1_slowing, MODE_SMA , 1 , MODE_MAIN, 1 ), 0 );
   S1b = NormalizeDouble ( iStochastic ( NULL , 0 , S1_period, 3 , S1_slowing, MODE_SMA , 1 , MODE_SIGNAL, 1 ), 0 );
   
   if (MyOrderStateB == 1 ) Sleep ( 3000 );
     else MyOrderStateB = 0 ;
   if (MyOrderStateS == 1 ) Sleep ( 3000 );
     else MyOrderStateS = 0 ;
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+

void GetBuy(){
     
   if (S1a == S1b && S1a< 20.0000 && S1b< 20.0000 )
 { OrderSend ( Symbol (), OP_BUY, OrderValue, NormalizeDouble (Ask, Digits ), 3 , SL, TP, NULL , 0 , 0 , clrBlue );
     MyOrderStateB = 1 ; }
   else Sleep ( 2 );
}
void GetSell(){
      
   if (S1a == S1b && S1a> 80.0000 && S1b> 80.0000 )

    { OrderSend ( Symbol (), OP_SELL, OrderValue, NormalizeDouble (Bid, Digits ), 3 , SL, TP, NULL , 0 , 0 , clrRed );
      MyOrderStateS = 1 ; }    
       else Sleep ( 2 );
   } 

 
Viktorline14 :

도움말, EA가 테스트 중에 주문을 열지 않는 이유는 무엇입니까? (아무것도 안하나요?) 제발 도와주세요!!


종교는 올바른 게시물을 만드는 것을 허용하지 않습니까?

Start() 함수에는 주문을 여는 단일 함수 호출이 없습니다.

 
Vinin :

종교는 올바른 게시물을 만드는 것을 허용하지 않습니까?

Start() 함수에는 주문을 여는 단일 함수 호출이 없습니다.

 
형, 어떻게 추가합니까?
 
Viktorline14 :
형님 이거 어떻게 추가하나요?
당신의 엄마와 아빠에게 미안합니다. 소통의 문화를 배우지 못함
 

Vinin :
Жалко мне твоих папу и маму. Не научили культуре общения

죄송합니다. EA를 처음 작성하는 것이므로 도움이 정말 필요합니다.

제발 도와주세요

 

그래서 알아냈는데 오류는 없는데 경고가 뜨네요

분명히 그들 때문에 테스터에 오류가 발생합니다.

 
Viktorline14 :

그래서 알아냈는데 오류는 없는데 경고가 뜨네요

분명히 그들 때문에 테스터에 오류가 발생합니다.

얘들아 제발 도와줘!!!