Hatalar, hatalar, sorular - sayfa 775

 
Neofit :

Cevap verdiğiniz için teşekkürler.

Bir gösterge yazıyorum... ne yazık ki gösterge kavramı, OnCalculate'e ulaştığımız anda optimal çiftin seçileceğini varsayıyor, kulağa belirsiz geliyor.

Genel olarak, OnCalculate işlevinde On Init'te gerçekleştirilen hesaplamaların ve analizlerin sonuçlarını kullanmak zaten gereklidir.

Bu hesaplamaları OnCalculate'e aktarmak mümkün değildir, çünkü iki bitişik kenenin gelişi arasındaki süre boyunca tüm hesaplamaları tamamlamak için zamanımız yoktur...

Her şey yolunda ve kolay gidiyor.

Analizi ayrı bir fonksiyona taşıyın ve OnCalculate'den çağırın. Veri yoksa, OnCalculate'den çıkın ve bir sonraki onay işaretini bekleyin.

Göstergenin gerçekten 1-2 saniye içinde başlaması gerçeğinden, sorun değil. Yüksek derecede bağımlı ve asenkron süreçlerle başka bir şekilde çalışmak imkansızdır, sadece tembel/ondemand başlatma.

 
Renat :

Her şey yolunda ve kolay gidiyor.

Analizi ayrı bir fonksiyona aktarın ve OnCalculate'den çağırın. Veri yoksa, OnCalculate'den çıkın ve bir sonraki onay işaretini bekleyin.

Göstergenin gerçekten 1-2 saniye içinde başlaması endişelenecek bir şey değil. Yüksek derecede bağımlı ve asenkron süreçlerle başka bir şekilde çalışmak imkansızdır, sadece tembel/ondemand başlatma.

Tavsiye için teşekkürler. Nedense aklıma gelmedi. Çok az umut olsa da "sözde init"imi yazmaya çalışacağım. OnInit'te beklemeye çalıştım, hiçbir şey olmadı, LastError 4007 veriyor

ERR_ARRAY_RESIZE_ERROR

4007

Bir diziyi yeniden tahsis etmek için yeterli bellek yok veya statik bir diziyi yeniden boyutlandırma girişiminde bulunuldu

Dizi dinamiktir, yani "statik dizinin boyutunu değiştirme girişimi" ile ilgili hata tanımının 2. kısmı kaybolur ve " diziyi yeniden tahsis etmek için yeterli bellek yok" un ne anlama geldiğini zar zor hayal edebiliyorum .

 for ( int i= 0 ;i< 100 ;i++)
        { int p99= CopyBuffer (MaHandle1, 0 , 0 ,n_analyzed_bars+shift_offset+ 2 ,MaBuffer1);
         if ( CopyBuffer (MaHandle1, 0 , 0 ,n_analyzed_bars+shift_offset+ 2 ,MaBuffer1)> 0 )       break ;
         else   
         {
           Print ( "Getting MA is failed! Error" , GetLastError ()); 
           int err= GetLastError (); 
             Sleep ( 500 );    
           //return(0);
         } 
         
        }
  
 
papaklass :
Ve başka bir göstergeye dayalı bir gösterge yapmaya çalıştılar. İlk gösterge bir çift seçer, ikincisi bu çift üzerinde çalışır.

Renat'ın tavsiyesi bana çok yardımcı oldu, iMA değerlerini kullanıcı arabelleklerine aktarmada sorun yaşadım, kodu OnInit'ten başka bir işleve taşıdım ve ek kontrollerle her şey çalıştı ... şimdi üzerinde çalışıyorum.

Not Lütfen bana forumda kendi mesajlarınızı takip etmenin en uygun yolunu söyleyin. Bana gönderilen tüm mesajları (mesajlarıma verilen yanıtları) nerede görebilirim?

 

MT5'in yeniliklerini uzun zamandır takip etmiyorum ve bu yüzden muhtemelen tamamen aptalca bir soru soracağım.

Yavaş olan (parametrelerin tam numaralandırılması) standart Uzman Danışmanın optimizasyonunu başlatıyorum ve bu tam numaralandırmayı benim için yaklaşık 10490 ile sınırlıyor....

Günlük bazılarıyla dolu: 2012.07.13 21:48:10 Core 5 genetik geçiş (494, 256000000) "uzman başlatılamıyor" hatasıyla test edildi

Ardından 2012.07.13 21:49:26 Test cihazı genetik optimizasyonu 9353 numaralı geçişte (81631000000) tamamlandı


Ne tür bir genetikçi? Genetik optimizasyon nedir? Tam göğüs mü?

Optimizasyon yöntemini Fast ( genetik algoritma ) koydum ve her şeyi aynı görüyorum.

CHADNT daha mı kısa? Hangi makale okunmalı?

Генетические алгоритмы - это просто!
Генетические алгоритмы - это просто!
  • 2010.05.25
  • Andrey Dik
  • www.mql5.com
В статье автор расскажет об эволюционных вычислениях с использованием генетического алгоритма собственной реализации. Будет показано на примерах функционирование алгоритма, даны практические рекомендации по его использованию.
 
Figar0 :

MT5'in yeniliklerini uzun zamandır takip etmiyorum ve bu yüzden muhtemelen tamamen aptalca bir soru soracağım.

Yavaş olan (parametrelerin tam numaralandırılması) standart Uzman Danışmanın optimizasyonunu başlatıyorum ve bu tam numaralandırmayı benim için yaklaşık 10490 ile sınırlıyor....


Ne tür bir genetikçi? Genetik optimizasyon nedir? Tam göğüs mü?

32 bit sürümde, geçiş sayısı 1.000.000'u aştığında, genetik modu açılır. 64 bit sürümün kaba kuvvet sınırı 100.000.000'dir. Bu, yardım bölümünde açıklanmıştır.

Bu, tüccarların bariz hatalar yapmamalarına otomatik olarak yardımcı olmak için yapılır.


Günlük bazılarıyla dolu: 2012.07.13 21:48:10 Core 5 genetik geçiş (494, 256000000) "uzman başlatılamıyor" hatasıyla test edildi

Burada koda bakmanız gerekiyor - Uzman Danışmanın başlatılması sırasında ya yeterli bellek yoktu ya da başka bir şey.

 
Renat :

32 bit sürümde, geçiş sayısı 1.000.000'u aştığında, genetik modu açılır. 64 bit sürümün kaba kuvvet sınırı 100.000.000'dir. Bu, yardım bölümünde açıklanmıştır.

Bu, tüccarların bariz hatalar yapmamalarına otomatik olarak yardımcı olmak için yapılır.

Oh, bu tüccar için bir endişe) Cevap için teşekkürler, 100000000 benim için yeterli.

Renat :

Burada koda bakmanız gerekiyor - Uzman Danışmanın başlatılması sırasında ya yeterli bellek yoktu ya da başka bir şey.

ExpertMACD standardı....

 

https://www.mql5.com/ru/forum/1111/page775#comment_234266

Düşük derecelendirmeye sahip kullanıcılardan, görünüşe göre, hatalar alakalı değil). Yeni yapıda, tamamen aynı çöp.

OrderCalcProfit(ORDER_TYPE_BUY,"USDJPY", 0.01, 0.01, 0.02,profit_USDJPY_1);

OrderCalcProfit(ORDER_TYPE_BUY,"USDJPY", 0.01, 200.01, 200.02, profit_USDJPY_2 );


Print("profit_USDJPY_1=",profit_USDJPY_1 ,"profit_USDJPY_2=",profit_USDJPY_2 );

(EURUSD,M15) kâr_USDJPY_1=500.0 kâr_USDJPY_2=0.05

Çapraz sürümde iyi çalışıyor.

 

Terminal dizininde yer açmak için hangi klasörlerin içeriği temizlenmelidir (birikmiş günlükleri kaldırın, ... vb. - komut dosyaları, göstergeler, baykuşlar bırakmak doğaldır)? Expert Advisors'ı test etme ve optimize etme sürecinde, terminal klasörü 80 Gig oldu... Şimdi onu temizlemenin zamanı geldi.

İdeal olarak, dördünde olduğu gibi benzer bir şeyi tasvir edin - clear.bat dosyası (araçlara göre alıntıların geçmişi de dahil olmak üzere yüzeysel her şeyi kaldırır, günlükleri temizler, bunları kurulum seçeneğiyle aynı hizaya getirir, elbette, komut dosyaları, göstergeler ve danışmanlar).

Herhangi bir şey varsa, MT5 klasörlerinin açıklamasına bir bağlantı verin.

Prensip olarak, kendisi klasörlerin içeriğini arayabilir ve manuel olarak temizleyebilir ve benzetme yoluyla MT5 için bir toplu iş dosyası kaydettirebilir - bu basit, asla bilemezsiniz - belki zaten böyle bir şey vardır ...

Sayesinde.

Dosyalar:
clear.zip  1 kb
 
R0MAN :

Terminal dizininde yer açmak için hangi klasörlerin içeriği temizlenmelidir (birikmiş günlükleri kaldırın, ... vb. - komut dosyaları, göstergeler, baykuşlar bırakmak doğaldır)? Expert Advisors'ı test etme ve optimize etme sürecinde, terminal klasörü 80 Gig oldu... Şimdi onu temizlemenin zamanı geldi.

İdeal olarak, dördünde olduğu gibi benzer bir şeyi tasvir edin - clear.bat dosyası (araçlara göre alıntıların geçmişi de dahil olmak üzere yüzeysel her şeyi kaldırır, günlükleri temizler, bunları kurulum seçeneğiyle aynı hizaya getirir, elbette, komut dosyaları, göstergeler ve danışmanlar).

Herhangi bir şey varsa, MT5 klasörlerinin açıklamasına bir bağlantı verin.

Prensip olarak, kendisi klasörlerin içeriğini arayabilir ve manuel olarak temizleyebilir ve benzetme yoluyla MT5 için bir toplu iş dosyası kaydettirebilir - bu basit, asla bilemezsiniz - belki zaten böyle bir şey vardır ...

Sayesinde.


MetaTrader 5 Yardım → Başlarken → Dizin ve Dosya Yapısı

 
WWer :

MetaTrader 5 Yardım → Başlarken → Dizin ve Dosya Yapısı

Sayesinde. Okudum...
Neden: