Oracle3
Open-source trading engine and MCP server for prediction markets. Fee-aware no-arbitrage trading across related contracts, live on Kalshi, Polymarket and Solana or on paper.
Mapa przepływu kapitału na żywo: rynki akcji świata, obligacje, waluty i krypto — zmierzone przepływy z oficjalnych źródeł, każda liczba z datą i wiekiem.
Translation pending
FinancePython · JavaScriptGitHub @capitalflowai-appOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Jeden plik index.html (strona) + zbieraj_dane.py (zbieranie danych wymagających klucza).
GitHub Actions co 20 minut uruchamia skrypt, składa stronę z katalogiem data/ i publikuje ją na GitHub Pages.
Widz nie wpisuje żadnych kluczy — dane z SoSoValue (napływy ETF) i Finnhub (okres DZIŚ) leżą w data/*.json.
Pozostałe źródła (OECD, BIS, US Treasury, Bundesbank, EBC/Frankfurter, Bank Światowy, CoinGecko, DefiLlama, CoinPaprika)
strona pobiera sama, w przeglądarce widza — bez klucza.
Klucze: Settings → Secrets and variables → Actions: SOSOVALUE_KEY, COINGECKO_KEY, FINNHUB_KEY, TWELVEDATA_KEY, COINMARKETCAP_KEY, FRED_KEY (wartości nigdy w repozytorium; zbieracz maskuje je w komunikatach).
Uwaga: GitHub wyłącza harmonogram po 60 dniach bez żadnego commitu w repozytorium — wystarczy wtedy dowolna zmiana (np. nowa wersja strony).
Nowa wersja strony: uruchom opublikuj-strone.command w katalogu CapitalFlowAI (kopiuje strona/index.html, robi commit i push).
Adres strony od 24.09.2026: https://capitalflowai-app.github.io/ (repozytorium przeniesione na konto capitalflowai-app
i nazwane capitalflowai-app.github.io, więc jest to strona użytkownika bez ścieżki w adresie). Stary adres
cryptoportalpwpw.github.io/capitalflowai już nie działa.
srvJSON.t0 w index.html). Na starcie każdy inny plik data/*.json i archiwum/seria.json idzie z priority:'low'; faza kończy się po pobraniu T0 (najpóźniej po 8 s), przy otwarciu CRYPTO/TRENDÓW i od razu przy ?pelna=1. Kafelki Złoto i Ropa Brent (od v321) rysują się dopiero po surowce.json, dlatego jest w T0.narzedzia/bez_komentarzy.py, krok „Złóż stronę” w strona.yml): tokenizator JavaScriptu, ten sam ciąg tokenów, składnia sprawdzona w silniku JS; błąd = zostaje wersja z komentarzami i ostrzeżenie. Źródło w repozytorium zostaje z komentarzami. W opublikowanej stronie <meta name="cf-wydanie"> podaje skrót commitu, który jest na żywo (numery wersji z komentarzy nie są już w opublikowanym kodzie).Przy publikacji krok „Złóż stronę” zapisuje data/manifest.json (narzedzia/manifest.py): skrót SHA-256 (12 znaków) i rozmiar każdego pliku wydania; kolejny krok po straży kluczy sprawdza zgodność i przy niezgodności usuwa spis. Strona odpytuje go co minutę (tylko widoczna karta): niezmienionych plików nie pobiera ponownie, zmienione pobiera od razu (&h=<skrót> w adresie), a moduły zmienionych plików odświeżają się od razu zamiast na własnym zegarze (10–60 min). Zegary modułów zostają i działają, gdy spisu brak. Service Worker spisu nie przechwytuje, kontrola dzienna ostrzega, gdy spisu brak albo nie zgadza się z plikiem.
Plik sw.js (kopiowany do _site/ w kroku „Złóż stronę”, rejestrowany w index.html) przyspiesza powroty na stronę:
czcionki, obrazki i skrypt licznika wchodzą z pamięci przeglądarki (w tle odświeżane po godzinie).
Strona (HTML) i pliki data/*.json są zawsze pobierane najpierw z sieci — świeżość danych jest taka sama jak bez Service Workera;
kopia z pamięci pojawia się tylko wtedy, gdy sieć w ogóle nie odpowiada, a strona pokazuje wtedy pasek z datą i wiekiem kopii.
Service Worker nie dotyka obcych domen (źródeł danych ani licznika odwiedzin) i niczego nie wysyła.
Wydanie: publikacja podstawia pod __WYDANIE__ skrót zawartości złożonej strony; pamięć nazywa się cf-<skrót>, stare pamięci cf-* są kasowane.
Wyłączniki awaryjne:
?sw=off (wyrejestrowuje Service Workera, kasuje pamięć cf-* i zapamiętuje wybór w kluczu cf-sw-off);
?sw=on przywraca;sw.js zmienić WYLACZONY na true i opublikować (przeglądarki sprawdzają ten plik przy każdym wejściu;
wyłączony Service Worker nie przechwytuje niczego, kasuje pamięci cf-* i sam się wyrejestrowuje).Kontrola dzienna sprawdza, że sw.js na żywej stronie odpowiada (HTTP 200).
Wynik kontroli dziennej (kontrola/ostatnia.md): czerwony przebieg GitHuba i ❌ tylko przy awarii strony albo publikacji (strona albo plik stanu nie odpowiada, dane główne starsze niż próg, błędy JavaScriptu na stronie, publikacja stoi lub zatrzymana przez straż kluczy). Awarie pojedynczych źródeł zewnętrznych to ⚠️ z listą i czasem trwania, bez e-maila: jeśli trwa dłużej niż 3 dni: uruchom naprawę (np. Claude) z plikiem kontrola/ostatnia.md albo poproś osobę techniczną.
Automat działa sam w chmurze GitHub; od v354 raz w tygodniu pilnuje go przepływ „Strażnik harmonogramów” (dba o aktywność repozytorium — commit po 30 dniach ciszy — i próbuje włączyć przepływy wyłączone przez GitHub). Opis, co robić gdy coś stanie, i jak odtworzyć dane: docs/ODTWORZENIE.md.