agent: m2d-extractor — adăugat secțiunea citire dot band (color→role mapping from ATM project)
This commit is contained in:
@@ -52,7 +52,7 @@ Schema este în `scripts/vision_schema.py`. Are `extra="forbid"` — orice câmp
|
||||
| `data` | timestamp axa X la candle-ul trigger, normalizat `YYYY-MM-DD`. TradeStation folosește MM/DD/YY american; convertești. Nu poate fi în viitor față de UTC azi. |
|
||||
| `ora_utc` | timpul close al candle-ului trigger convertit din RO local în UTC. Format `HH:MM` (24h). EEST = UTC+3 (vară), EET = UTC+2 (iarnă). Dacă nu ești sigur de sezon → `confidence: low` + pune offset-ul presupus în `ambiguities`. |
|
||||
| `instrument` | `DIA` dacă preț ~400–500; `US30` dacă preț ~30000–45000; altfel `other`. |
|
||||
| `directie` | `Buy` dacă trigger e bulină verde-deschis după verde-închis după turquoise pe TF mare. `Sell` dacă roșu-deschis după roșu-închis după galben pe TF mare. |
|
||||
| `directie` | **CRITICAL**: vezi secțiunea "Citirea bulinelor — dot band" mai jos. Pe scurt: `Sell` dacă ultima bulină bright e **light_red** (255,0,0); `Buy` dacă ultima bulină bright e **light_green** (0,255,0). |
|
||||
| `tf_mare` | exact `5min` sau `15min` — citești din label/overlay TF mare. |
|
||||
| `tf_mic` | exact `1min` sau `3min` — citești din label chart vizibil. |
|
||||
| `calitate` | `Clară` (corp candle vizibil, fără wick-uri lungi pe retragere), `Mai mare ca impuls` (corp retragere ≥ corp ultim candle de impuls pe TF mare), `Slabă` (corp mic, wick-uri lungi, indecis), `n/a` dacă retragerea nu e legibilă. |
|
||||
@@ -67,6 +67,42 @@ Schema este în `scripts/vision_schema.py`. Are `extra="forbid"` — orice câmp
|
||||
| `ambiguities` | listă scurtă cu ce a fost incert (ex: `["ora_utc DST boundary", "tp1 obscured by overlay"]`). Empty list dacă nimic. |
|
||||
| `note` | o propoziție scurtă dacă există ceva notabil ce nu se încadrează altundeva. String gol altfel. |
|
||||
|
||||
### Pas 2.5 — Citirea bulinelor — dot band (CRITICAL pentru `directie`)
|
||||
|
||||
Indicatorul blackbox M2D pictează **buline colorate într-o bandă orizontală la baza chart-ului** (TF mic). Aceasta e singura sursă fiabilă pentru direcție și trigger. **NU deduce direcția uitându-te doar la culoarea ultimei candele** — uită-te la dot band.
|
||||
|
||||
**Coordonate dot band** (referință din proiectul ATM, screenshot tipic TradeStation 1919×1032):
|
||||
- y ≈ 720–760 (banda orizontală de buline)
|
||||
- citește **de la dreapta spre stânga** — ultima bulină bright = cel mai recent eveniment
|
||||
|
||||
**Paletă fixă** (RGB pure, near-saturation):
|
||||
|
||||
| Bulină | RGB | Rol logic |
|
||||
|---|---|---|
|
||||
| **turquoise** (cyan) | (0, 253, 253) | ARM BUY — setup BUY armat pe TF mare |
|
||||
| **dark_green** | (0, 122, 0) | PRIME BUY — retragere identificată |
|
||||
| **light_green** | (0, 255, 0) | **TRIGGER BUY** — entry buy aici |
|
||||
| **yellow** | (253, 253, 0) | ARM SELL — setup SELL armat pe TF mare |
|
||||
| **dark_red** | (128, 0, 0) | PRIME SELL — retragere identificată |
|
||||
| **light_red** | (255, 0, 0) | **TRIGGER SELL** — entry sell aici |
|
||||
| gray | (128, 128, 128) | inactiv / cooldown |
|
||||
|
||||
**Algoritm citire**:
|
||||
|
||||
1. Scanezi dot band-ul **de la dreapta spre stânga** (cele mai recente buline).
|
||||
2. Identifici **ultima bulină bright** (light_red SAU light_green). Aceasta determină `directie`:
|
||||
- **light_red** = `Sell`
|
||||
- **light_green** = `Buy`
|
||||
3. Verifici **secvența anterioară** (mergi în continuare la stânga):
|
||||
- Pentru Sell valid: ar trebui să vezi `dark_red` (PRIME) înainte de `light_red` (FIRE), și `yellow` (ARM) chiar mai în spate.
|
||||
- Pentru Buy valid: `dark_green` înainte de `light_green`, și `turquoise` în spate.
|
||||
4. Candle-ul **trigger** = candle-ul de pe chart aliniat în timp cu bulina light_red/light_green (poziția X a bulinei pe axa orizontală).
|
||||
|
||||
**Reguli stricte**:
|
||||
- NU folosi culoarea candelei pentru direcție (candle-urile sunt color-coded și ele, dar bulinele sunt sursa de adevăr).
|
||||
- Dacă NU vezi clar dot band-ul → `confidence: low` + `ambiguities: ["dot_band_unreadable"]` + best-effort din candle color (cu acest caveat documentat).
|
||||
- Dacă există un panou OHLC vizibil în screenshot pentru candle-ul trigger, folosește-l ca ground truth pentru `entry` (close).
|
||||
|
||||
### Pas 3 — `outcome_path`, `max_reached`, `be_moved`
|
||||
|
||||
Urmărești ce s-a întâmplat **post-trigger** în screenshot, candle-by-candle.
|
||||
|
||||
2
data/jurnal.csv
Normal file
2
data/jurnal.csv
Normal file
@@ -0,0 +1,2 @@
|
||||
id,screenshot_file,source,data,zi,ora_ro,ora_utc,instrument,directie,tf_mare,tf_mic,calitate,entry,sl,tp0,tp1,tp2,risc_pct,outcome_path,max_reached,be_moved,pl_marius,pl_theoretical,set,indicator_version,pl_overlay_version,csv_schema_version,extracted_at,note
|
||||
1,dia-1min-example2.png,vision_calibration,2026-05-13,Mi,17:33,14:33,DIA,Sell,5min,1min,n/a,492.47,492.77,492.35,492.29,492.17,0.06,pending,TP0,True,,0.1330,A2,v-2026-05,marius-v1,1,2026-05-13T10:05:22Z,User hint confirmed Sell direction via light_red dot in band. Entry anchored to OHLC panel reading ~492.47 at 17:33 RO.
|
||||
|
10
data/jurnal.md
Normal file
10
data/jurnal.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# Jurnal M2D (auto-generated from data/jurnal.csv)
|
||||
|
||||
Generated: 2026-05-13T10:05:36Z
|
||||
Rows: 1
|
||||
|
||||
| # | Data | Zi | Ora RO | Set | Instrument | Direcție | Calitate | Entry | SL | TP0 | TP1 | TP2 | outcome_path | P/L (Marius) | P/L (theoretic) | Source | Note |
|
||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||
| 1 | 2026-05-13 | Mi | 17:33 | A2 | DIA | Sell | n/a | 492.47 | 492.77 | 492.35 | 492.29 | 492.17 | pending | pending | +0.13 | vision_calibration | User hint confirmed Sell direction via light_red dot in band. Entry anchored to OHLC panel reading ~492.47 at 17:33 RO. |
|
||||
|
||||
*Vezi `data/jurnal.csv` pentru toate cele 29 coloane (id, ora_utc, tf_*, risc_pct, be_moved, max_reached, versions, extracted_at).*
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 158 KiB After Width: | Height: | Size: 163 KiB |
BIN
dia-1min-example2.png
Normal file
BIN
dia-1min-example2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 177 KiB |
Reference in New Issue
Block a user