Sari la conținut

Indicator Market Hours + Open/Close levels


Postări Recomandate

  • Moderators

Urmand sugestia lui Scrat din topicul Sugestii pentru dezvoltare de indicatori am scris acest indicator care deseneaza nivelele de deschidere/inchidere ale principalelor sesiuni de tranzactionare: NY, Tokio, Londra.

 

Indicatorul deseneaza linii verticale pentru fiecare deschidere sau inchidere a unei sesiuni majore plus linii orizontale pentru fiecare nivel de pret tranzactionat la deschidere/inchidere. Liniile orizontale merg din open in open si din close in close. De ex: Deschide Londra, punem linie orizontala pana la urmatoarea deschidere londoneza, iar de acolo trasam alta linie orizontala pentru noul nivel de open al sesiunii. La fel si pentru inchiderile sesiunilor.

 

Indicatorul foloseste urmatoarele variabile externe:

 

extern int GMT = 0;
Reprezinta fusul orar regasit pe platforma de tranzactionare. By default este setat la 0 (GMT 0, fusul orar al Londrei) astfel deschiderile majore avand loc la ora 08:00, 13:00 si 00:00 (Londra, NY, Tokio) Va trebuie sa modificati aceasta variabila in functie de ora pe care o folositi in platforma.(Modificati 0 in 2 pentru GMT+2 sau modificati 0 in -2 pentru GMT-2) Nu sunt sigur insa ca va arata asa cum va doriti chiar daca veti seta fusul orar corect intrucat se pare ca GMT-1 de exemplu poate reprezenta atat ora 07:00 cat si ora 08:00 sau 09:00. Am descoperit asta verificandu-mi orele pe ForexMarketHours Recomand sa va jucati cu fusul orar pana cand acesta se aliniaza cu orele dorite.

 

extern string b="--------London-------";
extern bool  ShowLondon = true;
extern bool  ShowLondonOpen = true;
extern bool  ShowLondonClose = true;
extern int   LondonWidth = 1;
extern color LondonColor = White;

extern string b2="--------New York-------";
extern bool  ShowNY = true;
extern bool  ShowNYOpen = true;
extern bool  ShowNYClose = true;
extern int   NYWidth = 1;
extern color NYColor = Red;

extern string b3="--------Tokio-------";
extern bool  ShowTK = true;
extern bool  ShowTKOpen = true;
extern bool  ShowTKClose = true;
extern int   TKWidth = 1;
extern color TKColor = Green;
Acestea reprezinta setarile folosite pentru fiecare sesiune. Aveti de ales daca doriti sa vi se afiseze atat nivelele de close cat si cele de open sau daca doriti sa vedeti numai unul dintre acestea. De asemenea variabila Width reprezinta grosimea liniilor orizontale specifice fiecarei sesiuni majore. Poate lua valori de la 1 la 5. Puteti de asemenea sa va alegeti care dintre sesiuni doriti sa o vedeti. Le puteti vedea pe toate trei in acelasi timp, sau doar una sau doua dintre ele.

 

Intrucat ora de inchidere a sesiunii Tokio coincide cu cea de deschidere a Londrei, am ales sa mut linia verticala specifica inchiderii Tokio o bara mai la dreapta, pentru a nu suprapune doua linii diferite. Astfel se pastreaza aspectul general al indicatorului. Insa daca nu selectati sesiunea londoneza si alegeti sa vizualizati doar Tokio si/sau NY, linia verticala ce marcheaza inchiderea sesiunii Tokio va aparea acolo unde ii este locul defapt. Liniile orizontale nu sunt afectate in nici un fel acestea luand valorile corecte, specifice inchiderii sau deschiderii sesiunilor.

 

Ca si vizualizare recomand tf-urile de la H1 in jos. Peste H1 aspectul este deja un pic alterat, iar pe tf-uri ca Weekely sau Daily deja nivele de deschidere/inchidere nu prea mai au nici o relevanta.

 

Ca de obicei nu petrec prea mult timp cautand eventuale erori ce ar putea aparea in cursul rularii indicatorului ci asptept ca acestea sa ma loveasca in timp real :|. Daca descoperiti erori, sau daca aveti eventuale sugestii legate de modul de afisare al acestor nivele postati aici si am sa incerc sa le rezlov.

 

LATER EDIT:

 

Am rezolvat in sfarsit toate probelmele aparute. Am atasat varianta finala a indicatorului, varianta care functionaza corect pe toate tf-urile de la H1 in jos, urmareste orarul corect postat de Scrat ceva mai sus si care totodata se updateaza la fiecare bara.

 

Am trecut totusi pe manual calcularea deschiderilor si inchiderilor sesiunilor in ideea ca acestea au devenit acum variabile externe. Am ales optiunea aceasta pentru ca am intampinat ceva probelme in calculele ce foloseau variabilia GMT. Astfel va trebui sa va puneti singuri orele de deschidere/inchidere. Puteti de asemenea sa intrati in cod si sa modificati de acolo cifrele pentru a va ramane salvate ca default de fiecare data cand folositi indicatorul. Am pus cateva comentarii care or sa va ajute sa modificati ceea ce trebuie.

 

Atentie! Pentru ora de inchidere introduceti ultima ora tranzactionata si nu ora exacta la care se inchide piata. Astfel daca sesiunea se inchide la ora 17:00 introduceti ora 16 in indicator.

 

Am scos prima varianta si am uploadatat cea mai recenta varianta, MarketHours3

 

LATER EDIT 2:

 

Pentru cele mai recente variante ale indicatorului, vedeti posturile de mai jos. In momentul postarii acestui edit, cea mai recenta varianta era MaketHours4.

MarketHours3.mq4

Editat de Criodi
Link spre comentariu
Distribuie pe alte site-uri

multumesc pentru realizare! arata foarte bine, exact asa ceva aveam in minte cind am propus ideea.

o singura observatie - vineri ma uitam pe forexfactory la sesiunile active si am constatat ca tokyo se termina cu o ora mai tirziu decit l-ai programat. inchiderea este la ora 12pm ro (10gmt + 2), ei nu au schimbarea orei... tradelover a zis asta de fapt, da' cine sta sa-l asculte...

 

p.s. inca o observatie: tokyo si ny dureaza 9 ore. ceva nu e in regula cu liniile verticale, ma uit acum si verific care-s diferentele fata de orele oficiale.

Editat de Scrat
Link spre comentariu
Distribuie pe alte site-uri

foarte simplu: astepti sa se deschida sesiunea, urmaresti nivelul orizontal la care se deschide, si pe urma vezi in ce directie merge pretul fata de acest nivel.

 

de obicei exista o serie de teste, o sa existe miscari relativ mici de-o parte si de alta, dupa care se produce "spargerea": pretul se duce in trend, sau se duce inapoi spre inchiderea sesiunii precedente, care este un alt nivel important.

 

e mai greu de explicat fara grafice, acum n-am timp si aici nu e locul de analize, dar o sa deschid un nou topic si discutam pe larg acolo. intre timp, aplica indicatorul pe grafic, tine-l pe 5/15min, si urmareste miscarea pretului in jurul liniilor orizontale.

 

Scrat : cum profitam de indicatorul asta ?

 

Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Legat de problemele cu +/- una sau doua ore la inchidere/deschidere, ele se datoreaza faptului ca GMT si ora Londrei NU SUNT egale. Anglia are DST pe perioada de vara. DST este in fucntie de paralela (latitudinea geografica) pe care se afla o tzara, cele aproape de ecuator nu au diferente intre vara si iarna, iar aceste diferente cresc cu cat te apropii mai mult de poli. Unele tari mai aproape de poli, schimba ora de 4 ori pe an (adica au 0, +1, +2, +1, apoi iar 0), asa cum o schimbam noi in Ro de 2 ori. Asta este la latitudinea guvernelor respective, si de aceea exista si exceptii, una dintre exceptiile notabile fiind Japonia, care nu sunt de acord cu DST, deci nu muta ceasul.

 

Avem un tamajor in armata care zicea "bai soldat, daca esti prost si uiti, ia un carnetel si scrie. Uite, eu am doua carnetzele", hihi. Daca aveti probleme cu calculul mental al acestor ore, atunci va puteti seta pe timeanddate.com un "ceas personal". Si eu mi-am setat unul, acum vreo 12 ani cand eram in China, si de cand m-am apucat de forex, am inceput sa il refolosesc :|. Inscrierea e gratuita si nu vi se trimit mailuri cu advertize, eu nu am primit nici un mail in mai mult de 10 ani.

 

post-1272-127346364532_thumb.jpg

 

Tot pe timeanddate gasiti si tot felul de unelte care calculeaza tipul intre fuse orare, distante, etc. Se pot face scripturi care sa va zica efectiv cand se deschide o bursa (o sa caut asta si o sa revin daca am timp, stiu ca am gasit mai demult, dar nu mai stiu cum). In plus, va da ora exacta :| daca dati refresh de 2-3 ori, si aveti internet bunicel, atunci ora care o vedeti acolo o puteti folosi sa va setati ora in computer cand nu merge serverul de time automat (de la windows sau nist, uneori nu updateaza timpul corect, ori da eroare, atunci eu folosesc timeanddate).

 

[later edit: atentie la asteriscurile din poza, de fapt de asta am pus poza, dar am uitat sa scriu, ideea era sa editez poza si sa pun chenare rosii, dar m-am grabit. Daca priviti cu atentie, unele locatii au un asterisc, ori cate odata doua asteriscuri, asta indicand faptul ca locatia respectiva are DST, fiecare asterisc reprezinta o ora. Eu am pus in tabel doar locatiile importante, deci nu exista nici una cu 2 ore DST. Avantajul folosirii acestui site in locul unui programel este acela ca timpii sunt in "timp real". Asta e important, deoarece nu toate tarile trec la DST in acelsi timp, a se vedea pe site: exista un tabel destul de mare cu datele cand se trece la DST, in plus, anumite evenimente calendaristice, economice, sociale, etc pot schimba aceste date, de exemplu cutare tara trece la DST in ultima duminica a lunii aprilie, desigur ca in ani diferiti, aceasta cade la date diferite]

 

[2nd edit: unul dintre linkurile pe care le cautam, sorry for the delay]

Editat de tradelover
Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Noua varianta a indicatorului este identica cu prima in afara faptului ca aceasta se updateaza singura pentru fiecare bara nou aparuta. Am modificat de asemenea si orele sesiunii tokio intrucat, comform forexfactory.com, dupa orarul GMT, aceasta deschide la ora 1, si nu 00:00.

 

Ca si tf-uri momentam indicatorul functioneaza corect doar pe graficul de 1 ora.

 

Problema este in felul urmator: daca o sesiune se inchide la ora 17:00, pe grafic am nevoie practic de inchiderea barei care a inceput la ora 16. Astfel pe tf-ul de o ora e ok sa folosesc close-ul barei de la ora 16, pentru ca primesc practic valoarea de la ora 17:00, inchiderea sesiunii, insa pe tf-ul de 15 min nu primesc decat valoarea de close a barei de 16:15. Pe cel de 30, valoarea de close de la 16:30 si tot asa... Nu stiu cati dintre utilizatorii "normali" inteleg ceea ce vreau sa zic. Ma adresez mai mult celor care se pricep la programare. Cum sa fac sa primesc valoarea de close de la ora 17 in exemplul de mai sus ? Ideea e ca eu folosesc functia TimeHour(Time) pentru a identifica daca ora curenta este ora 16. Iau apoi valoarea close a barei si trasez linia orizontala specifca inchiderii. Asa cum am spus treaba asta functioneaza ok pe tf-ul de o ora, insa pe cele mai mici nu... Sugestii ?

 

LaterEdit: Am modificat orarul in indicator dupa cum a fost acesta postat de Scrat mai jos.

 

LaterEdit2: Am rezolvat in sfarsit toate probelmele aparute. Am atasat varianta finala a indicatorului, varianta care functionaza corect pe toate tf-urile de la H1 in jos, urmareste orarul corect postat de Scrat ceva mai sus si care totodata se updateaza la fiecare bara.

Editat de Criodi
Link spre comentariu
Distribuie pe alte site-uri

multam tradelover, spre rusinea mea n-am reusit sa-mi mobilizez creierul nici acum ca sa pricep cum sa fac cu echivalarea orelor oficiale de incepere desi recunosc ca e cel mai complet post despre dst... da de-acuma asta tine de neuronii si carnetelele mele...

 

//Later1

am revenit pentru orele sesiunilor, ia sa copii dupa notitele din carnetel:

 

- tokyo: open = 3 am-ro / 0 am-gmt; close = 12 pm-ro / 9 am-gmt

- londra: open = 10 am-ro/ 7 am-gmt; close = 19 ro / 16-gmt

- ny: open = 15 ro / 12-gmt; close = 0 ro / 21-gmt

 

//Later2

inteleg perfect ce spui, pentru ca folosesc mereu nivelele close corelate pe mai multe tf-uri. insa nu stiu cum sa te ajut... poate in loc sa folosesti close-ul barei curente, sa te raportezi la open-ul barei urmatoare si sa faci ceva de genul "valoarea close a barei precedente"?

 

...

 

Ca si tf-uri momentam indicatorul functioneaza corect doar pe graficul de 1 ora.

 

Problema este in felul urmator: daca o sesiune se inchide la ora 17:00, pe grafic am nevoie practic de inchiderea barei care a inceput la ora 16. Astfel pe tf-ul de o ora e ok sa folosesc close-ul barei de la ora 16, pentru ca primesc practic valoarea de la ora 17:00, inchiderea sesiunii, insa pe tf-ul de 15 min nu primesc decat valoarea de close a barei de 16:15. Pe cel de 30, valoarea de close de la 16:30 si tot asa... Nu stiu cati dintre utilizatorii "normali" inteleg ceea ce vreau sa zic. Ma adresez mai mult celor care se pricep la programare. Cum sa fac sa primesc valoarea de close de la ora 17 in exemplul de mai sus ? Ideea e ca eu folosesc functia TimeHour(Time) pentru a identifica daca ora curenta este ora 16. Iau apoi valoarea close a barei si trasez linia orizontala specifca inchiderii. Asa cum am spus treaba asta functioneaza ok pe tf-ul de o ora, insa pe cele mai mici nu... Sugestii ?

 

LaterEdit: Am modificat orarul in indicator dupa cum a fost acesta postat de Scrat mai jos.

 

Editat de Scrat
Reunit cele 3 posturi.
Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Am rezolvat in sfarsit toate probelmele aparute. Iata asadar varianta finala a indicatorului, varianta care functionaza corect pe toate tf-urile de la H1 in jos, urmareste orarul corect postat de Scrat ceva mai sus si care totodata se updateaza la fiecare bara.

 

Am trecut totusi pe manual calcularea deschiderilor si inchiderilor sesiunilor in ideea ca acestea au devenit acum variabile externe. Am ales optiunea aceasta pentru ca am intampinat ceva probelme in calculele ce foloseau variabilia GMT. Astfel va trebui sa va puneti singuri orele de deschidere/inchidere. Puteti de asemenea sa intrati in cod si sa modificati de acolo cifrele pentru a va ramane salvate ca default de fiecare data cand folositi indicatorul. Am pus cateva comentarii care or sa va ajute sa modificati ceea ce trebuie.

 

Atentie! Pentru ora de inchidere introduceti ultima ora tranzactionata si nu ora exacta la care se inchide piata. Astfel daca sesiunea se inchide la ora 17:00 introduceti ora 16 in indicator.

 

Nu cred sa mai fie alte probeleme de rezolvat. Daca folositi cumva admiral markets si nu va merge ceva pe platforma (ca de ex: vizualizarea nivelelor de close pt sesiunea NY), imi pare rau pentru voi. Schimbati platforma. Imi ajunge cati nervi mi-am facut cu admiralu din cauza asta. Noroc ca eu sunt mai arogant asa din fire si mi-am spus ca pur si simplu nu are cum sa fie de la mine :| Se pare ca am avut dreptate intrucat pe alte platforme indicatorul functioneaza ok.

MarketHours3.mq4

Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Urmarind imaginile postate in topicul Trend-urile sesiunilor majore, care urmareste aceste nivele afisate de indicator, am observat acolo grafice mult mai aerisite pe care nu se vad decat nivelele de open si close ale celor mai recente sesiuni. Astfel am modificat un pic vechiul indicator MarketHours3 si am introdus o serie de optiuni noi.

 

Noul indicator va da urmatoarele noi posibilitati:

 

-de alege cate sesiuni doriti sa va afiseze acesta. Am intodus variabilele:

 

LondonSessionsNumber=1;

NYsessionsNumber=1;

TKsessionsNumber=1;

 

Astfel, by default, indicatorul va afisa doar nivelele de open/close ale ultimei sesiuni. In functie de cate sesiuni doriti sa vedeti puteti schimba aceasta variabila in 2,3,10,100 etc

 

-de a alege daca doriti sa fie afisate liniile verticale specifice orelor de deschidere/inchidere. Am introdus variabilele:

 

ShowLondonVerticalLines=true;

ShowNYverticalLines=true;

ShowTKverticalLines=true;

 

Daca nu doriti ca acele linii verticale sa fie desenate nu trebuie decat sa schimbati valoarea variabilelor de mai sus in "false".

MarketHours4.mq4

Link spre comentariu
Distribuie pe alte site-uri

noua varianta este super, ti-am dat deja un vot pentru executie si dac-as putea ti-as mai da cite un vot de fiecare data cind inchid un trade pe plus folosind indicatorul tau.

 

multumesc foarte mult! am sa-l pun pe graficele exemple din topicul despre sesiuni... :|

Link spre comentariu
Distribuie pe alte site-uri

Alătură-te conversației

Poți posta acum și să te înregistrezi mai târziu. Dacă ai un cont, autentifică-te acum pentru a posta cu contul tău.

Vizitator
Răspunde la acest subiect...

×   Alipit ca text avansat.   Alipește ca text simplu

  Doar 75 emoji sunt permise.

×   Linkul tău a fost încorporat automat.   Afișează ca link în schimb

×   Conținutul tău precedent a fost resetat.   Curăță editor

×   Nu poți lipi imagini direct. Încarcă sau inserează imagini din URL.

  • Navigare recentă   0 membri

    • Nici un utilizator înregistrat nu vede această pagină.
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.