genel başlatma başarısız !!!!!!! - sayfa 3

 

İpuçları için teşekkürler!

646'dan beri garip şeyler oluyor ve kimse yardım edemiyor gibi görünüyor!

1. Etiketler, XDISTANCE ve YDISTANCE kurallarına uyulmamış gibi çizginin dışına çıkıyor.

Yalnızca Tf'leri ileri geri değiştirdikten sonra sıraya girerler.

Grafik pencerelerini değiştirdikten veya parametre girişini değiştirdikten sonra hat dışına çıkarlar.

2. Bazı eski indisler MT4'ü çökertiyor.

3. MT4'ü başlattıktan sonra önce hesaba giriş yapıyor, bir süre sonra çıkış yapıyor ve tekrar giriş yapmam gerekiyor.

4. OrderClose() ile komut dosyaları ve EA'lar çalışmıyor, siparişleri kapatmıyorlar.

OrderModify() iyi çalışıyor.

MetaQuotes'un bu konuda bir şeyler yapmasını sağlamak için ne yapabiliriz???

Sonuçta, MT4 bir ticaret platformudur, dolayısıyla ciddi bir araçtır, oyuncak değil!!!

Ve bir şey daha:

Diyelim ki, bazı hesaplamalara dayanarak indi ile bir dikdörtgen oluşturuyorum.

Hesaplamalar start() içindedir.

Yine de, MT4'ü başlattıktan sonra dikdörtgenimi kenelerde bile göremiyorum.

Ancak, indi'yi yeniden başlattıktan veya Tf'leri değiştirdikten sonra, oradadır.

Şimdi, bu tür şeyler daha önce hiç olmamıştı!

 
Dadas :

İpuçları için teşekkürler!

646'dan beri garip şeyler oluyor ve kimse yardım edemiyor gibi görünüyor!

1. Etiketler, XDISTANCE ve YDISTANCE kurallarına uyulmamış gibi çizginin dışına çıkıyor.

Yalnızca Tf'leri ileri geri değiştirdikten sonra sıraya girerler.

Grafik pencerelerini değiştirdikten veya parametre girişini değiştirdikten sonra hat dışına çıkarlar.

bu, kodunuzda düzeltebileceğiniz anlamına gelir

2. Bazı eski indisler MT4'ü çökertiyor.

kodu yeni dünyaya uyarlamanız gerekiyor, (B600 >) örneğin "sıfır bölme" kritik bir hatadır ve göstergenin kaybolmasını sağlar (B600'den önce değildi)

3. MT4'ü başlattıktan sonra önce hesaba giriş yapıyor, bir süre sonra çıkış yapıyor ve tekrar giriş yapmam gerekiyor.

tüm açık çizelgeleri kapatmaya çalışın terminali boş bırakın (açık çizelgeler olmadan), terminali yeniden başlatın, sorun devam ederse servis masasına bildirin

4. OrderClose() ile komut dosyaları ve EA'lar çalışmıyor, siparişleri kapatmıyorlar.

Sorunun kodunuzda olduğundan eminim, bize ilgili kodu gösterin ve biri size yardım etmeye çalışacaktır.

OrderModify() iyi çalışıyor.

MetaQuotes'un bu konuda bir şeyler yapmasını sağlamak için ne yapabiliriz???

Sonuçta, MT4 bir ticaret platformudur, dolayısıyla ciddi bir araçtır, oyuncak değil!!!

katılıyorum, ancak kritik hatanın kodunuzda olduğunu düşünüyorum (neredeyse kesin), kodu güncel kullanıyorsunuz, yani o sırada hatalarla yazılmış, göstergenin/EA'nın çalışmasını durdurmayan hatalar, ancak şimdi bunlar çok önemli hatalar ve düzeltilmesi gerekiyor

 

babalar,

Ben bir geliştiriciyim ve tüm sorularınızı yanıtlayamam. Ticari almayı düşündüğüm uygulamalarda bazı PITA sorunlarıyla kendim ilgileniyorum. Kesinlikle önerdiğim bir şey, en azından init ve deinit işlevlerinizi yeni OnInit() ve OnDeInit() işlevleriyle değiştirmektir. Ayrıca start'ı OnStart() ile değiştirmek isteyebilirsiniz. Belgelere göre, uygulamanın geriye dönük uyumlu olması gerekiyordu, ancak deneyimlerim tam tersini söylüyor. Indie'lerimden birinde deinit()'in çağrılmadığı bir durum vardı. Deinit() yöntemim nesneleri sildi ve nesneler hala var olduğu için yeniden başlatmaya neden olan herhangi bir şey başarısız oldu. Hala OnStart() yerine start() kullanıyorum ama bunun hikmetinden emin değilim. İleride bela istediğime dair bir önsezim var. Önerilerimi denemeyi seçerseniz ne olacağını bana bildirin. Biz Devler birbirimize bağlı kalmalıyız. :-)

 
Dadas :

Ve bir şey daha:

Diyelim ki, bazı hesaplamalara dayanarak indi ile bir dikdörtgen oluşturuyorum.

Hesaplamalar start() içindedir.

Yine de, MT4'ü başlattıktan sonra dikdörtgenimi kenelerde bile göremiyorum.

Ancak, indi'yi yeniden başlattıktan veya Tf'leri değiştirdikten sonra, oradadır.

Şimdi, bu tür şeyler daha önce hiç olmamıştı!


yukarıda yazdığım gibi önümüzde yeni bir dünya var
"OnTick" (EA) veya "OnCalculate" (gösterge) kullanmaya "başlamıyor musunuz"
 
qjol :

yukarıda yazdığım gibi önümüzde yeni dünya var
"OnTick" kullanmaya "başlamıyor musun"


Bakın, MetaQuotes, ProfessorMetal'in dediği gibi geriye dönük uyumlu olması gereken bir platform yayınlıyor!

Halihazırda var olan binlerce göstergeyi, betiği ve EA'yı yeniden yazabilecek kapasitede olduğunu düşünmüyorum.

Kodlarımın yanlış olduğu yönündeki önerilerinize katılmıyorum, bazı etiketler sadece en basit kodlardır.

Onlara bir şey yok, bir etiket nesnesi oluşturuyorlar, bir şey hesaplıyorlar ve sonra nesneyi buna göre ayarlıyorlar.

Ekli özel bir felsefe yoktur:

   ObjectSet     ( "Lot_Size_Label" , OBJPROP_CORNER ,Corner);

   ObjectSet     ( "Lot_Size_Label" , OBJPROP_XDISTANCE ,XDistance);
   ObjectSet     ( "Lot_Size_Label" , OBJPROP_YDISTANCE ,YDistance);
   ObjectSetText ( "Lot_Size_Label" ,comment,Font_Size,Font_Type,Font_Color);
   ObjectSet     ( "Lot_Size_Label" , OBJPROP_SELECTABLE , false ); 

Sipariş kapanış komut dosyalarına ve EA'lara gelince, daha önceki Yapılarda (500) iyi çalışanlardan bahsediyorum.

Yani bu, kodlarımın doğru olup olmamasıyla ilgili bir sorun değil.

Bu, MetaQuotes'un işleri alt üst etmesi meselesidir!

ipuçlarını deneyeceğim ProfesörMetal , yine de kodlama hakkında hiçbir şey bilmeyen kullanıcılar ne olacak???

Ve açıkçası, kodlama hakkında hiçbir şey bilmemeleri gerekiyor!

Ticaret platformunu kullanmaları gerekiyor!!!

 
ProfessorMetal :

babalar,

Ben bir geliştiriciyim ve tüm sorularınızı yanıtlayamam. Ticari almayı düşündüğüm uygulamalarda bazı PITA sorunlarıyla kendim ilgileniyorum. Kesinlikle önerdiğim bir şey, en azından init ve deinit işlevlerinizi yeni OnInit() ve OnDeInit() işlevleriyle değiştirmektir. Ayrıca start'ı OnStart() ile değiştirmek isteyebilirsiniz. Belgelere göre, uygulamanın geriye dönük uyumlu olması gerekiyordu, ancak deneyimlerim tam tersini söylüyor. Deinit()'in çağrılmadığı indie'lerimden birinde bir durum vardı. Deinit() yöntemim nesneleri sildi ve nesneler hala var olduğu için yeniden başlatmaya neden olan herhangi bir şey başarısız oldu. Hala OnStart() yerine start() kullanıyorum ama bunun hikmetinden emin değilim. İleride bela istediğime dair bir önsezim var. Önerilerimi denemeyi seçerseniz ne olacağını bana bildirin. Biz Devler birbirimize bağlı kalmalıyız. :-)


Teşekkürler, deinit'te silinmeyen nesnelerle aynı sorunu yaşadım.

Bazı indi geliştiriyordum ve bu garip sonuçları aldım, sonra nesneler listesinde gördüm, hala oradaydılar.

Bunu muhtemelen en basit şekilde start() içindeki ObjectDelete() ile çözdüm.

Evet, init() öğesini OnInit() olarak ve deinit() öğesini OnDeinit() olarak değiştirmek, etiketleri doğru şekilde geri aldı! Teşekkürler!

Sonra bir süre sonra olmadı!!! Hala aynı dansı yapıyorlar.

 

Kod en basit olanıysa, onu uygulamak gerçekten uygulanan kodlara bağlıdır. Önemli noktalarda hata denetimine sahip olmanız gerekir, böylece bir hata meydana geldiğinde, indi/ea bunu doğru bir şekilde halledebilir. Geçen sefer benim de sorunlarım var ama hata işleyicileri koyduğumda, geçen sefer ortaya çıkan sorunları unuttuğunuz noktaya kadar sorunsuz çalışıyor.


still, what about the users who don't know a thing about coding???

And, frankly speaking, they aren't even supposed to know anything coding!

They are supposed to be using the trading platform!!!

Platform bir meta tüccardır ve tüm temel ihtiyaçlarla birlikte gelir, kimse sizi kodlamaya zorlamaz.

 

Etiketleri hizalamaya neyin yardımcı olduğunu biliyor musun?

X,Y koordinatlarım dıştan alındı.

 extern int XDISTANCE = 9 ;
extern int YDISTANCE = 9 ;

Sonra:

 int X,Y;

int OnInit ()
  {
 X = XDISTANCE;
 Y = YDISTANCE;
 ObjectCreate ( "INSTR" , OBJ_LABEL , 0 , 0 , 0 ); 
 
     return ( 0 );
  }

int start() {
         ObjectSet ( "INSTR" , OBJPROP_CORNER ,Corner);
         ObjectSetText ( "INSTR" ,Symbol_Period+Date_Time,FontSize, "Berlin Sans FB" , Color);
         ObjectSet ( "INSTR" , OBJPROP_XDISTANCE , X);
         ObjectSet ( "INSTR" , OBJPROP_YDISTANCE , Y); 
         ObjectSet ( "INSTR" , OBJPROP_SELECTABLE , false );   
   return ( 0 );
  }

Bu şekilde doğru olur.

Ya da daha doğrusu, her şeyi daha iyi yapar, tam olarak doğru değil.

 
deysmacro :

Kod en basit olanıysa, onu uygulamak gerçekten uygulanan kodlara bağlıdır.


Platform bir meta tüccardır ve tüm temel ihtiyaçlarla birlikte gelir, kimse sizi kodlamaya zorlamaz.


Yorumunun kimseye nasıl yardımcı olması gerekiyor???
 
int X,Y;

int OnInit ()
  {
 X = XDISTANCE;
 Y = YDISTANCE;
 ObjectCreate ( "INSTR" , OBJ_LABEL , 0 , 0 , 0 ); 
 
     return ( 0 );
  }

int start() {
         ObjectSet ( "INSTR" , OBJPROP_CORNER ,Corner);
         ObjectSetText ( "INSTR" ,Symbol_Period+Date_Time,FontSize, "Berlin Sans FB" , Color);
         ObjectSet ( "INSTR" , OBJPROP_XDISTANCE , X);
         ObjectSet ( "INSTR" , OBJPROP_YDISTANCE , Y); 
         ObjectSet ( "INSTR" , OBJPROP_SELECTABLE , false );   
   return ( 0 );
  }

Nesnenin zaten var olup olmadığını kontrol etmek için herhangi bir nesne bulma işlevi koymazsınız. Oradan, nesneyi buna göre yaratırsınız.


How's your comment supposed to help anybody??? 

Şu anda sana yardım ediyorum.

Neden: