# Kraken Paper Trader

Autonomní, ale bezpečně omezený paper trader pro BTC/EUR. Načítá veřejná data z Kraken API, rozhoduje pouze nad uzavřenými denními svíčkami a simuluje spotové nákupy/prodeje v SQLite. Live exekuce není součástí běžícího cyklu a zůstává zamčená.

## Strategie `trend_volatility_v1`

- pouze long/cash, bez shortu a bez páky,
- potvrzení trendu EMA 10/50 a 60denním momentem,
- 30denní realizovaná volatilita řídí velikost pozice,
- cílová roční volatilita 18 %, maximální expozice 35 %,
- ATR trailing stop 3,5×,
- rebalance až při odchylce alespoň 5 procentních bodů,
- konzervativní model nákladů: 0,40 % fee + spread + 8 bps skluz,
- rozhodnutí z uzavřené svíčky se v backtestu plní až na následujícím open,
- každou svíčku lze v paper brokeru zpracovat nejvýše jednou.

Strategie negarantuje zisk. Backtest je pouze historická simulace; paper režim musí běžet dostatečně dlouho před jakoukoli samostatně auditovanou úvahou o live provozu.

## Příkazy

```bash
# Kontrola syntaxe a účetnictví
php tests/run.php

# Jeden živý paper cyklus
php bin/paper_cycle.php

# Backtest nad uloženými svíčkami
php bin/backtest.php

# Volitelný dlouho běžící proces (cron je preferovaný)
php bin/paper_daemon.php
```

Kraken REST poskytuje maximálně 720 OHLC záznamů. Výchozí interval je proto 1440 minut (den), což poskytne téměř dva roky dat. Poslední, rozpracovaná svíčka z API se vždy zahazuje.

## Cron

Produkční paper cyklus běží každou hodinu v 7. minutě. Strategie rozhodne pouze jednou za uzavřenou denní svíčku; častější běh slouží pro retry a průběžný mark-to-market.

```cron
7 * * * * cd /var/www/krypto.tomaris.cz/web && /usr/bin/php bin/paper_cycle.php >> logs/paper.log 2>&1
```

## Konfigurace

Bezpečné výchozí hodnoty jsou v `config/config.php`; přehled proměnných je v `config/env.example`. Pro paper cron nejsou potřeba API klíče. Pokud se nastaví jiný režim než `paper`, `bin/paper_cycle.php` se odmítne spustit.

Soukromé Kraken endpointy mají další dvojitý zámek (`TRADING_MODE=live` a `LIVE_TRADING_ARMED=true`), ale nejsou napojené na tento automatický paper cyklus. API klíč nikdy nesmí mít oprávnění k výběrům.

Databáze ukládá svíčky, stav portfolia, jednotlivá rozhodnutí, paper obchody, equity snapshoty a auditní události. `data/` a `logs/` jsou z webu blokované pomocí `.htaccess` a runtime soubory nejsou v Gitu.

Výzkumné podklady, metodika a omezení jsou v [RESEARCH.md](RESEARCH.md).
