Jump to content
Co nového? Mé kurzy
Komunita:
Diskuze Sledované příspěvky Žebříčky

Doporučené příspěvky

Odesláno

Když jsem viděl název článku pomyslel jsem si, že o takových základech snad už ani nejde nic nového napsat. Ale byl jsem překvapen - nejen vlastním článkem ale zejména tím, co se objevilo v diskusi. Určitě má smysl vrátit se k základům a promyslet si je znova.

  • Odpovědí 65
  • Vytvořeno
  • Poslední

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

Odesláno

Jiří S:
Obchod se nemůže uskutečnit mimo nejvyšší bid a nejnižší ask. Můžete vidět last mimo toto rozpětí, ale to je tím, že po tomto obchodu byly uskutečněny nové nabídky, které bid-ask prostě posunuly. Pokud na quote panelu někdy uvidíte změnu last ceny na novou hodnotu mimo bid-ask rozpětí, tak máte pomalá data na daný trh, nebo nesledujete trh, ale nějaký nefér black pool.

Odesláno

Jiří S.:
Jen si klidně píchni :) Popisoval jsem obecné základy a příklad jak je to nejčastěji implementováno – aby si nováčci dokázali udělat nějakou představu. Je známou věcí, že různé burzy nebo mimoburzovní trhy nebo brokeři podporují různé typy příkazů, mají stejné typy různě implementované, podporované příkazy se můžou lišit produkt od produktu nebo podporují jiné příkazy během obchodních hodin a jiné mimo ně. Také vlastní mechanismus trhu se liší – trh řízený příkazy (order driven system), trh s centrální příkazovou knihou (central order book), trh řízený cenou (price driven system), trh řízený kotacemi (quote driven system), aukční trh (se specialisty nebo řízený zákazníkem), atd... a navíc se to mění i v čase, jak jedna burza fůzuje s jinou a vnutí jí svoje pravidla a implementace.

Teď si k tomu vezmi brokera, který podporuje obchodování na desítkách různých trhů a musí svým zákazníkům nabídnout nějaký „jednotný“ interface a taky si vezmi SW, který podporuje několik různých brokerů (burzovních i mimoburzovních) a co se všechno může stát – ty pak klikneš třeba na SELL MKT, ale ve skutečnosti to přijde na burzu jako SELL LMT, protože to příslušná burza/produkt/čas vyžaduje – broker nebo SW to obstará za tebe. Totéž různé podporované algo příkazy. K tomu komplikace s tím, jestli jsou příkazy opravdu na burze nebo zatím mimo ni – třeba různé STP nebo algo, které jsou na serveru brokera nebo u tebe na PC a to co se tobě jeví jako jeden Iceberg příkaz se burze jeví jako několik menších market/limit příkazů, které postupně přicházejí ...

Já jsem se snažil psát na nějaké „společné“ a jednoduché úrovni, ne rozebírat co všechno existuje nebo může existovat a jak je možné to implementovat – to ať si každý zjistí sám podle svých potřeb. Někdo tohle nepotřebuje vědět, jiný zase ano.

Není nic jednoduššího si to na stránkách své burzy nastudovat – dát si vyhledat „Supported Order Types“, „Matching rules“ a podobně – např. pro Globex CME: www.cmegroup.com/globex/files/GlobexRefGd.pdf

K tomu ostatnímu co jsi psal se raději nebudu vyjadřovat – pro mě je tvůj text málo exaktní (jaký trh, jaký produkt, kdy, u kterého brokera, ...) – pak se teprve můžeme bavit o tom jestli taková situace může nebo nemůže nastat a co se může nebo nemůže potom přihodit a jak to může dopadnout.

K tomu NT a zobchodování mimo (vně) hranice BID-ASK: označuje to NT „vně“ vůči BID-ASK které bylo před zahájením párování příslušného příkazu, nebo to označuje „vně“ podle BID-ASK po spárování příkazu?

situace 1) Když je řekněme ASK na ceně 1535 a je na něm 150 kontraktů a přijde BUY MKT příkaz na 200k, tak ten příkaz je spárovaný 150k na 1535 a zbylých 50k řekněme na 1536 (kde bylo řekněme celkem 300k). Není to náhodou těhle 50k spárovaných na 1536, které ti NT označí jako vně ASK (vně 1535)? Poté se často ASK posune na 1536, ale nemusí – někdo tam hodí SELL LMT na původních 1535 dříve než se posune BID (pokud je pread 1 tick).

situace 2) ASK je na ceně 1535 a je na něm 150 kontraktů. Může dojít k tomu, aby bylo spárováno tvých 200k za cenu vyšší než ASK (1536) aniž by byly nejprve odstraněny (buď spárováním nebo pomocí Cancel/Modify od traderů, kteří je tam zadali) všechny kontrakty na 1535? Tj. že by se ty tvoje spárovali třeba za 1536 a jinak by se nic nezměnilo a ASK by zůstal po celou dobu na 1535 se 150k? – to asi těžko, to by se nikdy stávat nemělo.

situace 3) Stejné jako předchozí, ASK na 1535, ale těsně po odeslání tvého příkazu ale před tím než dorazí tvůj BUY MKT na burzu někdo vyžere všechny kontrakty na ASK, tím se rozšíří spread a tvůj příkaz je spárován na 1536. Ihned poté (než ti dorazí potvrzení o vyplnění tvého příkazu) někdo znovu dá SELL LMT na 1535, takže po provedení tvého příkazu to vypadá jako že ASK na 1535 tam pořád byl, i když ve skutečnosti nebyl.

A třeba jsou i další možné situace. Pokud do toho chceš montovat zavření burzy, tak záleží jestli byl tvůj nevyplněný limitní příkaz GTD nebo GTC atd.

To co ty nazýváš „habaďůra“ je v drtivé většině normální fungování podle pevných pravidel, jen je problém v jejich porozumění na straně uživatele, nebo v nedostatečném ošetření takových situací.

Odesláno

Heron Děkuji moc za tvůj dlouhý a vyčerpavající přispěvěk, který mi konečně udělal jasno v základech co na burze znamená MKT a LMT. Jen se chci zeptat jestli tomu odpovidají i typy příkazů z tohoto marketu v NT ( Viz. obrázek). Pokud kliknu na BUY BID, tak to znamená limitní příkaz na "nejvyšší" BID jako BUY LMT? Pokud kliknu na SELL ASK, tak to znamená limitní příkaz na "nejnižší" ASK jako SELL LMT? Kdy pro ně platí stejná pravidla jako pro LMT, že nemusí být vyplněné? Příkazy BUY ASK / SELL BID je ekvivalent MKT příkazů nebo jakoby STOP příkazy. Děkuji moc za potvrzení případne objasnění mé neznalosti. :)

16064

Odesláno

BOBR: pokud vím, tak všechny 4 příkazy BUY ASK, BUY BID, SELL ASK i SEL BID se v NT provádí jako LMT pro příslušnou cenu a směr. Můžeš si to ověřit v okně přehledu příkazů.

Odesláno

