aramej

ReadMe exscapper_python_analyzer

Mar 31st, 2025
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.17 KB | None | 0 0
  1. # exscapper_python_analyzer
  2.  
  3. ## Úvod a Účel Nástroja
  4.  
  5. **exscapper_python_analyzer** je pokročilý analytický nástroj napísaný v Pythone, navrhnutý na automatizovanú analýzu stávkových dát exportovaných zo služby Excapper. Excapper monitoruje pohyby kurzov a objemy stávok na burze Betfair Exchange v reálnom čase.
  6.  
  7. Tento skript implementuje sofistikovaný algoritmus, ktorý vychádza z metodológie a konceptov podrobne popísaných v dokumentácii služby Excapper (vrátane dodatkov pre profesionálov). Jeho hlavným cieľom je:
  8.  
  9. 1. **Spracovať** chronologické stávkové dáta z poskytnutého Markdown súboru (`data.md`).
  10. 2. **Aplikovať** vylepšený algoritmus na identifikáciu potenciálnych **value betting príležitostí** (situácií, kde kurz nemusí presne odrážať reálnu pravdepodobnosť) a ďalších trhových signálov.
  11. 3. **Detegovať** anomálie ako **Sharp Bets** (prudké nárasty objemu) a analyzovať **Money Way** (distribúciu peňazí).
  12. 4. **Vygenerovať** prehľadný **Markdown report**, ktorý sumarizuje kľúčové zistenia, identifikované value príležitosti a významné signály.
  13.  
  14. Nástroj je určený pre stávkarov a traderov, ktorí chcú získať hlbší, dátovo podložený pohľad na dynamiku stávkových trhov a automatizovať časť svojho analytického procesu.
  15.  
  16. ## Kľúčové Funkcie
  17.  
  18. * **Automatické Parsovanie:** Načíta a spracuje štruktúrované dáta z Excapper Markdown exportu.
  19. * **Vylepšený Algoritmus:** Implementuje pokročilý algoritmus na detekciu value príležitostí, ktorý zahŕňa:
  20. * Analýzu **Mismatch** (nesúladu) medzi Money Way a implikovanou pravdepodobnosťou.
  21. * Detekciu **Sharp Bet** signálov (objem aj percentuálna zmena).
  22. * Analýzu **trendov**, **perzistencie** a **akcelerácie** objemov a kurzov.
  23. * **Dynamické prahové hodnoty** prispôsobené fáze zápasu a skóre.
  24. * **Vážený skórovací systém** pre komplexné hodnotenie sily signálu.
  25. * **Validáciu signálov** na zníženie falošných pozitív.
  26. * **Konfigurovateľnosť:** Umožňuje jednoduchú úpravu všetkých kľúčových parametrov a prahových hodnôt algoritmu. Ponúka prednastavené profily pre rôzne typy zápasov.
  27. * **Prehľadné Reportovanie:** Generuje detailný Markdown report s kľúčovými zisteniami, tabuľkami value príležitostí a Sharp Bet signálov.
  28. * **Flexibilita:** Možnosť spúšťania cez príkazový riadok s argumentmi pre vstupný súbor a profil nastavení.
  29.  
  30. ## Požiadavky a Inštalácia
  31.  
  32. * **Python:** Verzia 3.6 alebo vyššia.
  33. * **Knižnice:** `pandas`, `numpy`.
  34. * Inštalácia potrebných knižníc (ak ich ešte nemáte):
  35. ```bash
  36. pip install pandas numpy
  37. ```
  38.  
  39. ## Použitie Skriptu
  40.  
  41. Skript sa spúšťa z príkazového riadku (terminálu).
  42.  
  43. ### Základné Spustenie
  44.  
  45. 1. Uistite sa, že máte súbor so stávkovými dátami z Excapperu uložený ako `data.md` v **rovnakej zložke** ako skript `exscapper_python_analyzer.py`.
  46. 2. Otvorte terminál alebo príkazový riadok v tejto zložke.
  47. 3. Spustite skript príkazom:
  48. ```bash
  49. python exscapper_python_analyzer.py
  50. ```
  51. 4. Skript automaticky spracuje `data.md`, použije predvolený profil nastavení (`default`) a vygeneruje Markdown report v tej istej zložke (napr. `Nazov_Zapasu_analyza_YYYYMMDD_HHMMSS.md`).
  52.  
  53. ### Pokročilé Spustenie (Argumenty)
  54.  
  55. Môžete špecifikovať vstupný súbor a profil nastavení pomocou argumentov:
  56.  
  57. * `--input <cesta_k_suboru.md>`: Určuje cestu k vstupnému Markdown súboru s dátami.
  58. * `--settings <profil>`: Určuje, ktorý profil nastavení sa má použiť. Dostupné profily:
  59. * `default`: Optimalizované pre zápasy s jasným favoritom (predvolené).
  60. * `low_liquidity`: Upravené pre zápasy s nižšou likviditou.
  61. * `balanced`: Upravené pre vyrovnanejšie zápasy.
  62.  
  63. **Príklady:**
  64.  
  65. * Spracovanie iného súboru s predvolenými nastaveniami:
  66. ```bash
  67. python exscapper_python_analyzer.py --input "Iny_Zapas_Data.md"
  68. ```
  69. * Spracovanie `data.md` s nastaveniami pre nízku likviditu:
  70. ```bash
  71. python exscapper_python_analyzer.py --settings low_liquidity
  72. ```
  73. * Kombinácia oboch argumentov:
  74. ```bash
  75. python exscapper_python_analyzer.py --input "Cesta/K/Mojim/Datam.md" --settings balanced
  76. ```
  77.  
  78. ## Popis Vstupných Dát (`data.md`)
  79.  
  80. Skript očakáva vstupný súbor v Markdown formáte, ktorý obsahuje tabuľku s chronologickými dátami exportovanými zo služby Excapper. Kľúčové stĺpce, ktoré skript spracováva, sú:
  81.  
  82. * `Type`: `live` alebo `prematch`.
  83. * `Date`: Časový údaj záznamu (napr. `23:42 26.03`).
  84. * `Market`: Identifikátor trhu (napr. `1`, `X`, `2`).
  85. * `Summ`: Celkový spárovaný objem na danom trhu (€).
  86. * `Change`: Zmena objemu od predchádzajúceho záznamu (napr. `2€ / 0%`). Skript extrahuje objemovú aj percentuálnu zmenu.
  87. * `Time`: Minúta zápasu (pre `live` dáta).
  88. * `Score`: Aktuálne skóre (pre `live` dáta).
  89. * `Odds`: Aktuálny kurz na danom trhu.
  90. * `Change %`: Percentuálna zmena kurzu (ak je dostupná).
  91. * `All`: Celkový spárovaný objem na všetkých relevantných trhoch zápasu (€).
  92. * `Percent money on market`: Percentuálny podiel objemu daného trhu na celkovom objeme (%).
  93.  
  94. Skript sa snaží byť robustný voči drobným odchýlkam vo formátovaní tabuľky.
  95.  
  96. ## Interpretácia Výstupného Reportu (`*_analyza_*.md`)
  97.  
  98. Vygenerovaný Markdown report poskytuje komplexný prehľad analýzy:
  99.  
  100. 1. **Analysis Summary (Súhrn Analýzy):**
  101. * Základné informácie o analyzovanom zápase a celkovom objeme.
  102. * **Key Findings (Kľúčové Zistenia):**
  103. * *Market Distribution (Final):* Finálne rozdelenie peňazí medzi trhy 1, X, 2.
  104. * *Value Betting Opportunities:* Celkový počet nájdených príležitostí a ich rozdelenie podľa trhu a smeru (BACK/LAY).
  105. * *Maximum Mismatch Observed:* Najväčší zistený rozdiel medzi Money Way (%) a implikovanou pravdepodobnosťou (1/kurz), vrátane času a trhu, kde nastal.
  106. * *Maximum Sharp Bet Signal:* Najväčší zaznamenaný nárast objemu v jednom intervale (Sharp Bet).
  107.  
  108. 2. **Detailed Value Opportunities Detected (Detailné Value Príležitosti):**
  109. * Tabuľka so všetkými momentmi, kde algoritmus identifikoval value príležitosť.
  110. * *Timestamp:* Časový údaj signálu.
  111. * *Mkt:* Trh (1, X, 2).
  112. * *Dir:* Odporúčaný smer stávky (BACK - stávka na výsledok, LAY - stávka proti výsledku).
  113. * *Odds:* Kurz v momente signálu.
  114. * *Weight:* Celkové vážené skóre signálu vypočítané algoritmom.
  115. * *Thresh:* Dynamická prahová hodnota použitá pre rozhodnutie v danom momente.
  116. * *Conf:* Úroveň dôvery (Confidence Level) od 0.0 do 1.0, vypočítaná ako `Weight / Thresh`. Vyššia hodnota znamená silnejší signál nad prahom.
  117. * *Key Factors:* Hlavné komponenty algoritmu, ktoré najviac prispeli k identifikácii signálu (napr. Mismatch, Sharp Bet, Persistent Volume).
  118.  
  119. 3. **Top 10 Significant Sharp Bet Signals (Top 10 Významných Sharp Bet Signálov):**
  120. * Tabuľka zobrazujúca 10 najväčších nárastov objemu (podľa €) zaznamenaných počas analýzy.
  121. * Užitočné pre sledovanie momentov najväčšej trhovej aktivity, aj keď neviedli priamo k value signálu.
  122.  
  123. ## Konfigurácia a Ladenie Parametrov
  124.  
  125. Skript umožňuje detailné nastavenie parametrov algoritmu v sekcii `# Configuration section` na začiatku kódu.
  126.  
  127. ### Prehľad Konfiguračných Profilov
  128.  
  129. Skript ponúka tri prednastavené profily (slovníky `DEFAULT_SETTINGS`, `LOW_LIQUIDITY_SETTINGS`, `BALANCED_MATCH_SETTINGS`), ktoré môžete aktivovať pomocou argumentu `--settings` pri spustení. Predvolený je `DEFAULT_SETTINGS`, optimalizovaný pre zápasy s jasným favoritom.
  130.  
  131. ### Detailný Popis Parametrov (v rámci `ACTIVE_SETTINGS`)
  132.  
  133. * **`VALUE_THRESHOLD` (float):** Základná prahová hodnota pre celkové vážené skóre signálu. Ak je skóre signálu (po všetkých úpravách a penalizáciách) vyššie alebo rovné tejto hodnote (upravenej dynamicky), je identifikovaná value príležitosť. *Nižšia hodnota = viac signálov (vyššia citlivosť), ale potenciálne menej spoľahlivých.*
  134. * **`MIN_VOLUME_CHANGE` (int):** Minimálny absolútny nárast objemu v EUR v jednom časovom kroku (zvyčajne 1 minúta), aby bol braný do úvahy ako súčasť Sharp Bet signálu. *Nižšia hodnota = citlivejšie na menšie objemové špičky.*
  135. * **`MIN_PERCENT_CHANGE` (float):** Minimálny percentuálny nárast objemu v jednom časovom kroku (vzťahujúci sa k predchádzajúcemu celkovému objemu na trhu), aby bol braný do úvahy ako súčasť Sharp Bet signálu. *Nižšia hodnota = citlivejšie na relatívne malé zmeny pri nízkych objemoch.*
  136. * **`THRESHOLD_HIGH_MISMATCH` (float):** Prahová hodnota pre *vysoký* rozdiel (mismatch) medzi Money Way (%) a implikovanou pravdepodobnosťou (1/kurz). Napr. 0.15 znamená 15 percentuálnych bodov rozdielu. Prispieva najviac k váženému skóre.
  137. * **`THRESHOLD_MEDIUM_MISMATCH` (float):** Prahová hodnota pre *stredný* mismatch. Prispieva menej k skóre ako vysoký mismatch.
  138. * **`THRESHOLD_LOW_MISMATCH` (float):** Prahová hodnota pre *nízky* mismatch. Prispieva najmenej k skóre.
  139. * **`MIN_MARKET_VOLUME` (int):** Minimálny celkový spárovaný objem na *konkrétnom trhu* (1, X alebo 2), aby bol signál z tohto trhu považovaný za spoľahlivý. Signály z trhov pod týmto objemom sú penalizované. *Vyššia hodnota = ignoruje signály na menej likvidných trhoch.*
  140. * **`CRITICAL_LOW_VOLUME` (int):** Absolútne minimálny objem na trhu. Ak je objem nižší, signál je automaticky invalidovaný, bez ohľadu na skóre. Slúži ako bezpečnostná poistka proti signálom z extrémne nelikvidných trhov.
  141. * **`CRITICAL_MINUTES` (List[int]):** Zoznam minút zápasu (zvyčajne okolo polčasu a konca zápasu), kedy môžu byť signály menej spoľahlivé kvôli zvýšenej volatilite alebo špecifickému správaniu trhu. Signály v týchto minútach sú mierne penalizované.
  142.  
  143. ### Tipy na Ladenie (Čo robiť, ak...)
  144.  
  145. * **Príliš veľa signálov / Nízka kvalita:**
  146. * **Zvýšte `VALUE_THRESHOLD`:** Najefektívnejší spôsob, ako sprísniť kritériá. Skúste zvyšovať po krokoch (napr. z 3.2 na 3.5, potom na 4.0).
  147. * **Zvýšte prahy pre mismatch:** Mierne zvýšte `THRESHOLD_HIGH/MEDIUM/LOW_MISMATCH` (napr. o 0.01 - 0.03).
  148. * **Sprísnite Sharp Bet kritériá:** Zvýšte `MIN_VOLUME_CHANGE` a/alebo `MIN_PERCENT_CHANGE`.
  149. * **Zvýšte `MIN_MARKET_VOLUME`:** Ignorujte signály z menej likvidných trhov.
  150. * **Rozšírte `CRITICAL_MINUTES`:** Pridajte viac minút, kde očakávate šum.
  151.  
  152. * **Príliš málo signálov / Chýbajúce príležitosti:**
  153. * **Znížte `VALUE_THRESHOLD`:** Opatrne znižujte prahovú hodnotu (napr. z 4.0 na 3.5, potom na 3.2). Pozor na zvýšenie počtu falošných signálov.
  154. * **Znížte prahy pre mismatch:** Mierne znížte `THRESHOLD_HIGH/MEDIUM/LOW_MISMATCH`.
  155. * **Znížte `MIN_MARKET_VOLUME`:** Zahrňte do analýzy aj menej likvidné trhy (zvýšené riziko!).
  156. * **Analyzujte váhy:** Skontrolujte logiku váh vo funkcii `identify_value_opportunity` – možno niektorý dôležitý faktor nedostáva dostatočnú váhu vo vašom type zápasov.
  157.  
  158. * **Signály nie sú spoľahlivé (vedú k stratám):**
  159. * **Zamerajte sa na kvalitu, nie kvantitu:** Použite prísnejšie nastavenia (vyššie prahy).
  160. * **Analyzujte `Key Factors`:** V reporte sledujte, ktoré faktory najčastejšie vedú k ziskovým/stratovým signálom a upravte ich váhy v kóde (vyžaduje úpravu logiky váženia).
  161. * **Pridajte ďalšie filtre:** Zvážte pridanie ďalších validačných krokov do funkcie `identify_value_opportunity` (napr. vyžadovať potvrdenie signálu na viacerých trhoch, alebo zohľadniť live štatistiky, ak sú dostupné).
  162. * **Backtestujte:** Najlepší spôsob optimalizácie je systematický backtesting rôznych nastavení na historických dátach.
  163.  
  164. ## Tipy pre Profesionálnych Traderov
  165.  
  166. * **Integrácia do Workflow:** Výstupný report používajte ako **skener** potenciálnych príležitostí alebo ako **potvrdenie** vašej vlastnej analýzy, nie ako automatický pokyn na stávku.
  167. * **Kombinovanie Dát:** Spojte signály z tohto skriptu s ďalšími zdrojmi:
  168. * *Live Štatistiky Zápasu:* Poskytujú kontext k pohybom kurzov a objemov. Dominancia tímu v štatistikách môže potvrdiť value signál.
  169. * *Hĺbka Trhu (Order Book):* Analýza dostupných objemov na rôznych kurzoch na Betfair je kľúčová pre posúdenie realizovateľnosti vstupu/výstupu.
  170. * *Porovnanie Bookmakerov:* Hľadajte arbitrážne alebo výrazné value príležitosti porovnaním kurzov z reportu s kurzami tradičných stávkových kancelárií.
  171. * *Správy a Externé Faktory:* Zohľadnite novinky, zranenia, počasie atď.
  172. * **Optimalizácia Parametrov:** Neberte prednastavené profily ako dogmu. Experimentujte s parametrami a **backtestujte** rôzne konfigurácie na historických dátach z líg a zápasov, na ktoré sa špecializujete.
  173. * **Analýza Váh a Faktorov:** Skúmajte, ktoré `Key Factors` v reporte najčastejšie korelujú s úspešnými obchodmi a zvážte úpravu váhového systému v kóde skriptu.
  174. * **Vývoj Vlastných Signálov:** Použite tento skript ako základ a rozšírte ho o vlastné signály alebo komplexnejšie modely (napr. strojové učenie na predikciu krátkodobých pohybov kurzov).
  175. * **Manažment Rizika:** Aj najlepší signál môže zlyhať. Vždy používajte adekvátny bankroll management a stratégie riadenia rizika (stop-loss, hedging, veľkosť pozície podľa dôvery).
  176.  
  177. ## Limity Nástroja a Dôležité Upozornenia
  178.  
  179. * **Kvalita Vstupných Dát:** Analýza je priamo závislá od presnosti, úplnosti a časového rozlíšenia dát v vstupnom `data.md` súbore.
  180. * **Historická Analýza:** Skript analyzuje dáta *po* udalosti. Neposkytuje predikcie v reálnom čase.
  181. * **Absencia Herného Kontextu:** Skript nemá prístup k live štatistikám alebo vizuálnemu priebehu hry. Interpretácia signálov musí byť doplnená o tento kontext.
  182. * **Zjednodušené Modely:** Použité modely (napr. pre trendy, EV) sú zjednodušeniami komplexnej reality trhu.
  183. * **Žiadna Garancia Zisku:** Tento nástroj je analytická pomôcka. Identifikované "value" príležitosti nezaručujú zisk. Stávkovanie a trading sú spojené s rizikom. Rozhodnutia sú na zodpovednosti používateľa.
  184. * **Potreba Interpretácie:** Výstupy skriptu vyžadujú kritické zhodnotenie a interpretáciu skúseným používateľom.
  185.  
  186. ## Poďakovanie (Credits)
  187.  
  188. Tento nástroj bol vyvinutý v rámci interaktívnej spolupráce. Osobitné poďakovanie patrí modelu **Claude 3.7 Sonnet** od Anthropic za jeho významný prínos pri návrhu vylepšeného algoritmu a generovaní podstatných častí kódu a analytických textov. Poďakovanie patrí aj používateľovi za cielené otázky a vedenie celého procesu.
  189.  
  190. ## Licencia
  191.  
  192. (Tu môžete doplniť informácie o licencii, napr. MIT License, alebo uviesť, že kód je pre osobné použitie.)
Add Comment
Please, Sign In to add comment