Özünde, mumları UPPfiyat / DÜŞÜKfiyat aralığına girmeyen kontrollerden ve hesaplamalardan hariç tutma teklifiniz ... bu iki satırla hariç tutulur. Döngüden çıkış yoksa fiyat ihtiyacımız olan aralıktadır ve standart kontroller yaparız. Kodunuz yalnızca sonuçların zararına olacak şekilde daha hızlı çalışabilir, çünkü INS ile çalışmanın mantığı, bu değişkenin değerini önceki yinelemeden kullanmak çok akıllıcadır, bu saçmalık.
Özünde, mumları UPPfiyat / DÜŞÜKfiyat aralığına girmeyen kontrollerden ve hesaplamalardan hariç tutma teklifiniz ... bu iki satırla hariç tutulur. Döngüden çıkış yoksa fiyat ihtiyacımız olan aralıktadır ve standart kontroller yaparız. Kodunuz yalnızca sonuçların zararına olacak şekilde daha hızlı çalışabilir, çünkü INS ile çalışmanın mantığı, bu değişkenin değerini önceki yinelemeden kullanmak çok akıllıcadır, bu saçmalık.
Çok emin! :))))
Daha önce kodu sağladınız:
splxgf :
if (LOWprice > iHigh ( NULL , 60 ,i)) continue;
if (UPPprice < iLow ( NULL , 60 ,i)) continue;
Fiyat Düşük'ün altındaysa, fiyatın Yüksek'in üzerinde olup olmadığını neden kontrol etmeliyiz? Sürümünüzde bu koşul hariç tutulmaz. Önerilen versiyonumda:
if (UPP)
... // не выполнитсяif (LOW)
if (LOWprice < iLow ( NULL , 60 ,i))
continue ;
else
..
hariç tutulmuştur.
Kodumun en uygun olmayabileceğini inkar etmiyorum.
Ama sizce kaç kat daha hızlı:
if (UPP)
çalışmak
if (LOWprice > iHigh ( NULL , 60 ,i))
?
Nitekim özünde:
UPP = LOWprice > iHigh ( NULL , 60 , i);
Bunu sadece ben kesin olarak biliyorum (teklif mevcut tarihsel çubuğun içinde olduğu durumlar hariç) ve siz hesaplarsınız...
INS = True;
for ( int i= 1 ; i<= 6000 ; i++)
{
if (INS)
{
if (LOWprice > iHigh ( NULL , 60 ,i))
{
INS = False;
UPP = True;
LOW = False;
continue ;
Bu kod parçasını düşünün
INS=Doğru;
döngü gitti
if (INS) normal uçuş
if (LOWprice...) örneğin, koşul karşılanır, ancak burada opak olduğu ortaya çıkar çünkü INS=False alırız ve bir sonraki yinelemeye geçeriz
o zaman (yanlış) ve yelken açtıysa, bu başka bir bar olduğu için, hangisinin olduğunu merak ediyor ...
Koduma gelince, fiyatı kontrol etmiyorum, barın koridora girişi +300/-300 pip'ten cari fiyat ise, o zaman hesaplanmalıdır. İlk iki kontrol, örneğin gereksiz çubukların %90'ını ortadan kaldırdığından, diğer tüm optimizasyonlar çok kritik değildir.
Bu nedenle, her koşuldan sonra başka bir if (LOWprice > iHigh (NULL,60,i)) varsa, boolean değişkenlerin bir ivme vereceği kabul edilir, yani. sadece kenarda aynı yumurtalar, artı bir koşul ve bir sürü görev...
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
Elbette??
Özünde, mumları UPPfiyat / DÜŞÜKfiyat aralığına girmeyen kontrollerden ve hesaplamalardan hariç tutma teklifiniz ... bu iki satırla hariç tutulur. Döngüden çıkış yoksa fiyat ihtiyacımız olan aralıktadır ve standart kontroller yaparız. Kodunuz yalnızca sonuçların zararına olacak şekilde daha hızlı çalışabilir, çünkü INS ile çalışmanın mantığı, bu değişkenin değerini önceki yinelemeden kullanmak çok akıllıcadır, bu saçmalık.
Özünde, mumları UPPfiyat / DÜŞÜKfiyat aralığına girmeyen kontrollerden ve hesaplamalardan hariç tutma teklifiniz ... bu iki satırla hariç tutulur. Döngüden çıkış yoksa fiyat ihtiyacımız olan aralıktadır ve standart kontroller yaparız. Kodunuz yalnızca sonuçların zararına olacak şekilde daha hızlı çalışabilir, çünkü INS ile çalışmanın mantığı, bu değişkenin değerini önceki yinelemeden kullanmak çok akıllıcadır, bu saçmalık.
Çok emin! :))))
Daha önce kodu sağladınız:
Fiyat Düşük'ün altındaysa, fiyatın Yüksek'in üzerinde olup olmadığını neden kontrol etmeliyiz? Sürümünüzde bu koşul hariç tutulmaz. Önerilen versiyonumda:
hariç tutulmuştur.
Kodumun en uygun olmayabileceğini inkar etmiyorum.
Ama sizce kaç kat daha hızlı:
if (UPP)çalışmak
?
Nitekim özünde:
Bunu sadece ben kesin olarak biliyorum (teklif mevcut tarihsel çubuğun içinde olduğu durumlar hariç) ve siz hesaplarsınız...
Evet.
aynı o kadar saptırmak gerekiyor ki bir kodun üç net satırının koda dönüşmesi, anlaşılması zor.
iLow, iHigh kontrolünü bölme fikriniz varsa, hemen bölebilirsiniz:
ve hiçbir şey yapmaBu kod parçasını düşünün
INS=Doğru;
döngü gitti
if (INS) normal uçuş
if (LOWprice...) örneğin, koşul karşılanır, ancak burada opak olduğu ortaya çıkar çünkü INS=False alırız ve bir sonraki yinelemeye geçeriz
o zaman (yanlış) ve yelken açtıysa, bu başka bir bar olduğu için, hangisinin olduğunu merak ediyor ...
Koduma gelince, fiyatı kontrol etmiyorum, barın koridora girişi +300/-300 pip'ten cari fiyat ise, o zaman hesaplanmalıdır. İlk iki kontrol, örneğin gereksiz çubukların %90'ını ortadan kaldırdığından, diğer tüm optimizasyonlar çok kritik değildir.
o zaman (yanlış) ve yelken açtıysa, bu başka bir bar olduğu için, hangisinin olduğunu merak ediyor ...
ve sonra gerçekten yüzdüler ...
Bu nedenle, her koşuldan sonra başka bir if (LOWprice > iHigh (NULL,60,i)) varsa, boolean değişkenlerin bir ivme vereceği kabul edilir, yani. sadece kenarda aynı yumurtalar, artı bir koşul ve bir sürü görev...
Hata!
Burada tartışma bir şaka değil alevlendi.
Bunu şimdiye kadar yaptınız:
Fiyat hareketini izlemek çok ilginç. Daima en az direnç yönünde ilerleyin.
Gelecekteki hareketini bile tahmin edebilirsiniz. İzlemek.
Fiyat, su gibi nehir yatağı boyunca akar.
Herkese teşekkürler!
Lütfen bana en yüksek değere sahip çubuğun numarasını nasıl bulacağımı söyleyin.
Search_High=MathMax( Yüksek[i],Yüksek[1])
Lütfen bana en yüksek değere sahip çubuğun numarasını nasıl bulacağımı söyleyin.
Search_High=MathMax( Yüksek[i],Yüksek[1])
https://docs.mql4.com/ru/array/ArrayMaximum üzerinden gidebilirsiniz.
Yüksek dizi tarafından.