Mql5 dilinin özellikleri, incelikleri ve çalışma yöntemleri - sayfa 238
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Kaynak kodunda makine tarafından oluşturulmuş bir kod parçası kullanacağımı hiç düşünmemiştim. Özellikle de performans için arşivlenecek bir yerde.
Aşağıda üretilen kod yer almaktadır.
Üretim için çok daha kısa bir komut dosyası yazıldı. Hipotezleri hızlı bir şekilde test etmek ve insan hatalarından kaçınmak için uygun olabilir.
Kaynak kodunda makine tarafından oluşturulmuş bir kod parçası kullanacağımı hiç düşünmemiştim. Özellikle de performans için arşivsel öneme sahip bir yerde.
Aşağıda oluşturulan kod yer almaktadır.
Üretim için çok daha kısa bir komut dosyası yazılmıştır. Bu, hipotezleri hızlı bir şekilde test etmek ve insan hatasını önlemek için yararlı olabilir.
Dikkatli olun, aynı ChatGPT hem sözdiziminde hem de mantıkta birçok hata yapar, bu yüzden her şeyi iki kez kontrol etmeniz gerekir.
Ancak gerçekten iyi bir vericidir, fikirlerinizi kodla ifade etmenize yardımcı olur.
Aşağıda oluşturulan kod yer almaktadır.
Üretim için çok daha kısa bir komut dosyası yazılmıştır. Bu, hipotezleri hızlı bir şekilde test etmek ve insan hatasını önlemek için yararlı olabilir.
Yeterli arka plan bilgisi yok: yeni kod eski koddan daha hızlı oldu mu olmadı mı?
Eğer değilse, neden eski anlaşılabilir kod yeni anlaşılmaz kodla değiştirildi?
Evet ise, MQL derleyicisi bunun için sohbetten çok daha fazla imkana sahipken neden performans açısından en uygun kodu bir kerede üretemedi?
Dikkatli olun, aynı ChatGPT hem sözdiziminde hem de mantıkta birçok hata yapar, bu nedenle her şeyi iki kez kontrol etmeniz gerekir.
Ama gerçekten iyi bir satıcı, fikirleri kodla ifade etmeye yardımcı oluyor.
Komut dosyası oluşturuluyor.
Yeterli arka plan bilgisi yok: yeni kod eski koddan daha hızlı hale geldi mi gelmedi mi?
Yeni kod daha hızlı.
Evet ise, MQL derleyicisi bunun için sohbetten çok daha fazla olasılığa sahipken neden performans açısından en uygun kodu bir kerede üretemedi?
Bu algoritmik optimizasyondur, derleyici optimizasyonu değil.
Yeni olan daha hızlı.
Bu algoritmik optimizasyondur, derleyici optimizasyonu değil.
Ne kadar daha hızlı? %1,5 mu yoksa 1,5 kat mı? Ve sanki daha hızlıymış gibi mi? Ya da doğru ölçümlere dayanarak mı?
Yani ona bir kod değil, bir algoritma mı verdiniz?
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi üzerine forum
Yapı 3902'den itibaren AVX / AVX2 + FMA3 / AVX512 + FMA3 komut seti ile MQL5 programlarının derlenmesi
fxsaber, 2023.10.19 21:17
b4029. Sanki senaryoları okumak %20-50 daha hızlı hale geldi.Ne kadar daha hızlı? Yüzde 1,5 oranında mı yoksa 1,5 kat mı? Ve hissederek mi yoksa belirli ölçümlerle mi?
Yani ona bir kod değil, bir algoritma mı verdiniz?
Sanal kaynak kodu bunu kullanır. Her tikte dört kontrol yapmanız gerekir.
Ancak bazı durumlarda (switch 0-15) daha az kontrolle yapabilirsiniz: 0-4. Bu TS'ye bağlıdır.
Örneğin, TS pozisyonları yalnızca piyasa emirleriyle açıp kapatıyorsa ve SL/TP kullanmıyorsa, tek bir kontrol yapmanıza gerek yoktur.
Ancak tüm emir türleri aynı anda kullanılıyorsa, dört kontrolü de yapmanız gerekir: hızlanma olmayacaktır.
Bu nedenle belirli bir TS'yi ele almalı ve bunun için yapılan ölçümlerin sonuçlarına bakmalısınız. Farklı TS'ler farklı hızlanma sonuçlarına sahiptir.
Vakaları (vaka sayısı) daha fazla varyanta sınıflandırmak mümkündü. Açıkçası ben bunu yapamadım.
MQL5'te, StringReserve fonksiyonu vardır, bu fonksiyonu kullanarak teorik olarak dizgimiz için bellek yeniden tahsislerinin sayısını azaltabiliriz: bir kerede yeterince büyük bir tampon ayırırız ve sonra içinde çalışırız.
Ancak, uygulamada görüldüğü gibi, bu dizeye daha sonra bir değer atanması, arabelleğinin boyutunu değiştirir (yani, görünüşe göre, bellek yeniden tahsisi gerçekleşir).
Sonuç olarak, yerine
kullanmak mantıklıdır
kullanmak mantıklıdır
Aynen öyle. Bu mekanizma dize tamamlamada harika çalışır. Örneğin, büyük HTML raporları oluştururken.
Bir sembolün veri içerip içermediğini nasıl öğrenebilirim, böylece içermiyorsa [Piyasa İzleme] penceresinde bırakmam?
Bir döngü içinde böyle bir kontrol kullanıyorum:
Ancak bundan sonra, Uzman Danışman grafik üzerindeyken sembolleri [Piyasa İzleme] penceresinden tek tek veya hepsini birden manuel olarak kaldıramıyorum: