MT4'ün Bir Anlaşma Açıp Sonra Hemen Tekrar Kapatmasıyla İlgili Sorun - sayfa 5

 
7bit :

Buna hangi EA'nın neden olduğu hala bilinmiyor.


Şimdiye kadar gördüğümüz tek şey semptomlar ve birkaç teori. Daha fazla sonuç çıkarmak için aynı zaman aralığını kapsayan 4 terminalin tümünden uzmanlar/günlükler klasöründeki uzman günlüklerine ihtiyacımız var. Bu günlükler teorimi destekleyebilir veya reddedebilir ve kapanış emirlerini kimin gönderdiğini gösterir.

Her EA'yı farklı bir hesapta/terminalde çalıştırdığını sanıyordum?

//konuyu tekrar okuduktan sonra 4 terminalde 30 EA çalıştırdığını gördüm..

//z.

 
zzuegg :

Her EA'yı farklı bir hesapta/terminalde çalıştırdığını sanıyordum?

terminaller kadar çok günlüğe ihtiyacımız var. IIRC, her biri birkaç EA çalıştıran 4 terminalden bahsetti. Ama gerçekten kaç tane olduğu önemli değil, en önemlisi aynı anda tüm terminallerin günlüklerine bakmaktır.

EA1 tarafından terminal1'de açılan bir işlem, terminal2'de çalışan EA2 tarafından kapatılabilir. EA1 ticareti derhal yeniden açacak ve EA2 bu ticareti sonsuza kadar tekrar kapatacaktı.

Terminal1'in uzmanlar günlüğü AÇ ile ilgili girişlerle, terminal2'deki uzmanlar günlüğü ise KAPAT ile ilgili girişlerle doldurulur. Hesap geçmişinde tüm kayıplar EA1'e atfedilecek çünkü ticareti açan o olacak ve EA2 tamamen gözden kaçacak, hesap geçmişinde adı geçmeyecek. Yalnızca üzerinde çalıştığı terminalin uzman günlüğünde.


Söz veriyorum: Suçlu EA sonunda bulunursa, tüm bunlardan muzdarip olmayan tek kişi olacak, her zaman iyi davranan tek kişi olacak, en az şüphelenilen kişi suçlu olacak.

 

bir kez, EA'mdan birinin benzer issius'u vardı, suçlu kod şuydu:

 if (Close[ 1 ]<Open[ 1 ] && Close[ 2 ] < Open[ 2 ]){
   //CLOSE ALL PROFITALBE BUYS
}

bu sadece bir kez oldu... şanslıydım ki sadece karlı işlemleri kapattım... bu yüzden EA'm 100 işlem yaptı ve olumlu oldukları anda onları kapattı.

 



Bu sorun ilk olarak Mayıs 2010'da meydana geldi ve "Callibre" adlı bir EA'yı etkiledi.

Sabah uyandım ve hesapta 4.000 dolarlık bir boşluk vardı ve Geçmiş sekmesinin yüklenmesi uzun zaman aldı.

Aracıyla konuştum ve MT4 sunucu günlüklerinin bir dökümünü aldım (ekli).

Ayrıca, işlemleri gösteren bir grafik de ektedir.

Sunucu günlükleri, açılış ve kapanış işlemlerinin aynı EA'dan geldiğiyle bağlantılıdır.

O zaman EA'yı suçladım, sorunun sadece bu EA ile olduğunu düşündüm.

*** Sunucu işlem günlüğündeki Yorumlar alanından aynı EA'nın (bu örnekte Callibre) işlemleri açtığını, ardından hemen kapattığını söyleyebilirim.

Sorun 4 ay boyunca ortadan kayboldu ve ben sadece EA olduğunu varsaydım.

Son birkaç haftadır sorun, birkaç aydır sorunsuz çalışan 4 farklı EA'da ve 2 farklı brokerda yeniden ortaya çıktı.

Bu hafta sonu MT4'ün tüm kopyalarını kaldıracağım ve onları sıfırdan yeniden kuracağım. Ayrıca Uzmanlar klasörünü temizleyeceğim ve her şeyin en son kopyasını çalıştırdığımdan emin olacağım.

Başka herhangi bir öneri takdir edildi.
 
 
peterc005 :
Sunucu işlem günlüğündeki Yorumlar alanından aynı EA'nın (bu örnekte Callibre) işlemleri açıp sonra hemen kapattığını söyleyebilirim.

Peter: Daha önce açıkladığım gibi, yorumlar alanı ticareti kimin açtığını gösterir, kimin kapattığını göstermez . Bu yanıltıcı ve sezgilere aykırı olabilir ve yanlış yerde aramanızın nedeni budur. Yorum alanı OrderSend() işlevindeki 8. parametre ile ayarlanır. İşte o zaman sipariş açılır . Bu andan sonra yorum alanı sabitlenir ve artık değiştirilemez. OrderClose() herhangi bir metin bilgisi belirtmeye izin vermez. Emir nasıl veya kim tarafından kapatılırsa kapatılsın, ya yorumunu tutacak ya da stoploss veya kar alma veya kısmi kapatma veya marj çağrısı, vb. belirtmek için [sl] veya [tp] veya birkaç başka dize ile eklenecektir.

OrderClose() tarafından kapatılan bir sipariş , orijinal yorumunu koruyacaktır . OrderClose()'u kimin aradığını bulmanın tek yolu, o sırada çalışan tüm terminallerin uzman günlüklerinde aramaktır.

Lütfen çalışan bir terminaliniz olan her makinede uzmanlar/günlükler/ klasöründe bulunabilen 4 terminalin 4 uzman günlüğünü ekleyin (bu, bu terminallerin her birinin "uzmanlar" sekmesinin günlüğüdür) kimin kim olduğunu bulmak için esnafı kapattı. EA kalibreli değil .

 

merhaba 7bit, günlükleri birazdan yükleyeceğim.

Rahatsız edici günlerin günlüklerinde fark ettiğim bir şey şu hataların çoğuydu:

00:11:16 Bellek işleyici: 160308896 bayt bellek ayıramıyor

00:11:16 HistoryBase: AddTick()'te 'EURGBP1' için yeterli bellek yok

Bir Google araması yapmak, bunun bir grafikteki çok fazla çubuktan kaynaklandığını gösterir. Daha fazla geçmiş indirebilmek için Max Bars parametresini yüksek ayarladım, ancak o zamandan beri bu ayarı düşürdüm.

Bu hataların gösterge sinyallerini bozup EA'lar için sorunlara neden olup olmadığını merak ediyorum.

Şu anda bu benim en sevdiğim teori !!!

 
peterc005 :

00:11:16 Bellek işleyici: 160308896 bayt bellek ayıramıyor

00:11:16 HistoryBase: AddTick()'te 'EURGBP1' için yeterli bellek yok


Bunun alakalı olduğuna inanmıyorum. Ayrıca OrderClose() çağrısını gerçekte kimin yaptığını da söylemez.
 
7bit :
Bunun alakalı olduğuna inanmıyorum. Ayrıca OrderClose() çağrısını gerçekte kimin yaptığını da söylemez.

Hala bellek kaynaklarının eksikliğinin bir göstergeyi bozduğundan ve işlemlerin açılıp kapanmasına neden olduğundan şüpheleniyorum. Eğer öyleyse, bunu kanıtlamak çok zor olacaktır.
 

Aşağıda, neler olduğuna dair bir örnek olan iki Günlük klasöründen alıntılar bulunmaktadır.

Bu EA, FAP Turbo LT'dir. ki yıllardır koşuyorum ve her zaman iyi davrandım.

Günlükler klasörü, MT4'ün ne yaptığını gösterir; bu, Açılır ve ardından İşlemi Kapatır, bu durumda anlaşma # 2662451

İşin garibi, Experts log dosyasında anlaşma açılır, ardından SL + TP'yi ayarlamak için değiştirilir, ancak kapatıldığını gösteren bir kayıt yoktur.

FAP Turbo sorunsuz çalışırken Uzmanlar günlüğündeki diğer kayıtlara baktım ve bu EA kesinlikle genellikle bir Kapat kaydı oluşturur, ancak bu durumda değil.

MT4'ün diğer örnekleri için bulabildiğim tüm günlük dosyalarına baktım, ancak bu anlaşmaya ilişkin başka bir referans yok.

MT4\Logs klasörü:

17:28:49 '103028': sipariş açıldı : #2662451 0.20 EURUSDFXF al 1.2909 sl: 0.0000 tp: 0.0000

17:28:49 '103028': #2662451 sırasını değiştir 1.2909 sl'den 0.20 EURUSDFXF satın al: 0.0000 tp: 0.0000 -> sl: 1.2407 tp: 1.2929

17:29:02 '103028': #2662451 siparişi kapat 1.2909 sl'den 0.20 EURUSDFXF satın al: 1.2407 tp: 1.2929 1.2906 fiyatından

17:29:02 '103028': istek sunucu tarafından kabul edildi


MT4\Experts\Logs klasörü:

17:28:48 FapTurbo50 EURUSDFXF,M5: açık #2662451 1.2909'dan 0.20 EURUSDFXF satın al tamam

17:28:49 FapTurbo50 EURUSDFXF,M5: değiştir #2662451 1.2909 sl'de 0.20 EURUSDFXF satın al: 1.2407 tp: 1.2929 tamam