İnternette daha sonra yeniden boyutlandırmanıza gerek yok, sadece ilan edin ve bu kadar. ve doğru boyutta olduğundan emin olun. içine veri koymadan önce.
ArrayResize(SMA,limit); //--- Размер различный задавал от 1 до Bars ArrayInitialize(SMA,0);
for(i=0;i<limit;i++){// bla bla bla
SMA[i]=...........; // --- Заполнение массива.
MA1[i]=iMAOnArray(SMA,0,8,0,0,0); //----MA1 буферный.
ortalamanın bir değerini elde etmek için, giriş verilerinin periyodunu analiz etmeniz gerekir, bu nedenle ilk SMA[] dizisinin boyutu limit+dönem'den az olmamalıdır - bu yüzden burada bir hata yaptım ArrayRezize(SMA, limit+dönem); başlatmaya gerek yok, zaten gereğinden fazla ileri gitmeyeceksiniz.
Genellikle bunu tampon olmayanlarla yaparım.
döngüdeki göstergede yeni bir günün başlangıcı nasıl belirlenir, buna sahibim:
Bu tasarımdan daha iyi biri var mı?Merhaba! Amacım bir fonksiyon oluşturarak göstergeyi bir EA'ya aktarmak.
İlk aşama - yani işlevin oluşturulmasını tamamladım. Ama bir sonraki - kontrol, çalışmıyor.
Gösterge kanalları çizer. 4 arabelleği ve bir sürü harici değişkeni vardır. Bütün bunları bir fonksiyona koydum.
Ancak göstergeyi ve işlevimi karşılaştırarak işin doğruluğundan emin olmak için bir test EA'sı oluştururken - derlemesini sağlayamıyorum.
İşlev oluşturulurken mevcut olmayan harici değişkenlerin kalıcı hataları EA'da su yüzüne çıktı.
Lütfen bana tavsiye verin veya bir örneğe bağlantı verin. GODZILLA makalelerini kullandım ama onun örnekleri benimkinden farklı.