MQL5 ve MQL5 Cloud Network'te evrensel matematiksel hesaplamaların ek desteği için ne eklenmelidir?

Renat Fatkhullin  

MetaTrader 5 test cihazının yalnızca ticaret stratejilerini test etmekle kalmayıp aynı zamanda bir dizi evrensel görevi çözebileceğini herkes bilmiyor. Bunu yapmak için, piyasa ortamı verilerinin tesliminin devre dışı bırakıldığı ve iletilen veri miktarından büyük ölçüde tasarruf sağlayan özel bir "Matematiksel hesaplamalar" modu vardır.

Şu anda, evrensel bir yerleşim ağı oluşturmak için bir dizi önemli işlevi hayata geçirdik:

  • Piyasa ortamını devre dışı bırakmak için " Matematik hesaplamaları " çalışma modu.
  • Her boyuttaki ham verileri işlemenizi ve sonuçları döndürmenizi sağlayan #property tester_file "my_file.dat" ekleyerek ham verileri iletmek.
  • Kaynak verileri ekli #resource kaynakları olarak iletme.
  • Terminalde yerleşim sunucu modu ve aracılardan veri dizilerinin çerçeveler şeklinde aktarılması. Aracılar, FrameAdd aracılığıyla herhangi bir veriyi terminale döndürebilir ve aynı Expert Advisor'ın sunucu kısmı, terminal tarafında ayrı bir pencerede başlatılır ve sonuçları FrameXXX işlevleri aracılığıyla veri çıkarma ile OnTesterPass giriş noktaları aracılığıyla alır. Alınan veriler terminal tarafında kaydedilebilir, bir grafik üzerinde görselleştirilebilir, vb. Bununla ilgili daha fazla ayrıntı " Optimizasyon süreçlerinin gerçek zamanlı kontrolü ve aracılardan MetaTrader 5'e büyük verilerin aktarılması " konusunda yazılmıştır.
  • Yerel ve uzak aracıların (MQL5 Cloud Network olmadan) ayrı bir sunucu ile adlandırılmış kanallar aracılığıyla çalışması.
  • Ödemeleri hızlandırmak için büyük bir acente ağı kiralamak.
  • Uzak aracılar üzerinde ağınızda kendi yerleşim çiftliğinizi kurun.

Elbette bu uygulanır: MQL5'in güvenliği, hızı, genetik sıralaması vb.

Dolayısıyla şu soru - yerleşim ağının yeteneklerini geliştirmek için başka hangi işlevler dahil edilmelidir?

TheXpert  
Renat :

Dolayısıyla şu soru - yerleşim ağının yeteneklerini geliştirmek için başka hangi işlevler dahil edilmelidir?

Bulutta "matematik" modunda OpenCL kullanımına izin verin.
OpenCL: Мост в параллельные миры
OpenCL: Мост в параллельные миры
  • 2012.05.16
  • Sceptic Philozoff
  • www.mql5.com
В конце января 2012 года компания-разработчик терминала MetaTrader 5 анонсировала нативную поддержку OpenCL в MQL5. В статье на конкретном примере изложены основы программирования на OpenCL в среде MQL5 и приведены несколько примеров "наивной" оптимизации программы по быстродействию.
Renat Fatkhullin  
TheXpert :
Bulutta "matematik" modunda OpenCL kullanımına izin verin.

Bu zaten birçok kez tartışıldı - Windows sürücülerinin çalışma şekli nedeniyle mimari olarak imkansız. Hesaplanan işlevler video sürücülerinin korumalı bir parçası olduğu sürece çözüm yoktur. Artık Uzak Masaüstü üzerinden Windows'a bağlandığınızda bile OpenCL'e erişiminiz olmadığını görüyorsunuz.

Ekran kartı üreticileri hesaplama kısmını video sürücülerinden bağımsız ayrı bir arayüze koydukça mutluluk da gelecektir. Şimdiye kadar sadece Nvidia Tesla bu yönde ilerliyor.

Serj  
OnTesterInit() işlevinde

İlk verilerin transferini, ekli kaynaklar biçiminde değil, optimizasyon sırasında oluşturulan bir dizi veri biçiminde aracıya ekleyin.

Aşağı yukarı şöyle:

 void OnTesterInit()
  {
   // здесь формируем массив данных (например ArrayPass[])
   // и передаем сформированный массив агенту для расчетов
   return (ArrayPass);
  }

.

...

Rica ederim.

Renat Fatkhullin  
Ve bu verileri tam olarak kim ve nasıl aktarmalı?

Teknik ayrıntılı bir açıklama ile ilgileniyor: kim, ne ve nasıl.
Serj  
Renat :
1. Ve bu verileri tam olarak kim ve nasıl aktarmalı?

2. Teknik ayrıntılı bir açıklama ile ilgileniyorum: kim, ne ve nasıl.

1. Doğal olarak, kullanıcı yukarıda önerdiğim gibi iletmelidir - " Bunun gibi:", siz daha iyi bilirsiniz.

2. Kim ve nasıl, tarif edemem)

Ajanlar ne içindir? - Sorunları çözmek için.

Hangi görevleri çözüyoruz? - cehennem bilir, asıl şey karar vermektir.

Sorunları çözmek için neye ihtiyacınız var - girdi verileri ve çıktı.

Çıkış ile net görünüyor, ancak giriş ile net değil.

Belki bir şey kaçırdım? Girdi verileri (önceki çıktı verilerine göre hesaplanmıştır) aracıya nasıl iletilir?

Renat Fatkhullin  
her.human :

1. Doğal olarak, kullanıcı yukarıda önerdiğim gibi iletmelidir - " Bunun gibi:", siz daha iyi bilirsiniz.

2. Kim ve nasıl, tarif edemem)

Gerçek şu ki, en az 2 adımda tam olarak teknik olarak geliştirilmiş önerilere ihtiyacımız var. "Ne ve nasıl olduğu bilinmiyor" pek uygun değil.

Andrey Khatimlianskii  
her.human :

Girdi aracıya nasıl aktarılır (önceki çıktıdan hesaplanır)

Bu zaten istendi, optimizasyonun ilerlemesini yönetmek bazen çok yardımcı olabilir.

Ancak bir sonraki dalışta birçok soru ortaya çıkıyor (optimizasyon tek bir yerel temsilci üzerinde gerçekleşmiyorsa).

Andrey Khatimlianskii  
Renat :

Gerçek şu ki, en az 2 adımda tam olarak teknik olarak geliştirilmiş önerilere ihtiyacımız var. "Ne ve nasıl olduğu bilinmiyor" pek uygun değil.

"Teknik ödevler şeklinde başvurular kabul edilir" diyorsunuz, aksi halde "fikirleri dinleyeceğiz" şeklinde algılanıyor.
Andrey Khatimlianskii  
Renat :
Bizim açımızdan, terminalin katılımı olmaksızın acenteler arasında bağımsız bir iletişim kurmayı düşünüyoruz. Örneğin, aracılardan biri ilk verileri oluşturabilir ve bunu yayının geri kalanına gönderebilir.

Başka bir şeyle ilgili. Ben sadece optimizasyon sürecini yönetmek istedim.

Onlar. optimizasyon sırasında parametre setleri oluşturun ve bunları yürütme için aracılara gönderin.

Doğal olarak, çok sayıda soru olacaktır. Onlara cevap vermeye hazır değilim.

Neden: