MetaTrader 4 için bir API fonksiyonları kütüphanesi geliştirildi - sayfa 4

 
MT4 fiyat teklifi sunucusunun ayarlarına göre her 10 saniyede bir defadan fazla işlem yapılması mümkün değildir. Sunucu, olası korsan DoS saldırılarını önlemek için çeşitli isteklerin sıklığını sınırlar. Bu bilgi zaten bir şekilde bu forumda gündeme getirildi.
Bu doğru değil.
İşlemlerin sıklığı yalnızca aracının tepki hızı ile sınırlıdır =)
MT'de herhangi bir kısıtlama yoktur.

Forumda, geliştiriciler bunun hakkında ve bir kereden fazla konuştular. Ama her zaman dürüstçe uyardılar - komisyoncuyla ilgili sorunlara kendiniz karar vereceksiniz;)


Bu nedenle, duraklamanın zorunlu (teknik anlamda) değil , en azından arzu edilir (hesabın bloke edilmesi riski anlamında) olduğunu söylemek daha doğru olacaktır.
 
Basit bir örnekle ilgileniyorum, 20 saniye arayla da olsa üç sipariş vermek için üç istek gönderiyorum. Bu arada, piyasa yavaş ve keneler arasında iki dakikaya kadar bir aralık var. İlk ikisi kaybedilecek mi, yoksa üçü de ilk tikte mi uygulanacak?
 
Basit bir örnekle ilgileniyorum, 20 saniye arayla da olsa üç sipariş vermek için üç istek gönderiyorum. Bu arada, piyasa yavaş ve keneler arasında iki dakikaya kadar bir aralık var. İlk ikisi kaybedilecek mi, yoksa üçü de ilk tikte mi uygulanacak?

Hiçbir şey kaybolmaz. Programda herhangi bir gecikme yapmanıza gerek yoktur. İlk sırada int NewPos(..) işlevini çalıştırırsınız. Zaten tüm gecikmeleri içeriyor. İşlev 0 döndürürse - her şey yolunda - istek yürütülmüştür. İkinci sıraya geçiyoruz, vb.
Başarılı olursa, işlevin kendisi 10 saniyelik bir gecikme yapacaktır, bu nedenle sunucuya sık erişimde herhangi bir sorun olamaz. Ayrıca MT4 terminalinin yanıtı için kritik bekleme süresini de içerir. Bu süre içinde terminalden yanıt gelmezse, fonksiyon bir hata kodu döndürür. Bu, teklif eksikliği, hesabın devre dışı bırakılması, İnternet'teki kesintiler vb. ile ilgili durumları teşhis etmek için yapılır.
Böylece fonksiyon döndüğünde olay zaten gerçekleşmiş olur. İyi şanlar!
 
Siparişleri işlemek için komutlar, yalnızca EA'nın kurulu olduğu çift için bir fiyat teklifi geldiğinde yürütülür. Onlar. programınızdaki "SATIN AL" düğmesine basmak, siparişin sunucuya gönderildiği anlamına gelmez, EA'nın kurulu olduğu çift için bir fiyat teklifi için "diskte bekliyor" demektir. EA, dosya komutunu arayacak ve bulursa, siparişi sunucuya gönderecek, bu arada her tikte onu arayacaktır. Sırasıyla sipariş verme veya iptal etme sonucu, yalnızca bir sonraki teklifin gelmesiyle elde edilebilir. Bu, bazı TS için net bir mantık düzenlemeyi mümkün kılmaz. Umarım bunu anlarsın.


TC'nin mantığı burada tamamen alakasız. Buradaki soru, yalnızca emirlerin yerine getirilmesindeki gecikmelerdir. Ancak, daha önce yazdığım gibi, bu sorun çok zor: tekliflerin oynaklığı, yeni fiyatlarla gelen onaylar tarafından belirlenir. Aktif ticaret döneminde, dakikada 200'e kadar kene gelir. Bu nedenle, bu durumda gecikme olamaz. Durgun bir ticaret döneminde bir pozisyon açarsanız, o zaman pratikte fiyat değişikliği olmaz, bu nedenle burada da beklentilerin teklif seviyesi üzerinde büyük bir etkisi olmaz.
Ayrıca burada "SATIN AL" düğmesinden de söz edemeyiz, çünkü herhangi bir düğme olmadan kendi kararlarını veren mekanik ticaret sistemlerini tartışıyoruz. İyi şanlar!
 
MT4 fiyat teklifi sunucusunun ayarlarına göre her 10 saniyede bir defadan fazla işlem yapılması mümkün değildir.

Aslında MetaTrader 3'te durum böyleydi ama MT4'te böyle bir kısıtlama yok.
Ancak yine de ne zaman duracağınızı bilmeniz ve arka arkaya çok fazla işlem yapmamanız gerekir.
 
Aslında MetaTrader 3'te durum böyleydi ama MT4'te böyle bir kısıtlama yok.
Ancak yine de önlemi bilmeniz ve arka arkaya çok fazla işlem yapmamanız gerekir.

Evet, elbette haklısın. Gelişmiş kütüphanede yapılan bir gecikmeyi hemen sağlamak daha iyidir, çünkü aksi takdirde, sunucu çok sık istekte bulunur , kullanıcının adresini ticaret için ilgili sonuçlarla engelleyebilir. İyi şanlar!
 
DİKKAT!
MetaTrader 4 API işlevlerini kullanmak için MFOREX 2.05 kitaplığının yeni bir sürümü yayınlandı.
Avantajları:
1. Kütüphane çalışırken hiçbir geçici dosya oluşmaz, veriler paylaşılan hafıza alanlarından taşınır. Bu çözüm, bilgiye erişimi önemli ölçüde hızlandırır ve kütüphanenin güvenilirliğini artırır;
2. Ek olarak, terminal teşhisinin özel işlevleri, son tik zamanının geri dönüşü ve kayıt işlemi için benzersiz bir bilgisayar kodu uygulanmaktadır;
3. Hatalı ve acil durum teşhisi işlevi, durumun kodunu döndürür ve açıklamayı Rusça özel bir günlüğe kaydeder.
4. Kütüphanenin fiyatını önemli ölçüde düşürdü. Eski sürümün kayıtlı kullanıcıları güncellemeleri ücretsiz olarak alacaktır.
Web sitemizdeki tüm ayrıntıları okuyun http://www.min2006.ru
 


Ne yazık ki, önerilen danışman:
- teklif geçmişi sağlamaz;
- hataları ve acil durumları takip etmez;
- ticaret geçmişi ve açık pozisyonların bir listesini sağlamaz;
- en son alıntıların alınmasına izin vermez (kene şeklinde).

Önerdiğim kütüphanede tüm eksik fonksiyonlar uygulanıyor. Ayrıca, geçici dosyalar oluşmadan paylaşılan hafıza alanları aracılığıyla bilgi alışverişi yapılır. Tüm detayları http://www.min2006.ru web sitesinde okuyun.
İyi şanlar!
 
Bu arada, şimdi Min'in sunduğu şey, eskisinden daha fazla, satın alabileceğiniz bir şeye benziyor.
Kirli IMHO :)