2030'da Metatrader X'i nasıl görüyorsunuz? - sayfa 2

 
Igor Makanu :
...

farklı çizelgelerde çalışan danışmanlar arasında veri alışverişi yapmanın bir yolu olacak

Zaten uyguladım ve işe yarıyor. Çoklu kalıtımın ne olduğunu anlayan herkes bunu yapabilmelidir. Aksi takdirde, bilgisi değersizdir.))

 
Igor Makanu :

Terminalin global değişkenlerine bir bayt dizisi göndermenize izin verecek herhangi bir normal işlev (bir int dizisi daha iyidir, böylece nasıl dönüştürüleceği hakkında daha az soru olur) ve buna göre buna izin verecek bir ters işlev dizi başka bir Uzman Danışmanda okunacak

Sadece uçbirimin global değişkenleri veri alışverişi için yeterli değil - büyük bir değişken isim alanı ve veriler için küçük bir tane var, bir double şeklinde, buna tam tersi ihtiyacınız var ;)

Not: Karar grafiklerini ayrıştırma netinde birçok örnek var, esas olarak esnek bir kod yapısı elde ettikleri arayüzler nedeniyle, MQL'de değil her yerde arayüzler var ((

Burada tamamen katılıyorum. Terminal global değişkenleri perişan. Yalnızca dizileri değil, WCF'de olduğu gibi sınıf örneklerini kaydedin. Bir keresinde, bu fırsat karşısında şok oldum. Ağ üzerinden bir bayt akışını otlatmak yerine, gereksiz hareketler olmadan sınıfın bir örneğini gönderebilirdim ve .NET, ikili olarak gönderilirse tüm kirli işleri benim için ve hızlı bir şekilde yaptı.

Hmm, Claudia'ya baskı yaparken, böyle bir kitap yapma fikri ortaya çıktı...

---

Henüz karar grafikleri ve arayüzlerle karşılaşmadım, programlama dünyası çok geniş))

 
Реter Konow :

Zaten uyguladım ve işe yarıyor. Çoklu kalıtımın ne olduğunu anlayan herkes bunu yapabilmelidir. Aksi takdirde, bilgisi değersizdir.))

Hem de ucuz gösterişler olmadan ve iş için mi?

 
Реter Konow :

Zaten uyguladım ve işe yarıyor.

ve?

KB'de uzun süredir hazır çözümler var, çözümünüzü de eklediniz mi? ya da öylesine ... geçti?

 
Igor Makanu :

ve?

KB'de uzun süredir hazır çözümler var, çözümünüzü de eklediniz mi? ya da öylesine ... geçti?

çoklu kalıtımın sözüne bakılırsa, boş ...

 
Alexey Volchanskiy :

ancak WCF'de olduğu gibi, sınıf örnekleri

karmaşık bir çözüm imkansız, toplu karakter olmayacak, herkes bir dizi okuyabilir ve yazabilir, daha karmaşık bir şey varsa, veri alışverişi çözümleri için yukarıdaki KB'de düzgün bir şekilde yazdığım gibi, talep edilmeyecektir, ancak IMHO, GlobalArrayWrite(string name, int out[]) ve GlobalArrayRead (string name , int &in[]) - işte bu kadar, artık kullanıcı için gerekli değil

 
Alexey Volchanskiy :

Ve gösteriş olmadan ve iş için?

Kaynaklar. Farklı çizelgelere yerleştirmek istediğiniz her iki EA'da (veya göstergeler veya bir EA ve bir gösterge) çeşitli türlerde dizilerle bir birlik ilan edersiniz. Her programda, karşı tarafın adresini bir dizge değişkenine (klasör, alt klasör, program adı) yazın. İletişim için iki işlev kullanıyorsunuz - ilk işlev mesajı okumak, ikincisi ise mesajı yazmak. Fonksiyonlar her iki programda da zamanlayıcının frekansında çağrılır.

Programların her birinin işlevselliği, bir dizi değişkene aktarılması gereken tüm verileri kaydetmelidir. Ardından, zamanlayıcı işlevinin sonunda, toplanan dizeyi kaynakta saklayacak olan ileti aktarma işlevi çağrılır . Başka bir çizelgedeki başka bir program, bir sonraki zamanlayıcı periyodunda, başka bir programın adresinde bulunan kaynağı okuma işlevini çağıracak ve mesajın paketini açacaktır. Ayrıca, ilk programa mesajını aynı şekilde oluşturup, sadece gerekli verileri kaynağına yazarak iletebilir.

 
Alexey Volchanskiy :

