Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 391

 
smetantn1980 :
merhaba, bana meta düzenleyicimde hata ayıklama düğmelerinin neden etkin olmadığını söyle ???? kaynak eklendi
Nerede kaydedilir? Hata ayıklamanın mümkün olması için kodun tempoda bir yerde değil, veri dizininde saklanması gerekir.
 
Vitalie Postolache :
Büyük olasılıkla, bahsedilen işlevler kullanıcı tanımlıdır ve ME'nin bunları bilmesine gerek yoktur. Onları doğru bir şekilde beyan etmeli ve çağırmalısınız.
Fonksiyonlar özel değildir. Cevap, sakıncası yoksa, MT4 terminalinde hangi dilde yazılım yazılacağı sorusu?
 
Kira27 :
Fonksiyonlar özel değildir. Cevap, sakıncası yoksa, MT4 terminalinde hangi dilde yazılım yazılacağı sorusu?
Geliştiriciler artık terminaller arasındaki farkları en aza indirmeye çalışıyor. Ancak, farklılıklar vardır ve MQL5'teki bazı işlevler MQL4'te düzgün çalışmayabilir. MQL4'te ve sadece üzerinde MT4 terminali için "yazılım" yazmanız gerekir. Sadece artık MQL5'e çok benziyor. Dil yardımına bakın.
 

Vitalie Postolache :
А где он сохранён? Чтобы отладка была возможна, код должен быть сохранён в каталоге данных, а не где-то в темпе.

danışman program dizininde her zamanki gibi uzman klasöründe bulunur ve çizelgede durur

 
Kira27 :
Fonksiyonlar özel değildir. Cevap, sakıncası yoksa, MT4 terminalinde hangi dilde yazılım yazılacağı sorusu?

Evet, özel işlevler değil, bunlar MQL5'in işlevleridir. MQL4 için başkalarını aramanız veya benzerlerini yazmanız gerekir, ancak zaten özel olanları.

Örneğin, OrderGetTicket() MQL5 -> OrdetTicket() MQL4.

 
hepinize teşekkür ederim, bu danışmanı terminalden açmadım, bu yüzden hata ayıklama aktif değildi
 
bana danışmana nasıl kaydolacağımı söyle, böylece ekran köyler ve satın almalar için partilerin toplam hacmini göstersin
 

Merhaba!

Yeni başlayanlardan birkaç soru.

1. Mql4 ve Mql5 arasındaki fark (web sitesi ve gerçek programlama dili). Sırasıyla yerleşik Mql4 ve Mql5 ile Metatrade 4 ve Metatrader 5 vardır. Ayrıca iki farklı ilgili site var. Aynı zamanda, MT4'te baktığım tüm uzmanlar bu siteye yönlendiriyor. Hangisi daha alakalı? Hangi forum "canlı"? Soru yazmak için en iyi yer neresidir? MT ve Mql'nin farklı sürümleri arasında geriye dönük uyumluluk? Şu anda sırasıyla Mql4 üzerinde MT4'te bir Uzman Danışman yazıyorum. Bunun nedeni, test için demoyu kullandığım komisyoncunun MT4 kullanmasıdır. Expert Advisor'ın yazıldığı dil nasıl belirlenir? Sadece uzantı (.mq4 ve .mq5) ile kastediyorum. Ve dosya yeniden adlandırılırsa, derlenir mi (yine, bu uyumlulukla ilgili)?

2. Expert Advisor'ın dinamik harici parametreleri. EA'nın özelleştirilebilir parametrelerini bir şekilde dinamik olarak değiştirmek mümkün mü? Açıklayayım... Örneğin, harici bir bool a parametresi var. Doğruysa, ek bir extern int b parametresi yapılandırmanız gerekir. a=yanlış ise, b'ye gerek yoktur. Seçilen akım değerine bağlı olarak bir şekilde görüntülemek/göstermemek mümkün mü? Dış parametreleri değiştirmek için işleyiciler bulamadığım ve #if .. #endif gibi bir yapı olmadığı göz önüne alındığında, bunun yapılamayacağından şüpheleniyorum ... Eğer öyleyse, ama bana bu durumda en iyi nasıl devam edeceğimi söyleme işlemin dış ayarlarını aşırı yüklememek için? Örneğin, a=false ayarlayabilirsiniz, bu durumda b parametresinin kullanılmadığını unutun, ancak yine de optimizasyona dahil edin (bu mantıklı olmasa da, yalnızca fazladan zaman harcar). Ve b parametresinin sadece bir tane olması bir şeydir. Ve örneğin, harici bir parametre numaralandırması yaparsam ve araç için birkaç açılır seçenek varsa. Ortak bir yanları vardır (çünkü bunları birkaç tane yazmak yerine tek bir Uzman Danışman içinde uygulamak mantıklıdır), ancak birçok farklı parametreye sahip farklı olanlar da vardır. Ardından, seçilen araç için hangi parametrelerin alakalı olduğu konusunda kafa karıştırmak çok kolaydır.

3. Uzmanın otomatik optimizasyonu. IMHO, çok uygun ve gerekli bir şey. Bu makaleyi burada buldum. Ama orada, anladığım kadarıyla, dışarıdan (çalışan bir MT örneğinden) optimizasyon için başlatılan ikinci bir MT örneği kullanılıyor ve optimizasyon sonuçları rapordan html biçiminde okunuyor. Çok kullanışlı ve eğri değil. Mantıksal olarak, optimizasyon için kendi işlevinizi/dll'nizi yazmanız ve doğrudan Expert Advisor'dan çalıştırmanız gerekir. Yani asıl soru burada. Anladığım kadarıyla, MT'nin kendisinde, strateji test cihazında bir genetik optimizasyon algoritması programlanmıştır. Bu algoritmalar hakkında çok az şey biliyorum. Ancak teoride uzun süredir biliniyorlar, bu nedenle soru - tekerleği neden yeniden icat ettiler?) Doğrudan MT'de kullanılan hazır bir algoritma var mı? Belki de zaten terminalin kütüphanelerinde bir yerdedir ... Belki ayrı kaynaklar veya hazır bir dll vardır. Genel olarak, lütfen bu konudaki deneyiminizi paylaşın.

Buraya kadar her şey öyle görünüyor...) Umarım harf sayısı konusunda çok zorlanmamışımdır.)

Cevaplarınız için şimdiden hepinize teşekkür ederim!

Автоматическая оптимизация торгового робота в процессе реальной торговли
Автоматическая оптимизация торгового робота в процессе реальной торговли
  • 2007.04.16
  • Igor Malcev
  • www.mql5.com
В статье описана и представлена библиотека функций, позволяющая проводить оптимизацию входных параметров советника, запуская оптимизацию непосредственно из советника.
 
smetantn1980 :
bana danışmana nasıl kaydolacağımı söyle, böylece ekran köyler ve satın almalar için partilerin toplam hacmini göstersin
Terminaldeki toplam emir sayısını alırsınız, tüm emirleri sıralarsınız (bence bu bir mql4 sorusudur), koşulları karşılayanları seçin (sembol, büyü ve tür), bunları sat ve satın almak için değişkenler halinde toplayın. Ardından, iki OBJ_LABEL nesnesi oluşturun (bunun gibi). Konumlarını, renklerini ve diğer özelliklerini ayarlayın (belgelere bakın). Bu nesnelerin açıklamasını sat ve al değişkenlerinde alınan değerlerle değiştirin. Herşey.
 
smetantn1980 :
bana danışmana nasıl kaydolacağımı söyle, böylece ekran köylere ve satın almalara göre partilerin toplam hacmini göstersin

Tam olarak emin değilim çünkü ben de hala acemiyim. Ancak , EA grafiğinin sol üst köşesinde herhangi bir bilgiyi görüntüleyen bir Yorum komutu var gibi görünüyor. Eh, lotların hacmi yaklaşık olarak aşağıdaki döngüde hesaplanabilir:

int totalOrders = OrdersTotal();

double totalLots = 0; 

for(int i=0; i<totalOrders; i++)

    if ( (OrderSelect(i, SELECT_BY_POS)) && (OrderMagicNumber() == myMagicNumber) )

        totalLots += OrderLots();

Comment("totalLots=", totalLots); 

Bu, tüm işlemler için ortak bir koddur. Ayrı ayrı satın almak ve satmak için ayrı değişkenler oluşturun ve OrderType() üzerinde bir geçiş yapın

Neden: