Marius 0e03d32004 docs: CLAUDE.md — ghid pentru Claude Code (Excel-first journal, 5 strategii)
Bootstrap creat via /init. Surprinde:
- ce e repo-ul (jurnal Excel manual, nu pipeline automat — reboot-ul recent eliminat vision)
- regenerator-ul template + atenționarea că suprascrie data/backtest.xlsx
- arhitectura celor 3 sheets (Config / Trades / Dashboard) și lookup-ul COL
- 5 strategiile management cu STRAT_KEYS + R_FN
- STOPPING_RULE.md ca document semnat (thresholds fixe)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-13 19:24:05 +03:00

atm-backtesting

Jurnal Excel manual pentru backtesting pe semnale blackbox (entry / SL / TP precalculate de alt trader sau de un indicator), cu comparație 5 strategii de management side-by-side.

Ce face

Introduci datele de bază ale fiecărui trade — dată, oră, strategie, indicator, TF, direcție, SL/TP0/TP1/TP2 în %, outcome — și Excel calculează automat:

  • R-multiples și $ P&L pentru 5 strategii paralele
  • Dashboard: Win Ratio, Average Win/Loss, Profit Factor, Risk:Reward, Expectancy, HWM Balance, Max Drawdown — câte un set per strategie
  • Breakdown per Sesiune, Strategie, Indicator, Direcție
  • Equity curve (5 linii — câte una per strategie)

Cele 5 strategii de management comparate:

# Strategie Comportament
1 TP0 only 100% poziție, close la TP0. Foarte conservator (bird in hand).
2 TP1 only 100% poziție, OCO la SL sau TP1, fără intervenție.
3 TP2 only 100% poziție, OCO la SL sau TP2 (let it ride).
4 Hybrid + BE 50% close la TP0, mut SL la BE, 50% close la TP1. Recomandat de trader.
5 Hybrid no BE 50% close la TP0, fără BE, 50% close la TP1. Compară direct cu #4 ca să vezi dacă BE-ul aduce valoare.

Rezultatul: pe aceleași semnale, vezi care metodă de management produce cel mai mare expectancy, profit factor și cea mai mică drawdown.

De ce 2 variante Hybrid (cu/fără BE)

BE move este o regulă teoretică de management, nu o decizie istorică pe fiecare trade. Așa că nu o marchezi manual pe rând — în schimb, ambele variante (cu și fără BE) se calculează automat pentru fiecare trade. Compari direct dacă regula BE-ului adaugă R-uri sau le scoate.

Setup (o singură dată)

pip install openpyxl
python scripts/generate_template.py

Se generează data/backtest.xlsx. Deschide-l în Excel sau LibreOffice Calc.

Workflow zilnic

  1. Deschide data/backtest.xlsx și du-te în sheet-ul Trades.
  2. Adaugă un rând nou (continuă imediat sub ultimul completat — nu lăsa goluri între rânduri).
  3. Completează coloanele galbene (input) — restul (albastre) se calculează automat:
    • Data, Ora RO (sesiunea + ziua se derivă automat de aici)
    • Strategie (M2D / EMA cross / ... — dropdown, editabil în Config)
    • Indicator (DIA / SPY / US30 / ... — dropdown)
    • TF (1min / 3min / 15min — dropdown; e TF-ul de entry, vezi mai jos)
    • Direcție (Buy / Sell — dropdown)
    • SL %, TP0 %, TP1 %, TP2 % — distanțe față de entry, în procente (ex. 0.30 pentru 0.30%)
    • Outcome (SL / TP0 only / TP1 / TP2 — dropdown)
    • Notes (opțional)
  4. Coloanele albastre derivate (Zi, Sesiune, R_, $_, Bal_* pentru cele 5 strategii) se umplu automat.
  5. Mergi la sheet-ul Dashboard — metricile, breakdown-urile și equity curve se actualizează live.

Coloana TF

Pentru M2D, TF-ul mic este TF-ul de entry, iar TF-ul mare e implicit:

TF (input) Perechea M2D
1min 1 / 5 min
3min 3 / 15 min
15min 15 / 60 min

Dacă folosești o altă strategie cu pereche diferită, descrie în Notes.

Cum se calculează Sesiunea automat

Pe baza Data + Ora RO, regulile M2D (vezi strategie_M2D.md):

Sesiune Condiție
A1 16:3517:00 RO, Mar/Mie/Joi
A2 17:0018:00 RO, Mar/Mie/Joi (sweet spot)
A3 18:0019:00 RO, Mar/Mie/Joi
B 22:0022:45 RO, Mar/Mie/Joi (Power Hour)
C 15:3016:30 RO (pre-NY chop / news risk), orice zi
D Luni sau Vineri
Other În afara ferestrelor de mai sus

Notă: zilele FOMC/NFP/CPI ar trebui marcate ca C, dar formula nu detectează evenimente — marchează manual în Notes dacă e zi news majoră.

Configurare

Sheet-ul Config permite editarea:

  • Account Size Start ($) — balanța inițială (default $10,000)
  • Risk per Trade (%) — % din account riscat per trade (default 1.0%)
  • Listele pentru dropdown-uri: Strategii, Indicatori, TF, Direcție, Outcome

La schimbarea Account Size sau Risk %, toate sumele $ din Trades și Dashboard se recalculează.

Formule R-multiples (referință)

SL_%, TP0_%, TP1_%, TP2_% sunt distanțe pozitive față de entry, exprimate în procente.

Tabelul de mai jos arată R-multiple-ul rezultat pentru fiecare combinație (Outcome × Strategie):

Outcome TP0 only TP1 only TP2 only Hybrid + BE Hybrid no BE
SL 1 1 1 1 1
TP0 only +TP0/SL 1 1 +0.5·TP0/SL +0.5·TP0/SL 0.5
TP1 +TP0/SL +TP1/SL 1 +0.5·(TP0+TP1)/SL +0.5·(TP0+TP1)/SL
TP2 +TP0/SL +TP1/SL +TP2/SL +0.5·(TP0+TP1)/SL +0.5·(TP0+TP1)/SL

Citirea Outcome-ului:

  • SL — prețul a atins SL fără să atingă vreodată TP0 (loss complet).
  • TP0 only — prețul a atins TP0, dar nu și TP1 (ulterior fie a venit înapoi la SL, fie a fost închis la BE pentru variantele cu BE move).
  • TP1 — prețul a atins TP1 (a trecut prin TP0).
  • TP2 — prețul a atins TP2 (a trecut prin TP0 și TP1).

Asumpții de simulare:

  • TP1 only și TP2 only simulează OCO pur, fără intervenție manuală. Outcome=TP0 only se închide la SL (presupunere worst-case).
  • TP2 only cu Outcome=TP1 se închide la SL (TP1 a fost atins, dar SL ar fi venit înainte de TP2).
  • Diferența dintre Hybrid + BE și Hybrid no BE apare doar când Outcome=TP0 only; la TP1/TP2 ambele dau identic.

Regenerare template

Dacă strici structura Excel-ului accidental sau modifici scripts/generate_template.py:

python scripts/generate_template.py

Atenție: suprascrie data/backtest.xlsx. Fă backup la rândurile tale înainte (copy-paste într-un alt fișier sau export CSV).

Decizii GO LIVE / ABANDON

Vezi STOPPING_RULE.md — threshold-urile semnate (N≥40, WR≥55%, Expectancy≥+0.20R) și caveat-urile metodologice.

Fișiere

atm-backtesting/
├── data/
│   └── backtest.xlsx          # source of truth — jurnalul tău
├── scripts/
│   └── generate_template.py   # regenerator template
├── strategie_M2D.md           # referință reguli M2D (Buy/Sell setup, SL/TP, sesiuni)
├── calendar_evenimente.yaml   # calendar news (FOMC/NFP/CPI etc.) pentru identificare manuală sesiune
├── STOPPING_RULE.md           # threshold-uri decizie + caveats semnate
├── pyproject.toml             # dependență: openpyxl
└── README.md                  # acest fișier
Description
No description provided
Readme 1.1 MiB
Languages
Python 100%