Zobrazování kalendáře ekonomických událostí

Napsal:   Sekce: 

Tento článek obsahuje popis psaní jednoduchého a pohodlného indikátoru zobrazujícího v pracovním prostoru grafu hlavní ekonomické události z vnějších internetových zdrojů.

Indikátor vypadá takto:


Zde je seznam požadavků na indikátor:

  • Indikátor by měl samostatně (bez pomoci uživatele) stáhnout potřebné soubory událostí kalendáře pro aktuální týden.
  • Indikátor by měl zobrazit všechny události (jak minulé tak budoucí) z tohoto souboru v podobě svislých čar s událostními titulky.
  • Indikátor by měl průběžně aktualizovat události z externího zdroje.

Poté, co jsme zadali úkol, můžeme analyzovat některé technické detaily.


Technická část

Zkusme použít stránky http://www.dailyfx.com/calendar/ jako externí zdroj. Výhodou tohoto zdroje je, že umožňuje stahovat kalendář ekonomických zpráv  s rozšířenim  .csv, a tak se vyhnout potížím s prácí s html soubory. Zde je odkaz na kalendář ekonomických zpráv pro aktuální týden: http://www.dailyfx.com/calendar/Dailyfx_Global_Economic_Calendar.csv.

Nyní se zaměříme na proces stahování souborů z internetu. To lze provést pomocí dobře známého program GetRight. Ten lze stáhnout na adrese: http://www.getright.com/get.html nebo ze seznamu příloh k tomuto článku.

Poté, co jste si stáhli program, nastavte GetRight pro stahování souborů do potřebného adresáře. Je to do \ files \ html \ directory ve složce vašeho obchodního terminálu. K tomu účelu stiskněte klávesu F8 a zapište údaje, jak je popsáno níže:



Psaní zdrojového kódu indikátoru

 Nyní,  když jsme si zodpověděli  pár otázek, můžeme začít psát indikátor.

extern string HtmlAdress = "http://www.dailyfx.com/calendar/Dailyfx_Global_Economic_Calendar.csv";
extern string GetrightAdress = "c:\progra~1\getright\getright.exe";
 
#include <Time.mqh>
#import "kernel32.dll"
int WinExec(string NameEx, int dwFlags);

Existují pouze dvě externí proměnné: adresa externího zdroje (ve skutečnosti, nemusíte měnit tento parametr), a adresa programu GetRight (pokud jste si stáhli program do jiného adresáře, doporučuji změnit výchozí hodnoty v indikátoru, aby nedošlo ke změně hodnoty proměnné ukazující na návěští start). Chcete-li spustit soubor GetRight.exe budete muset použít funkci WinExec, která může být natažena z knihovny Kernel32.dll. Knihovna Time.mqh obsahuje funkce pro práci s GMT.

  void DownloadCalendar()
{
  Print("Downloading "+HtmlAdress+" to C:\MetaTrader4\experts\files\html\Calendar.csv");
  WinExec(GetrightAdress+" /URL:"+HtmlAdress+" /C:\MetaTrader4\experts\files\html\Calendar.csv /W /O",0);
}

Jak je vidět, díky využití programu GetRight stahování souborů z externích zdrojů je velmi jednoduché. Parametr / W označuje, že proces nebude vrácen do programu, dokud stažení souboru není dokončeno.  Parametr / O znamená, že pokud existuje soubor se stejným názvem, bude přepsán. Pamatujte si, že pokud jste změnili nastavení GetRight správně, bude kalendář stáhnut do \ files \ html \. A tady jsou dvě další funkce:

 datetime PerviousMonday(datetime d)
{
  datetime res = d - (TimeDayOfWeek(d)-1)*24*60*60;
  return(res);
}
datetime ToDate(string stDate,string stTime)
{
  string WeekDay = StringSubstr(stDate,0,3);
  int WeekPlus = 0;
  if (WeekDay=="Mon") WeekPlus=0;
  if (WeekDay=="Tue") WeekPlus=1;
  if (WeekDay=="Wed") WeekPlus=2;
  if (WeekDay=="Thu") WeekPlus=3;
  if (WeekDay=="Fri") WeekPlus=4;
  if (WeekDay=="Sat") WeekPlus=5;
  if (WeekDay=="Sun") WeekPlus=-1;
 
  datetime Res = PerviousMonday(GetTimeGMT())+WeekPlus*24*60*60;
  datetime Tm = StrToTime(stTime);
  Res=Res+TimeHour(Tm )*60*60+TimeMinute(Tm )*60+TimeSeconds(Tm )
         -TimeHour(Res)*60*60-TimeMinute(Res)*60-TimeSeconds(Res);  
  if (StringFind(stTime,"PM")>=0)       
    Res+=12*60*60;
  Res=Res-GetShiftGMT();
 
  return (Res);
}

Funkce  PerviousMonday ()  vrací datum zahájení běžného týdne. Funkce ToDate () převádí datum a čas z kalendáře do formátu datatime.

 
void GrabNews()
{

  int file = FileOpen("\Html\Calendar.csv",FILE_READ|FILE_CSV,',');
  if (file==-1||FileSize(file)==0)
        return;

  int i=0;
  while (!FileIsEnding(file))
    {
Print("313");    
      string stDate="";
      while (!FileIsEnding(file)&&stDate=="")
// Print("314");     
        stDate = FileReadString(file);
//Print("314");
      string stTime = FileReadString(file);
      string stTimeZone = FileReadString(file);
      string stCurrency = FileReadString(file);
      string stDescription = FileReadString(file);
      string stImportance = FileReadString(file);
      string stActual = FileReadString(file);
      string stForecast = FileReadString(file);
      string stPrevious = FileReadString(file);
   
    
      datetime Date = ToDate(stDate,stTime);
     
      color c=Green;
      if (stImportance=="Low") c = Yellow;
      if (stImportance=="Medium") c = Orange;
      if (stImportance=="High") c = Red;
         
      ObjectCreate("CalendarText"+i, OBJ_TEXT, 0, Date, Close[0]);
      ObjectSet("CalendarText"+i, OBJPROP_COLOR, c);          
      ObjectSetText("CalendarText"+i, stDate + " : "+ stDescription, 8);          
      ObjectSet("CalendarText"+i, OBJPROP_ANGLE, 90);          
          
                   
      ObjectCreate("CalendarLine"+i, OBJ_VLINE, 0, Date, Close[0]);
      ObjectSet("CalendarLine"+i, OBJPROP_COLOR, c);                    
      ObjectSet("CalendarLine"+i, OBJPROP_STYLE, STYLE_DOT);                    
      ObjectSet("CalendarLine"+i, OBJPROP_BACK, true);          
      ObjectSetText("CalendarLine"+i, stDescription, 8);                    
      
      i++;
      
    }
  Max = i;
  if (file!=-1)
    FileClose(file);
}

Hlavní procedura  GrabNews () otevře stažený soubor \ Html \ Calendar. csv,  načte všechny událostní parametry a vytvoří dva objekty pro každou zprávu: svislou čáru a text. Kalendář událostí je aktualizován každých 15 minut:

 int start()
  {

   int    counted_bars=IndicatorCounted();
//----
   if (TimeCurrent()>LastTimeDownloading+15*60)
     {
       DeleteObjects();
       DownloadCalendar();
       LastTimeDownloading = TimeCurrent();
      
       int file=-1;
       while (file==-1)
         file = FileOpen("\Html\Calendar.csv",FILE_READ|FILE_CSV,',');
       FileClose(file);

       GrabNews();
     }
//----
   return(0);
  }


Závěr

Tento článek vysvětluje, jak zobrazit Kalendář událostí z vnějších zdrojů na pracovní plochu v podobě vertikálních linek. Tento indikátor byl záměrně napsán bez nadměrných  parametrů, jako je filtrování zpráv podle jejich významu, nebo korespondence události a symbolu aktuálního okna.

Závěrečné poznámky:

Chtěl bych poukázat na chybu v kalendáři operací na http://www.dailyfx.com/calendar/. Upozorňuji, že někdy události v souboru .csv z adresy

 http://www.dailyfx.com/calendar/Dailyfx_Global_Economic_Calendar.csv

nejsou totožné s událostmi na stránce

http://www.dailyfx.com/calendar/.

 K tomu může dojít tak, že zprávy jsou zveřejněny od 00:00 do 01:00 (GMT).  V souboru .csv jsou takové zprávy  indikovány  o12 hodin později.

Rovněž upozorňujeme, že indikátor používá externí dll (kernell32.dll), takže nezapomeňte na odpovídající parametr v nastavení indikátoru.

Soubor CalendarArticle.mq4 by měl být uložen ve složce \ experts \ indicators. Time.mq4 by měl být uložen v experts\ library, Time.mqh - v  experts \ include.

Překlád z ruštiny pro MetaQuotes Software Corp.
Původní článek: http://articles.mql4.com/ru/520

Přílohy:

CalendarArticle.mq4 (4.9 Kb)
getright_setup.zip (4.7 Mb)
Time.mq4 (2.0 Kb)
Time.mqh (750 bytes)

 

Hodnocení článku:
Sdílení článku:
Facebook

Čtěte více

  • Zlato po referendu na dně, nyní však letí raketově vzhůru
    Zlato se po švýcarském referendu zhoupnulo na hodnoty z počátku listopadu, na minima z roku 2010 však nedosáhlo.
  • Zlato se odpoutalo od čtyřletých minim, úroveň 1200 USD rozhodne
    Zlatu se v posledních několika týdnech podařilo odpoutat od svých dlouholetých minim a posunulo se blíže úrovni 1200 USD za unci.
  • Zlato, stříbro, dolar a jejich cenový vývoj
    Ti, co se zajímají o dění na finančních trzích vědí, že cena zlata je negativně korelovaná s americkým dolarem, což znamená, že jestliže americký dolar roste, pak cena zlata klesá a naopak.
  • Zlato ustálilo svůj pohyb po referendu, technicky na tom však není dobře
    Zlato se pomalu dostává ze zmatku, který byl na grafu patrný po výsledcích švýcarského referenda o zlatých rezervách v rozvaze tamní centrální banky.
  • Zlato zažívá prudký vzestup
    Nadpis dnešního článku je zajisté matoucí. Jak by přece mohlo zlato kamkoliv stoupat, když se již téměř 4 roky nachází v medvědím trendu, během kterého ztratilo přes 40 % hodnoty!
  • ZLATÝ GRÁL nebo VELKÝ PODVOD ???
    Automatický obchodní systém - AOS. Co je svatý grál? Obchodní systém, který stále jen vydělává. Ale jaká je realita?
  • "Zlatý" švýcarský frank?
    Ponechám pro tentokrát stranou situaci v měnových párech, technickou či fundamentální analýzu.
  • Změna FX
    Minulý týden jsem se ocitl na palubě Emirates A380 a viděl jsem, jak se změnil letecký průmysl. Ekonomická třída už je passé. Tady si dáte snack u baru, osprchujete se vysoko nad zemí a díváte se na obří křídla, a máte pocit, že je to jenom sen. V tom vejcovitém těle obřího linku mezi Prahou a celým světem jsem si uvědomil, jak také můj život se změnil.
  • Změřte korelaci měnových párů jednoduše přímo v aplikaci Trading Station II
    Každého obchodníka, který se o forexový trh zajímá hlouběji, jistě už někdy napadla myšlenka, zda se některé měnové páry či komodity nepohybují podobně. Tyto podobné pohyby se nazývají korelace.
  • Znáte vašeho brokera?
    Často získáte větší přehled o dané profesi tím, že porozumíte její historii. V roce 1999 obchodování pro maloobchodní klienty nebo jednotlivce neexistovalo. Obchodování na měnových trzích se mohly účastnit pouze velké banky, hedgové fondy a jednotlivci s velkým jměním. A to z důvodu požadavků na minimální náklady na obchodování ve výši 1 milion amerických dolarů.
  • 9. MQL4 - Moje první strategie (1/2)
    V tomto díle si společně napíšeme vlastní strategii. Začneme nejprve vytvořením knihovny s pomocnými funkcemi pro obchodování.
  • 8 pips
    Dnes mi dorazila zpráva od mého dobrého přítele. Napsal mi v ní: "Tak dneska jsem vydělal jen 8 pips". Trh EUR/USD se dnes do této chvíle pohyboval v rozmezí High a Low asi 80 pips. Nabízí se zde otázka: Je 8 pips profitu za jeden den skutečně tak málo?
  • 8. MQL4 - Tester strategií
    V tomto díle se v rychlosti seznámíme s testerem strategií, který nám pak poslouží k testování a ladění naší strategie.
  • 7. MQL4 - Funkce pro obchodování
    V tomto díle si představíme poslední oblast jazyka MQL4 tak, abychom byli schopni napsat svoji vlastni strategii pro automatizované obchodování a tím jsou funkce pro práci s pokyny.
  • 6. MQL4 - Technické indikátory
    V tomto díle se podíváme funkce, které vracejí data jednotlivých indikátorů.
  • 5 nejsilnějších emocí tradera
    Psychologie obchodování je nedílnou součástí každého z nás. Trhy jsou jakýmsi živým organismem, u kterého se snažíme racionálním přístupem zanalyzovat jeho vývoj, což vytváří rozpor mezi očekáváním a konečným výsledkem.
  • 5. MQL4 - Předdefinované proměnné
    V této kapitole se trochu ponoříme do jazyka MQL4 a představíme si základní proměnné, pomocí kterých můžeme zjišťovat informace o cenách.
  • 5 koníčků, které vám mohou pomoci v tradingu
    V jednom z minulých článků jsme si řekli, že život není jen o vysedávání u obrazovek, a že byste si měli k tradingu najít hobby, u kterého si psychicky odpočinete. Již od útlého věku má většina z nás své vlastní koníčky. Také se nejspíš shodneme na tom, že každý by si měl své koníčky zvolit podle toho, co ho samotného baví a naplňuje.
  • 4. MQL4 - Můj první skript
    V této kapitole si zkusíme společně vytvořit první velice jednoduchý skript. Ukážeme si tak, jak se skript zakládá, seznámíme se s prvními funkcemi a nasadíme skript do platformy MetaTraderu.
  • 3. MQL4 - Ještě, než začneme kódovat
    Řízení motorového vozidal je vždy záživnější, než studování předpisů. Stejně tak je to v programování. Samotné kódování není tak nudné, jako čtení referenčních manuálů, ale bez základních znalostí se programovat ani nedá začít. V tomto díle se podíváme trochu do struktury jazyka MQL4.
  •  


    Diskuse ke článku

    Diskuse je přístupná pouze pro registrované uživatele.
    Přihlásit se | Nová registrace

avatar

Autor:

montek

Hodnocení autora:
Bližší informace o autorovi >>

Kategorie blogu

reklama

Kurzy obchodování

Lis
25

Praktický workshop technické analýzy + profi obchodní systémy na FOREXu

FXstreet.cz představuje unikátní seminář s hostem - Patrikem Urbanem, který působil jako profesionální trader na Wall Streetu. Praktické použití technické analýzy, Price Action a obchodní systémy ziskových traderů. Kromě Patrika Urbana na semináři jako host vystoupí také full-time trader Jakub Hodan.

Pro
2

Exkluzivní VIP seminář: Obchodujte jako bankovní trader!

Představujeme vám exkluzivní seminář, který účastníky semináře posouvá mezi tradingovou elitu. V průběhu semináře se dozvíte veřejně nedostupné informace o tom, jak ve skutečnosti funguje forex, pravdu o retailových brokerech a další veřejně nedostupné informace z obchodování bank a tradingu na institucionální úrovni.

Led
13

Juniorská škola tradingu - Forex I-II (Praha)

Juniorská škola tradingu - Forex I-II je určena pro začínající tradery. Pokud chcete vyzkoušet něco nového, vymanit se z davu a být úspěšný v obchodování na finančních trzích, tak je tento seminář určen právě vám.

Led
20

Jak vytvářet ziskové AOS a testovat obchodní strategie

Představujeme vám exkluzivní seminář se zástupci profesionálního vývojářského týmu, působícího ve společnosti FXstreet.cz. Hlavní náplní budou základy tvorby automatických obchodních systémů (AOS) pro platformu MetaTrader 4 včetně praktických ukázek. Naučíte se také správně backtestovat ziskovost AOS. Navíc si sami v průběhu semináře vytvoříte svůj první ziskový AOS.

úno
10

Profesionálem na forexu - kurz pro pokročilé tradery (Brno)

Seminář Profesionálem na forexu je určený pro absolventy kurzu Juniorská škola tradingu a pro pokročilé forexové tradery. Naučíme vás naše ziskové intradenní a swingové obchodní strategie a posuneme vás k vyšším ziskům. Jedná se o jeden z nejlépe hodnocených seminářů FXstreet.cz a věnujeme se na něm hlavně korelačním strategiím a intermarket analýze. Sleva: Absolventi semináře Juniorská škola tradingu mají tento seminář za 4 400,-Kč.


Literatura

titulka_smallsize.jpg

Novinka! Kniha "Jak se stát forexovým obchodníkem" Ondřeje Hartmana vychází ve druhém a výrazně rozšířeném vydání!

Kniha vychází již ve druhém, ale tentokrát výrazně upraveném a rozšířeném vydání. Kniha je koncipována tak, aby byla užitečným průvodcem jak začínajícím obchodníkům bez zkušeností, tak i těm, kdo na forexu již obchodují a potřebují si prohloubit své znalosti.

Day_Trading_obalka_78x110.jpg

Kniha "FOREX – Ziskové intradenní a swingové obchodní strategie" od Kathy Lien vychází v češtině!

Je nám velikou ctí, že můžeme obohatit český a slovenský forexový trh světově uznávanou knihou číslo 1 pro každého, kdo chce do hloubky pochopit fungování největšího světového finančního trhu.

zaciname na burze 03112013.jpg

Začínáme na burze - Jak uspět při obchodování na finančních trzích

Chcete dosáhnout úspěchu při obchodování na finančních trzích? Už jste to zkoušeli a stále se vám moc nedaří? Nevyznáte se v příliš odborných analýzách na finančních serverech? Všem začínajícím investorům přichází na pomoc nová kniha od zkušeného autora – Začínáme na burze.

Forex - doporučené články:

Co je FOREX?
Základní informace o finančním trhu FOREX. Forex je obchodování s cizími měnami (forex trading) a je zároveň největším a také nejlikvidnějším finančním trhem na světě.
Forex pro začátečníky
Forex je celosvětová burzovní síť, v jejímž rámci se obchoduje se všemi světovými měnami, včetně české koruny. Na forexu obchodují banky, fondy, pojišťovny, brokeři a podobné instituce, ale také jednotlivci, je otevřený všem.
1. část - Co to vlastně forex je?
FOREX = International Interbank FOReign EXchange. Mezinárodní devizový trh - jednoduše obchodování s cizími měnami - obchodování se směnnými kurzy.
VIP zóna - Forex Asistent
Nabízíme vám jedinečnou příležitost stát se součástí týmu elitních obchodníků FXstreet.cz. Ve spolupráci s předními úspěšnými obchodníky jsme pro vás připravili unikátní VIP skupinu, až doposud využívanou pouze několika profesionálními tradery, a k tomu i exkluzivní Price Action VIP indikátor, doposud úspěšně používaný pouze k soukromým účelům. Nyní se vám otevírá možnost stát se součástí této VIP skupiny, díky které získáte jedinečné know-how pro obchodování na forexu, výjimečný Price Action VIP indikátor, a tím také náskok před drtivou většinou ostatních účastníků trhu.
Forex brokeři - jak správně vybrat
V podstatě každého, kdo by chtěl obchodovat forex, čeká jednou rozhodování o tom, s jakým brokerem (přeloženo jako makléř/broker nebo zprostředkovatel) by chtěl mít co do činění a svěřil mu své finance určené k obchodování. Velmi rád bych vám přiblížil problematiku výběru brokera, rozdíl mezi jednotlivými typy brokerů a v neposlední řadě uvedu několik příkladů nejznámějších z nich.
Forex robot (AOS): Automatický obchodní systém
Snem některých obchodníků je obchodovat bez nutnosti jakéhokoliv zásahu do obchodu. Je to pouhá fikce nebo reálná záležitost? Kolik z nás věří, že "roboti" mohou profitabilně obchodovat? Na jakých principech fungují?
Forex volatilita
Forex volatilita, co je volatilita? Velmi užitečným nástrojem je ukazatel volatility na forexu. Grafy v této sekci ukazují volatilitu vybraného měnových párů v průběhu aktuální obchodní seance.
Forex zůstává největším trhem na světě
V dnešním článku se podíváme na nejnovější statistiky globálního obchodování na forexu. Banka pro mezinárodní vyrovnání plateb (BIS) totiž před pár týdny zveřejnila svůj pravidelný tříletý přehled, ve kterém detailně analyzuje vývoj na měnovém trhu. BIS je označována jako "centrální banka centrálních bank". Je nejstarší mezinárodní finanční organizací a hraje klíčovou roli při spolupráci centrálních bank a dalších institucí z finančního sektoru. Dnešní vzdělávací článek sice nebude zcela zaměřen na praktické informace z pohledu běžného tradera, ale i přesto přinese zajímavé a důležité poznatky.

Nejnovější články:


Naposledy čtené:


FXstreet.cz - forex, komodity, kryptoměny, trading, zpravodajství

Nezávislý investiční server zaměřený na forex, komodity, kryptoměny, trading a zpravodajství. Vzdělávací články, cenové grafy, cizí měny, semináře, ekonomické a forex zprávy.
reklama
Patria garance
reklama
Patria garance
reklama
DEGIRO banner
reklama
Purple - seminare