Hatalar, hatalar, sorular - sayfa 930

 
kPVT
Tavsiye için teşekkürler.
Lütfen deneyiminizi paylaşın. Yani:
1. Benzersiz adlar üretme mekanizması. Otomatik artışla mevcut adların doğrudan numaralandırılması?
2. Nesnenin gerçekliğini kontrol etme mekanizması. Onlar. sadece aynı ada sahip bir nesne olup olmadığını değil, tüm parametreleri, örneğin boyutları, türleri, metni vb. olup olmadığını kontrol edin. Kaynak tasarrufunu göz önünde bulundurarak. Her bir nesnenin her özelliği için her bir onay işareti üzerinde çok sayıda kontrol yapmak çok zahmetlidir. Tabii ki, ya nesnenin dışarıdan herhangi bir değişiklikten engellenmesi (yaratıcının danışmanı hariç) ya da HIZLI (bir "eğer") nesneyi kontrol etmek için nesnenin karma değerinin hesaplanması varsa. özgünlük.
 

Lütfen tablonun yeniden çizilmemesi ile durumun yeniden üretildiğini onaylayın.

Basit bir uzman eklendi. Koşullar:

1. 2013.01.07'den 2013.02.11'e. Büyük ihtimalle etkilemez.

2. Görsel modda test etme.

3. İlk çalıştırmada hızı en aza indirin:

4. Başlatma işleminden sonraki bir sonraki çalıştırmada F12'ye basın (bir onay işareti oluşturun).

Bir diğer çok önemli koşul ise terminalin çevrimdışı çalışmasıdır. Deneyin saflığı için, bilgisayarın ağ bağlantısını kesmeyi deneyin (tüm ağ bağdaştırıcılarının bağlantısını kesin).

İzliyoruz.

1. Yayılma değerini grafikte gösterme gecikmesi.

ChartRedraw işlevinin yanlış çalışması veya neyi yanlış yaptım? Grafiği fare ile hareket ettirirseniz (yatay hareket ettirirseniz (zaman), yeniden çizim doğru yapılır.

Dosyalar:
1.mq5  4 kb
 
voix_kas :
kPVT
Tavsiye için teşekkürler.
Lütfen deneyiminizi paylaşın. Yani:
1. Benzersiz adlar üretme mekanizması. Otomatik artışla mevcut adların doğrudan numaralandırılması?
2. Nesnenin gerçekliğini kontrol etme mekanizması. Onlar. sadece aynı ada sahip bir nesne olup olmadığını değil, aynı zamanda tüm parametrelerini, örneğin boyutları, türleri, metni vb. kontrol edin. Kaynak tasarrufunu göz önünde bulundurarak. Her bir tik üzerinde her nesnenin her özelliği için çok sayıda kontrol yapmak çok zahmetlidir. Tabii ki, ya nesnenin dışarıdan herhangi bir değişiklikten engellenmesi (yaratıcının danışmanı hariç) ya da HIZLI (bir "eğer") nesneyi kontrol etmek için nesnenin karma değerinin hesaplanması varsa. özgünlük.

Doğru ve optimal olduğunu iddia etmemek.

1. Nesne adı için rastgele bir sayı + adın kullanıldığı standart kitaplığı kullanabilirsiniz, örneğin: 18467RadioGroupItem0Button, 06334ClientBack. Ve nesneleri kendiniz silmeniz gerekmez.  

Henüz standart İncil ile gerçekten arkadaş olmadım ve yapıyorum, hiçbir sorun olmadı.

 int nOBJ= 0 ; //счетчик однотипных объектов
int OnInit ()
  {
   //уникальное имя на основе текущего времени в момент инициализации (в 36 системе для краткости, пример: MI7E9G)
   basedName=ULongTo36Base( TimeLocal ());
   leftName= "LeftBorder " +basedName; //имя для единичного объекта
   ObjectCreate ( 0 ,leftName, OBJ_VLINE , 0 ,time, 0 );
   for (nOBJ= 1 ;nOBJ<= 100 ;nOBJ++) //создание 100 однотипных объектов
     ObjectCreate ( 0 ,( string )nOBJ+basedName, OBJ_TREND , 0 ,time,price);
   return ( 0 );
  }
void OnDeinit ( const int reason)
  {
   for ( int del= 1 ; del<=nOBJ; del++)
       ObjectDelete ( 0 ,( string )del+basedName);
   ObjectDelete ( 0 ,leftName);
   return ;
  }

Burada ayrıklığa dayalıAdı 1 saniye olacaktır. Şablondan birkaç özdeş gösterge eklerseniz, çarpışmalar olacaktır, bu durumda gösterge parametrelerini baseName'e veya belki milisaniyeleri TimeLocal()'a, rasgele bir sayıya veya başka bir şeye ekleyebilirsiniz. Genel olarak seçenekler var.

2. Bir nesnenin gerçekliği - benzersiz adı. Aynı ada sahip farklı türde olsalar bile iki nesne aynı grafik penceresinde olamaz. Neden bir nesnenin tüm özelliklerini kontrol etmelisiniz? Açıklamak.

Nesne özelliklerinin manuel olarak değiştirilip değiştirilmediğini kontrol etmek istiyor musunuz? CHARTEVENT_OBJECT_CHANGE etkinliği var.

Yanlışlıkla silmeyi kontrol etmek için, bir nesneye erişirken varlığını kontrol etmeniz ve gerekirse geri yüklemeniz gerekir (bu arada, bir nesne silme olayı var - kullanmıyorum).


Biçimlendirilmiş bilgileri görüntülemek için yine de Yorum'u kullanmak istiyorsanız, örneğin gerekli dize uzunluğunu ayarlayabilir ve bu uzunluğu bilerek açıklama ve parametre değerini (uzunluklarını belirleyerek) doğru yerlere ekleyebilirsiniz.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
voix_kas :
kPVT
Tavsiye için teşekkürler.
Lütfen deneyiminizi paylaşın. Yani:
1. Benzersiz adlar üretme mekanizması. Otomatik artışla mevcut adların doğrudan numaralandırılması?
2. Nesnenin gerçekliğini kontrol etme mekanizması. Onlar. sadece aynı ada sahip bir nesne olup olmadığını değil, tüm parametreleri, örneğin boyutları, türleri, metni vb. olup olmadığını kontrol edin. Kaynak tasarrufunu göz önünde bulundurarak. Her bir nesnenin her özelliği için her bir onay işareti üzerinde çok sayıda kontrol yapmak çok zahmetlidir. Tabii ki, ya nesnenin dışarıdan herhangi bir değişiklikten engellenmesi (yaratıcının danışmanı hariç) ya da HIZLI (bir "eğer") nesneyi kontrol etmek için nesnenin karma değerinin hesaplanması varsa. özgünlük.
Belki bu yardımcı olur: Hazır dersler aracılığıyla piyasaya bir göz atın
 

kPVT

Tavsiye için teşekkürler. CHARTEVENT_OBJECT_CHANGE üzerinden kontrol etmeye çalışacağım.

Dima_S

Teşekkür ederim. Ancak standart sınıfları kullanma gereğini görmüyorum.

Rica ederim, lütfen bir önceki mesajımda hazır basit bir Expert Advisor kullanarak ChartRedraw fonksiyonunu test edin. Ne yazık ki, bazı nedenlerden dolayı, bu işlev bir onay gecikmesi verir. Onlar. örnekte, işleme ve geri çekme geçerli olanda gerçekleşmesine rağmen, spread değerinin önceki onay için gösterildiğini gösterir.

 
voix_kas :

kPVT

Tavsiye için teşekkürler. CHARTEVENT_OBJECT_CHANGE üzerinden kontrol etmeye çalışacağım.

Dima_S

Teşekkür ederim. Ancak standart sınıfları kullanma gereğini görmüyorum.

Rica ederim, lütfen bir önceki mesajımda hazır basit bir Expert Advisor kullanarak ChartRedraw fonksiyonunu test edin. Ne yazık ki, bazı nedenlerden dolayı, bu işlev bir onay gecikmesi verir. Onlar. örnekte, işleme ve geri çekme geçerli olanda gerçekleşmesine rağmen, spread değerinin önceki onay için gösterildiğini gösterir.

Evet, hiçbir şey için değil. Makaleyi okursanız, sorulan iki soruya cevap bulacaksınız))
 

Market'ten büyük programlar indirip kurmak mümkün değildir. Dikkat olmak. Nedeni bilinmiyor.

Bazı kısıtlamalar olabilir. Onlar hakkında resmi bir bilgi yok.

 

Lütfen bana söyle:

1. Kaynaklardan çağrılan bir gösterge girdi parametrelerini alamıyor mu?
2. Değilse, (koltuk değneği ile) nasıl ve nasıl aşılabilir?
 

Belki Her şey iCustom () ile aynıdır.

handle= iCustom ( _Symbol , _Period , "::Indicators\\Examples\\ZigZag.EX5" , 12 , 5 , 3 );
 
Karlson :

Belki Her şey iCustom () ile aynıdır.

Aynen, belki. Kodda bir hata yaptı.

Teşekkür ederim.