"MQL4'ten MQL5'e geçiş" makalesi için tartışma - sayfa 5

 

OrderMagicNumber() nasıl olur? Teşekkürler

 
song_song:

OrderMagicNumber() nasıl olur? Teşekkürler

Bkz ORDER_MAGIC
 

iBarShift() kullanımı kolaydır ancak iBarShiftMQL4() oldukça karmaşıktır. Ve böyle devam eder...

 

Neden hem "TickValue() hem de SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE)" her zaman "0" döndürüyor?

 

Merhaba, Rosh:

"MQL4 programlarınızı yeni MetaTrader 5 istemci terminalinde çalıştırmanıza izin verecek MQL4 emülatörünü geliştirme planlarım var" dediğiniz için çok minnettarım.

Ben iyi bir program tasarımcısı değilim ama bir tüccarım. MQL5 benim için çok zor.

MQL4 emülatörünüzü bekliyorum. Bir Milyon TKS!

Sizin için en iyi dileklerimle.

[Silindi]  

Bir hata buldum

Yalnızca bir grafik penceresi açıksa. O zaman bu pencerenin kimliği = -1

int WindowHandleMQL4(string symbol,
                     int tf)
  {
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   while(i<limit)
     {
      currChart=ChartNext(prevChart);
      if(currChart<0) break; 
      if(ChartSymbol(currChart)==symbol
         && ChartPeriod(currChart)==timeframe)
         return((int)currChart);
      prevChart=currChart;
      i++;
     }
   return(0);
  }

-

int WindowHandleMQL4(string symbol,
                     int tf)
  {
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   while(i<limit)
     {
      currChart=ChartNext(prevChart);
        
      if( currChart<0 && currChart != -1) break;
        
      if(ChartSymbol(currChart)==symbol
        && ChartPeriod(currChart)==timeframe)
         
         return((int)currChart);
      prevChart=currChart;
      i++;
     }
   return(0);
  }
 

Ayrıca öncelik konusunda da dikkatli olun. Bir mantıkta hata ayıklamak için yarım gün harcadım ve && ile ||'nin önceliğinin MQL4 (|| önce) ile MQL5 (&& önce) arasında farklı olduğunu gördüm. Bu nedenle, MQL4'ten MQL5' e geçerken, tüm karşılaştırma ifadelerini aradığınızdan emin olun.

Migrating from MQL4 to MQL5
  • 2010.05.17
  • Sergey Pavlov
  • www.mql5.com
This article is a quick guide to MQL4 language functions, it will help you to migrate your programs from MQL4 to MQL5. For each MQL4 function (except trading functions) the description and MQL5 implementation are presented, it allows you to reduce the conversion time significantly. For convenience, the MQL4 functions are divided into groups, similar to MQL4 Reference.
 
williamwong:

Ayrıca öncelik konusunda da dikkatli olun. Bir mantıkta hata ayıklamak için yarım gün harcadım ve && ile ||'nin önceliğinin MQL4 (|| önce) ile MQL5 (&& önce) arasında farklı olduğunu gördüm. Bu nedenle, MQL4'ten MQL5' e geçerken, tüm karşılaştırma ifadelerini aradığınızdan emin olun.

Haklısınız. Öncelik Kuralları bölümüne bakın:

Tablodaki her işlem grubu aynı önceliğe sahiptir. İşlemlerin önceliği ne kadar yüksekse, grubun tablodaki konumu da o kadar yüksek olur. Öncelik kuralları, işlemlerin ve işlenenlerin gruplandırılmasını belirler.

Dikkat: MQL5 dilindeki işlemlerin önceliği C++'da benimsenen önceliğe karşılık gelir ve MQL4 dilinde verilen öncelikten farklıdır.

[Silindi]  
FinGeR:

Bir hata buldum

Yalnızca bir grafik penceresi açıksa. O zaman bu pencerenin kimliği = -1

-

Benim hatam, bu doğru. :)

int WindowHandleMQL4(string symbol,
                     int tf)
  {
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   while(i<limit)
     {
      
         currChart=ChartNext(prevChart);
      if(i==0)currChart=prevChart; // Wenn nur ein Chartfenster offen ist
  
      if( currChart<0) break;
        
      if(ChartSymbol(currChart)==symbol
        && ChartPeriod(currChart)==timeframe)
        
         return((int)currChart);
      prevChart=currChart;
      i++;
     }
   return(0);
  }
 

Merhaba


Tüm bu işlevlerin doğrulanıp doğrulanmadığını bilmekten memnuniyet duyacağım, ben başaramadım

"CopyBufferMQL4" fonksiyonunu çalışır hale getirmek için.


Teşekkür ederim.


Noel