Tabii ki çalışmıyor))) Minimumu SL, TP ve TS değil, Stop Level değerini ayarlamanız gerekiyor. Ve programı başlatırken sadece bir kez değil, her tikte:
digits = ( int ) SymbolInfoInteger (symbol, SYMBOL_DIGITS ); point = SymbolInfoDouble (symbol, SYMBOL_POINT ); tickSize = SymbolInfoDouble (symbol, SYMBOL_TRADE_TICK_SIZE ); ask = SymbolInfoDouble (symbol, SYMBOL_ASK ); bid = SymbolInfoDouble (symbol, SYMBOL_BID ); spread = ask - bid; stopLevel = MarketInfo (symbol, MODE_STOPLEVEL ) * point; if (stopLevel == 0 ) { if (!isECN) stopLevel = NormalizeDouble ( 2 * spread, digits); } else stopLevel = NormalizeDouble (stopLevel + tickSize, digits);isECN - kullanıcı tarafından yapılandırılabilir olmalıdır. Asgari mesafelerde gerçekten herhangi bir kısıtlamanın olmadığı "gerçek ECN" türünde hesaplar vardır, yani, spreadin içine duraklar / karlar / tasarruflar yerleştirilebilir.
StopLevel yardımcı olmaz, çünkü Ask-Bid farkı kullanılarak sıfır da döndürülür
ve dakika durağı için de
Herkese merhaba arkadaşlar!
marketin böyle bir özelliği var: min stop için tüm değerleri kontrol etmeniz gerekiyor.
Değişkenin değeri min stop'tan küçükse, min stop atayın, böylece hata 130 olmaz.
Şimdi, brokerlerin %90'ında spread ve minstop dalgalanıyor ve 0 veriyor.
tüm değişkenlere min stop değerleri atayan böyle bir kod yapısı vardır.
ama artık piyasada geçmiyor, çünkü artık her yerde min stop = 0,
bu sorunla kim uğraşıyor?
Bir seçenek olarak, minimum durdurma boyutuna kendiniz bir sınır getirin. Örneğin, OnInit() içinde, kullanıcının 2 noktadan daha az bir durdurma belirleyip belirlemediğini kontrol edin, bir uyarı verin ve INIT_PARAMETERS_INCORRECT dönüş kodunu döndürün.
Diğer bir seçenek ise, kullanıcının stop boyutunu kontrol etmesine izin vermek değil, işlem koşullarına göre Expert Advisor'da dinamik olarak hesaplamaktır.
Bir seçenek olarak, minimum durdurma boyutuna kendiniz bir kısıtlama getirin. Örneğin, OnInit() içinde, kullanıcının 2 noktadan daha az bir durdurma belirleyip belirlemediğini kontrol edin, bir uyarı verin ve INIT_PARAMETERS_INCORRECT dönüş kodunu döndürün.
Diğer bir seçenek ise, kullanıcının stop boyutunu kontrol etmesine izin vermek değil, işlem koşullarına göre Expert Advisor'da dinamik olarak hesaplamaktır.
Katılıyorum - kontrol vermeyin, ancak bunun türüne göre nasıl gerekli olduğunu biliyorsunuz: Durağımı ayarlamak istiyorum. ayarı yapın.
Ve mesaj çıktısı hakkında - teşekkürler, bunu düşüneceğim.
komisyoncu minimum durağı sıfıra eşit olarak ilan ettiğinden, başka hiçbir şey kalmaz, spread yeterli değilse bir çarpan seçebilirsiniz
evet, bu sadece piyasa içindir - ancak herhangi bir komisyoncu için evrensellik yoktur
piyasada kabul edildiği ortaya çıktı - 3 spread için bir dakika durmanız gerekiyor,
ama aslında bu yanlıştır - çünkü aracının minstop = 1 spread'i varsa, kullanıcı 3'ten az spread koyamaz.
pusu.
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Herkese merhaba arkadaşlar!
marketin böyle bir özelliği var: min stop için tüm değerleri kontrol etmeniz gerekiyor.
Değişkenin değeri min stop'tan küçükse, min stop atayın, böylece hata 130 olmaz.
Şimdi, brokerlerin %90'ında spread ve minstop dalgalanıyor ve 0 veriyor.
tüm değişkenlere min stop değerleri atayan böyle bir kod yapısı vardır.
ama artık piyasada geçmiyor, çünkü artık her yerde min stop = 0,
bu sorunla kim uğraşıyor?