← Bot PETARDA · dashboard główny

Struktura budowanego systemu · stan 27.09.2026

Architektura bota crypto scalping

statyczne · źródło: reports/2026-09-27-architektura-bota-scalp

Kliknij warstwę, aby zobaczyć, co robi i z kim się komunikuje. System ma działać „jak trader”: najpierw rozumie sytuację na wykresie, potem formułuje tezę, wchodzi, prowadzi pozycję i uczy się na wynikach — każda warstwa robi jedną rzecz i przekazuje dalej jeden obiekt z kontraktem JSON. Strona pokazuje strukturę; dashboard rozwoju (lejek hipotez, tempo uczenia) to etap G4.

1. Warstwy (od pomiaru do kapitału)

0 · PomiarP7 ledger, P8 kosztG1 PASS

Jedna prawda o każdym trade'zie: USD z deali, R w kanonie właściciela (z faktycznego wypełnienia, flaga fill_near_sl, obok R_signal), koszt rzeczywisty (spread para × godzina × typ dnia + poślizg wejścia ~0,04 R), latencja jako rozkład (P50 0,96 s / P95 2,4 s), blocked_by / would_have_R dla zatrzymanych sygnałów.

Wejście: dziennik floty (kopie SQLite + sha256), deale MT5, fast_signals, wyniki paper. Wyjście: LedgerEvent@1 (JSONL z łańcuchem sha256), CostModel@1, ExecutionModel@1. Każda warstwa czyta ledger, pisze tylko P7. Rekoncyliacja z dashboardem 4/4 dni co do centa.

1a · SytuacjaP2G2 PASS

„Karta wykresu” tradera w chwili sygnału: trend 1m…4h/1d (silnik cech generatora, parytet 100 %), faza ruchu (impuls / wyczerpanie / odbicie / range), mapa poziomów (S/R wyższych TF, H/L dnia i tygodnia, VWAP, OR, okrągłe liczby), formacje 15m/1h/4h (liczone raz), makro (risk-on/off z BTC, kalendarz), przepływ, spread i grupa kosztowa. Brak danych = brak biasu.

Wyjście: Situation@1 z situation_id (sha treści), dołączany do każdego sygnału. Czytają: P3 generator, P4 alokator, P9 egzamin (bramki per faza), P6 zarządzanie (świeża karta co bar).

1a' · Sygnał + tezaP3 generator (dziś obserwator SCALPOWANIE)istnieje

Reguły i detektory dają FastSignal@1 (wejście, SL autora, TP) i thesis@1: kierunek, kody powodów odwołujące się do karty, warunek unieważnienia poza SL (struktura, czas, zdarzenie), oczekiwana ścieżka.

Sygnał + teza + situation_id idą kanałem szybkim (TCP 47931 + JSONL) do P4.

1b · WyjściaExitConfig@1plan

Drabinka TP, próg BE, trailing, time-stop warunkowy i runner jako jeden obiekt, bo we flocie BE = ułamek dystansu do TP1: zmiana TP1 bez BE kasuje przewagę. Warianty testowane jako całe obiekty (rodzina E).

exit_config_id w Trade@1; P5 egzekwuje; P9 porównuje warianty sparowane na tych samych sygnałach.

1c · Zarządzanie pozycjąP6 (nowa)plan

Po wejściu co zamknięty bar pobiera świeżą kartę i tezę; regułami z góry: wyjście, gdy teza unieważniona (struktura przeciw, czas bez MFE, zdarzenie High), stop za strukturą, redukcja przy zmianie fazy. Najpierw jako cień (log-only), egzekwowanie po egzaminie.

RPC do P5 (modify_sl, close_partial), ExitEvent do ledgera.

2 · Koszt · kalendarz · makroP8 + rekorderczęściowo

Model kosztu (spread, poślizg, grupa kosztowa pary A/B/C; alarm gdy 7-dniowy spread/zasięg > 0,2), kalendarz makro z surowego źródła, stan makro i sentyment liczony offline.

Zasila kartę (1a), bramkę (P4: SL ≥ 5 × spread, blackouty) i egzamin (wynik netto po kosztach).

3 · EgzekucjaP5 = flota discord_mt5 (jedyny order_send)istnieje

Zlecenia, wypełnienia, transze, lustro dwóch kont, kolejka per para (final-28: limit 2,5 s + strażnik dryfu), telemetria wieku sygnału.

Przyjmuje admission z P4, zwraca Fill@1 / Trade@1 i dziennik do P7. ExecutionModel@1 pozwala replayowi symulować dokładnie tę egzekucję.

4 · Rejestr + egzaminP9 / P10G3 w budowie

Hipoteza rejestrowana przed liczeniem (hash protokołu), forward od rejestracji, jednostka = epizod, klaster = dzień, BH per rodzina / Holm do promocji, nadwyżka nad losowym dla bramek, suspect_simulation (> 85 % trafień), ocena tygodniowa. Statusy: nominated / rejected / underpowered / suspect / promoted_conditional; karta negatywna dla odrzuconych. Produkt: EGZAMIN-tydzień, PLAYBOOK.json (sytuacja → dozwolone rodziny).

Czyta ledger, kartę, koszt; jedyna droga paper → live = przełączenie admission w P4 po decyzji właściciela.

5 · UczenieP11 (jeden temat = jeden przebieg)plan

Źródła (książki, papers, TradingView/Pine, YouTube, lekcje pętli, dziennik) → karty Hypothesis@1 z source_kind → rejestr. LLM tylko offline: narracja z testem cytowania, ekstrakcja specyfikacji; nigdy nie zmienia reguł ani konfiguracji. Meta-pętla: ImprovementProposal@1 do backlogu bramek po przeglądzie.

Pisze wyłącznie do rejestru i backlogu; czyta wszystko.

6 · Kapitał i ryzykoP4 alokatorplan

„Czy, gdzie i ile” oddzielone od „kiedy”: budżet per księga w USD, wielkość w USD, sloty, korelacja z otwartymi pozycjami, ranking okazji w oknie 60 s, hamulec serii i cooldown kierunku (2 SL tej samej strony → blokada 15 min), kill-switche, dzienny limit, wybór par wg grupy kosztowej.

Wyjście: admission {allow | shadow | block, blocked_by, size_usd, book}. Jedyny punkt, w którym egzamin wpływa na handel; bramki z cienia egzekwowane dopiero po nadwyżce nad losowym.

Księga scalp 1m/5m · AAVE + XLMKsięga intraday 15m–4hKsięga swing 4h/1d

2. Droga jednego sygnału (jedna koperta, jeden signal_id)

  1. P1 rekorder → dane rynku Envelope
  2. P2 sytuacja → situation_id Situation@1
  3. P3 generator → sygnał + teza FastSignal@1 · Thesis@1
  4. P4 bramka / alokator → decyzja Admission
  5. P5 egzekucja → wypełnienie, transakcja Fill@1 · Trade@1.1 · ExecutionModel@1
  6. P6 zarządzanie → zdarzenia wyjścia ExitConfig@1 · ExitEvent
  7. P7 ledger → USD, R kanoniczne LedgerEvent@1.1 · CostModel@1
  8. P9 egzamin · P10 rejestr · P11 uczenie → hipotezy Hypothesis@1
  9. Zmiana systemu tylko przez admission — nic nie trafia bezpośrednio do generatora

Jak warstwy się komunikują

  1. Jedna koperta z jednym signal_id przez całą drogę P2 → P3 → P4 → P5 → P6 → P7; każdy proces dopisuje swój blok w kontrakcie JSON walidowanym na granicy.
  2. Jeden rdzeń (botlab.core: geometria SL/TP, wypełnienia, faza, ExitConfig) importowany identycznie przez live i replay, więc egzamin ocenia dokładnie to, co gra flota.
  3. Dane append-only z proweniencją, stan zapisywany atomowo, ledger i rejestr z łańcuchem sha256.
  4. Zmiany tylko przez rejestr → egzamin → admission, nigdy przez edycję innej warstwy.
  5. Role sesji: SCALPOWANIE = generator/obserwator, flota = egzekucja, lab (Architektura) = warstwy 0/1a/1c/4/5/6 w scalp-lab, PRZEGLĄDY = bramka przeglądu, PĘTLE = badania, DASHBOARD = widok (tylko odczyt).

Księgi: scalp (1m/5m, AAVE + XLM, dziś poligon egzekucji i wyjść), intraday (15m–4h, retest + SL strukturalny, ciężar hipotez), swing (4h/1d). Każda ma własny budżet ryzyka i progi egzaminu; wspólne: karta, koszt, ledger, rdzeń.

3. Kto za co odpowiada

WarstwaProcesWejście → wyjścieWłaściciel koduStatus
0 PomiarP7 ledgerFill/Trade → LedgerEvent (USD, R)lab / Architektura (scalp-lab)istnieje (G1)
1a SytuacjaP1, P2świece, przepływ → Situationlab / Architekturaistnieje (G2)
1a' SygnałP3Situation → FastSignal + ThesisSCALPOWANIE (generator, obserwator)istnieje
1b/1c Wyjścia i prowadzenieP6Trade → ExitEventlab / Architekturaplan
3 EgzekucjaP4, P5Admission → Fill, Tradeflota (discord_mt5)istnieje
4 EgzaminP9, P10LedgerEvent → werdykt hipotezylab / Architektura; PRZEGLĄDY = bramka przegląduw budowie (G3)
5 UczenieP11wyniki → Hypothesislab; PĘTLE = badaniaplan
6 KapitałP4 alokatorsygnały → sloty, limitylab / Architekturaplan
Widok—wszystko → strony dashboardu (tylko odczyt)DASHBOARDistnieje

4. Bramki budowy

G0 szkielet · PASS (tag lab-G0) G1 pomiar · PASS (tag lab-G1) G2 sytuacja · PASS (tag lab-G2) G3 egzamin, replay, PLAYBOOK · w budowie G4 rekorder, bramki jako shadow decider, dashboard rozwoju G5 promocja warunkowa

Status statyczny do czasu, aż lab zacznie publikować scalp-lab/reports/lab/status.json (od G3) — wtedy strona będzie go czytać.

5. Zasady, których system nie łamie