- Alım-Satım Sunucusunun Dönüş Kodları
- Derleyici Uyarıları
- Derleme Hataları
- Çalışma Zamanı Hataları
Alım-Satım Sunucusunun Dönüş Kodları
Alım-satım işlemlerinin için yapılan tüm istekler OrderSend() fonksiyonu kullanılarak MqlTradeRequest yapısı şeklinde gönderilir. Fonksiyonun uygulama sonucu MqlTradeResult yapısına yerleştirilir. Bu yapı retcode alanında sunucunun dönüş kodunu içerir.
Kod |
Sabit |
Açıklama |
---|---|---|
10004 |
TRADE_RETCODE_REQUOTE |
Yeniden fiyatlandırma (requote) |
10006 |
TRADE_RETCODE_REJECT |
İstek reddedildi |
10007 |
TRADE_RETCODE_CANCEL |
İstek kullanıcı tarafından iptal edildi |
10008 |
TRADE_RETCODE_PLACED |
Emir işlendi |
10009 |
TRADE_RETCODE_DONE |
İstek tamamlandı |
10010 |
TRADE_RETCODE_DONE_PARTIAL |
İsteğin sadece bir kısmı tamamlandı |
10011 |
TRADE_RETCODE_ERROR |
İstek işleme hatası |
10012 |
TRADE_RETCODE_TIMEOUT |
İstek zaman-aşımı nedeniyle iptal edildi |
10013 |
TRADE_RETCODE_INVALID |
Geçersiz istek |
10014 |
TRADE_RETCODE_INVALID_VOLUME |
Geçersiz istek hacmi |
10015 |
TRADE_RETCODE_INVALID_PRICE |
Geçersiz istek fiyatı |
10016 |
TRADE_RETCODE_INVALID_STOPS |
İstek içinde geçersiz stop (durdurma) seviyeleri |
10017 |
TRADE_RETCODE_TRADE_DISABLED |
Alım-satım işlemleri devre dışı |
10018 |
TRADE_RETCODE_MARKET_CLOSED |
Piyasa kapalı |
10019 |
TRADE_RETCODE_NO_MONEY |
İsteği tamamlayabilecek yeterli para yok |
10020 |
TRADE_RETCODE_PRICE_CHANGED |
Fiyatlar değişti |
10021 |
TRADE_RETCODE_PRICE_OFF |
İstek içinde işlenebilecek bir fiyat teklifi yok |
10022 |
TRADE_RETCODE_INVALID_EXPIRATION |
İstek içinde geçersiz zaman-aşımı tarihi |
10023 |
TRADE_RETCODE_ORDER_CHANGED |
Emir durumu değişti |
10024 |
TRADE_RETCODE_TOO_MANY_REQUESTS |
İsteklerin sıklığı fazla |
10025 |
TRADE_RETCODE_NO_CHANGES |
İstekte değişim yok |
10026 |
TRADE_RETCODE_SERVER_DISABLES_AT |
Otomatik alım-satım, sunucu tarafından devre dışı bırakıldı |
10027 |
TRADE_RETCODE_CLIENT_DISABLES_AT |
Otomatik alım-satım, müşteri terminali tarafından devre dışı bırakıldı |
10028 |
TRADE_RETCODE_LOCKED |
İstek işlem için kilitlendi |
10029 |
TRADE_RETCODE_FROZEN |
Emir veya pozisyon dondurulmuş |
10030 |
TRADE_RETCODE_INVALID_FILL |
Geçersiz emir işleme tipi |
10031 |
TRADE_RETCODE_CONNECTION |
Alım-satım sunucusuyla bağlantı yok |
10032 |
TRADE_RETCODE_ONLY_REAL |
Sadece gerçek hesaplarda işleme izin veriliyor |
10033 |
TRADE_RETCODE_LIMIT_ORDERS |
Bekleyen emirlerin sayısı sınıra ulaştı |
10034 |
TRADE_RETCODE_LIMIT_VOLUME |
Sembol üzerindeki emirler ve pozisyonlar için hacim sınırına ulaşıldı |
10035 |
TRADE_RETCODE_INVALID_ORDER |
Yanlış veya geçersiz emir tipi |
10036 |
TRADE_RETCODE_POSITION_CLOSED |
Belirtilmiş POSITION_IDENTIFIER özelliğine sahip olan pozisyon kapatılmış |
10038 |
TRADE_RETCODE_INVALID_CLOSE_VOLUME |
Kapanış hacmi mevcut pozisyon hacmini geçiyor |
10039 |
TRADE_RETCODE_CLOSE_ORDER_EXIST |
Belirtilen pozisyon için zaten bir kapanış emri var. Bu durum hedge'li sistemde ortaya çıkabilir:
|
10040 |
TRADE_RETCODE_LIMIT_POSITIONS |
Hesap üzerinde aynı anda açık olabilecek posizyonların sayısı sunucu ayarlarında sınırlandırılmış olabilir. Bu sınıra ulaşıldığında her yeni emir girişimi için sunucu tarafından TRADE_RETCODE_LIMIT_POSITIONS şeklinde bir hata dönüşü yapılır. Sınırlama, pozisyon muhasebesi sistemine bağlı olarak değişim gösterir:
|
10041 |
TRADE_RETCODE_REJECT_CANCEL |
Bekleyen emir isteği reddedildi, emir iptal edildi |
10042 |
TRADE_RETCODE_LONG_ONLY |
İstek reddedildi, çünkü sembol için"sadece uzun pozisyon açılabilir" kuralı ayarlanmış (POSITION_TYPE_BUY) |
10043 |
TRADE_RETCODE_SHORT_ONLY |
İstek reddedildi, çünkü sembol için"sadece kısa pozisyon açılabilir" kuralı ayarlanmış (POSITION_TYPE_SELL) |
10044 |
TRADE_RETCODE_CLOSE_ONLY |
İstek reddedildi, çünkü sembol için"sadece pozisyon kapatılabilir" kuralı ayarlanmış |
10045 |
TRADE_RETCODE_FIFO_CLOSE |
İstek reddedildi, çünkü "Pozisyon kapatmaya yalnızca FIFO kuralına göre izin verilmektedir" bayrağı alım-satım hesabı için ayarlanmıştır (ACCOUNT_FIFO_CLOSE=true) |
10046 |
TRADE_RETCODE_HEDGE_PROHIBITED |
İşlem hesabı için "Sembol üzerinde zıt pozisyon açma devre dışıdır" kuralı ayarlandığından, istek reddedildi. Örneğin, işlem hesabında Alış pozisyonu varsa, kullanıcı Satış pozisyonu açamaz veya bekleyen satış emri giremez. Kural yalnızca hedge muhasebe sistemine sahip hesaplara uygulanır (ACCOUNT_MARGIN_MODE=ACCOUNT_MARGIN_MODE_RETAIL_HEDGING). |