"Uzman Danışmanlarda Sınırlamalar ve Doğrulamalar" makalesi için tartışma

 

Yeni makale Uzman Danışmanlarda Sınırlamalar ve Doğrulamalar yayınlandı:

Pazartesi günü bu sembolün alım satımına izin verilir mi? Pozisyon açmak için yeterli para var mı? Zararı Durdur tetiklenirse kayıp ne kadar büyük olur? Bekleyen emirlerin sayısı nasıl sınırlandırılır? Alım satım işlemi mevcut çubukta mı yoksa önceki çubukta mı gerçekleştirildi? Bir alım satım robotu bu tür doğrulamaları gerçekleştiremezse, herhangi bir alım satım stratejisi kaybeden bir stratejiye dönüşebilir. Bu makale, herhangi bir Uzman Danışmanda yararlı olan doğrulama örneklerini gösterir.

Hacmin doğru olup olmadığını kontrol eden CheckVolumeValue.mq5 mesajları.

Yazar: MetaQuotes

 

faydalı makale

 
Katılıyorum, çok faydalı şeyler... Lütfen, zor olduğunu düşünmeyin, lütfen "İşlem Seansı" ve "Kotasyon Seansı" kavramını açıklayın.
 

Bir işlem seansının, emir verebileceğiniz bir kotasyon seansından farklı olduğunu anlıyorum.

ancak kotasyonlar henüz devam etmiyor, yani alım satım gerçekleşmiyor, ancak emirler verilebilir.

Kotasyonların devam ettiği açıktır, bu da bu enstrüman üzerinde işlemlerin gerçekleştiği anlamına gelir.


Yanlışım varsa düzeltin

 
İşlem se ansında işlem yapabilirsiniz, kotasyon seansında fiyatlar işlem seansındaki gibi alınır, ancak işlem yapamazsınız.
 
Rosh:
İşlem se ansında işlem yapabilirsiniz, teklif seansında fiyatlar işlem seansındaki gibi gelir, ancak işlem yapamazsınız.

Teşekkürler, bu mantıklı.
 
MQL5 dilindeki bir değişiklik nedeniyle, artık bir sembol başına izin verilen maksimum kümülatif hacim bu şekilde elde edilmelidir:
//--- birimdeki karakter sınırını al
   double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_LIMIT);

Eski varyant bu şekildeydi ve artık kullanılmamalıdır:

//--- birimdeki karakter sınırını al
   double max_volume=AccountInfoDouble(ACCOUNT_LIMIT_VOLUME);


Makale düzeltildi ve Check_Order_And_Volume_Limits.mq5 Uzman Danışmanının yeni kodu eklendi.

 

MQL5'teki değişiklikler nedeniyle, artık bir sembol için izin verilen maksimum toplam hacim aşağıdaki gibi elde edilebilir:

//--- birim için sembol sınırlamasını al
   double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_LIMIT);

Eski varyantı kullanmayın! Bu şekildeydi:

//--- birim için sembol sınırlamasını al
   double max_volume=AccountInfoDouble(ACCOUNT_LIMIT_VOLUME);
Makale düzeltilmiş ve yeni Check_Order_And_Volume_Limits.mq5 uzman kodu eklenmiştir.
 

(yapı 306)

void OnStart()
{
double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_LIMIT);
}

derleme hataları:

'SYMBOL_VOLUME_LIMIT' - bildirilmemiş tanımlayıcı test.mq5 4 46
'SymbolInfoDouble' - fonksiyon çağrısına aşırı yüklerden biri uygulanamaz test.mq5 4 20

 

Makaleden alıntı:"Son çubuğun açılış zamanını almak için, sembol adı, zaman dilimi ve SERIES_LASTBAR_DATE özelliği verilmesi gereken SeriesInfoInteger() işlevini kullanabilirsiniz".

Referans kitabının önceki bir versiyonunda , CopyTime fonksiyonunu kullanarak son çubuğun açık olduğu zamanı elde etmek için kabaca buna benzer bir örnek vardı :

datetime lastbar_time[1];

CopyTime(Symbol(),0,0,1,lastbar_time);

Soru: Son bar açılış zamanını elde etmek için bu iki seçenekten hangisi bilgi alma hızı ve kullanım verimliliği açısından tercih edilir?

 
Yedelkin:

Makaleden alıntı:"Son çubuk açılış zamanını almak için, sembol adı, zaman dilimi ve SERIES_LASTBAR_DATE özelliği verilmesi gereken SeriesInfoInteger() işlevini kullanabilirsiniz."

Referans Kılavuzunun önceki bir versiyonunda , CopyTime fonksiyonunu kullanarak son çubuğun açılış zamanını elde etmek için aşağıdaki gibi bir örnek vardı:

Soru: Son bar açılış zamanını almak için bu iki seçenekten hangisi bilgi alma hızı ve kullanım verimliliği açısından tercih edilir?

Zaman açısından eşdeğer olmaları gerekir, ancak SERIES_LASTBAR_DATE ile seçeneği daha iyi görünüyor.