Burada bir şey düşündüm, yaklaşık 13 yıldır engelliyim, 2006 yılında MT4 ile başladım. Bu konuya sadece o zamanki kız arkadaşım terminalle başa çıkmama yardım etmemi istediği için girdim ve mutlu bir şekilde C-benzeri bir dil olan MQL4'ü keşfettim ve takıldım. Hatırlamak komik, terminalde bulunan İngilizce dilinde çalıştım ve bunun Batılı bir gelişme olduğundan emindim. Kazanlı adamlardan olduğunu öğrendiğimde bilişsel uyumsuzluk yaşadım))

13 yıl geçti, MT * terminallerinin geliştirilmesinde birkaç aşamayı özetleyebilirim.

1. 2009 gibi MT5'in gelişiminin başlangıcı. O zamanlar Alplerin forumunda otluyordum, Renat'ın propagandasıyla oraya nasıl baskınlar yaptığını hala hatırlıyorum ve ticari olarak handikap üzerine ağ kurma planının öldüğüne itiraz ettim.

2. Benim için çok önemli bir aşama, 2013'ün başı, yeni bir MT4 yapısı > 600'ün piyasaya sürülmesi. Kahretsin, C ++ gibi yapılar, hatta sınıflar, yeni normal tanımlar vardı. Son olarak, hatalar giderildi, editör kopyala-yapıştır sırasında düşmeyi durdurdu ve diğer hatalar da düzeltildi. Sonuçta ondan önce C#'daki tüm stratejileri bir köprü üzerinden C++'da yazdım ama sonra şaman yapmamak mümkün olduğu için kodu daha çok MQL4'e aktarmaya başladım. ama iyi çalış.

3. Burada yılı hatırlayamıyorum, muhtemelen 2016? Doğru lütfen. Sonunda, MT5'in hedge versiyonunu yayınladılar, şahsen benim için MT5'e geçmek için bir teşvik vardı.

4. Yılı ben de hatırlamıyorum, yani 2018? Tek bir derleyici ve MT5'te çok platformlu bir proje yazma yeteneği. O zamandan beri kendim için yazıyorum. Müşterilere bu fırsatı sunduğumda %90 hemen katılıyorum, kesinlikle herkesin bundan haberi bile yok. Çok platformlular için fxsaber'dan MT4Orders kitaplığını öneririm, kod tabanında arama yaparak bulabilirsiniz.

5. İşte bir karışıklık, MT5 sürekli geliştiği için bu çok sevindirici.

13 yılda platformun gelişimini kabaca özetledim, ancak başka bir 10 yılda ne olacak, hadi hayal edelim? Bakın, bazı fanteziler gelecekteki gelişmelere yansıyacak))

Dahası ... Bir keresinde 10 arkadaşım terminalle başa çıkmam için yalvardı, koroda, dizlerimde ... Ve onlara cevap verdim - yazık sana, ben özgür bir insan değilim, zaten 50 kız arkadaşım var vesayet altında, seni nereye götürebilirim o zaman tüm parayı, St. Petersburg'da sadece üç ruble notum var ve hiç zamanım yok - gece gündüz Çeçenleri işiyorum ...

Ve MT var ve olacak.

 
Igor Makanu :

ve?

KB'de uzun süredir hazır çözümler var, çözümünüzü de eklediniz mi? ya da öylesine ... geçti?

O zaman neden 30'larda bunu bekliyorsun? Zaten oradaysa...
 
Igor Makanu :

karmaşık bir çözüm mümkün değil, toplu karakter olmayacak, herkes bir dizi okuyabilir ve yazabilir, daha zor bir şey varsa, veri alışverişi çözümleri için yukarıdaki KB'de düzgün bir şekilde yazdığım gibi, talep edilmeyecektir, ancak IMHO, GlobalArrayWrite(string name, int out[]) ve GlobalArrayRead (string name , int &in[]) - işte bu kadar, artık kullanıcı için gerekli değil

Dinle, evet, dosyalarla yapılan işlemlerde bile uzun süredir

uint FileWriteStruct (
    int            file_handle , // dosya tanıtıcısı
    const void&    struct_object , // nesne referansı
    int            boyut=-1              // bayt olarak yazılacak boyut
);


Basit türlerin akışını ayrıştırmaktansa, yapıları veya nesneleri sınıflandırarak okumak-yazmak çok daha uygundur. Belki yaşlandıkça tembelleştim? Evet, tuşa daha az dokunarak daha fazlasını yapmayı tercih ederim))