Nastavenie súborov cookie

Keď navštívite ktorúkoľvek internetovú stránku, táto stránka môže uložiť alebo obnoviť informácie o vašom prehliadači, najmä v podobe súborov cookie. Tieto informácie sa môžu týkať vás, vašich preferencií, vášho zariadenia alebo sa môžu použiť na to, aby stránka fungovala tak, ako očakávate. Tieto informácie vás zvyčajne neidentifikujú priamo, vďaka nim však môžete získať viac prispôsobený internetový obsah. V týchto nastaveniach si môžete vybrať, že niektoré typy súborov cookie nepovolíte. Po kliknutí na nadpisy jednotlivých kategórií sa dozviete viac a zmeníte svoje predvolené nastavenia. Mali by ste však vedieť, že blokovanie niektorých súborov cookie môže ovplyvniť vašu skúsenosť so stránkou a služby, ktoré vám môžeme ponúknuť. Viac informácií

Spravovať nastavenie súborov cookie

Nevyhnutne potrebné súbory cookie

Vždy aktívne

Tieto súbory cookie sú potrebné na zabezpečenie funkčnosti internetovej stránky a nemožno ich v našich systémoch vypnúť. Zvyčajne sa nastavujú len ako reakcia na vami vykonané činnosti, ktoré predstavujú žiadosť súvisiacu so službami, ako je napríklad nastavenie preferencií ochrany osobných údajov, prihlasovanie alebo vypĺňanie formulárov. Svoj prehliadač môžete nastaviť tak, aby blokoval alebo vás upozorňoval na takéto súbory cookie, v takom prípade však nemusia niektoré časti stránky fungovať.

Súbory cookie súvisiace s výkonom

Tieto súbory cookie nám umožňujú určiť počet návštev a zdroje návštevnosti, aby sme mohli merať a vylepšovať výkon našej stránky. Pomáhajú nám zistiť, ktoré stránky sú najviac a najmenej populárne, a vidieť, koľko návštevníkov sa na stránke pohybuje. Všetky informácie, ktoré tieto súbory cookie zbierajú, sú súhrnné, a teda anonymné. Ak tieto súbory cookie nepovolíte, nebudeme vedieť, kedy ste našu stránku navštívili.

Vytvorte súbor [priezvisko]-7.R a naprogramujte v ňom nasledovné (použite dáta pre Vami vybraný menový kurz):

 

1a) Naprogramujte funkciu calcTrends(ohlc, extr, nbarsSwing=3), ktorá pre každú sviečku zistí, či je v nejakom trende alebo nie; jej výsledkom bude factor s možnými hodnotami "up", "down", "none". Funkciu zaimplementujte nasledovne:

  • zavolajte postupne funkcie calcTrendSwings(), calcTrendStarts(), calcTrendEnds(), analogicky ako v kóde z poslednej prednášky;
  • pripravte si premennú result typu factor, s dĺžkou nohlc (nohlc je počet riadkov v ohlc), nastavenú všade na "none";
  • v cykle cez jednotlivé k (od 1 po počet swingových extrémov): ak ide o up-trend, vyplňte result hodnotou "up" na indexoch od starts[k] po ends[k] (vrátane); analogicky ak ide o down-trend.

1b) Naprogramujte funkciu plotTrends(trends), ktorá pre každú sviečku v up-trende nakreslí modrú šípku nahor v dolnej časti obrázka, a pre každú sviečku v down-trende nakreslí červenú šípku nadol v hornej časti obrázka (podobne, ako je to v súbore s kódom z prednášky).

1c) Naprogramujte funkciu calcProfit(ohlc, trends, detail=FALSE), ktorá spočíta celkový zisk nasledujúcej obchodnej stratégie:

  • ak je daná sviečka v up-trende, pri otváracej cene vstúpime do long pozície a vystúpime z nej pri close cene (tým zrealizujeme zisk rovný rozdielu close-cena mínus open-cena);
  • opačne ak je sviečka v down-trende;
  • ak sviečka nie je ani v up-trende ani v down-trende, nedržíme žiadnu pozíciu (zisk za danú sviečku je teda 0).

Pritom ak parameter detail je TRUE, funkcia vráti celkový zisk; ak parameter detail je FALSE, funkcia vráti zisky za každú sviečku zvlášť (tj. vráti číselný vektor s dĺžkou rovnou počtu sviečok).


2a) Pre štvrťročné dáta Vášho kurzu zobrazte ohlc-graf a vyznačte v ňom up-trendy a down-trendy (funkciou z (1b)). Spočítajte zisky stratégie z (1c); vypíšte celkový zisk, ale aj podrobne - vo forme data-frame, kde riadky zodpovedajú jednotlivým sviečkam a stĺpce sú trend (factor up/down/none) a zisk. Obrázok uložte a dáta zapíšte do R-súboru vo forme komentára.

2b) Zopakujte (2a) pre mesačné dáta.


3a) Zopakujte (2a) pre týždenné dáta, ale už bez podrobného výpisu ziskov. Pritom nevytvorte jeden ohlc-graf, ale vytvorte viac grafov; každý graf by mal obsahovať maximálne 200-250 sviečok; využite pritom parameter xlim funkcie plotOhlc(). Všetky tieto grafy uložte do spoločného pdf (to dosiahnete tak, že na začiatku zavoláte funkciu pdf(), vykreslíte všetky grafy a až nakoniec zavoláte dev.off()).

3b) Zopakujte (3a) pre denné dáta.


Všetky výsledky uložte do R-súboru vo forme komentára, hneď za príslušným R-kódom. Pri riešení nepoužite žiadnu z externých R-knižníc; využiť môžete funkcie zo súboru r1-functions-v11.R, prípadne kód z prednášky.

R-súbor spolu s PDF-súbormi obrázkov zazipujte do súboru s názvom [priezvisko]-7.zip a pošlite na email vladimir.spitalsky (doména umb.sk) do 28.4.2019.

Konzultačné hodiny

Pondelok
10:30 - 11:50
Utorok
-
Streda
-
Štvrtok
-
Piatok
-