Robotla kim yardımcı olabilir, neden çalışmıyor? - sayfa 5

 
Sergey Gritsay :
büyük olasılıkla derleyici küfür eder, ancak bir hata değildir, ancak bir uyarı verilmelidir.
Az önce yukarıdaki kodu derledim ve ekran görüntüsünü ekledim, garip bir şekilde, #property strict altında hiçbir hata veya uyarı yok , ancak elbette zor bir yol olmadığı sürece değişkenler yine de eşleşmemelidir. İşin mantığına girmedim.
 

Sonra bu yüzden

 //+------------------------------------------------------------------+
//|                                                          123.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
#property strict

input double   lots       = 0.01 ;   // Лот
input int      stop_loss      = 10 ; // Указываем в валюте депозита
input int      take_profit    = 20 ; // Указываем в валюте депозита
extern int     Slippage = 3 ;         // Допустимое проскальзываение цены в пунктах
input int      Magic = 16384 ;       // Уникальный номер эксперта

int             last_bar       = 0 ;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ()
  {
//---
// ===== Пересчет под пятизнак =========
   if ( Digits ()== 3 || Digits ()== 5 )
     {
      Slippage           *= 10 ;
     }   
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ()
  {
   if (last_bar == Bars ) { return ;}
   last_bar = Bars ;
   if ( OrdersTotal () == 0 ){
           int ticketbuy = OrderSend ( Symbol (), OP_BUY, lots ,Ask, Slippage, 0 , 0 ,   "" , Magic, 0 , clrBlue );
             if (ticketbuy< 0 )
               Print ( Symbol (), " OpenPosition. OrderSend Buy fail #" , GetLastError ());
             else
               Print ( Symbol (), " OpenPosition. OrderSend Buy successfully" );
           int ticketsell = OrderSend ( Symbol (), OP_SELL, lots ,Bid, Slippage, 0 , 0 ,   "" , Magic, 0 , clrRed );
             if (ticketsell< 0 )
               Print ( Symbol (), " OpenPosition. OrderSend Sell fail #" , GetLastError ());
             else
               Print ( Symbol (), " OpenPosition. OrderSend Sell successfully" );      
}
 double profit= 0 ;
   for ( int i= 0 ;i< OrdersTotal ();i++)
     {
       if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()== _Symbol && OrderMagicNumber()== Magic)
        {
         profit+=OrderProfit()+OrderSwap()+OrderCommission();
        }
     }
 int requot= 0 ;
 if (profit>=take_profit || (-profit)>=stop_loss)
   for ( int ii= 0 ;ii< OrdersTotal ();ii++)
     {
       if ( OrderSelect (ii,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()== _Symbol && OrderMagicNumber()== Magic)
        {
         if (OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage, clrRed ))
               requot= 0 ;
             else
              {
               requot++;
              }
         if (requot> 10 )
              {
               ii++;
               requot= 0 ;
              }
            ii--;
        }
     }
 
  }
//+------------------------------------------------------------------+
 
Vladimir Zubov :

Sonra bu yüzden

Teşekkür ederim! yarın kontrol etmeye çalışırım....
 
Vladimir Zubov :

Sonra bu yüzden

Test cihazı üzerinden çalışır, ancak gerçek bir hesapta tek bir işlem açmaz ....
 
GIM :
Test cihazı üzerinden çalışır, ancak gerçek bir hesapta tek bir işlem açmaz ....
uzmanlar sekmesinde bazı girişler var, ancak genel olarak, gerçek yaşam için danışman, bence, çarpık yazılmış.
 
Sergey Gritsay :
uzmanlar sekmesinde bazı girişler var, ancak genel olarak, gerçek yaşam için danışman, bence, çarpık yazılmış.
Çalışması için nerede düzeltmeliyim?
 
GIM :
Çalışması için nerede düzeltmeliyim?
Her yerde bu Expert Advisor'ın mantığını yazılanlardan hala anlamış değilim, hemen farklı yönlere açıyorsunuz ama bu iki emrin karı hep aynı olacak, sadece swap ücreti alınca değişecek.
 
Sergey Gritsay :
Her yerde bu Expert Advisor'ın mantığını yazılanlardan hala anlamış değilim, hemen farklı yönlere açıyorsunuz ama bu iki emrin karı hep aynı olacak, sadece swap ücreti alınca değişecek.
Danışmanı grafiğe kurarken, siparişleri yalnızca bir yönde, trend boyunca ve birkaç çift için, bir satın almanın olduğu ve bir satışın olduğu bir yerde açacak şekilde ayarladım, tüm işlemleri kapatmak gerekiyor toplam kâr üzerinde
 
GIM :
Danışmanı grafiğe kurarken, emirleri yalnızca bir yönde, trend boyunca ve birkaç çift için, bir yerde alım ve bir yerde satış açacak şekilde ayarladım, tüm işlemleri toplam kârla kapatmak gerekiyor
Çok açık, bugün benim için çok geç, yarın senin için bir seçenek çizeceğim.
 
Sergey Gritsay :
Çok açık, bugün benim için çok geç, yarın senin için bir seçenek çizeceğim.
Sayesinde!