Ve konuya daha yakınsa? INIT'in örneğin bağlantı kopmaları veya diğer bazı benzer durumlarla başarısız olabileceği uzun süredir tartışılmaktadır. Çünkü öngörülemeyen durumlarda daha sonra verileri yeniden başlatmaz ve yalnızca bir kez çalışır! Yani bu tamamen doğru bir seçenek değil.
Durumunuza göre gerektiğinde kimse init () çağırma zahmetine girmez.
Zhunko : Bu, referansa göre bir parametre geçiyor. Durumunuza göre gerektiğinde kimse init () çağırma zahmetine girmez.
Sonra tekrar, bu anın kontrolü sorununu çözmeniz gerekiyor. Sonuçta, "nerede gerekli olduğunu" bulmak için bulmanız gerekir .. Ve örneğin bayrak aracılığıyla öğrenebilirsiniz. Örneğin, bayrağın global olacağı ortaya çıktı:
gInitTrue = false ;
Fonksiyonun en sonundaki init() içinde bir değer atayın:
gInitTrue = true ;
Ve fonksiyonun en başında, başlangıcı kontrol edeceğiz:
if (gInitTrue != true )
init();
doğru mu anladım Yoksa dikkate alınması gereken başka bir şey var mı?
Ve konuya daha yakınsa? INIT'in örneğin bağlantı kesilmesi veya diğer bazı benzer durumlarla başarısız olabileceği uzun süredir tartışılmaktadır. Çünkü öngörülemeyen durumlarda daha sonra verileri yeniden başlatmaz ve yalnızca bir kez çalışır! Yani bu tamamen doğru bir seçenek değil.
init()'in çalışması için bir zaman sınırı yoktur, teorik olarak hesaplamalar birkaç saniye/dakika sürebilir. Burada bağlantıyı kesmek mantıklı değil. Onlar. grafikte bir baykuş başlattı -> bir tik geldi -> init() içinde hesaplamalar başladı (şu anda birçok tik gelebilir veya bağlantı kopabilir) -> sonra ilk tetikleyicinin danışmanı start() ve böylece bekler yeni bir kene için.
kodun nasıl doğru yazılacağını, böylece belirtilen zararı durdur veya kârı al minimum stoptan daha az ise, onları eşitleyin ve stopları minimum stop olarak kullanın. ?
webip : kodun nasıl doğru yazılacağını, böylece belirtilen zararı durdur veya kârı al minimum stoptan daha az ise, onları eşitleyin ve stopları minimum stop olarak kullanın. ?
Bana küçük bir kod söyle. Burada dosyayı açtım .... Hangi fonksiyonların yardımıyla bir kaydı kaydedebilir, kaydedebilir ve ardından kapatabilirsiniz ...
Zolotai : Bana küçük bir kod söyle. Burada dosyayı açtım .... Hangi fonksiyonların yardımıyla bir kaydı kaydedebilir, kaydedebilir ve ardından kapatabilirsiniz ...
Soru aptalca ama sanki cevabı hiçbir yerde görmemişim ya da belki çarpık bakmışım:
İşlevlerde ve belki başka bir yerde, veri türünden sonra & sembolüyle karşılaştım ve yanılmıyorsam bir keresinde && gördüm.
func( int& mm_mode, string sembolü, int magic, bool& stop) {
Bu ne için? ne verir ve yapar? Daha fazla ayrıntı alabilirseniz bağlantı
Ve konuya daha yakınsa? INIT'in örneğin bağlantı kopmaları veya diğer bazı benzer durumlarla başarısız olabileceği uzun süredir tartışılmaktadır. Çünkü öngörülemeyen durumlarda daha sonra verileri yeniden başlatmaz ve yalnızca bir kez çalışır! Yani bu tamamen doğru bir seçenek değil.
hoz :
Bu aynı:
En az masrafla mantığı uygulamak için hiçbir şekilde anlamayacağım.
if(...) durdurma emrini ayarla;
if(sipariş ömrü>süresi) siparişi iptal et ve if(..) yeni bir sipariş ver;
Zorluk şu ki, halihazırda açık olan birkaç pozisyon olabilir ve hepsine nasıl eşlik edilir? En kolay yol nedir?
Teşekkür ederim!
Bu, referansa göre bir parametre geçiyor.
Durumunuza göre gerektiğinde kimse init () çağırma zahmetine girmez.
Sonra tekrar, bu anın kontrolü sorununu çözmeniz gerekiyor. Sonuçta, "nerede gerekli olduğunu" bulmak için bulmanız gerekir .. Ve örneğin bayrak aracılığıyla öğrenebilirsiniz. Örneğin, bayrağın global olacağı ortaya çıktı:
gInitTrue = false ;Fonksiyonun en sonundaki init() içinde bir değer atayın:
gInitTrue = true ;Ve fonksiyonun en başında, başlangıcı kontrol edeceğiz:
doğru mu anladım Yoksa dikkate alınması gereken başka bir şey var mı?Ve konuya daha yakınsa? INIT'in örneğin bağlantı kesilmesi veya diğer bazı benzer durumlarla başarısız olabileceği uzun süredir tartışılmaktadır. Çünkü öngörülemeyen durumlarda daha sonra verileri yeniden başlatmaz ve yalnızca bir kez çalışır! Yani bu tamamen doğru bir seçenek değil.
kodun nasıl doğru yazılacağını, böylece belirtilen zararı durdur veya kârı al minimum stoptan daha az ise, onları eşitleyin ve stopları minimum stop olarak kullanın. ?
Bana küçük bir kod söyle. Burada dosyayı açtım .... Hangi fonksiyonların yardımıyla bir kaydı kaydedebilir, kaydedebilir ve ardından kapatabilirsiniz ...
https://docs.mql4.com/ru/files