MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1789

 
MakarFX # :

Ekran görüntüsüne bakılırsa, bu koşullar karşılanmamaktadır.

 //+------------------------------------------------------------------+
//| Открытие ордера                                                  |
//+------------------------------------------------------------------+
void SendFirsOrder( int so=- 1 )
  {
   double tp= 0 ;
   if (so== 0 )
     {
       if ( OrderSend ( Symbol (),OP_BUY, Lots(),Ask,slip, 0 , 0 , "The first purchase order" , Magic, 0 , clrBlue ))
        {
         Print ( "Open Buy: " , _Symbol );
        }
       else
        {
         Print ( "Error Open Buy: " , _Symbol , " / " , GetLastError ());
        }
     }
   if (so== 1 )
     {
       if ( OrderSend ( Symbol (),OP_SELL, Lots(),Bid,slip, 0 , 0 , "The first sell order" , Magic, 0 , clrRed ))
        {
         Print ( "Open Sell: " , _Symbol );
        }
       else
        {
         Print ( "Error Open Sell: " , _Symbol , " / " , GetLastError ());
        }
     }
  }
 
EVGENII SHELIPOV # :

OrderStopLoss() öğeniz 0 ise ve şu durumdaysa, takip nasıl çalışabilir?

        if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic && OrderProfit() > 0 && OrderStopLoss() != 0 )
 
Nerd Trader # :

Sorun kimsenin görmemesi değil.
Yorumdan önce ve sonra boş bir satır varsa:

Ide ekler



Ancak, tüm bunlar özellikle önemli değil, sadece başka bir fikir kullanmanız gerekiyor.

Yorum satırı ile işlev bildirimi arasında neden boş bir satır var?

 

Tünaydın!

Geçenlerde MT5'e geçtim ve birçok makale okudum ama soruma cevap bulamadım.

MT5'te optimizasyon türünü etkinleştirebilirsiniz - "yavaş (parametrelerin tam listesi)". Ve optimizasyon için bir araç seçin.

MT5'in test cihazında birkaç enstrüman ayarlayabileceğiniz ve her şeyin onlar için optimize edileceği bir işlevi var mı? Yani başta ilkini, ardından ikincisini vs. geçtim ve sonunda her enstrüman için ayrı bir rapor yayınladım mı? Ya da belki bu konuda standart olmayan bazı çözümler var, belki bunun için başka programlar var?

Önemli olan alet testi bittiğinde bilgisayar başında izlemek değil. Ve hemen gerekli her şeyi sorun ve bütün günü saymasına izin verin.

 
Kot optimizasyon türünü etkinleştirebilirsiniz - "yavaş (parametrelerin tam listesi)". Ve optimizasyon için bir araç seçin.

MT5'in test cihazında birkaç enstrüman ayarlayabileceğiniz ve her şeyin onlar için optimize edileceği bir işlevi var mı? Yani başta ilkini, ardından ikincisini vs. geçtim ve sonunda her enstrüman için ayrı bir rapor yayınladım mı? Ya da belki bu konuda standart olmayan bazı çözümler var, belki bunun için başka programlar var?

Önemli olan alet testi bittiğinde bilgisayar başında izlememektir. Ve hemen gerekli her şeyi sorun ve bütün günü saymasına izin verin.

Her çift için bir tane olmak üzere birden fazla terminal başlatın
 

Düğme bırakıldığında , herhangi bir nedenle koşulu göz ardı ederek, nesne silinse bile ObjectDelete() her zaman yürütülür.

 void OnChartEvent ( const int id, const long &lparam, const double &dparam, const string &sparam)
{
   ...
   if ( ObjectGetInteger ( 0 , "Button Stop Order" , OBJPROP_STATE )){
      if ( ChartXYToTimePrice (window,x,y,window,dt,price)){
         ...
  } else if ( ObjectFind ( "order setup" ) || ObjectFind ( "Stop Loss" ))
       Print (line_name, " delete " , ObjectDelete (line_name), " error " , GetLastError ());

2021.12 . 05 21 : 43 : 14.040 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.040 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12 . 05 21 : 43 : 14.020 USDCHF,M1: Stop Loss delete false error 0
 
Alexey Viktorov # :

Yorum satırı ile işlev bildirimi arasında neden boş bir satır var?

Yani, bir ide sizin izniniz olmadan kodunuza bir tür saçmalık eklediğinde, bunun normal olduğunu mu söylüyorsunuz?
 
Nerd Trader Düğme bırakıldığında , herhangi bir nedenle koşulu göz ardı ederek, nesne silinse bile ObjectDelete() her zaman yürütülür.
 void OnChartEvent ( const int id, const long &lparam, const double &dparam, const string &sparam)
{
   ...
   if ( ObjectGetInteger ( 0 ,"Button Stop Order", OBJPROP_STATE )){
       if ( ChartXYToTimePrice (window,x,y,window,dt,price)){
         ...
  } else if ( ObjectFind ("order setup") == 0 || ObjectFind ("Stop Loss") == 0 ){
       Print (line_name," delete ", ObjectDelete (line_name)," error ", GetLastError ());
 
MakarFX # :
ahhh zaten sıçtım
 
Nerd Trader # :
ahhh zaten sıçtım
sana yazdım zaten