[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 122

 
Fduch писал(а) >>

Bu arada, OrdersTotal () bir int numarası döndürür. Ve int değerleri alabilir:

Onlar. teorik maksimum sipariş sayısı: 2147483647

Objektif cevabınız için teşekkürler!

[Deleted]  

Yardım istiyorum, anlayamıyorum, kitapta bu kodun çalıştığı yazıyor:

//------------------------------------------------ --------------------
// Book_expert_33.mq4
// MQL4 eğitiminde örnek olarak kullanılmak üzere tasarlanmıştır.
//------------------------------------------------ --------------------
int Sayı = 0; // Küresel değişim .
//------------------------------------------------ --------------------
int init() // Özel. işlev başlatma ()
{
Uyarı ("init() işlevi başlangıçta çalıştı"); // İleti
dönüş; // init()'ten çık
}
//------------------------------------------------ --------------------
int start() // Özel. başlat() işlevi
{
çift Fiyat=Teklif; // yerel değişiklik.
Say++; // Onay sayacı
Alert("Yeni tik ",Sayı," Fiyat = ",Fiyat);// Mesaj
dönüş; // başlangıçtan çık()
}
//------------------------------------------------ --------------------
int deinit() // Özel. işlev tanımı()
{
Alert("deinit() işlevi yük boşaltırken çalıştı"); // İleti
dönüş; // deinit()'ten çık
}
//------------------------------------------------ --------------------

, ancak yeni keneler için fiyat yazmıyorum, işlev başlatma ve boşaltma sırasında tetikleniyor.

[Deleted]  
Lütfen programcı olmayan bir kişiye Uyku'yu (1200000) nereye ve nasıl ekleyeceğini söyleyin, böylece siparişi kapattıktan sonra 10 dakikalık bir gecikme olur, bu çok gereklidir.
Dosyalar:
1_1.rar  26 kb
 
v43 писал(а) >>
Lütfen programcı olmayan birine Sleep(1200000) nereye ve nasıl ekleneceğini söyleyin, böylece sipariş kapatıldıktan sonra 10 dakikalık bir gecikme olur, bu çok gereklidir.

Lütfen - kodu SRC butonundan geçirin - bu şekilde okumak imkansız.

Bu kadar geniş bir aralık için, bunu Uyku yoluyla yapmamak daha iyidir, ancak bu süre geçtiğinde böyle bir onay bekleyin - örneğin:

   static datetime DontCloseBefore = 0 ;
   //....
   
   OrderSend ( . . . . ) ;
   DontCloseBefore = TimeCurrent ( ) + 10 * 60 ; //10 minutes
   //....
   
   if ( DontCloseBefore ! = 0 )
   {
       if ( TimeCurrent ( ) > DontCloseBefore ) & & ( some other conditions - like existing order ) )
       {
         DontCloseBefore = 0 ; //important - reset the state engine
         OrderClose ( . . . ) ;
       }
   }
Eğer DontCloseBefore == 0 ise hiçbir şey, eğer bir maliyet varsa, o zaman mevcut saat DontCloseBefore'da yazılandan daha büyük olana kadar beklemeniz gerekir, DontCloseBefore'ı sıfırlayın ve kapatın
 

Belki biri biliyordur - pencerede belirli bir Göstergenin açık olup olmadığını öğrenmenizi sağlayan bir komut var mı, Örneğin MA(20) ?

Teşekkür ederim!

 
chief2000 >> :

Belki biri biliyordur - pencerede belirli bir Göstergenin açık olup olmadığını öğrenmenizi sağlayan bir komut var mı, Örneğin MA(20) ?

Teşekkür ederim!



intWindowFind ( dize adı)
Bulunursa belirtilen ada sahip göstergeyi içeren grafik alt penceresinin numarasını döndürür, aksi takdirde -1 döndürülür.
Özel gösterge init() sırasında kendini bulursa WindowFind() -1 döndürür.
[Deleted]  
 
keekkenen >> :


intWindowFind ( dize adı)
Bulunursa belirtilen ada sahip göstergeyi içeren grafik alt penceresinin numarasını döndürür, aksi takdirde -1 döndürülür.
Özel gösterge init() sırasında kendini bulursa WindowFind() -1 döndürür.

Açıklamanın gerekli olduğunu görüyorum:

Amacım MA'nın çalışıp çalışmadığını kontrol etmek, "evet" ise hangi Dönem ile öğrenmek. Sonuç olarak, MA(20) varsa "20" almam gerekiyor.

Bunu yapmak için WindowFind()'i bir for-loop ile kullanabilirsiniz, ancak bilgisayarınızı boşa harcamak istemezsiniz çünkü

bu kontrol en başta yalnızca bir kez yapılmalıdır (init() içindeki WindowsFind() çalışmıyor mu?).

[Deleted]  

Rica ederim. Birine basit bir danışman yazın:

- açık körfez

- Bu alma=20 ile, kaybı durdur=20 ;

- alma tetiklendiğinde, Bai'yi tamamen aynı parametrelerle tekrar açın (al=20; dur=20).

-kaybı durdur tetiklerse, tam olarak aynı parametrelerle Sat'ı açın (al=20; stop=20). ve benzeri.

Tamamen aynı olabilir, ancak önce Al'ı değil, Sat'ı açıyoruz.

iş için sembolik bir ödeme olarak, 5 UAH için hesabı yenileyebilirim. (Ukraynalı operatörler ise)

 

Neden, ana pencerede MA(20) çalıştırıldığında

 WindowFind("MA(20)")

"-1" döndürür mü?