Merhaba, hala parti konusunda, burada düşündüğüm bir komut dosyası denedim ama strateji testi yanlış parti boyutunda bir hata veriyor. Geçmiş verilerinin bazı işlevleri veya neyi desteklemediğini bilmiyorum. Komut dosyası sadece EURUSD içindir. Neyi yanlış yapıyorum yoksa bir strateji test cihazı sorunu mu?
extern int LotPercentage= 10 ; // use 10% of balance as lot size double LotInBalance=(LotPercentage/ 100 )* AccountBalance (); // find the amount that is 10% of balance lets assume its $1000 double LotUnits=LotBalance* AccountLeverage (); // multiply this 10% balance($100) by leverage to get lot units double lots= NormalizeDouble ((LotUnits/ 100000 ), 2 ); // expected to return 0.1 /* divide this lot units by 100,000(standard lot size units) and normalize to 2 decimal places to get something like 0.1 if account balance is say $1000*/
Yardıma ihtiyacın yok, zaten bir yardımın var ( https://www.mql5.com/en/forum/140034 ) !. Yine de batırıyorsun!
Merhaba, aldığım kod "sıfır bölme" hatası veriyor ve diğeri büyük ve denenmemiş
Evet, sadece kodumda neyi yanlış yaptığımı soruyorum. Ben de kodu test ediyorum ama SL ile betiğin yapmasını istemediğim bir şey yapıyor gibi görünüyor
double Balance= AccountBalance (); if (Balance<= 500 ){lots= 0.1 ;} if (Balance< 1500 &&Balance> 1000 ){lots= 0.3 ;} if (Balance< 2500 &&Balance> 2000 ){lots= 0.5 ;} if (Balance< 3500 &&Balance> 3000 ){lots= 0.7 ;} if (Balance< 4500 &&Balance> 4000 ){lots= 0.9 ;} if (Balance< 5500 &&Balance> 5000 ){lots= 1.1 ;} if (Balance< 6500 &&Balance> 6000 ){lots= 1.3 ;} if (Balance< 7500 &&Balance> 7000 ){lots= 1.5 ;} if (Balance< 8500 &&Balance> 8000 ){lots= 1.7 ;} if (Balance< 9500 &&Balance> 9000 ){lots= 1.9 ;} if (Balance> 10000 ){lots= 2 ;}
Merhaba ben de bunu denedim ama yukarıdakiyle aynı hatayı verdi belki AccountBalance() ve AccountFreeMargin() strateji test cihazında çalışmıyor burada kod çünkü testte 3000$'lık bir bakiyeyle başlıyorum ama 4051 geçersiz lot miktarı hatası vermeye devam ediyor . Ve 3000$'ım olup olmadığını sorabilirsem AccountBalance()'ın değeri 3000 veya başka bir şey olur. rahatsız ediyorsam özür dilerim.
Ah hayatım,
Bu hatayı alıyorsunuz, çünkü ...o kadar lotu açmanın maliyetini hesaplamadınız. Diğer konunuzu okuyun https://www.mql5.com/en/forum/140034 ve https://www.mql5.com/en/forum/140034/page2#649957
nasıl düzeltirim ve AccountBalance() ne döndürür, değeri $ veya diğer birimlerde olur.
Hesap para biriminizde iade edilir. Buraya ekte verdim https://www.mql5.com/en/forum/140034
Bunu nasıl düzeltirsiniz lot hesaplamasını bunun gibi doğru kullanın https://www.mql5.com/en/forum/140034
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Merhaba, hala parti konusunda, burada düşündüğüm bir komut dosyası denedim ama strateji testi yanlış parti boyutunda bir hata veriyor. Geçmiş verilerinin bazı işlevleri veya neyi desteklemediğini bilmiyorum. Komut dosyası sadece EURUSD içindir. Neyi yanlış yapıyorum yoksa bu bir strateji test cihazı sorunu mu?