From 9c1936e73a56614ee58366e0b16c1b209d62a7d0 Mon Sep 17 00:00:00 2001 From: Claude Agent Date: Sat, 19 Sep 2026 18:27:13 +0000 Subject: [PATCH] buy_doji: capitolul rescris ca tutorial in 9 pasi, cu 9 diagrame noi MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mostra de format ceruta de user pe 19.09.2026 — de aprobat inainte sa aplicam formatul la celelalte 8 capitole. Specificatia e in STYLE.md, sectiunea FORMAT TUTORIAL. Structura: pasii 1-9 in ordinea in care faci lucrurile la ecran, fiecare terminat cu "Treci mai departe doar daca...". Cele trei perechi de TF (weekly-daily, monthly-weekly, daily-60min) una langa alta in pasul 2; perechea monthly-weekly e acoperita doar partial de material si scrie asta. Nivelurile 0/1/2 desfiintate ca structura. Niciun tabel de 2 coloane. Sursele mutate la final. 14 diagrame, de la 5: cele 5 vechi raman neatinse, 9 noi. Un agent per diagrama, fiecare cu audit + PNG privit. Toate 9 ies curate. 10 reguli din material care lipseau din versiunea veche, fiecare cu citat si fisier:linie — printre ele stopul se numara pe TF-ul deciziei (20_2025-08-25:9-15) si nu muti ordinul dupa pret (03_locul_crimei:296-311). Contradictie noua, a 7-a: pe weekly regula de pivoti spune Quarterly, dar MICI citeste pivotul monthly. Completarile proprii stau in blocuri "Completare proprie:", conform deciziei userului de azi. Cunoscut, nereparat: audit_diagrams da 9 fals-pozitive pe buy_doji_aplus si buy_doji_fereastra, care folosesc (auditul nu-l intelege). A zecea, in buy_doji_sell (titlu peste eticheta "doji 99.20 / 100.10"), e reala si preexistenta. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01ThN7ixZrowca8aTGrK1MUJ --- gen/strategii/buy_doji_directie.py | 182 ++ gen/strategii/buy_doji_directie.spec.txt | 62 + gen/strategii/buy_doji_directie.svg | 85 + gen/strategii/buy_doji_doji_forma.py | 105 + gen/strategii/buy_doji_doji_forma.spec.txt | 38 + gen/strategii/buy_doji_doji_forma.svg | 34 + gen/strategii/buy_doji_iesire.py | 222 ++ gen/strategii/buy_doji_iesire.spec.txt | 57 + gen/strategii/buy_doji_iesire.svg | 114 + gen/strategii/buy_doji_locatie.py | 114 + gen/strategii/buy_doji_locatie.spec.txt | 46 + gen/strategii/buy_doji_locatie.svg | 67 + gen/strategii/buy_doji_perechi_tf.py | 214 ++ gen/strategii/buy_doji_perechi_tf.spec.txt | 103 + gen/strategii/buy_doji_perechi_tf.svg | 236 ++ gen/strategii/buy_doji_scaner.py | 138 ++ gen/strategii/buy_doji_scaner.spec.txt | 47 + gen/strategii/buy_doji_scaner.svg | 57 + gen/strategii/buy_doji_stop.py | 130 ++ gen/strategii/buy_doji_stop.spec.txt | 55 + gen/strategii/buy_doji_stop.svg | 104 + gen/strategii/buy_doji_transe.py | 132 ++ gen/strategii/buy_doji_transe.spec.txt | 69 + gen/strategii/buy_doji_transe.svg | 75 + gen/strategii/buy_doji_trend.py | 117 + gen/strategii/buy_doji_trend.spec.txt | 52 + gen/strategii/buy_doji_trend.svg | 81 + summaries/17_STRATEGII/01_buy_doji.html | 2390 +++++++++++++++----- summaries/17_STRATEGII/01_buy_doji.md | 2174 ++++++++++++++---- summaries/17_STRATEGII/04_selectia.html | 127 +- summaries/17_STRATEGII/A1_risc.html | 4 +- summaries/17_STRATEGII/fise/selectia.html | 55 +- 32 files changed, 6343 insertions(+), 1143 deletions(-) create mode 100644 gen/strategii/buy_doji_directie.py create mode 100644 gen/strategii/buy_doji_directie.spec.txt create mode 100644 gen/strategii/buy_doji_directie.svg create mode 100644 gen/strategii/buy_doji_doji_forma.py create mode 100644 gen/strategii/buy_doji_doji_forma.spec.txt create mode 100644 gen/strategii/buy_doji_doji_forma.svg create mode 100644 gen/strategii/buy_doji_iesire.py create mode 100644 gen/strategii/buy_doji_iesire.spec.txt create mode 100644 gen/strategii/buy_doji_iesire.svg create mode 100644 gen/strategii/buy_doji_locatie.py create mode 100644 gen/strategii/buy_doji_locatie.spec.txt create mode 100644 gen/strategii/buy_doji_locatie.svg create mode 100644 gen/strategii/buy_doji_perechi_tf.py create mode 100644 gen/strategii/buy_doji_perechi_tf.spec.txt create mode 100644 gen/strategii/buy_doji_perechi_tf.svg create mode 100644 gen/strategii/buy_doji_scaner.py create mode 100644 gen/strategii/buy_doji_scaner.spec.txt create mode 100644 gen/strategii/buy_doji_scaner.svg create mode 100644 gen/strategii/buy_doji_stop.py create mode 100644 gen/strategii/buy_doji_stop.spec.txt create mode 100644 gen/strategii/buy_doji_stop.svg create mode 100644 gen/strategii/buy_doji_transe.py create mode 100644 gen/strategii/buy_doji_transe.spec.txt create mode 100644 gen/strategii/buy_doji_transe.svg create mode 100644 gen/strategii/buy_doji_trend.py create mode 100644 gen/strategii/buy_doji_trend.spec.txt create mode 100644 gen/strategii/buy_doji_trend.svg diff --git a/gen/strategii/buy_doji_directie.py b/gen/strategii/buy_doji_directie.py new file mode 100644 index 0000000..46c1c19 --- /dev/null +++ b/gen/strategii/buy_doji_directie.py @@ -0,0 +1,182 @@ +#!/usr/bin/env python3 +"""Buy Doji — NU: Sell Doji daily contra unui Buy Doji weekly. + +Citește `gen/strategii/buy_doji_directie.spec.txt` și scrie +`gen/strategii/buy_doji_directie.svg`. Două panouri stivuite: sus weekly +(10 bare, Buy Doji confirmat), jos daily (17 bare, uptrend, Sell Doji tehnic +valid, short-ul lovește SL-ul). Coordonatele sunt absolute (fără +), ca audit_diagrams.py să vadă pozițiile reale ale textelor. + +Rulare: python3 gen/strategii/buy_doji_directie.py +""" +from pathlib import Path + +OUT = Path(__file__).with_suffix(".svg") +W = 720 + + +def trend(start, closes, wick=0.15): + bars, o = [], start + for c in closes: + bars.append((o, round(max(o, c) + wick, 2), round(min(o, c) - wick, 2), c)) + o = c + return bars + + +# --- seriile din spec: (open, high, low, close) ----------------------------- +WK = trend(89.0, [88.0, 86.2, 84.9, 83.1, 81.6, 80.2, 78.9]) + [ + (78.90, 79.80, 77.60, 78.80), # 7: doji + (78.80, 81.60, 78.60, 81.30), # 8: confirmare => Buy Doji weekly + (81.30, 82.70, 81.10, 82.40)] +DY = trend(81.30, [81.7, 82.2, 82.0, 82.6, 83.1, 83.5, 83.3, 83.9, 84.4]) + [ + (84.40, 84.80, 83.95, 84.35), # 9: doji + (84.35, 84.45, 83.45, 83.60), # 10: confirmare => Sell Doji, intrare short + (83.60, 83.70, 83.00, 83.20), + (83.20, 84.00, 83.10, 83.90), + (83.90, 84.70, 83.80, 84.60), + (84.60, 85.25, 84.50, 85.10), # 14: SL lovit + (85.10, 85.75, 85.00, 85.60), + (85.60, 86.30, 85.50, 86.10)] + + +def eq(a, b): + return abs(a - b) < 0.005 + + +# --- assert-urile din spec --------------------------------------------------- +assert len(WK) == 10 and len(DY) == 17 +for name, bars in (("weekly", WK), ("daily", DY)): + for i, (o, h, l, c) in enumerate(bars): + assert h >= max(o, c) and l <= min(o, c), f"{name}[{i}] h/l incoerent" + if i: + assert eq(o, bars[i - 1][3]), f"{name}[{i}] open != close precedent" +for name, (o, h, l, c) in (("doji weekly", WK[7]), ("doji daily", DY[9])): + assert abs(o - c) <= 0.10 * (h - l) + 1e-9, f"{name} nu e doji" +assert WK[8][3] > WK[7][1], "weekly: fără confirmare" +assert DY[10][3] < DY[9][2], "daily: fără confirmare Sell Doji" +ENTRY = DY[10][3] +SL = max(b[1] for b in DY[7:11]) +RISK = round(SL - ENTRY, 2) +TP1 = round(ENTRY - RISK, 2) +assert eq(ENTRY, 83.60) and eq(SL, 84.80) and eq(RISK, 1.20) and eq(TP1, 82.40) +LOW_AFTER = min(b[2] for b in DY[11:]) +assert eq(LOW_AFTER, 83.00) and LOW_AFTER > TP1, "TP1 atins" +HIT = next(i for i in range(11, 17) if DY[i][1] >= SL - 1e-9) +assert HIT == 14, f"SL lovit la {HIT}" +assert eq(DY[0][0], WK[8][3]), "daily nu începe la close-ul confirmării weekly" + +# --- desen ------------------------------------------------------------------- +GREEN, RED, ORANGE, GRAY, INK = "#188a3e", "#c00", "#d06a00", "#777", "#333" +BODY_W = 9 +out = [] + + +def text(x, y, s, fill=INK, anchor="start", bold=False, size=None): + st = (["font-weight:bold"] if bold else []) + ([f"font-size:{size}px"] if size else []) + style = f' style="{";".join(st)}"' if st else "" + a = f' text-anchor="{anchor}"' if anchor != "start" else "" + out.append(f'{s}') + + +def line(x1, y1, x2, y2, color, width=1.5, dash=None, extra=""): + d = f' stroke-dasharray="{dash}"' if dash else "" + out.append(f'') + + +def rect(x, y, w, h, fill, opacity, stroke="none"): + out.append(f'') + + +def candles(bars, x0, gap, yf): + for i, (o, h, l, c) in enumerate(bars): + cx = x0 + i * gap + line(cx, yf(h), cx, yf(l), "#1a1a1a", 1.2) + top = yf(max(o, c)) + hh = max(yf(min(o, c)) - top, 1.6) + out.append(f'') + + +text(20, 24, "NU: Sell Doji daily contra unui Buy Doji weekly — exemplu construit", + bold=True, size=14) + +# ---- panoul de sus: weekly ---------------------------------------------------- +WX0, WGAP, WS, WT = 60, 16, 12.0, 66 +wmax = max(b[1] for b in WK) +yw = lambda p: WT + (wmax - p) * WS # noqa: E731 +xw = lambda i: WX0 + i * WGAP # noqa: E731 +text(20, 50, "weekly: direcția", fill="#555", bold=True) +rect(xw(7) - 8, yw(WK[8][1]) - 4, WGAP + 16, yw(WK[7][2]) - yw(WK[8][1]) + 8, + GREEN, 0.12, GREEN) +candles(WK, WX0, WGAP, yw) +text(xw(7), yw(WK[7][2]) + 16, "doji weekly", fill=ORANGE, anchor="middle", bold=True) +text(xw(9) + 14, yw(WK[8][3]) + 4, "Buy Doji weekly: direcția = long", fill=GREEN, bold=True) +# insigna de direcție +rect(470, 66, 230, 58, GREEN, 0.10, GREEN) +text(585, 90, "WEEKLY: LONG ↑", fill=GREEN, anchor="middle", bold=True, size=16) +text(585, 110, "confirmare 81.30 > high doji 79.80", fill=GREEN, anchor="middle", size=11) +w_bottom = yw(min(b[2] for b in WK)) + +# ---- panoul de jos: daily ----------------------------------------------------- +DX0, DGAP, DS = 60, 18, 40.0 +DT = w_bottom + 110 +dmax = max(b[1] for b in DY) +yd = lambda p: DT + (dmax - p) * DS # noqa: E731 +xd = lambda i: DX0 + i * DGAP # noqa: E731 +line(20, w_bottom + 34, W - 20, w_bottom + 34, "#ddd", 1) +text(20, w_bottom + 56, "daily: săptămânile de după confirmare (open 81.30 = close-ul ei)", + fill="#555", bold=True) + +LX1, LX2, COL = xd(9) - 10, 392, 400 +y_sl, y_e, y_tp = yd(SL), yd(ENTRY), yd(TP1) +assert abs((y_sl - y_e) - (y_e - y_tp)) < 1e-6, "SL-intrare != intrare-TP1 în px" +rect(xd(9) - 8, yd(DY[9][1]) - 3, DGAP + 16, yd(DY[10][2]) - yd(DY[9][1]) + 6, ORANGE, 0.15, ORANGE) +line(LX1, y_sl, LX2, y_sl, RED, 1.5, "6 3") +line(xd(10) - 8, y_e, LX2, y_e, ORANGE, 1.5, "6 3") +line(xd(10) - 8, y_tp, LX2, y_tp, GRAY, 1.5, "2 3") +text(COL, y_sl + 4, "SL 84.80 = high 4 candele", fill=RED, size=11) +text(COL, y_e + 4, "intrare short 83.60", fill=ORANGE, size=11) +text(COL, y_tp + 4, "TP1 82.40 — neatins", fill=GRAY, size=11) +candles(DY, DX0, DGAP, yd) + +# paranteza „short de 1-2 zile" peste barele 10-11 +xa, xb, yb = xd(10) - 6, xd(11) + 6, y_sl - 12 +out.append(f'') +text(xb, yb - 6, "short de 1-2 zile: permis", fill=GRAY, anchor="end", bold=True) + +# SL lovit la bara 14 +cx14 = xd(HIT) +out.append(f'') +y_lbl = DT - 22 +line(cx14, y_sl - 8, cx14, y_lbl + 4, RED, 1.2) +text(cx14 - 6, y_lbl, "SL lovit: poziția short contra weekly", fill=RED, anchor="middle", bold=True) + +# Sell Doji: etichetă sub panou, cu leader spre confirmare +y_bot = yd(min(b[2] for b in DY)) +y_sd = y_bot + 22 +line(xd(10), yd(DY[10][2]) + 4, xd(10), y_sd - 12, ORANGE, 1.2) +text(xd(10) - 20, y_sd, "Sell Doji daily: tehnic valid (close 83.60 < low doji 83.95)", + fill=ORANGE, bold=True) + +# insigna de contrast +rect(470, DT - 36, 230, 58, RED, 0.08, RED) +text(585, DT - 12, "short daily = CONTRA ✗", fill=RED, anchor="middle", bold=True, size=16) +text(585, DT + 8, "weekly zice long; daily urcă mai departe", fill=RED, anchor="middle", size=11) + +y0 = y_sd + 32 +text(20, y0, "Short scurt înăuntrul structurii weekly: da. Poziție short contra ei: nu.", + fill=INK, bold=True) +text(20, y0 + 18, "Seria e construită: un singur caz ilustrează regula, nu o dovedește.", fill="#555") +H = y0 + 30 + +svg = (f'\n ' + "\n ".join(out) + "\n") +assert "\n\n" not in svg +OUT.write_text(svg, encoding="utf-8") +print(f"intrare {ENTRY:.2f} SL {SL:.2f} risc {RISK:.2f} TP1 {TP1:.2f} | min după {LOW_AFTER:.2f} | " + f"SL lovit la bara {HIT}") +print(f"scris {OUT} ({W}x{H:.0f})") diff --git a/gen/strategii/buy_doji_directie.spec.txt b/gen/strategii/buy_doji_directie.spec.txt new file mode 100644 index 0000000..4d3e344 --- /dev/null +++ b/gen/strategii/buy_doji_directie.spec.txt @@ -0,0 +1,62 @@ +SPEC DIAGRAMĂ — buy_doji_directie +================================= +tip: PRET, două panouri stivuite (sus weekly mic, jos daily) +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 2, după perechi_tf +cheie markdown: +titlu SVG: „NU: Sell Doji daily contra unui Buy Doji weekly — exemplu construit" +stil: candele lipite (gap 15-18, body_w 9-10), fără volum; open = close anterior. + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Pe weekly s-a confirmat un Buy Doji. Pe daily, în uptrend-ul care urmează, +apare un Sell Doji tehnic valid. Ca poziție short e contra direcției +weekly: prețul scade o zi, apoi urcă și lovește SL-ul. Zona „short de 1-2 +zile" e marcată separat, ca să se vadă diferența dintre un short scurt +înăuntrul structurii și o poziție contra ei. + +SERIA — panoul de sus (weekly, 10 bare, (o,h,l,c)) +-------------------------------------------------- +Close-uri: 88.0, 86.2, 84.9, 83.1, 81.6, 80.2, 78.9 (bara 0 open 89.0, +fitile 0.15 peste/sub corp), apoi: + 7 doji (78.90, 79.80, 77.60, 78.80) + 8 confirm (78.80, 81.60, 78.60, 81.30) + 9 (81.30, 82.70, 81.10, 82.40) +Mark(7, "doji weekly"), Mark(8, "Buy Doji weekly: direcția = long"). + +SERIA — panoul de jos (daily, 17 bare, (o,h,l,c)) +------------------------------------------------- +Barele 0-8, close-uri 81.7, 82.2, 82.0, 82.6, 83.1, 83.5, 83.3, 83.9, 84.4, +open[0] = 81.30, fitile 0.15 peste/sub corp (uptrend de 9 candele). + 9 doji (84.40, 84.80, 83.95, 84.35) +10 confirmare (84.35, 84.45, 83.45, 83.60) close < low doji 83.95 => Sell Doji +11 (83.60, 83.70, 83.00, 83.20) +12 (83.20, 84.00, 83.10, 83.90) +13 (83.90, 84.70, 83.80, 84.60) +14 (84.60, 85.25, 84.50, 85.10) <- high 85.25 >= SL 84.80 +15 (85.10, 85.75, 85.00, 85.60) +16 (85.60, 86.30, 85.50, 86.10) + +NIVELURI (panoul daily) +----------------------- +intrare short 83.60 (portocaliu), SL 84.80 roșu („SL 84.80 = high 4 candele"), +TP1 82.40 punctat („TP1 82.40 — neatins"). +Paranteză orizontală peste barele 10-11: „short de 1-2 zile: permis" (gri). +Mark(14, "SL lovit: poziția short contra weekly", roșu, above). + +ASSERT-URI +---------- +1. open[i] == close[i-1] pe ambele panouri; h/l cuprind o/c. +2. Doji weekly și doji daily: abs(o-c) <= 0.10*(h-l). +3. weekly close[8] > high[7]; daily close[10] < low[9]. +4. SL == max(h for bare daily 7..10) == 84.80; risc == 1.20; TP1 == 82.40. +5. min(l for bare daily 11..16) == 83.00 > 82.40 (TP1 neatins). +6. primul i>10 cu high >= 84.80 este 14. + +SURSA +----- +- „nu shorta împotriva unui Buy Doji weekly … Short-uri de termen scurt în + interiorul structurii, da (el însuși a shortat 2 zile…)": + summaries/09_QA/03_2026-08-11.md:220-223. +- summaries/08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md:34-37. +- SL/TP short: summaries/03_MODUL_2/13_strategia_3_byh.md:227-232. +- Seria e CONSTRUITĂ; un singur caz nu dovedește regula, doar o ilustrează. diff --git a/gen/strategii/buy_doji_directie.svg b/gen/strategii/buy_doji_directie.svg new file mode 100644 index 0000000..14a4e18 --- /dev/null +++ b/gen/strategii/buy_doji_directie.svg @@ -0,0 +1,85 @@ + + NU: Sell Doji daily contra unui Buy Doji weekly — exemplu construit + weekly: direcția + + + + + + + + + + + + + + + + + + + + + + doji weekly + Buy Doji weekly: direcția = long + + WEEKLY: LONG ↑ + confirmare 81.30 > high doji 79.80 + + daily: săptămânile de după confirmare (open 81.30 = close-ul ei) + + + + + SL 84.80 = high 4 candele + intrare short 83.60 + TP1 82.40 — neatins + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short de 1-2 zile: permis + + + SL lovit: poziția short contra weekly + + Sell Doji daily: tehnic valid (close 83.60 < low doji 83.95) + + short daily = CONTRA ✗ + weekly zice long; daily urcă mai departe + Short scurt înăuntrul structurii weekly: da. Poziție short contra ei: nu. + Seria e construită: un singur caz ilustrează regula, nu o dovedește. + \ No newline at end of file diff --git a/gen/strategii/buy_doji_doji_forma.py b/gen/strategii/buy_doji_doji_forma.py new file mode 100644 index 0000000..255b7bf --- /dev/null +++ b/gen/strategii/buy_doji_doji_forma.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +"""Ce e doji și ce nu — patru candele cu același high 50.10 și low 49.20. + +Citește `gen/strategii/buy_doji_doji_forma.spec.txt` și scrie +`gen/strategii/buy_doji_doji_forma.svg`. Definiție de o candelă (stilul +vechi, candele izolate): diferă doar corpul, deci testul „corp ≤ 10 % din +range, fitil în ambele părți" se vede direct pe formă. + +Desenat direct, nu cu `Chart`: `tag`/`note` din svg_candles pun etichetele +pe un singur rând sau în blocul de jos, iar aici fiecare etichetă trebuie să +stea lipită sub candela ei, pe 2-3 rânduri. + +Rulare: python3 gen/strategii/buy_doji_doji_forma.py +""" +from pathlib import Path + +OUT = Path(__file__).with_suffix(".svg") +GREEN, RED, GREY = "#188a3e", "#c00", "#555" + +H, L = 50.10, 49.20 +RNG = H - L +# (nume, o, h, l, c, verdict, rânduri de etichetă sub candelă) +CANDLES = [ + ("A", 49.60, 50.10, 49.20, 49.55, "DA", ["DA: corp 0.05", "= 5.6 % din range"]), + ("B", 49.62, 50.10, 49.20, 49.53, "DA", ["DA, la limită:", "corp 0.09 = 10 %", "(parametrul 10)"]), + ("C", 49.80, 50.10, 49.20, 49.50, "NU", ["NU: corp 0.30", "= 33 %"]), + ("D", 50.05, 50.10, 49.20, 50.10, "NU", ["NU: corp mic (5.6 %),", "dar fără fitil sus"]), +] + +# --- assert-urile din spec -------------------------------------------------- +ratio = {n: round(abs(c - o) / (h - l), 4) for n, o, h, l, c, *_ in CANDLES} +for n, o, h, l, c, *_ in CANDLES: + assert h == H and l == L, (n, h, l) # 1 +assert ratio == {"A": 0.0556, "B": 0.1000, "C": 0.3333, "D": 0.0556}, ratio # 2 +for n, o, h, l, c, *_ in CANDLES[:2]: # 3 + assert ratio[n] <= 0.10 and min(o, c) > l and max(o, c) < h, n +assert ratio["C"] > 0.10 # 4 +_, oD, hD, _, cD, *_ = CANDLES[3] +assert max(oD, cD) == hD + +# --- geometrie --------------------------------------------------------------- +SCALE, TOP, W = 260, 72, 740 +XS = [150, 300, 450, 600] # centrele candelelor +BODY_W = 26 + + +def y(p): + return TOP + (H - p) * SCALE + + +oA, cA = CANDLES[0][1], CANDLES[0][4] +assert y(oA) < y(cA), "open A trebuie să fie mai sus pe ecran decât close A" # 5 + +out = [] +t = out.append + + +def text(x, yy, s, color=GREY, anchor="start", bold=False, size=12): + style = f' style="font-weight:bold;font-size:{size}px"' if bold else ( + f' style="font-size:{size}px"' if size != 12 else "") + t(f'{s}') + + +text(24, 22, "Ce e doji și ce nu — aceeași bară 50.10 / 49.20", "#333", bold=True) + +# high și low comune: linii subțiri pe toată lățimea +for p in (H, L): + t(f'') +text(XS[0] - 36, y(H) + 4, "high 50.10", anchor="end") +text(XS[0] - 36, y(L) + 4, "low 49.20", anchor="end") + +label_y0 = y(L) + 24 +for (n, o, h, l, c, verdict, lines), x in zip(CANDLES, XS): + color = GREEN if c >= o else RED + vcol = GREEN if verdict == "DA" else RED + t(f'') + top, bot = y(max(o, c)), y(min(o, c)) + t(f'') + text(x, y(H) - 14, verdict, vcol, "middle", bold=True, size=18) + for k, s in enumerate(lines): + text(x, label_y0 + 16 * k, s, vcol, "middle", bold=(k == 0)) + +# prețurile pe A: open la stânga (mai sus), close la dreapta (mai jos) +x = XS[0] +text(x - 36, y(oA) + 2, "open 49.60", anchor="end") +t(f'') +text(x + 36, y(cA) + 8, "close 49.55") +t(f'') + +# D: close = high, deci fitilul de sus lipsește +x = XS[3] +text(x + 20, y(H) + 12, "← fără fitil sus", RED) + +cap_y = label_y0 + 16 * 3 + 14 +text(24, cap_y, f"Test doji: corp ≤ 10 % din range ({RNG:.2f}) și fitil în ambele părți. " + "Scară: 0.10 = 26 px.") +height = cap_y + 12 + +svg = (f'\n ' + + "\n ".join(out) + "\n\n") +OUT.write_text(svg, encoding="utf-8") +print(f"scris {OUT} ({W}x{height:.0f})") diff --git a/gen/strategii/buy_doji_doji_forma.spec.txt b/gen/strategii/buy_doji_doji_forma.spec.txt new file mode 100644 index 0000000..8f2c2ec --- /dev/null +++ b/gen/strategii/buy_doji_doji_forma.spec.txt @@ -0,0 +1,38 @@ +SPEC DIAGRAMĂ — buy_doji_doji_forma +=================================== +tip: DEFINIȚIE de o candelă (stil vechi permis de STYLE.md: 4 candele + izolate, gap 92, body_w 26), fără trend, fără volum. +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 3 +cheie markdown: +titlu SVG: „Ce e doji și ce nu — aceeași bară 50.10 / 49.20" + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Testul „corp ≤ 10 % din range, fitil în ambele părți", pe patru candele cu +ACELAȘI high 50.10 și ACELAȘI low 49.20 (range 0.90). Diferă doar corpul. + +CANDELELE (o, h, l, c) și eticheta de sub fiecare +------------------------------------------------- +A (49.60, 50.10, 49.20, 49.55) „DA: corp 0.05 = 5.6 % din range" +B (49.62, 50.10, 49.20, 49.53) „DA, la limită: corp 0.09 = 10 % (parametrul 10)" +C (49.80, 50.10, 49.20, 49.50) „NU: corp 0.30 = 33 %" +D (50.05, 50.10, 49.20, 50.10) „NU: corp mic (5.6 %), dar fără fitil sus" +Deasupra fiecărei candele: „DA" verde / „NU" roșu. +Etichete de preț pe A: „high 50.10", „low 49.20", „open 49.60", „close 49.55" +(open deasupra lui close, pentru că open > close; verifică ordinea pe axă). + +ASSERT-URI +---------- +1. Toate patru: h == 50.10, l == 49.20. +2. corp/range: A 0.0556, B 0.1000, C 0.3333, D 0.0556 (4 zecimale). +3. A, B: corp/range <= 0.10 și min(o,c) > l și max(o,c) < h (fitil ambele părți). +4. C: corp/range > 0.10. D: max(o,c) == h (fitil sus zero). +5. y(open A) < y(close A) în pixeli (open mai sus pe ecran, fiindcă e preț mai mare). + +SURSA +----- +- Doji: open ≈ close, corp foarte mic față de range, fitil în ambele părți: + summaries/03_MODUL_2/13_strategia_3_byh.md:15-30 (candela 50.10/49.20/49.60/49.55 + e cea din lecție, cu cifrele sumarizatorului). +- Parametrul standard de doji pe 10 (nu 5): summaries/09_QA/28_2025-05-27.md:343-349. +- Candelele B, C, D sunt CONSTRUITE pentru contrast. diff --git a/gen/strategii/buy_doji_doji_forma.svg b/gen/strategii/buy_doji_doji_forma.svg new file mode 100644 index 0000000..40cabe9 --- /dev/null +++ b/gen/strategii/buy_doji_doji_forma.svg @@ -0,0 +1,34 @@ + + Ce e doji și ce nu — aceeași bară 50.10 / 49.20 + + + high 50.10 + low 49.20 + + + DA + DA: corp 0.05 + = 5.6 % din range + + + DA + DA, la limită: + corp 0.09 = 10 % + (parametrul 10) + + + NU + NU: corp 0.30 + = 33 % + + + NU + NU: corp mic (5.6 %), + dar fără fitil sus + open 49.60 + + close 49.55 + + ← fără fitil sus + Test doji: corp ≤ 10 % din range (0.90) și fitil în ambele părți. Scară: 0.10 = 26 px. + diff --git a/gen/strategii/buy_doji_iesire.py b/gen/strategii/buy_doji_iesire.py new file mode 100644 index 0000000..fe91dbe --- /dev/null +++ b/gen/strategii/buy_doji_iesire.py @@ -0,0 +1,222 @@ +#!/usr/bin/env python3 +"""Buy Doji — ieșirea: trailing stop pe gap-uri și limita de 8 candele. + +Citește `gen/strategii/buy_doji_iesire.spec.txt` și scrie +`gen/strategii/buy_doji_iesire.svg`: două panouri stivuite. + +A — seria din buy_doji_transe (barele 0-18) continuată cu 19-23. Barele 19 + și 21 deschid cu GAP (excepție cerută de spec): regula de trail cere o + bară cu low peste high-ul precedentei, imposibil dacă open = close + anterior. De aceea barele 15-23 sunt construite explicit, nu cu + `from_closes`. +B — doji 50.10 / 49.20, intrare 50.40, apoi 8 candele fără TP și fără SL. + +Barele de după intrare, în ambele panouri, sunt CONSTRUITE. +Sursa regulilor: summaries/03_MODUL_2/13_strategia_3_byh.md:196-213. + +Rulare: python3 gen/strategii/buy_doji_iesire.py +""" +import re +import sys +from pathlib import Path + +sys.path.insert(0, "/workspace/atm-curs-dl") +from svg_candles import Candle, Chart, Level, Mark, from_closes # noqa: E402 + +OUT = Path(__file__).with_suffix(".svg") +W = 660 +VGAP = 10 +GREEN, RED, ORANGE, BLUE, GREY = "#188a3e", "#c00", "#b06000", "#1a5fb4", "#555" + +# --- PANOUL A ---------------------------------------------------------------- +ENTRY_A, SL_A, TP1_A = 53.70, 51.55, 55.85 +R_A = round(ENTRY_A - SL_A, 2) # 2.15 + +a = from_closes([60.40, 59.60, 59.90, 58.80, 58.10, 58.40, 57.20, 56.30, + 56.60, 55.30, 54.20, 52.40], wick=0.15, start=61.00) +a += [Candle(*ohlc) for ohlc in [ + (52.40, 53.00, 51.60, 52.30), # 12 doji + (52.30, 52.85, 52.10, 52.60), # 13 +1 + (52.60, 53.85, 52.45, 53.70), # 14 confirmare = intrare + (53.70, 53.80, 53.10, 53.45), # 15 + (53.45, 54.20, 53.35, 54.10), # 16 + (54.10, 54.85, 54.00, 54.70), # 17 + (54.70, 56.00, 54.60, 55.90), # 18 atinge TP1 + (56.30, 56.95, 56.20, 56.80), # 19 GAP + (56.80, 57.35, 56.60, 57.20), # 20 + (57.60, 58.10, 57.45, 57.90), # 21 GAP + (57.90, 58.00, 57.50, 57.60), # 22 + (57.60, 57.70, 57.10, 57.20), # 23 close sub trail +]] +assert len(a) == 24 + +for c in a: + assert c.l <= min(c.o, c.c) and c.h >= max(c.o, c.c), "h/l nu cuprind o/c" +# A1. gap-urile reale +assert a[19].l > a[18].h and a[21].l > a[20].h, "barele de gap nu au low > high anterior" +# A2. open = close anterior, în afară de 19 și 21 (și 0-14, ca în transe) +for i in range(1, 24): + if i not in (19, 21): + assert abs(a[i].o - a[i - 1].c) < 1e-9, f"A: open[{i}] != close[{i-1}]" +# regula de trail, calculată pe serie: primul gap după intrare stabilește +# trail-ul, fiecare gap următor îl urcă; ieși la primul close sub el +trail, steps, exit_i = None, [], None +for i in range(15, 24): + if trail is not None and a[i].c < trail: + exit_i = i + break + if a[i].l > a[i - 1].h: + trail = a[i].l + steps.append((i, trail)) +assert [(i, round(t, 2)) for i, t in steps] == [(19, 56.20), (21, 57.45)], steps +# A3. +assert a[22].c >= 57.45 and a[23].c < 57.45 and exit_i == 23, exit_i +EXIT_A = a[23].c +# A4. +assert R_A == 2.15 and round((EXIT_A - ENTRY_A) / R_A, 2) == 1.63 +# A5. TP1 = 1R, atins prima oară la bara 18 +assert round(ENTRY_A + R_A, 2) == TP1_A +assert next(i for i in range(15, 24) if a[i].h >= TP1_A) == 18 +assert abs(a[14].c - ENTRY_A) < 1e-9 + +ch_a = Chart( + candles=a, + levels=[Level(ENTRY_A, "intrare 53.70", GREEN), + Level(TP1_A, "TP1 55.85 — tranșa 1: +1R", GREEN, dash="2 3")], + scale=40, gap=16, body_w=9, left=44, width=W, + title="A — trailing stop pe gap-uri (seria de la intrarea în tranșe)", + caption="a treia treime: o lași mai departe (break-even / trend)", +) + +# --- PANOUL B ---------------------------------------------------------------- +ENTRY_B, SL_B, TP1_B = 50.40, 49.20, 51.60 +R_B = round(ENTRY_B - SL_B, 2) # 1.20 + +b = from_closes([52.20, 51.40, 50.60, 49.65], wick=0.15, start=53.00) +b += [Candle(*ohlc) for ohlc in [ + (49.65, 50.10, 49.20, 49.60), # 4 doji + (49.60, 50.05, 49.45, 49.90), # 5 +1 + (49.90, 50.55, 49.75, 50.40), # 6 confirmare = intrare +]] +b += from_closes([50.60, 50.30, 50.90, 50.50, 51.10, 50.80, 51.20, 50.70], + wick=0.15, start=b[-1].c) +assert len(b) == 15 +# B1. +for i in range(1, 15): + assert abs(b[i].o - b[i - 1].c) < 1e-9, f"B: open[{i}] != close[{i-1}]" +d = b[4] +assert abs(d.o - d.c) <= 0.10 * (d.h - d.l) and (d.h, d.l) == (50.10, 49.20) +assert b[6].c > d.h and abs(b[6].c - ENTRY_B) < 1e-9 +# B2. 8 candele fără TP și fără SL +after = b[7:15] +assert all(c.h < TP1_B and c.l > SL_B for c in after) +assert round(max(c.h for c in after), 2) == 51.35 and round(min(c.l for c in after), 2) == 50.15 +assert round(ENTRY_B + R_B, 2) == TP1_B +# B3. +EXIT_B = b[14].c +assert round((EXIT_B - ENTRY_B) / R_B, 2) == 0.25 + +for k, c in enumerate(after, 1): + c.tag = str(k) + +ch_b = Chart( + candles=b, + levels=[Level(TP1_B, "TP1 51.60", GREEN, dash="2 3"), + Level(ENTRY_B, "intrare 50.40", GREEN), + Level(SL_B, "SL 49.20", RED)], + marks=[Mark(4, "doji", ORANGE, "below")], + scale=48, gap=16, body_w=9, left=44, width=W, + title="B — limita de 8 candele", +) + + +# --- etichete plasate de mână: Mark centrează textul, iar aici textele lungi +# ar cădea peste candelele vecine. Le ancorez lângă bară, pe partea liberă. +def label(ch, i, price, text, color, anchor="start", dx=0): + x = ch._cx(i) + dx + return (f'{text}') + + +def panel(ch, extra): + svg = ch.render() # render() fixează scala (_pmax, top) + h = float(re.search(r'viewBox="0 0 \d+ ([\d.]+)"', svg).group(1)) + body = svg[svg.index(">") + 1:svg.rindex("")].strip() + return body + "".join("\n " + e for e in extra(ch)), h + + +def trail_a(ch): + x19, x21, x23 = ch._cx(19) - 7, ch._cx(21) - 8, ch._cx(23) + 7 + y1, y2 = ch._y(steps[0][1]), ch._y(steps[1][1]) + # golul dintre high-ul barei precedente și low-ul barei de gap, hașurat: + # la 0.10-0.20 de preț are doar câțiva pixeli și se pierde sub linia de trail + gaps = [f'' + for i, _ in steps] + return gaps + [ + f'', + label(ch, 18, 56.25, "TP1: ieși cu 1/3", GREEN, "end", 4), + label(ch, 19, 55.35, "gap: low > high anterior → trail 56.20", ORANGE, "start", -4), + label(ch, 21, 58.35, "gap → trail 57.45", ORANGE, "middle"), + label(ch, 23, 57.30, "close sub trail: ieși cu 1/3", RED, "start", 14), + label(ch, 23, 56.88, f"la 57.20 = +{(EXIT_A - ENTRY_A) / R_A:.2f}R", RED, "start", 14), + ] + + +def mark_b(ch): + return [ + label(ch, 14, 51.05, "a 8-a candelă: nici TP, nici SL", GREY, "start", 10), + label(ch, 14, 50.75, f"→ ieși la 50.70 = +{(EXIT_B - ENTRY_B) / R_B:.2f}R", GREY, "start", 10), + ] + + +# panourile se stivuiesc prin `top` (nu prin ): audit_diagrams +# citește coordonatele brute și ar vedea panourile suprapuse. +T = 26 +ch_a.top += T +body_a, h_a = panel(ch_a, trail_a) +ch_b.top += h_a + VGAP +body_b, H_B = panel(ch_b, mark_b) +TITLE = "Ieșirea: trailing stop pe gap-uri și limita de 8 candele — exemple construite" +CAP = "Barele de după intrare sunt construite. Regulile: 13_strategia_3_byh.md:196-213." +cap_y = H_B + 12 +H = cap_y + 10 +svg = "\n ".join([ + f'', + f'{TITLE}', + body_a, + body_b, + f'{CAP}', +]) + "\n" +assert "\n\n" not in svg + +# --- etichete în panză și fără suprapuneri (lățimi aproximate) --------------- +TEXT = re.compile(r']*)>(.*?)', re.S) + + +def texts(body, y_off, tag): + for m in TEXT.finditer(body): + x, y, attrs = float(m.group(1)), float(m.group(2)) + y_off, m.group(3) + s = m.group(4).replace(">", ">") + wpx = len(s) * 12 * (0.62 if "bold" in attrs else 0.52) + anchor = re.search(r'text-anchor="(\w+)"', attrs) + anchor = anchor.group(1) if anchor else "start" + x0 = x - wpx if anchor == "end" else (x - wpx / 2 if anchor == "middle" else x) + yield x0, x0 + wpx, y, s, tag + + +labels = list(texts(body_a, 0, "A")) + list(texts(body_b, 0, "B")) +for x0, x1, y, s, tag in labels: + assert x0 >= -2 and x1 <= W + 2 and 0 <= y <= H, f"[{tag}] text iese din panză: {s!r}" +for i, (l1, r1, y1, s1, t1) in enumerate(labels): + for l2, r2, y2, s2, t2 in labels[i + 1:]: + assert not (t1 == t2 and abs(y1 - y2) < 12 and l1 < r2 - 4 and l2 < r1 - 4), \ + f"[{t1}] texte suprapuse: {s1!r} / {s2!r}" + +OUT.write_text(svg, encoding="utf-8") +print(f"A: trail {steps}, ieșire bara {exit_i} la {EXIT_A:.2f} = " + f"+{(EXIT_A - ENTRY_A) / R_A:.2f}R; B: ieșire la {EXIT_B:.2f} = " + f"+{(EXIT_B - ENTRY_B) / R_B:.2f}R") +print(f"scris {OUT} ({W}x{H:.0f})") diff --git a/gen/strategii/buy_doji_iesire.spec.txt b/gen/strategii/buy_doji_iesire.spec.txt new file mode 100644 index 0000000..f0fc6f8 --- /dev/null +++ b/gen/strategii/buy_doji_iesire.spec.txt @@ -0,0 +1,57 @@ +SPEC DIAGRAMĂ — buy_doji_iesire +=============================== +tip: PRET, două panouri stivuite +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 9 (ieșirea) +cheie markdown: +titlu SVG: „Ieșirea: trailing stop pe gap-uri și limita de 8 candele — exemple construite" +stil: candele lipite (gap 15-18, body_w 9-10), fără volum. + EXCEPȚIE CERUTĂ: în panoul A, barele 19 și 21 deschid cu GAP + (open != close anterior). Regula de trail are nevoie de o bară + cu low peste high-ul precedentei, ceea ce fără gap e imposibil. + Toate celelalte bare: open = close anterior. + +PANOUL A — trailing stop (seria buy_doji_transe, continuată) +------------------------------------------------------------ +Barele 0-18: identice cu buy_doji_transe. Apoi: +19 (56.30, 56.95, 56.20, 56.80) GAP: low 56.20 > high[18] 56.00 → trail = 56.20 +20 (56.80, 57.35, 56.60, 57.20) +21 (57.60, 58.10, 57.45, 57.90) GAP: low 57.45 > high[20] 57.35 → trail urcă la 57.45 +22 (57.90, 58.00, 57.50, 57.60) close 57.60 ≥ 57.45: rămâi +23 (57.60, 57.70, 57.10, 57.20) close 57.20 < 57.45: ieși +Niveluri: intrare 53.70; TP1 55.85 („tranșa 1: +1R"); trail în trepte: +segment 56.20 de la bara 19 la 20, segment 57.45 de la bara 21 la 23. +Marks: Mark(18, "TP1: ieși cu 1/3"), Mark(19, "gap: low > high anterior → trail 56.20"), +Mark(21, "trail 57.45"), Mark(23, "close sub trail: ieși cu 1/3 la 57.20 = +1.63R"). +Text sub panou: „a treia treime: o lași mai departe (break-even / trend)". + +PANOUL B — limita de 8 candele +------------------------------ +open[0] = 53.00; close-uri: 52.20, 51.40, 50.60, 49.65, fitile 0.15; + 4 doji (49.65, 50.10, 49.20, 49.60) + 5 +1 (49.60, 50.05, 49.45, 49.90) + 6 confirmare (49.90, 50.55, 49.75, 50.40) intrare 50.40 + 7-14 close-uri: 50.60, 50.30, 50.90, 50.50, 51.10, 50.80, 51.20, 50.70 + (fitile 0.15; open = close anterior) +Niveluri: intrare 50.40, SL 49.20, TP1 51.60. +Numerotare 1..8 sub barele 7-14. Mark(14, "a 8-a candelă: nici TP, nici SL → ieși la 50.70 = +0.25R"). + +ASSERT-URI +---------- +A1. low[19] > high[18] și low[21] > high[20] (gap-urile reale). +A2. open[i] == close[i-1] pentru i în 15..23, cu excepția 19 și 21. +A3. close[22] >= 57.45 și close[23] < 57.45; primul close sub trail după bara 19 e 23. +A4. round((57.20-53.70)/2.15, 2) == 1.63. +A5. primul i>14 cu high >= 55.85 este 18. +B1. open[i] == close[i-1] peste tot; doji abs(o-c) <= 0.10*(h-l); close[6] > 50.10. +B2. pentru barele 7-14: high < 51.60 și low > 49.20 (max high 51.35, min low 50.15). +B3. round((50.70-50.40)/1.20, 2) == 0.25. + +SURSA +----- +- Trail: low-ul barei cu low peste high-ul precedentei; ieși la close sub el: + summaries/03_MODUL_2/13_strategia_3_byh.md:196-200. +- 3 poziții (1/3 TP, 1/3 trail, 1/3 mai departe): :204-213 (tabel marcat de + sumarizator ca completare, :341-350). +- Limita de 8 candele: :201-202. +- Doji 50.10/49.20, intrare 50.40, SL 49.20: exemplul lecției, :158-167. +- Barele după intrare, în ambele panouri, sunt CONSTRUITE. diff --git a/gen/strategii/buy_doji_iesire.svg b/gen/strategii/buy_doji_iesire.svg new file mode 100644 index 0000000..72477fb --- /dev/null +++ b/gen/strategii/buy_doji_iesire.svg @@ -0,0 +1,114 @@ + + Ieșirea: trailing stop pe gap-uri și limita de 8 candele — exemple construite + A — trailing stop pe gap-uri (seria de la intrarea în tranșe) + + intrare 53.70 + + TP1 55.85 — tranșa 1: +1R + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a treia treime: o lași mai departe (break-even / trend) + + + + TP1: ieși cu 1/3 + gap: low > high anterior → trail 56.20 + gap → trail 57.45 + close sub trail: ieși cu 1/3 + la 57.20 = +1.63R + B — limita de 8 candele + + TP1 51.60 + + intrare 50.40 + + SL 49.20 + + + + + + + + + + + + + + + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 6 + + + 7 + + + 8 + doji + a 8-a candelă: nici TP, nici SL + → ieși la 50.70 = +0.25R + Barele de după intrare sunt construite. Regulile: 13_strategia_3_byh.md:196-213. + \ No newline at end of file diff --git a/gen/strategii/buy_doji_locatie.py b/gen/strategii/buy_doji_locatie.py new file mode 100644 index 0000000..89e622b --- /dev/null +++ b/gen/strategii/buy_doji_locatie.py @@ -0,0 +1,114 @@ +#!/usr/bin/env python3 +"""Buy Doji — locația: doji la nivel vs. doji în aer (exemplu construit). + +Citește `gen/strategii/buy_doji_locatie.spec.txt`. Două panouri alăturate cu +ACEEAȘI serie de 10 bare, pe aceeași scară și aceeași axă de preț (candelele +stau la aceleași y). Stânga: pivot monthly S1 49.00, la 0,41 % sub low-ul +dojiului. Dreapta: S1 46.00 și PP 53.50 — cel mai apropiat nivel sub doji e +la 6,96 %. Nivelurile se desenează de mână, cu coordonate absolute (liniile +din Chart pornesc mereu de la x=24, ar trece peste panoul vecin). + +Rulare: python3 gen/strategii/buy_doji_locatie.py +""" +import re +import sys +sys.path.insert(0, "/workspace/atm-curs-dl") +from svg_candles import Chart, Mark, from_closes # noqa: E402 + +OUT = "/workspace/atm-curs-dl/gen/strategii/buy_doji_locatie.svg" + +CLOSES = [52.20, 51.40, 50.60, 49.65, 49.60, 49.90, 50.40, 50.80, 51.10, 51.50] +wicks = [(0.15, 0.15)] * len(CLOSES) +wicks[4] = (0.45, 0.40) # doji: h 50.10 / l 49.20 +cds = from_closes(CLOSES, wicks=wicks, start=53.00) +doji = cds[4] +S1_DA, S1_NU, PP_NU = 49.00, 46.00, 53.50 +NIVELURI_NU = [S1_NU, PP_NU] + +# --- assert-urile din spec --------------------------------------------------- +for i in range(1, len(cds)): # 1 + assert cds[i].o == cds[i - 1].c, f"open[{i}] != close[{i-1}]" +assert abs(doji.h - 50.10) < 1e-9 and abs(doji.l - 49.20) < 1e-9 +assert abs(doji.o - doji.c) <= 0.10 * (doji.h - doji.l), "bara 4 nu e doji" +assert cds[6].c > doji.h, "bara 6 nu confirmă" +d_da = round((doji.l - S1_DA) / S1_DA * 100, 2) # 2 +assert d_da == 0.41 and d_da <= 2 +d_nu = round((doji.l - S1_NU) / S1_NU * 100, 2) # 3 +assert d_nu == 6.96 and d_nu > 2 and (PP_NU - doji.h) > 0 +assert not any(S1_NU < p < PP_NU for p in NIVELURI_NU) +d_pp = round((PP_NU - doji.l) / doji.l * 100, 2) # PP e deasupra, mai departe +assert d_pp == 8.74 and d_pp > d_nu + +# --- layout: două panouri, aceeași axă -------------------------------------- +BLUE, GREEN, RED, ORANGE, GREY = "#1a5fb4", "#188a3e", "#c00", "#b06000", "#555" +W, PW = 760, 350 # lățime totală, lățime panou +PX = [24, 24 + PW + 28] # x-ul stâng al fiecărui panou +SCALE, TOP = 36.0, 96 # px/unitate și y-ul celui mai mare preț + +charts = [] +for px in PX: + ch = Chart(candles=cds, marks=[Mark(4, "doji", ORANGE, "above", dy=-16), + Mark(6, "confirmare", GREEN, "above", dy=-26)], + scale=SCALE, gap=17, body_w=10, left=px + 34, width=px + PW, top=TOP) + body = ch.render() + charts.append((ch, body.split(">", 1)[1].rsplit("", 1)[0].strip())) +(ch_da, body_da), (ch_nu, body_nu) = charts +assert ch_da.scale == ch_nu.scale and ch_da._pmax == ch_nu._pmax, "scări diferite" # 4 +y = ch_da._y # axa e comună: același y pe ambele panouri + + +def level(px, price, text, color): + yy = y(price) + return [f'', + f'{text}'] + + +def arrow(x, y1, y2, color): # săgeată dublă verticală între y1 și y2 + return [f'', + f'', + f''] + + +xd_da, xd_nu = ch_da._cx(4), ch_nu._cx(4) +y_low, y_bot = y(doji.l), y(S1_NU) +ly = y(S1_DA) + 24 # textul de distanță, sub linia 49.00 +parts = [ + f'', + f'' + f'Doji la nivel vs. doji în aer — daily, pivoți monthly (exemplu construit)', + f'DA — doji la nivel', + f'NU — doji în aer', + f'', + *level(PX[0], S1_DA, "pivot monthly S1 49.00", BLUE), + *level(PX[1], PP_NU, "PP 53.50", BLUE), + *level(PX[1], S1_NU, "S1 46.00", BLUE), + body_da, body_nu, + # DA: low-ul dojiului atinge practic linia + f'', + f'low 49.20 = +0,41 % față de 49.00', + f'' + f'→ la nivel (daily: ≤ 1-2 %)', + # NU: distanța până la cel mai apropiat nivel + *arrow(xd_nu, y_low + 3, y_bot - 2, RED), + f'' + f'cel mai apropiat nivel: 46.00, la 6,96 %', + f'→ doji în aer', + f'' + f'(PP 53.50 e deasupra, la 8,74 % de low)', + f'60 min: prag ≤ 0,5 %, pivoți weekly · ' + f'daily: 1-2 %, pivoți monthly · weekly: pivoți quarterly', + f'Aceeași serie, aceeași scară; ' + f'nivelurile 49.00 / 46.00 / 53.50 sunt construite.', + "", +] +svg = "\n ".join(parts).replace("\n ", "\n") +assert "\n\n" not in svg, "linie goală în SVG" +# nimic din panoul stâng nu trece de separator (etichete ancorate pe candele) +for m in re.finditer(r']*>(.*?)', body_da): + assert float(m.group(1)) < PX[1] - 14, f"text din DA trece în NU: {m.group(2)}" +with open(OUT, "w") as f: + f.write(svg) +print(f"scris {OUT} ({W}x{y_bot + 62:.0f}); DA +{d_da}% NU {d_nu}% (PP {d_pp}%)") diff --git a/gen/strategii/buy_doji_locatie.spec.txt b/gen/strategii/buy_doji_locatie.spec.txt new file mode 100644 index 0000000..cab91a1 --- /dev/null +++ b/gen/strategii/buy_doji_locatie.spec.txt @@ -0,0 +1,46 @@ +SPEC DIAGRAMĂ — buy_doji_locatie +================================ +tip: PRET, două panouri cu ACEEAȘI serie, niveluri diferite +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 4 +cheie markdown: +titlu SVG: „Doji la nivel vs. doji în aer — daily, pivoți monthly (exemplu construit)" +stil: candele lipite (gap 15-18, body_w 9-10), fără volum; open = close anterior. + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Aceeași formă (trend → doji → confirmare), dar în stânga low-ul dojiului e +la 0,41 % de pivotul monthly (sub pragul de 1-2 % pe daily), iar în dreapta +cel mai apropiat nivel e la 6,96 % dedesubt. Pattern-ul nu te ajută să vezi +diferența; doar măsurătoarea. + +SERIA (identică pe ambele panouri, 10 bare) +------------------------------------------- +Seria panoului DA din buy_doji_fereastra.spec.txt, extinsă cu 3 bare: +close-uri 52.20, 51.40, 50.60, 49.65, 49.60 (doji: o 49.65 h 50.10 l 49.20), +49.90, 50.40 (confirmare), 50.80, 51.10, 51.50; open[0] = 53.00; fitile 0.15. + +NIVELURI +-------- +Stânga (DA): „pivot monthly S1 49.00" (albastru), eticheta de distanță lângă +doji: „low 49.20 = +0,41 % față de 49.00 → la nivel (daily: ≤ 1-2 %)". +Dreapta (NU): „S1 46.00" jos, „PP 53.50" sus; eticheta: „cel mai apropiat +nivel: 46.00, la 6,96 % → doji în aer". +Sub ambele, text mic: „60 min: prag ≤ 0,5 %, pivoți weekly · daily: 1-2 %, +pivoți monthly · weekly: pivoți quarterly". + +ASSERT-URI +---------- +1. open[i] == close[i-1]; doji abs(o-c) <= 0.10*(h-l); close[6] > 50.10. +2. round((49.20-49.00)/49.00*100, 2) == 0.41 și <= 2. +3. round((49.20-46.00)/46.00*100, 2) == 6.96 și > 2; (53.50-50.10) > 0 + (niciun nivel între 46.00 și 53.50 pe panoul NU). +4. Scara (px/unitate) identică pe cele două panouri (ca să se vadă că forma e + aceeași). + +SURSA +----- +- Locația: summaries/03_MODUL_2/13_strategia_3_byh.md:188-190. +- Pragurile: summaries/03_MODUL_2/11_construire_scanere_sf_byd_sld.md:99-104. +- Pivoții pe TF: summaries/03_MODUL_2/11_construire_scanere_sf_byd_sld.md:63-69; + summaries/03_MODUL_2/03_timeframes_set_up.md:69-79. +- Nivelurile 49.00 / 46.00 / 53.50 sunt CONSTRUITE. diff --git a/gen/strategii/buy_doji_locatie.svg b/gen/strategii/buy_doji_locatie.svg new file mode 100644 index 0000000..a4671bd --- /dev/null +++ b/gen/strategii/buy_doji_locatie.svg @@ -0,0 +1,67 @@ + + Doji la nivel vs. doji în aer — daily, pivoți monthly (exemplu construit) + DA — doji la nivel + NU — doji în aer + + + pivot monthly S1 49.00 + + PP 53.50 + + S1 46.00 + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + low 49.20 = +0,41 % față de 49.00 + → la nivel (daily: ≤ 1-2 %) + + + + cel mai apropiat nivel: 46.00, la 6,96 % + → doji în aer + (PP 53.50 e deasupra, la 8,74 % de low) + 60 min: prag ≤ 0,5 %, pivoți weekly · daily: 1-2 %, pivoți monthly · weekly: pivoți quarterly + Aceeași serie, aceeași scară; nivelurile 49.00 / 46.00 / 53.50 sunt construite. + \ No newline at end of file diff --git a/gen/strategii/buy_doji_perechi_tf.py b/gen/strategii/buy_doji_perechi_tf.py new file mode 100644 index 0000000..2951c5c --- /dev/null +++ b/gen/strategii/buy_doji_perechi_tf.py @@ -0,0 +1,214 @@ +#!/usr/bin/env python3 +"""Buy Doji — aceeași regulă pe trei perechi de timeframe-uri. + +Citește `gen/strategii/buy_doji_perechi_tf.spec.txt` și scrie +`gen/strategii/buy_doji_perechi_tf.svg`. Trei rânduri (weekly→daily, +monthly→weekly, daily→60 min); pe fiecare, stânga = TF mare (11 candele, +buy doji + confirmare), dreapta = TF mic (15 candele, pullback de 8 candele +la high-ul dojiului mare, doji acolo, confirmare, intrare). + +Rândul A e seria din spec; B și C se CALCULEAZĂ din A prin +p' = round(100 + f*(p - 100), 2), cu f = 2.5 și 0.4. Cifrele din desen ies +din serii, iar assert-urile le compară cu valorile afirmate în spec. +Coordonatele sunt absolute (fără ), ca audit_diagrams.py să +vadă pozițiile reale ale textelor. + +Rulare: python3 gen/strategii/buy_doji_perechi_tf.py +""" +from pathlib import Path + +OUT = Path(__file__).with_suffix(".svg") +W = 720 + +# --- seria A din spec: (open, high, low, close) ---------------------------- +BIG_A = [(122.0, 122.6, 119.4, 120.0), (120.0, 120.5, 117.0, 117.5), (117.5, 119.0, 117.1, 118.4), + (118.4, 118.8, 114.3, 114.8), (114.8, 115.3, 111.5, 112.0), (112.0, 113.4, 111.6, 112.9), + (112.9, 113.2, 109.1, 109.6), (109.6, 110.0, 106.3, 106.8), (106.8, 107.2, 103.6, 104.0), + (104.0, 105.2, 101.9, 103.8), # 9: doji + (103.8, 107.4, 103.5, 107.0)] # 10: confirmare +SMALL_A = [(107.0, 107.2, 106.4, 106.6), (106.6, 106.8, 106.0, 106.1), (106.1, 106.6, 105.95, 106.4), + (106.4, 106.5, 105.8, 105.9), (105.9, 106.0, 105.5, 105.6), (105.6, 105.95, 105.5, 105.8), + (105.8, 105.9, 105.4, 105.5), (105.5, 105.6, 105.25, 105.35), + (105.35, 105.75, 105.10, 105.40), # 8: doji la nivel + (105.40, 106.40, 105.30, 106.30), # 9: confirmare => intrare + (106.3, 107.0, 106.2, 106.9), (106.9, 107.5, 106.7, 107.4), (107.4, 107.55, 107.0, 107.2), + (107.2, 108.0, 107.1, 107.9), (107.9, 108.6, 107.8, 108.5)] + + +def scaled(bars, f): + return [tuple(round(100 + f * (p - 100), 2) for p in b) for b in bars] + + +# key, f, TF mare, TF mic, text sub rând, valori așteptate din spec +ROWS = [ + ("A", 1.0, "weekly", "daily", + "stop {p:.2f} % (pe weekly ar fi {pb:.2f} %) · 8 candele = 8 zile de bursă", + dict(dh=105.20, dl=101.90, conf=107.00, sdl=105.10, entry=106.30, sl=105.10, risk=1.20, + pct=1.13, tp=107.50, b_entry=107.00, b_sl=101.90, b_risk=5.10, b_pct=4.77)), + ("B", 2.5, "monthly", "weekly", + "stop {p:.2f} % (pe monthly ar fi {pb:.2f} %) · 8 candele = 8 săptămâni", + dict(dh=113.00, dl=104.75, conf=117.50, sdl=112.75, entry=115.75, sl=112.75, risk=3.00, + pct=2.59, tp=118.75, b_entry=117.50, b_sl=104.75, b_risk=12.75, b_pct=10.85)), + ("C", 0.4, "daily", "60 min", + "stop {p:.2f} % (pe daily ar fi {pb:.2f} %) · 8 candele ≈ 1,2 zile de bursă (7 bare/zi)", + dict(dh=102.08, dl=100.76, conf=102.80, sdl=102.04, entry=102.52, sl=102.04, risk=0.48, + pct=0.47, tp=103.00, b_entry=102.80, b_sl=100.76, b_risk=2.04, b_pct=1.98)), +] + + +def eq(a, b): + return abs(a - b) < 0.005 + + +def check(key, big, small, exp): + """Assert-urile obligatorii din spec, pe seriile calculate; întoarce nivelurile.""" + for name, bars in (("mare", big), ("mic", small)): + for i, (o, h, l, c) in enumerate(bars): + assert h >= max(o, c) and l <= min(o, c), f"{key} {name}[{i}] h/l incoerent" + if i: + assert eq(o, bars[i - 1][3]), f"{key} {name}[{i}] open != close precedent" + assert len(big) == 11 and len(small) == 15 + assert eq(small[0][0], big[10][3]), f"{key}: open mic[0] != close mare[10]" + for name, (o, h, l, c) in (("doji mare", big[9]), ("doji mic", small[8])): + assert abs(o - c) <= 0.10 * (h - l) + 1e-9, f"{key}: {name} nu e doji" + assert big[10][3] > big[9][1] and small[9][3] > small[8][1], f"{key}: fără confirmare" + sl = min(b[2] for b in small[6:10]) + assert eq(sl, small[8][2]), f"{key}: SL nu e low-ul dojiului mic" + entry = small[9][3] + risk = round(entry - sl, 2) + tp = round(entry + risk, 2) + first = next(i for i in range(10, 15) if small[i][1] >= tp - 1e-9) + assert first == 11, f"{key}: TP1 atins la {first}, nu la 11" + pct = risk / entry * 100 + b_entry, b_sl = big[10][3], big[9][2] + b_risk = round(b_entry - b_sl, 2) + b_pct = b_risk / b_entry * 100 + got = dict(dh=big[9][1], dl=big[9][2], conf=big[10][3], sdl=small[8][2], entry=entry, sl=sl, + risk=risk, pct=pct, tp=tp, b_entry=b_entry, b_sl=b_sl, b_risk=b_risk, b_pct=b_pct) + for k, v in exp.items(): + assert eq(round(got[k], 2), v), f"{key}: {k} = {got[k]:.4f}, spec {v}" + assert abs(small[8][2] - big[9][1]) / big[9][1] <= 0.005, f"{key}: doji mic nu e la nivel" + assert 4 <= b_pct / pct <= 5, f"{key}: raport stopuri {b_pct / pct:.2f} nu e 4-5x" + return got + + +# --- desen ------------------------------------------------------------------ +GREEN, RED, GRAY, INK = "#188a3e", "#c00", "#888", "#333" +PLOT_H = 160 # înălțimea zonei de preț, egală pe toate graficele +BX0, BGAP = 40, 16 # TF mare: x candele +SX0, SGAP = 392, 15 # TF mic +BODY_W = 9 +SL_X1, SL_X2 = 380, 614 # liniile de nivel pe graficul mic +COL_X = 620 # coloana cu etichetele de nivel ale graficului mic + +out = [] + + +def text(x, y, s, fill=INK, anchor="start", bold=False, size=None): + st = [] + if bold: + st.append("font-weight:bold") + if size: + st.append(f"font-size:{size}px") + style = f' style="{";".join(st)}"' if st else "" + a = f' text-anchor="{anchor}"' if anchor != "start" else "" + out.append(f'{s}') + + +def hline(x1, x2, y, color, dash): + out.append(f'') + + +def candles(bars, x0, gap, yf): + for i, (o, h, l, c) in enumerate(bars): + cx = x0 + i * gap + color = GREEN if c >= o else RED + out.append(f'') + top = yf(max(o, c)) + hh = max(yf(min(o, c)) - top, 1.6) + out.append(f'') + + +out.append('') +text(20, 22, "Aceeași regulă pe trei perechi — exemplu construit (fără ticker)", bold=True, size=14) + +y0 = 40 +ROW_H = 290 +for key, f, tf_big, tf_small, cap, exp in ROWS: + big, small = scaled(BIG_A, f), scaled(SMALL_A, f) + g = check(key, big, small, exp) + + # titlu rând + subtitluri + text(20, y0 + 14, f"{key}. {tf_big} → {tf_small}", bold=True, size=13) + text(BX0 - 16, y0 + 32, f"{tf_big}: direcția", fill="#555") + text(SL_X1, y0 + 32, f"{tf_small}: intrarea", fill="#555") + top = y0 + 50 + + # scară proprie pe fiecare grafic, constantă în interiorul lui + bmax = max(b[1] for b in big); bmin = min(b[2] for b in big) + smax = max(b[1] for b in small); smin = min(b[2] for b in small) + bs, ss = PLOT_H / (bmax - bmin), PLOT_H / (smax - smin) + yb = lambda p, t=top, m=bmax, s=bs: t + (m - p) * s # noqa: E731 + ys = lambda p, t=top, m=smax, s=ss: t + (m - p) * s # noqa: E731 + + # TF mare + hline(BX0 - 16, BX0 + 10 * BGAP + 12, yb(g["dh"]), GRAY, "3 3") + text(BX0 - 14, yb(g["dh"]) + 14, f"high doji {tf_big} {g['dh']:.2f}", fill="#666") + candles(big, BX0, BGAP, yb) + text(BX0 + 9 * BGAP, yb(g["dl"]) + 15, "doji", fill="#b06000", anchor="middle", bold=True) + text(BX0 + 10 * BGAP - 4, yb(big[10][2]) + 15, "confirmare: long permis", + fill=GREEN, bold=True) + + # zoom: de la close-ul confirmării mari la open-ul primei bare mici (același preț) + x1, y1 = BX0 + 10 * BGAP + 8, yb(g["conf"]) + x2, y2 = SX0 - 10, ys(g["conf"]) + out.append(f'') + text(300, y1 + 2, f"zoom pe {tf_small},", fill="#555") + text(300, y1 + 16, "după confirmare", fill="#555") + + # TF mic: niveluri + y_dh, y_e, y_sl, y_tp = ys(g["dh"]), ys(g["entry"]), ys(g["sl"]), ys(g["tp"]) + assert abs((y_sl - y_e) / (y_e - y_tp) - 1) < 1e-6, f"{key}: SL-intrare != intrare-TP1 în px" + hline(SL_X1, SL_X2, y_dh, GRAY, "3 3") + hline(SL_X1, SL_X2, y_e, GREEN, "6 3") + hline(SL_X1, SL_X2, y_sl, RED, "6 3") + hline(SL_X1, SL_X2, y_tp, GREEN, "2 3") + text(COL_X, y_tp + 4, f"TP1 1:1 {g['tp']:.2f}", fill=GREEN, size=11) + text(COL_X, y_e + 4, f"intrare {g['entry']:.2f}", fill=GREEN, size=11) + text(COL_X, y_dh - 5, f"high doji {g['dh']:.2f}", fill="#666", size=11) + text(COL_X, y_sl + 12, f"SL {g['sl']:.2f}", fill=RED, size=11) + text(COL_X, y_sl + 25, "= low 4 candele", fill=RED, size=11) + candles(small, SX0, SGAP, ys) + + # paranteză peste pullback-ul de 8 candele (barele 0..7) + yb8 = y_tp - 12 + xa, xb = SX0 - 5, SX0 + 7 * SGAP + 5 + out.append(f'') + text((xa + xb) / 2, yb8 - 5, "pullback: 8 candele", fill="#555", anchor="middle") + text(SX0 + 8 * SGAP + 4, y_sl + 15, "doji la nivel", fill="#b06000", anchor="end", bold=True) + text(SX0 + 9 * SGAP - 8, y_e - 5, "intrare", fill=GREEN, anchor="end", bold=True) + + # text sub rând + text(20, top + PLOT_H + 50, cap.format(p=g["pct"], pb=g["b_pct"]), fill=INK, bold=True) + print(f"{key}: doji mare {g['dh']:.2f}/{g['dl']:.2f} conf {g['conf']:.2f} | intrare {g['entry']:.2f} " + f"SL {g['sl']:.2f} risc {g['risk']:.2f} ({g['pct']:.2f} %) TP1 {g['tp']:.2f} | " + f"doar mare: risc {g['b_risk']:.2f} ({g['b_pct']:.2f} %)") + y0 += ROW_H + if key != "C": + out.append(f'') + +text(20, y0 + 4, "Cifre construite, aceeași formă scalată pe trei perechi.", fill="#555") +text(20, y0 + 21, "Procentele reale depind de simbol (LABU daily: stop 9 %).", fill="#555") +H = y0 + 32 + +svg = (f'\n ' + "\n ".join(out) + "\n") +assert "\n\n" not in svg +OUT.write_text(svg, encoding="utf-8") +print(f"scris {OUT} ({W}x{H:.0f})") diff --git a/gen/strategii/buy_doji_perechi_tf.spec.txt b/gen/strategii/buy_doji_perechi_tf.spec.txt new file mode 100644 index 0000000..870834a --- /dev/null +++ b/gen/strategii/buy_doji_perechi_tf.spec.txt @@ -0,0 +1,103 @@ +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. diff --git a/gen/strategii/buy_doji_perechi_tf.svg b/gen/strategii/buy_doji_perechi_tf.svg new file mode 100644 index 0000000..75d03d6 --- /dev/null +++ b/gen/strategii/buy_doji_perechi_tf.svg @@ -0,0 +1,236 @@ + + + Aceeași regulă pe trei perechi — exemplu construit (fără ticker) + A. weekly → daily + weekly: direcția + daily: intrarea + + high doji weekly 105.20 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe daily, + după confirmare + + + + + TP1 1:1 107.50 + intrare 106.30 + high doji 105.20 + SL 105.10 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 1.13 % (pe weekly ar fi 4.77 %) · 8 candele = 8 zile de bursă + + B. monthly → weekly + monthly: direcția + weekly: intrarea + + high doji monthly 113.00 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe weekly, + după confirmare + + + + + TP1 1:1 118.75 + intrare 115.75 + high doji 113.00 + SL 112.75 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 2.59 % (pe monthly ar fi 10.85 %) · 8 candele = 8 săptămâni + + C. daily → 60 min + daily: direcția + 60 min: intrarea + + high doji daily 102.08 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe 60 min, + după confirmare + + + + + TP1 1:1 103.00 + intrare 102.52 + high doji 102.08 + SL 102.04 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 0.47 % (pe daily ar fi 1.98 %) · 8 candele ≈ 1,2 zile de bursă (7 bare/zi) + Cifre construite, aceeași formă scalată pe trei perechi. + Procentele reale depind de simbol (LABU daily: stop 9 %). + \ No newline at end of file diff --git a/gen/strategii/buy_doji_scaner.py b/gen/strategii/buy_doji_scaner.py new file mode 100644 index 0000000..e1cf6f3 --- /dev/null +++ b/gen/strategii/buy_doji_scaner.py @@ -0,0 +1,138 @@ +#!/usr/bin/env python3 +"""Scanerul Buy Doji în TradeStation — ordinea filtrelor și capcanele. + +Schemă conceptuală (NU grafic de preț): pâlnie de cutii tot mai înguste, de +sus în jos; în dreapta fiecărei cutii, notele și capcanele ei (roșu). +Pentru `strategii/01_buy_doji.md`, Pasul 1. Spec: `buy_doji_scaner.spec.txt`. +Fără cifre de „câte simboluri rămân" — materialul nu le dă. + +Rulare: .venv/bin/python gen/strategii/buy_doji_scaner.py +""" +import html +import textwrap +from pathlib import Path + +OUT = Path(__file__).resolve().parent / "buy_doji_scaner.svg" + +W = 640 +BLACK, GRAY, RED, BLUE, GREEN = "#000000", "#666666", "#c00", "#1a5fb4", "#188a3e" +GREEN_BG, BOX_BG = "#eef7f0", "#eef3fb" + +BOX_CX = 165 # axa pâlniei (coloana stângă) +NOTE_X = 340 # începutul coloanei de note +NOTE_CHARS = 44 # wrap pentru note, la 12px +BOX_FS, NOTE_FS, LH = 13, 12, 16 +WIDTHS = [300, 280, 260, 240, 220, 200] + +# (linii în cutie, [(tip, text)]); tip: "n" = notă gri, "c" = capcană +BOXES = [ + (["Univers:", "All Stocks (~13.000)", "S&P 500 · Russell 3000"], + [("n", "mai mare = găsește mai mult, durează mai mult")]), + (["Trigger: jbtgrshdATM", "BDATM = 0", "(Sell Doji: SDATM = 0)"], + [("c", "Interval = TF-ul scanerului, setat manual"), + ("c", "0 = ultima candelă închisă; 1 = cu o zi în urmă")]), + (["Nivel: RSV1ATM", "% of PP ≤ 0.5 (60 min)", "% of PP ≤ 2 (daily)"], + [("n", "Pivot Interval: 2 = weekly (pe 60 min), 3 = monthly (pe daily)"), + ("c", "RS/SR = 1 la filtrare; cu 100, pragul se scrie ×100")]), + (["Lichiditate: Volume Colors", "Average Volume ≥ 500.000", + "Average Length = 10"], + [("n", "volum daily, indiferent de TF-ul scanerului")]), + (["Opțional:", "Since Bear ≥ 8", "Bull Reversal = 1", "RVOL doar Display"], + [("c", "Bear Reversal e selectat implicit — comută pe Bull"), + ("c", "în zile extreme, pragurile rigide golesc lista")]), + (["Lista de candidați", "→ o verifici pe grafic", "(pașii 2-6).", + "Scanerul nu e undă verde."], []), +] +FOOT = ("Delay: scanerul vede candela închisă — daily rulat la 12:00 " + "arată triggerul de ieri.") + + +def est_w(s, fs, bold=False): + return len(s) * fs * (0.60 if bold else 0.55) + + +def txt(x, y, s, fs, fill=BLACK, bold=False, anchor="start"): + return (f'{html.escape(s, quote=False)}') + + +svg, bboxes, rects = [], [], [] # bboxes: (x0, x1, ytop, ybot, text) + + +def put(x, y, s, fs, fill=BLACK, bold=False, anchor="start"): + w = est_w(s, fs, bold) + x0 = x - w / 2 if anchor == "middle" else x + bboxes.append((x0, x0 + w, y - fs * 0.8, y + fs * 0.25, s)) + svg.append(txt(x, y, s, fs, fill, bold, anchor)) + return x0, x0 + w + + +put(W / 2, 30, "Scanerul Buy Doji în TradeStation", 18, bold=True, anchor="middle") +put(W / 2, 52, "ordinea filtrelor și capcanele", 13, GRAY, anchor="middle") + +y = 76 +for i, (lines, notes) in enumerate(BOXES): + last = i == len(BOXES) - 1 + note_lines = [] + for kind, s in notes: + pre = "capcană: " if kind == "c" else "" + wrapped = textwrap.wrap(pre + s, NOTE_CHARS) + note_lines.append([(kind, ln) for j, ln in enumerate(wrapped)]) + n_note = sum(len(n) for n in note_lines) + max(0, len(note_lines) - 1) * 0.4 + h = max(len(lines), n_note) * LH + 20 + w = WIDTHS[i] + x = BOX_CX - w / 2 + rects.append((x, y, w, h)) + stroke, fill = (GREEN, GREEN_BG) if last else (BLUE, BOX_BG) + svg.append(f'') + ty = y + (h - len(lines) * LH) / 2 + 12 + for j, ln in enumerate(lines): + x0, x1 = put(BOX_CX, ty + j * LH, ln, BOX_FS, GREEN if last else BLACK, + bold=(j == 0), anchor="middle") + assert x0 >= x + 6 and x1 <= x + w - 6, f"textul nu încape în cutia {i}: {ln!r}" + if note_lines: + assert x + w + 24 <= NOTE_X, f"cutia {i} prea aproape de note" + svg.append(f'') + ny = y + (h - n_note * LH) / 2 + 12 + for group in note_lines: + for kind, ln in group: + put(NOTE_X, ny, ln, NOTE_FS, RED if kind == "c" else GRAY) + ny += LH + ny += 0.4 * LH + y += h + if not last: + svg.append(f'') + y += 18 + +y += 30 +for j, ln in enumerate(textwrap.wrap(FOOT, 88)): + put(20, y + j * LH, ln, 12.5, BLACK) +H = int(y + LH + 20) + +# ------------------------------------------------------------------ verificare +assert all(a > b for a, b in zip(WIDTHS, WIDTHS[1:])), "lățimile nu scad strict" +assert all(r1[2] > r2[2] for r1, r2 in zip(rects, rects[1:])) +for x0, x1, t, b, s in bboxes: + assert 0 <= x0 and x1 <= W and 0 <= t and b <= H, f"text în afara viewBox: {s!r}" +for a in range(len(bboxes)): + for b in range(a + 1, len(bboxes)): + p, q = bboxes[a], bboxes[b] + assert not (p[0] < q[1] and q[0] < p[1] and p[2] < q[3] and q[2] < p[3]), \ + f"texte suprapuse: {p[4]!r} / {q[4]!r}" +for x0, x1, t, b, s in bboxes: # notele nu intră în cutii + if x0 >= NOTE_X - 1: + assert all(x0 > rx + rw for rx, _, rw, _ in rects), f"notă peste cutie: {s!r}" + +out = "\n".join([ + f'', + f'', + *svg, ""]) + "\n" +assert "\n\n" not in out and not any(not ln.strip() for ln in out.splitlines()), "linie goală" +OUT.write_text(out, encoding="utf-8") +print(f"scris {OUT} ({W}x{H}), verificare OK") diff --git a/gen/strategii/buy_doji_scaner.spec.txt b/gen/strategii/buy_doji_scaner.spec.txt new file mode 100644 index 0000000..61fe780 --- /dev/null +++ b/gen/strategii/buy_doji_scaner.spec.txt @@ -0,0 +1,47 @@ +SPEC DIAGRAMĂ — buy_doji_scaner +=============================== +tip: SCHEMĂ (fără candele): pâlnie de filtre, de sus în jos +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 1 +cheie markdown: +titlu SVG: „Scanerul Buy Doji în TradeStation — ordinea filtrelor și capcanele" +stil: cutii dreptunghiulare stivuite, tot mai înguste (pâlnie), lățime 640; + în dreapta fiecărei cutii, o notă roșie „capcană" unde există. + Fără cifre de „câte simboluri rămân" — materialul nu le dă. + +CUTIILE (text exact, de sus în jos) +----------------------------------- +1. „Univers: All Stocks (~13.000) · S&P 500 · Russell 3000" + notă gri: „mai mare = găsește mai mult, durează mai mult" +2. „Trigger: jbtgrshdATM → BDATM = 0 (Sell Doji: SDATM = 0)" + capcană: „Interval = TF-ul scanerului, setat manual" + capcană: „0 = ultima candelă închisă; 1 = cu o zi în urmă" +3. „Nivel: RSV1ATM → % of PP ≤ 0.5 (60 min) / ≤ 2 (daily)" + notă: „Pivot Interval: 2 = weekly (pe 60 min), 3 = monthly (pe daily)" + capcană: „RS/SR = 1 la filtrare; cu 100, pragul se scrie ×100" +4. „Lichiditate: Volume Colors → Average Volume ≥ 500.000, Average Length = 10" + notă: „volum daily, indiferent de TF-ul scanerului" +5. „Opțional: Since Bear ≥ 8 · Bull Reversal = 1 · RVOL doar Display" + capcană: „Bear Reversal e selectat implicit — comută pe Bull" + capcană: „în zile extreme, pragurile rigide golesc lista" +6. (cutie verde, cea mai îngustă) „Lista de candidați → o verifici pe grafic + (pașii 2-6). Scanerul nu e undă verde." +Sub pâlnie, o linie: „Delay: scanerul vede candela închisă — daily rulat la +12:00 arată triggerul de ieri." + +ASSERT-URI +---------- +1. Fiecare cutie e mai îngustă decât cea de deasupra (lățimi strict descrescătoare). +2. Niciun text nu iese din viewBox (bbox text în interiorul SVG-ului) și nicio + notă nu se suprapune cu alta (verificare pe bbox-uri, nu din ochi). +3. Fără linie goală în SVG. + +SURSA +----- +- Univers și durată: summaries/03_MODUL_2/11_construire_scanere_sf_byd_sld.md:53-57. +- Trigger, Interval, Load Additional Data: :58-62; „= 0": summaries/09_QA/28_2025-05-27.md:47-52. +- RSV1ATM, Pivot Interval: :63-69; praguri :99-104; RS/SR: :80-97 și + summaries/04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341. +- Volum: :70-73. Since Bear: summaries/09_QA/28_2025-05-27.md:37-46. +- Bull/Bear Reversal, RVOL: summaries/04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:19-28, + implicit Bear :343-346; praguri rigide :303-327. +- Delay: summaries/03_MODUL_2/11_construire_scanere_sf_byd_sld.md:321-324. diff --git a/gen/strategii/buy_doji_scaner.svg b/gen/strategii/buy_doji_scaner.svg new file mode 100644 index 0000000..f45248f --- /dev/null +++ b/gen/strategii/buy_doji_scaner.svg @@ -0,0 +1,57 @@ + + +Scanerul Buy Doji în TradeStation +ordinea filtrelor și capcanele + +Univers: +All Stocks (~13.000) +S&P 500 · Russell 3000 + +mai mare = găsește mai mult, durează mai +mult + + +Trigger: jbtgrshdATM +BDATM = 0 +(Sell Doji: SDATM = 0) + +capcană: Interval = TF-ul scanerului, setat +manual +capcană: 0 = ultima candelă închisă; 1 = cu +o zi în urmă + + +Nivel: RSV1ATM +% of PP ≤ 0.5 (60 min) +% of PP ≤ 2 (daily) + +Pivot Interval: 2 = weekly (pe 60 min), 3 = +monthly (pe daily) +capcană: RS/SR = 1 la filtrare; cu 100, +pragul se scrie ×100 + + +Lichiditate: Volume Colors +Average Volume ≥ 500.000 +Average Length = 10 + +volum daily, indiferent de TF-ul scanerului + + +Opțional: +Since Bear ≥ 8 +Bull Reversal = 1 +RVOL doar Display + +capcană: Bear Reversal e selectat implicit — +comută pe Bull +capcană: în zile extreme, pragurile rigide +golesc lista + + +Lista de candidați +→ o verifici pe grafic +(pașii 2-6). +Scanerul nu e undă verde. +Delay: scanerul vede candela închisă — daily rulat la 12:00 arată triggerul de ieri. + diff --git a/gen/strategii/buy_doji_stop.py b/gen/strategii/buy_doji_stop.py new file mode 100644 index 0000000..c363e30 --- /dev/null +++ b/gen/strategii/buy_doji_stop.py @@ -0,0 +1,130 @@ +"""Buy Doji — unde pui stopul: 4 candele înapoi, sub structură (exemplu construit). + +Citește specificația `gen/strategii/buy_doji_stop.spec.txt`. Două panouri +stivuite, aceeași serie 0-14 ca buy_doji_transe (downtrend, doji 12, +1 13, +confirmare 14). Sus: numărătoarea celor 4 candele (1 = confirmarea). Jos: +același trade, stop „la ochi" 52.90 față de stopul din regulă 51.55. +""" +import re +import sys; sys.path.insert(0, "/workspace/atm-curs-dl") +from svg_candles import Candle, Chart, Level, Mark + +OUT = "/workspace/atm-curs-dl/gen/strategii/buy_doji_stop.svg" + +# --- seria: barele 0-14 exact ca în buy_doji_transe.spec.txt ----------------- +closes = [60.40, 59.60, 59.90, 58.80, 58.10, 58.40, 57.20, 56.30, 56.60, + 55.30, 54.20, 52.40] +bars, o = [], 61.00 +for c in closes: # fitile implicite 0.15 peste/sub corp + bars.append((o, max(o, c) + 0.15, min(o, c) - 0.15, c)) + o = c +bars += [(52.40, 53.00, 51.60, 52.30), # 12 doji + (52.30, 52.85, 52.10, 52.60), # 13 +1 + (52.60, 53.85, 52.45, 53.70)] # 14 confirmare +after = [(53.70, 53.75, 52.70, 52.90), # 15 lovește stopul la ochi + (52.90, 53.05, 52.00, 52.20), # 16 al doilea picior, higher low + (52.20, 53.40, 52.10, 53.30), + (53.30, 54.30, 53.20, 54.20), + (54.20, 55.10, 54.10, 55.00), + (55.00, 56.00, 54.90, 55.95)] # 20 TP1 +full = bars + after +o_, h_, l_, c_ = (list(x) for x in zip(*full)) + +ENTRY, SL, OCHI, TP1, LOW4 = 53.70, 51.55, 52.90, 55.85, 51.60 + +# --- assert-urile din spec --------------------------------------------------- +for i in range(1, len(full)): # 1 + assert abs(o_[i] - c_[i - 1]) < 1e-9, f"open[{i}] != close[{i-1}]" +for i in range(len(full)): + assert l_[i] <= min(o_[i], c_[i]) and h_[i] >= max(o_[i], c_[i]), f"bara {i}" +assert min(l_[11:15]) == min(l_[10:15]) == LOW4 # 2 +assert l_.index(LOW4) == 12, "cel mai jos low nu e dojiul" +assert round(LOW4 - 0.05, 2) == SL +assert min(l_[15:21]) == 52.00 and SL < 52.00 < OCHI # 3 +assert next(i for i in range(15, 21) if l_[i] <= OCHI) == 15 # 4 +assert all(l_[i] > SL for i in range(15, 21)) +assert next(i for i in range(15, 21) if h_[i] >= TP1) == 20 # 5 +assert 52.00 > LOW4 # 6 +assert round(ENTRY - OCHI, 2) == 0.80 and c_[14] == ENTRY +assert round(ENTRY + (ENTRY - SL), 2) == TP1 + +GREY, RED, ORANGE, GREEN, BLUE = "#555", "#c00", "#b06000", "#188a3e", "#1a5fb4" +W = 640 +common: dict = dict(scale=34.0, gap=18, body_w=10, left=44, width=W) + + +def mk(n): + return [Candle(*b) for b in full[:n]] + + +# --- panoul de sus: numărătoarea --------------------------------------------- +top = Chart( + candles=mk(15), + levels=[Level(LOW4, "cel mai jos low: 51.60 (doji)", GREY, "2 2", "left"), + Level(SL, "SL 51.55", RED, "4 3")], + # fără Mark pe doji: la gap 18 eticheta calcă pe bara 11; îl numește + # paranteza de dedesubt și cercul de pe low + marks=[Mark(14, "confirmare 53.70", GREEN, "above")], + title="Unde pui stopul: 4 candele înapoi, sub structură — exemplu construit", + **common, +) +svg_top = top.render() +# numerele 4 3 2 1 + (5) sub bare, bandă de evidențiere, paranteză +yb = top._y(SL) + 18 # rândul cu numere, sub linia de SL +x = top._cx +extra_top = [ + f'', + f'', +] +for i, n in zip(range(11, 15), "4321"): + extra_top.append(f'{n}') +extra_top.append(f'(5)') +yp = yb + 8 +extra_top.append(f'') +extra_top.append(f'' + f'ultimele 4 candele (3 = doji, 1 = confirmarea)') +extra_top.append(f'' + f'Cu 4 sau cu 5 candele iese la fel: în downtrend low-ul dojiului ' + f'e oricum cel mai jos. SL = 51.60 − 0.05.') +h_top = yp + 40 + +# --- panoul de jos: același trade, două stopuri ------------------------------- +bot = Chart( + candles=mk(21), + levels=[Level(TP1, "TP1 55.85", GREEN, "2 2"), + Level(ENTRY, "intrare 53.70", GREY, "4 3"), + Level(OCHI, "stop la ochi 52.90 — lovit", ORANGE, "4 3"), + Level(SL, "SL din regulă 51.55 — ținut", RED, "4 3")], + marks=[Mark(16, "al doilea picior: 52.00, higher low", BLUE, "below", dy=10), + Mark(20, "TP1", GREEN, "above")], + title="Același trade: stop la ochi (0.80 sub intrare) vs stop din regulă", + caption="Barele 15-20 și stopul la ochi sunt construite, pentru contrast.", + top=h_top + 10 + 34, # panoul de jos începe sub cel de sus, fără + **common, +) +svg_bot = bot.render() +extra_bot = [ + f'', +] + + +# header-ul (viewBox) e al panoului de jos: el conține și offset-ul celui de sus +svg = "\n ".join([ + svg_bot.split(">", 1)[0] + ">", + svg_top.split(">", 1)[1].rsplit("", 1)[0].strip(), *extra_top, + f'', + svg_bot.split(">", 1)[1].rsplit("", 1)[0].strip(), *extra_bot, +]) + "\n" +H = float(re.search(r'viewBox="0 0 \d+ ([\d.]+)"', svg).group(1)) +assert " +titlu SVG: „Unde pui stopul: 4 candele înapoi, sub structură — exemplu construit" +stil: ca buy_doji_transe (aceleași bare 0-14, copiate sau importate). + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Sus: cum numeri cele 4 candele (confirmarea și cele 3 dinainte), și de ce +în downtrend nu contează dacă numeri 4 sau 5: low-ul dojiului e oricum cel +mai jos. Jos: același trade, cu un stop pus „la ochi" (52.90, sub intrare +cu 0.80) față de stopul din regulă (51.55). Piciorul al doilea coboară la +52.00: lovește stopul la ochi, nu atinge stopul din regulă; apoi prețul +ajunge la TP1. + +SERIA +----- +Barele 0-14: identice cu buy_doji_transe (downtrend, doji 12, +1 13, +confirmare 14). +Panoul de sus: doar barele 0-14 (se oprește la intrare). +Panoul de jos: barele 0-14, apoi: +15 (53.70, 53.75, 52.70, 52.90) +16 (52.90, 53.05, 52.00, 52.20) <- al doilea picior, higher low 52.00 +17 (52.20, 53.40, 52.10, 53.30) +18 (53.30, 54.30, 53.20, 54.20) +19 (54.20, 55.10, 54.10, 55.00) +20 (55.00, 56.00, 54.90, 55.95) <- TP1 55.85 atins + +MARKS / NIVELURI +---------------- +Sus: numerotare „4 3 2 1" sub barele 11, 12, 13, 14 (1 = confirmarea); +paranteză „ultimele 4 candele"; Level 51.60 „cel mai jos low: 51.60 (doji)"; +Level 51.55 roșu „SL 51.55". +Jos: Level 52.90 portocaliu „stop la ochi 52.90 — lovit"; Level 51.55 roșu +„SL din regulă 51.55 — ținut"; Level 55.85 verde punctat „TP1 55.85"; +Mark(16, "al doilea picior: 52.00, higher low", below). + +ASSERT-URI +---------- +1. open[i] == close[i-1] pe barele 15-20; h/l cuprind o/c. +2. min(l[11:15]) == min(l[10:15]) == 51.60 (4 sau 5 candele: același rezultat). +3. min(l[15:21]) == 52.00; 52.00 < 52.90 și 52.00 > 51.55. +4. primul i>14 cu low <= 52.90 este 15; niciun low din 15-20 <= 51.55. +5. primul i>14 cu high >= 55.85 este 20. +6. 52.00 > 51.60 (al doilea picior e higher low). + +SURSA +----- +- SL = extrema ultimelor 4 candele de la confirmare: summaries/03_MODUL_2/13_strategia_3_byh.md:192-193; + în practică swing low-ul: summaries/09_QA/22_2025-08-04.md:23-29. +- Stopul sub structură, nu „undeva jos"; bottom-ul mai poate face un picior: + summaries/08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md:833-836. +- Stopul „la ochi" 52.90 și barele 15-20 sunt CONSTRUITE (contrast). diff --git a/gen/strategii/buy_doji_stop.svg b/gen/strategii/buy_doji_stop.svg new file mode 100644 index 0000000..66765ae --- /dev/null +++ b/gen/strategii/buy_doji_stop.svg @@ -0,0 +1,104 @@ + + Unde pui stopul: 4 candele înapoi, sub structură — exemplu construit + + cel mai jos low: 51.60 (doji) + + SL 51.55 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + 4 + 3 + 2 + 1 + (5) + + ultimele 4 candele (3 = doji, 1 = confirmarea) + Cu 4 sau cu 5 candele iese la fel: în downtrend low-ul dojiului e oricum cel mai jos. SL = 51.60 − 0.05. + + Același trade: stop la ochi (0.80 sub intrare) vs stop din regulă + + TP1 55.85 + + intrare 53.70 + + stop la ochi 52.90 — lovit + + SL din regulă 51.55 — ținut + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + al doilea picior: 52.00, higher low + TP1 + Barele 15-20 și stopul la ochi sunt construite, pentru contrast. + + \ No newline at end of file diff --git a/gen/strategii/buy_doji_transe.py b/gen/strategii/buy_doji_transe.py new file mode 100644 index 0000000..0ff9598 --- /dev/null +++ b/gen/strategii/buy_doji_transe.py @@ -0,0 +1,132 @@ +"""Buy Doji — intrarea în trei tranșe (exemplu construit, doji 53.00 / 51.60). + +Citește specificația `gen/strategii/buy_doji_transe.spec.txt`. Barele 0-14 +sunt aceleași ca în buy_doji_stop.py. Nivelurile de 1/3 și 1/2 se calculează +din corpul candelei de confirmare, nu se scriu de mână. +""" +import re +import sys; sys.path.insert(0, "/workspace/atm-curs-dl") +from svg_candles import Candle, Chart, Level, Mark + +OUT = "/workspace/atm-curs-dl/gen/strategii/buy_doji_transe.svg" + +# --- seria: barele 0-14 identice cu buy_doji_stop.py -------------------------- +closes = [60.40, 59.60, 59.90, 58.80, 58.10, 58.40, 57.20, 56.30, 56.60, + 55.30, 54.20, 52.40] +bars, o = [], 61.00 +for c in closes: # fitile implicite 0.15 peste/sub corp + bars.append((o, max(o, c) + 0.15, min(o, c) - 0.15, c)) + o = c +bars += [(52.40, 53.00, 51.60, 52.30), # 12 doji + (52.30, 52.85, 52.10, 52.60), # 13 +1 + (52.60, 53.85, 52.45, 53.70), # 14 confirmare + (53.70, 53.80, 53.10, 53.45), # 15 umple 1/3 și 1/2 + (53.45, 54.20, 53.35, 54.10), + (54.10, 54.85, 54.00, 54.70), + (54.70, 56.00, 54.60, 55.90)] # 18 TP1 +o_, h_, l_, c_ = (list(x) for x in zip(*bars)) + +# --- nivelurile, calculate din corpul barei 14 --------------------------------- +op, T1 = o_[14], c_[14] +corp = T1 - op +T2, T3 = round(T1 - corp / 3, 2), round(T1 - corp / 2, 2) +MED = round((T1 + T2 + T3) / 3, 2) +SL = round(min(l_[11:15]) - 0.05, 2) +TP1 = round(T1 + (T1 - SL), 2) + +# --- assert-urile din spec ----------------------------------------------------- +for i in range(1, len(bars)): # 1 + assert abs(o_[i] - c_[i - 1]) < 1e-9, f"open[{i}] != close[{i-1}]" +for i in range(len(bars)): + assert l_[i] <= min(o_[i], c_[i]) and h_[i] >= max(o_[i], c_[i]), f"bara {i}" +assert abs(o_[12] - c_[12]) <= 0.10 * (h_[12] - l_[12]) + 1e-9 # 2 +assert c_[13] <= h_[12] < c_[14] and h_[12] == 53.00 +assert min(l_[11:15]) == l_[12] == 51.60 and SL == 51.55 # 3 +assert (op, T1) == (52.60, 53.70) and (T2, T3) == (53.33, 53.15) # 4 +assert l_[15] <= T3 < T2 # 5 +assert MED == 53.39 and round(MED - SL, 2) == 1.84 # 6 +assert round(T1 - SL, 2) == 2.15 +assert TP1 == 55.85 # 7 +assert next(i for i in range(15, len(bars)) if h_[i] >= TP1) == 18 +hi, lo = h_[14], l_[14] # 8 +assert round(hi - (hi - lo) / 3, 2) == 53.38 and round((hi + lo) / 2, 2) == T3 + +GREY, RED, ORANGE, GREEN, BLUE = "#555", "#c00", "#b06000", "#188a3e", "#1a5fb4" +W = 780 +ch = Chart( + candles=[Candle(*b) for b in bars], + levels=[Level(TP1, f"TP1 {TP1:.2f} = 1R de la close", GREEN, "2 2"), + Level(SL, f"SL {SL:.2f} (low 4 candele 51.60, minus 5 cenți)", RED, "4 3")], + marks=[Mark(14, f"confirmare {T1:.2f}", GREEN, "above", dy=-38)], + title="Intrarea în trei tranșe — daily, exemplu construit (doji 53.00 / 51.60)", + scale=58.0, gap=18, body_w=10, left=44, width=W, +) +svg = ch.render() +y, x = ch._y, ch._cx +ex = [] + +# linia de ghidaj de la confirmare la eticheta ei (eticheta stă sus, peste bara 17) +ex.append(f'') + +# cele trei tranșe: linii de la bara 13 până la paranteza corpului +XB = 404 # paranteza corpului barei 14 +for p, col, dash in ((T1, GREEN, ""), (T2, ORANGE, "3 3"), (T3, ORANGE, "3 3")): + d = f' stroke-dasharray="{dash}"' if dash else "" + ex.append(f'') +# paranteza: open 52.60 → close 53.70, cu diviziuni la 1/3 și 1/2 +ex.append(f'') +ex.append(f'') +ex.append(f'') + +# etichetele, răsfirate la dreapta, cu linii de ghidaj +yc, XL = y((T1 + T3) / 2), 440 +labels = [(T1, f"1/3 la close {T1:.2f}", GREEN, ""), + (MED, f"medie {MED:.2f} → risc {MED - SL:.2f} pe acțiune (tot la close: {T1 - SL:.2f})", "#777", "2 2"), + (T2, f"1/3 la 1/3 din corp {T2:.2f}", ORANGE, "3 3"), + (T3, f"1/3 la 1/2 din corp {T3:.2f}", ORANGE, "3 3"), + (op, f"corp: open {op:.2f} → close {T1:.2f} = {corp:.2f}", GREY, "")] +for k, (p, txt, col, dash) in enumerate(labels): + ly = yc + (k - 1.5) * 22 + d = f' stroke-dasharray="{dash}"' if dash else "" + ex.append(f'') + ex.append(f'{txt}') + +# umpleri: T1 la close-ul barei 14, T2 și T3 pe low-ul barei 15; TP1 pe bara 18 +for i, p, col in ((14, T1, GREEN), (15, T2, ORANGE), (15, T3, ORANGE), (18, TP1, GREEN)): + ex.append(f'') + +# etichetele de sub candele, pe rânduri (Mark "below" le-ar pune pe același rând) +yb = y(SL) + 20 +rows = [(15, f"low {l_[15]:.2f}: umple T2 și T3", ORANGE), + (13, f"+1: {c_[13]:.2f}, sub high", GREY), + (12, f"doji {h_[12]:.2f} / {l_[12]:.2f}", BLUE)] +for r, (i, txt, col) in enumerate(rows): + ry = yb + 16 * r + ex.append(f'') + ex.append(f'{txt}') + +# legenda, pe două rânduri +ly = yb + 16 * len(rows) + 14 +ex.append(f'Măsurat pe corp (open {op:.2f} → close {T1:.2f}). ' + f'Măsurat pe toată candela ({lo:.2f} → {hi:.2f}), 1/3 ar fi ' + f'{hi - (hi - lo) / 3:.2f}; 1/2 iese tot {(hi + lo) / 2:.2f}.') +ex.append(f'Stopul e unul singur, pentru toată ' + f'poziția. Barele 0-11 și 15-18 sunt construite.') +H = ly + 17 + 12 + +body = svg.rsplit("", 1)[0].rstrip() +svg = "\n ".join([body, *ex]) + "\n" +svg = re.sub(r'viewBox="0 0 (\d+) [\d.]+"', rf'viewBox="0 0 \1 {H:.0f}"', svg, count=1) +assert " +titlu SVG: „Intrarea în trei tranșe — daily, exemplu construit (doji 53.00 / 51.60)" +stil: candele lipite (gap 15-18, body_w 9-10), fără volum; + open = close anterior, fitile implicite 0.15 peste/sub corp la barele 0-11. + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Pe candela de confirmare: o treime din poziție la close (53.70), o treime +cu limit la 1/3 din corp (53.33), o treime cu limit la 1/2 (53.15). Bara de +după coboară până la 53.10 și le umple pe amândouă. Stopul e unul singur. +Prețul mediu 53.39 → risc 1.84 pe acțiune, față de 2.15 cu tot la close. + +SERIA (19 bare, (o,h,l,c)) +-------------------------- +open[0] = 61.00; close-uri 0-11 (downtrend de 12 candele): +60.40, 59.60, 59.90, 58.80, 58.10, 58.40, 57.20, 56.30, 56.60, 55.30, 54.20, 52.40 +12 doji (52.40, 53.00, 51.60, 52.30) +13 +1 (52.30, 52.85, 52.10, 52.60) close sub 53.00: încă nimic +14 confirmare (52.60, 53.85, 52.45, 53.70) close peste 53.00: Buy Doji +15 (53.70, 53.80, 53.10, 53.45) umple 1/3 și 1/2 +16 (53.45, 54.20, 53.35, 54.10) +17 (54.10, 54.85, 54.00, 54.70) +18 (54.70, 56.00, 54.60, 55.90) atinge TP1 55.85 (a 4-a după intrare) + +NIVELURI +-------- +T1 53.70 verde „1/3 la close 53.70" +T2 53.33 portocaliu punctat „1/3 la 1/3 din corp 53.33" +T3 53.15 portocaliu punctat „1/3 la 1/2 din corp 53.15" +preț mediu 53.39 gri punctat „medie 53.39" +SL 51.55 roșu „SL 51.55 (low 4 candele 51.60, minus 5 cenți)" +TP1 55.85 verde punctat „TP1 55.85 = 1R de la close" + +MARKS +----- +Mark(12, "doji 53.00 / 51.60"), Mark(13, "+1: 52.60, sub high"), +Mark(14, "confirmare 53.70"), Mark(15, "low 53.10: umple T2 și T3", below) + +LEGENDĂ +------- +„Măsurat pe corp (open 52.60 → close 53.70). Măsurat pe toată candela +(52.45 → 53.85), 1/3 ar fi 53.38; 1/2 iese tot 53.15." + +ASSERT-URI +---------- +1. open[i] == close[i-1]; h/l cuprind o/c. +2. doji: abs(o-c) <= 0.10*(h-l); close[13] <= 53.00 < close[14]. +3. min(l[11:15]) == 51.60 (low-ul dojiului e cel mai jos din 4); SL == 51.55. +4. corp = 53.70 - 52.60; round(53.70 - corp/3, 2) == 53.33; round(53.70 - corp/2, 2) == 53.15. +5. low[15] <= 53.15 (ambele limit-uri umplute). +6. round((53.70+53.33+53.15)/3, 2) == 53.39; round(53.39-51.55, 2) == 1.84; + round(53.70-51.55, 2) == 2.15. +7. TP1 == 53.70 + 2.15 == 55.85; primul i>14 cu high >= 55.85 este 18. +8. round(53.85 - (53.85-52.45)/3, 2) == 53.38; (53.85+52.45)/2 == 53.15. + +SURSA +----- +- Doji 53.00/51.60, close 52.60 apoi 53.70, SL 51.55, TP1 55.85 atins la a 4-a: + summaries/08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md:136-144 (exemplu construit + al sumarului; seria de aici îl redesenează cu aceleași niveluri). +- Tranșele 1/3 la close, 1/3 la 1/3, 1/3 la 1/2: summaries/09_QA/23_2025-07-29.md:206-213; + transcripts/09_Q_and_A/19_08092025.txt:1067-1073 (citat în A3_intrarea.md:276-279). +- Măsurat de la low sau de la open: summaries/09_QA/20_2025-08-25.md:178-180; + „Iei high-ul și low-ul și calculezi": summaries/09_QA/23_2025-07-29.md:210-211. +- Barele 0-11 și 15-18 sunt CONSTRUITE. diff --git a/gen/strategii/buy_doji_transe.svg b/gen/strategii/buy_doji_transe.svg new file mode 100644 index 0000000..79c3ac2 --- /dev/null +++ b/gen/strategii/buy_doji_transe.svg @@ -0,0 +1,75 @@ + + Intrarea în trei tranșe — daily, exemplu construit (doji 53.00 / 51.60) + + TP1 55.85 = 1R de la close + + SL 51.55 (low 4 candele 51.60, minus 5 cenți) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + + + + + + + 1/3 la close 53.70 + + medie 53.39 → risc 1.84 pe acțiune (tot la close: 2.15) + + 1/3 la 1/3 din corp 53.33 + + 1/3 la 1/2 din corp 53.15 + + corp: open 52.60 → close 53.70 = 1.10 + + + + + + low 53.10: umple T2 și T3 + + +1: 52.60, sub high + + doji 53.00 / 51.60 + Măsurat pe corp (open 52.60 → close 53.70). Măsurat pe toată candela (52.45 → 53.85), 1/3 ar fi 53.38; 1/2 iese tot 53.15. + Stopul e unul singur, pentru toată poziția. Barele 0-11 și 15-18 sunt construite. + \ No newline at end of file diff --git a/gen/strategii/buy_doji_trend.py b/gen/strategii/buy_doji_trend.py new file mode 100644 index 0000000..b29ca56 --- /dev/null +++ b/gen/strategii/buy_doji_trend.py @@ -0,0 +1,117 @@ +"""Buy Doji — trendul dinaintea dojiului: 9 candele vs. 3 candele (exemplu construit). + +Citește specificația `gen/strategii/buy_doji_trend.spec.txt`. Două panouri +stivuite, aceeași scară și dojiul pe aceeași verticală, ca să se compare +direct: sus downtrend de 9 candele (ideal), jos range + 3 candele (acceptat, +semnal mai slab, scannerul cu Since Bear ≥ 8 nu-l găsește). Candelele +trendului sunt numerotate sub bară, ca numărătoarea să se vadă. +""" +import re +import sys; sys.path.insert(0, "/workspace/atm-curs-dl") +from svg_candles import Candle, Chart, Mark + +OUT = "/workspace/atm-curs-dl/gen/strategii/buy_doji_trend.svg" +DOJI = (49.65, 50.10, 49.20, 49.60) +CONF = (49.60, 50.55, 49.45, 50.40) + + +def series(start, closes): + """Fitile implicite 0.15 peste/sub corp; open = close anterior.""" + bars, o = [], start + for c in closes: + bars.append((o, max(o, c) + 0.15, min(o, c) - 0.15, c)) + o = c + return bars + [DOJI, CONF] + + +L = series(55.50, [55.00, 54.30, 54.60, 53.60, 52.90, 53.10, 52.00, 51.20, 50.60, 49.65]) +R = series(51.40, [51.70, 51.20, 51.60, 51.10, 51.50, 51.30, 51.70, 51.40, 50.90, 50.30, 49.65]) + +# --- assert-urile din spec --------------------------------------------------- +for bars in (L, R): # 1 + for i, (o, h, l, c) in enumerate(bars): + assert l <= min(o, c) and h >= max(o, c), f"bara {i}" + if i: + assert abs(o - bars[i - 1][3]) < 1e-9, f"open[{i}] != close[{i-1}]" +assert L[10] == R[11] == DOJI # 2 +assert abs(DOJI[0] - DOJI[3]) <= 0.10 * (DOJI[1] - DOJI[2]) +cL = [b[3] for b in L]; cR = [b[3] for b in R] +assert cL[9] < cL[0] - 5 and cL[9] == min(cL[0:10]) # 3 +assert sum(cL[i] < cL[i - 1] for i in range(1, 10)) >= 6 +assert max(cR[0:8]) - min(cR[0:8]) <= 0.60 + 1e-9 # 4 +assert cR[8] > cR[9] > cR[10] +assert L[11][3] > DOJI[1] and R[12][3] > DOJI[1] and L[11][3] == 50.40 # 5 + +GREY, GREEN, BLUE, ORANGE, RED = "#555", "#188a3e", "#1a5fb4", "#b06000", "#c00" +W, GAP = 540, 18 +common: dict = dict(scale=30.0, gap=GAP, body_w=10, width=W) + + +def numbers(ch, idx, color): + """Numără candelele trendului: 1, 2, 3... sub fiecare bară.""" + return [f'{n}' + for n, i in enumerate(idx, 1)] + + +def bracket(ch, a, b, y, text, color): + xa, xb = ch._cx(a) - 6, ch._cx(b) + 6 + return [f'', + f'{text}'] + + +def body(svg): + return svg.split(">", 1)[1].rsplit("", 1)[0].strip() + + +# --- panoul de sus: 9 candele ------------------------------------------------ +top = Chart(candles=[Candle(*b) for b in L], left=44 + GAP, # dojiul pe aceeași verticală + marks=[Mark(10, "doji", ORANGE, "below", dy=8), + Mark(11, "confirmare 50.40", GREEN, "above")], + title="Trendul dinaintea dojiului: 9 candele vs. 3 candele — exemplu construit", + **common) +svg_top = top.render() +y_br = top._y(max(b[1] for b in L[1:10])) - 10 +ext_top = numbers(top, range(1, 10), RED) + bracket(top, 1, 9, y_br, "downtrend 9 candele", RED) +y_cap1 = top._y(DOJI[2]) + 50 +ext_top.append(f'' + f'DA — ideal (8-10 candele)') + +# --- panoul de jos: range + 3 candele ---------------------------------------- +y_sep = y_cap1 + 16 +bot = Chart(candles=[Candle(*b) for b in R], left=44, + marks=[Mark(11, "doji", ORANGE, "below", dy=8), + Mark(12, "confirmare 50.40", GREEN, "above")], + top=int(y_sep + 62), **common) # titlul și paranteza range-ului, desenate mai jos +svg_bot = bot.render() +y_rg = bot._y(max(b[1] for b in R[0:8])) - 10 +ext_bot = (numbers(bot, range(8, 11), RED) + + bracket(bot, 8, 10, bot._y(R[8][1]) - 10, "doar 3 candele", RED) + + bracket(bot, 0, 7, y_rg, "", GREY) + + [f'' + f'Același doji, după un range', + f'' + f'range: nu se numără']) +y_cap2 = bot._y(DOJI[2]) + 50 +ext_bot += [f'' + f'ACCEPTAT, semnal mai slab', + f'' + f'scannerul cu Since Bear ≥ 8 nu-l vede'] +H = y_cap2 + 30 + +# dojiul e aceeași bară, la aceeași scară, în același loc pe orizontală +assert abs(top._cx(10) - bot._cx(11)) < 1e-9 and top.scale == bot.scale + +svg = "\n ".join([ + f'', + body(svg_top), *ext_top, + f'', + body(svg_bot), *ext_bot, +]) + "\n" +assert "\n\n" not in svg, "linie goală în SVG" +with open(OUT, "w") as f: + f.write(svg) +print(f"scris {OUT} ({W}x{H:.0f})") diff --git a/gen/strategii/buy_doji_trend.spec.txt b/gen/strategii/buy_doji_trend.spec.txt new file mode 100644 index 0000000..182b198 --- /dev/null +++ b/gen/strategii/buy_doji_trend.spec.txt @@ -0,0 +1,52 @@ +SPEC DIAGRAMĂ — buy_doji_trend +============================== +tip: PRET, două panouri alăturate (sau stivuite pe mobil) +destinație: summaries/17_STRATEGII/01_buy_doji.md, Pasul 3, după doji_forma +cheie markdown: +titlu SVG: „Trendul dinaintea dojiului: 9 candele vs. 3 candele — exemplu construit" +stil: candele lipite (gap 15-18, body_w 9-10), fără volum; open = close anterior; + fitile implicite 0.15 peste/sub corp, cu excepțiile de mai jos. + +CE TREBUIE SĂ DEMONSTREZE +------------------------- +Același doji (h 50.10 / l 49.20) și aceeași confirmare (close 50.40), după +două trenduri diferite. Stânga = ideal (9 candele). Dreapta = acceptat, dar +semnal mai slab (3 candele după un range) — și e cazul pe care scannerul cu +„Since Bear ≥ 8" nu-l găsește. + +PANOUL STÂNGA — 12 bare +----------------------- +open[0] = 55.50; close-uri 0-9: 55.00, 54.30, 54.60, 53.60, 52.90, 53.10, 52.00, +51.20, 50.60, 49.65 (barele 1-9 = trendul de 9 candele) +10 doji (49.65, 50.10, 49.20, 49.60) +11 confirmare (49.60, 50.55, 49.45, 50.40) +Mark(1..9 paranteză, "downtrend 9 candele"), Mark(10,"doji"), Mark(11,"confirmare 50.40"). +Text sub panou: „DA — ideal (8-10 candele)". + +PANOUL DREAPTA — 13 bare +------------------------ +open[0] = 51.40; close-uri 0-7 (range): 51.70, 51.20, 51.60, 51.10, 51.50, +51.30, 51.70, 51.40; apoi 8: 50.90, 9: 50.30, 10: 49.65 (3 candele în jos) +11 doji (49.65, 50.10, 49.20, 49.60) +12 confirmare (49.60, 50.55, 49.45, 50.40) +Mark(8..10 paranteză, "doar 3 candele"), Mark(12,"confirmare 50.40"). +Text sub panou: „ACCEPTAT, semnal mai slab · scannerul cu Since Bear ≥ 8 nu-l vede". + +ASSERT-URI +---------- +1. open[i] == close[i-1]; h/l cuprind o/c, pe ambele panouri. +2. Doji identic pe ambele (o,h,l,c) și abs(o-c) <= 0.10*(h-l). +3. Stânga: close[9] < close[0] - 5 și close[9] == min(close[0:10]); + cel puțin 6 din barele 1..9 închid sub close-ul barei precedente. +4. Dreapta: max(close[0:8]) - min(close[0:8]) <= 0.60 (range); + close[8] > close[9] > close[10] (exact 3 candele în jos). +5. Confirmarea închide peste 50.10 pe ambele. + +SURSA +----- +- 8-10 candele ideal; 2-3 candele au funcționat, semnal mai slab: + summaries/03_MODUL_2/13_strategia_3_byh.md:185-187, 315-318. +- Scannerul cu Since Bear ≥ 8 pierde trendurile scurte: + summaries/09_QA/28_2025-05-27.md:144-149; Since Bear numără de la sell + momentum, nu candele descrescătoare: :43-46. +- Seria e CONSTRUITĂ. diff --git a/gen/strategii/buy_doji_trend.svg b/gen/strategii/buy_doji_trend.svg new file mode 100644 index 0000000..45f998f --- /dev/null +++ b/gen/strategii/buy_doji_trend.svg @@ -0,0 +1,81 @@ + + Trendul dinaintea dojiului: 9 candele vs. 3 candele — exemplu construit + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + + downtrend 9 candele + DA — ideal (8-10 candele) + + + + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + + doar 3 candele + + + Același doji, după un range + range: nu se numără + ACCEPTAT, semnal mai slab + scannerul cu Since Bear ≥ 8 nu-l vede + \ No newline at end of file diff --git a/summaries/17_STRATEGII/01_buy_doji.html b/summaries/17_STRATEGII/01_buy_doji.html index c653271..1d1ba5f 100644 --- a/summaries/17_STRATEGII/01_buy_doji.html +++ b/summaries/17_STRATEGII/01_buy_doji.html @@ -37,60 +37,26 @@ investiție (weekly-monthly, varianta MICI) · acțiuni US futures BVB · dificultate 2/5 · merge pe prop: da, cu ajustări · merge pe BVB: da, long-only

-

Surse: 13_strategia_3_byh.md -(fișierul principal, S3) · -11_construire_scanere_sf_byd_sld.md -(scanerele; indicator proprietar) · -01_filtre_scaner_bull_bear_reversal_pp.md -(filtre + ULTA) · -01_buy_doji_si_strategia_mici.md -(aplicarea zilnică, varianta MICI) · -08_executie_si_risc.md -(3 poziții, sizing) · -28_2025-05-27.md (scanere, filtre, short) · -22_2025-08-04.md (regulile dictate) · -03_2026-08-11.md (SL 4 candele, >65 %, weekly) · -18_2025-09-23.md (LABU) · -20_2025-08-25.md (retest 1/2–1/3 pe prop) · -26_2025-06-11.md (limita zilnică pe poziții deschise) · -23_2025-07-29.md (tranșe weekly) · -09_2025-12-09.md (pivoții pe BVB).

-
-

Notă de denumire. Fișierul principal se numește 13_strategia_3_byh.md, -dar titlul lui e „Strategia 3: Buy Doji / Sell Doji (SF BYD/SLD)" -(13_strategia_3_byh.md:1). „BYH" din slug nu e o strategie separată de -„breakout" — grep -rn -i 'byh' prin summaries/ găsește doar acest -fișier. Fișele byd_sld.md și byh.md descriu aceeași strategie; capitolul -ăsta le folosește ca o singură sursă.

-
-
-

Nivel 0 — Ideea

-

Ce exploatează

-

Regula de intrare a strategiei e singura din tot cursul care nu conține -niciun indicator proprietar: un doji (open ≈ close) la finalul unui trend, -apoi prima candelă care închide peste high-ul lui (long) sau sub low-ul lui -(short), în maximum 3 candele. Nu ai nevoie de jbtgrshdATM, de RSV1ATM -sau de scanner ca s-o aplici — o vezi cu ochiul pe orice platformă.

-

Ce exploatează e epuizarea temporară a vânzătorilor (sau cumpărătorilor) -după un trend, plus stop-urile grupate dincolo de extrema dojiului. După -8-10 candele de scădere, vânzătorii care mai aveau marjă au ieșit deja pe -drum; la doji, cumpărătorii noi (vânători de preț mic) apar în număr aproape -egal, de aceea bara închide aproape de unde a deschis. Confirmarea e -mecanismul real: când o candelă închide peste high-ul dojiului, toți cei care -au vândut (sau au shortat) în bara de indecizie sunt pe pierdere, iar -stop-urile lor de deasupra acelui high se execută automat ca ordine de -cumpărare — de aceea raportul se inversează brusc, nu treptat -(13_strategia_3_byh.md:102-149; 01_buy_doji_si_strategia_mici.md:20-28). -(Explicația mecanismului de aici e completarea sumarizatorului, nu material -al cursului: 13_strategia_3_byh.md:342-350 notează explicit că secțiunea -„De ce apare inversarea" — mecanismul cumpărători/vânzători — e „completări -ale mele, dincolo de ce spune explicit transcrierea".)

-

Cifra declarată pentru trigger nu e unică în surse: 70-75 % +

Ce face. Cumperi când un doji apărut la capătul unei scăderi e urmat, în +maximum 3 candele, de o candelă care închide peste high-ul lui. Stopul +stă sub cele mai joase 4 candele, prima țintă e la aceeași distanță (1:1), +restul poziției merge pe trailing. Sell Doji e oglinda, pe short. E singura +regulă de intrare din curs fără niciun indicator proprietar: o vezi cu +ochiul pe orice platformă.

+

Pe ce timeframe. „Orice timeframe (5 min → monthly)" +(13_strategia_3_byh.md:10-11). Tu o vei folosi pe trei perechi — setup pe +TF-ul mare, intrare pe cel mic: weekly → daily, monthly → weekly, +daily → 60 min. Pasul 2 le pune una lângă alta.

+

Cât de des dă semnal și cât de des merge. Des: e un pattern de o singură +candelă, pe orice asset — de aceea îl predă cursul în locul Morning Star, care +apare rar (03_2026-08-11.md:180-218). Materialul nu dă o cifră de semnale pe +săptămână. Rata declarată nu e unică: 70-75 % (13_strategia_3_byh.md:11-12), 65-70 % (01_buy_doji_si_strategia_mici.md:146-152), peste 65 % -(03_2026-08-11.md:185-186) — vezi contradicția din 2.4. Nu un edge -uriaș, de aceea stopul e obligatoriu și de aceea strategia se repetă des.

-

Diagrama de ansamblu

+(03_2026-08-11.md:185-186) — vezi „Unde se contrazice materialul", punctul 1. +Nu un edge uriaș, de aceea stopul e obligatoriu și de aceea strategia se +repetă des.

+

Tot trade-ul, dintr-o privire:

Buy Doji — daily (exemplu construit, fără ticker) @@ -212,7 +178,7 @@ fereastra de 3 → intrare la close-ul de confirmare, SL la extrema ultimelor 4 candele, TP 1:1 atins, apoi poziția rămasă pe trailing stop. Nivelurile sunt cele din exemplul construit al lecției (13_strategia_3_byh.md:38-95, :97-100).

-

Fraza de decizie

+

Fraza de decizie:

Cumpăr când un doji de după un downtrend e confirmat de o închidere peste high-ul lui în maximum 3 candele, ies la TP egal cu SL sau pe trailing, și @@ -221,494 +187,822 @@ dacă în 8 candele nici una nu s-a atins, ies oricum.

Oglinda: vând în lipsă când un doji de după un uptrend e confirmat de o închidere sub low-ul lui, cu aceleași reguli de SL/TP/timp (13_strategia_3_byh.md:227-232).

-

Când NU o folosești

-
    -
  • Pe short, când piața e „foarte strong bull". Un sell doji poate fi doar - un bull flag; „când shortăm, să fie overall piața praf" - (28_2025-05-27.md:313-317).
  • -
  • Împotriva direcției de pe weekly/monthly. Nu shortezi contra unui Buy - Doji weekly și nu cumperi contra unui Sell Doji weekly - (03_2026-08-11.md:220-223; 01_buy_doji_si_strategia_mici.md:35-37).
  • -
  • Pe doji care nu vine după trendul corect — după gap-up, sus în - rezistență, sau după uptrend cu volum „varză" (miros de blow-off top) - (01_buy_doji_si_strategia_mici.md:227-235).
  • -
  • La acțiuni sub 10 $ ca Sell Doji — short squeeze, manipulabile, gap-uri - intraday (28_2025-05-27.md:397-402, 560-576).
  • -
  • Pe 60 min singur — doar în direcția unui swing long deja stabilit pe - daily (01_buy_doji_si_strategia_mici.md:38-40).
  • -
+

Cei 9 pași: 1. lista · 2. perechea și direcția · +3. trendul și doji-ul · 4. locația · +5. confirmările · 6. trigger-ul · +7. stopul și mărimea · 8. intrarea · +9. ieșirea. Apoi: oglinda short, +exemplul LABU, checklist.

+

Cum citești blocurile. Regulile au trimitere fișier:linie; textul fără +trimitere dintre ele e explicația mea și nu adaugă reguli. Unde completez o +regulă pe care materialul n-o dă, blocul începe cu Completare proprie: și +spune pe ce mă sprijin.


-

Nivel 1 — Regulile

-

1.1 Filtrul de context (înainte să te uiți la grafic)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#CondițiePragUnde o citeștiSursă
C1Trend anterior în direcția opusă setup-ului8-10 candele ideal; scanner cere Since Bear ≥ 8 (long) / Since Bull ≥ 8 (short)Ochii / scaner13_strategia_3_byh.md:185-187; 28_2025-05-27.md:40-52
C2Doji-ul stă lângă un nivelproximitate ≤ 0,5 % pe 60 min; 1-2 % pe DailyOchii / RSV1ATM11_construire_scanere_sf_byd_sld.md:99-104
C3Pivoții sunt sincronizați cu timeframe-ul60 min → pivoți Weekly; Daily → Monthly; Weekly → QuarterlySetare scaner11_construire_scanere_sf_byd_sld.md:63-69; 01_filtre_scaner_bull_bear_reversal_pp.md:36-42
C4Lichiditate suficientăclose > 30-40 $; volum mediu daily ≥ 500.000 (ideal > 1 milion pe 3 luni)Filtru scaner28_2025-05-27.md:372-380; 11_construire_scanere_sf_byd_sld.md:70-73
C5Context de piață/sector pentru shortpiața sau sectorul slab; 30 de sell-uri în același sector = problemă de sectorScaner (sector/industry)28_2025-05-27.md:313-330
C6Proiecție bull/bear aliniată cu direcția (edge, nu obligatoriu)„proiecție bull" pe longMarket Preview (RSV1ATM)13_strategia_3_byh.md:223-225
-

Dacă o condiție nu are prag numeric în material, rândul de mai sus spune -„fără prag în material". Nu inventez niciunul.

-

1.2 Setup — ce trebuie să vezi pe grafic

+

+

Pasul 1 — Îți faci lista de candidați

+

Rulezi scanerul (sau treci manual prin lista ta) și păstrezi doar +simbolurile lichide, pe care chiar poți intra și ieși. Scanerul nu-ți dă +undă verde; îți economisește timpul de căutat. Restul pașilor îi faci pe +grafic, pe fiecare candidat.

+

+ +Scanerul Buy Doji în TradeStation +ordinea filtrelor și capcanele + +Univers: +All Stocks (~13.000) +S&P 500 · Russell 3000 + +mai mare = găsește mai mult, durează mai +mult + + +Trigger: jbtgrshdATM +BDATM = 0 +(Sell Doji: SDATM = 0) + +capcană: Interval = TF-ul scanerului, setat +manual +capcană: 0 = ultima candelă închisă; 1 = cu +o zi în urmă + + +Nivel: RSV1ATM +% of PP ≤ 0.5 (60 min) +% of PP ≤ 2 (daily) + +Pivot Interval: 2 = weekly (pe 60 min), 3 = +monthly (pe daily) +capcană: RS/SR = 1 la filtrare; cu 100, +pragul se scrie ×100 + + +Lichiditate: Volume Colors +Average Volume ≥ 500.000 +Average Length = 10 + +volum daily, indiferent de TF-ul scanerului + + +Opțional: +Since Bear ≥ 8 +Bull Reversal = 1 +RVOL doar Display + +capcană: Bear Reversal e selectat implicit — +comută pe Bull +capcană: în zile extreme, pragurile rigide +golesc lista + + +Lista de candidați +→ o verifici pe grafic +(pașii 2-6). +Scanerul nu e undă verde. +Delay: scanerul vede candela închisă — daily rulat la 12:00 arată triggerul de ieri. +

+

Ce setezi, în ordinea din diagramă:

    -
  1. Trend: downtrend pentru Buy Doji, uptrend pentru Sell Doji, 8-10 - candele ideal. Exemplele reale au avut și 2-3 candele și au funcționat, - dar sunt tratate ca semnal mai slab (13_strategia_3_byh.md:185-187, - 315-318).
  2. -
  3. Doji: open ≈ close, corp foarte mic față de range-ul total, fitil în - ambele părți. La scanerul de watchlist, parametrul standard de doji se pune - pe 10 (nu 5) — adică corp maximum ~10 % din range - (28_2025-05-27.md:343-349; 13_strategia_3_byh.md:15-30).
  4. -
  5. Doji la nivel: aproape de suport sau pivot point pentru Buy Doji, - aproape de rezistență sau pivot point pentru Sell Doji - (13_strategia_3_byh.md:188-190).
  6. -
  7. Fereastra de confirmare: maximum 3 candele după doji. Nu intri pe doji.
  8. +
  9. Universul: All Stocks (~13.000 de simboluri), S&P 500 sau o listă + custom (Russell 3000). Mai mare = găsește mai mult, dar durează mai mult + (11_construire_scanere_sf_byd_sld.md:53-57).
  10. +
  11. Trigger-ul: jbtgrshdATM, câmpul BDATM (SDATM la short), = 0 + (11_construire_scanere_sf_byd_sld.md:58-62). „0" înseamnă ultima candelă + închisă; un cursant care pusese 1 a primit semnalele cu o zi mai devreme + (28_2025-05-27.md:47-52).
  12. +
  13. Nivelul: RSV1ATM, % of PP ≤ prag; pivoții și pragul depind de + timeframe (Pasul 4).
  14. +
  15. Lichiditatea: close > 30-40 $; volum mediu daily ≥ 500.000 (ideal
    +

    1 milion pe 3 luni) (28_2025-05-27.md:372-380; + 11_construire_scanere_sf_byd_sld.md:70-73).

    +
    +
  16. +
  17. Opțional: Since Bear ≥ 8 pentru trend (28_2025-05-27.md:40-52) și + Bull Reversal (Pasul 5).
-

Diagrama de mai jos arată exact diferența dintre un setup care se confirmă și -unul care expiră — diferența e strict numerică (a închis sau nu peste 50.10), -nu vizuală.

-

- - DA — confirmare la +2, în fereastră - - high doji 50.10 - - low doji 49.20 - - - - - - - - - - - - - - - - - doji - confirmare +2 — intrare 50.40 - +1: close 49.90 — sub 50.10, nu confirmă - +2: close 50.40 — peste 50.10, confirmă (intrare la close) - - - NU — nicio confirmare în 3 candele - - high doji 50.10 - - low doji 49.20 - - - - - - - - - - - - - - - - - - - doji - a 4-a - +1: 49.95; +2: 50.05; +3: 49.85 — toate sub 50.10 - a 4-a: close 49.15 — sub low-ul dojiului 49.20, setup mort - - Serii construite: open = close-ul barei anterioare. - Doji: h 50.10 / l 49.20. Fereastra = maximum 3 candele după doji. -

-

1.3 Trigger

+

La short, încă un filtru, înainte de grafic: piața sau sectorul trebuie să +fie slabe. 30 de sell-uri în același sector = problemă de sector +(28_2025-05-27.md:313-330). Nu există prag numeric în material.

+

Capcane de scaner:

+
    +
  • Interval-ul indicatorului nu se sincronizează automat cu timeframe-ul + scanerului. Dacă uiți, calculează pe alt timeframe + (11_construire_scanere_sf_byd_sld.md:317-320).
  • +
  • Delay-ul scanerului: rulează pe candela deja închisă; un scanner daily + la ora 12 arată triggerul de ieri (11_construire_scanere_sf_byd_sld.md:321-324).
  • +
  • RS/SR: factorul 1 pentru filtrare, 100 doar pentru display. Cu + 100 ca prag, înmulțește pragul cu 100, altfel filtrezi greșit + (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341).
  • +
  • Bear Reversal e selectat implicit (alfabetic) la deschiderea + indicatorului — pe un scaner long comută manual pe Bull, altfel filtrezi cu + semnalul opus (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:343-346).
  • +
  • Nu pune praguri rigide (RVOL, distanță) în zile de mișcare extremă — + pot elimina toți candidații valizi (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:303-327).
  • +
  • Sistemul nu vede orice Buy Doji. Uneori un doji valid nu e marcat; îl + recunoști vizual, cu aceeași regulă de închidere + (01_buy_doji_si_strategia_mici.md:838-839).
  • +
+

Treci mai departe doar dacă simbolul trece de pragul de lichiditate și, +la short, piața sau sectorul lui e slab.

+
+

+

Pasul 2 — Alegi perechea de timeframe-uri și citești direcția pe cel mare

+

Deschizi întâi graficul mare (weekly, monthly sau daily, după pereche) și +te uiți dacă are un Buy Doji sau un Sell Doji confirmat. El îți spune în ce +direcție ai voie să cauți intrarea pe graficul mic. Materialul, pe +fiecare timeframe (01_buy_doji_si_strategia_mici.md:32-40):

+
    +
  • pe daily — „când intri într-un swing (trigger mecanic, stop și țintă + fixe)";
  • +
  • pe weekly/monthly — „în ce direcție ai voie să tranzacționezi. Un + buy doji weekly e un semnal al banilor mari";
  • +
  • pe 60 min — „o intrare mai devreme decât MBT-10, dar numai în + direcția unui swing long deja stabilit pe daily. Fără contextul de daily, + un buy doji pe 60 min singur nu ajunge".
  • +
+

Și regula dedusă de el din asta: nu shortezi contra unui Buy Doji weekly, +nu cumperi contra unui Sell Doji weekly. „Short-uri de termen scurt în +interiorul structurii, da (el însuși a shortat 2 zile în aceeași săptămână) — +dar nu împotriva semnalului weekly" (03_2026-08-11.md:220-223; +01_buy_doji_si_strategia_mici.md:35-37).

+

Aceeași regulă, pe cele trei perechi

+

+ + Aceeași regulă pe trei perechi — exemplu construit (fără ticker) + A. weekly → daily + weekly: direcția + daily: intrarea + + high doji weekly 105.20 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe daily, + după confirmare + + + + + TP1 1:1 107.50 + intrare 106.30 + high doji 105.20 + SL 105.10 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 1.13 % (pe weekly ar fi 4.77 %) · 8 candele = 8 zile de bursă + + B. monthly → weekly + monthly: direcția + weekly: intrarea + + high doji monthly 113.00 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe weekly, + după confirmare + + + + + TP1 1:1 118.75 + intrare 115.75 + high doji 113.00 + SL 112.75 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 2.59 % (pe monthly ar fi 10.85 %) · 8 candele = 8 săptămâni + + C. daily → 60 min + daily: direcția + 60 min: intrarea + + high doji daily 102.08 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe 60 min, + după confirmare + + + + + TP1 1:1 103.00 + intrare 102.52 + high doji 102.08 + SL 102.04 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 0.47 % (pe daily ar fi 1.98 %) · 8 candele ≈ 1,2 zile de bursă (7 bare/zi) + Cifre construite, aceeași formă scalată pe trei perechi. + Procentele reale depind de simbol (LABU daily: stop 9 %). +

+

Diagrama e același setup, desenat de trei ori: pe TF-ul mare s-a confirmat un +Buy Doji; pe TF-ul mic prețul face pullback până la high-ul acelui doji, face +un doji acolo și confirmă. Intri pe TF-ul mic. Ce rămâne și ce se schimbă:

- - + + + - - - + + + + - - - + + + + - - - + + + + - - - + + + + + + + + + + + + + + + + + + + + + +
CondițieExemplu cu cifreweekly → dailymonthly → weeklydaily → 60 min
DAPrima candelă care închide peste high-ul dojiului (long) / sub low-ul lui (short), în maximum 3 candele după doji. Intri la close-ul candelei de confirmaredoji high 53.00 / low 51.60; a doua candelă închide 53.70 → Buy Doji, intrare 53.70 (01_buy_doji_si_strategia_mici.md:136-138)Ce spune materialul despre perecheparțial: weekly = direcția, daily = trigger-ul de swing (01_buy_doji_si_strategia_mici.md:32-37); la MICI, „buy doji și pe daily" e bonus (:386)parțial: MICI pornește din buy doji weekly cu pivotul monthly (:370-379); „strategia mici pe monthly […] by doji retestat la 1x2, 1x3" (:555-556)explicit: 60 min doar în direcția swing-ului de pe daily (:38-40); exemplul XLE pe 60 min (20_2025-08-25.md:172-176)
NU — prea devremeDoji singur, sau candele care închid încă sub high (ex. +1 închide 49.90, sub 50.10)doji high 50.10; +1 închide 49.90 → nu e semnal (13_strategia_3_byh.md:158-167)Pivoții pe graficul de intraremonthlyquarterly (03_timeframes_set_up.md:69-79) — dar MICI citește pivotul monthly, vezi „Unde se contrazice", punctul 7weekly
NU — invalidatNicio candelă nu închide dincolo de doji în cele 3 candele → setup expirat; dacă a 4-a închide sub low-ul dojiului, „setup mort"doji 53.00/51.60; +1, +2, +3 rămân sub 53.00, a 4-a închide 51.20 → nu intri (01_buy_doji_si_strategia_mici.md:222-225)Pragul de proximitate1-2 %fără prag în material≤ 0,5 %
NU — contextDoji care nu vine după trendul corect (gap-up în rezistență; uptrend cu volum slab)cazul CTLD, „nu funcționează" explicit (13_strategia_3_byh.md:308)Stopul: 4 candele pe TF-ul intrării4 candele daily4 candele weekly4 candele de 60 min
„8 candele" înseamnă8 zile de bursă8 săptămâni~1,2 zile de bursă (aritmetica mea: 7 bare pe o sesiune US de 6,5 ore)
Intrareala close sau la retest (Pasul 8)în tranșe de 1/3: close, 1/3, 1/2 (23_2025-07-29.md:206-213)la retest 1/2 sau 1/3: candela e înaltă, riscul mare (transcripts/09_Q_and_A/20_25082025.txt:207-208)
Cât ții pozițialimita de 8 zile, restul pe trailing6-7-8 luni la MICI (01_buy_doji_si_strategia_mici.md:538-541)(completare) intraday sau câteva zile; limita de 8 candele trece peste noapte
-

Oglinda short, cu cifrele ei: doji high 49.40 / low 48.00, a doua candelă -închide 47.30 (sub 48.00) → Sell Doji, intrare short, SL 49.45, TP 45.15 -(01_buy_doji_si_strategia_mici.md:312-314). Graficul întreg al variantei -short:

-

- Sell Doji — daily (exemplu construit, fără ticker) - - SL 100.10 (high 4 candele) - - intrare short 99.00 - - TP 97.90 = 1R - - trail 96.45 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - volum - doji 99.20 / 100.10 - ieșire pe trail 96.60 - bara 15: close 99.40 peste low-ul dojiului 99.20 — NU confirmă - bara 16: close 99.00 sub 99.20 — confirmare (intrare short) - Intrare short la close sub low-ul dojiului, SL la high 4 candele, TP 1:1, apoi trail. +

Pragurile de proximitate: 11_construire_scanere_sf_byd_sld.md:99-104. +Pivoții: 11_construire_scanere_sf_byd_sld.md:63-69; +03_timeframes_set_up.md:69-79. Stopul se numără pe timeframe-ul pe care +ai luat decizia: la GTLB, un stop care părea „jos de tot" era corect, pentru +că decizia fusese pe weekly, nu pe daily (20_2025-08-25.md:9-15). Regulile +MICI se pot copia pe alt TF: „Si sa o folosesti pe daily, pe 60 de minute, pe +ce vrei tu" (transcripts/09_Q_and_A/20_25082025.txt:154-156).

+
+

Completare proprie: cum leg cele două timeframe-uri și ce se strică când +cobori. Materialul spune ce rol are fiecare TF, dar nu dictează +succesiunea „buy doji pe TF-ul mare → aștepți pullback → buy doji pe TF-ul +mic → intri". O construiesc din trei piese ale lui: TF-ul mare dă direcția +(01_buy_doji_si_strategia_mici.md:32-40); intrarea după buy doji-ul +weekly se face pe pullback, ideal la retestul high-ului doji-ului +(triaj/DECIZII.md:118 — dar sursa acelei observații, CTZ, nu e legată +explicit de MICI, 01_buy_doji_si_strategia_mici.md:547-559); iar la M2D, +strategia cursului construită exact pe două TF-uri, stopul se numără pe +TF-ul mic (fise/m2d.md:68), cu perechile 60×daily, daily×weekly, +weekly×monthly (14_strategia_1_m2d.md:461-466).

+

De ce merită perechea: pe diagramă, același setup luat doar pe TF-ul +mare are stopul de 4-5 ori mai larg (4,77 % pe weekly față de 1,13 % pe +daily, la aceleași cifre construite). Cu același risc în dolari, cumperi de +4 ori mai multe acțiuni.

+

Ce rămâne valabil când cobori: toată regula de candelă — trend, doji, +fereastra de 3, stopul pe 4 candele, 1:1, limita de 8.

+

Ce nu mai rămâne: timpul (8 candele de 60 min se termină a doua zi), +pivoții (alt nivel, mai slab urmărit) și încrederea în semnal. Materialul +dă mecanismul: pe TF-urile mici, volumul vine din tranzacții mici, +reactive la zgomot, iar o mișcare contrară pe TF mic e „cel mai adesea, +doar zgomot în interiorul" trendului mare +(03_timeframes_set_up.md:52-61). Deducția mea: pe 60 min vei vedea mai +multe doji-uri confirmate, și o parte mai mare din ele vor fi false — +cifra de 65-70 % nu e dată pe timeframe, deci nu presupune că ține la fel +pe 60 min. De aceea materialul nu te lasă să iei 60 min singur.

+

Pentru antrenament: perechea daily → 60 min îți dă cele mai multe +semnale de exersat recunoașterea. Nu trage concluzii despre rata de +câștig din ea pentru perechile mari.

+
+

Ce înseamnă „contra direcției", pe grafic

+

+ NU: Sell Doji daily contra unui Buy Doji weekly — exemplu construit + weekly: direcția + + + + + + + + + + + + + + + + + + + + + + doji weekly + Buy Doji weekly: direcția = long + + WEEKLY: LONG ↑ + confirmare 81.30 > high doji 79.80 + + daily: săptămânile de după confirmare (open 81.30 = close-ul ei) + + + + + SL 84.80 = high 4 candele + intrare short 83.60 + TP1 82.40 — neatins + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short de 1-2 zile: permis + + + SL lovit: poziția short contra weekly + + Sell Doji daily: tehnic valid (close 83.60 < low doji 83.95) + + short daily = CONTRA ✗ + weekly zice long; daily urcă mai departe + Short scurt înăuntrul structurii weekly: da. Poziție short contra ei: nu. + Seria e construită: un singur caz ilustrează regula, nu o dovedește.

-

1.4 Stop-loss

-

Unde: extrema (low la long, high la short) ultimelor 4 candele privind -înapoi de la candela de confirmare (13_strategia_3_byh.md:192-193; -22_2025-08-04.md:23-29).

-

De ce acolo: acel nivel e ultimul loc care, dacă e spart, anulează ideea -că vânzătorii (sau cumpărătorii) s-au epuizat. În practică, cel mai jos low -din 4 candele coincide aproape întotdeauna cu un swing low -(22_2025-08-04.md:24-29).

-

Cât e în %/R: procentul depinde de simbol; la exemplul construit, doji low -51.60 → SL 51.55 (cu 5 cenți sub), adică risc mic față de intrare -(01_buy_doji_si_strategia_mici.md:139-141). La LABU, SL a fost −9 % față de -intrare (18_2025-09-23.md:716-719). Nu se folosește ATR pentru acest SL în -sursele citite.

-

1.5 Take-profit și tranșe

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TranșăIeșire laDe unde vine țintaCe faci cu stopul
1 din 3TP = SL ca distanță (1:1), proiectat de la close-ul de confirmare13_strategia_3_byh.md:194-195rămâne sub pozițiile 2-3
2 din 3pe trailing stop13_strategia_3_byh.md:196-200trail = low-ul candelei cu gap peste high-ul precedentei (long); ieși la close dincolo de el
3 din 3mai departe, spre break-even/trend13_strategia_3_byh.md:204-213poți risca tot stopul inițial
-

Regula de bază: TP 1:1, „nu mai mult". Profitul suplimentar vine din -trailing, nu din mutarea țintei fixe (13_strategia_3_byh.md:319-321).

-

Limită de timp: dacă nici TP, nici SL nu se ating în 8 candele de la -intrare, ieși oricum (13_strategia_3_byh.md:201-202).

-

Varianta cu două ținte (execuție): TP1 = 1R, TP2 = 2R, a treia pe trail -(08_executie_si_risc.md:619-634). Contradicția cu „nu mai mult" e listată -la 2.4.

-

Varianta weekly/MICI: ținte în trepte pe niveluri (R1 → R2 → vârful -anterior → SMA 200 → jumătatea marubozu-ului mare → fostul suport spart), iar -unde se suprapun mai multe niveluri, acolo iei profit -(01_buy_doji_si_strategia_mici.md:531-536). Orizont 6-7-8 luni -(01_buy_doji_si_strategia_mici.md:538-541).

-

1.6 Mărimea poziției

-

Regula generală de money management: maximum 2 % din cont per tranzacție; -mărimea poziției = (cont × 2 %) / distanța până la stop, ajustată cu -spread-ul și rotunjită în jos (03_MODUL_2/04_money_management_position_sizing.md:4-11, 28-34). -NEACOPERIT ÎN MATERIAL: Strategia 3 nu dă o cifră proprie de risc per -trade, nici o mărime minimă de cont. Singurele cifre apropiate vin din alte -lecții: 2 % general (money management) și risc fix intraday 25 $ cu țintă 4R -(08_executie_si_risc.md:40-49), care nu sunt date pentru S3.

-

Exemplu numeric ilustrativ (cifrele exemplului sunt ale mele, nu din -curs; din material vine doar regula de 2 %): pe un cont de 50.000 $, risc -maxim = 1.000 $. Intrare -50.40, SL 49.20 → distanță 1.20 $/acțiune. Mărime = 1.000 / 1.20 = 833,3 → -833 de acțiuni rotunjit în jos (risc efectiv 999,6 $). Dacă poziția se -împarte în 3 („multiplu de 3 poziții", 13_strategia_3_byh.md:204-213; -varianta de execuție cu 48 de acțiuni pe un risc de 25 $ în -08_executie_si_risc.md:619-634), fiecare parte are același stop.

-

1.7 Checklist de tipărit

-
    -
  • [ ] Am un trend anterior în direcția opusă setup-ului: 8-10 candele ideal; 2-3 candele acceptate, dar tratate ca semnal mai slab.
  • -
  • [ ] Candelă cu open ≈ close, corp mic față de range, fitil în ambele părți.
  • -
  • [ ] Doji-ul e la un suport/pivot (long) sau rezistență/pivot (short).
  • -
  • [ ] A închis o candelă peste high-ul dojiului (long) / sub low (short), în maximum 3 candele după doji.
  • -
  • [ ] Dacă au trecut 3 candele fără confirmare → setup expirat, nu intru.
  • -
  • [ ] Stop = extrema ultimelor 4 candele de la candela de confirmare.
  • -
  • [ ] TP = aceeași distanță ca stop, proiectată de la close-ul de confirmare.
  • -
  • [ ] Mărimea poziției = risc$ / distanța la stop, rotunjit în jos.
  • -
  • [ ] Verific direcția de pe weekly/monthly: nu merg contra unui doji weekly.
  • -
  • [ ] Dacă în 8 candele nu s-a atins nici TP, nici SL → ies la a 8-a.
  • -
+

Pe weekly s-a confirmat un Buy Doji. Pe daily, prețul urcă 9 zile, face un +doji și apoi închide sub low-ul lui: tehnic, un Sell Doji valid. Ca poziție +short, e contra weekly-ului. Prețul coboară o zi, apoi urcă și lovește +stopul. Diagrama e construită; un caz nu dovedește regula, o ilustrează.

+

Nuanța: Sell Doji pe monthly/weekly înseamnă prudență pe long, nu regulă +absolută. Chiar el: sell doji-ul de pe monthly „nu înseamnă neapărat că se va +materializa" (01_buy_doji_si_strategia_mici.md:316-326).

+

Treci mai departe doar dacă TF-ul mare nu are un doji confirmat în +direcția opusă trade-ului tău. Pe 60 min: doar dacă daily-ul are deja un +swing long stabilit.


-

Nivel 2 — Nuanțele

-

2.1 Ce dă edge — ordonat după cât de des apare în material

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#Criteriu / indicatorDe ce dă edgeCât e confirmatSursă
1Locația față de un nivel (suport/pivot la long, rezistență/pivot la short)Diferența dintre setup mediocru și bun; doji-ul „la nivel" e cel care contează5 surse distincte (13, 11, 28_QA, 04_MODUL_3, 01_mici); nu apare ca rând separat în DECIZII.md13_strategia_3_byh.md:188-190; 11_construire_scanere_sf_byd_sld.md:106-137; 28_2025-05-27.md:379
2Confirmarea strictă în fereastra de 3 candele + SL 4 candele + TP1 = SL (1:1)Fără confirmare, doji-ul e doar o pauză în trendDECIZII 01.1: 3 loturi / 5 zile (~60-70 % merge; stopul e obligatoriu)DECIZII.md:107-109; 01_buy_doji_si_strategia_mici.md:146-152
3Trendul anterior corect (8-10, nu după gap-up/uptrend)Doji fără trend corect = context invalidDECIZII 01.2: 2 loturi / 2 zile; în rest 3-4 surseDECIZII.md:110; 13_strategia_3_byh.md:185-187; 22_2025-08-04.md:14
4Volumul — acumulare/distribuție, divergență bull/bearConfirmă dacă epuizarea e reală; trigger fără volum = mișcare falsă3 surse (13, 04_MODUL_3, 01_mici); nu apare în DECIZII.md13_strategia_3_byh.md:214-226; 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:296-301; 01_buy_doji_si_strategia_mici.md:338-347
5Direcția instituțională de pe weekly/monthlyNu mergi contra semnalului banilor mariDECIZII 01.3: 1 lot / 2 zile; plus Q&A explicitDECIZII.md:111; 03_2026-08-11.md:220-223
6Higher low confirmat de candela din dreapta (MICI)Al doilea semn, nu primul; e diferența dintre MICI și un simplu buy dojiDECIZII 01.n1: 2 loturi / 2 zileDECIZII.md:118; 01_buy_doji_si_strategia_mici.md:370-386
7Retest 1/2 sau 1/3 în loc de intrarea la closeReduce riscul la ~jumătate pe același setup; explicit util pe propDECIZII 01.n1: 2 loturi / 2 zile; pe prop, Q&ADECIZII.md:118; 20_2025-08-25.md:141-164
8Bull/Bear Reversal + RVOL ca filtre agresiveMai puține rezultate, dar confirmare mai mare1 lecție (04_MODUL_3/01); niciun lot de triaj nu o ridică04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:44-52, 303-327
9Confluența de niveluri pentru ținte (R1+R2+SMA 200+jumătate marubozu)Unde se suprapun mai multe rezistențe, iei profit1 sursă (01_mici); nu în DECIZII.md01_buy_doji_si_strategia_mici.md:531-536
10Mai multe trigger-e pe aceeași candelă (buy doji + buy momentum + bull reversal)Semnal mai puternicDECIZII 01.5: 1 lot / 1 ziDECIZII.md:113; 102_24032026.txt:167-170
11Frecvența patternului ca ratăUn pattern rar nu-ți produce nimic, oricât de bun; de-aia cursul predă Buy Doji, nu Morning/Evening Star1 sesiune, dar argumentul e explicit03_2026-08-11.md:180-218
12Tranșele (1/2, 1/3, 1/4)„Rar all-in la swing"; pentru acțiuni scumpe, 4 tranșe de 1/4DECIZII regula 4: 5 loturi / 16 zileDECIZII.md:47; 01_buy_doji_si_strategia_mici.md:798-814
-

2.2 Setup A+ vs. setup mediocru

-

Același pattern, două contexte. Diagrama le pune alături.

+

+

Pasul 3 — Pe graficul mic, găsești trendul care se termină și doji-ul

+

Te uiți la ultimele candele: trebuie să vezi o scădere de 8-10 candele +(pentru Buy Doji) care se oprește într-o candelă cu corp aproape inexistent.

+

Cum recunoști doji-ul

+

Open ≈ close, corp foarte mic față de range-ul total, fitil în ambele părți. +La scanerul de watchlist, parametrul standard de doji se pune pe 10 +(nu 5) — adică corp maximum ~10 % din range +(28_2025-05-27.md:343-349; 13_strategia_3_byh.md:15-30).

+

+ Ce e doji și ce nu — aceeași bară 50.10 / 49.20 + + + high 50.10 + low 49.20 + + + DA + DA: corp 0.05 + = 5.6 % din range + + + DA + DA, la limită: + corp 0.09 = 10 % + (parametrul 10) + + + NU + NU: corp 0.30 + = 33 % + + + NU + NU: corp mic (5.6 %), + dar fără fitil sus + open 49.60 + + close 49.55 + + ← fără fitil sus + Test doji: corp ≤ 10 % din range (0.90) și fitil în ambele părți. Scară: 0.10 = 26 px. +

+

Toate patru au același high și același low. A și B sunt doji. C are corpul +prea mare. D are corpul mic, dar niciun fitil deasupra — regula cere fitil în +ambele părți. Nu te uita la „cât de mică pare candela": împarte corpul la +range.

+

Cât de lung trebuie să fie trendul

+

Downtrend pentru Buy Doji, uptrend pentru Sell Doji, 8-10 candele ideal. +Exemplele reale au avut și 2-3 candele și au funcționat, dar sunt tratate ca +semnal mai slab (13_strategia_3_byh.md:185-187, 315-318). Scanerul cere +Since Bear ≥ 8 (long) / Since Bull ≥ 8 (short) +(28_2025-05-27.md:40-52), iar contorul numără candelele de la trigger-ul de +sell momentum, nu „candele descrescătoare" (28_2025-05-27.md:43-46).

+

+ Trendul dinaintea dojiului: 9 candele vs. 3 candele — exemplu construit + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + + downtrend 9 candele + DA — ideal (8-10 candele) + + + + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + + doar 3 candele + + + Același doji, după un range + range: nu se numără + ACCEPTAT, semnal mai slab + scannerul cu Since Bear ≥ 8 nu-l vede +

+

Stânga: 9 candele de scădere, apoi doji-ul și confirmarea — cazul ideal. +Dreapta: același doji, aceeași confirmare, dar după doar 3 candele de scădere +ieșite dintr-un range. Se ia, ca semnal mai slab — iar scannerul cu +Since Bear ≥ 8 nu ți-l arată deloc (28_2025-05-27.md:144-149).

+

Capcană — doji-ul care nu vine după trendul corect. După un gap-up, sus în +rezistență, sau după un uptrend cu volum „varză" (miros de blow-off top), un +Buy Doji nu se ia (01_buy_doji_si_strategia_mici.md:227-235):

+
+

„am un buy-doji, dar după un gap-up și sus, buy-dojiul ăsta, nu prea am +încredere în el" (01_buy_doji_si_strategia_mici.md:231-232)

+
+

Cazul CTLD e exemplul explicit de „nu funcționează": context invalid, +uptrend anterior, nu downtrend (13_strategia_3_byh.md:308). Un caz de acest +tip (construit) e în panoul din dreapta al diagramei de la Pasul 5.

+

Pe cele trei perechi: cele 8-10 candele se numără pe graficul pe care +cauți doji-ul. Pe weekly, asta înseamnă 2 luni de scădere; pe 60 min, o zi și +jumătate (aritmetica mea).

+

Treci mai departe doar dacă ai un doji (corp ≤ ~10 % din range, fitil în +ambele părți) după o scădere clară — ideal 8-10 candele, minim 2-3 — și nu +după un gap-up sau un uptrend.

+
+

+

Pasul 4 — Verifici că doji-ul stă pe un nivel

+

Tragi pe grafic pivoții timeframe-ului superior și măsori în procente cât de +departe e low-ul doji-ului de cel mai apropiat suport sau pivot. Ideal +aproape de suport sau pivot point pentru Buy Doji, aproape de rezistență sau +pivot point pentru Sell Doji (13_strategia_3_byh.md:188-190).

+

+ Doji la nivel vs. doji în aer — daily, pivoți monthly (exemplu construit) + DA — doji la nivel + NU — doji în aer + + + pivot monthly S1 49.00 + + PP 53.50 + + S1 46.00 + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + low 49.20 = +0,41 % față de 49.00 + → la nivel (daily: ≤ 1-2 %) + + + + cel mai apropiat nivel: 46.00, la 6,96 % + → doji în aer + (PP 53.50 e deasupra, la 8,74 % de low) + 60 min: prag ≤ 0,5 %, pivoți weekly · daily: 1-2 %, pivoți monthly · weekly: pivoți quarterly + Aceeași serie, aceeași scară; nivelurile 49.00 / 46.00 / 53.50 sunt construite. +

+

Aceeași formă de două ori. În stânga, low-ul doji-ului e la 0,41 % de pivot: +„la nivel". În dreapta, cel mai apropiat nivel e la aproape 7 %: doji în aer. +Ochiul nu vede diferența; procentul da.

+

Pragul, pe timeframe: ≤ 0,5 % pe 60 min; 1-2 % pe Daily. Motivul: la +0,5 % pe daily găsești foarte puține simboluri +(11_construire_scanere_sf_byd_sld.md:99-104).

+

Pivoții, sincronizați cu timeframe-ul: 60 min → pivoți Weekly; Daily → +Monthly; Weekly → Quarterly (11_construire_scanere_sf_byd_sld.md:63-69; +01_filtre_scaner_bull_bear_reversal_pp.md:36-42). În scaner: +Pivot Interval = 2 pe 60 min, = 3 pe Daily +(11_construire_scanere_sf_byd_sld.md:63-69).

+

Treci mai departe doar dacă low-ul doji-ului (high-ul, la short) e sub +pragul timeframe-ului tău față de un suport, o rezistență sau un pivot.

+
+

+

Pasul 5 — Aduni confirmările: A+ sau mediocru?

+

Înainte de trigger, numeri câte motive independente ai pentru același +trade. Pașii 3-4 sunt minimul. Ce urmează nu e obligatoriu, dar e ce +separă un setup A+ de unul mediocru — răspunsul la „ce să corelez ca să am +mai multe confirmări".

Setup A+ vs. setup mediocru (două panouri, exemple construite) A+ — doji la suport, volum în acumulare @@ -907,85 +1201,833 @@ varianta de execuție cu 48 de acțiuni pe un risc de 25 $ în -

2.3 Gotchas

+

Toate confirmările din material, ordonate după cât de des apar:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CriteriuDe ce dă edgeCât e confirmatSursă
1. Locația față de un nivel (suport/pivot la long, rezistență/pivot la short)Diferența dintre setup mediocru și bun; doji-ul „la nivel" e cel care contează5 surse distincte (13, 11, 28_QA, 04_MODUL_3, 01_mici); nu apare ca rând separat în DECIZII.md13_strategia_3_byh.md:188-190; 11_construire_scanere_sf_byd_sld.md:106-137; 28_2025-05-27.md:379
2. Confirmarea strictă în fereastra de 3 candele + SL 4 candele + TP1 = SL (1:1)Fără confirmare, doji-ul e doar o pauză în trendDECIZII 01.1: 3 loturi / 5 zile (~60-70 % merge; stopul e obligatoriu)DECIZII.md:107-109; 01_buy_doji_si_strategia_mici.md:146-152
3. Trendul anterior corect (8-10, nu după gap-up/uptrend)Doji fără trend corect = context invalidDECIZII 01.2: 2 loturi / 2 zile; în rest 3-4 surseDECIZII.md:110; 13_strategia_3_byh.md:185-187; 22_2025-08-04.md:14
4. Volumul — acumulare/distribuție, divergență bull/bearConfirmă dacă epuizarea e reală; trigger fără volum = mișcare falsă3 surse (13, 04_MODUL_3, 01_mici); nu apare în DECIZII.md13_strategia_3_byh.md:214-226; 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:296-301; 01_buy_doji_si_strategia_mici.md:338-347
5. Direcția instituțională de pe weekly/monthlyNu mergi contra semnalului banilor mariDECIZII 01.3: 1 lot / 2 zile; plus Q&A explicitDECIZII.md:111; 03_2026-08-11.md:220-223
6. Higher low confirmat de candela din dreapta (MICI)Al doilea semn, nu primul; e diferența dintre MICI și un simplu buy dojiDECIZII 01.n1: 2 loturi / 2 zileDECIZII.md:118; 01_buy_doji_si_strategia_mici.md:370-386
7. Retest 1/2 sau 1/3 în loc de intrarea la closeReduce riscul la ~jumătate pe același setup; explicit util pe propDECIZII 01.n1: 2 loturi / 2 zile; pe prop, Q&ADECIZII.md:118; 20_2025-08-25.md:141-164
8. Bull/Bear Reversal + RVOL ca filtre agresiveMai puține rezultate, dar confirmare mai mare1 lecție (04_MODUL_3/01); niciun lot de triaj nu o ridică04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:44-52, 303-327
9. Confluența de niveluri pentru ținte (R1+R2+SMA 200+jumătate marubozu)Unde se suprapun mai multe rezistențe, iei profit1 sursă (01_mici); nu în DECIZII.md01_buy_doji_si_strategia_mici.md:531-536
10. Mai multe trigger-e pe aceeași candelă (buy doji + buy momentum + bull reversal)Semnal mai puternicDECIZII 01.5: 1 lot / 1 ziDECIZII.md:113; 102_24032026.txt:167-170
11. Frecvența patternului ca ratăUn pattern rar nu-ți produce nimic, oricât de bun; de-aia cursul predă Buy Doji, nu Morning/Evening Star1 sesiune, dar argumentul e explicit03_2026-08-11.md:180-218
12. Tranșele (1/2, 1/3, 1/4)„Rar all-in la swing"; pentru acțiuni scumpe, 4 tranșe de 1/4DECIZII regula 4: 5 loturi / 16 zileDECIZII.md:47; 01_buy_doji_si_strategia_mici.md:798-814
+

Proiecția bull/bear aliniată cu direcția e tot un edge, nu o obligație: +„proiecție bull" pe long, citită din Market Preview (RSV1ATM) +(13_strategia_3_byh.md:223-225).

+

Treci mai departe doar dacă pașii 3-4 sunt bifați (trend corect, doji la +nivel) și știi, înainte de trigger, dacă setup-ul e A+ sau mediocru. +Materialul nu dă o regulă de mărime după calitatea setup-ului.

+
+

+

Pasul 6 — Aștepți trigger-ul: o închidere peste high, în maximum 3 candele

+

Notezi high-ul doji-ului și aștepți. Nu intri pe doji. Intri doar dacă +una din următoarele 3 candele închide peste acel high (la short: sub +low). Dacă a trecut a treia și n-a închis nicio candelă dincolo, setup-ul a +expirat.

+

+ + DA — confirmare la +2, în fereastră + + high doji 50.10 + + low doji 49.20 + + + + + + + + + + + + + + + + + doji + confirmare +2 — intrare 50.40 + +1: close 49.90 — sub 50.10, nu confirmă + +2: close 50.40 — peste 50.10, confirmă (intrare la close) + + + NU — nicio confirmare în 3 candele + + high doji 50.10 + + low doji 49.20 + + + + + + + + + + + + + + + + + + + doji + a 4-a + +1: 49.95; +2: 50.05; +3: 49.85 — toate sub 50.10 + a 4-a: close 49.15 — sub low-ul dojiului 49.20, setup mort + + Serii construite: open = close-ul barei anterioare. + Doji: h 50.10 / l 49.20. Fereastra = maximum 3 candele după doji. +

+

Diagrama de sus arată exact diferența dintre un setup care se confirmă și +unul care expiră — diferența e strict numerică (a închis sau nu peste 50.10), +nu vizuală.

+

DA și NU, cu cifre:

+
    +
  • DA: prima candelă care închide peste high-ul dojiului (long) / + sub low-ul lui (short), în maximum 3 candele după doji. Intri la + close-ul candelei de confirmare. Exemplu: doji high 53.00 / low 51.60; a + doua candelă închide 53.70 → Buy Doji, intrare 53.70 + (01_buy_doji_si_strategia_mici.md:136-138).
  • +
  • NU — prea devreme: doji singur, sau candele care închid încă sub high. + Exemplu: doji high 50.10; +1 închide 49.90 → nu e semnal + (13_strategia_3_byh.md:158-167).
  • +
  • NU — invalidat: nicio candelă nu închide dincolo de doji în cele 3 + candele → setup expirat; dacă a 4-a închide sub low-ul dojiului, „setup + mort". Exemplu: doji 53.00/51.60; +1, +2, +3 rămân sub 53.00, a 4-a + închide 51.20 → nu intri (01_buy_doji_si_strategia_mici.md:222-225).
  • +
  • NU — context: doji care nu vine după trendul corect (gap-up în + rezistență; uptrend cu volum slab) — cazul CTLD, „nu funcționează" + explicit (13_strategia_3_byh.md:308). Vezi Pasul 3.
  • +
+

Capcană — nu intra pe doji, intri pe trigger. Fără închidere dincolo de +high/low în 3 candele, doji-ul a fost doar o pauză în trend +(01_buy_doji_si_strategia_mici.md:818-821).

+

De ce închiderea peste high e trigger-ul. După 8-10 candele de scădere, +vânzătorii care mai aveau marjă au ieșit deja pe drum; la doji, cumpărătorii +noi (vânători de preț mic) apar în număr aproape egal, de aceea bara închide +aproape de unde a deschis. Confirmarea e mecanismul real: când o candelă +închide peste high-ul dojiului, toți cei care au vândut (sau au shortat) în +bara de indecizie sunt pe pierdere, iar stop-urile lor de deasupra acelui +high se execută automat ca ordine de cumpărare — de aceea raportul se +inversează brusc, nu treptat (13_strategia_3_byh.md:102-149; +01_buy_doji_si_strategia_mici.md:20-28). (Explicația mecanismului de aici +e completarea sumarizatorului, nu material al cursului: +13_strategia_3_byh.md:342-350 notează explicit că secțiunea „De ce apare +inversarea" — mecanismul cumpărători/vânzători — e „completări ale mele, +dincolo de ce spune explicit transcrierea".)

+

Nu merge de fiecare dată:

+
+

„nu luați de bună faptul că dacă am un buy dos [sic] și buy hammer de +fiecare data [sic] merge [...] sunt niște probabilități aici, în 70% din +cazuri 65-70% din cazuri va funcționa" +(01_buy_doji_si_strategia_mici.md:150-152)

+
+

Pe cele trei perechi: fereastra de 3 se numără pe graficul mic. Pe 60 +min, 3 candele înseamnă 3 ore; pe weekly, 3 săptămâni (aritmetica mea). +Candela trebuie să se închidă: pe weekly, asta e vineri la închidere +(23_2025-07-29.md:208-209).

+

Treci mai departe doar dacă o candelă a închis dincolo de doji în +fereastra de 3. Altfel ștergi setup-ul și te întorci la Pasul 1.

+
+

+

Pasul 7 — Calculezi stopul și mărimea poziției, înainte de ordin

+

Numeri 4 candele înapoi de la candela de confirmare, iei cel mai jos low +dintre ele (la short: cel mai sus high) și pui stopul acolo. +(13_strategia_3_byh.md:192-193; 22_2025-08-04.md:23-29)

+

+ Unde pui stopul: 4 candele înapoi, sub structură — exemplu construit + + cel mai jos low: 51.60 (doji) + + SL 51.55 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + 4 + 3 + 2 + 1 + (5) + + ultimele 4 candele (3 = doji, 1 = confirmarea) + Cu 4 sau cu 5 candele iese la fel: în downtrend low-ul dojiului e oricum cel mai jos. SL = 51.60 − 0.05. + + Același trade: stop la ochi (0.80 sub intrare) vs stop din regulă + + TP1 55.85 + + intrare 53.70 + + stop la ochi 52.90 — lovit + + SL din regulă 51.55 — ținut + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + al doilea picior: 52.00, higher low + TP1 + Barele 15-20 și stopul la ochi sunt construite, pentru contrast. + +

+

Sus: cele 4 candele numărate de la confirmare. În downtrend, low-ul doji-ului +e oricum cel mai jos, deci nu contează dacă o numeri și pe a 5-a. Jos: un stop +pus „la ochi", aproape de intrare, e lovit de al doilea picior; stopul din +regulă ține.

+

De ce acolo: acel nivel e ultimul loc care, dacă e spart, anulează ideea +că vânzătorii (sau cumpărătorii) s-au epuizat. În practică, cel mai jos low +din 4 candele coincide aproape întotdeauna cu un swing low +(22_2025-08-04.md:24-29):

+
+

„Stop-ul, 4 candele în spate față de trigger. Sau, exact, swing low — în +principiu o să fie swing low, pentru că în general ce găsește aici? Un +swing high și aici un swing low." (22_2025-08-04.md:27-29)

+
+

Cât e în %/R: procentul depinde de simbol; la exemplul construit, doji low +51.60 → SL 51.55 (cu 5 cenți sub), adică risc mic față de intrare +(01_buy_doji_si_strategia_mici.md:139-141). La LABU, SL a fost −9 % față de +intrare (18_2025-09-23.md:716-719). Nu se folosește ATR pentru acest SL în +sursele citite.

+

Capcană — bottom-ul poate mai face un picior. Double bottom-ul cu buy doji +weekly poate deveni triple bottom sau bear flag fără divergență de volum; de +aceea stopul stă sub structură, nu „undeva jos" +(01_buy_doji_si_strategia_mici.md:833-836).

+
+

Completare proprie: stopul „la ochi" de 52.90 din panoul de jos și +barele de după intrare sunt construite de mine, ca să arăt ce înseamnă +„sub structură" pe un caz. Materialul dă regula și capcana, nu acest +exemplu.

+
+

Pe cele trei perechi: cele 4 candele se numără pe timeframe-ul pe care ai +luat decizia (20_2025-08-25.md:9-15). În pereche, decizia de intrare e pe +graficul mic, deci stopul e mai strâns decât pe graficul mare (Pasul 2).

+

Mărimea poziției

+

Regula generală de money management: maximum 2 % din cont per tranzacție; +mărimea poziției = (cont × 2 %) / distanța până la stop, ajustată cu +spread-ul și rotunjită în jos (03_MODUL_2/04_money_management_position_sizing.md:4-11, 28-34). +NEACOPERIT ÎN MATERIAL: Strategia 3 nu dă o cifră proprie de risc per +trade, nici o mărime minimă de cont. Singurele cifre apropiate vin din alte +lecții: 2 % general (money management) și risc fix intraday 25 $ cu țintă 4R +(08_executie_si_risc.md:40-49), care nu sunt date pentru S3.

+
+

Completare proprie — exemplu numeric ilustrativ (cifrele exemplului +sunt ale mele, nu din curs; din material vine doar regula de 2 %): pe un +cont de 50.000 $, risc maxim = 1.000 $. Intrare 50.40, SL 49.20 → distanță +1.20 $/acțiune. Mărime = 1.000 / 1.20 = 833,3 → 833 de acțiuni +rotunjit în jos (risc efectiv 999,6 $). Dacă poziția se împarte în 3 +(„multiplu de 3 poziții", 13_strategia_3_byh.md:204-213; varianta de +execuție cu 48 de acțiuni pe un risc de 25 $ în +08_executie_si_risc.md:619-634), fiecare parte are același stop.

+
+

Pe un cont de prop, secțiunea „Pe cont de prop" (judecata mea) coboară +riscul la 0,33 % pe poziție. Pentru plafonul de risc pe contul tău: +A1_risc.md.

+

Treci mai departe doar dacă știi stopul exact și numărul de acțiuni, și +riscul în dolari încape în regula ta de risc.

+
+

+

Pasul 8 — Intri: la close sau în tranșe, la retest

+

Pui ordinul. Regula de bază a strategiei: intri la close-ul candelei de +confirmare (13_strategia_3_byh.md:191-195). Varianta pe care o predă ca +„corectă" în Q&A: o treime la close, restul cu ordine limită mai jos, în +corpul candelei.

+

+ Intrarea în trei tranșe — daily, exemplu construit (doji 53.00 / 51.60) + + TP1 55.85 = 1R de la close + + SL 51.55 (low 4 candele 51.60, minus 5 cenți) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + + + + + corp: open 52.60 → close 53.70 (1.10) + + + 1/3 la close 53.70 + + medie 53.39 → risc 1.84 pe acțiune (tot la close: 2.15) + + 1/3 la 1/3 din corp 53.33 + + 1/3 la 1/2 din corp 53.15 + + + + + + low 53.10: umple T2 și T3 + + +1: 52.60, sub high + + doji 53.00 / 51.60 + Măsurat pe corp (open 52.60 → close 53.70). Măsurat pe toată candela (52.45 → 53.85), 1/3 ar fi 53.38; 1/2 iese tot 53.15. + Stopul e unul singur, pentru toată poziția. Barele 0-11 și 15-18 sunt construite. +

+

Cu cifrele exemplului (construit, pe nivelurile din +01_buy_doji_si_strategia_mici.md:136-142):

    -
  1. Nu intra pe doji, intri pe trigger. Fără închidere dincolo de - high/low în 3 candele, doji-ul a fost doar o pauză în trend - (01_buy_doji_si_strategia_mici.md:818-821).
  2. -
  3. Interval-ul indicatorului nu se sincronizează automat cu timeframe-ul - scanerului. Dacă uiți, calculează pe alt timeframe - (11_construire_scanere_sf_byd_sld.md:317-320).
  4. -
  5. Delay-ul scanerului: rulează pe candela deja închisă; un scanner daily - la ora 12 arată triggerul de ieri (11_construire_scanere_sf_byd_sld.md:321-324).
  6. -
  7. RS/SR: factorul 1 pentru filtrare, 100 doar pentru display. Cu - 100 ca prag, înmulțește pragul cu 100, altfel filtrezi greșit - (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341).
  8. -
  9. Bear Reversal e selectat implicit (alfabetic) la deschiderea - indicatorului — pe un scaner long comută manual pe Bull, altfel filtrezi cu - semnalul opus (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:343-346).
  10. -
  11. Sistemul nu vede orice Buy Doji. Uneori un doji valid nu e marcat; îl - recunoști vizual, cu aceeași regulă de închidere - (01_buy_doji_si_strategia_mici.md:838-839).
  12. -
  13. Bottom-ul poate mai face un picior. Double bottom-ul cu buy doji weekly - poate deveni triple bottom sau bear flag fără divergență de volum; de - aceea stopul stă sub structură, nu „undeva jos" - (01_buy_doji_si_strategia_mici.md:833-836).
  14. -
  15. Nu pune praguri rigide (RVOL, distanță) în zile de mișcare extremă — - pot elimina toți candidații valizi (04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:303-327).
  16. -
  17. Nu extinde targetul peste 1:1 — profitul în plus vine din trailing - (13_strategia_3_byh.md:319-321).
  18. +
  19. 1/3 la close-ul confirmării: 53.70.
  20. +
  21. 1/3 cu limit la 1/3 din corp: 53.70 − 1.10/3 = 53.33.
  22. +
  23. 1/3 cu limit la 1/2 din corp: 53.15.
  24. +
  25. Candela de după coboară la 53.10 și le umple pe amândouă. Prețul mediu: + 53.39; riscul pe acțiune până la stopul 51.55: 1.84, față de 2.15 dacă + intrai tot la close.
-

2.4 Contradicții și puncte neclare din material

-

Nu aleg eu între variante. Pentru fiecare: ce spune fiecare sursă și ce -înseamnă practic pentru cine trebuie să decidă.

-
    -
  1. -

    Rata de câștig. 13_strategia_3_byh.md:11-12 scrie „70-75 %"; - 01_buy_doji_si_strategia_mici.md:146-152 și 03_2026-08-11.md:185 spun - „65-70 %" / „peste 65 %". Practic: folosește 65-70 % pentru așteptări de - sizing (partea prudentă), dar nu schimba regulile pe baza diferenței — ea - nu afectează setup-ul, doar expectation management.

    -
  2. -
  3. -

    Take-profit. 13_strategia_3_byh.md:194-195 impune 1:1 fix („nu mai - mult"); 28_2025-05-27.md:130-134 și 08_executie_si_risc.md:619-634 - folosesc TP la 2R / TP1 1R + TP2 2R. Practic: dacă vrei să respecți - regula principală, iei 1R pe prima tranșă și lași restul pe trailing; - varianta 2R e o alegere de execuție, nu o regulă a strategiei.

    -
  4. -
  5. -

    Condiția de trend în scanner. 11_construire_scanere_sf_byd_sld.md:58-62 - construiește triggerul doar din BDATM = 0; - 28_2025-05-27.md:37-52 adaugă Since Bear ≥ 8 din alt indicator. - Practic: versiunea cu ≥ 8 filtrează mai mult și ratează setup-urile cu - trend scurt; versiunea fără filtru le prinde pe toate, dar îți dă listă mai - lungă de triat manual.

    -
  6. -
  7. -

    Lungimea trendului vs. scanner. 13_strategia_3_byh.md:315-318 - acceptă și 2-3 candele de trend; scannerul din 28_2025-05-27.md:144-149 - cere ≥ 8 și pierde explicit acele cazuri. Practic: nu te baza doar pe - scanner dacă vrei să prinzi și trendurile scurte; verifică și manual.

    -
  8. -
  9. -

    Factorul RS/SR. 11_construire_scanere_sf_byd_sld.md:80-93 explică - 100 ca opțiune validă (afișezi 5.97 în loc de 0.0597), cu condiția să - înmulțești pragul; 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341 revine cu o corecție - explicită (pune 1 la filtrare, 100 doar la display). Practic: cu 1 - scrii pragul natural (≤ 0.5); cu 100 trebuie să-l scrii ≤ 50, altfel - filtrezi de 100 de ori mai strâns. Amestecul celor două e singura variantă - greșită sigur.

    -
  10. -
  11. -

    Două seturi de cifre ULTA. 11_construire_scanere_sf_byd_sld.md:139-209 - (doji ~403.60, intrare 404.20, SL 396, TP 418) vs. - 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:82-183 (close real 373.30, suport 355.48, pivot - 383.74). Ambele sunt marcate ca parțial completări ale sumarizatorului. - Practic: nu lua niciunul ca exemplu „de curs"; singurele cifre confirmate - sunt cele din al doilea set (close/suport/pivot), nu nivelurile de trade.

    -
  12. -
-

2.5 Exemplul complet, pas cu pas

+

Tranșele, pe weekly, spuse de el: „1/3 din poziție la close-ul trigger-ului +(vineri, la închiderea săptămânii)", „1/3 cu limit la retestul de 1/3 din +înălțimea candelei. Iei high-ul și low-ul și calculezi", „1/3 cu limit la +1/2 din candelă" (23_2025-07-29.md:206-213). Și în altă sesiune:

+
+

„aici nu se intră full, / se intră cu 1 pe 3 din poziția aici, / 1 pe 3 la +1 pe 3 din candelă / și 1 pe 3 la 1 pe 2 sau 2-3 / la 1 pe 2. / Așa se face +de cea corectă. / Așa cum v-am învățat pe strategia respectivă." +(transcripts/09_Q_and_A/19_08092025.txt:1067-1073)

+
+

Măsori de la open sau de la low? Se poate măsura de la low sau de la +open; pe XLE diferența a fost 3.16 % vs 2.98 %, „Nu e mare diferență, că ăsta +nu e așa volatil, dar e o diferență" (20_2025-08-25.md:178-180). Pe +exemplul de sus: pe corp, 1/3 = 53.33; pe toată candela (52.45 → 53.85), +1/3 = 53.38. La 1/2 iese 53.15 în ambele feluri.

+

De ce retestul contează pe TF mic și pe prop: „Pai ba, e inalt, ai ris +[sic] mare pe asta, mai ales daca esti pe prop. Si atunci de asta sa intre pe +unul, pe 3, unul, pe 2, pentru un ris [sic] mai mic." — buy doji pe 60 min +(transcripts/09_Q_and_A/20_25082025.txt:207-208). Retestul la 1/2 sau 1/3 +reduce riscul la ~jumătate pe același setup (20_2025-08-25.md:141-164). La +XLE pe 60 min, retestul de 1/2 a căzut fix în pivotul weekly — două motive +independente pentru aceeași intrare (20_2025-08-25.md:172-176).

+

La acțiuni scumpe (sute sau mii de $): 4 tranșe de 1/4, stop unic sub +higher low; riscul total nu crește, doar prețul mediu scade +(01_buy_doji_si_strategia_mici.md:798-814).

+

Capcană — nu alerga după preț. Dacă buy doji-ul weekly a plecat deja, +aștepți retestul de 1/3 - 1/2 din lumânarea mare. Poate să nu mai vină, și +atunci ratezi: „Poate să nu mai facă, poate nu mai face niciodată." +(01_buy_doji_si_strategia_mici.md:825-827). Nu muți ordinul limită mai sus +după preț (08_ANALIZA_ZILNICA/03_locul_crimei_si_pullback.md:296-311).

+
+

Completare proprie — de unde calculezi TP1 când ai intrat în tranșe. +Materialul nu leagă cele trei tranșe de intrare de cele trei de ieșire +(Pasul 9). Două variante: TP1 = 1R de la close-ul confirmării (55.85, +regula din 13_strategia_3_byh.md:194-195), sau TP1 = 1R de la prețul +tău mediu, 53.39 + 1.84 = 55.23 (deducția din +A3_intrarea.md, §1.3, pasul 4). Alege una înainte de +trade și ține-te de ea. Toată discuția „la close sau la retest", desfăcută +pas cu pas: A3_intrarea.md.

+
+

Treci mai departe doar dacă ordinele sunt puse (sau prima tranșă e +executată), cu stopul din Pasul 7 pus în platformă, pe toată poziția.

+
+

+

Pasul 9 — Ieși: o treime la 1:1, restul pe trailing, și nu stai peste 8 candele

+

Pui ținta la aceeași distanță ca stopul și, după ce e atinsă, muți restul +poziției pe trailing stop. Dacă în 8 candele nu s-a atins nici ținta, nici +stopul, ieși oricum.

+

+ Ieșirea: trailing stop pe gap-uri și limita de 8 candele — exemple construite + A — trailing stop pe gap-uri (seria de la intrarea în tranșe) + + intrare 53.70 + + TP1 55.85 — tranșa 1: +1R + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a treia treime: o lași mai departe (break-even / trend) + + + + TP1: ieși cu 1/3 + gap: low > high anterior → trail 56.20 + gap → trail 57.45 + close sub trail: ieși cu 1/3 + la 57.20 = +1.63R + B — limita de 8 candele + + TP1 51.60 + + intrare 50.40 + + SL 49.20 + + + + + + + + + + + + + + + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 6 + + + 7 + + + 8 + doji + a 8-a candelă: nici TP, nici SL + → ieși la 50.70 = +0.25R + Barele de după intrare sunt construite. Regulile: 13_strategia_3_byh.md:196-213. +

+

Sus: prima treime iese la TP1; linia de trail apare doar pe candelele care +deschid cu gap (low peste high-ul candelei de dinainte), urcă în trepte, iar a +doua treime iese la primul close sub ea. Jos: alt trade, în care prețul +stă 8 candele între stop și țintă — ieși la close-ul celei de-a 8-a.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TranșăIeșire laDe unde vine țintaCe faci cu stopul
1 din 3TP = SL ca distanță (1:1), proiectat de la close-ul de confirmare13_strategia_3_byh.md:194-195rămâne sub pozițiile 2-3
2 din 3pe trailing stop13_strategia_3_byh.md:196-200trail = low-ul candelei cu gap peste high-ul precedentei (long); ieși la close dincolo de el
3 din 3mai departe, spre break-even/trend13_strategia_3_byh.md:204-213poți risca tot stopul inițial
+

Regula de bază: TP 1:1, „nu mai mult". Profitul suplimentar vine din +trailing, nu din mutarea țintei fixe (13_strategia_3_byh.md:319-321).

+

Limită de timp: dacă nici TP, nici SL nu se ating în 8 candele de la +intrare, ieși oricum (13_strategia_3_byh.md:201-202).

+

Varianta cu două ținte (execuție): TP1 = 1R, TP2 = 2R, a treia pe trail +(08_executie_si_risc.md:619-634). Contradicția cu „nu mai mult" e la +„Unde se contrazice materialul", punctul 2.

+

Varianta weekly/MICI: ținte în trepte pe niveluri (R1 → R2 → vârful +anterior → SMA 200 → jumătatea marubozu-ului mare → fostul suport spart), iar +unde se suprapun mai multe niveluri, acolo iei profit +(01_buy_doji_si_strategia_mici.md:531-536). Orizont 6-7-8 luni +(01_buy_doji_si_strategia_mici.md:538-541):

+
+

„strategia mici, asta e pentru cei care aveți răbdare, 6-7-8 luni să stat +în tranzacție." (01_buy_doji_si_strategia_mici.md:540-541)

+
+

Capcană — nu extinde targetul peste 1:1. Profitul în plus vine din +trailing (13_strategia_3_byh.md:319-321).

+
+

Completare proprie: barele de după intrare, din ambele panouri, sunt +construite. Tabelul cu cele 3 tranșe e, în lecția 13, marcat de +sumarizator ca completare a lui, nu ca regulă rostită +(13_strategia_3_byh.md:341-350); regula de trail, limita de 8 și 1:1 +sunt ale cursului.

+
+

Pe cele trei perechi: 8 candele = 8 zile pe daily, 8 săptămâni pe +weekly, ~1,2 zile pe 60 min (aritmetica mea). Pe 60 min, limita de 8 candele +trece peste noapte; dacă nu poți ține peste noapte, vezi „Pe cont de prop".

+

Gata. Trade-ul s-a închis când toate trei treimile au ieșit: la TP1, la +close sub trail, sau la limita de 8 candele — ori la stop.

+
+

+

Oglinda: Sell Doji, pe short

+

Aceeași procedură, întoarsă: uptrend de 8-10 candele, doji lângă +rezistență/PP, confirmare = o candelă care închide sub low-ul dojiului în +maximum 3 candele; SL = high-ul ultimelor 4 candele, TP = aceeași distanță în +jos, trail-ul coboară pe candelele cu high sub low-ul precedentei +(13_strategia_3_byh.md:227-232).

+

Cifrele exemplului: doji high 49.40 / low 48.00, a doua candelă închide +47.30 (sub 48.00) → Sell Doji, intrare short, SL 49.45, TP 45.15 +(01_buy_doji_si_strategia_mici.md:312-314). Graficul întreg al variantei +short:

+

+ Sell Doji — daily (exemplu construit, fără ticker) + + SL 100.10 (high 4 candele) + + intrare short 99.00 + + TP 97.90 = 1R + + trail 96.45 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + volum + doji 99.20 / 100.10 + ieșire pe trail 96.60 + bara 15: close 99.40 peste low-ul dojiului 99.20 — NU confirmă + bara 16: close 99.00 sub 99.20 — confirmare (intrare short) + Intrare short la close sub low-ul dojiului, SL la high 4 candele, TP 1:1, apoi trail. +

+

Ce se adaugă la short, față de long:

+
    +
  • Nu pe piață „foarte strong bull". Un sell doji poate fi doar un bull + flag; „când shortăm, să fie overall piața praf" + (28_2025-05-27.md:313-317).
  • +
  • Nu la acțiuni sub 10 $ — short squeeze, manipulabile, gap-uri + intraday (28_2025-05-27.md:397-402, 560-576).
  • +
  • Nu contra unui Buy Doji weekly (Pasul 2).
  • +
  • Divergența poate întoarce semnalul: sell doji cu divergență de volum + sau stochastic din oversold → urmărești reverse în buy doji + (01_buy_doji_si_strategia_mici.md:338-347).
  • +
+
+

+

Exemplul real: LABU, de la doji la +30 %

LABU — daily, Buy Doji la pivotul monthly (18_2025-09-23.md:608-719).

Ce e real și ce nu: din curs vin doar procentele — stop inițial @@ -1165,16 +2207,18 @@ cu prețuri de curs.

bara 33 = doji: o 85.00, c 84.90, h 86.30, l 84.20 — corp mic exact pe pivotul monthly 86.00 (indecizie la suport) Procentele (stop 9 %, +30 %) sunt ale cursului; nivelurile de preț sunt construite de sumarizator (18_2025-09-23.md:713).

+

Pașii, pe acest exemplu:

    -
  1. Context: downtrend → consolidare → triple bottom → doji.
  2. -
  3. Doji la pivotul monthly 86.00 — al doilea test al nivelului, fără low - nou (18_2025-09-23.md:710-712).
  4. -
  5. Confirmare: candela verde care închide peste high-ul dojiului → - intrare 89.50.
  6. -
  7. SL 81.45 = −9 % față de intrare. Risc 8.05, deci TP 1:1 ar fi 97.55 — - dar exemplul a mers mult mai departe.
  8. -
  9. TP +30 % = 116.35, atins într-o lună, după: bull reversal pe candela - mare → retestare → bull flag → breakout → higher high, higher low.
  10. +
  11. Context (pașii 3 și 5): downtrend → consolidare → triple bottom → doji.
  12. +
  13. Locație (pasul 4): doji la pivotul monthly 86.00 — al doilea test al + nivelului, fără low nou (18_2025-09-23.md:710-712).
  14. +
  15. Trigger (pasul 6): candela verde care închide peste high-ul + dojiului → intrare 89.50.
  16. +
  17. Stop (pasul 7): SL 81.45 = −9 % față de intrare. Risc 8.05, deci TP 1:1 + ar fi 97.55 — dar exemplul a mers mult mai departe.
  18. +
  19. Ieșire (pasul 9): TP +30 % = 116.35, atins într-o lună, după: bull + reversal pe candela mare → retestare → bull flag → breakout → higher high, + higher low.
  20. Rezultat: „stop inițial 9 %, +30 % într-o lună" — un trade care a mers ~3,3R pe distanța de stop (calcul al meu, din nivelurile marcate ca ale sumarizatorului în 18_2025-09-23.md:713), adică exact scenariul în @@ -1193,6 +2237,91 @@ weekly, +36 % în 14 săptămâni; răbdare pe Buy Doji weekly, +54 % în 20 de săptămâni, trigger la a 11-a candelă (23_2025-07-29.md:202-204; 18_2025-09-23.md:728-730).


    +

    +

    Checklist de tipărit

    +
      +
    • [ ] (Pasul 1) Simbolul e lichid: close > 30-40 $, volum mediu daily ≥ 500.000. La short: piața/sectorul e slab, prețul > 10 $.
    • +
    • [ ] (Pasul 2) Am ales perechea. TF-ul mare nu are doji confirmat contra direcției mele; pe 60 min, daily-ul are swing long stabilit.
    • +
    • [ ] (Pasul 3) Am un trend anterior în direcția opusă setup-ului: 8-10 candele ideal; 2-3 candele acceptate, dar tratate ca semnal mai slab.
    • +
    • [ ] (Pasul 3) Candelă cu open ≈ close, corp mic față de range, fitil în ambele părți.
    • +
    • [ ] (Pasul 4) Doji-ul e la un suport/pivot (long) sau rezistență/pivot (short), sub pragul TF-ului (60 min ≤ 0,5 %, daily 1-2 %).
    • +
    • [ ] (Pasul 5) Știu dacă e A+ sau mediocru: volum, divergență, proiecție, trigger-e multiple.
    • +
    • [ ] (Pasul 6) A închis o candelă peste high-ul dojiului (long) / sub low (short), în maximum 3 candele după doji.
    • +
    • [ ] (Pasul 6) Dacă au trecut 3 candele fără confirmare → setup expirat, nu intru.
    • +
    • [ ] (Pasul 7) Stop = extrema ultimelor 4 candele de la candela de confirmare, pe TF-ul intrării.
    • +
    • [ ] (Pasul 7) Mărimea poziției = risc$ / distanța la stop, rotunjit în jos.
    • +
    • [ ] (Pasul 8) Am hotărât înainte: tot la close, sau 1/3 la close + 1/3 la 1/3 + 1/3 la 1/2. Nu mut ordinul după preț.
    • +
    • [ ] (Pasul 9) TP = aceeași distanță ca stop, proiectată de la close-ul de confirmare.
    • +
    • [ ] (Pasul 9) Dacă în 8 candele nu s-a atins nici TP, nici SL → ies la a 8-a.
    • +
    +
    +

    Unde se contrazice materialul

    +

    Nu aleg eu între variante. Pentru fiecare: ce spune fiecare sursă și ce +înseamnă practic pentru cine trebuie să decidă.

    +
      +
    1. +

      Rata de câștig. 13_strategia_3_byh.md:11-12 scrie „70-75 %"; + 01_buy_doji_si_strategia_mici.md:146-152 și 03_2026-08-11.md:185 spun + „65-70 %" / „peste 65 %". Practic: folosește 65-70 % pentru așteptări de + sizing (partea prudentă), dar nu schimba regulile pe baza diferenței — ea + nu afectează setup-ul, doar expectation management.

      +
    2. +
    3. +

      Take-profit. 13_strategia_3_byh.md:194-195 impune 1:1 fix („nu mai + mult"); 28_2025-05-27.md:130-134 și 08_executie_si_risc.md:619-634 + folosesc TP la 2R / TP1 1R + TP2 2R. Practic: dacă vrei să respecți + regula principală, iei 1R pe prima tranșă și lași restul pe trailing; + varianta 2R e o alegere de execuție, nu o regulă a strategiei.

      +
    4. +
    5. +

      Condiția de trend în scanner. 11_construire_scanere_sf_byd_sld.md:58-62 + construiește triggerul doar din BDATM = 0; + 28_2025-05-27.md:37-52 adaugă Since Bear ≥ 8 din alt indicator. + Practic: versiunea cu ≥ 8 filtrează mai mult și ratează setup-urile cu + trend scurt; versiunea fără filtru le prinde pe toate, dar îți dă listă mai + lungă de triat manual.

      +
    6. +
    7. +

      Lungimea trendului vs. scanner. 13_strategia_3_byh.md:315-318 + acceptă și 2-3 candele de trend; scannerul din 28_2025-05-27.md:144-149 + cere ≥ 8 și pierde explicit acele cazuri. Practic: nu te baza doar pe + scanner dacă vrei să prinzi și trendurile scurte; verifică și manual.

      +
    8. +
    9. +

      Factorul RS/SR. 11_construire_scanere_sf_byd_sld.md:80-93 explică + 100 ca opțiune validă (afișezi 5.97 în loc de 0.0597), cu condiția să + înmulțești pragul; 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341 revine cu o corecție + explicită (pune 1 la filtrare, 100 doar la display). Practic: cu 1 + scrii pragul natural (≤ 0.5); cu 100 trebuie să-l scrii ≤ 50, altfel + filtrezi de 100 de ori mai strâns. Amestecul celor două e singura variantă + greșită sigur.

      +
    10. +
    11. +

      Două seturi de cifre ULTA. 11_construire_scanere_sf_byd_sld.md:139-209 + (doji ~403.60, intrare 404.20, SL 396, TP 418) vs. + 04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:82-183 (close real 373.30, suport 355.48, pivot + 383.74). Ambele sunt marcate ca parțial completări ale sumarizatorului. + Practic: nu lua niciunul ca exemplu „de curs"; singurele cifre confirmate + sunt cele din al doilea set (close/suport/pivot), nu nivelurile de trade.

      +
    12. +
    13. +

      Ce pivot citești pe weekly. Regula de pivoți spune Weekly → pivoți + Quarterly (03_timeframes_set_up.md:69-79; + 11_construire_scanere_sf_byd_sld.md:63-69); MICI, care e un buy doji + weekly, se citește față de pivotul monthly + (01_buy_doji_si_strategia_mici.md:12, 357, 370-379). Materialul nu + le împacă. Practic: pe perechea monthly → weekly, trage-le pe amândouă; + un doji la ambele niveluri e oricum mai bun decât la unul.

      +
    14. +
    15. +

      Intri la close sau aștepți retestul. Lecția 13 intră la close + (13_strategia_3_byh.md:191-195); sumarul Q&A din 25.08.2025 scrie „nu + intri la închiderea lui — aștepți retestul" (20_2025-08-25.md:144-145), + iar transcrierile spun o treime la close și restul la retest + (Pasul 8). Desfăcută complet în A3_intrarea.md.

      +
    16. +
    +

    Transfer

    Tot ce urmează în secțiunea asta e judecata mea, nu materialul cursului. @@ -1283,7 +2412,7 @@ stop-uri.

    scaner jbtgrshdATM, BDATM/SDATM = 0 nu -listă manuală de 8-12 nume BET, verificată o dată pe zi (5 min/zi) cu condiția doji din §1.2 +listă manuală de 8-12 nume BET, verificată o dată pe zi (5 min/zi) cu condiția doji din Pasul 3 indicator RSV1ATM pentru proximitate de pivot @@ -1404,7 +2533,7 @@ R3 = H + 2*(PP - L) S3 = L - 2*(H - PP)

    Exemplu ilustrativ pe TLV (cifrele H/L/C sunt ale mele, ca să arăt pașii): H = 25,00, L = 23,00, C = 24,50 → PP = 24,17; R1 = 25,34; S1 = 23,34; R2 = 26,17; S2 = 22,17. Doji-ul „la nivel" înseamnă că low-ul/high-ul lui -cade în vecinătatea unuia dintre aceste numere (C2).

    +cade în vecinătatea unuia dintre aceste numere (Pasul 4).

    Ce se rupe din cauza lichidității:

    • Spread-ul mănâncă un TP de 1:1. Pe un nume cu spread 1 %, o mișcare de @@ -1440,9 +2569,9 @@ Estimarea e a mea, nu a materialului.

      s-a întâmplat în următoarele 8 candele. Măsurabil: 20 de fișe completate.
    • Calculează pivoții monthly pentru 6 luni în urmă pe 5 nume BET, în Excel, și verifică câte doji-uri au căzut la ≤ 1 % de un nivel. Scopul: - să vezi dacă C2 chiar filtrează ceva pe universul mic.
    • + să vezi dacă Pasul 4 chiar filtrează ceva pe universul mic.
    • Testează pe hârtie varianta TP 1:1 vs. TP1 1R + TP2 2R pe minim 10 - semnale (contradicția 2 din 2.4). Notează în jurnal care dă rezultat mai + semnale (punctul 2 din „Unde se contrazice materialul"). Notează în jurnal care dă rezultat mai bun pe BVB, unde limita de 8 candele e mai strânsă.
    • Măsoară spread-ul real la deschidere și la 12:00 pe 5 nume BET, 5 zile la rând. Măsurabil: un tabel cu spread-ul mediu; dacă depășește ~1 %, @@ -1458,7 +2587,7 @@ Estimarea e a mea, nu a materialului.

      — același schelet de trigger (extrema 4 candele, confirmare), iar buy hammer-ul apare des după buy doji (01_buy_doji_si_strategia_mici.md:50, 543-545). Când amândouă sunt pe aceeași candelă, semnalul e mai puternic - (102_24032026.txt:167-170; 2.1 #10).
    • + (102_24032026.txt:167-170; Pasul 5, rândul 10).
    • Se suprapune cu MP² (02_mp2.md): MP² dă unde (bottom-ul, crossing-ul de pivoți), Buy Doji dă când (trigger-ul de candelă). Pe BVB, combinația e soluția pentru lipsa trigger-elor fine (09_2025-12-09.md:1184-1190).
    • @@ -1466,6 +2595,45 @@ Estimarea e a mea, nu a materialului.

    • Risc și execuție: A1_risc.md.
    • Contradicțiile din material, toate la un loc: A2_contradictii.md.
    • -
    + +
    +

    Surse

    +

    13_strategia_3_byh.md +(fișierul principal, S3) · +11_construire_scanere_sf_byd_sld.md +(scanerele; indicator proprietar) · +01_filtre_scaner_bull_bear_reversal_pp.md +(filtre + ULTA) · +01_buy_doji_si_strategia_mici.md +(aplicarea zilnică, varianta MICI) · +08_executie_si_risc.md +(3 poziții, sizing) · +28_2025-05-27.md (scanere, filtre, short) · +22_2025-08-04.md (regulile dictate) · +03_2026-08-11.md (SL 4 candele, >65 %, weekly) · +18_2025-09-23.md (LABU) · +20_2025-08-25.md (retest 1/2–1/3 pe prop; stopul pe TF-ul deciziei) · +26_2025-06-11.md (limita zilnică pe poziții deschise) · +23_2025-07-29.md (tranșe weekly) · +09_2025-12-09.md (pivoții pe BVB) · +03_timeframes_set_up.md (pivoții pe timeframe; TF mare vs. TF mic) · +A3_intrarea.md (la close sau la retest).

    +
    +

    Notă de denumire. Fișierul principal se numește 13_strategia_3_byh.md, +dar titlul lui e „Strategia 3: Buy Doji / Sell Doji (SF BYD/SLD)" +(13_strategia_3_byh.md:1). „BYH" din slug nu e o strategie separată de +„breakout" — grep -rn -i 'byh' prin summaries/ găsește doar acest +fișier. Fișele byd_sld.md și byh.md descriu aceeași strategie; capitolul +ăsta le folosește ca o singură sursă.

    +
    +

    Ce e al meu, nu al cursului, în capitolul ăsta: blocurile „Completare +proprie" (succesiunea pe două timeframe-uri și ce se strică pe TF mic; +stopul „la ochi"; exemplul de sizing; TP1 la intrarea în tranșe; barele de +după intrare din diagramele de ieșire), aritmetica timpului („8 candele = +…", marcată aritmetica mea), secțiunea Transfer întreagă, și toate +diagramele: sunt exemple construite, fără ticker, cu excepția LABU, unde +doar procentele sunt ale cursului. Mecanismul stop-urilor de deasupra +high-ului e completarea sumarizatorului lecției 13, marcată ca atare la +Pasul 6.

    diff --git a/summaries/17_STRATEGII/01_buy_doji.md b/summaries/17_STRATEGII/01_buy_doji.md index 0ae1e09..27023a5 100644 --- a/summaries/17_STRATEGII/01_buy_doji.md +++ b/summaries/17_STRATEGII/01_buy_doji.md @@ -5,66 +5,29 @@ dificultate `2/5` · `merge pe prop: da, cu ajustări` · `merge pe BVB: da, long-only` -**Surse:** [`13_strategia_3_byh.md`](../03_MODUL_2/13_strategia_3_byh.md) -(fișierul principal, S3) · -[`11_construire_scanere_sf_byd_sld.md`](../03_MODUL_2/11_construire_scanere_sf_byd_sld.md) -(scanerele; indicator proprietar) · -[`01_filtre_scaner_bull_bear_reversal_pp.md`](../04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md) -(filtre + ULTA) · -[`01_buy_doji_si_strategia_mici.md`](../08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md) -(aplicarea zilnică, varianta MICI) · -[`08_executie_si_risc.md`](../08_ANALIZA_ZILNICA/08_executie_si_risc.md) -(3 poziții, sizing) · -[`28_2025-05-27.md`](../09_QA/28_2025-05-27.md) (scanere, filtre, short) · -[`22_2025-08-04.md`](../09_QA/22_2025-08-04.md) (regulile dictate) · -[`03_2026-08-11.md`](../09_QA/03_2026-08-11.md) (SL 4 candele, >65 %, weekly) · -[`18_2025-09-23.md`](../09_QA/18_2025-09-23.md) (LABU) · -[`20_2025-08-25.md`](../09_QA/20_2025-08-25.md) (retest 1/2–1/3 pe prop) · -[`26_2025-06-11.md`](../09_QA/26_2025-06-11.md) (limita zilnică pe poziții deschise) · -[`23_2025-07-29.md`](../09_QA/23_2025-07-29.md) (tranșe weekly) · -[`09_2025-12-09.md`](../09_QA/09_2025-12-09.md) (pivoții pe BVB). +**Ce face.** Cumperi când un doji apărut la capătul unei scăderi e urmat, în +maximum 3 candele, de o candelă care **închide peste high-ul lui**. Stopul +stă sub cele mai joase 4 candele, prima țintă e la aceeași distanță (1:1), +restul poziției merge pe trailing. Sell Doji e oglinda, pe short. E singura +regulă de intrare din curs **fără niciun indicator proprietar**: o vezi cu +ochiul pe orice platformă. -> **Notă de denumire.** Fișierul principal se numește `13_strategia_3_byh.md`, -> dar titlul lui e „Strategia 3: Buy Doji / Sell Doji (SF BYD/SLD)" -> (`13_strategia_3_byh.md:1`). „BYH" din slug nu e o strategie separată de -> „breakout" — `grep -rn -i 'byh'` prin `summaries/` găsește doar acest -> fișier. Fișele `byd_sld.md` și `byh.md` descriu aceeași strategie; capitolul -> ăsta le folosește ca o singură sursă. +**Pe ce timeframe.** „Orice timeframe (5 min → monthly)" +(`13_strategia_3_byh.md:10-11`). Tu o vei folosi pe trei perechi — setup pe +TF-ul mare, intrare pe cel mic: **weekly → daily**, **monthly → weekly**, +**daily → 60 min**. Pasul 2 le pune una lângă alta. ---- - -## Nivel 0 — Ideea - -### Ce exploatează - -Regula de intrare a strategiei e **singura din tot cursul care nu conține -niciun indicator proprietar**: un doji (open ≈ close) la finalul unui trend, -apoi prima candelă care închide peste high-ul lui (long) sau sub low-ul lui -(short), în maximum 3 candele. Nu ai nevoie de `jbtgrshdATM`, de `RSV1ATM` -sau de scanner ca s-o aplici — o vezi cu ochiul pe orice platformă. - -Ce exploatează e **epuizarea temporară a vânzătorilor (sau cumpărătorilor) -după un trend, plus stop-urile grupate dincolo de extrema dojiului**. După -8-10 candele de scădere, vânzătorii care mai aveau marjă au ieșit deja pe -drum; la doji, cumpărătorii noi (vânători de preț mic) apar în număr aproape -egal, de aceea bara închide aproape de unde a deschis. Confirmarea e -mecanismul real: când o candelă închide peste high-ul dojiului, toți cei care -au vândut (sau au shortat) în bara de indecizie sunt pe pierdere, iar -stop-urile lor de deasupra acelui high se execută automat ca ordine de -cumpărare — de aceea raportul se inversează brusc, nu treptat -(`13_strategia_3_byh.md:102-149`; `01_buy_doji_si_strategia_mici.md:20-28`). -*(Explicația mecanismului de aici e completarea sumarizatorului, nu material -al cursului: `13_strategia_3_byh.md:342-350` notează explicit că secțiunea -„De ce apare inversarea" — mecanismul cumpărători/vânzători — e „completări -ale mele, dincolo de ce spune explicit transcrierea".)* - -Cifra declarată pentru trigger nu e unică în surse: **70-75 %** +**Cât de des dă semnal și cât de des merge.** Des: e un pattern de o singură +candelă, pe orice asset — de aceea îl predă cursul în locul Morning Star, care +apare rar (`03_2026-08-11.md:180-218`). Materialul nu dă o cifră de semnale pe +săptămână. Rata declarată nu e unică: **70-75 %** (`13_strategia_3_byh.md:11-12`), **65-70 %** (`01_buy_doji_si_strategia_mici.md:146-152`), **peste 65 %** -(`03_2026-08-11.md:185-186`) — vezi contradicția din 2.4. Nu un edge -uriaș, de aceea stopul e obligatoriu și de aceea strategia se repetă des. +(`03_2026-08-11.md:185-186`) — vezi „Unde se contrazice materialul", punctul 1. +Nu un edge uriaș, de aceea stopul e obligatoriu și de aceea strategia se +repetă des. -### Diagrama de ansamblu +**Tot trade-ul, dintr-o privire:** Buy Doji — daily (exemplu construit, fără ticker) @@ -189,7 +152,7 @@ fereastra de 3 → intrare la close-ul de confirmare, SL la extrema ultimelor sunt cele din exemplul construit al lecției (`13_strategia_3_byh.md:38-95`, `:97-100`). -### Fraza de decizie +**Fraza de decizie:** > Cumpăr când un doji de după un downtrend e confirmat de o închidere peste > high-ul lui în maximum 3 candele, ies la TP egal cu SL sau pe trailing, și @@ -199,343 +162,823 @@ Oglinda: vând în lipsă când un doji de după un uptrend e confirmat de o închidere sub low-ul lui, cu aceleași reguli de SL/TP/timp (`13_strategia_3_byh.md:227-232`). -### Când NU o folosești +**Cei 9 pași:** [1. lista](#pasul-1) · [2. perechea și direcția](#pasul-2) · +[3. trendul și doji-ul](#pasul-3) · [4. locația](#pasul-4) · +[5. confirmările](#pasul-5) · [6. trigger-ul](#pasul-6) · +[7. stopul și mărimea](#pasul-7) · [8. intrarea](#pasul-8) · +[9. ieșirea](#pasul-9). Apoi: [oglinda short](#oglinda-short), +[exemplul LABU](#exemplul-labu), [checklist](#checklist). -- **Pe short, când piața e „foarte strong bull".** Un sell doji poate fi doar - un bull flag; „când shortăm, să fie overall piața praf" - (`28_2025-05-27.md:313-317`). -- **Împotriva direcției de pe weekly/monthly.** Nu shortezi contra unui Buy - Doji weekly și nu cumperi contra unui Sell Doji weekly - (`03_2026-08-11.md:220-223`; `01_buy_doji_si_strategia_mici.md:35-37`). -- **Pe doji care nu vine după trendul corect** — după gap-up, sus în - rezistență, sau după uptrend cu volum „varză" (miros de blow-off top) - (`01_buy_doji_si_strategia_mici.md:227-235`). -- **La acțiuni sub 10 $ ca Sell Doji** — short squeeze, manipulabile, gap-uri - intraday (`28_2025-05-27.md:397-402`, `560-576`). -- **Pe 60 min singur** — doar în direcția unui swing long deja stabilit pe - daily (`01_buy_doji_si_strategia_mici.md:38-40`). +**Cum citești blocurile.** Regulile au trimitere `fișier:linie`; textul fără +trimitere dintre ele e explicația mea și nu adaugă reguli. Unde completez o +regulă pe care materialul n-o dă, blocul începe cu **Completare proprie:** și +spune pe ce mă sprijin. --- -## Nivel 1 — Regulile + +## Pasul 1 — Îți faci lista de candidați -### 1.1 Filtrul de context (înainte să te uiți la grafic) +**Rulezi scanerul (sau treci manual prin lista ta) și păstrezi doar +simbolurile lichide, pe care chiar poți intra și ieși.** Scanerul nu-ți dă +undă verde; îți economisește timpul de căutat. Restul pașilor îi faci pe +grafic, pe fiecare candidat. -| # | Condiție | Prag | Unde o citești | Sursă | -|---|---|---|---|---| -| C1 | Trend anterior în direcția opusă setup-ului | 8-10 candele ideal; scanner cere `Since Bear ≥ 8` (long) / `Since Bull ≥ 8` (short) | Ochii / scaner | `13_strategia_3_byh.md:185-187`; `28_2025-05-27.md:40-52` | -| C2 | Doji-ul stă lângă un nivel | proximitate ≤ 0,5 % pe 60 min; 1-2 % pe Daily | Ochii / `RSV1ATM` | `11_construire_scanere_sf_byd_sld.md:99-104` | -| C3 | Pivoții sunt sincronizați cu timeframe-ul | 60 min → pivoți Weekly; Daily → Monthly; Weekly → Quarterly | Setare scaner | `11_construire_scanere_sf_byd_sld.md:63-69`; `01_filtre_scaner_bull_bear_reversal_pp.md:36-42` | -| C4 | Lichiditate suficientă | close > 30-40 $; volum mediu daily ≥ 500.000 (ideal > 1 milion pe 3 luni) | Filtru scaner | `28_2025-05-27.md:372-380`; `11_construire_scanere_sf_byd_sld.md:70-73` | -| C5 | Context de piață/sector pentru short | piața sau sectorul slab; 30 de sell-uri în același sector = problemă de sector | Scaner (sector/industry) | `28_2025-05-27.md:313-330` | -| C6 | Proiecție bull/bear aliniată cu direcția (edge, nu obligatoriu) | „proiecție bull" pe long | `Market Preview` (`RSV1ATM`) | `13_strategia_3_byh.md:223-225` | - -Dacă o condiție nu are prag numeric în material, rândul de mai sus spune -„fără prag în material". Nu inventez niciunul. - -### 1.2 Setup — ce trebuie să vezi pe grafic - -1. **Trend:** downtrend pentru Buy Doji, uptrend pentru Sell Doji, 8-10 - candele ideal. Exemplele reale au avut și 2-3 candele și au funcționat, - dar sunt tratate ca semnal mai slab (`13_strategia_3_byh.md:185-187`, - `315-318`). -2. **Doji:** open ≈ close, corp foarte mic față de range-ul total, fitil în - ambele părți. La scanerul de watchlist, parametrul standard de doji se pune - pe **10** (nu 5) — adică corp maximum ~10 % din range - (`28_2025-05-27.md:343-349`; `13_strategia_3_byh.md:15-30`). -3. **Doji la nivel:** aproape de suport sau pivot point pentru Buy Doji, - aproape de rezistență sau pivot point pentru Sell Doji - (`13_strategia_3_byh.md:188-190`). -4. **Fereastra de confirmare:** maximum 3 candele după doji. Nu intri pe doji. - -Diagrama de mai jos arată exact diferența dintre un setup care se confirmă și -unul care expiră — diferența e strict numerică (a închis sau nu peste 50.10), -nu vizuală. - - - - DA — confirmare la +2, în fereastră - - high doji 50.10 - - low doji 49.20 - - - - - - - - - - - - - - - - - doji - confirmare +2 — intrare 50.40 - +1: close 49.90 — sub 50.10, nu confirmă - +2: close 50.40 — peste 50.10, confirmă (intrare la close) - - - NU — nicio confirmare în 3 candele - - high doji 50.10 - - low doji 49.20 - - - - - - - - - - - - - - - - - - - doji - a 4-a - +1: 49.95; +2: 50.05; +3: 49.85 — toate sub 50.10 - a 4-a: close 49.15 — sub low-ul dojiului 49.20, setup mort - - Serii construite: open = close-ul barei anterioare. - Doji: h 50.10 / l 49.20. Fereastra = maximum 3 candele după doji. - - -### 1.3 Trigger - -| | Condiție | Exemplu cu cifre | -|---|---|---| -| **DA** | Prima candelă care închide **peste high-ul dojiului** (long) / **sub low-ul lui** (short), în maximum 3 candele după doji. Intri la close-ul candelei de confirmare | doji high 53.00 / low 51.60; a doua candelă închide 53.70 → Buy Doji, intrare 53.70 (`01_buy_doji_si_strategia_mici.md:136-138`) | -| **NU — prea devreme** | Doji singur, sau candele care închid încă sub high (ex. +1 închide 49.90, sub 50.10) | doji high 50.10; +1 închide 49.90 → nu e semnal (`13_strategia_3_byh.md:158-167`) | -| **NU — invalidat** | Nicio candelă nu închide dincolo de doji în cele 3 candele → setup expirat; dacă a 4-a închide sub low-ul dojiului, „setup mort" | doji 53.00/51.60; +1, +2, +3 rămân sub 53.00, a 4-a închide 51.20 → nu intri (`01_buy_doji_si_strategia_mici.md:222-225`) | -| **NU — context** | Doji care nu vine după trendul corect (gap-up în rezistență; uptrend cu volum slab) | cazul CTLD, „nu funcționează" explicit (`13_strategia_3_byh.md:308`) | - -Oglinda short, cu cifrele ei: doji high 49.40 / low 48.00, a doua candelă -închide 47.30 (sub 48.00) → Sell Doji, intrare short, SL 49.45, TP 45.15 -(`01_buy_doji_si_strategia_mici.md:312-314`). Graficul întreg al variantei -short: - - - Sell Doji — daily (exemplu construit, fără ticker) - - SL 100.10 (high 4 candele) - - intrare short 99.00 - - TP 97.90 = 1R - - trail 96.45 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - volum - doji 99.20 / 100.10 - ieșire pe trail 96.60 - bara 15: close 99.40 peste low-ul dojiului 99.20 — NU confirmă - bara 16: close 99.00 sub 99.20 — confirmare (intrare short) - Intrare short la close sub low-ul dojiului, SL la high 4 candele, TP 1:1, apoi trail. + + +Scanerul Buy Doji în TradeStation +ordinea filtrelor și capcanele + +Univers: +All Stocks (~13.000) +S&P 500 · Russell 3000 + +mai mare = găsește mai mult, durează mai +mult + + +Trigger: jbtgrshdATM +BDATM = 0 +(Sell Doji: SDATM = 0) + +capcană: Interval = TF-ul scanerului, setat +manual +capcană: 0 = ultima candelă închisă; 1 = cu +o zi în urmă + + +Nivel: RSV1ATM +% of PP ≤ 0.5 (60 min) +% of PP ≤ 2 (daily) + +Pivot Interval: 2 = weekly (pe 60 min), 3 = +monthly (pe daily) +capcană: RS/SR = 1 la filtrare; cu 100, +pragul se scrie ×100 + + +Lichiditate: Volume Colors +Average Volume ≥ 500.000 +Average Length = 10 + +volum daily, indiferent de TF-ul scanerului + + +Opțional: +Since Bear ≥ 8 +Bull Reversal = 1 +RVOL doar Display + +capcană: Bear Reversal e selectat implicit — +comută pe Bull +capcană: în zile extreme, pragurile rigide +golesc lista + + +Lista de candidați +→ o verifici pe grafic +(pașii 2-6). +Scanerul nu e undă verde. +Delay: scanerul vede candela închisă — daily rulat la 12:00 arată triggerul de ieri. -### 1.4 Stop-loss +Ce setezi, în ordinea din diagramă: -**Unde:** extrema (low la long, high la short) **ultimelor 4 candele privind -înapoi de la candela de confirmare** (`13_strategia_3_byh.md:192-193`; -`22_2025-08-04.md:23-29`). +1. **Universul:** `All Stocks` (~13.000 de simboluri), S&P 500 sau o listă + custom (Russell 3000). Mai mare = găsește mai mult, dar durează mai mult + (`11_construire_scanere_sf_byd_sld.md:53-57`). +2. **Trigger-ul:** `jbtgrshdATM`, câmpul `BDATM` (`SDATM` la short), `= 0` + (`11_construire_scanere_sf_byd_sld.md:58-62`). „0" înseamnă ultima candelă + închisă; un cursant care pusese 1 a primit semnalele cu o zi mai devreme + (`28_2025-05-27.md:47-52`). +3. **Nivelul:** `RSV1ATM`, `% of PP` ≤ prag; pivoții și pragul depind de + timeframe (Pasul 4). +4. **Lichiditatea:** close > 30-40 $; volum mediu daily ≥ 500.000 (ideal + > 1 milion pe 3 luni) (`28_2025-05-27.md:372-380`; + `11_construire_scanere_sf_byd_sld.md:70-73`). +5. **Opțional:** `Since Bear ≥ 8` pentru trend (`28_2025-05-27.md:40-52`) și + Bull Reversal (Pasul 5). -**De ce acolo:** acel nivel e ultimul loc care, dacă e spart, anulează ideea -că vânzătorii (sau cumpărătorii) s-au epuizat. În practică, cel mai jos low -din 4 candele coincide aproape întotdeauna cu un swing low -(`22_2025-08-04.md:24-29`). +**La short, încă un filtru, înainte de grafic:** piața sau sectorul trebuie să +fie slabe. 30 de sell-uri în același sector = problemă de sector +(`28_2025-05-27.md:313-330`). Nu există prag numeric în material. -**Cât e în %/R:** procentul depinde de simbol; la exemplul construit, doji low -51.60 → SL 51.55 (cu 5 cenți sub), adică risc mic față de intrare -(`01_buy_doji_si_strategia_mici.md:139-141`). La LABU, SL a fost −9 % față de -intrare (`18_2025-09-23.md:716-719`). Nu se folosește ATR pentru acest SL în -sursele citite. +**Capcane de scaner:** -### 1.5 Take-profit și tranșe +- **Interval-ul indicatorului nu se sincronizează automat** cu timeframe-ul + scanerului. Dacă uiți, calculează pe alt timeframe + (`11_construire_scanere_sf_byd_sld.md:317-320`). +- **Delay-ul scanerului:** rulează pe candela deja închisă; un scanner daily + la ora 12 arată triggerul de ieri (`11_construire_scanere_sf_byd_sld.md:321-324`). +- **RS/SR: factorul `1` pentru filtrare, `100` doar pentru display.** Cu + `100` ca prag, înmulțește pragul cu 100, altfel filtrezi greșit + (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341`). +- **Bear Reversal e selectat implicit** (alfabetic) la deschiderea + indicatorului — pe un scaner long comută manual pe Bull, altfel filtrezi cu + semnalul opus (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:343-346`). +- **Nu pune praguri rigide (RVOL, distanță) în zile de mișcare extremă** — + pot elimina toți candidații valizi (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:303-327`). +- **Sistemul nu vede orice Buy Doji.** Uneori un doji valid nu e marcat; îl + recunoști vizual, cu aceeași regulă de închidere + (`01_buy_doji_si_strategia_mici.md:838-839`). -| Tranșă | Ieșire la | De unde vine ținta | Ce faci cu stopul | -|---|---|---|---| -| 1 din 3 | TP = SL ca distanță (1:1), proiectat de la close-ul de confirmare | `13_strategia_3_byh.md:194-195` | rămâne sub pozițiile 2-3 | -| 2 din 3 | pe trailing stop | `13_strategia_3_byh.md:196-200` | trail = low-ul candelei cu gap peste high-ul precedentei (long); ieși la close dincolo de el | -| 3 din 3 | mai departe, spre break-even/trend | `13_strategia_3_byh.md:204-213` | poți risca tot stopul inițial | - -**Regula de bază:** TP 1:1, „nu mai mult". Profitul suplimentar vine din -trailing, nu din mutarea țintei fixe (`13_strategia_3_byh.md:319-321`). - -**Limită de timp:** dacă nici TP, nici SL nu se ating în **8 candele** de la -intrare, ieși oricum (`13_strategia_3_byh.md:201-202`). - -**Varianta cu două ținte** (execuție): TP1 = 1R, TP2 = 2R, a treia pe trail -(`08_executie_si_risc.md:619-634`). Contradicția cu „nu mai mult" e listată -la 2.4. - -**Varianta weekly/MICI:** ținte în trepte pe niveluri (R1 → R2 → vârful -anterior → SMA 200 → jumătatea marubozu-ului mare → fostul suport spart), iar -unde se suprapun mai multe niveluri, acolo iei profit -(`01_buy_doji_si_strategia_mici.md:531-536`). Orizont 6-7-8 luni -(`01_buy_doji_si_strategia_mici.md:538-541`). - -### 1.6 Mărimea poziției - -Regula generală de money management: **maximum 2 % din cont per tranzacție**; -mărimea poziției = (cont × 2 %) / distanța până la stop, ajustată cu -spread-ul și **rotunjită în jos** (`03_MODUL_2/04_money_management_position_sizing.md:4-11`, `28-34`). -**NEACOPERIT ÎN MATERIAL:** Strategia 3 nu dă o cifră proprie de risc per -trade, nici o mărime minimă de cont. Singurele cifre apropiate vin din alte -lecții: 2 % general (money management) și risc fix intraday 25 $ cu țintă 4R -(`08_executie_si_risc.md:40-49`), care nu sunt date pentru S3. - -**Exemplu numeric ilustrativ** (cifrele exemplului sunt ale mele, nu din -curs; din material vine doar regula de 2 %): pe un cont de 50.000 $, risc -maxim = 1.000 $. Intrare -50.40, SL 49.20 → distanță 1.20 $/acțiune. Mărime = 1.000 / 1.20 = 833,3 → -**833 de acțiuni** rotunjit în jos (risc efectiv 999,6 $). Dacă poziția se -împarte în 3 („multiplu de 3 poziții", `13_strategia_3_byh.md:204-213`; -varianta de execuție cu 48 de acțiuni pe un risc de 25 $ în -`08_executie_si_risc.md:619-634`), fiecare parte are același stop. - -### 1.7 Checklist de tipărit - -- [ ] Am un trend anterior în direcția opusă setup-ului: 8-10 candele ideal; 2-3 candele acceptate, dar tratate ca semnal mai slab. -- [ ] Candelă cu open ≈ close, corp mic față de range, fitil în ambele părți. -- [ ] Doji-ul e la un suport/pivot (long) sau rezistență/pivot (short). -- [ ] A închis o candelă peste high-ul dojiului (long) / sub low (short), în maximum 3 candele după doji. -- [ ] Dacă au trecut 3 candele fără confirmare → setup expirat, nu intru. -- [ ] Stop = extrema ultimelor 4 candele de la candela de confirmare. -- [ ] TP = aceeași distanță ca stop, proiectată de la close-ul de confirmare. -- [ ] Mărimea poziției = risc$ / distanța la stop, rotunjit în jos. -- [ ] Verific direcția de pe weekly/monthly: nu merg contra unui doji weekly. -- [ ] Dacă în 8 candele nu s-a atins nici TP, nici SL → ies la a 8-a. +**Treci mai departe doar dacă** simbolul trece de pragul de lichiditate și, +la short, piața sau sectorul lui e slab. --- -## Nivel 2 — Nuanțele + +## Pasul 2 — Alegi perechea de timeframe-uri și citești direcția pe cel mare -### 2.1 Ce dă edge — ordonat după cât de des apare în material +**Deschizi întâi graficul mare (weekly, monthly sau daily, după pereche) și +te uiți dacă are un Buy Doji sau un Sell Doji confirmat.** El îți spune în ce +direcție **ai voie** să cauți intrarea pe graficul mic. Materialul, pe +fiecare timeframe (`01_buy_doji_si_strategia_mici.md:32-40`): -| # | Criteriu / indicator | De ce dă edge | Cât e confirmat | Sursă | -|---|---|---|---|---| -| 1 | **Locația față de un nivel** (suport/pivot la long, rezistență/pivot la short) | Diferența dintre setup mediocru și bun; doji-ul „la nivel" e cel care contează | **5 surse distincte** (13, 11, 28_QA, 04_MODUL_3, 01_mici); nu apare ca rând separat în `DECIZII.md` | `13_strategia_3_byh.md:188-190`; `11_construire_scanere_sf_byd_sld.md:106-137`; `28_2025-05-27.md:379` | -| 2 | **Confirmarea strictă în fereastra de 3 candele** + SL 4 candele + TP1 = SL (1:1) | Fără confirmare, doji-ul e doar o pauză în trend | **DECIZII 01.1: 3 loturi / 5 zile** (~60-70 % merge; stopul e obligatoriu) | `DECIZII.md:107-109`; `01_buy_doji_si_strategia_mici.md:146-152` | -| 3 | **Trendul anterior corect** (8-10, nu după gap-up/uptrend) | Doji fără trend corect = context invalid | **DECIZII 01.2: 2 loturi / 2 zile**; în rest 3-4 surse | `DECIZII.md:110`; `13_strategia_3_byh.md:185-187`; `22_2025-08-04.md:14` | -| 4 | **Volumul** — acumulare/distribuție, divergență bull/bear | Confirmă dacă epuizarea e reală; trigger fără volum = mișcare falsă | **3 surse** (13, 04_MODUL_3, 01_mici); nu apare în `DECIZII.md` | `13_strategia_3_byh.md:214-226`; `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:296-301`; `01_buy_doji_si_strategia_mici.md:338-347` | -| 5 | **Direcția instituțională de pe weekly/monthly** | Nu mergi contra semnalului banilor mari | **DECIZII 01.3: 1 lot / 2 zile**; plus Q&A explicit | `DECIZII.md:111`; `03_2026-08-11.md:220-223` | -| 6 | **Higher low confirmat de candela din dreapta** (MICI) | Al doilea semn, nu primul; e diferența dintre MICI și un simplu buy doji | **DECIZII 01.n1: 2 loturi / 2 zile** | `DECIZII.md:118`; `01_buy_doji_si_strategia_mici.md:370-386` | -| 7 | **Retest 1/2 sau 1/3** în loc de intrarea la close | Reduce riscul la ~jumătate pe același setup; explicit util pe prop | **DECIZII 01.n1: 2 loturi / 2 zile**; pe prop, Q&A | `DECIZII.md:118`; `20_2025-08-25.md:141-164` | -| 8 | **Bull/Bear Reversal + RVOL** ca filtre agresive | Mai puține rezultate, dar confirmare mai mare | **1 lecție** (04_MODUL_3/01); niciun lot de triaj nu o ridică | `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:44-52`, `303-327` | -| 9 | **Confluența de niveluri pentru ținte** (R1+R2+SMA 200+jumătate marubozu) | Unde se suprapun mai multe rezistențe, iei profit | **1 sursă** (`01_mici`); nu în `DECIZII.md` | `01_buy_doji_si_strategia_mici.md:531-536` | -| 10 | **Mai multe trigger-e pe aceeași candelă** (buy doji + buy momentum + bull reversal) | Semnal mai puternic | **DECIZII 01.5: 1 lot / 1 zi** | `DECIZII.md:113`; `102_24032026.txt:167-170` | -| 11 | **Frecvența patternului ca rată** | Un pattern rar nu-ți produce nimic, oricât de bun; de-aia cursul predă Buy Doji, nu Morning/Evening Star | **1 sesiune**, dar argumentul e explicit | `03_2026-08-11.md:180-218` | -| 12 | **Tranșele** (1/2, 1/3, 1/4) | „Rar all-in la swing"; pentru acțiuni scumpe, 4 tranșe de 1/4 | **DECIZII regula 4: 5 loturi / 16 zile** | `DECIZII.md:47`; `01_buy_doji_si_strategia_mici.md:798-814` | +- **pe daily** — „când intri într-un swing (trigger mecanic, stop și țintă + fixe)"; +- **pe weekly/monthly** — „în ce direcție **ai voie** să tranzacționezi. Un + buy doji weekly e un semnal al banilor mari"; +- **pe 60 min** — „o intrare mai devreme decât MBT-10, dar **numai** în + direcția unui swing long deja stabilit pe daily. Fără contextul de daily, + un buy doji pe 60 min singur nu ajunge". -### 2.2 Setup A+ vs. setup mediocru +Și regula dedusă de el din asta: **nu shortezi contra unui Buy Doji weekly, +nu cumperi contra unui Sell Doji weekly.** „Short-uri de termen scurt în +interiorul structurii, da (el însuși a shortat 2 zile în aceeași săptămână) — +dar nu împotriva semnalului weekly" (`03_2026-08-11.md:220-223`; +`01_buy_doji_si_strategia_mici.md:35-37`). -Același pattern, două contexte. Diagrama le pune alături. +### Aceeași regulă, pe cele trei perechi + + + + Aceeași regulă pe trei perechi — exemplu construit (fără ticker) + A. weekly → daily + weekly: direcția + daily: intrarea + + high doji weekly 105.20 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe daily, + după confirmare + + + + + TP1 1:1 107.50 + intrare 106.30 + high doji 105.20 + SL 105.10 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 1.13 % (pe weekly ar fi 4.77 %) · 8 candele = 8 zile de bursă + + B. monthly → weekly + monthly: direcția + weekly: intrarea + + high doji monthly 113.00 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe weekly, + după confirmare + + + + + TP1 1:1 118.75 + intrare 115.75 + high doji 113.00 + SL 112.75 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 2.59 % (pe monthly ar fi 10.85 %) · 8 candele = 8 săptămâni + + C. daily → 60 min + daily: direcția + 60 min: intrarea + + high doji daily 102.08 + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare: long permis + + zoom pe 60 min, + după confirmare + + + + + TP1 1:1 103.00 + intrare 102.52 + high doji 102.08 + SL 102.04 + = low 4 candele + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pullback: 8 candele + doji la nivel + intrare + stop 0.47 % (pe daily ar fi 1.98 %) · 8 candele ≈ 1,2 zile de bursă (7 bare/zi) + Cifre construite, aceeași formă scalată pe trei perechi. + Procentele reale depind de simbol (LABU daily: stop 9 %). + + +Diagrama e același setup, desenat de trei ori: pe TF-ul mare s-a confirmat un +Buy Doji; pe TF-ul mic prețul face pullback până la high-ul acelui doji, face +un doji acolo și confirmă. Intri pe TF-ul mic. Ce rămâne și ce se schimbă: + +| | **weekly → daily** | **monthly → weekly** | **daily → 60 min** | +|---|---|---|---| +| **Ce spune materialul despre pereche** | parțial: weekly = direcția, daily = trigger-ul de swing (`01_buy_doji_si_strategia_mici.md:32-37`); la MICI, „buy doji și pe daily" e bonus (`:386`) | parțial: MICI pornește din buy doji weekly cu pivotul monthly (`:370-379`); „strategia mici pe monthly […] by doji retestat la 1x2, 1x3" (`:555-556`) | explicit: 60 min doar în direcția swing-ului de pe daily (`:38-40`); exemplul XLE pe 60 min (`20_2025-08-25.md:172-176`) | +| **Pivoții pe graficul de intrare** | monthly | quarterly (`03_timeframes_set_up.md:69-79`) — dar MICI citește pivotul monthly, vezi „Unde se contrazice", punctul 7 | weekly | +| **Pragul de proximitate** | 1-2 % | fără prag în material | ≤ 0,5 % | +| **Stopul: 4 candele pe TF-ul intrării** | 4 candele daily | 4 candele weekly | 4 candele de 60 min | +| **„8 candele" înseamnă** | 8 zile de bursă | 8 săptămâni | ~1,2 zile de bursă *(aritmetica mea: 7 bare pe o sesiune US de 6,5 ore)* | +| **Intrarea** | la close sau la retest (Pasul 8) | în tranșe de 1/3: close, 1/3, 1/2 (`23_2025-07-29.md:206-213`) | la retest 1/2 sau 1/3: candela e înaltă, riscul mare (`transcripts/09_Q_and_A/20_25082025.txt:207-208`) | +| **Cât ții poziția** | limita de 8 zile, restul pe trailing | 6-7-8 luni la MICI (`01_buy_doji_si_strategia_mici.md:538-541`) | *(completare)* intraday sau câteva zile; limita de 8 candele trece peste noapte | + +Pragurile de proximitate: `11_construire_scanere_sf_byd_sld.md:99-104`. +Pivoții: `11_construire_scanere_sf_byd_sld.md:63-69`; +`03_timeframes_set_up.md:69-79`. Stopul se numără pe timeframe-ul pe care +ai luat decizia: la GTLB, un stop care părea „jos de tot" era corect, pentru +că decizia fusese pe weekly, nu pe daily (`20_2025-08-25.md:9-15`). Regulile +MICI se pot copia pe alt TF: „Si sa o folosesti pe daily, pe 60 de minute, pe +ce vrei tu" (`transcripts/09_Q_and_A/20_25082025.txt:154-156`). + +> **Completare proprie: cum leg cele două timeframe-uri și ce se strică când +> cobori.** Materialul spune ce rol are fiecare TF, dar nu dictează +> succesiunea „buy doji pe TF-ul mare → aștepți pullback → buy doji pe TF-ul +> mic → intri". O construiesc din trei piese ale lui: TF-ul mare dă direcția +> (`01_buy_doji_si_strategia_mici.md:32-40`); intrarea după buy doji-ul +> weekly se face pe pullback, ideal la retestul high-ului doji-ului +> (`triaj/DECIZII.md:118` — dar sursa acelei observații, CTZ, nu e legată +> explicit de MICI, `01_buy_doji_si_strategia_mici.md:547-559`); iar la M2D, +> strategia cursului construită exact pe două TF-uri, stopul se numără pe +> TF-ul mic (`fise/m2d.md:68`), cu perechile 60×daily, daily×weekly, +> weekly×monthly (`14_strategia_1_m2d.md:461-466`). +> +> **De ce merită perechea:** pe diagramă, același setup luat doar pe TF-ul +> mare are stopul de 4-5 ori mai larg (4,77 % pe weekly față de 1,13 % pe +> daily, la aceleași cifre construite). Cu același risc în dolari, cumperi de +> 4 ori mai multe acțiuni. +> +> **Ce rămâne valabil când cobori:** toată regula de candelă — trend, doji, +> fereastra de 3, stopul pe 4 candele, 1:1, limita de 8. +> +> **Ce nu mai rămâne:** timpul (8 candele de 60 min se termină a doua zi), +> pivoții (alt nivel, mai slab urmărit) și încrederea în semnal. Materialul +> dă mecanismul: pe TF-urile mici, volumul vine din tranzacții mici, +> reactive la zgomot, iar o mișcare contrară pe TF mic e „cel mai adesea, +> doar zgomot în interiorul" trendului mare +> (`03_timeframes_set_up.md:52-61`). Deducția mea: **pe 60 min vei vedea mai +> multe doji-uri confirmate, și o parte mai mare din ele vor fi false** — +> cifra de 65-70 % nu e dată pe timeframe, deci nu presupune că ține la fel +> pe 60 min. De aceea materialul nu te lasă să iei 60 min singur. +> +> **Pentru antrenament:** perechea daily → 60 min îți dă cele mai multe +> semnale de exersat recunoașterea. Nu trage concluzii despre rata de +> câștig din ea pentru perechile mari. + +### Ce înseamnă „contra direcției", pe grafic + + + NU: Sell Doji daily contra unui Buy Doji weekly — exemplu construit + weekly: direcția + + + + + + + + + + + + + + + + + + + + + + doji weekly + Buy Doji weekly: direcția = long + + WEEKLY: LONG ↑ + confirmare 81.30 > high doji 79.80 + + daily: săptămânile de după confirmare (open 81.30 = close-ul ei) + + + + + SL 84.80 = high 4 candele + intrare short 83.60 + TP1 82.40 — neatins + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short de 1-2 zile: permis + + + SL lovit: poziția short contra weekly + + Sell Doji daily: tehnic valid (close 83.60 < low doji 83.95) + + short daily = CONTRA ✗ + weekly zice long; daily urcă mai departe + Short scurt înăuntrul structurii weekly: da. Poziție short contra ei: nu. + Seria e construită: un singur caz ilustrează regula, nu o dovedește. + + +Pe weekly s-a confirmat un Buy Doji. Pe daily, prețul urcă 9 zile, face un +doji și apoi închide sub low-ul lui: tehnic, un Sell Doji valid. Ca poziție +short, e contra weekly-ului. Prețul coboară o zi, apoi urcă și lovește +stopul. Diagrama e construită; un caz nu dovedește regula, o ilustrează. + +**Nuanța:** Sell Doji pe monthly/weekly înseamnă prudență pe long, nu regulă +absolută. Chiar el: sell doji-ul de pe monthly „nu înseamnă neapărat că se va +materializa" (`01_buy_doji_si_strategia_mici.md:316-326`). + +**Treci mai departe doar dacă** TF-ul mare nu are un doji confirmat în +direcția opusă trade-ului tău. Pe 60 min: doar dacă daily-ul are deja un +swing long stabilit. + +--- + + +## Pasul 3 — Pe graficul mic, găsești trendul care se termină și doji-ul + +**Te uiți la ultimele candele: trebuie să vezi o scădere de 8-10 candele +(pentru Buy Doji) care se oprește într-o candelă cu corp aproape inexistent.** + +### Cum recunoști doji-ul + +Open ≈ close, corp foarte mic față de range-ul total, fitil în ambele părți. +La scanerul de watchlist, parametrul standard de doji se pune pe **10** +(nu 5) — adică corp maximum ~10 % din range +(`28_2025-05-27.md:343-349`; `13_strategia_3_byh.md:15-30`). + + + Ce e doji și ce nu — aceeași bară 50.10 / 49.20 + + + high 50.10 + low 49.20 + + + DA + DA: corp 0.05 + = 5.6 % din range + + + DA + DA, la limită: + corp 0.09 = 10 % + (parametrul 10) + + + NU + NU: corp 0.30 + = 33 % + + + NU + NU: corp mic (5.6 %), + dar fără fitil sus + open 49.60 + + close 49.55 + + ← fără fitil sus + Test doji: corp ≤ 10 % din range (0.90) și fitil în ambele părți. Scară: 0.10 = 26 px. + + +Toate patru au același high și același low. A și B sunt doji. C are corpul +prea mare. D are corpul mic, dar niciun fitil deasupra — regula cere fitil în +ambele părți. Nu te uita la „cât de mică pare candela": împarte corpul la +range. + +### Cât de lung trebuie să fie trendul + +Downtrend pentru Buy Doji, uptrend pentru Sell Doji, **8-10 candele ideal**. +Exemplele reale au avut și 2-3 candele și au funcționat, dar sunt tratate ca +semnal mai slab (`13_strategia_3_byh.md:185-187`, `315-318`). Scanerul cere +`Since Bear ≥ 8` (long) / `Since Bull ≥ 8` (short) +(`28_2025-05-27.md:40-52`), iar contorul numără candelele de la trigger-ul de +sell momentum, nu „candele descrescătoare" (`28_2025-05-27.md:43-46`). + + + Trendul dinaintea dojiului: 9 candele vs. 3 candele — exemplu construit + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + + downtrend 9 candele + DA — ideal (8-10 candele) + + + + + + + + + + + + + + + + + + + + + + + + + + + + doji + confirmare 50.40 + 1 + 2 + 3 + + doar 3 candele + + + Același doji, după un range + range: nu se numără + ACCEPTAT, semnal mai slab + scannerul cu Since Bear ≥ 8 nu-l vede + + +Stânga: 9 candele de scădere, apoi doji-ul și confirmarea — cazul ideal. +Dreapta: același doji, aceeași confirmare, dar după doar 3 candele de scădere +ieșite dintr-un range. Se ia, ca semnal mai slab — iar scannerul cu +`Since Bear ≥ 8` nu ți-l arată deloc (`28_2025-05-27.md:144-149`). + +**Capcană — doji-ul care nu vine după trendul corect.** După un gap-up, sus în +rezistență, sau după un uptrend cu volum „varză" (miros de blow-off top), un +Buy Doji nu se ia (`01_buy_doji_si_strategia_mici.md:227-235`): + +> „am un buy-doji, dar după un gap-up și sus, buy-dojiul ăsta, nu prea am +> încredere în el" (`01_buy_doji_si_strategia_mici.md:231-232`) + +Cazul CTLD e exemplul explicit de „nu funcționează": context invalid, +uptrend anterior, nu downtrend (`13_strategia_3_byh.md:308`). Un caz de acest +tip (construit) e în panoul din dreapta al diagramei de la Pasul 5. + +**Pe cele trei perechi:** cele 8-10 candele se numără pe graficul pe care +cauți doji-ul. Pe weekly, asta înseamnă 2 luni de scădere; pe 60 min, o zi și +jumătate *(aritmetica mea)*. + +**Treci mai departe doar dacă** ai un doji (corp ≤ ~10 % din range, fitil în +ambele părți) după o scădere clară — ideal 8-10 candele, minim 2-3 — și nu +după un gap-up sau un uptrend. + +--- + + +## Pasul 4 — Verifici că doji-ul stă pe un nivel + +**Tragi pe grafic pivoții timeframe-ului superior și măsori în procente cât de +departe e low-ul doji-ului de cel mai apropiat suport sau pivot.** Ideal +aproape de suport sau pivot point pentru Buy Doji, aproape de rezistență sau +pivot point pentru Sell Doji (`13_strategia_3_byh.md:188-190`). + + + Doji la nivel vs. doji în aer — daily, pivoți monthly (exemplu construit) + DA — doji la nivel + NU — doji în aer + + + pivot monthly S1 49.00 + + PP 53.50 + + S1 46.00 + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + + + + + + + + + + + + + + + + + + + + doji + confirmare + + low 49.20 = +0,41 % față de 49.00 + → la nivel (daily: ≤ 1-2 %) + + + + cel mai apropiat nivel: 46.00, la 6,96 % + → doji în aer + (PP 53.50 e deasupra, la 8,74 % de low) + 60 min: prag ≤ 0,5 %, pivoți weekly · daily: 1-2 %, pivoți monthly · weekly: pivoți quarterly + Aceeași serie, aceeași scară; nivelurile 49.00 / 46.00 / 53.50 sunt construite. + + +Aceeași formă de două ori. În stânga, low-ul doji-ului e la 0,41 % de pivot: +„la nivel". În dreapta, cel mai apropiat nivel e la aproape 7 %: doji în aer. +Ochiul nu vede diferența; procentul da. + +**Pragul, pe timeframe:** ≤ 0,5 % pe 60 min; 1-2 % pe Daily. Motivul: la +0,5 % pe daily găsești foarte puține simboluri +(`11_construire_scanere_sf_byd_sld.md:99-104`). + +**Pivoții, sincronizați cu timeframe-ul:** 60 min → pivoți Weekly; Daily → +Monthly; Weekly → Quarterly (`11_construire_scanere_sf_byd_sld.md:63-69`; +`01_filtre_scaner_bull_bear_reversal_pp.md:36-42`). În scaner: +`Pivot Interval = 2` pe 60 min, `= 3` pe Daily +(`11_construire_scanere_sf_byd_sld.md:63-69`). + +**Treci mai departe doar dacă** low-ul doji-ului (high-ul, la short) e sub +pragul timeframe-ului tău față de un suport, o rezistență sau un pivot. + +--- + + +## Pasul 5 — Aduni confirmările: A+ sau mediocru? + +**Înainte de trigger, numeri câte motive independente ai pentru același +trade.** Pașii 3-4 sunt minimul. Ce urmează nu e obligatoriu, dar e ce +separă un setup A+ de unul mediocru — răspunsul la „ce să corelez ca să am +mai multe confirmări". Setup A+ vs. setup mediocru (două panouri, exemple construite) A+ — doji la suport, volum în acumulare @@ -708,79 +1151,786 @@ Același pattern, două contexte. Diagrama le pune alături. | Direcție weekly | nu contrazice un Buy Doji weekly (`03_2026-08-11.md:220-223`) | contra unui Sell Doji weekly (`01_buy_doji_si_strategia_mici.md:35-37`) | | Rezultat | „sfântul buy doji" = double bottom + close peste pivot monthly + proiecție bull (`01_buy_doji_si_strategia_mici.md:351-360`) | CTLD: context invalid, setup nereușit (`13_strategia_3_byh.md:308`) | -### 2.3 Gotchas +**Toate confirmările din material, ordonate după cât de des apar:** -1. **Nu intra pe doji, intri pe trigger.** Fără închidere dincolo de - high/low în 3 candele, doji-ul a fost doar o pauză în trend - (`01_buy_doji_si_strategia_mici.md:818-821`). -2. **Interval-ul indicatorului nu se sincronizează automat** cu timeframe-ul - scanerului. Dacă uiți, calculează pe alt timeframe - (`11_construire_scanere_sf_byd_sld.md:317-320`). -3. **Delay-ul scanerului:** rulează pe candela deja închisă; un scanner daily - la ora 12 arată triggerul de ieri (`11_construire_scanere_sf_byd_sld.md:321-324`). -4. **RS/SR: factorul `1` pentru filtrare, `100` doar pentru display.** Cu - `100` ca prag, înmulțește pragul cu 100, altfel filtrezi greșit - (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341`). -5. **Bear Reversal e selectat implicit** (alfabetic) la deschiderea - indicatorului — pe un scaner long comută manual pe Bull, altfel filtrezi cu - semnalul opus (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:343-346`). -6. **Sistemul nu vede orice Buy Doji.** Uneori un doji valid nu e marcat; îl - recunoști vizual, cu aceeași regulă de închidere - (`01_buy_doji_si_strategia_mici.md:838-839`). -7. **Bottom-ul poate mai face un picior.** Double bottom-ul cu buy doji weekly - poate deveni triple bottom sau bear flag fără divergență de volum; de - aceea stopul stă sub structură, nu „undeva jos" - (`01_buy_doji_si_strategia_mici.md:833-836`). -8. **Nu pune praguri rigide (RVOL, distanță) în zile de mișcare extremă** — - pot elimina toți candidații valizi (`04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:303-327`). -9. **Nu extinde targetul peste 1:1** — profitul în plus vine din trailing - (`13_strategia_3_byh.md:319-321`). +| Criteriu | De ce dă edge | Cât e confirmat | Sursă | +|---|---|---|---| +| **1. Locația față de un nivel** (suport/pivot la long, rezistență/pivot la short) | Diferența dintre setup mediocru și bun; doji-ul „la nivel" e cel care contează | **5 surse distincte** (13, 11, 28_QA, 04_MODUL_3, 01_mici); nu apare ca rând separat în `DECIZII.md` | `13_strategia_3_byh.md:188-190`; `11_construire_scanere_sf_byd_sld.md:106-137`; `28_2025-05-27.md:379` | +| **2. Confirmarea strictă în fereastra de 3 candele** + SL 4 candele + TP1 = SL (1:1) | Fără confirmare, doji-ul e doar o pauză în trend | **DECIZII 01.1: 3 loturi / 5 zile** (~60-70 % merge; stopul e obligatoriu) | `DECIZII.md:107-109`; `01_buy_doji_si_strategia_mici.md:146-152` | +| **3. Trendul anterior corect** (8-10, nu după gap-up/uptrend) | Doji fără trend corect = context invalid | **DECIZII 01.2: 2 loturi / 2 zile**; în rest 3-4 surse | `DECIZII.md:110`; `13_strategia_3_byh.md:185-187`; `22_2025-08-04.md:14` | +| **4. Volumul** — acumulare/distribuție, divergență bull/bear | Confirmă dacă epuizarea e reală; trigger fără volum = mișcare falsă | **3 surse** (13, 04_MODUL_3, 01_mici); nu apare în `DECIZII.md` | `13_strategia_3_byh.md:214-226`; `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:296-301`; `01_buy_doji_si_strategia_mici.md:338-347` | +| **5. Direcția instituțională de pe weekly/monthly** | Nu mergi contra semnalului banilor mari | **DECIZII 01.3: 1 lot / 2 zile**; plus Q&A explicit | `DECIZII.md:111`; `03_2026-08-11.md:220-223` | +| **6. Higher low confirmat de candela din dreapta** (MICI) | Al doilea semn, nu primul; e diferența dintre MICI și un simplu buy doji | **DECIZII 01.n1: 2 loturi / 2 zile** | `DECIZII.md:118`; `01_buy_doji_si_strategia_mici.md:370-386` | +| **7. Retest 1/2 sau 1/3** în loc de intrarea la close | Reduce riscul la ~jumătate pe același setup; explicit util pe prop | **DECIZII 01.n1: 2 loturi / 2 zile**; pe prop, Q&A | `DECIZII.md:118`; `20_2025-08-25.md:141-164` | +| **8. Bull/Bear Reversal + RVOL** ca filtre agresive | Mai puține rezultate, dar confirmare mai mare | **1 lecție** (04_MODUL_3/01); niciun lot de triaj nu o ridică | `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:44-52`, `303-327` | +| **9. Confluența de niveluri pentru ținte** (R1+R2+SMA 200+jumătate marubozu) | Unde se suprapun mai multe rezistențe, iei profit | **1 sursă** (`01_mici`); nu în `DECIZII.md` | `01_buy_doji_si_strategia_mici.md:531-536` | +| **10. Mai multe trigger-e pe aceeași candelă** (buy doji + buy momentum + bull reversal) | Semnal mai puternic | **DECIZII 01.5: 1 lot / 1 zi** | `DECIZII.md:113`; `102_24032026.txt:167-170` | +| **11. Frecvența patternului ca rată** | Un pattern rar nu-ți produce nimic, oricât de bun; de-aia cursul predă Buy Doji, nu Morning/Evening Star | **1 sesiune**, dar argumentul e explicit | `03_2026-08-11.md:180-218` | +| **12. Tranșele** (1/2, 1/3, 1/4) | „Rar all-in la swing"; pentru acțiuni scumpe, 4 tranșe de 1/4 | **DECIZII regula 4: 5 loturi / 16 zile** | `DECIZII.md:47`; `01_buy_doji_si_strategia_mici.md:798-814` | -### 2.4 Contradicții și puncte neclare din material +Proiecția bull/bear aliniată cu direcția e tot un edge, nu o obligație: +„proiecție bull" pe long, citită din `Market Preview` (`RSV1ATM`) +(`13_strategia_3_byh.md:223-225`). -Nu aleg eu între variante. Pentru fiecare: ce spune fiecare sursă și ce -înseamnă practic pentru cine trebuie să decidă. +**Treci mai departe doar dacă** pașii 3-4 sunt bifați (trend corect, doji la +nivel) și știi, înainte de trigger, dacă setup-ul e A+ sau mediocru. +Materialul nu dă o regulă de mărime după calitatea setup-ului. -1. **Rata de câștig.** `13_strategia_3_byh.md:11-12` scrie „70-75 %"; - `01_buy_doji_si_strategia_mici.md:146-152` și `03_2026-08-11.md:185` spun - „65-70 %" / „peste 65 %". *Practic:* folosește 65-70 % pentru așteptări de - sizing (partea prudentă), dar nu schimba regulile pe baza diferenței — ea - nu afectează setup-ul, doar expectation management. +--- -2. **Take-profit.** `13_strategia_3_byh.md:194-195` impune 1:1 fix („nu mai - mult"); `28_2025-05-27.md:130-134` și `08_executie_si_risc.md:619-634` - folosesc TP la 2R / TP1 1R + TP2 2R. *Practic:* dacă vrei să respecți - regula principală, iei 1R pe prima tranșă și lași restul pe trailing; - varianta 2R e o alegere de execuție, nu o regulă a strategiei. + +## Pasul 6 — Aștepți trigger-ul: o închidere peste high, în maximum 3 candele -3. **Condiția de trend în scanner.** `11_construire_scanere_sf_byd_sld.md:58-62` - construiește triggerul doar din `BDATM = 0`; - `28_2025-05-27.md:37-52` adaugă `Since Bear ≥ 8` din alt indicator. - *Practic:* versiunea cu ≥ 8 filtrează mai mult și ratează setup-urile cu - trend scurt; versiunea fără filtru le prinde pe toate, dar îți dă listă mai - lungă de triat manual. +**Notezi high-ul doji-ului și aștepți. Nu intri pe doji.** Intri doar dacă +una din următoarele 3 candele **închide** peste acel high (la short: sub +low). Dacă a trecut a treia și n-a închis nicio candelă dincolo, setup-ul a +expirat. -4. **Lungimea trendului vs. scanner.** `13_strategia_3_byh.md:315-318` - acceptă și 2-3 candele de trend; scannerul din `28_2025-05-27.md:144-149` - cere ≥ 8 și pierde explicit acele cazuri. *Practic:* nu te baza doar pe - scanner dacă vrei să prinzi și trendurile scurte; verifică și manual. + + + DA — confirmare la +2, în fereastră + + high doji 50.10 + + low doji 49.20 + + + + + + + + + + + + + + + + + doji + confirmare +2 — intrare 50.40 + +1: close 49.90 — sub 50.10, nu confirmă + +2: close 50.40 — peste 50.10, confirmă (intrare la close) + + + NU — nicio confirmare în 3 candele + + high doji 50.10 + + low doji 49.20 + + + + + + + + + + + + + + + + + + + doji + a 4-a + +1: 49.95; +2: 50.05; +3: 49.85 — toate sub 50.10 + a 4-a: close 49.15 — sub low-ul dojiului 49.20, setup mort + + Serii construite: open = close-ul barei anterioare. + Doji: h 50.10 / l 49.20. Fereastra = maximum 3 candele după doji. + -5. **Factorul RS/SR.** `11_construire_scanere_sf_byd_sld.md:80-93` explică - `100` ca opțiune validă (afișezi `5.97` în loc de `0.0597`), cu condiția să - înmulțești pragul; `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341` revine cu o corecție - explicită (pune `1` la filtrare, `100` doar la display). *Practic:* cu `1` - scrii pragul natural (`≤ 0.5`); cu `100` trebuie să-l scrii `≤ 50`, altfel - filtrezi de 100 de ori mai strâns. Amestecul celor două e singura variantă - greșită sigur. +Diagrama de sus arată exact diferența dintre un setup care se confirmă și +unul care expiră — diferența e strict numerică (a închis sau nu peste 50.10), +nu vizuală. -6. **Două seturi de cifre ULTA.** `11_construire_scanere_sf_byd_sld.md:139-209` - (doji ~403.60, intrare 404.20, SL 396, TP 418) vs. - `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:82-183` (close real 373.30, suport 355.48, pivot - 383.74). Ambele sunt marcate ca parțial completări ale sumarizatorului. - *Practic:* nu lua niciunul ca exemplu „de curs"; singurele cifre confirmate - sunt cele din al doilea set (close/suport/pivot), nu nivelurile de trade. +**DA și NU, cu cifre:** -### 2.5 Exemplul complet, pas cu pas +- **DA:** prima candelă care închide **peste high-ul dojiului** (long) / + **sub low-ul lui** (short), în maximum 3 candele după doji. Intri la + close-ul candelei de confirmare. Exemplu: doji high 53.00 / low 51.60; a + doua candelă închide 53.70 → Buy Doji, intrare 53.70 + (`01_buy_doji_si_strategia_mici.md:136-138`). +- **NU — prea devreme:** doji singur, sau candele care închid încă sub high. + Exemplu: doji high 50.10; +1 închide 49.90 → nu e semnal + (`13_strategia_3_byh.md:158-167`). +- **NU — invalidat:** nicio candelă nu închide dincolo de doji în cele 3 + candele → setup expirat; dacă a 4-a închide sub low-ul dojiului, „setup + mort". Exemplu: doji 53.00/51.60; +1, +2, +3 rămân sub 53.00, a 4-a + închide 51.20 → nu intri (`01_buy_doji_si_strategia_mici.md:222-225`). +- **NU — context:** doji care nu vine după trendul corect (gap-up în + rezistență; uptrend cu volum slab) — cazul CTLD, „nu funcționează" + explicit (`13_strategia_3_byh.md:308`). Vezi Pasul 3. + +**Capcană — nu intra pe doji, intri pe trigger.** Fără închidere dincolo de +high/low în 3 candele, doji-ul a fost doar o pauză în trend +(`01_buy_doji_si_strategia_mici.md:818-821`). + +**De ce închiderea peste high e trigger-ul.** După 8-10 candele de scădere, +vânzătorii care mai aveau marjă au ieșit deja pe drum; la doji, cumpărătorii +noi (vânători de preț mic) apar în număr aproape egal, de aceea bara închide +aproape de unde a deschis. Confirmarea e mecanismul real: când o candelă +închide peste high-ul dojiului, toți cei care au vândut (sau au shortat) în +bara de indecizie sunt pe pierdere, iar stop-urile lor de deasupra acelui +high se execută automat ca ordine de cumpărare — de aceea raportul se +inversează brusc, nu treptat (`13_strategia_3_byh.md:102-149`; +`01_buy_doji_si_strategia_mici.md:20-28`). *(Explicația mecanismului de aici +e completarea sumarizatorului, nu material al cursului: +`13_strategia_3_byh.md:342-350` notează explicit că secțiunea „De ce apare +inversarea" — mecanismul cumpărători/vânzători — e „completări ale mele, +dincolo de ce spune explicit transcrierea".)* + +**Nu merge de fiecare dată:** + +> „nu luați de bună faptul că dacă am un buy dos [sic] și buy hammer de +> fiecare data [sic] merge [...] sunt niște probabilități aici, în 70% din +> cazuri 65-70% din cazuri va funcționa" +> (`01_buy_doji_si_strategia_mici.md:150-152`) + +**Pe cele trei perechi:** fereastra de 3 se numără pe graficul mic. Pe 60 +min, 3 candele înseamnă 3 ore; pe weekly, 3 săptămâni *(aritmetica mea)*. +Candela trebuie să se **închidă**: pe weekly, asta e vineri la închidere +(`23_2025-07-29.md:208-209`). + +**Treci mai departe doar dacă** o candelă a închis dincolo de doji în +fereastra de 3. Altfel ștergi setup-ul și te întorci la Pasul 1. + +--- + + +## Pasul 7 — Calculezi stopul și mărimea poziției, înainte de ordin + +**Numeri 4 candele înapoi de la candela de confirmare, iei cel mai jos low +dintre ele (la short: cel mai sus high) și pui stopul acolo.** +(`13_strategia_3_byh.md:192-193`; `22_2025-08-04.md:23-29`) + + + Unde pui stopul: 4 candele înapoi, sub structură — exemplu construit + + cel mai jos low: 51.60 (doji) + + SL 51.55 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + 4 + 3 + 2 + 1 + (5) + + ultimele 4 candele (3 = doji, 1 = confirmarea) + Cu 4 sau cu 5 candele iese la fel: în downtrend low-ul dojiului e oricum cel mai jos. SL = 51.60 − 0.05. + + Același trade: stop la ochi (0.80 sub intrare) vs stop din regulă + + TP1 55.85 + + intrare 53.70 + + stop la ochi 52.90 — lovit + + SL din regulă 51.55 — ținut + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + al doilea picior: 52.00, higher low + TP1 + Barele 15-20 și stopul la ochi sunt construite, pentru contrast. + + + +Sus: cele 4 candele numărate de la confirmare. În downtrend, low-ul doji-ului +e oricum cel mai jos, deci nu contează dacă o numeri și pe a 5-a. Jos: un stop +pus „la ochi", aproape de intrare, e lovit de al doilea picior; stopul din +regulă ține. + +**De ce acolo:** acel nivel e ultimul loc care, dacă e spart, anulează ideea +că vânzătorii (sau cumpărătorii) s-au epuizat. În practică, cel mai jos low +din 4 candele coincide aproape întotdeauna cu un swing low +(`22_2025-08-04.md:24-29`): + +> „Stop-ul, 4 candele în spate față de trigger. Sau, exact, swing low — în +> principiu o să fie swing low, pentru că în general ce găsește aici? Un +> swing high și aici un swing low." (`22_2025-08-04.md:27-29`) + +**Cât e în %/R:** procentul depinde de simbol; la exemplul construit, doji low +51.60 → SL 51.55 (cu 5 cenți sub), adică risc mic față de intrare +(`01_buy_doji_si_strategia_mici.md:139-141`). La LABU, SL a fost −9 % față de +intrare (`18_2025-09-23.md:716-719`). Nu se folosește ATR pentru acest SL în +sursele citite. + +**Capcană — bottom-ul poate mai face un picior.** Double bottom-ul cu buy doji +weekly poate deveni triple bottom sau bear flag fără divergență de volum; de +aceea stopul stă sub structură, nu „undeva jos" +(`01_buy_doji_si_strategia_mici.md:833-836`). + +> **Completare proprie:** stopul „la ochi" de 52.90 din panoul de jos și +> barele de după intrare sunt construite de mine, ca să arăt ce înseamnă +> „sub structură" pe un caz. Materialul dă regula și capcana, nu acest +> exemplu. + +**Pe cele trei perechi:** cele 4 candele se numără pe timeframe-ul pe care ai +luat decizia (`20_2025-08-25.md:9-15`). În pereche, decizia de intrare e pe +graficul mic, deci stopul e mai strâns decât pe graficul mare (Pasul 2). + +### Mărimea poziției + +Regula generală de money management: **maximum 2 % din cont per tranzacție**; +mărimea poziției = (cont × 2 %) / distanța până la stop, ajustată cu +spread-ul și **rotunjită în jos** (`03_MODUL_2/04_money_management_position_sizing.md:4-11`, `28-34`). +**NEACOPERIT ÎN MATERIAL:** Strategia 3 nu dă o cifră proprie de risc per +trade, nici o mărime minimă de cont. Singurele cifre apropiate vin din alte +lecții: 2 % general (money management) și risc fix intraday 25 $ cu țintă 4R +(`08_executie_si_risc.md:40-49`), care nu sunt date pentru S3. + +> **Completare proprie — exemplu numeric ilustrativ** (cifrele exemplului +> sunt ale mele, nu din curs; din material vine doar regula de 2 %): pe un +> cont de 50.000 $, risc maxim = 1.000 $. Intrare 50.40, SL 49.20 → distanță +> 1.20 $/acțiune. Mărime = 1.000 / 1.20 = 833,3 → **833 de acțiuni** +> rotunjit în jos (risc efectiv 999,6 $). Dacă poziția se împarte în 3 +> („multiplu de 3 poziții", `13_strategia_3_byh.md:204-213`; varianta de +> execuție cu 48 de acțiuni pe un risc de 25 $ în +> `08_executie_si_risc.md:619-634`), fiecare parte are același stop. + +Pe un cont de prop, secțiunea „Pe cont de prop" (judecata mea) coboară +riscul la 0,33 % pe poziție. Pentru plafonul de risc pe contul tău: +[`A1_risc.md`](A1_risc.md). + +**Treci mai departe doar dacă** știi stopul exact și numărul de acțiuni, și +riscul în dolari încape în regula ta de risc. + +--- + + +## Pasul 8 — Intri: la close sau în tranșe, la retest + +**Pui ordinul.** Regula de bază a strategiei: intri la close-ul candelei de +confirmare (`13_strategia_3_byh.md:191-195`). Varianta pe care o predă ca +„corectă" în Q&A: o treime la close, restul cu ordine limită mai jos, în +corpul candelei. + + + Intrarea în trei tranșe — daily, exemplu construit (doji 53.00 / 51.60) + + TP1 55.85 = 1R de la close + + SL 51.55 (low 4 candele 51.60, minus 5 cenți) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + confirmare 53.70 + + + + + + + corp: open 52.60 → close 53.70 (1.10) + + + 1/3 la close 53.70 + + medie 53.39 → risc 1.84 pe acțiune (tot la close: 2.15) + + 1/3 la 1/3 din corp 53.33 + + 1/3 la 1/2 din corp 53.15 + + + + + + low 53.10: umple T2 și T3 + + +1: 52.60, sub high + + doji 53.00 / 51.60 + Măsurat pe corp (open 52.60 → close 53.70). Măsurat pe toată candela (52.45 → 53.85), 1/3 ar fi 53.38; 1/2 iese tot 53.15. + Stopul e unul singur, pentru toată poziția. Barele 0-11 și 15-18 sunt construite. + + +Cu cifrele exemplului (construit, pe nivelurile din +`01_buy_doji_si_strategia_mici.md:136-142`): + +1. **1/3 la close-ul confirmării:** 53.70. +2. **1/3 cu limit la 1/3 din corp:** 53.70 − 1.10/3 = 53.33. +3. **1/3 cu limit la 1/2 din corp:** 53.15. +4. Candela de după coboară la 53.10 și le umple pe amândouă. Prețul mediu: + 53.39; riscul pe acțiune până la stopul 51.55: **1.84**, față de 2.15 dacă + intrai tot la close. + +Tranșele, pe weekly, spuse de el: „1/3 din poziție la close-ul trigger-ului +(vineri, la închiderea săptămânii)", „1/3 cu limit la retestul de 1/3 din +înălțimea candelei. Iei high-ul și low-ul și calculezi", „1/3 cu limit la +1/2 din candelă" (`23_2025-07-29.md:206-213`). Și în altă sesiune: + +> „aici nu se intră full, / se intră cu 1 pe 3 din poziția aici, / 1 pe 3 la +> 1 pe 3 din candelă / și 1 pe 3 la 1 pe 2 sau 2-3 / la 1 pe 2. / Așa se face +> de cea corectă. / Așa cum v-am învățat pe strategia respectivă." +> (`transcripts/09_Q_and_A/19_08092025.txt:1067-1073`) + +**Măsori de la open sau de la low?** Se poate măsura de la low sau de la +open; pe XLE diferența a fost 3.16 % vs 2.98 %, „Nu e mare diferență, că ăsta +nu e așa volatil, dar e o diferență" (`20_2025-08-25.md:178-180`). Pe +exemplul de sus: pe corp, 1/3 = 53.33; pe toată candela (52.45 → 53.85), +1/3 = 53.38. La 1/2 iese 53.15 în ambele feluri. + +**De ce retestul contează pe TF mic și pe prop:** „Pai ba, e inalt, ai ris +[sic] mare pe asta, mai ales daca esti pe prop. Si atunci de asta sa intre pe +unul, pe 3, unul, pe 2, pentru un ris [sic] mai mic." — buy doji pe 60 min +(`transcripts/09_Q_and_A/20_25082025.txt:207-208`). Retestul la 1/2 sau 1/3 +reduce riscul la ~jumătate pe același setup (`20_2025-08-25.md:141-164`). La +XLE pe 60 min, retestul de 1/2 a căzut fix în pivotul weekly — două motive +independente pentru aceeași intrare (`20_2025-08-25.md:172-176`). + +**La acțiuni scumpe (sute sau mii de $):** 4 tranșe de 1/4, stop unic sub +higher low; riscul total nu crește, doar prețul mediu scade +(`01_buy_doji_si_strategia_mici.md:798-814`). + +**Capcană — nu alerga după preț.** Dacă buy doji-ul weekly a plecat deja, +aștepți retestul de 1/3 - 1/2 din lumânarea mare. Poate să nu mai vină, și +atunci ratezi: „Poate să nu mai facă, poate nu mai face niciodată." +(`01_buy_doji_si_strategia_mici.md:825-827`). Nu muți ordinul limită mai sus +după preț (`08_ANALIZA_ZILNICA/03_locul_crimei_si_pullback.md:296-311`). + +> **Completare proprie — de unde calculezi TP1 când ai intrat în tranșe.** +> Materialul nu leagă cele trei tranșe de intrare de cele trei de ieșire +> (Pasul 9). Două variante: TP1 = 1R de la close-ul confirmării (55.85, +> regula din `13_strategia_3_byh.md:194-195`), sau TP1 = 1R de la prețul +> tău mediu, 53.39 + 1.84 = 55.23 (deducția din +> [`A3_intrarea.md`](A3_intrarea.md), §1.3, pasul 4). Alege una înainte de +> trade și ține-te de ea. Toată discuția „la close sau la retest", desfăcută +> pas cu pas: [`A3_intrarea.md`](A3_intrarea.md). + +**Treci mai departe doar dacă** ordinele sunt puse (sau prima tranșă e +executată), cu stopul din Pasul 7 pus în platformă, pe toată poziția. + +--- + + +## Pasul 9 — Ieși: o treime la 1:1, restul pe trailing, și nu stai peste 8 candele + +**Pui ținta la aceeași distanță ca stopul și, după ce e atinsă, muți restul +poziției pe trailing stop.** Dacă în 8 candele nu s-a atins nici ținta, nici +stopul, ieși oricum. + + + Ieșirea: trailing stop pe gap-uri și limita de 8 candele — exemple construite + A — trailing stop pe gap-uri (seria de la intrarea în tranșe) + + intrare 53.70 + + TP1 55.85 — tranșa 1: +1R + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a treia treime: o lași mai departe (break-even / trend) + + + + TP1: ieși cu 1/3 + gap: low > high anterior → trail 56.20 + gap → trail 57.45 + close sub trail: ieși cu 1/3 + la 57.20 = +1.63R + B — limita de 8 candele + + TP1 51.60 + + intrare 50.40 + + SL 49.20 + + + + + + + + + + + + + + + + + 1 + + + 2 + + + 3 + + + 4 + + + 5 + + + 6 + + + 7 + + + 8 + doji + a 8-a candelă: nici TP, nici SL + → ieși la 50.70 = +0.25R + Barele de după intrare sunt construite. Regulile: 13_strategia_3_byh.md:196-213. + + +Sus: prima treime iese la TP1; linia de trail apare doar pe candelele care +deschid cu gap (low peste high-ul candelei de dinainte), urcă în trepte, iar a +doua treime iese la primul close sub ea. Jos: alt trade, în care prețul +stă 8 candele între stop și țintă — ieși la close-ul celei de-a 8-a. + +| Tranșă | Ieșire la | De unde vine ținta | Ce faci cu stopul | +|---|---|---|---| +| 1 din 3 | TP = SL ca distanță (1:1), proiectat de la close-ul de confirmare | `13_strategia_3_byh.md:194-195` | rămâne sub pozițiile 2-3 | +| 2 din 3 | pe trailing stop | `13_strategia_3_byh.md:196-200` | trail = low-ul candelei cu gap peste high-ul precedentei (long); ieși la close dincolo de el | +| 3 din 3 | mai departe, spre break-even/trend | `13_strategia_3_byh.md:204-213` | poți risca tot stopul inițial | + +**Regula de bază:** TP 1:1, „nu mai mult". Profitul suplimentar vine din +trailing, nu din mutarea țintei fixe (`13_strategia_3_byh.md:319-321`). + +**Limită de timp:** dacă nici TP, nici SL nu se ating în **8 candele** de la +intrare, ieși oricum (`13_strategia_3_byh.md:201-202`). + +**Varianta cu două ținte** (execuție): TP1 = 1R, TP2 = 2R, a treia pe trail +(`08_executie_si_risc.md:619-634`). Contradicția cu „nu mai mult" e la +„Unde se contrazice materialul", punctul 2. + +**Varianta weekly/MICI:** ținte în trepte pe niveluri (R1 → R2 → vârful +anterior → SMA 200 → jumătatea marubozu-ului mare → fostul suport spart), iar +unde se suprapun mai multe niveluri, acolo iei profit +(`01_buy_doji_si_strategia_mici.md:531-536`). Orizont 6-7-8 luni +(`01_buy_doji_si_strategia_mici.md:538-541`): + +> „strategia mici, asta e pentru cei care aveți răbdare, 6-7-8 luni să stat +> în tranzacție." (`01_buy_doji_si_strategia_mici.md:540-541`) + +**Capcană — nu extinde targetul peste 1:1.** Profitul în plus vine din +trailing (`13_strategia_3_byh.md:319-321`). + +> **Completare proprie:** barele de după intrare, din ambele panouri, sunt +> construite. Tabelul cu cele 3 tranșe e, în lecția 13, marcat de +> sumarizator ca completare a lui, nu ca regulă rostită +> (`13_strategia_3_byh.md:341-350`); regula de trail, limita de 8 și 1:1 +> sunt ale cursului. + +**Pe cele trei perechi:** 8 candele = 8 zile pe daily, 8 săptămâni pe +weekly, ~1,2 zile pe 60 min *(aritmetica mea)*. Pe 60 min, limita de 8 candele +trece peste noapte; dacă nu poți ține peste noapte, vezi „Pe cont de prop". + +**Gata.** Trade-ul s-a închis când toate trei treimile au ieșit: la TP1, la +close sub trail, sau la limita de 8 candele — ori la stop. + +--- + + +## Oglinda: Sell Doji, pe short + +Aceeași procedură, întoarsă: uptrend de 8-10 candele, doji lângă +rezistență/PP, confirmare = o candelă care închide sub low-ul dojiului în +maximum 3 candele; SL = high-ul ultimelor 4 candele, TP = aceeași distanță în +jos, trail-ul coboară pe candelele cu high sub low-ul precedentei +(`13_strategia_3_byh.md:227-232`). + +Cifrele exemplului: doji high 49.40 / low 48.00, a doua candelă închide +47.30 (sub 48.00) → Sell Doji, intrare short, SL 49.45, TP 45.15 +(`01_buy_doji_si_strategia_mici.md:312-314`). Graficul întreg al variantei +short: + + + Sell Doji — daily (exemplu construit, fără ticker) + + SL 100.10 (high 4 candele) + + intrare short 99.00 + + TP 97.90 = 1R + + trail 96.45 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + volum + doji 99.20 / 100.10 + ieșire pe trail 96.60 + bara 15: close 99.40 peste low-ul dojiului 99.20 — NU confirmă + bara 16: close 99.00 sub 99.20 — confirmare (intrare short) + Intrare short la close sub low-ul dojiului, SL la high 4 candele, TP 1:1, apoi trail. + + +**Ce se adaugă la short, față de long:** + +- **Nu pe piață „foarte strong bull".** Un sell doji poate fi doar un bull + flag; „când shortăm, să fie overall piața praf" + (`28_2025-05-27.md:313-317`). +- **Nu la acțiuni sub 10 $** — short squeeze, manipulabile, gap-uri + intraday (`28_2025-05-27.md:397-402`, `560-576`). +- **Nu contra unui Buy Doji weekly** (Pasul 2). +- **Divergența poate întoarce semnalul:** sell doji cu divergență de volum + sau stochastic din oversold → urmărești reverse în buy doji + (`01_buy_doji_si_strategia_mici.md:338-347`). + +--- + + +## Exemplul real: LABU, de la doji la +30 % **LABU — daily, Buy Doji la pivotul monthly** (`18_2025-09-23.md:608-719`). @@ -962,15 +2112,18 @@ Nu aleg eu între variante. Pentru fiecare: ce spune fiecare sursă și ce Procentele (stop 9 %, +30 %) sunt ale cursului; nivelurile de preț sunt construite de sumarizator (18_2025-09-23.md:713). -1. **Context:** downtrend → consolidare → triple bottom → doji. -2. **Doji la pivotul monthly 86.00** — al doilea test al nivelului, fără low - nou (`18_2025-09-23.md:710-712`). -3. **Confirmare:** candela verde care închide peste high-ul dojiului → - intrare 89.50. -4. **SL 81.45 = −9 %** față de intrare. Risc 8.05, deci TP 1:1 ar fi 97.55 — - dar exemplul a mers mult mai departe. -5. **TP +30 % = 116.35**, atins într-o lună, după: bull reversal pe candela - mare → retestare → bull flag → breakout → higher high, higher low. +Pașii, pe acest exemplu: + +1. **Context** (pașii 3 și 5): downtrend → consolidare → triple bottom → doji. +2. **Locație** (pasul 4): doji la pivotul monthly 86.00 — al doilea test al + nivelului, fără low nou (`18_2025-09-23.md:710-712`). +3. **Trigger** (pasul 6): candela verde care închide peste high-ul + dojiului → intrare 89.50. +4. **Stop** (pasul 7): SL 81.45 = −9 % față de intrare. Risc 8.05, deci TP 1:1 + ar fi 97.55 — dar exemplul a mers mult mai departe. +5. **Ieșire** (pasul 9): TP +30 % = 116.35, atins într-o lună, după: bull + reversal pe candela mare → retestare → bull flag → breakout → higher high, + higher low. 6. **Rezultat:** „stop inițial 9 %, +30 % într-o lună" — un trade care a mers ~3,3R pe distanța de stop (calcul al meu, din nivelurile marcate ca ale sumarizatorului în `18_2025-09-23.md:713`), adică exact scenariul în @@ -992,6 +2145,85 @@ săptămâni, trigger la a 11-a candelă (`23_2025-07-29.md:202-204`; --- + +## Checklist de tipărit + +- [ ] (Pasul 1) Simbolul e lichid: close > 30-40 $, volum mediu daily ≥ 500.000. La short: piața/sectorul e slab, prețul > 10 $. +- [ ] (Pasul 2) Am ales perechea. TF-ul mare nu are doji confirmat contra direcției mele; pe 60 min, daily-ul are swing long stabilit. +- [ ] (Pasul 3) Am un trend anterior în direcția opusă setup-ului: 8-10 candele ideal; 2-3 candele acceptate, dar tratate ca semnal mai slab. +- [ ] (Pasul 3) Candelă cu open ≈ close, corp mic față de range, fitil în ambele părți. +- [ ] (Pasul 4) Doji-ul e la un suport/pivot (long) sau rezistență/pivot (short), sub pragul TF-ului (60 min ≤ 0,5 %, daily 1-2 %). +- [ ] (Pasul 5) Știu dacă e A+ sau mediocru: volum, divergență, proiecție, trigger-e multiple. +- [ ] (Pasul 6) A închis o candelă peste high-ul dojiului (long) / sub low (short), în maximum 3 candele după doji. +- [ ] (Pasul 6) Dacă au trecut 3 candele fără confirmare → setup expirat, nu intru. +- [ ] (Pasul 7) Stop = extrema ultimelor 4 candele de la candela de confirmare, pe TF-ul intrării. +- [ ] (Pasul 7) Mărimea poziției = risc$ / distanța la stop, rotunjit în jos. +- [ ] (Pasul 8) Am hotărât înainte: tot la close, sau 1/3 la close + 1/3 la 1/3 + 1/3 la 1/2. Nu mut ordinul după preț. +- [ ] (Pasul 9) TP = aceeași distanță ca stop, proiectată de la close-ul de confirmare. +- [ ] (Pasul 9) Dacă în 8 candele nu s-a atins nici TP, nici SL → ies la a 8-a. + +--- + +## Unde se contrazice materialul + +Nu aleg eu între variante. Pentru fiecare: ce spune fiecare sursă și ce +înseamnă practic pentru cine trebuie să decidă. + +1. **Rata de câștig.** `13_strategia_3_byh.md:11-12` scrie „70-75 %"; + `01_buy_doji_si_strategia_mici.md:146-152` și `03_2026-08-11.md:185` spun + „65-70 %" / „peste 65 %". *Practic:* folosește 65-70 % pentru așteptări de + sizing (partea prudentă), dar nu schimba regulile pe baza diferenței — ea + nu afectează setup-ul, doar expectation management. + +2. **Take-profit.** `13_strategia_3_byh.md:194-195` impune 1:1 fix („nu mai + mult"); `28_2025-05-27.md:130-134` și `08_executie_si_risc.md:619-634` + folosesc TP la 2R / TP1 1R + TP2 2R. *Practic:* dacă vrei să respecți + regula principală, iei 1R pe prima tranșă și lași restul pe trailing; + varianta 2R e o alegere de execuție, nu o regulă a strategiei. + +3. **Condiția de trend în scanner.** `11_construire_scanere_sf_byd_sld.md:58-62` + construiește triggerul doar din `BDATM = 0`; + `28_2025-05-27.md:37-52` adaugă `Since Bear ≥ 8` din alt indicator. + *Practic:* versiunea cu ≥ 8 filtrează mai mult și ratează setup-urile cu + trend scurt; versiunea fără filtru le prinde pe toate, dar îți dă listă mai + lungă de triat manual. + +4. **Lungimea trendului vs. scanner.** `13_strategia_3_byh.md:315-318` + acceptă și 2-3 candele de trend; scannerul din `28_2025-05-27.md:144-149` + cere ≥ 8 și pierde explicit acele cazuri. *Practic:* nu te baza doar pe + scanner dacă vrei să prinzi și trendurile scurte; verifică și manual. + +5. **Factorul RS/SR.** `11_construire_scanere_sf_byd_sld.md:80-93` explică + `100` ca opțiune validă (afișezi `5.97` în loc de `0.0597`), cu condiția să + înmulțești pragul; `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:329-341` revine cu o corecție + explicită (pune `1` la filtrare, `100` doar la display). *Practic:* cu `1` + scrii pragul natural (`≤ 0.5`); cu `100` trebuie să-l scrii `≤ 50`, altfel + filtrezi de 100 de ori mai strâns. Amestecul celor două e singura variantă + greșită sigur. + +6. **Două seturi de cifre ULTA.** `11_construire_scanere_sf_byd_sld.md:139-209` + (doji ~403.60, intrare 404.20, SL 396, TP 418) vs. + `04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md:82-183` (close real 373.30, suport 355.48, pivot + 383.74). Ambele sunt marcate ca parțial completări ale sumarizatorului. + *Practic:* nu lua niciunul ca exemplu „de curs"; singurele cifre confirmate + sunt cele din al doilea set (close/suport/pivot), nu nivelurile de trade. + +7. **Ce pivot citești pe weekly.** Regula de pivoți spune Weekly → pivoți + Quarterly (`03_timeframes_set_up.md:69-79`; + `11_construire_scanere_sf_byd_sld.md:63-69`); MICI, care e un buy doji + weekly, se citește față de **pivotul monthly** + (`01_buy_doji_si_strategia_mici.md:12`, `357`, `370-379`). Materialul nu + le împacă. *Practic:* pe perechea monthly → weekly, trage-le pe amândouă; + un doji la ambele niveluri e oricum mai bun decât la unul. + +8. **Intri la close sau aștepți retestul.** Lecția 13 intră la close + (`13_strategia_3_byh.md:191-195`); sumarul Q&A din 25.08.2025 scrie „nu + intri la închiderea lui — aștepți retestul" (`20_2025-08-25.md:144-145`), + iar transcrierile spun o treime la close și restul la retest + (Pasul 8). Desfăcută complet în [`A3_intrarea.md`](A3_intrarea.md). + +--- + ## Transfer > **Tot ce urmează în secțiunea asta e judecata mea, nu materialul cursului.** @@ -1051,7 +2283,7 @@ stop-uri. | Ce cere | Există la BVB? | Înlocuitorul concret | |---|---|---| -| scaner `jbtgrshdATM`, `BDATM`/`SDATM = 0` | nu | listă manuală de 8-12 nume BET, verificată o dată pe zi (5 min/zi) cu condiția doji din §1.2 | +| scaner `jbtgrshdATM`, `BDATM`/`SDATM = 0` | nu | listă manuală de 8-12 nume BET, verificată o dată pe zi (5 min/zi) cu condiția doji din Pasul 3 | | indicator `RSV1ATM` pentru proximitate de pivot | nu | pivoții se calculează în Excel din H/L/C din luna precedentă; proximitatea o măsori cu raportul preț/pivot | | Bull/Bear Reversal, RVOL (proprietare) | nu | Bull Reversal se înlocuiește cu „prețul a spart trail-ul"; RVOL cu volumul de azi față de media 10 zile, calculat manual | | short | practic nu (retail, fără împrumut lichid) | rămâne **doar jumătatea long**. Vezi verdictul | @@ -1108,7 +2340,7 @@ R3 = H + 2*(PP - L) S3 = L - 2*(H - PP) Exemplu ilustrativ pe TLV (cifrele H/L/C sunt ale mele, ca să arăt pașii): H = 25,00, L = 23,00, C = 24,50 → PP = 24,17; R1 = 25,34; S1 = 23,34; R2 = 26,17; S2 = 22,17. Doji-ul „la nivel" înseamnă că low-ul/high-ul lui -cade în vecinătatea unuia dintre aceste numere (C2). +cade în vecinătatea unuia dintre aceste numere (Pasul 4). **Ce se rupe din cauza lichidității:** @@ -1148,9 +2380,9 @@ Estimarea e a mea, nu a materialului. s-a întâmplat în următoarele 8 candele. Măsurabil: 20 de fișe completate. 2. **Calculează pivoții monthly pentru 6 luni în urmă** pe 5 nume BET, în Excel, și verifică câte doji-uri au căzut la ≤ 1 % de un nivel. Scopul: - să vezi dacă C2 chiar filtrează ceva pe universul mic. + să vezi dacă Pasul 4 chiar filtrează ceva pe universul mic. 3. **Testează pe hârtie varianta TP 1:1 vs. TP1 1R + TP2 2R** pe minim 10 - semnale (contradicția 2 din 2.4). Notează în jurnal care dă rezultat mai + semnale (punctul 2 din „Unde se contrazice materialul"). Notează în jurnal care dă rezultat mai bun pe BVB, unde limita de 8 candele e mai strânsă. 4. **Măsoară spread-ul real** la deschidere și la 12:00 pe 5 nume BET, 5 zile la rând. Măsurabil: un tabel cu spread-ul mediu; dacă depășește ~1 %, @@ -1167,7 +2399,7 @@ Estimarea e a mea, nu a materialului. — același schelet de trigger (extrema 4 candele, confirmare), iar buy hammer-ul apare des după buy doji (`01_buy_doji_si_strategia_mici.md:50`, `543-545`). Când amândouă sunt pe aceeași candelă, semnalul e mai puternic - (`102_24032026.txt:167-170`; 2.1 #10). + (`102_24032026.txt:167-170`; Pasul 5, rândul 10). - Se suprapune cu **MP²** (`02_mp2.md`): MP² dă *unde* (bottom-ul, crossing-ul de pivoți), Buy Doji dă *când* (trigger-ul de candelă). Pe BVB, combinația e soluția pentru lipsa trigger-elor fine (`09_2025-12-09.md:1184-1190`). @@ -1175,3 +2407,45 @@ Estimarea e a mea, nu a materialului. - Risc și execuție: [`A1_risc.md`](A1_risc.md). - Contradicțiile din material, toate la un loc: [`A2_contradictii.md`](A2_contradictii.md). + +--- + +## Surse + +[`13_strategia_3_byh.md`](../03_MODUL_2/13_strategia_3_byh.md) +(fișierul principal, S3) · +[`11_construire_scanere_sf_byd_sld.md`](../03_MODUL_2/11_construire_scanere_sf_byd_sld.md) +(scanerele; indicator proprietar) · +[`01_filtre_scaner_bull_bear_reversal_pp.md`](../04_MODUL_3/01_filtre_scaner_bull_bear_reversal_pp.md) +(filtre + ULTA) · +[`01_buy_doji_si_strategia_mici.md`](../08_ANALIZA_ZILNICA/01_buy_doji_si_strategia_mici.md) +(aplicarea zilnică, varianta MICI) · +[`08_executie_si_risc.md`](../08_ANALIZA_ZILNICA/08_executie_si_risc.md) +(3 poziții, sizing) · +[`28_2025-05-27.md`](../09_QA/28_2025-05-27.md) (scanere, filtre, short) · +[`22_2025-08-04.md`](../09_QA/22_2025-08-04.md) (regulile dictate) · +[`03_2026-08-11.md`](../09_QA/03_2026-08-11.md) (SL 4 candele, >65 %, weekly) · +[`18_2025-09-23.md`](../09_QA/18_2025-09-23.md) (LABU) · +[`20_2025-08-25.md`](../09_QA/20_2025-08-25.md) (retest 1/2–1/3 pe prop; stopul pe TF-ul deciziei) · +[`26_2025-06-11.md`](../09_QA/26_2025-06-11.md) (limita zilnică pe poziții deschise) · +[`23_2025-07-29.md`](../09_QA/23_2025-07-29.md) (tranșe weekly) · +[`09_2025-12-09.md`](../09_QA/09_2025-12-09.md) (pivoții pe BVB) · +[`03_timeframes_set_up.md`](../03_MODUL_2/03_timeframes_set_up.md) (pivoții pe timeframe; TF mare vs. TF mic) · +[`A3_intrarea.md`](A3_intrarea.md) (la close sau la retest). + +> **Notă de denumire.** Fișierul principal se numește `13_strategia_3_byh.md`, +> dar titlul lui e „Strategia 3: Buy Doji / Sell Doji (SF BYD/SLD)" +> (`13_strategia_3_byh.md:1`). „BYH" din slug nu e o strategie separată de +> „breakout" — `grep -rn -i 'byh'` prin `summaries/` găsește doar acest +> fișier. Fișele `byd_sld.md` și `byh.md` descriu aceeași strategie; capitolul +> ăsta le folosește ca o singură sursă. + +**Ce e al meu, nu al cursului, în capitolul ăsta:** blocurile „Completare +proprie" (succesiunea pe două timeframe-uri și ce se strică pe TF mic; +stopul „la ochi"; exemplul de sizing; TP1 la intrarea în tranșe; barele de +după intrare din diagramele de ieșire), aritmetica timpului („8 candele = +…", marcată *aritmetica mea*), secțiunea Transfer întreagă, și toate +diagramele: sunt exemple construite, fără ticker, cu excepția LABU, unde +doar procentele sunt ale cursului. Mecanismul stop-urilor de deasupra +high-ului e completarea sumarizatorului lecției 13, marcată ca atare la +Pasul 6. diff --git a/summaries/17_STRATEGII/04_selectia.html b/summaries/17_STRATEGII/04_selectia.html index 899a67e..824b969 100644 --- a/summaries/17_STRATEGII/04_selectia.html +++ b/summaries/17_STRATEGII/04_selectia.html @@ -65,22 +65,22 @@ Fișa din care vine capitolul: fise/selectia. 1.3 Trigger (DA / NU prea devreme / NU invalidat) 1.3 Ce oprește selecția (DA/NU) — validitatea filtrului, nu intrarea -un filtru nu are trigger de intrare (fise/selectia.md:139-147) +un filtru nu are trigger de intrare (fise/selectia.md:145-153) 1.4 Stop-loss 1.4 Ce nu are selecția — rămâne NEACOPERIT ÎN MATERIAL -un filtru nu are nivel de preț care să-l invalideze (fise/selectia.md:156-161) +un filtru nu are nivel de preț care să-l invalideze (fise/selectia.md:161-166) 1.5 Take-profit și tranșe inclus în 1.4 -selecția nu are ținte sau tranșe (fise/selectia.md:163-167) +selecția nu are ținte sau tranșe (fise/selectia.md:168-172) 1.6 Mărimea poziției 1.5 Uneltele și de unde citești pragurile -selecția nu riscă nimic; sizing-ul se calculează la strategia de intrare (fise/selectia.md:287-302) +selecția nu riscă nimic; sizing-ul se calculează la strategia de intrare (fise/selectia.md:294-309) Nivel 0, diagrama de ansamblu @@ -326,9 +326,11 @@ când pe grafic apare trigger-ul de intrare.

    -

    Materialul nu dă un prag separat pentru „sub 7": el spune „peste 7-8 intră în -analiză", iar sub 7 se deduce ca excludere, fără să fie declarat prag -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-204). Pe commodities +

    „Peste 7-8" e ce îl interesează, dar sub 7 nu e prag de excludere: la 4/14 +și la 6/14 continuă analiza (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:204). +Scorul departajează între doi candidați — „5 din 14, ala are 13 din 14. Păi, +mai bine au AI [sic] decât MARA" (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:212-213) — iar pragul exact sub care n-ar +mai analiza un simbol rămâne nespus. Pe commodities filtrul de relative strength cade (vezi Nivel 0). Pe ETF-uri scorul nu există.

    1.2 Fluxul de filtrare, pas cu pas

    Diagrama fluxului:

    @@ -389,8 +391,12 @@ filtrul de relative strength cade (vezi Nivel 0). Pe ETF-uri scorul nu există.< (09_QA/28_2025-05-27.md:372-380; 03_MODUL_2/11_construire_scanere_sf_byd_sld.md:70-73). Toate condițiile pe același timeframe (09_QA/28_2025-05-27.md:390-391).

    F1. Fundamentalul. ATM score peste 7-8; 12-13 e prioritatea -(„spuma"); F-score 6-9 solid/puternic. Elimini compania pe pierdere, cu -cash flow negativ sau cu venit în scădere. Un scanner fundamental de lucru: +(„spuma"); F-score 6-9 solid/puternic. Compania pe pierdere, cu cash flow +negativ sau cu venit în scădere nu e de investiție (cel mult speculă pe +momentum); trecerea din profit în pierdere nu scoate singură simbolul de pe +listă — în patru cazuri a continuat analiza, trei dintre ele cu cash flow +pozitiv (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:227-228, 248; +deducție: criteriul real pare cash flow-ul). Un scanner fundamental de lucru: „top 500 de companii cu scori [sic] fundamental peste 7 și aflate în downtrend", downtrend pe weekly (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-221, 225-257).

    @@ -466,8 +472,8 @@ downtrend pe weekly (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-221, Scor -1 = date indisponibile în platformă, NU scor 0. Scorul -1 nu se citește ca 0. 16_ANALIZA_FUNDAMENTALA/09_implementare_f_score_tradestation.md:45-46, 268-269. -„peste 7-8” e formularea exactă a cursului; sub 7 se deduce ca excludere, -nu e declarat ca prag separat (11_selectia_simbolului.md:199-204). +„peste 7-8” e formularea exactă a cursului. Sub 7 NU e excludere: +la 4/14 și 6/14 continuă analiza; scorul departajează candidații. Surse: 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:158-164, :199-204; 16_ANALIZA_FUNDAMENTALA/08_piotrowski_f_score.md:70-72; 16_ANALIZA_FUNDAMENTALA/09_implementare_f_score_tradestation.md:45-46, 268-269. @@ -537,7 +543,10 @@ Strand [sic] și vedeți cine este în cadranul 1 și cadranul 2"

    F5. Relative volume peste 100%. Candela de volum împărțită la media ultimelor 10 candele de volum -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:741-747). Pragul: peste 100%.

    +(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:741-747). Pragul: peste 100%. +Sub prag e un minus care se compensează, nu un stop: la 0.99, 0.96, 0.94, +0.88 și 0.74 a continuat analiza; nespus dacă intră pe trigger sub prag +(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-751, 766-770).

    F6. Stelele (Trinity). Din ce a rămas, dacă au și 3 stele, poți sorta direct după ele (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:776-785).

    F7. Radarscreen. Repetă fluxul pe cele max ~300 de simboluri: sectoarele @@ -563,9 +572,9 @@ fundamental; un scor de 7 nu e motiv să-l iei dacă ai altul mai bun ATM score 12-13, cadran 1, RVOL peste 100% -NU — fundamental -Scor 2-4 sau companie pe pierdere / cash flow negativ / venit în scădere -APG 2, FLR 2 — respinse ca investiție (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:230-257) +NU — fundamental (ca investiție) +Scor 2 sau companie pe pierdere / cash flow negativ / venit în scădere; trecerea din profit în pierdere cu cash flow pozitiv nu intră aici +APG 2, FLR 2 — respinse ca investiție, FLR cel mult „un swing" (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:230-257) NU — relativ @@ -573,9 +582,9 @@ fundamental; un scor de 7 nu e motiv să-l iei dacă ai altul mai bun aștepți trecerea în 2 sau 1 (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:493-499) -NU — volum -Relative volume sub 100% în cazurile respinse; neconfirmat ca regulă generală (nu reiese că oprește orice intrare) -0.96 respins; 0.74 respins (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-761) +Minus, nu NU — volum +Relative volume sub 100%: minus care se compensează; nespus dacă intră pe trigger sub prag +0.99 (QRVO, „pattern interesant"), 0.96, 0.94, 0.74 — a continuat analiza (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770) NU — deteriorare @@ -591,11 +600,11 @@ fundamental; un scor de 7 nu e motiv să-l iei dacă ai altul mai bun rămâne MBT-10 / buy doji / MP4-1 pe grafic." (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:831-833).

  21. Stop-loss — NEACOPERIT ÎN MATERIAL. Un filtru nu are nivel de preț care - să-l invalideze (fise/selectia.md:156-161).
  22. + să-l invalideze (fise/selectia.md:161-166).
  23. Take-profit / tranșe / trailing — NEACOPERIT ÎN MATERIAL. Se stabilesc - în strategia de intrare (fise/selectia.md:163-167).
  24. + în strategia de intrare (fise/selectia.md:168-172).
  25. Mărimea poziției nu aparține selecției: ea doar alege simbolul; sizing-ul - se face pe setup-ul de intrare (fise/selectia.md:287-302).
  26. + se face pe setup-ul de intrare (fise/selectia.md:294-309).
  27. Durata ținerii — neacoperită; trimite la trigger-ul strategiei de intrare (fise/selectia.md:43-45).
  28. @@ -663,11 +672,11 @@ fundamental; un scor de 7 nu e motiv să-l iei dacă ai altul mai bun

    1.6 Checklist de tipărit

    • [ ] Am rulat scannerul pe universul potrivit (C1) și am scos close < 30-40 $ / volum mediu < 500k (C2-C4).
    • -
    • [ ] Am verificat scorul fundamental (ATM peste 7-8 / F-score 6-9); am respins companiile pe pierdere, cu cash flow negativ sau venit în scădere.
    • +
    • [ ] Am verificat scorul fundamental (ATM peste 7-8 / F-score 6-9); scorul departajează, nu respinge automat. Companiile pe pierdere, cu cash flow negativ sau venit în scădere nu sunt de investiție; la trecerea în pierdere m-am uitat la cash flow.
    • [ ] Am numărat din ce sector vin cele mai multe semnale și am luat sectorul dominant.
    • [ ] Din sector, am reținut doar simbolurile în suport/pivot (monthly/quarterly/anual) după downtrend; proximitate ≤ 3%.
    • -
    • [ ] Am verificat RS: doar cadranul 1-2. Cadranul 4 fără îmbunătățire = nu intru pe listă.
    • -
    • [ ] Am verificat relative volume > 100% (candela / media ultimelor 10).
    • +
    • [ ] Am verificat RS: doar cadranul 1-2. Cadranul 4 fără îmbunătățire = aștept trecerea în 2/1 sau un trigger long (MP4-1 / MBT-10).
    • +
    • [ ] Am verificat relative volume > 100% (candela / media ultimelor 10); dacă e sub, l-am notat ca minus, nu l-am tăiat automat.
    • [ ] Dacă e cazul, am sortat după 3 stele (Trinity).
    • [ ] Între doi candidați am ales prin contrast: trend → volum → fundamental.
    • [ ] Am notat simbolul pe listă, fără să intru: trigger-ul se caută separat pe grafic.
    • @@ -789,7 +798,7 @@ la 08_ANALIZA_ZILNICA/11_selectia_simbolului.md):

      Relative volume peste 100% (:766-770) -0.96 / 0.74 — respins (:769-770) +0.96 / 0.74 — minus, dar continuă analiza (:769-770) Sector @@ -826,11 +835,13 @@ la 08_ANALIZA_ZILNICA/11_selectia_simbolului.md):

      (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:841-846; 08_ANALIZA_ZILNICA/10_sinteza.md:564-573).
    • Cash flow pozitiv dar în scădere nu e „ok". E deteriorare; cash flow-ul - pozitiv îl cauți chiar și la companiile pe pierdere - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:326-391, 847-850).
    • -
    • Sub 100% relative volume l-a făcut să respingă. 0.96 și 0.74 sunt - respingeri, nu „aproape"; dar nu a formulat o regulă generală că sub prag - oprește orice intrare (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770).
    • + pozitiv îl cauți chiar și la companiile pe pierdere. Trecerea din profit în + pierdere nu scoate simbolul de pe listă (4 cazuri; deducție: contează + cash flow-ul) (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:248, 326-391, 847-850). +
    • Sub 100% relative volume e un minus, nu un veto. La 0.99, 0.96, 0.94, + 0.88 și 0.74 a continuat analiza; „aș fi vrut să văd un relativ volume mai + mare, dar [...] ce-mi place" (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770, 836-838). + Nespus dacă intră pe trigger sub prag.
    • Nu pune praguri rigide de RVOL în zile extreme. Pe scanerul real de Buy Doji, RVOL era CDNS 0.86, CRM 1.03, ULTA 0.61; un prag fix RVOL ≥ 1.2 ar fi dat zero rezultate — de aceea cursul recomandă Display, @@ -851,12 +862,14 @@ la 08_ANALIZA_ZILNICA/11_selectia_simbolului.md):

      -0.9, tot sub MA) cu divergență bull clară și preț la suport major (prețul coboară sub suportul de 340.00 până la 338.50, cu doji pe suport) este un long valid; entry 341.00, SL 337.80, TP 349.00.
    • -
    • Practic pentru cine decide: cele două nu se exclud complet — varianta A - interzice intrarea „pe orb", varianta B cere o condiție în plus (divergență - clară, nu doar cadranul). Dar materialul nu dă o regulă unică: nu reiese - dacă divergența e suficientă singură sau dacă mai trebuie și trigger-ul de - pe grafic. Cine aplică filtrul trebuie să decidă dacă acceptă cadranul 4 + - divergență sau respectă strict „aștept trecerea în 2/1".
    • +
    • Practic pentru cine decide: alternativa pe care o dă el la cadranul 4 + nu e divergența, e un trigger: „as astepta imbunatatire pe cadranul 4, + sa treaca in cadranul 2 / Sau in cadranul 1 [...] Sau un MP4,1 long, sau + poate MBT10 long" [sic] (transcripts/08_ANALIZĂ_ZILNICĂ/122_23022026.txt:103-106). Nicăieri nu spune că + divergența singură ajunge. Și la ACN divergența vine împreună cu prețul la + suport major și un doji pe suport, adică tot un setup cu trigger, nu cadranul + 4 + divergență goală. Regula de lucru: în cadranul 4 intri doar după trecerea + în 2/1 sau pe un trigger long (MP4-1 / MBT-10).

    Punct neclar terminologic — „Trinity" are două sensuri.

      @@ -872,26 +885,28 @@ la 08_ANALIZA_ZILNICA/11_selectia_simbolului.md):

    Puncte neclare (fără rezolvare în material):

      -
    • Cadranul 3. Sursa spune doar „cadranul 3 înseamnă îmbunătățire" și că e - „pentru direcție short"; nu reiese ce anume se îmbunătățește, iar - formularea „îmbunătățire spre underperform" e interpretarea sumarului de - selecție (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:858: „e - interpretarea mea"), nu a cursului - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:856-859).
    • -
    • Power. Sumarul de selecție nu-l descrie, dar trimite la el ca al treilea - indicator, alături de RS și volum - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:860-862). Definiția există - în 03_MODUL_2/09_indicatorul_power.md:3-14: histogramă proprie + MA, - măsoară cât de tare/susținut e trend-ul curent și distanța față de medii - (overbought/oversold); cel mai rapid leading dintre cei trei.
    • -
    • Ce faci sub 100% relative volume. A respins 0.96 și 0.74, dar nu a - formulat o regulă generală; nu reiese dacă sub prag oprește orice intrare - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:863-866).
    • +
    • Cadranul 3 = înrăutățire; o dată spune invers. Definiția din modul: + „cadranul 3, care înseamnă înrăutățire [...] histogramă este deasupra linii + de 0 dar sub moving average" (transcripts/03_MODUL_2/06_6_INDICATORUL_DE_PERFORMANTA.txt:6), + confirmată în practică: „in cadranul 3 se inrautateste" [sic] + (transcripts/08_ANALIZĂ_ZILNICĂ/122_23022026.txt:87). La transcripts/08_ANALIZĂ_ZILNICĂ/99_27032026.txt:89 spune o + dată „cadranul 3 înseamnă îmbunătățire" — scăpare verbală, contrazisă de + definiție (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:439-442, 856-859).
    • +
    • Power — doar formula lipsește. Ce măsoară e spus: „măsoară tăria + trend-ului", prin histogramă + moving average, cu 4 cadrane + (transcripts/03_MODUL_2/09_9_INDICATORUL_POWER.txt:1, 4-12; + 03_MODUL_2/09_indicatorul_power.md:3-14). Cum se calculează histograma nu + e spus (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:860-862).
    • +
    • Relative volume sub 100%: dacă intră pe trigger. Sub prag e un minus pe + care îl compensează cu pattern-ul și volumul pe TF mare; nu reiese dacă a + intrat efectiv sub prag (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:866-867).
    • +
    • Pragul de scor de excludere rămâne nespus: „peste 7-8" e ce îl + interesează, dar la 4/14 și 6/14 continuă (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:863-865).

    2.5 Exemplul complet, pas cu pas

    Materialul nu are niciun exemplu care să ducă un singur simbol real prin tot funnel-ul (fundamental → sector → suport → RS → RVOL → Trinity) cu -scoruri și niveluri complete (fise/selectia.md:283-285). Exemplele sunt +scoruri și niveluri complete (fise/selectia.md:290-292). Exemplele sunt parțiale. Mai jos, cel mai apropiat caz: ULTA, găsit de scannerul de Buy Doji + Bull Reversal, și apoi HIG, găsit de scannerul oglindă de Sell Doji + Bear Reversal.

    @@ -957,7 +972,7 @@ avertisment de participare.

    HIG — daily (Sell Doji + Bear Reversal, RVOL 200%) - rezistenta 84.50 + rezistenta 84.50 SL 82.00 @@ -1107,7 +1122,7 @@ cu trimitere; restul e extrapolare și poate fi greșit.

    Pe cont de prop

    Selecția în sine nu deschide poziții, deci nu atinge limita de drawdown — poate rula ca prefiltru fără să contrazică nicio regulă de prop -(fise/selectia.md:308-314). Problema pe prop nu e riscul, ci uneltele: +(fise/selectia.md:315-321). Problema pe prop nu e riscul, ci uneltele: ATM-Score, RS/Power/Trinity și scanerele sunt proprietare TradeStation, iar ATM-Score cere cont premium (16_ANALIZA_FUNDAMENTALA/09_implementare_f_score_tradestation.md:91-96).

    @@ -1159,7 +1174,7 @@ reducă numărul de simboluri corelate prost alese (același sector, ac poveste), care e exact ce multiplică pierderile într-o singură zi.

    Verdict: merge ca atare ca logică, dar pe prop supraviețuiește doar partea cu unelte neproprietare (F-Score + RS/RVOL calculate), adică ~50-60% -din proces (fise/selectia.md:308-314).

    +din proces (fise/selectia.md:315-321).

    Pe BVB (swing)

    Ce cere strategia vs. ce există:

    @@ -1348,7 +1363,7 @@ Distanța până la suport se calculează ca procent și se compară cu pragul d

    Verdict: merge degradat. Rămâne scheletul fundamental (F-Score) + suport/pivot + relative strength calculat manual față de BET, pe un univers de 8-10 nume lichide, cu verificare manuală în loc de scanner. -Cât din strategie supraviețuiește: ~30-35% (fise/selectia.md:304-326). +Cât din strategie supraviețuiește: ~30-35% (fise/selectia.md:311-333). Ce anume rămâne: F-Score-ul Piotroski (complet calculabil din rapoartele de pe bvb.ro) și relative strength manual față de BET; ce cade: scannerul automat, ATM-Score/value-score, Power/Trinity, cadranele de short diff --git a/summaries/17_STRATEGII/A1_risc.html b/summaries/17_STRATEGII/A1_risc.html index 6737d72..8e3b9d5 100644 --- a/summaries/17_STRATEGII/A1_risc.html +++ b/summaries/17_STRATEGII/A1_risc.html @@ -140,7 +140,7 @@ sunt reconciliate explicit de material (vezi 2.4).

    scrie NEACOPERIT ÎN MATERIAL la MBT-10 (strategii/fise/mbt10.md:186), MBP (strategii/fise/mbp.md:322-326), MDSRT (strategii/fise/mdsrt.md:294-297), BYH (strategii/fise/byh.md:291-295) și selecție -(strategii/fise/selectia.md:300-302). În acele cazuri se aplică plafonul +(strategii/fise/selectia.md:307-309). În acele cazuri se aplică plafonul general de 2% de mai sus.

    1.2 De unde vine stopul (înainte de a calcula ceva)

      @@ -669,7 +669,7 @@ sizing — stopul pe structură, TP1/TP2/trail, jurnalul — se transferă ca at
    - + diff --git a/summaries/17_STRATEGII/fise/selectia.html b/summaries/17_STRATEGII/fise/selectia.html index 12bead5..edfc579 100644 --- a/summaries/17_STRATEGII/fise/selectia.html +++ b/summaries/17_STRATEGII/fise/selectia.html @@ -105,8 +105,10 @@ intrare (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:5-6, 831-833) calendarul/contextul chiar înaintea oricărei idei pe simbol (08_ANALIZA_ZILNICA/10_sinteza.md:54-56, marcat acolo ca reconstituire).
  29. Scor fundamental: ATM score peste 7-8 intră în analiză; 12-13 e - „spuma"; 7/14 e „galben"; sub 7 se deduce că nu-l pui pe listă - (nedeclarat ca prag separat). 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-204. + „spuma"; 7/14 e „galben". Sub 7 nu e prag de excludere: la 4/14 și + 6/14 continuă analiza; scorul departajează între candidați („5 din 14, ala + are 13 din 14. Păi, mai bine au AI [sic] decât MARA"); pragul exact de + excludere rămâne nespus. 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-204, 212-213. Pe F-score separat: 8-9 foarte puternic, 6-7 solid, 4-5 mixt, 0-3 slab. 16_ANALIZA_FUNDAMENTALA/08_piotrowski_f_score.md:70-72.
  30. Trend: scannerul fundamental e „top 500 cu ATM score peste 7, în downtrend @@ -121,13 +123,15 @@ intrare (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:5-6, 831-833) (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:719-728). După o corecție masivă, filtrul se schimbă: cauți doji / hammer la suporturi mari, iar scannerul de apropiere de suport merge până la 3% (4% „e cam departe"). 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:787-803.
  31. -
  32. Volum: relative volume peste 100% - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:741-770); verifică și volumul pe monthly/weekly la listă +
  33. Volum: relative volume peste 100%; sub prag (0.99, 0.96, 0.94, 0.88, + 0.74) e un minus care se compensează, nu un stop — nespus dacă intră pe + trigger sub prag (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:741-770); verifică și volumul pe monthly/weekly la listă (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:209-213).
  34. Fundamental — ce descalifică: companie pe pierdere, cash flow negativ, venit în scădere = speculă pe momentum, nu investiție; trecerea din profit în - pierdere = minus, dar nu reiese că scoate simbolul - (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:225-257). Cash flow pozitiv dar în scădere = deteriorare, nu-l pui pe + pierdere = minus, dar nu scoate simbolul: Vodafone, Baxter, Shopify și + spitalul au rămas în analiză, primele trei cu cash flow pozitiv (deducție: + criteriul real pare cash flow-ul) (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:225-257). Cash flow pozitiv dar în scădere = deteriorare, nu-l pui pe lista de investiție (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:326-391).
  35. Valuation: P/E forward mic contează doar dacă veniturile cresc; P/E mic + venit în scădere = probleme, nu chilipir; P/E peste minimul de 5 ani @@ -141,8 +145,10 @@ fișierului-sursă). 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:18-27, 6 (minim 500k), volum mediu scanner ≥ 500k (09_QA/28_2025-05-27.md:372-380, 03_MODUL_2/11_construire_scanere_sf_byd_sld.md:70-73).
  36. Fundamental — ATM score peste 7-8 (12-13 = prioritate); F-score - 6-9 solid/puternic; elimini companiile pe pierdere / cash flow negativ / - venit în scădere. 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-221, 225-257.
  37. + 6-9 solid/puternic; scorul departajează, nu respinge automat. Companiile pe + pierdere / cu cash flow negativ / venit în scădere nu sunt de investiție; + trecerea în pierdere cu cash flow pozitiv nu scoate simbolul. + 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:199-221, 225-257.
  38. Sectorul care domină — numără din ce sector vin cele mai multe semnale (rotație); la nivel de sectoare sortezi după cadranul 1 + valoarea RS, pe cele 11 sectoare S&P, și te uiți la componentele ETF-ului de sector. @@ -173,11 +179,10 @@ pe grafic. Un simbol perfect pe hârtie, fără trigger, e doar pe listă." 16_ANALIZA_FUNDAMENTALA/08_piotrowski_f_score.md:74-84; 16_ANALIZA_FUNDAMENTALA/09_implementare_f_score_tradestation.md:263-265.)

    DA / NU pentru validitatea selecției (nu pentru intrare): DA = trece toate -filtrele din §4-5; NU = scor 2-4 -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:230-257), RS în cadranul 4 fără îmbunătățire -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:493-499), relative volume 0.96 / 0.74 -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-761), fundament în deteriorare -(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:225-257, 326-391).

    +filtrele din §4-5; NU ca investiție = scor 2 (APG, FLR — FLR cel mult „un +swing") (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:230-257), RS în cadranul 4 fără îmbunătățire = așteptare +(08_ANALIZA_ZILNICA/11_selectia_simbolului.md:493-499), cash flow în deteriorare (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:326-391). Relative volume +sub 100% (0.96 / 0.74) e minus, nu NU (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770).

    7. Stop-loss

    NEACOPERIT ÎN MATERIAL — un filtru de selecție nu are stop-loss. Nu există nivel de preț care să invalideze selecția în material. Stop-loss-ul apare doar @@ -301,21 +306,22 @@ Take-profit-ul se stabilește în strategia de intrare

  39. Cadranul 4 nu se cumpără pe orb. Aștepți trecerea în 2 sau 1 ori un MP4-1 / MBT-10 long; un scor fundamental bun nu anulează RS-ul slab. 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:493-499, 839-840. - Contradicție în material: fișierul de RS dă un contra-exemplu explicit - (ACN) — cadranul 4 cu divergență bull clară și preț la suport major poate - fi long valid (03_MODUL_2/06_indicatorul_de_performanta.md:337-342, 494-496), - în timp ce 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:493-499 spune că nu se tranzacționează - pe orb. Cele două nu se exclud complet (al doilea cere divergență, nu „pe - orb"), dar nu reiese o regulă unică.
  40. + Alternativa pe care o dă el nu e divergența, e un trigger: „as astepta + imbunatatire pe cadranul 4, sa treaca in cadranul 2 / Sau in cadranul 1 + [...] Sau un MP4,1 long, sau poate MBT10 long" [sic] + (transcripts/08_ANALIZĂ_ZILNICĂ/122_23022026.txt:103-106). Nicăieri nu spune că divergența singură + ajunge. Exemplul ACN din fișierul de RS (cadranul 4 cu divergență bull, + 03_MODUL_2/06_indicatorul_de_performanta.md:337-342, 494-496) are și preț + la suport major cu doji pe suport, adică tot un setup cu trigger.
  41. „Trinity" are două sensuri în material. La selecție = RS + Power + volum aliniate în cadranul 1 (08_ANALIZA_ZILNICA/11_selectia_simbolului.md:555-568). În strategia MDSRT = cei trei indicatori în divergență simultană pe aceeași zonă („nu e trinity-ul clasic", 05_MODUL_4/02_strategia_5_mdsrt.md:4-9, 34-42). 09_QA/19_2025-09-08.md:53-54 numără altfel stelele (3 indicatori + bull reversal + suport = 5 stele). Nu sunt același lucru — nu le amesteca.
  42. -
  43. Sub 100% relative volume l-a făcut să respingă. 0.96 și 0.74 sunt - respingeri, nu „aproape"; dar nu a formulat o regulă generală că sub prag - oprește orice intrare. 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770, 836-838, 863-866.
  44. +
  45. Sub 100% relative volume e un minus, nu un veto. La 0.99, 0.96, 0.94, + 0.88 și 0.74 a continuat analiza; nespus dacă intră pe trigger sub prag. + 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:749-770, 836-838, 866-867.
  46. Nu pune praguri rigide de RVOL în zile extreme. Pe scanerul real de Buy Doji, RVOL era CDNS 0.86, CRM 1.03, ULTA 0.61; un prag fix RVOL ≥ 1.2 ar fi dat zero rezultate, deși existau 3 candidați valizi — de aceea cursul @@ -324,8 +330,9 @@ Take-profit-ul se stabilește în strategia de intrare
  47. Prețul poate bate fundamentalul. Un setup cu scor 12/14 a fost respins de un sell doji plus reject pe pivotul quarterly. 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:841-846; 08_ANALIZA_ZILNICA/10_sinteza.md:564-573.
  48. -
  49. Cash flow pozitiv dar în scădere nu e „ok". E deteriorare; la trecerea - din profit în pierdere nu reiese că scoate simbolul din listă. +
  50. Cash flow pozitiv dar în scădere nu e „ok". E deteriorare. Trecerea din + profit în pierdere, în schimb, nu scoate simbolul din listă (4 cazuri; + deducție: contează cash flow-ul). 08_ANALIZA_ZILNICA/11_selectia_simbolului.md:326-391, 847-850.
  51. Relative strength nu funcționează pe commodities (compară cu SPY). 09_QA/19_2025-09-08.md:56-60.
  52. volum mediu > 500k, preț > 30-40 $ nu (praguri US)praguri recalculate pe lichiditatea reală a numelor BET, nu pe cifrele US (strategii/fise/selectia.md:318-320)praguri recalculate pe lichiditatea reală a numelor BET, nu pe cifrele US (strategii/fise/selectia.md:325-327)
    date fundamentale trimestriale