Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 35

 
alxm :
Belgeler, zorlamanıza gerek olmadığını söylüyor.
O halde tamam.
 
alxm :
Belgeler, zorlamanıza gerek olmadığını söylüyor.

Evet, " Dizeler ve dinamik diziler içeren nesneler için, her üye için ZeroMemory() çağrılır " ifadesi biraz belirsiz. Ya ZeroMemory işlevinin kendisi bu sıfırlamayı gerçekleştirir ya da programcının dinamik bir dizi içeren her üye için bir çağrı yapması gerekir.

..Rağmen. Uygulanamazlık durumları açıkça belirtilmiştir.

 
Yedelkin :
Evet, " Dizeler ve dinamik diziler içeren nesneler için, her üye için ZeroMemory() çağrılır " ifadesi belirsizdir. ZeroMemory işlevinin kendisi bu sıfırlamayı gerçekleştirir veya programcının kendisinin her dinamik diziyi sıfırlaması gerekir.
Ve " Karmaşık nesnelerin dizileri için, her öğe için ZeroMemory() çağrılır " ifadesi de her bir öğeyi ayrı ayrı sıfırlama çağrısı olarak mı anlaşılmalıdır?
 
alxm :
Ve " Karmaşık nesnelerin dizileri için, her öğe için ZeroMemory() çağrılır " ifadesi de her bir öğeyi ayrı ayrı sıfırlama çağrısı olarak mı anlaşılmalıdır?
Eh, aşırı durumlarda, bu kolayca kontrol edilebilir. :)
 
alxm :
Ve " Karmaşık nesnelerin dizileri için, her öğe için ZeroMemory() çağrılır" ifadesi de her bir öğeyi ayrı ayrı sıfırlama çağrısı olarak mı anlaşılmalıdır?
Evet, Rusça "üretildi" fiilinin anlamı ile Rusça "olur" fiilinin anlamını karşılaştırdık :) Cevap: hayır, olmamalı.
 
Yedelkin :
Evet, Rusça "üretildi" fiilinin anlamı ile Rusça "olur" fiilinin anlamını karşılaştırdık :) Cevap: hayır, olmamalı.
Kabul ediyorum. Belgeler öyle bir şekilde yazılmalıdır ki, çifte yorum düşüncesi dahi yoktur.
 

Güzel gün! Diyelim ki pozisyonun bir kısmını ters pozisyon açarak kapattım. Zararı ve karı ne durdurmalıyım ? Muhtemelen sipariş ettiğim şey olacak, eskisi gibi değil mi? Hayır, olamaz, pozisyonu azaltmak için ters işlem yapıyorum ve onun kârı ve zararı genellikle pozisyona göre tersine çevrilir. Genel olarak, kendini karıştırdı. Lütfen açıkla.

Ve yine de, yapı yemin ediyor

 MqlTradeRequest request={ 0 };
       MqlTradeResult result={ 0 };

      request.action= TRADE_ACTION_DEAL ;
      request.magic =MagicNumber;
      request.symbol=symb;
      request.price=BID
      request.deviation= 30 * Point (symb);
      request.volume=Lot;
      request.sl=s;
      request.tp=t;
      request.type=type;
       OrderSend (request,result);  

'sapma' - bazı operatörler bekleniyor htghtgfhthf.mq5 103 15 operatör bekleniyor.... Evet, yaptı.

'Nokta' - yanlış parametre sayısı htghtgfhthf.mq5 103 30

Her şey doğru gibi görünüyor?? Kısacası, lütfen bana ona ne yazacağımı söyleyin de küfretmesin?

 
Dimka-novitsek : Yine de yapı yemin ediyor

Bunun üzerine saldırıyor:

 Point (symb);

Bu fonksiyon argüman almaz.

Ayrıca, sapma alanının açıklamasına bakın. Buna çift değer atamaya gerek yoktur.

 

Şimdi durum bu. Zıt bir pozisyon için çok şey ayarlamak istiyorum, bunun için bu toplam pozisyona katılan anlaşmanın çoğunu buluyorum ve zıt bir pozisyon koyuyorum, yani onu yerleştirmeye çalışmak istiyorum. Bu partiyi HistoryDealGetDouble( TicetTojSdelki, DEAL_VOLUME ) işleviyle tanıyorum.

Genel olarak, işte işlev ve çağrısı

     if ( HistoryDealGetInteger ( TicetTojSdelki, DEAL_TYPE )== DEAL_TYPE_BUY ){
     OrderSendSELL( Symbol (), "OP_SELL" ,   HistoryDealGetDouble ( TicetTojSdelki, DEAL_VOLUME ), 10 , 10 , 300 ,   300 , " com " , 600 , 600 , 0 )
  ;}
  
  
                                                          }
 
   
   }
   
   
   
   
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+     
 ulong OrderSendSELL( string symb, string OP_POZA, double Lot, double BIDd, int slip, double   s,   double   t, string com, int MagicNumber, datetime expiration, color c){
  
         ENUM_ORDER_TYPE    type;
         if (OP_POZA== "OP_SELL" ){type= ORDER_TYPE_SELL ;}
         double BID =BID( symb);
           if (OP_POZA== "OP_BUY" ){type= ORDER_TYPE_BUY ;}
            BID =ASK( symb);
          

       MqlTradeRequest request={ 0 };
       MqlTradeResult result={ 0 };

      request.action= TRADE_ACTION_DEAL ;
      request.magic =MagicNumber;
      request.symbol=symb;
      request.price=BID
     
      request.volume=Lot;
      request.sl=s;
      request.tp=t;
      request.type=type;
       OrderSend (request,result);    
      
         return (result.   deal );       }
 
 //+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double BID( string symbol) 
  {
   MqlTick last_tick;
   SymbolInfoTick (symbol,last_tick);
   double BID=last_tick.bid;
   return (BID);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double ASK( string symbol) 
  {

   MqlTick last_tick;
   SymbolInfoTick (symbol,last_tick);
   double ASK=last_tick.ask;
   return (ASK);  
  }

'volume' - bazı operatörler htghtgfhthf.mq5 104 15 bekliyordu

'Lot' - ifadenin etkisi yoktur htghtgfhthf.mq5 104 22

Aslında yapıya yemin ediyor. Çift değişken.. Lot eşittir lot.. Anlamıyorum!

 
Teşekkürler!!