← Powrót na blog

Czym jest vibe trading

Termin, który rozchodzi się po społeczności AI. Co za nim stoi, jak wygląda w realnym systemie i gdzie są jego granice — bez marketingu.

„Vibe trading" nie jest terminem akademickim. Powstał organicznie w społeczności AI — to skrót myślowy: model czyta wiadomości, rozumie nastrój rynku i na tej podstawie generuje sygnały transakcyjne. Podobnie jak „vibe coding" (pozwalasz AI pisać kod, ty korygujesz kierunek) — tylko że z pieniędzmi, nie z kodem.

Piszę o tym, bo projektuję system, w którym robimy to naprawdę. Chcę wyjaśnić, co to oznacza w praktyce, co działa, co jeszcze nie, i dlaczego różnica między projektem demo a systemem produkcyjnym jest większa, niż się wydaje.

Co vibe trading oznacza w praktyce

Tradycyjny handel algorytmiczny opiera się na wskaźnikach technicznych — średnich, zmienności, wolumenie. Są deterministyczne. Widzisz dokładnie, dlaczego system kupił.

Vibe trading dokłada warstwę: model językowy czyta wiadomości i wyciąga z tekstu sygnał. Nie tylko „co się stało", ale „jak reaguje na to rynek". Bank centralny wspomni o wyższej inflacji → model to przeczyta → wytworzy ocenę nastroju → ta trafi do silnika sygnałów razem z danymi makro i wskaźnikami technicznymi.

Wynikiem nie jest „kup za X, sprzedaj za Y". Wynikiem jest ustrukturyzowany sygnał: aktywo, kierunek, siła przekonania, uzasadnienie. Decyzję transakcyjną podejmuje potem albo trader na podstawie sygnału, albo — w trybie w pełni autonomicznym — system sam.

Tryb autonomiczny to część, która jeszcze dojrzewa. Do tego jeszcze wrócę.

Jak to budujemy

System, nad którym pracuję, ma trzy strumienie wejściowe:

  1. AI news-sentiment — model czyta wiadomości, wynikiem jest ustrukturyzowany JSON z oceną i uzasadnieniem
  2. Dane makro — stopy procentowe, inflacja, rynek pracy i podobne agregaty
  3. Wskaźniki techniczne — standardowe sygnały z historii cen

Z tych trzech wejść generujemy sygnały transakcyjne. Backend jest w .NET 10, frontend w Next.js, orkiestracja LLM działa przez własną abstrakcję nad wieloma dostawcami — dzięki czemu możemy przełączyć model bez przepisywania logiki.

Inferencja lokalna

Analiza nastroju wiadomości nie musi koniecznie przechodzić przez komercyjne API. Do części przetwarzania używamy inferencji lokalnej — model działa u nas. Daje to dwie rzeczy: niższy koszt za token i niższą latencję. Tradeoffem są wyższe wymagania infrastrukturalne oraz to, że modele lokalne są na razie mniejsze niż komercyjna czołówka.

Silnik sygnałów bez stanu

Silnik sygnałów jest bezstanowy. Ma ~20 wymiennych ewaluatorów w strategy patternie — każdy ewaluator implementuje ten sam interfejs i wnosi swoją partial score. Dodanie nowej strategii (nowego ewaluatora) nie psuje istniejących. To celowa decyzja, nie odruch — w systemie, w którym eksperymentujemy z różnymi podejściami, potrzebuję pewności, że nowy ewaluator nie nadpisze zachowania starego.

Cost gate

Przed każdym wywołaniem LLM przechodzi cost gate. System ma dzienny budżet. Gdyby wywołanie przekroczyło limit, gate rzuca wyjątek przed żądaniem — nie po. Pętla runaway, która zżera cały miesięczny budżet w jedną noc, to klasyczny błąd przy integracji LLM. Prewencja jest tańsza niż postmortem.

Obserwowalność

Każde wywołanie LLM jest audytowane: tokeny (input/output), latencja, koszt, wynik. Bez tego nie widzę, co system robi, dlaczego sygnał jest taki, jaki jest, ani gdzie realnie idą pieniądze za inferencję.

Dlaczego jest to trudniejsze, niż wygląda

Pieniądze to środowisko adwersaryjne. Rynek się adaptuje. Co działało w zeszłym roku, nie musi działać teraz — nie dlatego, że model się pogorszył, ale dlatego, że inni gracze widzą te same wiadomości i reagują wcześniej lub inaczej.

Trzy konkretne problemy:

Stan. System transakcyjny nie jest bezstanowy. Ma pozycje, cash balance, limity ryzyka, historię. Sygnał LLM jest bezstanowy — model nie wie, co masz w portfelu. Integracja tych dwóch światów jest nietrywialna. Zły stan = zła decyzja → strata.

Latencja. Wiadomości mają efekt w pierwszych minutach. Jeśli analiza nastroju trwa 8 sekund, jesteś za rynkiem. Inferencja lokalna lub wstępne przeliczenie części pomagają, ale nie są za darmo.

Halucynacje. Model językowy może „przeczytać" wiadomość i wygenerować przekonujący sygnał, który nie ma sensu ekonomicznego. Ustrukturyzowany wynik JSON i walidacja parsera tego nie usuną całkowicie — tylko ograniczą najbardziej rażące błędy.

Gdzie jesteśmy teraz

PoC działa na żywo. Generujemy sygnały, śledzimy ich jakość, walidujemy wyniki ręcznie.

Tryb autonomiczny — gdy system składa zlecenia bez ludzkiego potwierdzenia — jest w fazie rozwoju. Celowo nie wdrażamy go, zanim nie będziemy mieli stabilnego feedbacku z większej liczby warunków rynkowych i solidnego zarządzania ryzykiem po stronie egzekucji.

Kilka rzeczy, których nie robię i nie udaję, że robię: nie jestem ML researcherem, fine-tuningiem modeli się nie zajmuję. Pracuję z istniejącymi modelami i buduję wokół nich ramę systemową — orkiestrację, guardraile, obserwowalność, state management. To inna dyscyplina niż trenowanie.

Co odróżnia zabawkę od systemu produkcyjnego

Niemal każdy projekt demo vibe tradingu wygląda tak samo: wywołaj GPT-4, dostaniesz tekst, wyświetl go. W warunkach demo to działa.

System produkcyjny potrzebuje innych rzeczy:

  • Cost gate — kontrolę, ile wydajesz na inferencję, przed każdym wywołaniem
  • Ustrukturyzowany wynik z solidnym parserem — model zwraca JSON, ale parsowanie musi przetrwać błędy formatu
  • Obserwowalność — każdy token, każde wywołanie, każdy koszt zalogowany i audytowalny
  • Bezstanowy silnik sygnałów — izolacja ewaluatorów tak, by dodanie nowego nic nie zepsuło
  • Stan poza LLM — stan portfela, cash balance, limity egzekucji żyją w bazie danych, nie w kontekście modelu
  • Abstrakcję multi-provider — jeśli jeden dostawca podniesie cenę lub pogorszy jakość, przełączam bez przepisywania logiki

System demo nie ma nic z tego. Działa w idealnym scenariuszu. Produkcja idealna nie jest.


FAQ

Czy to rekomendacja inwestycyjna?

Nie. Opis systemu jest techniczny. Co kupować lub sprzedawać nie doradzam — to poza moją rolą i poza zakresem tego artykułu. Backtesting i wyniki na żywo system zbiera, ale nie są publiczne.

Czy to działa? Czy zarabia pieniądze?

Uczciwa odpowiedź: nie wiem. PoC generuje sygnały, które mają wstecznie weryfikowalną logikę. Czy są długoterminowo zyskowne w różnych warunkach rynkowych — to udowodni czas i dane, nie prezentacja. Każdy, kto powie ci „tak, to działa" bez konkretnych liczb za dostatecznie długi okres, coś przemilcza.

Po co dzielić się szczegółami architektonicznymi?

Przewaga konkurencyjna nie leży w wiedzy, że cost gate istnieje. Leży w tym, jak dokładnie go implementujesz, jak kalibrujesz ewaluatory i jak zarządzasz ryzykiem. Tych rzeczy nie ujawniam. Architektura bez tych szczegółów nikomu nie zarobi pieniędzy — ale pokazuje, co oddziela przemyślany system od projektu demo.

Masz podobny problem? Napisz do nas.

Umów konsultację