[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 191

 
eddy :

yanlış fiyat 1.37197000.

doğru olan, hangi DC'ye bağlı olarak 1.37197 veya 1.3719'dur.

ondalık noktadan sonraki basamak sayısını ayarlamak için NormalizeDouble() öğesini kullanın.


OrderSend()'deki fiyata NormalizeDouble() eklendi , şimdi hata oluşmuyor, teşekkürler!
 
artmedia70 :

Daha kolay hiçbir yer yok:

Fonksiyonları kendilerini start() fonksiyonunun dışına yerleştirin, hatta tüm kodun en sonunda yapabilirsiniz.



Teşekkür ederim!
 
eddy :

Göstergeyi başlattıktan sonra ilk tikte GetTickCount'u hatırlamam gerekiyor, ancak aşağıdaki kod çalışmıyor - terminal donuyor. Belki init() RefreshRates hiç çalışmıyor ..?

while (true){ if (RefreshRates()) { tik= GetTickCount (); ara ; } Uyku ( 1 ); }

nasıl uygulanacağı konusunda fikri olan var mı? Bunu init'te istiyorum çünkü başlangıçta bir bayrak yaparsam her seferinde kontrol edilecek
 
eddy :
nasıl uygulanacağı konusunda fikri olan var mı? Bunu init'te istiyorum çünkü başlangıçta bir bayrak yaparsam her seferinde kontrol edilecek
Global bir değişken bildirirken, bir değer atayın, başlangıçta sıfırlayın. Daha sonra, atanmadan önce yalnızca ilk onay işaretinde orijinal değerine sahip olacaktır ve sonraki tüm onay işaretlerinde başlangıçta atanacaktır. Ardından, danışmanın başlangıcında bir kez gerçekleştirilen tüm eylemleri başlangıca aktarabilirsiniz.
 
eddy :

Lütfen göstergeyi çizelgeye programlı olarak nasıl yükleyeceğimi söyle?

boolServiceLoadCustomIndicator ( int hwndChart, ... ); // hwndChart - Göstergenin yüklendiği grafik penceresinin sistem tanıtıcısı.

ama grafik penceresi tutamağını nasıl bildiğinizi bilmiyorum.

Göstergeyi başlattıktan sonra ilk tikte GetTickCount'u hatırlamam gerekiyor, ancak aşağıdaki kod çalışmıyor - terminal donuyor. Belki init() RefreshRates hiç çalışmıyor ..?

https://docs.mql4.com/en/windows/WindowHandle
 
granit77 :
Global bir değişken bildirirken, bir değer atayın, başlangıçta sıfırlayın. Daha sonra, atanmadan önce yalnızca ilk onay işaretinde orijinal değerine sahip olacaktır ve sonraki tüm onay işaretlerinde başlangıçta atanacaktır. Ardından, danışmanın başlangıcında bir kez gerçekleştirilen tüm eylemleri başlangıca aktarabilirsiniz.

Başlangıçta bu değişkene herhangi bir şey atamama gerek yok. keneyi hatırlamak için sadece bir kez.

Değerleri başlangıçta ana gösterge tarafından tanınacak olan global bir değişkende keneleri saklamak için şimdiye kadar ayrı bir gösterge yapmaya karar verdim.

Zhunko , aynı TF ve araca sahip birkaç pencere varsa ne olur?

 
eddy :

Başlangıçta bu değişkene herhangi bir şey atamama gerek yok. keneyi hatırlamak için sadece bir kez.

Değerleri başlangıçta ana gösterge tarafından tanınacak olan global bir değişkende keneleri saklamak için şimdiye kadar ayrı bir gösterge yapmaya karar verdim.

Zhunko , aynı TF ve araca sahip birkaç pencere varsa ne olur?

Uzun zaman önce kontrol edildi (bunu da yapabilirsiniz) en son veya aktif olanı döndürür.
 
Zhunko : En son veya aktif olanı döndürür.

onlar. hiçbiri etkin değilse, sonuncusunu döndürür mü?

Ancak o kadar da önemli değil bence eklerken hala eklemeniz gereken yerde aktif oluyor

 
eddy :

ancak, o kadar önemli değil, bence eklerken, hala her zaman aktif, her zaman eklemeniz gereken yerde

Evet. Aynen öyle. Tüm aynı grafik pencerelerinin tutamaçlarını Z sırasına göre döndüren bir işlevim var.Kitaplığa dahil etmedim. Ama pek yardımcı olmayacak.
 
eddy :

Başlangıçta bu değişkene herhangi bir şey atamama gerek yok. keneyi hatırlamak için sadece bir kez.

Değerleri başlangıçta ana gösterge tarafından tanınacak olan global bir değişkende keneleri saklamak için şimdiye kadar ayrı bir gösterge yapmaya karar verdim.

Bunu kastetmiştim:
 bool FirstStart= true ;

int start(){

     if (FirstStart){
       if (RefreshRates()) tik=GetTickCount();
      FirstStart= false ;
    } 
}