Optimizasyon sırasında tek seferlik dizi hesaplaması

 

Tüm optimizasyon sırasında değişmeyen bir dizi var. Bunu bir kez hesaplamak ve tekrar hesaplamadan sadece tüm optimizasyon sırasında her geçişte ona başvurmak mümkün mü?

 
Peki, OnInint() içinde hesaplayın
 
Alexey Viktorov :
Peki, OnInint() içinde hesaplayın

MQL4'te bir init dosyasından veri okudum, ancak çok uzun zaman aldı. Her yeni geçişte init'in dahil olup olmadığı net değil mi?

Forumda bulunan her geçişte bir init kullanılır, yani dizi tekrar sayılır.

https://www.mql5.com/ru/forum/104222

 

Tabii ki değil.

Ayy... Dikkatli okumadım ve soruyu yanlış anladım.

 
forexman77 :

MQL4'te bir init dosyasından veri okudum, ancak çok uzun zaman aldı. Her yeni geçişte init'in dahil olup olmadığı net değil mi?

Forumda bulunan her geçişte bir init kullanılır, yani dizi tekrar sayılır.

https://www.mql5.com/ru/forum/104222

İlköğretim. Her başlangıçta bir dizinin boyutunu kontrol edersiniz. Dizi boşsa veya oradaki hesaplama bayrağı yanlışsa, yeniden hesaplamayı yaparsınız:

 if ( ArraySize (optimize_array) == 0 )
   CalculateArray();
 
Vasiliy Sokolov :

İlköğretim. Her başlangıçta bir dizinin boyutunu kontrol edersiniz. Dizi boşsa veya oradaki hesaplama bayrağı yanlışsa, yeniden hesaplamayı yaparsınız:

Henüz gerçeği kontrol etmedim. Ama soruyorum ve dizinin ilk geçişten kaydedileceğini (hesaplanacağı yer) ve sonraki geçişlerde kullanılabilir olacak mı?

 
forexman77 :

Henüz gerçeği kontrol etmedim. Ama soruyorum ve dizinin ilk geçişten kaydedileceğini (hesaplanacağı yer) ve sonraki geçişlerde kullanılabilir olacak mı?

olmaz. Yeniden hesaplamak veya bir dosyaya kaydedip okumak gerekir.
 
Dmitry Fedoseev :
olmaz. Yeniden hesaplamak veya bir dosyaya kaydedip okumak gerekir.

Bu yüzden bir ikilem yaşadım, bunu nasıl yapacağım ki bir kez dosyadan okumak için onu bir dizi ile doldurun ve tüm geçişlerde bu diziyi kullanın.

Optimizasyon süresini azaltmak için buna ihtiyacım var, çünkü dizi her zaman değişmeyecektir ve her seferinde hesaplamak pahalıdır.

 
forexman77 :

Bu yüzden bir ikilem yaşadım, bunu nasıl yapacağım ki bir kez dosyadan okumak için onu bir dizi ile doldurun ve tüm geçişlerde bu diziyi kullanın.

Optimizasyon süresini azaltmak için buna ihtiyacım var, çünkü dizi her zaman değişmeyecektir ve her seferinde hesaplamak pahalıdır.

MT5'te, bir dizinin hesaplanacağı, bir dosyaya kaydedileceği ve danışmanın başlangıcında okunacağı bir optimizasyon başlatma olayı vardır.
 

Kaynak ekle. Nasıl olduğunu sorma. Kaynak yazılmamış.

İnternetten okumak gerekli olacaktır. Ancak okuma diskten değil, bellekten olacaktır. Yani, aslında dizi bellekte olacak.

 
Dmitry Fedoseev :
MT5'te dizinin hesaplandığı, bir dosyaya kaydedildiği ve EA'nın başlangıcında okunduğu bir optimizasyon başlatma olayı vardır.
Ve her geçişte bir İnternette okumak gerekli olacak mı?