Hatalar, hatalar, sorular - sayfa 1233

 
4-ke'de uzun süre sordum ama alay dışında bir cevap alamadım))

yanlış dönüştürmede , StringToTime TimeGMT (); örneğin, StringToTime (" 0" ) ile - argüman ayrıştırılmadığında.

Ve örneğin, StringToTime (" 24.10.2014") - D'2014.10.24 00:00:00' ile argümanın ayrıştırıldığı normal zamanı döndürür.

Bu iyi? Neden TimeGMT ()? Bu, MT4'teki ve bilgisayarımdaki şu anki zamanımdan -2 saat sonra.

 
uzun zaman önce 4806 hatasıyla ilgili bir soru vardı "Neden özel bir göstergeye yerleştirilen CopyBuffer işlevi 4806 hatasıyla sonuçlanıyor,

EA kodunda aynı parametrelerle aynı işlev iyi çalışıyorken? "

kodum hata ayıklayıcının altında çalışıyor, ancak normal modda çalışmıyor (veya daha doğrusu bazen çalışıyor ve neden işe yarayıp neden çalışmadığına dair basit bir kalıp yükleyemedim)

Normal olarak kullanılamayacaklarsa neden iXXX gibi göstergelere ihtiyacımız var?

 
tyn :
uzun zaman önce 4806 hatasıyla ilgili bir soru vardı "Neden özel bir göstergeye yerleştirilen CopyBuffer işlevi 4806 hatasıyla sonuçlanıyor,

EA kodunda aynı parametrelerle aynı işlev iyi çalışıyorken? "

kodum hata ayıklayıcının altında çalışıyor, ancak normal modda çalışmıyor (veya daha doğrusu bazen çalışıyor ve neden işe yarayıp neden çalışmadığına dair basit bir kalıp yükleyemedim)

Normal olarak kullanılamayacaklarsa neden iXXX gibi göstergelere ihtiyacımız var?

Tünaydın. CopyBuffer verileri, göstergenizin üzerinde çalıştığı aynı TF'den mi alındı?

Sorunu çözmek için BarsCalculated() işlevini kullanmayı denediniz mi?

 
marketeer :
Belirli bir sınıfa aitse, MQL OOP'ta bir işaretçinin türü nasıl kontrol edilir - JavaScript'te instanceof türü veya C++'da typeid?
CObject *ob;
datetime t;

typename (ob); // CObject
typename (t);   // datetime
Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
  • www.mql5.com
Основы языка / Объектно-ориентированное программирование / Шаблоны функций - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Fiyat etiketi için ayarlandığı fiyat yerine özel bir değer (görüntülenen) ayarlamak mümkün müdür? Öyleyse nasıl?
 
Tapochun :

Tünaydın. CopyBuffer verileri, göstergenizin üzerinde çalıştığı aynı TF'den mi alındı?

Sorunu çözmek için BarsCalculated() işlevini kullanmayı denediniz mi?

Soru için teşekkürler. Veriler D1'de iATR'den alınmıştır, ana gösterge daha küçük zaman dilimlerinde çalışır, BarsCalculated() ayrıca -1 ve aynı hatayı döndürür. Tahmin ettiğim gibi bir fonksiyon var ama gösterge yok (çalışma zamanında). Aynı enstrümanda başka bir pencerede bir gösterge oluşturursanız, her şey çalışır. Ayrıca hata ayıklama modunda da çalışır. Ama benim sorum bu bir hata mı yoksa bir şey mi kaçırıyorum?
 

Tünaydın.

Sistem dll'lerinden gelen işlev çağrılarıyla ilgili sorun. Görev, MQL5'te belirli bir bağlantı noktasında asılı kalan ve yalnızca mesajları alan basit bir TCP sunucusu yazmaktır.

WSAStartup(), WSAClenup(), socket(), bind(), kabul(), listen(), recv() ws2_32.dll'den içe aktarılan işlevler. Sunucuyu durdurmaya çalışana kadar her şey tam olarak çalışır. Sunucuyu durdurmaya ve komut dosyasını doğru şekilde sonlandırmaya çalıştıktan sonra, terminal çöküyor.

Bilimsel dürtme yöntemini kullanarak recv() işlevine geldim.

ekli dosyada bir satır (171) var:

   int bytesCnt = recv(clientSocket, rcvBuffer, RCVBUFFSIZE, 0 );

forma getirilirse:

   int bytesCnt = 10 ; //recv(clientSocket, rcvBuffer, RCVBUFFSIZE, 0);

sunucu hatasız durur. Ağ ile çalışmak için f-th kullanma örnekleri için MSDN'ye baktım ve her şeyi analojiyle yaptım.

Sorunun nasıl çözüleceği konusunda fikri olan var mı?

Dosyalar:
 
tyn :
Soru için teşekkürler. Veriler D1'de iATR'den alınmıştır, ana gösterge daha küçük zaman dilimlerinde çalışır, BarsCalculated() ayrıca -1 ve aynı hatayı döndürür. Tahmin ettiğim gibi bir fonksiyon var ama indikatör yok (çalışma zamanında). Aynı enstrümanda başka bir pencerede bir gösterge oluşturursanız, her şey çalışır. Ayrıca hata ayıklama modunda da çalışır. Ama benim sorum bu bir hata mı yoksa bir şey mi kaçırıyorum?

Son zamanlarda bu sorunla kendim mücadele ettim. Karar verdim, ne kadar uygun bilmiyorum ama karar verdim. Sadece iFractallardan veri aldım, ama önemli değil. TF'yi neden sordunuz? Gözlemlerime göre, aşağıdaki şey olur. Örneğin, gösterge M15'te çalışır. M1'den M15'e gösterge verileri istenirse, her şey yolundadır, veriler istek anında (ilk arama değilse) hemen kullanılabilir durumdadır. Veriler M30'dan istenirse (tekrar ediyorum, göstergenin kendisi M15 TF'de çalışır), o zaman verilere M30 üzerinden erişildiği anda yeni bir mum yoktur (ön talep gereklidir veya veriler bir onay işaretidir) geç). Aşağıdaki gibi karar verdi. Mevcut mumdaki BarsCalculated() sonucunu hatırlıyorum. Bir dahaki sefer BarsCalculated() bir değer daha döndürür döndürmez (yeni bir mum oluştu), BarsCalculated() öğesinin yeni değerini hatırlayın ve verileri kopyalayın. Ancak bu an (eski TF'deki göstergedeki verilerin görünümü), mevcut TF'de yeni bir mum oluşumuyla çakışmıyor.

Evet, BarsCalculated(), hiç veri olmadığında, bildiğim kadarıyla yalnızca ilk çalıştırmada olan -1 değerini döndürür. Yani, göstergenin tutamağını aldığınızda ve hemen verileri talep ettiğinizde. Ayrıca beklemeniz gerekiyor.  

 

Gösterge tanıtıcısını oluşturduktan hemen sonra, hazır olmadığı için veri isteyemezsiniz. Başlatma ve yeniden hesaplama süreci karmaşıktır ve birçok faktöre bağlıdır.

Doğru strateji, onit'te bir tanıtıcı oluşturmak ve ilk onay işareti geldiğinde verilerle çalışmaktır.

 
Renat :

Gösterge tanıtıcısını oluşturduktan hemen sonra, hazır olmadığı için veri isteyemezsiniz. Başlatma ve yeniden hesaplama süreci karmaşıktır ve birçok faktöre bağlıdır.

Doğru strateji, onit'te bir tanıtıcı oluşturmak ve ilk onay işareti geldiğinde verilerle çalışmaktır.

Sonra böyle bir soru. Gösterge M15 üzerinde çalışıyorsa. Yeni bir mum oluştu. M15 ve M30 için veri talep edilirken, aynı anda mevcut olmaları gerekir mi?