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

 

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Hatalar, hatalar, sorular

comp , 2016.03.23 09:49

ChartID ile grafik periyodu nasıl bulunur? ChartGetInteger bunu tek adımda yapmanıza izin vermez.

Şimdiye kadar, şablonu kaydedip içinde bir noktayı ayrıştırarak bir koltuk değneği çözümü buldum.

Normal olarak nasıl öğrenilir?

ChartPeriod'u kullanın

GrafikDönem

Belirtilen grafiğin dönem değerini döndürür.

ENUM_TIMEFRAMES GrafikPeriyodu (
    uzun    chart_id=0        // grafik tanımlayıcı
);

Seçenekler

chart_id=0

[içinde] Grafik Kimliği. 0, geçerli grafik anlamına gelir.

Geri dönüş değeri

Tür değeri   ENUM_TIMEFRAMES . Grafik yoksa, 0 döndürülür.

 
Karputov Vladimir :

ChartPeriod'u kullanın

Teşekkür ederim.
 

Tünaydın!

Ticaret panelinin durumunu tek tıklamayla (genişletilmiş veya daraltılmış) nasıl belirleyebilirim?

 
Yeni başlayanlar için bu başlıkta istediğiniz konuyla ilgili soruları nasıl arayacağınızı söyleyin. Şube, büyük bir soru ve cevap katmanına dönüştü ve artık manuel olarak arama yapmak mümkün değil. Zaten bir soru sormakta tereddüt ediyorsunuz, belki burada uzun süredir cevaplanmıştır, ancak aramada site genelinde bir arama var ve bu özel bölümde "yeni başlayanlar için" değil mi?
 
Alexander :
Yeni başlayanlar için bu başlıkta istediğiniz konuyla ilgili soruları nasıl arayacağınızı söyleyin. Şube, büyük bir soru ve cevap katmanına dönüştü ve artık manuel olarak arama yapmak mümkün değil. Zaten bir soru sormakta tereddüt ediyorsunuz, belki burada uzun süredir cevaplanmıştır, ancak aramada site genelinde bir arama var ve bu özel bölümde "yeni başlayanlar için" değil mi?

Google aramaya girin: arama sitesi:https://www.mql5.com/en/forum/6343

"Ara", aradığınız şeydir.

 
ML4 diliyle ilgili soru - Optimizasyon sırasında " nesne oluşturma " işlevi neden çalışmıyor, çünkü birkaç değişkenin verilerini depolamak için bir nesne kullanıldığında, openfile->fileread->fileright'ı kullanmaktan 20 kat daha hızlı olduğu ortaya çıkıyor ->çok yavaş optimizasyon ve test olan fileclose işlevi?
 

Güzel gün!

Son 250 işlem seansı için sunucu saatiyle 15:00 ile 17:00 arasında iki saat içinde çubukların nasıl işleneceğini çözemiyorum.

Bana bir kavram ver lütfen.

mql5

 
Stairway_2_7 :

Güzel gün!

Son 250 işlem seansı için sunucu saatiyle 15:00 ile 17:00 arasında iki saat içinde çubukların nasıl işleneceğini çözemiyorum.

Bana bir konsept ver lütfen.

mql5

zamana dayalı işlevleri kullan

 int    CopyOpen ( 
   string            symbol_name,     // имя символа 
   ENUM_TIMEFRAMES   timeframe,       // период 
   datetime          start_time,       // с какой даты 
   datetime          stop_time,       // по какую дату 
   double            open_array[]     // массив для копирования цен открытия 
   );
 

Sergey,

Cevap için teşekkürler!

Görevim için daha uygun

OnStart() geçersiz

{

tarihsaat başlangıç =StringToTime("2016.03.25 15:00");

tarihsaat stop =StringToTime("2016.03.25 15:55");

Mql Oranları[];

ArraySetAsSeries(oranlar,doğru);

int kopyalanmış=CopyRates(_Symbol, PERIOD_M5 ,start,stop,rates);

if(kopyalandı>0)

{

Print("Kopyalanan çubuklar: "+kopyalandı);

string format="open = %G, yüksek = %G, düşük = %G, kapat = %G, hacim = %d";

zamana yaymak;

int size=fmin(kopyalandı,10);

for(int i=0;i<boyut;i++)

{

out=i+":"+TimeToString(rates[i].time);

out=out+" "+StringFormat(biçim,

oranlar[i].açık,

oranlar[i].yüksek,

oranlar[i].düşük,

oranlar[i].kapat,

oranlar[i].tick_volume);

çıktı);

}

}

else Print("Sembolde geçmiş veriler alınamadı",Symbol());

}

Cumartesi ve Pazar günlerini şimdi nasıl kaldırırsınız?

Daha doğrusu son, diyelim ki 250 işlem günü için benzer bir işlem yapmak?

 
Stairway_2_7 :

Sergey,

Cevap için teşekkürler!

Görevim için daha uygun

OnStart() geçersiz

{

tarihsaat başlangıç =StringToTime("2016.03.25 15:00");

tarihsaat stop =StringToTime("2016.03.25 15:55");

Mql Oranları[];

ArraySetAsSeries(oranlar,doğru);

int kopyalanmış=CopyRates(_Symbol, PERIOD_M5 ,start,stop,rates);

if(kopyalandı>0)

{

Print("Kopyalanan çubuklar: "+kopyalandı);

string format="open = %G, yüksek = %G, düşük = %G, kapat = %G, hacim = %d";

zamana yaymak;

int size=fmin(kopyalandı,10);

for(int i=0;i<boyut;i++)

{

out=i+":"+TimeToString(rates[i].time);

out=out+" "+StringFormat(biçim,

oranlar[i].açık,

oranlar[i].yüksek,

oranlar[i].düşük,

oranlar[i].kapat,

oranlar[i].tick_volume);

çıktı);

}

}

else Print("Sembolde geçmiş veriler alınamadı",Symbol());

}

Cumartesi ve Pazar günlerini şimdi nasıl kaldırırsınız?

Daha doğrusu son, diyelim ki 250 işlem günü için benzer bir işlem yapmak?

Bu yapıyı deneyin

 struct MqlDateTime 
  { 
   int year;           // год 
   int mon;             // месяц 
   int day;             // день 
   int hour;           // час 
   int min;             // минуты 
   int sec;             // секунды 
   int day_of_week;     // день недели (0-воскресенье, 1-понедельник, ... ,6-суббота) 
   int day_of_year;     // порядковый номер в году (1 января имеет номер 0) 
  };
Neden: