Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Çift tip değişkenler için == koşulunu kullanmak doğru değildir. Bunun gibi bir şeyi karşılaştırmanız önerilir:
double türündeki değişkenler için == koşulunu kullanmak doğru değildir. Bunun gibi bir şeyi karşılaştırmanız önerilir:
Oldukça makul ve en önemlisi makul bir yaklaşım. Bana öyle geliyor ki en azından ilk satır şöyle görünmeliydi:
Aşağıdaki mesajlar zaman zaman günlükte görünmeye başladı
2010.06.15 14:48:09 MemoryException 4915200 bayt mevcut değil
ne yapalım ? Desteğe göndermeniz gerekiyorsa, ancak ne göndereceğimi bilmiyorum ((
Aşağıdaki mesajlar zaman zaman günlükte görünmeye başladı
2010.06.15 14:48:09 MemoryException 4915200 bayt mevcut değil
ne yapalım ? desteğe göndermeniz gerekiyorsa, ancak ne göndereceğimi bilmiyorum ((
double türündeki değişkenler için == koşulunu kullanmak doğru değildir. Bunun gibi bir şeyi karşılaştırmanız önerilir:
Op eksik. hafıza. Dinamik dizilerin boyutlarını kontrol edin, büyük olasılıkla mevcut olandan daha fazla bellek ayırma girişimi.
Eğer doğru anladıysam mesele bu değildi. daha sonra kullanıcı tanımlı işlevin sonuna her zaman return ifadesini koymalısınız.
== hakkındaki cevabın aslında olduğu gibi. Gerçekten de, double türünde bir fonksiyonda bir yerde bir dönüş (...) olmalıdır. Sonunda zorunlu değil. if() return(); içinde == operatörünü kullanma 0.1000000000000000001 türünde bir LotStep'iniz varsa false döndürebilir. Sonra birden fazla dönüş başarısız olur ve işlev hiçbir şey döndürmez. Her ne kadar sizin durumunuzda olsa da, büyük olasılıkla geri dönüş NormalizeDouble'ı sevmiyor. Çalışan sürümünüzde, sonunu return(NormilizeDouble(lot,2)) olarak değiştirin ve çalışıp çalışmadığını görün. Ben kendim ilgileniyorum.
== hakkındaki cevabın aslında olduğu gibi. Gerçekten de, double türünde bir fonksiyonda bir yerde bir dönüş (...) olmalıdır. Sonunda zorunlu değil. if() return(); içinde == operatörünü kullanma 0.1000000000000000001 türünde bir LotStep'iniz varsa false döndürebilir. Sonra birden fazla dönüş başarısız olur ve işlev hiçbir şey döndürmez. Her ne kadar sizin durumunuzda olsa da, büyük olasılıkla geri dönüş NormalizeDouble'ı sevmiyor. Çalışan sürümünüzde, sonunu return(NormilizeDouble(lot,2)) olarak değiştirin ve çalışıp çalışmadığını görün. Ben kendim ilgileniyorum.
Sonunda mutlaka bir dönüş olmalı (...), ancak ulaşmayabilir (eğer koşullardan biri çalışıyorsa)...
Renat :
Hata, hesaplamalarınızda marj para birimini unutmuş olmanızdır. Bakiye = 100 USD ve Marj Gereksinimleri = 100 EUR (119 USD).
Bu nedenle, işlemi gerçekleştiremezsiniz - bu doğru.
Doğru marj hesaplamasıyla ilgili soruma geri dönmek istiyorum. Renat'ın belirttiği gibi, hesaplamalarımda LotRqdMgn (1 lot almak için gerekli marj) para biriminin fiyatını dikkate almıyor. Sonra böyle bir masa gördüğümü hatırladım.
tanımlayıcı
Tanım
formül
SYMBOL_CALC_MODE_FOREX
Ex modu için - Forex için kar ve marj hesaplaması
Marj: Lot*Sözleşme_Boyutu/Kaldıraç
P ro fit: ( close_price -open_price)*Contract_Size*Lots
SYMBOL_CALC_MODE_FUTURES
Vadeli işlemler modu - vadeli işlemler için marjın ve kârın hesaplanması
Marj: Lot *İlk Marj*Yüzde/100
Kar: (close_price-open_price)*TickPrice/TickSize*Lots
SYMBOL_CALC_MODE_CFD
CFD modu - CFD için marj ve kar hesaplaması
Marj: Lot *Sözleşme Büyüklüğü*PiyasaFiyatı*Yüzde/100
Kar: (close_price-open_price)*Contract_Size*Çok
SYMBOL_CALC_MODE_CFDINDEX
CFD endeks modu - endekslere göre CFD için marj ve kârın hesaplanması
Marj: (Lot*SözleşmeBoyutu*PiyasaFiyatı)*TickPrice/TickSize
Kar: (close_price-open_price)*Contract_Size*Lot s
SYMBOL_CALC_MODE_CFDLEVERAGE
CFD Kaldıraç modu - kaldıraç ticaretinde CFD için marj ve kârın hesaplanması
Marj: (Lot*Sözleşme Büyüklüğü*PiyasaFiyatı*Yüzde)/Kaldıraç
Kar: (close_price-open_price)*Contract_Size*Çok
Yani tabloda bir hata olduğu ortaya çıkıyor: Lots*Sözleşme_Boyutu/ Kaldıraç yerine Fiyat*Lot*Sözleşme_Boyutu/Kaldıraç olmalıdır.