MQL: güvenlik ve özellikler

 

MQL ile uzun yıllara dayanan deneyimi analiz ederek ve yeteneklerini ihtiyaçlarla karşılaştırmaya çalışırken, açıkça fark ettim.
Görevden göreve ortaya çıkan en yaygın engel , iki yönlü bilgi alışverişidir .

Evet, her şey basit: eski MQL baltası - bir uzmandan bilgi indirmek için tek bir seçenek var - bunlar bir demir parçası üzerindeki dosyalar. Bu, günümüz standartlarına göre programcının sıkı çalışmasının ilkel aracıdır.
Ve bu gerçeğin farkındalığı, gerekli gelişmenin yönünü anlamak için yeterli değildir.

Ancak, bilgi iletmek için başka seçenekler aranırken ne kadar kod atıldı!
Ama hepsi MQL olmayan araçları kullanmaya başlarlar... ne yazık ki.

Terminaller arasında ve terminaller ve diğer uygulamalar arasında bilgi alışverişi, siteye veri gönderme, acentelere veya acentelerden bir uzmana bilgi aktarma - her birimiz, sevgili kullanıcılar ve geliştiriciler, bu listeye devam edebiliriz.
MQL'deki aktif uygulamamız boyunca, neredeyse tüm olası sistem araçları uyarlandı ve yeniden kontrol edildi:
- yasal posta, FTP, Push mesajları gönderme
- terminal klasörünün dışındaki dosyalar
- haritalama
- borular
- prizler

Bilgi alışverişi teknolojisinden geliştiriciler bize bir boru verdi. Ancak bazı nedenlerden dolayı kesilmiş bir biçimde verilir. Pipe doğal olarak MQL'de yalnızca istemci tarafında olabilir.

Bu vesileyle, bir sürprizim ve bir sorum var: neden sadece müşteri? "Tek ayak üzerinde siyah" bir şey çıktı ...
Güvenlik için bu sınırlamayı analiz etmeye çalışırken, hayır, MQL sunucu borusunun güvenliği hiçbir şekilde etkilemediği sonucuna vardım. Mevcut sürümde kendi kendine yazılmış bir sunucu exe dosyasına sahip olmak gerektiğinden - yani, zaten güvenli değil.
Belki de hepsi geliştiricilerin tembelliği ile ilgilidir? yani öyle de değil, aktif olarak destekliyorlar ve geliştiriyorlar ...

-----

Bir yıldan fazla bir süre önce, Renat'ın tavsiyesi üzerine, winsock2 sistemini kendi kendine yazılan dll'ler olmadan MQL'ye taşıdım (bunun nasıl yapıldığını kısmen makalede anlattım).
Evet, yani MQL kodunda olduğu gibi, sunucuyu yükseltmek + bloke olmayan bir moda geçirmek + istemcileri kabul etmek için bir milisaniyelik zamanlayıcı ile yoklamak (o zaman hala böyle ) + aynı zamanlayıcı tarafından onlara hizmet vermek.. .

Renat daha sonra "belirli" teknik nedenlerle bunun imkansız olduğunu söyledi. Ama tam tersi bile ortaya çıktı - her şey mümkün ve hatta mümkün olan en yüksek seviyede!

Expert Advisor'ı grafik üzerinde bir sunucu yaptım ve internetteki herhangi bir bilgisayardan ona bağlandım - bu, çalışma tekniğinde bir atılımdı. Doğrudan p2p bağlantılarını, kopyalayıcıları, eşzamanlayıcıları, optimize edicileri, dağıtılmış görevleri vb. hedefler.

-----

Bu nedenle, MQL'nin daha da geliştirilmesiyle ilgili soruma dönerek, onu şu şekilde özetlemek istiyorum:
Sevgili geliştiriciler, eski dosyadan ne zaman çok daha rahat, daha hızlı ve daha iyi bir araca - bir istemci / sunucu teknolojisi olarak - bir adım atacağız?
Sonuçta, istemci borularını otomatik olarak vermiş olmanız, sanal alandan geri alınamaz bir çıkış anlamına gelir. MQL'deki istemci kanalı, kendi kendine yazılmış bir sunucu kanalı anlamına gelir ve bunun ötesine geçer.

not.
Son zamanlarda, örnek olarak, yerel acentelere bilgi aktarımı konusunda önemli bir konu gündeme geldi. Bu sizin için başka bir uyandırma çağrısı. Bu tür birçok konu vardır ve her MQL kullanıcısı bilgi düzeyine göre bunları çözmeye çalışır.

O zamana kadar, bilgi alışverişi için MQL'deki yerleşik araçların önemini fark etmemiştim. Ve özellikle ihtiyaç düzeyine girmedi.
Ancak bu tür konuları analiz ettikten sonra kesin bir sonuç ortaya çıktı - iki yönlü bir bilgi alışverişi olacak!
Taş toplamanın zamanı geldi.

 
Her kelimesine aboneyim.
 

İyi yazı.

Renat genellikle bunlara gelir ve sizin kum havuzunuzdan bir bok görmediğinizi ve anlamadığınızı söyler.

 
TheXpert :

İyi yazı.

Renat genellikle bunlara gelir ve sizin kum havuzunuzdan bir bok görmediğinizi ve anlamadığınızı söyler.

Bekleyelim - göreceğiz.

not. Oy düzenlemek günah olmaz, soru boş değil.

Zy.ZY. Bu aynı zamanda dördü için de geçerlidir.

 
tam zamanı..
 

Bir ihtiyaç var. Ve böyle bir ihtiyaç en ilginç problemlerde ortaya çıkar.

Konu dışı ama bu fırsatı değerlendirerek bir zamanlar ResourceRead() yapacaklarına söz verdiklerini hatırlatmama izin verin. Bu, en azından terminal içindeki uzmanlara büyük miktarda bilgi alışverişi yapma fırsatı verecektir.

 
Her zamanki gibi, güvenlik ve sonuçları tamamen göz ardı ederek, yalnızca faydalardan bahseder. Artı sadece bir tüccardan bir değerlendirme.

Herhangi bir geliştirici kendisi için herhangi bir karar verebilir ve mümkün olan her şeyi _his_ terminallerine / terminallerinden aktarabilir. Ancak burada düzenli bir delik açmayacağız ve global deliğin tüm terminallerin %100'üne düzenli dağılımını yapmayacağız. Ayrıca ağ http bağlantıları yapmayacağız.

Sonraki yapılar, komisyoncuların ve MQL4/5 geliştiricilerinin, işleyicilerin eklentiler üzerine yazıldığı sunuculardaki destekle terminalin işlevselliğini genişletmesine olanak tanıyan, ticaret sunucularıyla yeni bir özel ağ etkileşimi yöntemini içerecektir.
 
Renat :
Sonraki yapılar, komisyoncuların ve MQL4/5 geliştiricilerinin, işleyicilerin eklentiler üzerine yazıldığı sunuculardaki destekle terminalin işlevselliğini genişletmesine olanak tanıyan, ticaret sunucularıyla yeni bir özel ağ etkileşimi yöntemini içerecektir.
Ve bu yerden daha ayrıntılı olarak mümkün mü?
 
İki yönlü bir bağın organizasyonunun esasen MT5'i yalnızca üçüncü taraf uygulamaları ve değişim arasında bir iletim bağlantısı yapacağını önermeye cesaret ediyorum. Bu durumda, terminal için sözde yeni bağımsız eklenti programlarının ortaya çıkması kaçınılmazdır - aslında, MQ'nun doğrudan rakipleri kendi teknolojilerini parazitleştiriyor ve finansal piyasalarda çalışmayı yalnızca "daha rahat ve üretken" hale getirmeyi vaat ediyor. Aylık 29,95 dolar.
 
C-4 :
İki yönlü bir bağın organizasyonunun esasen MT5'i yalnızca üçüncü taraf uygulamaları ve değişim arasında bir iletim bağlantısı yapacağını önermeye cesaret ediyorum. Bu durumda, terminal için sözde yeni bağımsız eklenti programlarının ortaya çıkması kaçınılmazdır - aslında, MQ'nun doğrudan rakipleri kendi teknolojilerini parazitleştiriyor ve finansal piyasalarda çalışmayı yalnızca "daha rahat ve üretken" hale getirmeyi vaat ediyor. Aylık 29,95 dolar.

Aynen öyle.

Ve daha da önemlisi, her ilk program temelde casus yazılım olacak ve hesaplar , geçmiş ve hesap ayarları hakkında birçok kritik bilgi toplayacaktır. Bu konuda, üçüncü taraf geliştiricilerin frenleri yoktur - güvenlik ve mahremiyetin yok edilmesini umursamıyorlar. Sorunun ne olduğunu gerçekten "anlamıyorlar". Onları yakaladığınızda, sonuna kadar açılıyorlar ve sonra her şey "bizden bir kuruş emeğinizi alıyorsunuz, ama bunca yıldır size yardım ettik!" Bu, haklarımızın, lisanslarımızın ve doğrudan hack'lerin ihlallerinden bahsetmiyor.

Bu tür "yardımları" zaten yeterince gördük ve bu nedenle kuralları sıkılaştırıyoruz.

 
FAQ :
Ve bu yerden daha ayrıntılı olarak mümkün mü?

Bir komisyoncu (veya bir üçüncü taraf geliştirici) bir programı saf MQL4/MQL5'te yazabilir, yasal olarak dağıtımına dahil edebilir (bunu onun dağıtımına dahil edeceğiz) ve önceden yazılmış göstergeler ve uzmanlarla varsayılan çizelgeler oluşturabilir. Aracıların kendi dağıtımlarına özel programların (DLL ve fanatizm olmadan yalnızca saf MQL4/MQL5 kodu) dahil edilmesine karşı değiliz.

Bu program, ticaret sunucusu tarafından desteklenen kendi işlevselliğini uygulayabilir. Bunu yapmak için, terminaldeki MQL4/MQL5 programlarından gönderilen özel komut paketlerini alıp yanıtlayabilen MetaTrader 4/5 Sunucu API'sine dayalı olarak sunucu için bir eklenti yazılır.

Böylece, komisyoncu, istemcilerin güvenliğinden ödün vermeden ve sistemi kullanmak için lisansları ihlal etmeden terminalin yeteneklerini genişletebilir. Üçüncü taraf geliştiriciler için çözümlerini kesinlikle yasal ve düzenli olarak satmak için yeni bir fırsat var.

Neden: