Hatalar, hatalar, sorular - sayfa 758

 
Evet, şimdi 4 saniye ileri koştuk.
 
Trend çizgisi konumunu değiştirdiğinde orta nokta neden kayboluyor?
 

Merhaba!

Görsel test sırasında, belirli bir değişkenin değerinin her çubukta nasıl değiştiğini grafiksel olarak görmem gerekiyor, yani. alt pencerede ayrı bir grafik oluşturmanız gerekir. Örneğin, grafiğin altında ayrı bir pencerede her çubukta hisse senedi değişim grafiğini görmek istiyorum.

Nasıl daha iyi yapabilirim? Bir gösterge yazın, bir grafiğe ekleyin ve değişkenlerin değerlerini EA'dan terminalin global değişkenleri aracılığıyla ona iletin? Yoksa daha "güzel" bir yol var mı?

Şimdiden teşekkürler.

Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 
Alex5757000 :

Merhaba!

Görsel test sırasında, belirli bir değişkenin değerinin her çubukta nasıl değiştiğini grafiksel olarak görmem gerekiyor, yani. alt pencerede ayrı bir grafik oluşturmanız gerekir. Örneğin, grafiğin altında ayrı bir pencerede her çubukta hisse senedi değişim grafiğini görmek istiyorum.

Nasıl daha iyi yapabilirim? Bir gösterge yazın, bir grafiğe ekleyin ve değişkenlerin değerlerini EA'dan terminalin global değişkenleri aracılığıyla ona iletin? Yoksa daha "güzel" bir yol var mı?

Şimdiden teşekkürler.

Hiç de değil, doğrudan göstergede eşitlik veya bakiye değerleri alabilirsiniz.

Gösterge arabelleğinin çizim parametrelerini bir çubuk grafik olarak ayarlayın.

ve dört değeri de uygun arabelleklere yazın,

çubuğun açılışında açılır, yüksek-düşük ve dinamik olarak kapanır (son çubuk).

kısaca şöyle bir şey: ekte

Elbette mutlak bir değere de sahip olabilirsiniz (yorumlanmış versiyon), ancak küçük ilk artışların üzerinde zayıf görüneceğini düşünüyorum, bu nedenle IMHO, ilk araçlar ile mevcut olanlar arasındaki fark daha soğuk.

PS ve olmasa da, dinamik bir ölçek var, böylece ikinci seçenek de mümkün, oldukça okunaklı.

Dosyalar:
 
Urain :

Hiç de değil, doğrudan göstergede eşitlik veya bakiye değerleri alabilirsiniz.

Gösterge arabelleğini çubuk grafik olarak çizmek için parametreleri ayarlayın.

ve dört değeri de uygun arabelleklere yazın,

çubuğun açılışında açılır, yüksek-düşük ve dinamik olarak kapanır (son çubuk).

Öz sermaye ve bakiye değerleri - evet, peki ya EA'da hesaplanan değişkenin değerini görmek istersem?
 
 
Alex5757000 :
Öz sermaye ve bakiye değerleri - evet, peki ya EA'da hesaplanan değişkenin değerini görmek istersem?

Özel bir etkinlik aracılığıyla gönderebilirsiniz, etkinlik çizelgesinde sonra güncellemeyi unutmayın,

aksi takdirde, onay kuyruk sırasına göre olay işlenmeden önce gelir.

Tehdit, küreseller aracılığıyla mümkün olmasına rağmen, ancak aynı sorun zaten meydana geldi ve değişken hala EA'da işleniyor (değişiklikleri hazırlanıyor), elbette verilere ulaşacak, ancak gecikme olacak. bir onay işareti, olayda hala daha doğru olacaktır, değişkenin gerçek verilere sahip olduğu zaten kesin olarak bilindiğinde, olgudan sonra grafik güncellemesini nereye koyacağınız vardır.

 

İşte " 'return' hatasıyla derlenmeyen kod - yapının nesneleri var ve " CTest getCopy( void ) {CTest res; return res;} " dizesi nedeniyle kopyalanamıyor

