Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret 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
Kodda yanlış olan ne? Neden " başarısız iptal emri #0 pazardan 0,00 satın al [Geçersiz istek] " hatalarını almaya devam ediyorum
pozisyon seçimi nerede?
emirlerin ticaretle ne ilgisi var?
ne yapmaya çalışıyorsun? pozisyonu kapat?
ve order_remove_mql_trade_request adı bir kabus.
pozisyon seçimi nerede?
emirlerin ticaretle ne ilgisi var?
ne yapmaya çalışıyorsun? yakın pozisyon?
ve order_remove_mql_trade_request adı bir kabus.
evet anlatılması gerekiyor.
kodun amacı -- açık bir pozisyon varsa, pozisyonla aynı yöndeki tüm limit emirlerini iptal edin.
örneğin, bir BY pozisyonu açıksa. sonra tüm satın alma limiti siparişlerini iptal edin
Bir pozisyon seçmeyi unuttum =). Eh, hata bundan değil (işaretli).
Kodda yanlış olan ne? Neden " başarısız iptal emri #0 pazardan 0,00 satın al [Geçersiz istek] " hatalarını almaya devam ediyorum
MqlTradeRequest order_remove_mql_trade_request = {0};
order_remove_mql_trade_request.action = TRADE_ACTION_REMOVE;
i = OrdersTotal();
if(i > 0){
if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY){
for(i2 = 0;i2 < = i;i2++){
ul = OrderGetTicket(i2);
OrderSelect(ul);
if(OrderGetInteger(ORDER_TYPE) == ORDER_TYPE_BUY_LIMIT){
order_remove_mql_trade_request.order = ul;
OrderSend(order_remove_mql_trade_request,mql_trade_result);}}}
if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL){
for(i2 = 0;i2 < = i;i2++){
ul = OrderGetTicket(i2);
OrderSelect(ul);
if(OrderGetInteger(ORDER_TYPE) == ORDER_TYPE_SELL_LIMIT){
order_remove_mql_trade_request.order = ul;
OrderSend(order_remove_mql_trade_request,mql_trade_result);}}}}
bu eşittir işaretlerini kaldırın.
Zaten kaldırıldı, yardımcı olmuyor.
yaşlıları aldatmak iyi değildir.
aldatmak hiç iyi değil. yapmıyorum
Şimdi her şeyi bu kodla iki kez kontrol ettim:
i = OrdersTotal();
if(i > 0){
PositionSelect(_Symbol);
if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY){
for(i2 = 0;i2 < i;i2++){
ul = OrderGetTicket(i2);
OrderSelect(ul);
if(OrderGetInteger(ORDER_TYPE) == ORDER_TYPE_BUY_LIMIT){
order_remove_mql_trade_request.order = ul;
OrderSend(order_remove_mql_trade_request,mql_trade_result);}}}
if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL){
for(i2 = 0;i2 < i;i2++){
ul = OrderGetTicket(i2);
OrderSelect(ul);
if(OrderGetInteger(ORDER_TYPE) == ORDER_TYPE_SELL_LIMIT){
order_remove_mql_trade_request.order = ul;
OrderSend(order_remove_mql_trade_request,mql_trade_result);}}}}
Sonuç aynı. bu hata sıklıkla oluyor
Sonuç aynı. bu hata sıklıkla oluyor
"sıklıkla" boş bir deyimdir.
oklmn, sizce 2 + 2 genellikle 4'e eşit mi?
tembel olmayın - gönderme ve iade edilen hatanın analizini yapın.
kontrol edin NEYİ SİLMEYE ÇALIŞIYORSUNUZ???
Kapanış sırasında herhangi bir sipariş var mı?
Belki de zaten silinmiş bir siparişi silmeye çalışıyorsunuzdur.
üçüncü olarak - emirleri nasıl kapatacağınızı size kim öğretti??? Tüm siparişleri - figürinleri - geçtiğini düşünüyorsun. Her kapanıştan sonra OrdersTotal 1 azalır. Ve yine de kazanmak için i2++ ile birincil i'ye çekiçle vurursunuz.
OrderGetTicket veya OrderSelect'in bir hata döndürüp döndürmediğini kontrol etmeye bile zahmet etmediniz
kötü, çok kötü.
bu kadar küçük eller yüzünden uydularımız yörüngeden iniyor.
"sıklıkla" boş bir deyimdir.
oklmn, sizce 2 + 2 genellikle 4'e eşit mi?
tembel olmayın - gönderme ve iade edilen hatanın analizini yapın.
kontrol NEYİ KALDIRMAYA ÇALIŞIYORSUNUZ???
Kapanış sırasında herhangi bir sipariş var mı?
Belki de zaten silinmiş bir siparişi silmeye çalışıyorsunuzdur.
üçüncü olarak - emirleri nasıl kapatacağınızı size kim öğretti??? Tüm siparişleri - figürinleri - geçtiğini düşünüyorsun. Her kapanıştan sonra OrdersTotal 1 azalır. Ve yine de kazanmak için i2++ ile birincil i'ye çekiçle vurursunuz.
OrderGetTicket veya OrderSelect'in bir hata döndürüp döndürmediğini kontrol etmeye bile zahmet etmediniz
kötü, çok kötü.
bu kadar küçük eller yüzünden uydularımız yörüngeden iniyor.
"üçüncü" hakkında, haklı olduğunuzu not ediyorum =). Hiç de öyle olmadığından emindim, yoksa sadece alış limitlerinde değil, satış limitlerinde de test sırasında hatalar olurdu. ama genel olarak, elbette, siparişleri kapatmak iyi değil. Genel olarak, yardım etmeye ve yolu belirlemeye çalıştığınız için teşekkür ederiz.
selam beyler
Lütfen çözmeme yardım et. Önümüzde bir tuş vuruşunu taklit eden bir prototip windows işlevi var:
Gerçek şu ki, bu işlev MT4'te bayt yerine ints ile çağrılır. Şuna benziyor:
Sorun ne? En az 4 bayt mı aktarıyorsunuz? Donanıma bağlı mı?selam beyler
Lütfen çözmeme yardım et. Önümüzde bir tuş vuruşunu taklit eden bir prototip windows işlevi var:
Gerçek şu ki, bu işlev MT4'te bayt yerine ints ile çağrılır. Şuna benziyor:
Sorun ne? En az 4 bayt mı aktarıyorsunuz? Donanıma bağlı mı?Parametreleri bir fonksiyona aktarırken, minimum kuantum 32 bitlik bir tamsayıdır. Yani, sizin durumunuzda, bVk ve bScan, işleve geçmeden önce int türüne dönüştürülecektir.
Bu nedenle, yukarıdaki fonksiyon prototipleri birbiriyle çelişmez.