[ARŞİV!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 4. - sayfa 89

 
keep87 :
yasaktır

olabilmek))

örneğin, EA'nın diziyi terminalin global değişkenlerine yüklemesini ve oradan okumasını sağlayın.

 
alsu :
Çıktı olarak ne almak istediğinize karar verin. Hareketin değeri 5 bar önceyse, o zaman

veya özdeş

Öyleyse,

bu her zaman EMPTY_VALUE olacaktır, çünkü bu çubuklarda, taşınan onay işareti mevcut değil

Anladım teşekkürler!
 
alsu :
Ve hepsinden iyisi, EA'daki vardiyalar hakkında endişelenmeyin, sadece 0 vardiyasını ve ihtiyacınız olan çubuğun numarasını alın.
şimdi test cihazında kontrol edildiğinde, anlaşmanın hareketli ortalamaların geçişinden sonra 5 mum açtığı ortaya çıktı ve bu aynı değil ... Nasıl yapılacağını anladım, başka bir MA 5 mumu ileri doğru hareket ettirin, sonra doğru sinyal alınır...)
 
ierehon :
şimdi test cihazında kontrol edildi, hareketli ortalamaların geçişinden 5 mum sonra anlaşmanın açıldığı ortaya çıktı ve bu aynı değil ... Bunu nasıl yapacağımı buldum, başka bir MA 5 mumu ileri hareket ettirdim, sonra doğru sinyal elde edildi ...)

Bu aynısı))

ma'nın sıfır çubuğu, sağa kaydırılan 5 çubuk = kaydırılmamış ma'nın 5. çubuğu

 
keep87 :
yasaktır. Testler süresince optimizasyondan optimizasyona değişmezlerse, dizideki verileri Expert Advisor içindeki diziye manuel olarak girebilirsiniz.
Ancak bu durumda bile, MT diziyi her seferinde (?) dosyadan okumak zorunda kalacak, ancak ayrı bir diziden değil, koddan.
- Bu durumda bir kazanç olacak mı?
 
alsu :

olabilmek))

örneğin, EA'nın diziyi terminalin global değişkenlerine yüklemesini ve oradan okumasını sağlayın.

Onlarca ila birkaç yüzlerce dizi öğesi olabilir ve her biri için önceden bir değişken bildirilmelidir .
Uygulaması zor olacak (elbette görev de önemsiz değil).
 
chief2000 :
Onlarca ila birkaç yüzlerce dizi öğesi olabilir ve her biri için önceden bir değişken bildirilmelidir.
Uygulaması zor olacak (elbette görev de önemsiz değil).

ne olmuş? Bir döngüdeki değişkenlerle, bir dizinin öğeleriyle aynı şekilde çalışın. Kullanım örneği:

 double a[];
int n;

...
ArrayResize (a,n);
...

//запись массива в глобальные переменные

string name;
for (i= 0 ;i<n;i++)
{
   name = StringConcatenate ( "__ARRAY_" ,i);
   GlobalVariableSet (name,a[i]);
}

//чтение в массив из глобальных

int gv = GlobalVariablesTotal ();
int index;

for (i= 0 ;i<gv;i++)
{
   name = GlobalVariableName (i);
   if ( StringFind (name, "__ARRAY_" )== 0 )
   {
      index = StrToInteger ( StringSubstr (name, 8 ));
       if (index>= 0 &&index<n) a[index]= GlobalVariableGet (name);
      
       //опционально - если хотим очистить список
       //GlobalVariableDel(name);
   }
}


her şey mümkün olduğunca basit))

 
alsu :

ne olmuş? Dizi öğeleriyle aynı şekilde bir döngüdeki değişkenlerle çalışın. Kullanım örneği:

her şey mümkün olduğunca basit))

Hafızamda frenleri işaretlemeden birkaç bin değişkenle bu şekilde çalıştım. Daha büyük miktarlar için (yüz binlerce öğe ve daha fazlası), kural olarak MySQL ile bir bağlantı kullanmaya çalışıyorum.
 
alsu :
Hafızamda frenleri işaretlemeden birkaç bin değişkenle bu şekilde çalıştım. Daha büyük miktarlar için (yüz binlerce öğe ve daha fazlası), kural olarak MySQL ile bir bağlantı kullanmaya çalışıyorum.
ÇOK TEŞEKKÜRLER!
 

Söylesene, verisinde bu formatta bir csv dosyası var mı 1.33027; 1.33023 vb.

Sonra bu dosyayı okudum, ancak nedense veriler 4 basamaklı bir doğrulukla okunuyor, ancak 5 ile ihtiyacım var.

farklı şekillerde okumak ve

 FileReadString и FileReadDouble и FileReadInteger

yardımcı olmuyor