BOBR: ad „Pokud kliknu na BUY BID, tak to znamená limitní příkaz na "nejvyšší" BID jako BUY LMT?“ ... ANO ad „Pokud kliknu na SELL ASK, tak to znamená limitní příkaz na "nejnižší" ASK jako SELL LMT?! ... ANO ad “Kdy pro ně platí stejná pravidla jako pro LMT, že nemusí být vyplněné?“ ... ANO vždycky pro ně platí stejná pravidla jako pro kterýkoliv jiný LMT příkaz, tj. nemusí být vyplněné - zařadí se na BID nebo ASK a tam čekají, jestli je někdo vyžere. Může se ale stát, že cena bude od tebe ujíždět nahoru (pokud kupuješ limitem na BID) nebo dolů (pokud prodáváš limitem na ASK) a zůstaneš nevyplněn nebo jen částečně vyplněn. ad „Příkazy BUY ASK / SELL BID je ekvivalent MKT příkazů nebo jakoby STOP příkazy.“ ... jsou to ekvivalenty jako „MKT“ příkazů, ale NT je implementuje v ATM jako LMT příkazy – když máš BUY ASK, tak říkáš že akceptuješ jako limit horší cenu (ASK), než bys mohl dostat na BID a budeš proto vyplněn ihned, oproti čekačce na BID. Pro skutečné MKT příkazy jsou tam tlačítka BUY/SELL MARKET. Pusť si data a Sim101 účet někdy mimo hlavní hodiny, kdy se trh hýbe pomalu, otevři si něco abys viděl BID a ASK (cenu i objem), zapni si zvuk a klikni na „BUY MARKET“ nebo „BUY ASK“ – ozve se ihned za sebou „Oder Pending“+ „Order Filled“ což může znít jako „Order Order Filled“. Když místo toho klikneš na „BUY BID“, tak se ozve jen „Order Pending“ – umístí se příkaz jako limit na BID, a teprve po nějaké době (až se vyžere objem, který už na bidu byl před tebou) bude vyplněn a ozve se „Order Filled“. Taky nemusí být vyplněn – cena může jet nahoru a ty budeš mít příkaz pořád ve stavu Pending ve frontě BUY limit, ale už ne na BID ale bude se propadat níže (pokud cena pojede nahoru). Ale lze si nastavit, aby se příkaz pořád držel na aktuálním novém ujíždějícím BID, dokud nebude celý příkaz (objem) vyplněn... Jinak u NT je rozdíl jestli vstupuješ/vystupuješ ručně přes ATM (Advanced Trade Mangement) tj. třeba přes Chart Trader nebo DOM, anebo jestli vstupuješ/vystupuješ přes příkazy generované tvojí strategií (Automated Trading) – tam máš ještě ve verzi 7 buď „Managed“ přístup nebo „Unmanaged“ přístup ... to by bylo moc dlouhé povídání, všechno je v Helpu přehledně popsané i s obrázky. Pro ATM třeba tady: http://www.ninjatrader.com/support/helpGuides/nt7/submitting_orders4.htm

16065

Odesláno

radusor:
ad „... ale nikde jsem nezahlédl příkaz STOP limit , který se zadá např při Longu NAD cenu „
Článek o limitech a stopech tady bude až za nějaký čas. Stop příkaz NENÍ umístěn na burze (míněno ve smyslu že není v orderbooku tj. frontě limitních příkazů, pokud trh orderbook má).

Pokud bys dal obyčejný LMT (který okamžitě přijde na trh), tak můžeš pro SELL LMT zadat pouze limitní cenu, která je NAD aktuální cenou (tj. bid nebo ask podle kontextu). Pro BUY LMT můžeš jako limitní cenu zadat pouze cenu která je POD aktuální cenou. Pokud se budeš pokoušet nastavit limitní ceny POD aktuální u SELL LMT nebo NAD aktuální cenu pro BUY LMT, tak ti to nedovolí SW zadat nebo pokud ano, tak ti to zamítne (reject) broker nebo burza, každopádně to na trh neumístíš.

Takže když dáš STP LMT, tak je to mimo trh, takže žádné omezení ohledně limitní ceny zatím není uplatňováno. V okamžiku kdy se splní STP kritérium neboli trigger (nejčastěji např. že last cena je rovna nastavené ceně nebo Bid nebo Ask, ale můžou to kromě toho být i poždavky na likviditu nebo na minimální zobchodované množství na last ceně atd.), tak se teprve z tvého STP LMT stává obyčejný LMT s nastavenou limitní cenou, který je odeslán na burzu. V tomto okamžiku se na něj vztahují omezení ohledně limitní ceny NAD vs POD podle toho, jestli jde o SELL LMT nebo BUY LMT.

Například Ninjatrader ti umožňuje zadat limitní cenu u STP LMT orderů jako offset libovolně nad i pod cenou, ALE: v helpu je jasně napsané, že pokud zadáš záporné číslo (počet ticků) - míněno v oblasti, kde to burza nepovoluje, tak je takový order automaticky realizován (submit) jako „simulated stop order“ – v NT to znamená, že je držen na tvém PC do doby, než budou na trhu vhodné podmínky pro jeho nezamítnutí resp. vyplnění za lepší cenu.

Odesláno

Ještě pro jistotu malý komentář k těm BUY LMT s limitní cenou NAD aktuální:
Když je BID = 1535 a ASK = 1536 a vy byste nějakým způsobem poslali na trh BUY LMT s cenou 1540 , tak teoreticky nic nebrání spárování vašeho příkazu s již čekajícím SELL LMT na 1540, pokud tam nějaký s dostatečným množstvím je. Ale, povinností burzy (každé civilizované, centralizované, regulované burzy) je vyplnit váš příkaz za [bold]nejlepší možnou cenu[/bold] – v tomhle případě vy chcete nakupovat za 1540 nebo lépe tj. níže. Jako protistrana je nejlepší v danou chvíli (nejnižší cena) to, co je nabízeno od prodejce na ASK ceně., takže povinností burzy by bylo vyplnit vás za ASK – a to se také stane, pokud to nemají implementováno právě přes zamítnutí příkazu. To je to co tady ukazoval Airmike – posune čekající BUY LMT nad ASK a je vyplněn od ASK postupně výše dokud není vyplněn celý jeho příkaz. Někde je to implementováno takhle jak to má Airmike, jinde zase přes zamítnutí příkazu, někde je to realizováno na úrovni SW, jinde na úrovni brokera a jinde třeba burzy. Svět je rozmanitý a je třeba si vyzkoušet a zjistit jak přesně to funguje ve vašem případě. Třeba v NinjaTraderu v Chart Traderu můžete zadat BUY LMT pouze POD aktuální cenu, ale poté co jste ho zadali ho můžete přesunutím kamkoliv NAD aktuální cenu exekuovat stylem popisovaným viz Airmike. To "zamítnutí/nepovolení" by se pak vztahovalo pouze na počáteční umístění.

Odesláno

Dobrý den,

chtěl jsem se zeptat jestli někdo nemáte zkušenosti s market příkazem v situacích kdy si počkáme na návrat proti směru plánované pozice. Samozřejmě lze použít příkaz stop s limitem, ale mě jde o situace u spreadů kde je nutný vstup na dvou trzích naráz, tudiž na oba trhy limit nelze použít. Možná by ještě šlo na jednom trhu natolik zvýhodnit limit aby pak market na druhém trhu neměl negativní dopad na celkový zisk.

Provádíte to někdo tak u spreadů? Případně jak se to daří aplikovat?

S pozdravem. Honza

Odesláno

To Heron:

Pokud popisuješ obecné základy tak do nich patří i to, že lze udělat obchod i za lepší cenu než zadaný limit a né že nelze. Místo zjednodušení jsi to zamotal. Ten kdo si to chce zjišťovat podle svých potřeb tak je právě tady na těchto stránkách Finančníka, a možná i proto, že to pro něj není jednoduché nastudovat na stránkách burzy.

Kvůli exaktnosti bych doplnil že se zde jedná o obchodování s komoditami a burzovními indexy pomocí futures kontraktů na burzách v Chicagu a New Yorku a pro zjednodušení stačí jen futures na SP500 (ES), futures na Rusell (TF), od pondělí do neděle a brokeři AMP Futures a Mirus Futures, software Ninja Trader.:)A dej si na tom záležet, protože tu ostatní mateš.:)

K tomu zobchodování mimo (vně) hranice to NT neoznačuje ani "před" ani "po" ale "při" zobchodování což vlastně znamená že i "před" ním s tím, že "po" se neřeší a proč by se taky řešilo když se v tu dobu řeší další tik.
Já na to koukám v Time and Sales v Ninjovi - barvičky viz pravé tlačítko myši a vlastnosti.

Montování zavření burzy tu zavedl Tomáš výrazem "poziční obchodování" s odkazem na svůj článek což značí že se předpokládá i příkaz GTC který není uzavřením obchodních hodin burzy automaticky zahozen a jede pozičně dál čímž se Ti to pro vysvětlování komplikuje o Gapy (největší snad obyčejně z pátka na neděli kdy je povinný nástup na jachty).

Teoretizovat 1,2,3 nehodlám, neboť se to, že LAST byl mimo BID-ASK, fakticky děje a mě zajímají fakta která mohou mít vliv na plnění příkazů.

Teoretizování jsem si tu už i dříve na fóru užil dost a skutečnost byla úplně jinde. A asi si ještě užiju. Takže pro mě je to pořád habaďůra která zamíchává kartama podle pravidel která neznám a troufnu si tvrdit nezná je tu asi nikdo byť to zcela určitě mezi platná pravidla patří.

--

V jednom ze svých příspěvků píšeš cituji: "...Obdobně burza akceptuje pouze BUY LMT s limitní cenou nižší nebo rovnou aktuálnímu BID a pokud dáte vyšší limitní cenu, tak bude příkaz odmítnut".
-K tomu musím říct, že tady ostatní mateš. AIRMIKE to, jak sám píše, takhle úspěšně provozuje.

Jinak jak píšeš o tom STOP Limit "nad cenou" tak bys měl doplnit na jakou stranu se má zobchodovat neboť bez toho je to znovu matení a pak jsou tady na to podivující se dotazy.

To samé u tvrzení "Stop příkaz NENÍ umístěn na burze" a to už pak je jedno v jakém smyslu. Chybí zase přesný popis. Znám jednu pralesní burzu kde ještě neumí ani základní Stopku - StopLOSS (sell), říkám ji VekslCrossburz Praha a někteří brokeři to alespoň nahrazují ve svých okurkových softwarech.

Svět je rozmanitý ale tady asi většina bourá na miniRusellu2000 či v Chicagu.

Odesláno

> fxmagico

Neco podobneho resim v soucasne dobe u paroveho obchodovani. Jde o to, ze taky vstupuju marketem, protoze potrebuju mit jistotu, ze se vyplni prikazy v obou trzich, ale nekdy je ten slip docela sila (jednou jsem dostal slip i 1 dolar na akcii a ze ziskoveho obchodu byla najednou ztrata). Takze tohle je rozhodne oblast, na kterou se chci zamerit a vyresit to elegantneji.

Pokud vim, tak IB podporuje nejake combo prikazy. Nejsem si uplne jistej, jak je to implementovany, ale cekal bych, ze jeden z tech prikazu bude limit a na to navazanej druhej stop. Jakmile se vyplni limitni prikaz, aktivuje se stop a druha "noha" se vyplni za market. Tohle by slo implementovat i na strane AOS/tradera, pokud to broker nepodporuje a s timto bych chtel trochu experimentovat. Stalo by urcite za uvahu i to, co jsi psal - zvyhodnit limit prikaz, aby pripadne pokryl slip z toho marketu. Pak je jeste samozrejme potreba resit neco podobnyho u vystupu z pozice.

Ja planuju i sledovat spread mezi BID a ASK spolu s poctem objednavek na techto urovnich, protoze na zaklade toho by se dalo s urcitou pravdepodobnosti urcit, jak velky slip bude. Zatim jsem tuto oblast nijak neresil, ale tato diskuze, ktera zachazi dost do detailu a potvrdila mi urcite domnenky ohledne parovacich algoritmu na burzach, mi dala dost inspirace.

Ja ted bohuzel nemam moc casu si s timto hrat, protoze ted budu kazdych 14 dni v jinym state, ale pokud by jsi toto nejak resil (nebo samozrejme kdokoliv jiny), tak by me to docela zajimalo. Az se k tomu dostanu, tak se pak taky podelim.

Odesláno

Jiří S.:
Jestli jsem to víc zamotal než objasnil, tak je to samozřejmě moje vina a nebyl to záměr.

ad „Pokud popisuješ obecné základy tak do nich patří i to, že lze udělat obchod i za lepší cenu než zadaný limit a né že nelze...“
Ohledně těch limitů jsem nikde netvrdil, že nemůžeš dostat lepší cenu než je limitní – ba přímo naopak. Cituji sám sebe z příspěvku 3:03PM: „LMT znamená, že cena bude vyplněna za nastavenou limitní cenu [bold]nebo lépe[/bold] – to lépe znamená u BUY LMT limitní cenu nebo nižší (při nákupu platí, že čím levněji nakoupíme, tím lépe), u SELL LMT to znamená za limitní cenu nebo vyšší (při prodeji platí, že čím dráže prodáme, tím lépe).“

Musíš číst nejen to bílé mezi řádky. Chtěl jsem začátečníkům hlavně ukázat mechanismus, jakým způsobem přibývá likvidita jakým způsobem je tato likvidita „spotřebovávána“ na BID a na ASK, aby se cena mohla pohnout jinam – to že jsem do obrázku udělal ubývání likvidity jen pomocí MKT příkazů a ne pomocí LMT příkazů (jak to popsal Airmike) na věci nic nemění. Takový LMT má potom na trh stejný dopad jako MKT, ale pro příslušného tradera mu narozdíl od MKT zajišťuje hranici pro cenu plnění.

ad „V jednom ze svých příspěvků píšeš cituji: "...Obdobně burza akceptuje pouze BUY LMT s limitní cenou nižší nebo rovnou aktuálnímu BID a pokud dáte vyšší limitní cenu, tak bude příkaz odmítnut".
-K tomu musím říct, že tady ostatní mateš. AIRMIKE to, jak sám píše, takhle úspěšně provozuje.“
Co jsem mohl zamotat bylo nastavení limitní ceny vs BID/ASK – to jsem se snažil potom vyjasnit v posledních příspěvcích, kde jsem to snad vyjasnil včetně odkazu na Airmika. Ano, měl jsem zdůraznit že mluvím o LMT příkazech zvyšujících likviditu a zařazovaných do fronty BUY LMT příkazů, nikoliv o těch BUY LMT co spotřebovávají likviditu postupně od ASK nahoru. Jak jsem psal, zkus kliknout v Chart Traderu NAD cenu pravým tlačítkem myši a jestli tam budeš mít nabídku BUY LIMIT, tak prosím udělej screenshot a ukaž nám to, já tam teda nic takového nemám, mám tam jenom SELL LIMIT. Pak klikni myší POD cenu, dej tam pravé tlačítko myši (kontextové menu pro mimo jiné zadávání příkazů do grafu) a jestli tam budeš mít nabídku SELL LIMIT tak totéž, já tam mám jen BUY LIMIT. To jsem myslel tím že to nejde. Když si ten příkaz zadáš na správnou stranu, tak ho pak už můžeš posunout přes BID/ASK a být exekuován stejně jako by to byl MKT, ale s nastavenou hranicí.

ad „A dej si na tom záležet, protože tu ostatní mateš“
Nepíšu tady žádnou učebnici a nepřemýšlím týden nad tím, jestli jsem na něco nezapomněl nebo jestli si to někdo nevyloží jinak než jsem to myslel – a nemůžu mu to mít za zlé, když si to jinak vyloží, protože mi do hlavy nevidí. Nehodlám někoho o něčem přesvědčovat – každý ať si dělá co chce a jak chce.

A nikoho mást už raději nebudu. Faciant meliora potentes.

Odesláno

to gizmo:

To jsem rád, že tu někdo řeší podobný problém. Také to mám v plánu použít na párové obchody. Strategii mám však zatím jen hrubě otestovanou na daily a celkově ji chci doplnit ještě o pár věcí. Bohužel ted také nemám čas, pro změnu si užívám zkouškové ... ale až bude trochu času tak by nebylo od věci na toto téma založit vlákno.


×
×
  • Vytvořit...