Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 936

 
AlexeyVik :
Kontrol etmedim, ama kendin kontrol etmeni engelleyen nedir? Şablonu tüm göstergelerle birlikte danışmanın adı altında kaydetmeniz yeterlidir ve ardından danışman test cihazında başlatıldığında, tüm göstergeler yüklenir ve doğru şekilde çalışabilir. Ancak "Ticaret" ve "Hesap Geçmişi" sekmelerinden değer almaları mümkündür.
Sınanmış. O görene kadar. Daha fazlasını deneyeceğim.
 
kosmos0975 :
Sınanmış. O görene kadar. Daha fazlasını deneyeceğim.
Göstergelerle böyle bir sapkınlık gerekli mi? Her şeyi bir danışmana havale etmek daha kolay değil mi?
 
AlexeyVik :
Göstergelerle böyle bir sapkınlık gerekli mi? Her şeyi bir danışmana havale etmek daha kolay değil mi?

Zamanla danışman, doğru çalışma için ek koşullar edinir ve esnek olmaz.

(Sapkınlık olabilir. Biz Ruslar kolay yol aramıyoruz :)

 
Tünaydın!
Expert Advisor'da "Piyasa kapalı" nasıl tanımlanır?
 
abeiks :
Tünaydın!
Expert Advisor'da "Piyasa kapalı" nasıl tanımlanır?

Ona neden ihtiyacın var? Piyasa kapalıysa keneler olmayacak, bu nedenle EA çalışmayacaktır.

Ama hala gerçekten ihtiyacın varsa, dene

MarketInfo( Symbol (), MODE_TRADEALLOWED);

Piyasa açıksa 1 döndürür. Piyasa kapalıysa 0 döndürmesi gerekir ama kene yoksa nasıl oluyor :)

 

Böyle bir şey - sonuncusu için minimum ve maksimum fiyat değerlerini belirlemeniz, örneğin 100 bar ve ardından 1 2 3 ters desen çizmek için fiyat düştüğünde / yükseldiğinde yükselişi / düşüşü düzeltmeniz gerekir. ArrayMaximum ve iHighest işlevleri arasındaki farkı anlayamıyorum. Doğru anlarsam, hesaplamalarının sonucu yalnızca belirtilen dizi aralığındaki maksimum çubuğun indeksi mi olacak? Hesaplama, ders kitabındaki 26. problemde olduğu gibi dizilerle çalışırken for ifadesinin kullanılmasını gerektiriyor mu? Bu kodu şöyle bir şeyle değiştirdim

 //------------------------------------------------ --------------------
// ekstremumprice.mq4 
// MQL4 eğitiminde örnek olarak kullanılmak üzere tasarlanmıştır.
//------------------------------------------------ --------------------
harici int Quant_Bars=100; // Çubuk sayısı
//------------------------------------------------ --------------------
int start() // Özel. başlatma işlevi
  {
   int i; // Çubuk numarası 
   double Minimum=Teklif, // Minimum fiyat
          Maks=Teklif; // Maksimum fiyat
         
   for(i=0;i<=Quant_Bars-1;i++) // Sıfırdan (!)'ye..
                                               // ..Quant_Bars-1 (!)
      if (Düşük[i]< Minimum) // < biliniyorsa
         Minimum=Düşük[i]; // o zaman min olacak
      if (Yüksek[i]> Maksimum) // Eğer > biliniyorsa
         Maks=Yüksek[i]; // o zaman maksimum olacak
    
   
   çift
   Seviye_1, // Sinyal seviyesi 1
   Seviye_2, // Sinyal seviyesi 2
   fiyat; // Mevcut fiyat
   Seviye_1=Minimum; // Minimum seviyeyi ayarla 
   Level_2=Maksimum; // Maksimum seviyeyi ayarla 
   fiyat=teklif; // fiyat talep et
   
   if (Fiyat<Seviye_1) 
   { // Karmaşık koşulları kontrol edin  
      Alert("Satış kalıbı oluşturuldu"); 
      } 
        if (Fiyat<Seviye_2) 
   { // Karmaşık koşulları kontrol edin  
      Alert("Satın al kalıbı oluşturuldu"); // İleti 
  }
   dönüş; 
   }                               
  //------------------------------------------------ --------------------


Ancak bazı nedenlerden dolayı, her tıklamada, yalnızca minimum veya maksimum değiştiğinde sinyal vermesine rağmen, yalnızca bir satın alma modeli verir.  
 
silachara :

Ona neden ihtiyacın var? Piyasa kapalı ise kene olmayacağı için Expert Advisor çalışmayacaktır.

Ama hala gerçekten ihtiyacın varsa, dene

Piyasa açıksa 1 döndürür. Piyasa kapalıysa 0 döndürmesi gerekir ama kene yoksa nasıl oluyor :)

Teşekkür ederim!
Bilgi için. Keneler arasındaki süreyi hesaplamak gerekir.
OnTimer() kullanıyorum.
 
Deniskaaa :

Böyle bir şey - sonuncusu için minimum ve maksimum fiyat değerlerini belirlemeniz, örneğin 100 bar ve ardından 1 2 3 ters desen çizmek için fiyat düştüğünde / yükseldiğinde yükselişi / düşüşü düzeltmeniz gerekir. ArrayMaximum ve iHighest işlevleri arasındaki farkı anlayamıyorum. Doğru anlarsam, hesaplamalarının sonucu yalnızca belirtilen dizi aralığındaki maksimum çubuğun indeksi mi olacak? Hesaplama, ders kitabındaki 26. problemde olduğu gibi dizilerle çalışırken for ifadesinin kullanılmasını gerektiriyor mu? Bu kodu şöyle bir şeyle değiştirdim




Bu sinyalleri takas etmek istiyorsanız, yapmayın. Programlamayı öğreniyorsanız, doğru yazın.

çift

 Seviye_1, // Sinyal seviyesi 1
   Seviye_2, // Sinyal seviyesi 2
   fiyat; // Mevcut fiyat
 üstünde.
 for(i=0;i<=Quant_Bars-1;i++) yerine for(i=0; i<Quant_Bars; i++)
 {
	if (Düşük[i]< Minimum) // < biliniyorsa
         	Minimum=Düşük[i]; // o zaman min olacak
      	if (Yüksek[i]> Maksimum) // Eğer > biliniyorsa
         	Maks=Yüksek[i]; // o zaman maksimum olacak
 }
 kıvırcık parantez eklendi.
 eğer (Fiyat<Seviye_2) işaretini değiştirirse üstte ise (Fiyat > Seviye_2)
 
kosmos0975 :

Bu sinyalleri takas etmek istiyorsanız, yapmayın. Programlamayı öğreniyorsanız, doğru yazın.


Cevabın için teşekkürler.
 

Dosyalarla nasıl çalışılacağını öğrenmeye başladı. terim kolu ile bir araya geldi. Kodu yazdıktan sonra soru ortaya çıktı:

 int filehandle;
filehandle= FileOpen ( "news.csv" , FILE_READ );
Print ( "Файл открыт успешно. Хендл файла=" , filehandle);
filehandle= FileOpen ( "news150901.csv" , FILE_READ );
Print ( "Файл открыт успешно. Хендл файла=" , filehandle);

İlk dosya news.csv açıldıktan sonra program kütükbelirteci değişkenine 1 değerini atamıştır.Ardından program ikinci dosyahaber150901.csv'yi açmış ve kütükbelirteci değişkenine 2 değerini atamıştır. tutamacın değeri yalnızca ikinci dosyayı açarken. Başka bir deyişle, ilk open için tanıtıcı değerini öldürdüm. Onlar. verilere/içeriklere erişin ve yalnızca ikinci dosyayı kapatabilir miyim? Açık dosyayı saklamak için tek bir değişken kullanmak bir hata mı? Açtığınız her dosya için tanıtıcı için bir değişken oluşturmanız mı gerekiyor?