- Program Çalıştırma
- Trade Permission
- Müşteri Terminali Olayları
- Kaynaklar
- İçe Aktarılmış Fonksiyonların Çağrılması
- Çalışma Zamanı Hataları
- Alım-Satım Stratejilerinin Sınanması
Alım-Satım İzni
Alım-Satım Otomasyonu
MQL5 dili, otomatik alım-satım sistemleri geliştirmek için tasarlanmış özel bir alım-satım fonksiyonları grubu içerir. İnsan müdahalesi olmadan otomatik alım-satım yapmak için geliştirilen programlara Uzman Danışman veya alım-satım robotu denir. MetaEditor ile bir Uzman Danışman oluşturabilmek için MQL5 Sihirbazını çalıştırın ve şu iki seçenekten birini seçin:
- Uzman Danışman (şablon) – kullanıma hazır olay işleme fonksiyonları ile programlamanın tüm gereksinimlerini karşılayabilecek bir şablon oluşturmanızı sağlar.
- Uzman Danışman (oluştur) – eksiksiz bir alım-satım robotu geliştirmek için basitçe gerekli modulleri seçmeniz yeterlidir: alım-satım sinyal modülleri, para yönetimi modülü ve İz-süren Stop modülü.
Alım-satım fonksiyonları sadece Uman Danışmanların ve betiklerin içinde kullanılblir. Göstergelerin alım-satım yapmasına izin verilmez.
Otomatik Alım-Satım için İşlem İzninin Denetlenmesi
İnsan müdahalesi olmadan çalışabilen güvenilir bir Uzman Danışman geliştirmek için bazı önemli denetimlerin yapılması gerekir. Öncelikle, alım-stıma izin verilip verilmediğini program kapsamında denetlemeliyiz. Bu, otomatik sistemleri geliştirirken kullanılan en basit ve zorunlu denetimdir.
Terminalde otomatik alım-satım yapmak için işlem izninin denetlenmesi
Terminal ayarları tüm programlar için otomatik alım-satım izni vermenizi veya bu izni kaldırmanızı sağlar.
Terminalin Standard panelini kullanarak otomatik alım-satım seçeneğini değiştirebilirsiniz:
– otomatik alım-satım etkin, çalıştırılan programlarda alım-satım fonksiyonları kullanılabilir.
– otomatik alım-satım devre dışı, çalıştırılan programlarda alım-satım fonksiyonları kullanılamaz.
Denetim örneği
if (!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
|
Belli bir Uzman Danışman/betik için alım-satım izninin denetimi
Bir programı çalıştırdığınızda o programa özel olarak alım-satımı yasaklayabilirsiniz. Bunun için program özelliklerindeki onay kutusunu kullanın.
Denetim örneği
if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
|
Mevcut hesap üzerindeki herhangi bir Uzman Danışman/betik için alım-satım izninin denetimi
Otomatik alım-satım işlemleri sunucu üzerinden de devre-dışı bırakılabilir. Denetim örneği
if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
|
Otomatik alım-satım işlemleri hesap genelinde devredışı bırakılmışsa Uzman Danışmanlardaki/betiklerdeki alım-satım işlemleri çalıştırılmaz.
Mevcut hesap üzerinde alım-satım izninin denetimi
Bazı durumlarda alım-satım işlemleri belli hesaplar için devre-dışı bırakılır – alım-satım işlemleri elle veya otomatik olarak yapılamaz. Hesaba yatırımcı şifresi ile giriş yapılıp yapılmadığına dair şuna benzer denetim kullanılabilir:
if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
|
AccountInfoInteger(ACCOUNT_TRADE_ALLOWED) çağrısı şu durumlarda false dönüşü yapabilir:
- alım-satım sunucusuyla bağlantı kurulamıyor. Bu durum TerminalInfoInteger(TERMINAL_CONNECTED) çağrısı ile kontrol edilebilir;
- alım-satım hesabı salt-okunur moda çevrilmiş (arşive gönderilmiş);
- hesap üzerinde alım-satım işlemleri sunucu üzerinden devre-dışı bırakılmış;
- hesaba yatırımcı modu ile bağlanılmış.
Ayrıca bakınız
Müşteri Terminalinin Özellikleri, Hesap Özellikleri, Çalışan bir MQL5 Programının Özellikleri