Radu.hu Fórum Kérdések az MQL4 programozási nyelvvel kapcsolatban Függő megbízások módosítása Válasz erre: Függő megbízások módosítása

Szalai Gergely
Tag
Bejegyzések száma: 8

szia!

lenne még egy kérdésem a függő megbízásokkal kapcsolatban. a módosításokon túl, ha törölni szeretném. és először kiválasztom és megvizsgálom, hogy függő-e még. majd utána megpróbálom törölni. amit rendre szépen meg is tesz. de sajnos a következő lefutásnál, ismét beleszalad. azaz az OrderSelect(vetel, SELECT_BY_TICKET, MODE_TRADES) és az OrderType() függvények arra az eredményre jutnak, hogy még van él ezen a ticket számon függő vételi megbízás.
utána már csak szerencsétlen OrderDelete(vetel, Green) esik bele állandóan a for-ciklusban a 4108 “invalid ticket” kóddal jelölt hibába. mivel akkor már nincs ilyen ticket számon order.
ha törölte a szerver az függő megbízást, miért nem azt az információt kapom vissza az OrderSelect() és OrderType() vizsgálata után?
vagy teljesen rosszul használom ezt a két függvényt?

if//függő vételi megbízás törlése
   (
      OrderSelect(vetel, SELECT_BY_TICKET, MODE_TRADES)//vételi megbízás kiválasztása
   && OrderType()==OP_BUYSTOP//a vételi megbízás függő (még nem nyílt meg)
   )
   {
      for//10szer próbálja meg törölni a függő vételi megbízást
      (
         i=1; i<=10; i++
      )
      {
         if
         (
            OrderDelete(vetel, Green)//vételi függő megbízás törlése
         )
         {
            break;//törölte a szerver a függő vételi megbízást, ciklus megszakítása
         }
         else//hibakód vizsgálata
         {
            hibakod=GetLastError();//a hibakód tárolása
            Print("A függő vételi megbízás törlésénél a ", hibakod, "-as kódú hiba lépett fel!");//hibakód kiírása
         }
      }
   }