Bu 2 şekilde düzeltilebilir:

1) " sınıf " ı " yapı " olarak değiştirin

2) aşırı yüklenmiş atama operatörüyle tahliyeyi kaldırın

Yani, kopya oluşturucunun rolü aşırı yüklenmiş atama operatörü tarafından gerçekleştirilecek şekilde mi olmalı? Öyleyse, bir matris sınıfı örneği dışında (bu arada ayrıntılı bir analizi, kodumda bir hata bulmama izin verdi) dışında, bu neden referans kitabında belirtilmiyor?

 class CTest
  {
public :
    CTest( void ): cnt( 0 ) {}
   ~CTest( void ) {}
    CTest( const CTest& T) {cnt = T.cnt;} // copy constructor
     //------------------------
    CTest getCopy( void ) {CTest res; return res;} 
     //------------------------
     //CTest* operator=(const CTest& T) {cnt = T.cnt; return GetPointer(this);}
private :
         int cnt;
  };
Документация по MQL5: Основы языка / Операторы / Оператор-выражение
Документация по MQL5: Основы языка / Операторы / Оператор-выражение
  • www.mql5.com
Основы языка / Операторы / Оператор-выражение - Документация по MQL5
 
WWer :

İşte " 'return' hatasıyla derlenmeyen kod - yapının nesneleri var ve " CTest getCopy( void ) {CTest res; return res;} " dizesi nedeniyle kopyalanamıyor

Doğal olarak. Fonksiyonlardan bir nesne döndürülemez. ( Yapıların aksine .) Belgelenmiştir.


Bu 2 şekilde düzeltilebilir:

1) " sınıf " ı " yapı " olarak değiştirin

Yukarıyı görmek.

2) aşırı yüklenmiş atama operatörüyle tahliyeyi kaldırın

Doğal olarak. Aşırı yüklenmiş operatör, iyi olan bir tanıtıcı işaretçisi döndürür. Şimdi getCopy() işlevinden döndürülen artık bir nesne değil, kodu doğru yapan bir işaretçidir (işlevden dönüş örtük bir atamadır).

// Yalnızca sözdizimsel olarak doğru.

// getCopy() işlevinden başlatılmamış bir değişken döndürmek, umarım, yalnızca sözdizimi sorununu göstermeye hizmet eder ve makul görünmemektedir.

Yani, kopya oluşturucunun rolü aşırı yüklenmiş atama operatörü tarafından gerçekleştirilecek şekilde mi olmalı?

Ah ... Ve işte roller? Atama operatörünü istediğiniz gibi aşırı yükleyebilir ve kopya oluşturucuyu doğru yazabilirsiniz. Senin hatan başka bir yerde.


Öyleyse, bir matris sınıfı örneği dışında (bu arada ayrıntılı bir analizi, kodumda bir hata bulmama izin verdi) dışında, bu neden referans kitabında belirtilmiyor?

Çünkü dinozor Vasya, 11 Şubat 2096785'te Mesih'in doğumundan önce yanlış bir şekilde Klava kertenkelesine bastı. Bu, mevcut duruma yol açan uzun bir neden ve sonuç zincirini gerektirdi. Yapacak bir şey yok.

;)

 
MetaDriver : // getCopy() işlevinden başlatılmamış bir değişken döndürmek, umarım, yalnızca bir sözdizimi sorununu göstermeye hizmet eder ve makul gibi davranmaz.

Neden başlatalım? Bu, yalnızca bunun için bir kurucuya sahip bir sınıfın örneğidir.

MetaSürücü :
Ah ... Ve işte roller? Atama operatörünü istediğiniz gibi aşırı yükleyebilir ve kopya oluşturucuyu doğru yazabilirsiniz. Senin hatan başka bir yerde.

Ve o zaman bu amaç için bir kopya kurucu yazmak nasıl doğru olur?

Neden: