MQL5 için dilekler - sayfa 63

 

C bazı programlama

IMHO eksik:

1. hata ayıklayıcı

Hata ayıklayıcı olmadan program yazmak körler için futbol oynamaya benzer

"üfleme çubuğu,

tekme kaleci,

vurmak !! sonunda topa vur

Hata ayıklamada, DİZİLERİ GENİŞLETME İMKANI, programlayanlar bunun neyle ilgili olduğunu anlayacaktır.

2. gönderiye katıl

https://forum.mql4.com/en/8536/page36
Lukyanov 04/03/2008 08:09

 Предложение по большей части к едитору. Сделать наглядное форматирование кода.


Ve MQL5 ile ilgili en son haberler nerede yayınlandı?

 
ArtemRG писал(а) >>

Test cihazına sembol özelliklerini değiştirme yeteneğinin eklenmesi arzu edilir.

Örneğin, gece ticareti için bir Uzman Danışman yapıyorum. Ancak geceleri spreadler farklıdır ve sonuç olarak gündüz yapılan test doğru değildir. Bu nedenle, formayı vb. manuel olarak ayarlayabilmeniz gerekir.

Bunu mümkün olan en kısa sürede yapmak arzu edilir. Örneğin DC A.. hafta sonu için 30'luk bir stop seviyesi bıraktı, test etmek imkansız hale geldi.

 
mscorlib >> :

Bende istiyorum. Elbette, .NET2 veya üzeri bir terminalin (yalnızca WPF'siz!) yazılması daha iyidir. Bu durumda Mono altından Linux'a da aktarabilirsiniz.

Ardından, hata ayıklayıcıyla ilgili sorun da çözüldü - MetaEditor'da buna hiç gerek kalmayacak. Strateji test cihazını bir derleme biçiminde yaparsanız, her şeyi doğrudan Visual Studio'dan ayıklayabilir ve optimize edebilirsiniz.

Ancak burada terminali MFC'den .NET'e taşıma konusunda çok iş var. Başka bir eksi - .NET ve herkesi indirmeniz gerekiyor. Ancak, bir kural olarak, bu artık bir sorun değil. Yükleyiciler en iyi şekilde ikiye ayrılır - yeniden dağıtılabilir .NET olan ve olmayan.

COM üzerinden .NET ile entegrasyon yapma seçeneği olarak - ancak bu durumda programcıları kıskanmıyorum - hem Interop'tan hem de her şeyin üzerine sarmalayıcılar oluşturmaktan sıkılıyorlar.

Ancak bu geçişin avantajları çok daha fazla. Herkes istediği gibi her şeyi genişletebilecek. Ve daha az saçma soru olacak - insanların algoritmalar hakkında sorduğu neredeyse her şey .NET3.5'te uygulanıyor.

MQL4 dili işini yaptı.

Geliştiriciler - çok teşekkürler.

Bunun gerçekleşmesi pek olası değil ... geliştiricilerin farklı bir felsefesi var ...

 
Son olarak normal bir hata analizörü yapın. Bir parantez koymayı unutursanız , çılgın bir derleyici aradığınız satır dışındaki tüm satırlarda hatalar gösterecektir. Bir yerde ";" yoksa sonra genel olarak hayat cehenneme döner, metin boyunca eksik olduğu yere bakarsınız. Genel olarak, derleyicinin verdiği mesajlar hiç mantıklı değil ve yanlış yere işaret ediyor. Bu nedenle sıcak dilekler: doğru yapın, büyük kardeşlerden gelen hata analizi modelini uygulayın - C C++ derleyicileri (örneğin, gcc veya lcc veya görsel c++)
 
Solver.it >> :

Bunun gerçekleşmesi pek olası değil ... geliştiricilerin farklı bir felsefesi var ...

Doğru!


geliştirici felsefesi! çok

elinden gelen her şeyi denedi

bir şey yaratmadan veya bir problem çözmeden önce bir sürü literatürü yeniden okuyun

--

Ben işteyken "CASSIR" - görevinin ötesinde hiçbir şey bilmeyen

program nasıl yazılır diyor - tabiki tepki vermiyorum

çünkü hemen başka bir modülle nasıl bağlanacağına ve ne kadar makul olduğuna vs. bakıyorum.

"kasiyer" farkında değil

teklifinin arkasında ne var (ki bu genel olarak makul bir gerçek değil)

veritabanı yapısını neredeyse kürek çekmem ve tüm sunucu prosedürlerini yeniden yazmam gerektiğinde bir seçenek var

 

MQL geliştiricileri sayesinde gerçekten dileklerimi de yazmak istiyorum...

1) Hata ayıklayıcı gerçekten boktan =) üzgünüm, kötü, bunu söylemesinin nedeni imleci gökyüzüne sokmayı gerçekten sevmesidir =) üzgünüm, ilk satır yorumlandı ve bana bu konuda bir hata gösteriyor ve bu oldukça sık yapılır...

2) Lütfen kodun bir blok temsilini yapın, yani. 2 seçenek var, ikisini de yapabilirsiniz =)

2.1 kimse normal programlamayı iptal etmedi, sadece kod blokları ekleyin, yani. bloktan sonra blok eklersiniz, sonucu alırsınız, yani. tam olarak oluşturulmuş bir Alış, Satış veya bekleyen emirler bloğu vb. vb. Uygulama: beyaz veya başka bir renkli sayfa üzerinde minimum sayıda blok ve operatör (bu 2.2 içindir) + uzantıların bir blok şeması vardır. Bir kişi bitmiş kodun (fonksiyonların) bloklarını blok diyagramına sürükler, ardından bitmiş dosyayı kaydeder ve alır. Örnek: Bir MA göstergesi alalım, eğer bir tane oluşturmak istiyorsanız, harika, önce standart değerlere sahip bir kod bloğu seçin ve blok şemasına ekleyin. Sayfada zaten harici ve global sabitler ve değişkenler var, ondan sonra MA kontrol bloğunu alıp yerleştiriyoruz, pozisyon açma bloğunu alıyoruz, yerleştiriyoruz, kapanışı yerleştiriyoruz .... ve benzeri

onlar. insanların programlama yaparken sürekli olarak onlarla birlikte gerçekleştirdiği tüm işlemler. Birincisi, bir yandan, tüm bu bloklar önemsizdir, diğer yandan, bir fonksiyonda veya başka bir şekilde bir kez yazabiliyorsanız neden aynı şeyi tüm insanlara 20 kez yazıyorsunuz (tüm kontrollerle veya sadece programcının eklemek istedikleri ) ve buna bağlı olarak, programlama hakkında daha az insan ve yeni bir şey geliştirme konusunda daha fazla insan olacak!

2.2 Bu yaklaşık olarak aynıdır, sadece bazı farklılıklar vardır:

Daha iyi veya hatasız yürütme için diğer operatörlerin desteğine ihtiyaç duyan operatörler var, seçildiğinde koda eklenecek bu operatörlerin bir dizi yapılması önerilir ... Bu, programların yazılmasını iyileştirecek ve , sonuç olarak, internette yayınlanan gereksiz programların sayısını azaltın (bu sadece operatörler için geçerli değildir)

Sonuç şudur: çok iyi bir temeliniz var, programcıların zaten MÜKEMMEL bir fikri var !!!! =) uygulamaya kaldı =)

İlginiz için teşekkür ederim, umarım teklifim anlaşılırdır ve uygulanmazsa en azından dikkate alınır!!! Tartışılmaz çok daha fazla avantaj olduğu için ... (Bir avantaj da buldum, programcılara soru sayısı azalacak ve bir veritabanı oluşturulursa insanlar ekleyecek ... programınızın dağıtımı muhteşem sınırlara ulaşacak, çünkü çok az programcı var, daha ziyade neredeyse her şeyi isteyen veya her şey olan insanlar =) ). Evet bu insanlar için en önemli şey programları kendileri yapmak istemeleri ama zamanlarına daha az zarar vererek ve muhtemelen her 10-50 kişi İYİ programlayamaz...

RS görsel c++ veya benzeri görsel programlama sistemlerini hesaba katmadım.(Elbette bir benzerlik var ama sadece başlangıç niteliğinde)

 

Uzun zamandır geliştiricilere sormak istiyordum!

MQL5 için bir terminal olan MQL5'in piyasaya sürülmesiyle

sunucu tarafı değişecek mi?

