Anladığım kadarıyla kesişimi tanımlayıp değeri stop=1 olarak ayarladıktan sonra döngü hemen çıkıyor. O zaman daha ileri gitmeniz ve kavşağın meydana geldiği mumun numarasını hatırlamanız gerekir. Onlar.
Kendiniz yazmak daha kolay:
for ( int i = 1 ; i < 1000 ; i++ )
{
iMaValue = ...; // Значение МА на i свече
if ( iMaValue < High[ i ] && iMaValue > low[ i ] )
{
num = i; // Запоминаем номер свечи, на котором произошло пересечениеbreak ; // Выходим из цикла
}
}
Mum sayısını belirleyen sendin. Sayı = 2 ise ve mevcut olanı dikkate almıyorsanız, kesişimden bu yana bir mum çubuğu oluşmuştur (iyi veya istediğiniz gibi yorumlayın).
Anladığım kadarıyla kesişimi tanımlayıp değeri stop=1 olarak ayarladıktan sonra döngü hemen çıkıyor. O zaman daha ileri gitmeniz ve kavşağın meydana geldiği mumun numarasını hatırlamanız gerekir. Onlar.
Kendin yazmak daha kolay:
Mum sayısını belirleyen sendin. Sayı = 2 ise ve mevcut olanı hesaba katmazsak, kesişimden bu yana bir mum çubuğu oluşmuştur (peki, ya da istediğiniz gibi yorumlayın).
alph : Lütfen söyle bana, test cihazının böyle bir göstergesi hayatta gerçek mi? Ve 3000 $ depo ile yıl için iyi mi yoksa kötü bir sonuç mu?
Cevap basit: Bir EA'yı test ediyorsanız, bir test cihazının gerçek hayattaki performansı GERÇEK DEĞİLDİR. Strateji test cihazı , tüccarlar tarafından ATS'nin performansını kontrol etmek veya çevrimiçi olarak manuel stratejileri test etmek için kullanılır.
Böyle yazmamalısın çünkü son 1000 çubuk için kesişme olmadıysa, ilk olarak, döngü daha ileri gidecektir, ikinci olarak, döngü/diğer hatalar mümkündür, çünkü hikaye biterse ve kesişme olmazsa döngüden çıkış olmaz çünkü Dur = 0. Yukarıda belirttiğim gibi yazmak daha iyidir.
Böyle yazmamalısın çünkü son 1000 çubuk için kesişme olmadıysa, ilk olarak, döngü daha ileri gidecektir, ikinci olarak, döngü/diğer hatalar mümkündür, çünkü hikaye biterse ve kesişme olmazsa döngüden çıkış olmaz çünkü Dur = 0. Yukarıda belirttiğim gibi yazmak daha iyidir.
Ancak "veya" işareti çalışmıyor - duruma göre, arama 1000 bar olacak veya istenen sonuç bulunur bulunmaz sona erecek. Yoksa istenen sonuç bulunursa 1000'e ulaşmadan sona erecek mi - MA fiyatını geçmek?
-Aleks- : Ancak "veya" işareti çalışmıyor - duruma göre, arama 1000 bar olacak veya istenen sonuç bulunur bulunmaz sona erecek. Yoksa istenen sonuç bulunursa 1000'e ulaşmadan sona erecek mi - MA fiyatını geçmek?
|| parantez içindeki koşullardan en az biri doğruysa, o zaman döngü tekrarlanacaktır, bu nedenle, i >= 1000, ancak dur = 0 olduğunda bile, döngü devam edecek, i artmaya devam edecek, bu da yol açacaktır. yanlış MA değerlerine (tarihin ötesine geçilmesi durumunda). Ve istenen sonucu bulurken tamamlanması için , operatör molası sorumludur;
Tapochun : || parantez içindeki koşullardan en az biri doğruysa, o zaman döngü tekrarlanacaktır, bu nedenle, i >= 1000, ancak dur = 0 olduğunda bile, döngü devam edecek, i artmaya devam edecek, bu da yol açacaktır. yanlış MA değerlerine (tarihin ötesine geçilmesi durumunda). Ve istenen sonucu bulurken tamamlanması için , operatör molası sorumludur;
Anladım, açıklama için teşekkürler! Koşullardan birinin doğru olmayacağını ve sonra döngünün duracağını düşündüm...
dizinin boyutunun tersi -- virgül bekleniyor, en azından int yazın, en azından değil. Ve eğer int yazmazsanız, o zaman şunu yazar: "-
tipsiz beyan. Ve & bağlantısını ve köşeli parantezleri kaldırdı - yardımcı oldu! Uyarılar: Normal yazıldığında, derleyici şunu yazdı: tanımlayıcı gizler
küresel düzeyde duyuru. Ve küresel düzeyde tanımlayıcı bildirimini kaldırdığımda,
yaz: hata, bildirilmemiş tanımlayıcı. Ve High[] ve Low[] dizilerini HighP[] ve LowP[] olarak değiştirdim. Değil
yardım etti. Derleyici aynı şeyi yazar. 02:27 Moskova saati. Bir ekran görüntüsü dosyası ekliyorum.
dizinin boyutunun tersi -- virgül bekleniyor, en azından int yazın, en azından değil. Ve eğer int yazmazsanız, o zaman şunu yazar: "-
tipsiz beyan. Ve & bağlantısını ve köşeli parantezleri kaldırdı - yardımcı oldu! Uyarılar: normal yazıldığında, derleyici şunu yazdı: tanımlayıcı gizler
küresel düzeyde deklarasyon Ve küresel düzeyde tanımlayıcı bildirimini kaldırdığımda,
yaz: hata, bildirilmemiş tanımlayıcı. Ve High[] ve Low[] dizilerini HighP[] ve LowP[] olarak değiştirdim. Değil
yardım etti. Derleyici aynı şeyi yazar. 02:27 Moskova saati. Bir ekran görüntüsü dosyası ekliyorum.
Lütfen bana neyi yanlış yaptığımı söyle!?
Sıfır çubuğunu hesaba katmadan - fiyatın MA'yı en son geçtiği zamandan beri kaç çubuk geçtiğini hesaplamak gerekir.
if(Bars>1400)
{
int Stop;
double MATcycle;
for(int i=0;i!=1000 || Stop!=1; i++)
{
MATcycle=iMA(Symbol(),TFT,pMAT,shiftMAT,typeMAT,priceMAT,i+1);
if(MATcycle<High[i+1] && MATcycle>Low[i+1])
{
Stop=1;
Print("MATcycle=",MATcycle," i=",i);
}
else return (0);
}
Lütfen bana neyi yanlış yaptığımı söyle!?
Sıfır çubuğunu hesaba katmadan - fiyatın MA'yı en son geçtiği zamandan beri kaç çubuk geçtiğini hesaplamak gerekir.
if(Bars>1400)
{
int Stop;
double MATcycle;
for(int i=0;i<1000 || Stop==1; i++)
{
MATcycle=iMA(Symbol(),TFT,pMAT,shiftMAT,typeMAT,priceMAT,i+1);
if(MATcycle<High[i+1] && MATcycle>Low[i+1])
{
Stop=1;
Print("MATcycle=",MATcycle," i=",i);
}
else return (0);
}
Anladığım kadarıyla kesişimi tanımlayıp değeri stop=1 olarak ayarladıktan sonra döngü hemen çıkıyor. O zaman daha ileri gitmeniz ve kavşağın meydana geldiği mumun numarasını hatırlamanız gerekir. Onlar.
Kendiniz yazmak daha kolay:
Mum sayısını belirleyen sendin. Sayı = 2 ise ve mevcut olanı dikkate almıyorsanız, kesişimden bu yana bir mum çubuğu oluşmuştur (iyi veya istediğiniz gibi yorumlayın).
Anladığım kadarıyla kesişimi tanımlayıp değeri stop=1 olarak ayarladıktan sonra döngü hemen çıkıyor. O zaman daha ileri gitmeniz ve kavşağın meydana geldiği mumun numarasını hatırlamanız gerekir. Onlar.
Kendin yazmak daha kolay:
Mum sayısını belirleyen sendin. Sayı = 2 ise ve mevcut olanı hesaba katmazsak, kesişimden bu yana bir mum çubuğu oluşmuştur (peki, ya da istediğiniz gibi yorumlayın).
teşekkürler bende öyle yaptım
int Stop=0;
if(Bars>1400)
{
double MATcycle;
for(int i=1;(i!=1000 || Stop==0); i++)
{
MATcycle=iMA(Symbol(),TFT,pMAT,shiftMAT,typeMAT,priceMAT,i);
if(MATcycle<=High[i] && MATcycle>=Low[i])
{
Print("MATcycle=",MATcycle," i=",i);
Stop=i;
break;
}
}
}
Lütfen söyle bana, test cihazının böyle bir göstergesi hayatta gerçek mi? Ve 3000 $ depo ile yıl için iyi mi yoksa kötü bir sonuç mu?
teşekkürler bende öyle yaptım
int Stop=0;
if(Bars>1400)
{
double MATcycle;
for(int i=1;(i!=1000 || Stop==0); i++)
{
MATcycle=iMA(Symbol(),TFT,pMAT,shiftMAT,typeMAT,priceMAT,i);
if(MATcycle<=High[i] && MATcycle>=Low[i])
{
Print("MATcycle=",MATcycle," i=",i);
Stop=i;
break;
}
}
}
Böyle yazmamalısın çünkü son 1000 çubuk için kesişme olmadıysa, ilk olarak, döngü daha ileri gidecektir, ikinci olarak, döngü/diğer hatalar mümkündür, çünkü hikaye biterse ve kesişme olmazsa döngüden çıkış olmaz çünkü Dur = 0. Yukarıda belirttiğim gibi yazmak daha iyidir.
Böyle yazmamalısın çünkü son 1000 çubuk için kesişme olmadıysa, ilk olarak, döngü daha ileri gidecektir, ikinci olarak, döngü/diğer hatalar mümkündür, çünkü hikaye biterse ve kesişme olmazsa döngüden çıkış olmaz çünkü Dur = 0. Yukarıda belirttiğim gibi yazmak daha iyidir.
Ancak "veya" işareti çalışmıyor - duruma göre, arama 1000 bar olacak veya istenen sonuç bulunur bulunmaz sona erecek. Yoksa istenen sonuç bulunursa 1000'e ulaşmadan sona erecek mi - MA fiyatını geçmek?
|| parantez içindeki koşullardan en az biri doğruysa, o zaman döngü tekrarlanacaktır, bu nedenle, i >= 1000, ancak dur = 0 olduğunda bile, döngü devam edecek, i artmaya devam edecek, bu da yol açacaktır. yanlış MA değerlerine (tarihin ötesine geçilmesi durumunda). Ve istenen sonucu bulurken tamamlanması için , operatör molası sorumludur;
Merhaba! 2015.09.19_02:13 Moskova saati. ArrayResize() işlevinde, her durumda derleyici yazar
dizinin boyutunun tersi -- virgül bekleniyor, en azından int yazın, en azından değil. Ve eğer int yazmazsanız, o zaman şunu yazar: "-
tipsiz beyan. Ve & bağlantısını ve köşeli parantezleri kaldırdı - yardımcı oldu!
Uyarılar: Normal yazıldığında, derleyici şunu yazdı: tanımlayıcı gizler
küresel düzeyde duyuru. Ve küresel düzeyde tanımlayıcı bildirimini kaldırdığımda,
yaz: hata, bildirilmemiş tanımlayıcı. Ve High[] ve Low[] dizilerini HighP[] ve LowP[] olarak değiştirdim. Değil
yardım etti. Derleyici aynı şeyi yazar. 02:27 Moskova saati. Bir ekran görüntüsü dosyası ekliyorum.
Merhaba! 2015.09.19_02:13 Moskova saati. ArrayResize() işlevinde, her durumda derleyici yazar
dizinin boyutunun tersi -- virgül bekleniyor, en azından int yazın, en azından değil. Ve eğer int yazmazsanız, o zaman şunu yazar: "-
tipsiz beyan. Ve & bağlantısını ve köşeli parantezleri kaldırdı - yardımcı oldu!
Uyarılar: normal yazıldığında, derleyici şunu yazdı: tanımlayıcı gizler
küresel düzeyde deklarasyon Ve küresel düzeyde tanımlayıcı bildirimini kaldırdığımda,
yaz: hata, bildirilmemiş tanımlayıcı. Ve High[] ve Low[] dizilerini HighP[] ve LowP[] olarak değiştirdim. Değil
yardım etti. Derleyici aynı şeyi yazar. 02:27 Moskova saati. Bir ekran görüntüsü dosyası ekliyorum.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Yeni Başlayanlardan Sorular
Karputov Vladimir , 2015.09.17 18:46