Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 674
![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Print() kullanarak test cihazının günlüğüne bir şey yazdıramıyorum. Ve bunu nasıl yaparsın?
İşte EA'dan OnInit() kodu:
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ()
{
SymbolSelect ( "EURJPY" , true );
Print ( __FUNCTION__ , ", " , TimeToString ( TimeCurrent ()));
SymbolSelect ( "USDJPY" , true );
//---
return ( INIT_SUCCEEDED );
}
Sonra bir kesme noktası belirledim (1. adım) ve geriye dönük teste başladım (2. adım):
ve test cihazında sonucu alıyorum:
Vladimir Karputov :
Sonra bir kesme noktası belirledim (1. adım) ve geriye dönük teste başladım (2. adım):
İstemci terminalinin strateji test cihazında bazı işlevlerin çalışmasına ilişkin kısıtlamalar vardır.
Print() ve PrintFormat() Fonksiyonları
Performansı artırmak için, EA parametrelerini optimize ederken Print() ve PrintFormat() işlevleri yürütülmez. Bunun istisnası, bu işlevlerin OnInit() işleyicisi içinde kullanılmasıdır. Bu, ortaya çıktıklarında hataların nedenlerini bulmayı kolaylaştırır.
O zaman OnInit() işleyicisinin içindeki Print() işlevi neden her zamanki gibi çalışmıyor?
Ve genel olarak, optimizasyon modunda init () içindeki diğer kullanıcı tanımlı işlevler hakkında?Garip ama benim için "2" rakamıyla belirttiğiniz bu mavi buton aktif değil. MT4'te olduğum için olabilir mi?
Evet, bu yüzden TARİH üzerine herhangi bir Uzman Danışmanı özgürce test edebilirim, yani 2016.06.20'den 2016.11.11'e kadar bir dönem seçin ve sakince, adım adım hata ayıklayın, değişkenlerin değişimini gözlemleyin, ancak yapamazsınız. Bugün nasılsın.
Peki artık desteklenmeyen eski terminalde oturmaya devam etmeye değer mi? Veya belki de zaten modern MetaTrader 5 terminalini kullanmalısınız? Sonuçta, riskten korunma MetaTrader 5'te zaten ortaya çıktı: MetaTrader 5 işlem platformu riskten korunma aldı .
Evet, bu yüzden TARİH üzerine herhangi bir Uzman Danışmanı özgürce test edebilirim, yani 2016.06.20 ile 2016.11.11 arasında bir dönem seçebilir ve sakince, adım adım hata ayıklayabilir, değişkenlerin değişimini gözlemleyemezsiniz, ancak yapamazsınız . bunu yap .
Peki artık desteklenmeyen eski terminalde oturmaya devam etmeye değer mi? Veya belki de zaten modern MetaTrader 5 terminalini kullanmalısınız? Sonuçta, riskten korunma MetaTrader 5'te zaten ortaya çıktı: MetaTrader 5 işlem platformu riskten korunma aldı .
Neden MT4'te sakince hata ayıklayabilirim ve sakince, adım adım hata ayıklayabilir, değişkenlerin değişimini gözlemleyebilirim? Neyi yanlış yapıyorum?
Temel soru:
OnInit() işleyicisinin içindeki Print() işlevi neden her zamanki gibi çalışmıyor? Ve genel olarak, optimizasyon modunda init() içindeki diğer kullanıcı tanımlı işlevler ne olacak?
Sayın!!!!
Temel soru:
OnInit() işleyicisinin içindeki Print() işlevi neden her zamanki gibi çalışmıyor? Ve genel olarak, optimizasyon modunda init() içindeki diğer kullanıcı tanımlı işlevler ne olacak?
Her şey yukarıda zaten açıklanmıştır. Çalıştı ve çalışıyor. Ve sana bir örnek verdi.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Yeni Başlayanlardan Sorular
Vladimir Karputov , 2016.11.23 12:07
İşte EA'dan OnInit() kodu:
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ()
{
SymbolSelect ( "EURJPY" , true );
Print ( __FUNCTION__ , ", " , TimeToString ( TimeCurrent ()));
SymbolSelect ( "USDJPY" , true );
//---
return ( INIT_SUCCEEDED );
}
Sonra bir kesme noktası belirledim (1. adım) ve geriye dönük teste başladım (2. adım):
ve test cihazında sonucu alıyorum:
Her şey zaten yukarıda açıklanmıştır. Çalıştı ve çalışıyor. Ve sana bir örnek verdi.
Tekrarlıyorum:
1. OnInit() işleyicisinin içindeki Print() işlevi neden her zamanki gibi çalışmıyor?
2. Diğer kullanıcı tanımlı işlevler, optimizasyon modunda init()'te nasıl çalışır?
Vladimir, bir kesme noktası olan örneğinizde ve terminaldeki test cihazından değil MetaEditor'dan teste başlamak standart değildir.
Tekrarlıyorum:
1. OnInit() işleyicisinin içindeki Print() işlevi neden her zamanki gibi çalışmıyor?
2. Diğer kullanıcı tanımlı işlevler, optimizasyon modunda init()'te nasıl çalışır?
Görünüşe göre terminali hiç açmamışsınız.
İşte EA'dan OnInit() kodu:
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ()
{
SymbolSelect ( "EURJPY" , true );
Print ( __FUNCTION__ , ", " , TimeToString ( TimeCurrent ()));
SymbolSelect ( "USDJPY" , true );
//---
return ( INIT_SUCCEEDED );
}
Adım adım. Birinci adım - test cihazını görselleştirme ile geriye dönük test yaparak terminalden (tek geçiş) çalıştırın:
Strateji test cihazında aşağıdaki sonucu alıyoruz: