Userul nu putea vedea ce bucata din weekly e reprezentata de daily. In perechi_tf si directie, graficul mic nu mai e o serie care vine dupa cel mare, ci descompunerea lui reala: o candela mare = k candele mici, cu open, close, max(high) si min(low) care coincid, verificat bara cu bara prin assert. k per pereche: 5 zile/saptamana, 4 saptamani/luna, 7 bare de 60 min/zi. Corespondenta se vede: caseta de lupa peste exact candelele marite, ghidaje catre colturile cadrului mic, si nivelul-cheie desenat ca aceeasi linie pe ambele panouri, cu acelasi numar de ambele parti. Interdictia "eticheta unui panou nu poate numi pretul celuilalt" capata o exceptie explicita pentru nivelurile comune, cu assert propriu ca numarul apare identic pe ambele panouri. Pullback-ul si momentul intrarii sunt acum etichetate pe desen, nu doar in text. Toate cifrele recalculate din serii. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ThN7ixZrowca8aTGrK1MUJ
160 lines
9.4 KiB
Plaintext
160 lines
9.4 KiB
Plaintext
SPEC DIAGRAMĂ — buy_doji_perechi_tf
|
||
====================================
|
||
tip: PRET (trei rânduri, câte două grafice pe rând, legate prin lupă)
|
||
destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 2 („Alegi perechea…")
|
||
cheie markdown: <!-- DIAGRAMA: perechi_tf -->
|
||
generator: gen/strategii/buy_doji_perechi_tf.py
|
||
titlu SVG: „Aceeași regulă pe trei perechi — graficul mic e lupa pe ultimele
|
||
candele mari"
|
||
stil: STYLE.md §„Cum trebuie să arate un grafic de preț": candele lipite
|
||
(gap 15, body_w 9), fără volum, open = close-ul precedentului.
|
||
Un singur SVG, 3 rânduri stivuite vertical (lățime 720, mobil).
|
||
Scară proprie pe fiecare panou, dar UNA singură în interiorul lui.
|
||
|
||
CE S-A SCHIMBAT (20.09.2026) ȘI DE CE
|
||
-------------------------------------
|
||
Userul: „ar trebui să aibă corespondență la prețuri, ca să îmi dau seama care
|
||
bucată din graficul weekly este reprezentată de graficul daily — adică care
|
||
candelă weekly e reprezentată de candelele din graficul daily, cu aceleași
|
||
linii de preț."
|
||
|
||
Versiunea veche punea în dreapta o serie care VENEA DUPĂ graficul mare (o
|
||
săgeată „apoi cobori pe graficul mic"). Nu se vedea nicio corespondență.
|
||
Acum graficul mic e **descompunerea reală** a ultimelor candele mari:
|
||
caseta de lupă + două ghidaje + nivelul comun cu același număr pe ambele
|
||
panouri.
|
||
|
||
CE TREBUIE SĂ DEMONSTREZE
|
||
-------------------------
|
||
1. Regula e identică pe toate trei perechile: pe TF-ul mare, buy doji +
|
||
confirmare dau direcția (long permis); în interiorul ultimelor candele
|
||
mari, pe TF-ul mic, se vede pullback-ul de 8 candele până la high-ul
|
||
dojiului mare, doji-ul acolo, confirmarea = intrarea, stopul, ținta 1:1.
|
||
2. **Agregarea, vizibilă și adevărată**: fiecare candelă mare din casetă se
|
||
sparge în k candele mici. Graficul mic nu e „altă serie", e aceeași serie
|
||
privită mai de aproape.
|
||
3. Ce se schimbă când cobori: stopul pe TF mic e de ~4 ori mai mic decât cel
|
||
măsurat pe TF mare pentru același setup → de ~4 ori mai multe acțiuni la
|
||
același risc.
|
||
|
||
SERIILE — cum se construiesc
|
||
----------------------------
|
||
Sursa de adevăr e seria FINĂ (TF mic), 15 bare, rândul A, f = 1.0:
|
||
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 mic, low 105.10 la 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)
|
||
barele 0-7 = pullback-ul de 8 candele; 10.. = drumul spre țintă.
|
||
|
||
Barele TF-ului mare DINAINTEA lupei (BASE), 8 bare, rândul A:
|
||
0 (118.4,118.8,114.3,114.8) 1 (114.8,115.3,111.5,112.0)
|
||
2 (112.0,113.4,111.6,112.9) 3 (112.9,113.2,109.1,109.6)
|
||
4 (109.6,110.0,106.3,106.8) 5 (106.8,107.2,103.6,104.0)
|
||
6 (104.0,105.2,101.9,103.8) <- doji mare (high 105.20 = nivelul comun)
|
||
7 (103.8,107.4,103.5,107.0) <- confirmare mare (close 107.00 = open fine[0])
|
||
|
||
Candelele mari din casetă NU se scriu de mână: se CALCULEAZĂ prin agregare
|
||
pe k bare fine. Per rând:
|
||
rând TF mare → TF mic k candele mari mărite bare fine folosite
|
||
A weekly → daily 5 3 15 (0..14)
|
||
B monthly → weekly 4 3 12 (0..11)
|
||
C daily → 60 min 7 2 14 (0..13)
|
||
|
||
Rândurile B și C se obțin din A prin p' = round(100 + f*(p - 100), 2), cu
|
||
f = 2.5 (B) și f = 0.4 (C). Transformarea e afină, deci agregarea se
|
||
păstrează; gruparea (k) diferă însă per rând, deci barele mari se recalculează.
|
||
|
||
VALORI CARE REZULTĂ (verificate cu assert)
|
||
------------------------------------------
|
||
A: doji mare h 105.20 / l 101.90; confirmare mare close 107.00;
|
||
lupă 105.10-108.60; 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 %) → x4.22
|
||
B: doji mare h 113.00 / l 104.75; confirmare mare close 117.50;
|
||
lupă 112.75-118.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 %) → x4.19
|
||
C: doji mare h 102.08 / l 100.76; confirmare mare close 102.80;
|
||
lupă 102.04-103.20; 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 %) → x4.24
|
||
|
||
LEGĂTURA DINTRE PANOURI (miezul diagramei)
|
||
-------------------------------------------
|
||
1. **Caseta de lupă** (albastru) pe graficul mare, peste EXACT candelele
|
||
mărite, întinsă pe intervalul de preț [low zonă, high zonă].
|
||
2. **Două ghidaje** punctate albastre de la colțurile din dreapta ale casetei
|
||
la colțurile din stânga ale cadrului graficului mic — convenția clasică de
|
||
zoom. Ghidajele sunt exacte: cadrul mic acoperă exact intervalul de preț al
|
||
casetei (assert: max/min din barele mici == max/min din candelele mari
|
||
mărite). Între ghidaje, textul „lupă: ultimele N candele <TF mare>".
|
||
3. **Nivelul comun**: high-ul dojiului mare, desenat ca aceeași linie punctată
|
||
gri pe AMBELE panouri, cu ACELAȘI număr de ambele părți — stânga
|
||
„high doji weekly 105.20", dreapta „nivel weekly 105.20". Scările rămân
|
||
proprii fiecărui panou; nivelul comun face legătura.
|
||
Extremele zonei mărite sunt repere comune implicite: le arată ghidajele.
|
||
(Nu le etichetăm cu cifre: coloana din dreapta s-ar aglomera.)
|
||
|
||
ETICHETE
|
||
--------
|
||
Titlu rând: A „weekly → daily" B „monthly → weekly" C „daily → 60 min"
|
||
Subtitluri: stânga „<TF mare>: direcția";
|
||
dreapta „<TF mic>: descompunerea ultimelor N candele <TF mare>".
|
||
Pe graficul mare: zonă verde peste doji + confirmare, etichetată dedesubt
|
||
„doji + confirmare: aici se decide direcția"; nivelul comun la stânga.
|
||
Pe graficul mic: zonă verde peste doji-ul mic + confirmare, cu o linie de
|
||
legătură spre eticheta „doji la nivel, apoi confirmare: aici intri";
|
||
paranteză sub cadru peste primele 8 bare: „pullback: 8 candele în jos, fără
|
||
minim nou"; coloana din dreapta: „ținta 1:1 <preț>", „intrare <preț>",
|
||
„nivel <TF mare> <preț>", „stop <preț>" (pe rândul A și „sub ultimele 4 bare").
|
||
Doar pe rândul A: paranteză de stop pe TF-ul mare („stop 4,77 %") și pe cel
|
||
mic („stop 1,13 %"), cu o săgeată roșie între ele: „același setup, stop de
|
||
4,2 ori mai mic → de 4,2 ori mai multe acțiuni la același risc". Raportul
|
||
se calculează, nu se scrie.
|
||
Restul cifrelor (praguri, „8 candele" pe fiecare pereche, cât ții) stau în
|
||
tabelul din capitol, nu în SVG: diagrama nu repetă tabelul.
|
||
|
||
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, inclusiv peste joncțiunea BASE→lupă).
|
||
2. AGREGAREA, per candelă mare mărită j: open == open-ul primei mici,
|
||
close == close-ul ultimei mici, high == max(high mici), low == min(low mici).
|
||
3. len(fine) == k * nz; open fine[0] == close-ul confirmării mari.
|
||
4. Doji mare (BASE 6) și doji mic (fine 8): abs(o-c) <= 0.10*(h-l).
|
||
5. Confirmări: close BASE[7] > high BASE[6]; close fine[9] > high fine[8].
|
||
6. SL == min(l for fine 6..9) == low fine[8] == minimul întregii zone mărite.
|
||
7. risc == intrare - SL; TP1 == intrare + risc; primul i>9 cu high >= TP1 e 11.
|
||
8. Pullback: fine[0].close > fine[7].close (coboară) ȘI min(low 0..7) >
|
||
low-ul dojiului mare (deci „fără minim nou").
|
||
9. Extremele zonei mărite == extremele candelelor mari mărite.
|
||
10. abs(low fine[8] - high doji mare) / high doji mare <= 0.005.
|
||
11. Raportul pixeli SL-intrare / intrare-TP1 == 1 pe fiecare grafic mic.
|
||
12. 4 <= stop% pe TF mare / stop% pe TF mic < 4.5.
|
||
13. Valorile din „VALORI CARE REZULTĂ", egale la 2 zecimale.
|
||
14. PANOURI. Nicio etichetă din dreapta (x >= FRAME_L-20) nu conține un preț
|
||
al TF-ului mare, nicio etichetă din stânga nu conține unul al TF-ului mic.
|
||
**Excepție explicită: NIVELURILE COMUNE** (setul COMUNE din generator,
|
||
acum {dh} = high-ul dojiului mare). Ele sunt scoase din ambele seturi de
|
||
interdicție ȘI au un assert propriu: numărul trebuie să apară pe AMBELE
|
||
panouri, formatat identic (2 zecimale). O scutire fără assert ar permite
|
||
ca nivelul să dispară de pe un panou sau să apară cu alt număr.
|
||
15. Fiecare text încape în viewBox și nicio pereche de texte nu se suprapune
|
||
(aceeași regulă ca audit_diagrams.py: |Δy| < 13 și suprapunere pe x).
|
||
|
||
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.
|