Profesyonel bir programcı olarak bir "terminalden" ne isterim. MQL5 için dileklerle ilgili başka bir konu. - sayfa 9

 
Mathemat писал(а) >>

Olmalı, olmalı - sadece sanat adına. Kısa ve zarif bir şekilde kodlamanın tek yolunun goto olduğu durumlar vardır.

Kabul ediyorum. Bazen çok gerekli. Ancak olay işlemeye geçerseniz, ihtiyaç ortadan kalkabilir.

 
Korey писал(а) >>

büyükbabaya

1. Avatarına bakıyorum, - Bir denizcininki gibi bir sandık görüyorum, + "Dede" lakabını, - evet, bir gemi tamircisi anlamına geliyor. Özellikle kürkün başları takas ticaretine girdi.
2. Forumdaki "küfür" seviyesi kabul edilebilir, ticaret bencilliktir, bencillik olmadan ticaret yapmanın bir yolu yoktur)))
onlar. burada sık sık ve çok küçük durumlarda küfür edin.
3. Şahsen küfür etmek isteyip istemediğinize ama çok küfüre girdiniz, özellikle MQL-4'ten beri dil ve ortam olarak hala aynı =)))
öyle olur ki "dört harfli operatör" için utandırmaya katılırsınız.
ve ayrıca ilk kişilerin - MQL'nin Yaratıcılarının - derin düşüncelerini anlamamak için utanç var)))
- Delikli ortamlarda delikli deliklerin ne şekilde olduğunu hatırlarsanız, MQL ve MT-4'ün fiyatını yakında anlayacaksınız.
4. goto biber yardımı ile memeden koparılır gibi ve ihtiyatsızlıkta ayıp olarak yani. sözde zihinsel sefalet ve utanç.
kanıt için bu konuya göz atın.
= programcılardan goto operatörünü aldı, sözde şimdi atlamalarına izin verdi.
5.
Ancak konuyla ilgili:
utanç verici goto sözcüğü atlanabilir, ancak utanç verici sözcük goto'nun kendisi ve onun utanç verici sözcüğü goto operatörü OLMALIDIR

Sayın,

1. Avatar, Alpari forumundan eskidir. Ve deniz hemen yanımda, ofisten görebilirsiniz. :-)

2. Konuyu inceledim, gerçekten kimseyi ekmekle beslemeyin, bırakın tartışayım.

3. Delikli kartları ve bantları hatırlıyorum, ama orada ne var, çalışan bir tüp bilgisayar bile buldum. :-)

4.5. Aslında, GOTO (atlama) herhangi bir program kontrolünün temelidir. Ve bütün sorun onun sistematik olmayan kullanımıdır.

Yeterli bir programcı buna takılıp kalmaz ve GOTO ifadesini gerektiği yere sakince yazar. Ve eğer dilde değilse - önemli değil.

Ama olduğu gibi bırakmak daha iyidir, yemek istemez ve bazen buna ihtiyacı olabilir. Ve pislikler, onun nesi var, onsuz da böyle bir şey yapabilirler, "anne, merak etme."

Ancak konuyla ilgili:

Dilin prosedürel yeteneklerine değinmeyeceğim, ancak çok sayıda siparişle (aslında tablolar) çalışırken, bunun gibi yerleşik bir şeye sahip olmak ilginç olurdu:

SİLMEK *
Ticaretten
NEREDE(SiparişTürü = OP_BUYLIMIT);

veya

SEÇME *
Tarihten
NEREDE ((OrderMagicNumber=2135) VE
(SiparişAçılma Zamanı > #1/1/2009#));

MQL5'teki yapıların vaat ettiği göz önüne alındığında, standart tamponda istenen sipariş alt kümesine sahip olmak ve daha sonra bunları prosedürel olarak işlemek mümkün olacaktır.

Az önce, temel bilgilerde matrisleri nasıl çoğalttıklarını (döngü içinde döngü içinde döngü, vb.), tüm Geçmişi tembelce satır satır küreklediklerini hatırladım.

 

bir şekilde goto olup olmaması umurumda değil, çünkü önemli değil ve muhtemelen eklemeyecekler, aksi takdirde forum solacak ..

ve gerisi zaten açık - kimin kazanabileceği, neye sahip olduğu, gözleri için yeterli, kim satmak istiyor, elbette, daha yuish baubles istiyorum,

analistler - kapasiteler ve MT'yi herhangi bir şeyle genişletme ve işbirliği yapma imkanı istiyorlar ..

 

Profesyonel çalışma, öğrenci çalışmasından farklı olmalıdır ve aşağıdakiler MQL4'ü buna yaklaştırmaktadır:

1. "MQL4'te teknik analiz" belgesi, terminalin "Göstergeler" bölümünde bulunmayan göstergelerin, örneğin ZZ'nin açıklamalarını verir.

2. Göstergeleri tanımlarken "MQL4'te Teknik Analiz" belgesi, kaynak kodunu içerdiği iddia edilen Kod Tabanına atıfta bulunur - bu doğru değildir. Bolinger Bantları "Göstergeler" bölümündeyse, " Özel göstergeler " bölümündedir (Bantlar değil) ve içlerindeki parametreler double yerine int değil aynı olmalıdır.

3. Kod Tabanı, okuma yazma bilmeyen kişiler tarafından ve genellikle hata ayıklama olmadan veya hatalarla yazılmış büyük miktarda kod içerir, ancak genellikle MetaQuotes'un yazarı tarafından belirtilir. Kod Tabanı bölümlere ayrılmalıdır:

MetaQuotes'un sorumlu olduğu kod (muhtemelen MetaQuotes tarafından yazılmamış), (hataları tavsiye eder ve düzeltir);

üçüncü şahıslar tarafından yazılmış, ancak yorum içeren kod (Moderatör) MetaQuotes;

Tüm kalan.

Her halükarda, MetaQuotes makaleler konusunda, mevcut haliyle bir çöp yığını olan Kod Tabanı hakkında olduğundan daha titizdir.

4. "Göstergeler" bölümündeki tüm göstergelerin, ilgili yazarlar tarafından önerilen algoritmalara sahip olduğu garanti edilmelidir. Bu algoritma farklıysa, uygun açıklamalar gereklidir ve göstergeye büyük bir isim demek uygun değildir.

5. Gösterge algoritmalarının bazı eski ve daha yaygın sistemlerle örtüşmesi oldukça arzu edilir. Metastock, ilgili göstergelerin geliştiricileri gelişiminde yer aldığından, analiz sistemleri arasında özel bir yere sahiptir.

6. MetaQuotes tarafından geliştirilen göstergelerin sayısı makul bir düzeye genişletilmeli ve önceki açıklama dikkate alınarak Metastock'un sayısına ve listesine karşılık gelmelidir.

7. Her gösterge için, grafiğin tamamını veya bir kısmını değil, sadece gerekli kısmını yeniden hesaplayacak olan karşılık gelen bir "fonksiyon" yazılmalıdır. Bu, zaman testini ciddi şekilde basitleştirmelidir.

8. Tüm göstergeler ve işlevler açık kaynak olmalıdır.

9. Uzman Danışmanlara ve Komut Dosyalarına ek olarak, yaklaşan ticaret oturumu için bir çift seçmek üzere test modunda belirli bir döviz çiftleri ve zaman dilimlerini analiz etmenize olanak tanıyan bir Gezgine (Metastock'taki analog) da ihtiyacınız vardır. .

 

1. Şimdi, ZigZag'ın neden terminale yerleştirilmiş standart teknik göstergeler listesine dahil edilmediğini söylemek zor. Belki de yorumların çeşitliliği nedeniyle. Ama artık terminalde kullanabileceğiniz veya MQL4'te kendinizinkini yazabileceğiniz birçok farklı zikzak var.

2. Böyle bir şey var - özel ve standart Bollinger Bantları göstergesindeki sapma parametresinin farklı bir türü var. Bu, MetaTrader 5'te düzeltildi. Bu an dışında, kesinlikle tüm göstergeler MQL4'te kaynak kodları ile temsil edilmektedir.

3. MetaQuotes adına Kod tabanındaki göstergeler hata ayıklanmış ve hatasız olmalıdır. Bir hata bulursanız, lütfen bildirin.

4. Algoritmanın tam benzersizliğini garanti etmek zordur, göstergelerin çoğu çok benzerdir.

5. Algoritmalar insanlar tarafından yazılır, hiçbir şey sabit kalmaz ve algoritmaların çoğu bir kerede Metastock'a karşı kontrol edilmiştir.

6. Bu birincil görev değildir, MetaQuotes Software corp. MQL4 dilinde hemen hemen her karmaşıklık düzeyine ilişkin kendi göstergelerinizi yazma fırsatı sağladı. Bize göre bu, birkaç yüz göstergeyi terminale yerleştirmekten daha önemlidir.

7. MQL4'te bu böyledir, kodda göstergeyi hesaplama sürecini tamamen kendiniz kontrol edersiniz.

8. Kod tabanında yalnızca açık kodlar yayınlanır ve bu, bunları doğrudan MetaEditor'dan indirmenize olanak tanır.

9. Bu tamamen açık değildir.

 
Rosh писал(а) >>

1. Şimdi, ZigZag'ın neden terminale yerleştirilmiş standart teknik göstergeler listesine dahil edilmediğini söylemek zor. Belki de yorumların çeşitliliği nedeniyle. Ama artık terminalde kullanabileceğiniz veya MQL4'te kendinizinkini yazabileceğiniz birçok farklı zikzak var.

2. Böyle bir şey var - özel ve standart Bollinger Bantları göstergesindeki sapma parametresinin farklı bir türü var. Bu, MetaTrader 5'te düzeltildi. Bu an dışında, kesinlikle tüm göstergeler MQL4'te kaynak kodları ile temsil edilmektedir.

3. MetaQuotes adına Kod tabanındaki göstergeler hata ayıklanmış ve hatasız olmalıdır. Bir hata bulursanız, lütfen bildirin.

4. Algoritmanın tam benzersizliğini garanti etmek zordur, göstergelerin çoğu çok benzerdir.

5. Algoritmalar insanlar tarafından yazılır, hiçbir şey sabit kalmaz ve algoritmaların çoğu bir kerede Metastock'a karşı kontrol edilmiştir.

6. Bu birincil bir görev değildir, MetaQuotes Software corp. MQL4 dilinde hemen hemen her karmaşıklık düzeyine ilişkin kendi göstergelerinizi yazma fırsatı sağladı. Bize göre bu, birkaç yüz göstergeyi terminale yerleştirmekten daha önemlidir.

7. MQL4'te bu böyledir, kodda göstergeyi hesaplama sürecini tamamen kendiniz kontrol edersiniz.

8. Kod tabanında yalnızca açık kodlar yayınlanır ve bu, bunları doğrudan MetaEditor'dan indirmenize olanak tanır.

9. Bu tamamen açık değildir.

Cevabınızı kabul edemem, çünkü bu daha çok büyük bir memurun can sıkıcı bir vatandaşa verdiği yanıta benziyor, ancak hiçbir şey talep etmiyor veya talep etmiyorum - sadece kamu yararı için çalışıyorum. Puanlar.

1. ZZ Metastock'ta mevcut ve algoritması daha iyi (bence). Bir standart olduğunda çeşitliliğin geri kalanı iyidir. ZZ'ye ek olarak, ADX'i bulamadım ve mevcut olan çeşitli ADX'in yine başka algoritmaları ve buna bağlı olarak başka çizelgeleri var, örneğin ADX_Rosh.

2. Sağlanan bağlantı sadece bir örnektir. Ve bu fark tek değil. Örneğin, tüm özel göstergeler uygulanan _ fiyat ” parametresine sahip değildir, ancak açıklamaya göre olması gereken göstergelerde mevcuttur.

Bu Hızlandırıcı için bir dönem parametresi yoktur. Anladığım kadarıyla bunu kimse doğrulamadı ve MQ'nun kaynak kodunu sağlamadığı tezim bununla kanıtlandı.

3. Bu madde hakkında görüşünüzü almadı.

4. Mesleki gelişim, öğrenci gelişiminden farklıdır, çünkü yazarın dünyaca ünlü algoritmaları garantilidir - açıklamanızı kabul edemem.

5. Metastock esas alındıysa nasıl bir ilerlemeden bahsediyoruz? Metastock'ta gösterge algoritmaları değişmez.

6. Yazık, belki anlaşılmadı. Birkaç yüz gösterge geliştirmekten bahsetmiyorum. Metastock'ta yüzlerce var, ancak başka bir şey daha önemli - bu, ticaret sistemleri oluşturmak için işlevsel olarak eksiksiz bir gösterge setidir. Piyasanın özelliklerine göre göstergenin daha makul bir sınıflandırması vardır. Örneğin, oynaklık göstergeleri. Ve osilatör neyi ortaya koyuyor, piyasanın bu özelliği nedir? Williams'ın ticaret sistemi gösterge olarak verilmiştir. Bu harika, ancak bu ayrı bir bölüm ve göstergelerle ilgili olmamalıdır, çünkü. bu bir ticaret sistemidir (Metastock'ta bu ayrı bir alt bölümdür), bunların birçoğu olabilir.

7. Gösterge kodunda hiçbir şeyi kontrol etmiyorum. 0, 1, 2 gösterge değerlerini elde etmek için üç kez aramak gerekir, çünkü gösterge arabelleği benim için mevcut değil. Forum, gösterge metninin Uzman Danışman metnine aktarılması konusundaki önerileriyle bu zorluğu yansıtmaktadır.

8. Gösterge kodu .mqh'ye dahil edilemez, ek çabalara ve en önemlisi kalifikasyona ihtiyaç vardır.

9. Bu, birkaç döviz çiftini ve / veya danışmanı test etmenin sonuçlarını bir araya getirecek bir test modudur - bu Metastock'ta mevcuttur.

Dokuz noktanın ardındaki ana fikrim yine kayboluyor: Kod Tabanının "Metaquots" damgasının yerleştirildiği kısmı profesyonel düzeyde gerçekleştirilmelidir. Ve Kod Tabanına "açık kaynak" dersek, bu kodun profesyonelce tasarlanmış ve profesyonelce yazılmış olması gerekir.

Bir açık kaynak göstergesinin "Dil Açıklaması" ve "Teknik Analiz" gibi bir açıklaması olmalıdır, ancak başvurulan kodla tam olarak eşleşmelidir.

Ek olarak, göstergenin kendisinin kaynak metni şunları içermelidir:

- giriş parametrelerinin açıklaması

- çıkış parametrelerinin açıklaması

- algoritmanın ayrıntılı yorumu

- belki programın diğer bölümleri hakkında bir yorum

- maksimum Mq4 olasılıklarına kadar gösterge tamponlarının tasarımı.

- Geçerlilik için gösterge giriş parametrelerinin kontrol edilmesi zorunludur (hiç hatırlayamıyorum)

- yakın değerleri karşılaştırırken doğruluk kaybı problemlerini çözme

Metatrader'ı geliştirme arzusu dışında, yukarıdaki metnin arkasında hiçbir şey yoktur.

 

Mümkünse Expert Advisor'ları geliştirmenin ve içindeki parantezleri saymanın rahatlığı için ME-5'e bir fonksiyon ekleyin, böylece şekildeki gibi farklı renklerde etiketler koyabilirsiniz.

Bunu, danışmanın ekran görüntüsünü Paint'te kopyalayarak ve şekildeki bir örnek olan renkli işaretler ve farklı şekiller koyarak manuel olarak kullanıyorum:

 
Night_Sun писал(а) >>

Mümkünse Expert Advisor'ları geliştirmenin ve içindeki parantezleri saymanın rahatlığı için ME-5'e bir fonksiyon ekleyin, böylece şekildeki gibi farklı renklerde etiketler koyabilirsiniz.

Bunu, danışmanın ekran görüntüsünü Paint'te kopyalayarak ve şekildeki bir örnek olan renkli işaretler ve farklı şekiller koyarak manuel olarak kullanıyorum:

O zaman NotePad++ size yardımcı olacaktır. Ve kopyalamak zorunda değilsin. Ve ilgili parantezler vurgulanır http://notepad-plus.sourceforge.net/ru/site.htm

Neden: