Již slyším, jak někteří nadávají „to je pouze pro programátory!!!“. Věřte mi, že není a snadno to zvládnete. Stává se vám například po vstupu do pozice, že při posouvání SL na správné místo se vám třese ruka a cloumají s vámi velké emoce? Já si to pamatuji velice dobře a vím, že to není nic příjemného. Chvějící se rukou s bolestí břicha jsem se snažil co nejrychleji posunout SL jeden tick pod low posledního swingu (při longové pozici). Přechodem ze Sierry na MetaTrader se to ještě zhoršilo, protože zde je jeden bod rozdělen na 100 částí. Zde trefit přesně umístění SL ručně je vlastně nemožné. Je potřeba se podívat na low posledního swingu, rychle od něho odečíst 0.25 a pak otevřít okno s upravením příkazu a zde výslednou hodnotu zadat. Toto všechno se ale s klepající rukou a pod tlakem provádí hodně, hodně těžce.
Rozhodl jsem se tedy, že se pokusím umístění SL naprogramovat. Co budu potřebovat? Musím se nějak zeptat na low posledního swingu a až ho budu znát tak od něho odečtu 0.25 (jeden tick) a tuto hodnotu prostě vložím do vstupního příkazu jako SL.
Low posledního swingu se skládá z několika svíček, z nichž v drtivé většině jenom jedna je to co mě zajímá a je to ta co má prostě nejnižší low ze všech. Bude tedy potřeba zjistit, která z nich to je a její hodnotu uložit do proměnné SL.
O programování já ale vůbec nic nevím a spíše patřím k lidem, pro které to je španělská vesnice. Proto prosím zde nehledejte profesionální příkazy. Ty já vůbec neznám, a proto jsem vycházel z absolutního minima získaného zdarma z internetu. Zjistil jsem tedy postupně, že na low poslední svíčky se lze zeptat příkazem „Low[0]“, na low předposlední svíčky příkazem „Low[1]“, na low předpředposlední svíčky příkazem „Low[2]“ atd.
Nyní tedy jako žák první třídy tyto svíčky mezi sebou porovnám a pokusím se zjistit, která ze svíček je ta co hledám, tedy ta co má nejnižší low a její hodnotu si uložím do proměnné „SL“. U strategie, kterou obchoduji se většinou SL nachází maximálně do pěti svíček dozadu a proto budu porovnávat pouze pět posledních svíček. Snadno lze samozřejmě přidat do porovnání i šestou, sedmou nebo desátou svíčku jak každý potřebuje. (je to ale jak jsem psal úroveň žáka první třídy tedy porovnávat takto například 20 svíček dozadu je již asi nesmysl, a zde to již bude chtít se poohlédnout po profesionálnější metodě zjištění low swingu s velkým počtem svíček).
Tedy k samotnému porovnávání. Zeptám se tedy na low poslední svíčky a porovnám ho s low předposlední svíčky, předpředposlední svíčky atd.
if (Low[0]<=Low [1]&&Low[0]<=Low [2]&&Low[0]<=Low[3]&&Low[0]<=Low[4])
SL = Low [0];
Pokusím se přeložit do češtiny.
Jestliže je
minimum poslední svíčky menší nebo rovno minimu předposlední svíčky
a zároveň je
minimum poslední svíčky menší nebo rovno minimu předpředposlední svíčky
a zároveň je
minimum poslední svíčky menší nebo rovno minimu předpředpředposlední svíčky
a zároveň je
minimum poslední svíčky menší nebo rovno minimu předpředpředpředposlední svíčky
potom do proměnné „SL“ přiřaď hodnotu „minimum poslední svíčky“
Pokud byly všechny podmínky splněny máme vyhráno a v proměnné SL máme uloženou hodnotu low posledního swingu a hotovo. Samozřejmě není hotovo, protože přeci pokaždé nebude low poslední svíčky to nejnižší. Musíme se tedy i zeptat na low předposlední svíčky a porovnat ho s low ostatních svíček a potom se musíme zeptat na low předpředposlední svíčky a porovnat ho také s low posledních svíček atd. Zde se vše již ale opakuje a není tedy asi třeba již rozepisovat podrobně.
Zde porovnáváme minimum předposlední svíčky s ostatními.
if (Low[1]<=Low [0]&&Low[1]<=Low [2]&&Low[1]<=Low[3]&&Low[1]<=Low[4])
A pokud jsou podmínky splněny, tedy že low předposlední svíčky je menší než low ostatních svíček uložíme si do proměnné SL low předposlední svíčky.
SL = Low [1];
A nyní již opravdu pouze opakujeme.
Porovnání předpředposlední svíčky s ostatními.
if (Low[2]<=Low [0]&&Low[2]<=Low [1]&&Low[2]<=Low[3]&&Low[2]<=Low[4])
SL = Low [2];
Porovnání předpředpředposlední svíčky s ostatními.
if (Low[3]<=Low [0]&&Low[3]<=Low [1]&&Low[3]<=Low[2]&&Low[3]<=Low[4])
SL = Low [3];
Porovnání předpředpředpředposlední svíčky s ostatními.
if (Low[4]<=Low [0]&&Low[4]<=Low [1]&&Low[4]<=Low[2]&&Low[4]<=Low[3])
SL = Low [4];
A je to hotové, máme hodnotu low posledního swingu uloženou v proměnné „SL“. Jak jsem psal výše já ještě Stop loss posunuji o jeden tick pod low swingu a proto musím ještě odečíst 0.25 bodu. Konečná podoba je tedy „SL-25*Point“.
Zde ještě celé porovnávání uceleně.
if (Low[0]<=Low [1]&&Low[0]<=Low [2]&&Low[0]<=Low[3]&&Low[0]<=Low[4])
SL = Low [0];
if (Low[1]<=Low [0]&&Low[1]<=Low [2]&&Low[1]<=Low[3]&&Low[1]<=Low[4])
SL = Low [1];
if (Low[2]<=Low [0]&&Low[2]<=Low [1]&&Low[2]<=Low[3]&&Low[2]<=Low[4])
SL = Low [2];
if (Low[3]<=Low [0]&&Low[3]<=Low [1]&&Low[3]<=Low[2]&&Low[3]<=Low[4])
SL = Low [3];
if (Low[4]<=Low [0]&&Low[4]<=Low [1]&&Low[4]<=Low[2]&&Low[4]<=Low[3])
SL = Low [4];
Závěrem bych se chtěl ještě jednou omluvit, všem co jsou v programování zběhlí a tento primitivní zápis na ně působí jistě strašně. Na druhou stranu možná někomu ukáže cestu a pomůže mu naprogramovat například zadávání SL.
Věřte mi prosím, že nyní když vstupuji za pomoci malého primitivního AOSu do pozice s tím, že se nemusím nervovat, že nestihnu zadat SL na správné místo, ale naopak ho za mě nastavuje AOS, je to obrovská úleva.
Ještě abych nezapomněl, pro vstup do shortu samozřejmě SL neumísťuji pod low, ale nad high. Vše je ale úplně stejné, jen příkaz Low[0] se nahradí příkazem High[0] a neptám se, zda je jedno low menší než druhé, ale samozřejmě obráceně, jestli je jedno high větší než druhé.