Hatalar, hatalar, sorular - sayfa 1142

 
ierehon :

Merhaba!

Soru, bir dakika içinde her tikte güncellenen bir değişkenin değerlerinin nasıl toplanacağı ve daha sonra bu toplamın ayrı bir değere yazılması, bir sonraki dakikanın kapanmasından sonra toplamın değeri ile değiştirilmesidir. yeni bir?

Makaleyi okuyun ! Ve diğerleri de.

Algoritmanıza örnek olarak "kene sayacı" göstergesini çizdim. Her tikte b değişkenine ihtiyacınız olan değer atanırsa, sorduğunuz şeyi alırsınız.

Dosyalar:
TickSum.mq5  4 kb
 
MigVRN'ye

Makale ve gösterge için teşekkürler! Bunu halledeceğim.


 
harbor :

mql5'te 1 lot sembol açmak için gereken serbest marj miktarını nasıl hesaplayacağınızı size söyleyecek kişiler

mql4'te nasıl olduğunu biliyorum ama mql5'te bulamıyorum

 double marg;
OrderCalcMargin ( ORDER_TYPE_BUY , sym, 1 , tick.ask, marg);
 
Youtube videoları HTTP S ile gömülmez.
 
MigVRN :

1) Her tikte gösterge oluşturmaya gerek yok!

2) Değerlerine başvurmadan önce göstergenin oluşturulup oluşturulmadığını kontrol etmek gerekir.

3) İstenilen değerlerin indikatörden kopyalanıp kopyalanmadığını kontrol etmek gerekir.

4) Uzman Danışman tamamlandıktan sonra her zaman göstergenin hesaplanan kısmını silin, aksi takdirde bir noktada yeterli operatör olmayabilir.

Söve, henüz oluşturulmamış bir göstergeden değerleri kopyalamaya çalışmanızdan kaynaklanıyordu. Çağrılan işlevlerin sonucunu kontrol etmeyi bir kural haline getirin.

Teşekkürler, anladım !

"Oyun ilerledikçe" BP_var_s, BDev_var_s ve MA_var_s göstergelerinin giriş parametrelerini yalnızca ben değiştiririm. Bu durumda ne yapmalı? Teoride her seferinde oluşturup silmek gerekiyor....

 
Alvin1976 :

Teşekkürler, anladım !

"Oyun ilerledikçe" BP_var_s, BDev_var_s ve MA_var_s göstergelerinin giriş parametrelerini yalnızca ben değiştiririm. Bu durumda ne yapmalı? Teoride her seferinde oluşturup silmeniz gerekiyor ....

Burada birkaç seçenek var:

1) Gösterge parametreleri bazı kriterlere (koşullara) göre zaman içinde değişir. Bu nedenle, her tik üzerinde tutamaçları yeniden oluşturmaya gerek yoktur. Durumu kontrol edin ve karşılanırsa yeniden oluşturun.

Diyelim ki koşul, dakika zaman diliminde "yeni çubuk" olayının ortaya çıkmasıdır. "Yeni çubuk" etkinliğinin tanımlarına ilişkin birçok örnek vardır - siteye bakın. Bu seçeneği en çok seviyorum.

2) Yine de, her tikte, döngüdeki Cop y Buffer() denetiminin sonunu bekleyin (uyku() kullanarak). Ancak, büyük olasılıkla, keneler atlanacak. Bir seçenek olarak - hindileri tüm tarih için değil, son birkaç yüz çubuk için saymak (standart hindilerin koduna girmek ve kodu düzenlemek için) - daha az kene atlayacaktır.

 

Başka bir sorun ortaya çıktı.

 long Min_Dist;

bool Inf=( SymbolInfoInteger ( Symbol (), SYMBOL_TRADE_STOPS_LEVEL ,Min_Dist));
       if (Inf= true ) Print ( "      mindist=" , DoubleToString (Min_Dist)); 

Test cihazındaki Min_Dist değişkeni her zaman sıfır döndürür. Henüz canlı piyasada test etmedim.

O zaman neden sıfır? Her şey yolunda gidiyor gibi....

 
Alvin1976 :

Başka bir sorun ortaya çıktı.

Test cihazındaki Min_Dist değişkeni her zaman sıfır döndürür. Henüz canlı piyasada test etmedim.

O zaman neden sıfır? Her şey yolunda gidiyor gibi....

Şu şekilde deneyin:
 long Min_Dist;

Min_Dist=( SymbolInfoInteger ( Symbol (), SYMBOL_TRADE_STOPS_LEVEL );
       //if (Inf=true) Print("      mindist=", DoubleToString(Min_Dist)); 
Öyleyse SYMBOL_TRADE_STOPS_LEVEL'in gerçek değerini kontrol edin
 
barabashkakvn :
Bunu deneyin: SYMBOL_TRADE_STOPS_LEVEL'in gerçek değerini bu şekilde kontrol edin

Aynı şey olur. Sıfır. :(.

Test cihazında.

Pazartesi günü piyasaya bakacağım.

ZY Her şeyi öğrendim. Bunlar DC'nin sorunları. Ve sadece bir tane değil :-). Google SYMBOL_TRADE_STOPS_LEVEL üzerinde mantıklı bir şey vermediği için hemen anlamadım ama MODE_STOPLEVEL üzerinde bir sürü bilgi verdi.

SYMBOL_SPREAD kullanacağım.

 
Roffild :
Youtube videoları HTTP S ile gömülmez.
Youtube HTTP S nereden geliyor? İşte olağan video kodu - http://youtu.be/K0PIVuJ2kU
Neden: