„Zavřít vše“ v MT5 označuje skupinový postup, nikoli záruku současného uzavření celého účtu. Rozhodující jsou skutečná plnění a současné zbývající množství. Odmítnutí, přerušená posloupnost a vypnutí aplikace mohou zanechat různé stavy. Tento článek řeší vestavěné operace; vlastní skript nebo doplněk může mít jiné chování.

Jaký rozsah měl konkrétní příkaz

Zapište celý název funkce: všechny pozice, ziskové, ztrátové, jeden symbol nebo jeden směr. Nabídka závisí na výběru i účtu a skupinové operace vyžadují One Click Trading. Některé varianty se při FIFO nenabízejí. Ověřte konkrétní režim a ACCOUNT_FIFO_CLOSE; vzhled terminálu nedokazuje jejich hodnotu.

Na hedgingu nejdříve probíhá párové Close By; chyba v této sekvenční části přeruší pokračování. Následné běžné výstupy zbylých pozic jsou asynchronní a chyba jednoho nepřerušuje odesílání ostatních. FIFO postup je sekvenční s přerušením při chybě. Tyto fáze nelze sloučit do pravidla „každá chyba zastaví vše“.

Hedging odlišuje protilehlé pozice od jedné nettingové. Pro pár Close By je potřeba stejný symbol; podobný název jiného kontraktu nestačí. Záměna uzavření za reverzaci může vytvořit opačnou expozici. Před operací proto porovnejte zamýšlený rozsah s přesnými pozicemi a pokyny.

Celý původní model pěti ticketů

Fiktivní hedgingový účet bez FIFO má pět pozic, EUR/USD umožňuje Close By. Nejsou částečná plnění, nové vstupy ani další změny. Model neudává rychlost serveru, peněžní výsledek ani součet lotů různých kontraktů.

Na malé obrazovce posouvejte tabulku vodorovně, abyste přečetli všechny sloupce.

Výchozí pozice a potvrzené výsledky
TicketZačátekVýsledekZbytek
AEUR/USD buy 0,10Close By s B provedenoŽádný
BEUR/USD sell 0,10Close By s A provedenoŽádný
CGBP/USD buy 0,20Celých 0,20 uzavřenoŽádný
DUSD/JPY sell 0,10Odmítnuto, uzavřeno 0Sell 0,10
EXAU/USD buy 0,05Celých 0,05 uzavřenoŽádný

Odeslané požadavky nejsou počet uzavřených pozic

Pět pozic, jedna však zůstává otevřená

Pět pozic, jedna však zůstává otevřenáVlastní model: Close By uzavře A a B. Běžné výstupy C a E se provedou, D je odmítnut. Z pěti původních pozic zůstává D, sell0,10lotu USD/JPY. Odeslání není plnění.A + B: EUR/USDClose By dokončeno2 pozice uzavřenyC: GBP/USDVýstup potvrzen1 pozice uzavřenaD: USD/JPYPožadavek odmítnutSell 0,10 zůstává otevřenýE: XAU/USDVýstup potvrzen1 pozice uzavřena
Po A+B zbývají tři původní pozice. Po potvrzeném C a E zbývá jedna: D, sell 0,10 USD/JPY. Odmítnutí D nezastavilo ostatní běžné výstupy.

Pro přečtení detailů posouvejte diagram vodorovně nebo jej zvětšete.

Jedna párová operace zde odstranila dva tickety. Potom byly odeslány tři běžné požadavky, ale provedly se jen dva. Konečný počet je 5−2−1−1=1; ne „tři“, protože Close By bylo jedním úkonem, ani „nula“, protože tlačítko slibovalo vše.

Pro každou pozici evidujte symbol, směr, počáteční objem, identifikátor požadavku či pokynu, odpověď, související dealy a zbývající množství. DEAL_ORDER a DEAL_POSITION_ID pomáhají svázat plnění s pokynem a pozicí. Jeden pokyn může mít více fragmentů; každý řádek historie proto neoznačujte za celé uzavření. Čas opatřete pásmem a nejistý výsledek neztotožňujte s potvrzeným odmítnutím.

Dvě další větve stejného výchozího stavu

V první samostatné variantě dostane A+B chybu Close By před plněním a výslovně předpokládáme, že neproběhl žádný výstup. Postup se zastaví ještě před C–E a zůstává všech pět pozic. Není to stejný výsledek jako odmítnuté D po již úspěšném páru. Skutečně chybějící odpověď potřebuje šetření, nikoli předpoklad nulového plnění.

V druhé samostatné variantě A+B už byly uzavřeny, ale aplikace skončila před odesláním C–E. Zůstávají tři původní pozice. Ukončení programu nevrací potvrzené dealy zpět a neurčuje osud požadavků odeslaných těsně předtím. Po synchronizaci proto znovu sestavte skutečný seznam místo opakování dávky z paměti.

Nový ticket může pocházet od EA nebo jiného uživatele a nemusí být selháním původního uzavření. Určete zdroj a čas v historii. U vlastní automatizace ani OrderSend=true nedokazuje provedení: zkontrolujte odpověď a účetní události. K diagnostice není potřeba zkušební živý obchod.

Prázdné pozice a stále čekající pokyny

Čekající pokyny tvoří samostatný seznam a mají vlastní operace zrušení. Fiktivní čekající buy P může přežít uzavření všech pěti pozic a po pozdějším plnění vytvořit novou. Bez potvrzeného zrušení tedy nulový počet pozic neurčuje osud P.

Po synchronizaci čtěte správný účet bez filtru skrývajícího směr nebo instrument. Zaznamenejte čas pozorování, historii a pokyny zvlášť. Jedna prázdná obrazovka nedokazuje, že EA už nikdy neotevře další expozici. U zbylého D ověřte také přijaté SL/TP; pozornost k příčině dávky nesmí nahradit kontrolu současného rizika.

Nová CZK větev: jeden zbytek, dvě skutečnosti

Pro nový čistě aritmetický model zbylé D přidejme vstup USD/JPY 150,00, objem 0,10 lotu, 100000 USD na lot a současný Ask 150,30. Pro ztrátu v JPY používáme pevně 0,16 Kč/JPY; saldo je 100000 Kč. Výsledky dříve uzavřených A,B,C,E jsou pro tuto samostatnou větev již zahrnuty v uvedeném počátečním saldu. Jiné položky a poplatky nepřidáváme.

Short 10000 USD má při Ask 150,30 plovoucí výsledek 10000×(150,00−150,30)=−3000 JPY=−480 Kč. Saldo je stále 100000, equity 99520 Kč. Pokud Ask ve druhém modelovém pozorování vzroste na 150,60, plovoucí výsledek je −6000 JPY=−960 Kč a equity 99040 Kč. Jedna zbývající pozice tedy není malá jen podle počtu ticketů.

Dalších 0,30 JPY znamená dalších 480 Kč ztráty. Pokud by při přesně 150,60 následovalo úplné potvrzené uzavření bez dalších nákladů, saldo by přešlo na 99040 a plovoucí část na nulu; equity by se samotným přesunem znovu nesnížila o 960. Neodhadujeme nyní skutečné plnění, náklady ani převod brokera. Tato vlastní větev nepřidává peněžní výnosy do původního bezcenového modelu A–E.

Zbylý ticket stále mění equity

Zbylý ticket stále mění equityVlastní short 10000 USD, vstup 150,00; fixně 0,16 Kč/JPY, saldo 100000 Kč. Bez nákladů, jiné výsledky již v saldu.MODELOVÝ VÝPOČETAsk 150,30−480 Kč plovoucíchAsk 150,60−960 Kč plovoucíchHypotetický potvrzený výstup150,60Saldo 99040 Kč
Zbylý ticket stále mění equity. Vlastní short 10000 USD, vstup 150,00; fixně 0,16 Kč/JPY, saldo 100000 Kč. Bez nákladů, jiné výsledky již v saldu.

Tato samostatná peněžní větev nemění původní model počtu pozic ani nepředpovídá cenu provedení.

Ask 150,30
−480 Kč plovoucích – −3000 JPY, equity 99520 Kč.
Ask 150,60
−960 Kč plovoucích – −6000 JPY, equity 99040 Kč.
Hypotetický potvrzený výstup 150,60
Saldo 99040 Kč – Plovoucí část 0, stejná equity; ztráta se neodečítá podruhé.

Kontrola pro příště

  1. Na odpovídajícím demu zaznamenejte režim, přesný příkaz a celý výchozí seznam. Žádné selhání nevyvolávejte živým obchodem.
  2. Ke každému ticketu přiřaďte skutečný výsledek. Oddělte fázi Close By, běžné výstupy, odmítnutí, nejasnost a případný nový vstup.
  3. Ukončete kontrolu dvěma současnými seznamy: pozice a čekající pokyny. Zhodnoťte zbylé objemy i přijatou ochranu a uložte čas ověření. Zde jsme MT5 nativně nespouštěli.