[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 201

 
isaev-av :

Teşekkür ederim. Ve DC'ye bağlı olarak Rakamlar 4 veya 5 olarak değiştirilmelidir?

değiştirilmemeli, para birimine bağlı olarak alınmalıdır. Pazar Bilgisi
 
isaev-av :

Teşekkür ederim. Ve DC'ye bağlı olarak Rakamlar 4 veya 5 olarak değiştirilmelidir?

Sadece Digits bırakın, her şey orada kendi kendine değiştirilecektir.
 
Yoldaşlar, çok basit bir sistem düşünüyorum... MACD bölgede 5 dakikadan fazla değilse, açıyorum. Nedense işlem açılmıyor .... söyle plz ...
 //+------------------------------------------------------------------+ 
   //| MACD ^^^.mq4 | 
   //| Copyright © 2011, MetaQuotes Software Corp. | 
   //| http://www.metaquotes.net | 
   //+------------------------------------------------------------------+ 
   #property copyright "Copyright © 2011, MetaQuotes Software Corp." 
   #property link "http://www.metaquotes.net" 

   extern int TP = 100 ; 
   extern int TS = 100 ; 
   extern int TF = 1 ; 
   extern double lots = 0.1 ; 
   int fast_ema = 5 ; 
   int slow_ema = 34 ; 
   int signal_period = 5 ; 
   int slip = 3 ; 
   int Magic = 1 ; 

 int total; 
 int ticket; //объявил тотал и тикет 

 //+------------------------------------------------------------------+ 
   //| expert initialization function | 
   //+------------------------------------------------------------------+ 
   int init() 
    { 
   //---- 

 //---- 
     return ( 0 ); 
    } 
   //+------------------------------------------------------------------+ 
   //| expert deinitialization function | 
   //+------------------------------------------------------------------+ 
   int deinit() 
    { 
   //---- 

 //---- 
     return ( 0 ); 
    } 
   //+------------------------------------------------------------------+ 
   //| expert start function | 
   //+------------------------------------------------------------------+ 
   int start() 
    { 
   //---- 

 bool signal = signal_MACD(); 
  AnalyzeSignal(signal); 

 //---- 
     return ( 0 ); 
    } 
   //+------------------------------------------------------------------+ 

 bool signal_MACD() 
  { 
     bool signal_MACD = false; 
     double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); 
     for ( int i= 1 ;i<= 5 ;i++) 
    { 
       if ( NormalizeDouble ( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN,i)*tmp, 4 )< 0.0 ) 
       { 
          signal_MACD = true; 
           break ; 
       } 
    } 
  } 

 void AnalyzeSignal( bool signal) 
  { 
     total = OrdersTotal ();
     double MACD = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); 
     if (total < 1 )
     {
     if (signal == true)
     {
         if (MACD > 0 )
         {
            ticket = OrderSend ( Symbol (),OP_BUY,lots,Ask,slip,Bid-TS* Point ,Bid+TP* Point , "Покупаем" ,Magic, 0 , Green ); 
             if (ticket> 0 ) 
            { 
             OrderSelect (ticket,SELECT_BY_TICKET); 
             Print ( "открылись на покупку по цене:" , OrderOpenPrice ()); 
            } 
             else 
            { 
             Print ( "открыться не удалось по причине:" , GetLastError ()); 
             return ( 0 ); 
            } 
         }
         if (MACD < 0 )
         {
             ticket = OrderSend ( Symbol (),OP_SELL,lots,Bid,slip,Ask+TS* Point ,Ask-TP* Point , "Продаем" ,Magic, 0 , Red ); 
             if (ticket> 0 ) 
             { 
             OrderSelect (ticket,SELECT_BY_TICKET); 
             Print ( "открылись на продажу по цене:" , OrderOpenPrice ()); 
             } 
             else 
             { 
             Print ( "открыться не удалось по причине:" , GetLastError ()); 
             return ( 0 ); 
             } 
         }
         else
             return ( 0 );
     }
     }
  }
  
  
  
  
  
 
Yardım! Herkesin bir çok hesaplama eklemeye çalıştığım bir MACD Örneği vardır. Değişikliklerimden sonra derlenmiyor :( Yardım!
 double Lots()
  {
   double Lots;
   Lots= AccountFreeMargin ()/ 10000 * 5 ;
   Lots= MathMin ( 15 , MathMax ( 0.1 ,Lots));
   if (Lots< 0.1 ) 
     Lots= NormalizeDouble (Lots, 2 );
   else
     {
     if (Lots< 1 ) Lots= NormalizeDouble (Lots, 1 );
     else        Lots= NormalizeDouble (Lots, 0 );
     }
     return (Lots);
  }
 

Hey

danışman hata veriyor, if ((Bid-OrderOpenPrice(),Digits) >= -60) code 130, her yeni onay işareti verir ve sunucuyu çok yükler..

if ((pBid- NormalizeDouble (OrderOpenPrice(),Digits)) == -60) olarak değiştirirsem - görünmez..

Tam olarak >= ihtiyacım var ve bunu nasıl yapacağım?

Lütfen çözmeme yardım et

Şimdiden teşekkürler!!

 

Ticarete kaç döviz çiftinin dahil olduğunu programlı olarak nasıl hesaplayabilirim?

Açık siparişlerin numaralandırılması denendi. 3 döviz çifti için bir danışman başlattı. Her birinin farklı bir sonucu vardır:

bir - 3 (doğru), ikinci - 2, üçüncü - 1.

2 döviz çiftinde denendi:

bir - 2 (doğru), ikinci - 1. Düşüş modeli olmasaydı, bir hata yaptığımı düşünürdüm

 int val() 
{
   int kp= 1 ;
   string x1= "0" ,x2= "0" , x3= "0" , x4= "0" , x5= "0" , x6= "0" , x7= "0" , x8= "0" , x9= "0" , x10= "0" , x11= "0" , x12= "0" , x13= "0" , x14= "0" ,       x15= "0" ,
          x16= "0" , x17= "0" , x18= "0" ,  x19= "0" ,  x20= "0" ,  x21= "0" ,  x22= "0" , x23= "0" ,  x24= "0" ;
   for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
   {
     if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES)) break ;
     if ( OrderSymbol ()== Symbol ())   break ;
       if (x9!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () &&  x5!= OrderSymbol ()  &&  x6!= OrderSymbol ()   &&  x7!= OrderSymbol ()  &&  x8!= OrderSymbol ()   &&  x9!= OrderSymbol () && x10== "0" ) {x10= OrderSymbol (); kp= 11 ;}      
       if (x8!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () &&  x5!= OrderSymbol ()  &&  x6!= OrderSymbol ()   &&  x7!= OrderSymbol ()  &&  x8!= OrderSymbol () && x9== "0" ) {x9= OrderSymbol (); kp= 10 ;}      
       if (x7!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () &&  x5!= OrderSymbol ()  &&  x6!= OrderSymbol ()   &&  x7!= OrderSymbol () && x8== "0" ) {x8= OrderSymbol (); kp= 9 ;}      
       if (x6!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () &&  x5!= OrderSymbol ()  &&  x6!= OrderSymbol () && x7== "0" ) {x7= OrderSymbol (); kp= 8 ;}      
       if (x5!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () &&  x5!= OrderSymbol () && x6== "0" ) {x6= OrderSymbol (); kp= 7 ;}      
       if (x4!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol ()  &&  x4!= OrderSymbol () && x5== "0" ) {x5= OrderSymbol (); kp= 6 ;}      
       if (x3!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () &&  x3!= OrderSymbol () && x4== "0" ) {x4= OrderSymbol (); kp= 5 ;}      
       if (x2!= "0" &&  x1!= OrderSymbol () && x2!= OrderSymbol () && x3== "0" ) {x3= OrderSymbol (); kp= 4 ;}      
       if (x1!= "0" &&  x1!= OrderSymbol () && x2== "0" ) {x2= OrderSymbol (); kp= 3 ;}      
       if (x1== "0" ) {x1= OrderSymbol (); kp= 2 ;}
   }
   return (kp);
}
 
skyjet :
Değişikliklerimden sonra derlenmiyor :(

Peki, ne yazıyor?
 
Figar0 :

Peki, ne yazıyor?
12 hata, 12 uyarı. Parti hesaplamasını yanlış mı giriyorum?
 
forexnew :

Ticarete kaç döviz çiftinin dahil olduğunu programlı olarak nasıl hesaplayabilirim?

Açık siparişlerin numaralandırılması denendi. 3 döviz çifti için bir danışman başlattı. Her birinin farklı bir sonucu vardır:

bir - 3 (doğru), ikinci - 2, üçüncü - 1.

2 döviz çiftinde denendi:

bir - 2 (doğru), ikinci - 1. Düşüş modeli olmasaydı, bir hata yaptığımı düşünürdüm


Veya bir danışmanın yardımıyla aktif araçların bir listesini yapabilirsiniz. Yaklaşım biraz karmaşık. çözmek daha kolay olabilir mi
 
skyjet :
12 hata, 12 uyarı. Parti hesaplamasını yanlış mı giriyorum?

Fonksiyonun kendisinde herhangi bir hata yok, muhtemelen kullanmaya çalışırken hatalar oluyor ama bize bunu göstermiyorsunuz. Doğrudan dosya tarafından derlenmeyenleri yayın ve tahmin etmeye gerek kalmayacak.