yani MT5, MT4 sunucuları ile çalışabilecek mi?

veya DEALINGS MT5 için sunucu bölümünü değiştirene kadar beklemeniz gerekecek

...

Bir soru daha:

bazı platformların sunucuda takip eden siparişlere izin verdiği bilinmektedir.

bir terminal bağlamaya gerek kalmadan

sunucu bölümünün bir sonraki sürümünde uygulanacak mı?

 

MetaTrader 4 ve MetaTrader 5 tamamen farklı platformlardır. Bir projenin müşteri terminalini başka bir platformun ticaret sunucusuna bağlayamazsınız.

 
YuraZ >> :

Doğru!


geliştirici felsefesi! çok

elinden gelen her şeyi denedi

bir şey yaratmadan veya bir problem çözmeden önce bir sürü literatürü yeniden okuyun

--

Ben işteyken "CASSIR" - görevinin ötesinde hiçbir şey bilmeyen

program nasıl yazılır diyor - tabiki tepki vermiyorum

çünkü hemen başka bir modülle nasıl bağlanacağına ve ne kadar makul olduğuna vs. bakıyorum.

"kasiyer" farkında değil

teklifinin arkasında ne var (ki bu genel olarak makul bir gerçek değil)

veritabanı yapısını neredeyse kürek çekmem ve tüm sunucu prosedürlerini yeniden yazmam gerektiğinde bir seçenek var

Ben... çılgınca özür dilerim... tabii ki... Ama bu yaklaşımı eleştirmek istiyorum.

.

Ne yazık ki, aptal bir KASA, her şeyden önce bir MÜŞTERİ'dir.

Ve program, programcının yazmasına uygun olacak şekilde yazılmamıştır.

Ve büyük ihtimalle geliştiricinin istediği arayüzü de destekleyebilir.

(ve nasıl bir şey isteyebiliyor ?? düğmeye her ay basmıyor) -

ve CASSIR'in istediği.

.

Ancak CASHIER, ne yazık ki programcıya bir Köprü modeli olduğunu açıklayamayacak,

en az 10 arabirimi destekleyecektir. Çünkü kod doğru.

Ve bir programcı seçemez. Ya da belki sadece ona verdiklerini alır.

.

Programlar genellikle şu şekilde yazılır - bir form - bir form düğmesinde - bir kod işleyicisinde.

Ve 10 kez neyi farklı yapacağını biliyor - bir incir çok tembel.

Ve gerekli - en azından kütüphaneler. Düşük seviye, Yüksek seviye.

Ve daha az sorun olacak.

.

İşte - Yeni Yıl onuruna tahmin edeceğim -

yeni versiyon için de diliyorum - ağacın uçup gitmesine izin vermeyin

derlemeden sonra göstergeler ve komut dosyaları listesi ile.

Veya mevcut konumu kaydederek -

veya listenin akıllı bir güncellemesiyle - birkaç saat çalışır.

.

Ne yazık ki... yoldaş Rosh saflığıma gülecek...

.

Ve tüm "geliştiricilerin felsefesi" - ve biz MT'den bahsetmiyoruz -

Bu, sağduyunun çalışmayı bıraktığı zamandır.

 

Lütfen test cihazında görselleştirmeyle ilgili iki onay kutusu daha ekleyin.

"Görselleştirme" - "Tıkla görselleştirme" onay kutusunu çağırın

Onay kutuları ekleyin - "Mumu kapatmak için görselleştirme" ve "Bir anlaşmayı açmak/kapatmak için görselleştirme"

Eh, bu anlamda bir RadioButton, küçük karga değil. Yalnızca 4 seçenek - görselleştirmeyi devre dışı bırakın ve güncelleme için üç seçenek.

Test hızı artacaktır.

Şimdi, "Görselleştirme" onay kutusu devre dışı bırakıldığında, grafiği güncellemek için fareyi grafik penceresinin üzerine getirmeniz ve alt pencerelerdeki göstergeleri güncellemek için açılır menüdeki "Yenile" düğmesine tıklamanız gerekir.

Ayrıca, test cihazındaki oklar\eğilim satırlarının siparişlerinin renklerini ayarlayın, aksi takdirde mavi satın alma satırlarını siyah bir arka planda görmek zor.

Neden: