SPEC DIAGRAMĂ — buy_doji_perechi_tf ==================================== tip: PRET (trei rânduri, câte două grafice pe rând) destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 2 („Alegi perechea…") cheie markdown: generator: gen/strategii/buy_doji_perechi_tf.py (de scris de agentul de diagrame) titlu SVG: „Aceeași regulă pe trei perechi — exemplu construit (fără ticker)" stil: STYLE.md §„Cum trebuie să arate un grafic de preț": candele lipite (gap 15-18, body_w 9-10), fără volum, open = close-ul precedentului. Un singur SVG, 3 rânduri stivuite vertical (lățime 720, mobil). Pe fiecare rând: stânga = TF mare (11 candele), dreapta = TF mic (15 candele). Scară proprie pe fiecare grafic, dar UNA singură pe tot graficul (px/unitate constant în interiorul lui). CE TREBUIE SĂ DEMONSTREZE ------------------------- 1. Regula e identică pe toate trei perechile: TF mare dă buy doji confirmat (direcția: long permis), TF mic face pullback de 8 candele până la high-ul dojiului mare, face un doji acolo, confirmă, intri. 2. Ce se schimbă când cobori: stopul pe TF mic e de 4-5 ori mai mic decât stopul pe TF mare pentru același setup; „8 candele" înseamnă alt timp. 3. Săgeată/paranteză „zoom" de la ultima candelă a graficului mare spre graficul mic: graficul mic începe după confirmarea de pe TF mare. SERIA — rândul A (weekly → daily), f = 1.0 ------------------------------------------ TF mare (weekly), (open, high, low, close), index 0-10: 0 (122.0,122.6,119.4,120.0) 1 (120.0,120.5,117.0,117.5) 2 (117.5,119.0,117.1,118.4) 3 (118.4,118.8,114.3,114.8) 4 (114.8,115.3,111.5,112.0) 5 (112.0,113.4,111.6,112.9) 6 (112.9,113.2,109.1,109.6) 7 (109.6,110.0,106.3,106.8) 8 (106.8,107.2,103.6,104.0) 9 (104.0,105.2,101.9,103.8) <- doji weekly 10 (103.8,107.4,103.5,107.0) <- confirmare (close 107.0 > high doji 105.2) TF mic (daily), index 0-14 (open[0] = 107.0 = close-ul barei mari 10): 0 (107.0,107.2,106.4,106.6) 1 (106.6,106.8,106.0,106.1) 2 (106.1,106.6,105.95,106.4) 3 (106.4,106.5,105.8,105.9) 4 (105.9,106.0,105.5,105.6) 5 (105.6,105.95,105.5,105.8) 6 (105.8,105.9,105.4,105.5) 7 (105.5,105.6,105.25,105.35) 8 (105.35,105.75,105.10,105.40) <- doji daily, low-ul atinge nivelul 105.20 9 (105.40,106.40,105.30,106.30) <- confirmare => intrare 106.30 10 (106.3,107.0,106.2,106.9) 11 (106.9,107.5,106.7,107.4) 12 (107.4,107.55,107.0,107.2) 13 (107.2,108.0,107.1,107.9) 14 (107.9,108.6,107.8,108.5) SERIA — rândul B (monthly → weekly) și rândul C (daily → 60 min) ---------------------------------------------------------------- Aceeași formă, scalată: p' = round(100 + f*(p - 100), 2), cu f = 2.5 (B) și f = 0.4 (C), aplicat pe fiecare o/h/l/c din rândul A. Generatorul calculează seriile, NU le copiază de mână. Valorile care rezultă (de verificat cu assert): B: doji mare h 113.00 / l 104.75; confirmare mare close 117.50; doji mic l 112.75; intrare 115.75; SL 112.75; risc 3.00 (2.59 %); TP1 118.75 doar pe TF mare: intrare 117.50, SL 104.75, risc 12.75 (10.85 %) C: doji mare h 102.08 / l 100.76; confirmare mare close 102.80; doji mic l 102.04; intrare 102.52; SL 102.04; risc 0.48 (0.47 %); TP1 103.00 doar pe TF mare: intrare 102.80, SL 100.76, risc 2.04 (1.98 %) A (pentru comparație): intrare 106.30; SL 105.10; risc 1.20 (1.13 %); TP1 107.50 doar pe TF mare: intrare 107.00, SL 101.90, risc 5.10 (4.77 %) NIVELURI (pe fiecare rând) -------------------------- Pe graficul mare: linie punctată gri la high-ul dojiului mare („high doji weekly 105.20" / „high doji monthly 113.00" / „high doji daily 102.08"). Pe graficul mic: aceeași linie (nivelul la care se oprește pullback-ul); intrare verde; SL roșu; TP1 verde punctat. ETICHETE -------- Titlu rând: A „weekly → daily" B „monthly → weekly" C „daily → 60 min" Pe graficul mare: Mark(9, "doji"), Mark(10, "confirmare: long permis"). Pe graficul mic: Mark(8, "doji la nivel"), Mark(9, "intrare"), Level SL „SL = low 4 candele", Level TP „TP1 1:1". Sub fiecare rând, un text de o linie: A: „stop 1.13 % (pe weekly ar fi 4.77 %) · 8 candele = 8 zile de bursă" B: „stop 2.59 % (pe monthly ar fi 10.85 %) · 8 candele = 8 săptămâni" C: „stop 0.47 % (pe daily ar fi 1.98 %) · 8 candele ≈ 1,2 zile de bursă (7 bare/zi)" Legendă jos: „Cifre construite, aceeași formă scalată pe trei perechi. Procentele reale depind de simbol (LABU daily: stop 9 %)." ASSERT-URI OBLIGATORII ÎN GENERATOR ----------------------------------- Pe fiecare rând (A, B, C), pe seriile calculate: 1. Fiecare bară: h >= max(o,c) și l <= min(o,c); open[i] == close[i-1] (pe fiecare grafic separat). 2. open-ul primei bare mici == close-ul barei mari 10. 3. Doji mare (9) și doji mic (8): abs(o-c) <= 0.10*(h-l). 4. close mare[10] > high mare[9]; close mic[9] > high mic[8]. 5. SL == min(l for bare mici 6..9) == low mic[8] (extrema ultimelor 4). 6. risc == intrare - SL; TP1 == intrare + risc; primul i>9 cu high >= TP1 este 11. 7. Valorile din lista „valori care rezultă" de mai sus, egale la 2 zecimale, inclusiv procentele din textul de sub rând. 8. abs(low mic[8] - high mare[9]) / high mare[9] <= 0.005 (doji mic la nivel, sub pragul cel mai strict, 0,5 %). 9. Raportul pixeli SL-intrare / intrare-TP1 == 1 pe fiecare grafic mic. SURSA ----- - Rolurile TF: weekly/monthly = direcția; daily = trigger de swing; 60 min doar în direcția swing-ului de pe daily: summaries/08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md:32-40. - Pullback-ul la high-ul dojiului ca retest ideal (MICI weekly): triaj/DECIZII.md:118 (citat în summaries/17_STRATEGII/A3_intrarea.md:245-246). - Stopul se numără pe TF-ul deciziei: summaries/09_QA/20_2025-08-25.md:9-15. - Perechile swing/position (60×daily, daily×weekly, weekly×monthly): summaries/03_MODUL_2/14_strategia_1_m2d.md:461-466 (M2D, corelație). - Seria e CONSTRUITĂ. Succesiunea „buy doji pe TF mare → buy doji pe TF mic la pullback" e completarea capitolului, nu o procedură rostită în curs.