docs(strategy_pythagoras): spec + plan + summaries dei PDF
Base per l'esecuzione del sub-project strategy_pythagoras: - docs/superpowers/specs/2026-05-19-strategy-pythagoras-design.md (spec) - docs/superpowers/plans/2026-05-19-strategy-pythagoras.md (14 task, 72 step TDD) - src/strategy_pythagoras/Pythagoras/*.summary.md (riassunti numerici dei 2 PDF) - src/strategy_pythagoras/Pythagoras/_extracted/*.txt (estrazione testo grezzo via pypdf) I PDF stessi non vengono committati (vedi .gitignore).
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,343 @@
|
|||||||
|
# strategy_pythagoras — Design
|
||||||
|
|
||||||
|
**Data:** 2026-05-19
|
||||||
|
**Autore design:** Adriano Dal Pastro (con Claude/brainstorming)
|
||||||
|
**Stato:** Design approvato per parti 1-4, in attesa di review utente sulla spec consolidata
|
||||||
|
**Audience:** implementatori (Claude executor o umano)
|
||||||
|
|
||||||
|
## 0. Riassunto esecutivo
|
||||||
|
|
||||||
|
Nuovo workspace member `strategy_pythagoras` parallelo a `strategy_crypto`. Replica il pattern coevolutivo GA del monorepo applicato a un dominio diverso: la **scoperta di pattern frattali ricorrenti** sui mercati crypto secondo il framework Pythagoras-Malanga (Fourier + frattali + geometria Evideon), descritto nei due PDF in `src/strategy_pythagoras/Pythagoras/`.
|
||||||
|
|
||||||
|
**Non cambia il genoma del core:** gli agenti restano `HypothesisAgentGenome` e producono `Strategy JSON` nella stessa DSL S-expression. Cambiano:
|
||||||
|
- 7 stili cognitivi Pythagoras-themed (in `prompts.json`)
|
||||||
|
- 3 nuovi indicatori candle (`candle_pattern`, `pythagorean_ratio`, `fractal_mirror`)
|
||||||
|
- Fitness con bonus di asset-invariance BTC↔ETH
|
||||||
|
- Output: strategie JSON freezate + dashboard NiceGUI + report markdown di analisi cross-book
|
||||||
|
|
||||||
|
**Deliverable di chiusura task:** scaffolding completo + 1 GA run short (smoke test) + `docs/analysis_first_run.md` con sintesi numerica e top winners.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Architettura
|
||||||
|
|
||||||
|
### Layout package
|
||||||
|
|
||||||
|
```
|
||||||
|
src/strategy_pythagoras/
|
||||||
|
├── pyproject.toml # workspace member, dipende da multi-swarm-core
|
||||||
|
├── README.md
|
||||||
|
├── tests/
|
||||||
|
│ └── test_indicators.py # unit-test per i 3 nuovi indicatori
|
||||||
|
└── strategy_pythagoras/
|
||||||
|
├── __init__.py
|
||||||
|
├── prompts.json # 7 stili Pythagoras-aligned (schema v3.2 di strategy_crypto)
|
||||||
|
├── indicators.py # candle_pattern, pythagorean_ratio, fractal_mirror
|
||||||
|
├── backend/
|
||||||
|
│ ├── __init__.py
|
||||||
|
│ ├── schema.py # tabelle paper_trading_*
|
||||||
|
│ ├── executor.py # PaperExecutor (port da strategy_crypto)
|
||||||
|
│ ├── portfolio.py # Portfolio (port da strategy_crypto)
|
||||||
|
│ └── persistence.py # PaperRepository
|
||||||
|
├── frontend/
|
||||||
|
│ ├── __init__.py
|
||||||
|
│ ├── nicegui_app.py # /strategy_pythagoras_gui
|
||||||
|
│ └── data.py # dual-reader: GA db + paper db + invariance metrics
|
||||||
|
└── strategies/ # JSON winners shippati col package
|
||||||
|
└── (vuoto al t0)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Workspace registration
|
||||||
|
|
||||||
|
In `pyproject.toml` (root):
|
||||||
|
```toml
|
||||||
|
[tool.uv.workspace]
|
||||||
|
members = ["src/multi_swarm_core", "src/strategy_crypto", "src/strategy_pythagoras"]
|
||||||
|
|
||||||
|
[tool.uv.sources]
|
||||||
|
strategy-pythagoras = { workspace = true }
|
||||||
|
```
|
||||||
|
|
||||||
|
Aggiungere `strategy-pythagoras` a `[project].dependencies` per il deployable root.
|
||||||
|
|
||||||
|
### Riuso
|
||||||
|
|
||||||
|
| Componente | Source | Note |
|
||||||
|
|---|---|---|
|
||||||
|
| GA loop, mutation, crossover | `multi_swarm_core.ga` | invariato |
|
||||||
|
| Protocol parser/validator/compiler | `multi_swarm_core.protocol` | esteso con 3 indicatori (vedi §2) |
|
||||||
|
| Backtest engine | `multi_swarm_core.backtest` | invariato |
|
||||||
|
| LLM / OpenRouter / Anthropic clients | `multi_swarm_core.llm` | invariato |
|
||||||
|
| PaperExecutor + Portfolio | `strategy_crypto.backend` | **port** (non import), per isolamento DB |
|
||||||
|
| NiceGUI dashboard shell | `strategy_crypto.frontend` | **port** + adatta tabs |
|
||||||
|
|
||||||
|
### Persistence
|
||||||
|
|
||||||
|
```
|
||||||
|
state/strategy_pythagoras.db # GA: genomi, generazioni, fitness history
|
||||||
|
state/strategy_pythagoras_paper.db # paper-trading post-deploy
|
||||||
|
strategy_pythagoras/strategies/ # JSON winners shippati
|
||||||
|
docs/analysis_first_run.md # report cross-book
|
||||||
|
docs/analysis_runs/<run-id>/ # per-run dump
|
||||||
|
```
|
||||||
|
|
||||||
|
Env vars:
|
||||||
|
- `STRATEGY_PYTHAGORAS_DB_PATH` (default `state/strategy_pythagoras.db`)
|
||||||
|
- `STRATEGY_PYTHAGORAS_PAPER_DB_PATH` (default `state/strategy_pythagoras_paper.db`)
|
||||||
|
- `GA_INVARIANCE_ALPHA` (default 0.3)
|
||||||
|
- `GA_INVARIANCE_TOLERANCE_BARS` (default 36 = ±3h su 5m TF)
|
||||||
|
|
||||||
|
### Routing GUI
|
||||||
|
|
||||||
|
`/strategy_pythagoras_gui` (allinea a [[gui_subpath_routing]] in memory: ogni asset GUI su subpath, root dominio libera).
|
||||||
|
|
||||||
|
### Docker (Phase 2, fuori scope di questa spec)
|
||||||
|
|
||||||
|
Servizi paralleli a quelli di strategy_crypto:
|
||||||
|
- `strategy-pythagoras-paper` (runner)
|
||||||
|
- `strategy-pythagoras-gui` (dashboard)
|
||||||
|
Rete Traefik external, bind mount uid 1000 (vedi [[production_deployment]]).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Genoma e DSL
|
||||||
|
|
||||||
|
### Il genoma non cambia
|
||||||
|
|
||||||
|
`HypothesisAgentGenome` di `multi_swarm_core.genome.hypothesis` resta identico:
|
||||||
|
- `system_prompt: str`
|
||||||
|
- `feature_access: list[str]`
|
||||||
|
- `temperature: float`
|
||||||
|
- `top_p: float`
|
||||||
|
- `model_tier: ModelTier`
|
||||||
|
- `lookback_window: int` — vincolo 12 ≤ lw ≤ 200
|
||||||
|
- `cognitive_style: str` — uno dei 7 nuovi stili
|
||||||
|
- `parent_ids, generation, id` — invariati
|
||||||
|
|
||||||
|
### 3 nuovi indicatori (`strategy_pythagoras/indicators.py`)
|
||||||
|
|
||||||
|
| Nome | Params (JSON) | Output | Semantica operativa |
|
||||||
|
|---|---|---|---|
|
||||||
|
| `candle_pattern` | `[seq_str]` es. `"UDU"`, `"UUD0U"` | 1.0 se le ultime k=len(seq_str) candele matchano la sequenza, 0.0 altrimenti | `"U"` = close>open; `"D"` = close<open; `"0"` = `abs(close-open)/open < 0.001` |
|
||||||
|
| `pythagorean_ratio` | `[lookback: int]` | float = `max(close[-lookback:]) / min(close[-lookback:])` | Ratio prezzo, da confrontare con literal vicini a φ=1.618, π=3.1416, √2=1.414, e=2.718 |
|
||||||
|
| `fractal_mirror` | `[k: int, axis: str]` axis ∈ `{"h","v"}` | float ∈ [-1, +1] | Correlazione di Pearson tra ultime k candele e loro mirror: `"h"` = mirror tempo (inversione sequenza); `"v"` = mirror prezzo (1 - close/max) |
|
||||||
|
|
||||||
|
Vincoli del compiler:
|
||||||
|
- `candle_pattern`: `len(seq_str)` ∈ [3, 12], simboli ∈ `{U,D,0}`
|
||||||
|
- `pythagorean_ratio`: `lookback` ∈ [12, 200]
|
||||||
|
- `fractal_mirror`: `k` ∈ [3, 12], `axis` ∈ `{"h","v"}`
|
||||||
|
|
||||||
|
Tutti e 3 vanno aggiunti a `KNOWN_INDICATORS` in `multi_swarm_core.protocol.grammar`.
|
||||||
|
|
||||||
|
### Esempio strategy JSON tipica
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"rules": [
|
||||||
|
{
|
||||||
|
"condition": {
|
||||||
|
"op": "and",
|
||||||
|
"args": [
|
||||||
|
{"op": "eq", "args": [
|
||||||
|
{"kind": "indicator", "name": "candle_pattern", "params": ["UDDU"]},
|
||||||
|
{"kind": "literal", "value": 1.0}
|
||||||
|
]},
|
||||||
|
{"op": "gt", "args": [
|
||||||
|
{"kind": "indicator", "name": "pythagorean_ratio", "params": [89]},
|
||||||
|
{"kind": "literal", "value": 1.618}
|
||||||
|
]}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"action": "entry-long"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"condition": {
|
||||||
|
"op": "or", "args": [
|
||||||
|
{"op": "gt", "args": [
|
||||||
|
{"kind": "indicator", "name": "pythagorean_ratio", "params": [89]},
|
||||||
|
{"kind": "literal", "value": 2.618}
|
||||||
|
]},
|
||||||
|
{"op": "crossunder", "args": [
|
||||||
|
{"kind": "indicator", "name": "fractal_mirror", "params": [12, "h"]},
|
||||||
|
{"kind": "literal", "value": 0.0}
|
||||||
|
]}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"action": "exit"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Vincoli protettivi (anti-overfitting)
|
||||||
|
|
||||||
|
- `lookback_window ≤ 200`
|
||||||
|
- `candle_pattern` seq length ∈ [3, 12] (range 1+2 del Libro dei Frattali)
|
||||||
|
- `time_in_market` monitorato come metric (red flag [[selectivity_red_flag]]); non hard-gate al primo run
|
||||||
|
- Letterali con `pythagorean_ratio`: max 4 decimali (no `1.6180339`)
|
||||||
|
- Max 4 condizioni in AND per regola (eredita da prompts.json)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Stili cognitivi (`strategy_pythagoras/prompts.json`)
|
||||||
|
|
||||||
|
### Schema
|
||||||
|
|
||||||
|
Schema v3.2 identico a `strategy_crypto/prompts.json` (campi `_schema`, `_changelog`, `_design_invariants`, `agent_role`, `pattern_guidance`, `instruction`, `domain_warnings`, `anti_patterns`, `output_priorities`, `styles`).
|
||||||
|
|
||||||
|
### `agent_role`
|
||||||
|
|
||||||
|
> Sei un agente di un sistema swarm coevolutivo che cerca pattern frattali ricorrenti sui mercati crypto secondo il framework Pythagoras-Malanga (frattali H-C, trasformata di Fourier, geometria Evideon). Sei parte di una popolazione che esplora collettivamente lo spazio dei pattern: la diversità delle ipotesi è un asset critico. Preferisci esplorare strutture meno ovvie per la tua lente cognitiva. La strategia che produci deve essere riconoscibile come emanata dal tuo stile.
|
||||||
|
|
||||||
|
### `pattern_guidance` (specifico Pythagoras)
|
||||||
|
|
||||||
|
- Sequenze candle 3-12 lunghezza in alfabeto `{U,D,0}` via `candle_pattern`
|
||||||
|
- Mirror H/V come operatori di proiezione via `fractal_mirror`
|
||||||
|
- Ratios di prezzo vicini a φ=1.618, 1/φ=0.618, √2=1.414, π/2=1.571, e/2=1.359 entro tolleranza 0.5%
|
||||||
|
- Pattern composti: pattern lunghi (6-12) come concatenazione di pattern corti (Pattern 13 = Pattern 3 + Pattern 11, p. 53 del paper)
|
||||||
|
- Cicli ricorrenti: stesso pattern firato a distanze regolari (Poincaré)
|
||||||
|
|
||||||
|
### `domain_warnings`
|
||||||
|
|
||||||
|
- Crypto 24/7, no CME gap
|
||||||
|
- I "numeri sacri" (Solfeggio 396-852 Hz, 137.0359, etc.) sono prior teorici, NON leggi: usali come scale candidate, non come dogma
|
||||||
|
- Il paper Pythagoras è esplicitamente non-falsificabile (cita "consapevolezza del trader" come jolly per il fallimento): il backtest è l'unico arbitro
|
||||||
|
- `time_in_market > 80%` red flag (leveraged B&H camuffato)
|
||||||
|
- Tolleranza ±3h del paper → su 5m TF = ±36 barre
|
||||||
|
|
||||||
|
### `anti_patterns`
|
||||||
|
|
||||||
|
- Sequenza `candle_pattern` con `len > 7` simboli vincolati → overfitting
|
||||||
|
- `pythagorean_ratio` con tolleranza > 2% sui literal → numerologia spuriosa
|
||||||
|
- `fractal_mirror` con `k == lookback_window` → tautologico
|
||||||
|
- Letterali con più di 4 decimali
|
||||||
|
- Più di 4 condizioni in AND
|
||||||
|
- Crossover tra indicatori dello stesso tipo con lookback vicini → chattering
|
||||||
|
|
||||||
|
### `output_priorities`
|
||||||
|
|
||||||
|
1. **Coerenza con lente cognitiva** (es. `pythagorean` usa ratios, `candle_grammarian` usa sequenze esplicite)
|
||||||
|
2. **Asset-invariance** (segnali che attivano sia su BTC che su ETH entro ±36 barre)
|
||||||
|
3. **Selettività** (poche entry forti)
|
||||||
|
4. **Composizionalità** (pattern lunghi come somma di corti)
|
||||||
|
5. **Robustezza vs random baseline** (3σ richiesto da `skeptic_quant`)
|
||||||
|
|
||||||
|
### I 7 stili (`styles`)
|
||||||
|
|
||||||
|
Ogni stile mantiene shape v3.2 (directive 800-950 char ASCII-safe, `focus_metrics` 4 voci, ultimo periodo = "Archetipo dominante: X.", lookback range esplicito):
|
||||||
|
|
||||||
|
| `cognitive_style` | Archetipo / Metafora ancorante | `focus_metrics` | Lookback consigliato |
|
||||||
|
|---|---|---|---|
|
||||||
|
| `pythagorean` | Armonia di ratios sacri (φ, π, √2) | `pythagorean_ratio`, `candle_pattern`, `sma_pct`, `realized_vol` | 89-144 |
|
||||||
|
| `fractal_geometer` | Autosimilarità: pattern di 3 candele si ripetono dilatati a 6, 12 | `candle_pattern`, `fractal_mirror`, `atr_pct`, `pythagorean_ratio` | 48-144 |
|
||||||
|
| `fourier_analyst` | Somma di seni: frequenze ricorrenti dominanti | `sma_pct`, `realized_vol`, `candle_pattern`, `atr` | 60-200 |
|
||||||
|
| `evideonic_projector` | Presente = passato proiettato via mirror H+V e scale | `fractal_mirror`, `pythagorean_ratio`, `candle_pattern`, `sma_pct` | 24-96 |
|
||||||
|
| `candle_grammarian` | Lingua di 3 simboli (U,D,0); parole 3-12 lettere | `candle_pattern`, `volume`, `atr`, `realized_vol` | 12-48 |
|
||||||
|
| `recurrence_theorist` | Per Poincaré, eventi tornano: cerca pattern di oggi che firarono ieri | `candle_pattern`, `fractal_mirror`, `pythagorean_ratio`, `sma_pct` | 100-200 |
|
||||||
|
| `skeptic_quant` | Anticorpo all'unfalsifiability: solo edge 3σ vs random | `realized_vol`, `atr_pct`, `sma_pct`, `candle_pattern` | 60-150 |
|
||||||
|
|
||||||
|
Lo `skeptic_quant` è importante: la sua directive richiede esplicitamente che la strategia sia testabile e che il fitness sia confrontato contro random baseline.
|
||||||
|
|
||||||
|
### `_design_invariants`
|
||||||
|
|
||||||
|
Stessa filosofia di v3.2 di strategy_crypto:
|
||||||
|
- ASCII-safe (no Unicode oltre U+007F nelle directive)
|
||||||
|
- Ogni directive chiude con `Archetipo dominante: <metafora>.`
|
||||||
|
- Ogni directive ha range lookback numerico esplicito
|
||||||
|
- Prima frase: `Il mercato e ...`
|
||||||
|
- Lunghezza 800-950 char
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Fitness, run GA short, deliverable analisi
|
||||||
|
|
||||||
|
### Fitness con bonus invariance
|
||||||
|
|
||||||
|
```
|
||||||
|
fitness(genome) = mean(sharpe_BTC, sharpe_ETH) × (1 + α × invariance_score)
|
||||||
|
|
||||||
|
invariance_score = corr_signal(entries_BTC, entries_ETH, tolerance_bars=GA_INVARIANCE_TOLERANCE_BARS)
|
||||||
|
∈ [0, 1]
|
||||||
|
α = GA_INVARIANCE_ALPHA (default 0.3)
|
||||||
|
```
|
||||||
|
|
||||||
|
`corr_signal` = frazione di entries su BTC che hanno una entry corrispondente su ETH entro ±36 barre (=±3h su 5m TF).
|
||||||
|
|
||||||
|
Implementazione come callback al GA in `multi_swarm_core.ga`, registrata da `strategy_pythagoras` al startup. Il core non sa nulla di Pythagoras: riceve solo la callback.
|
||||||
|
|
||||||
|
### GA run short (smoke test)
|
||||||
|
|
||||||
|
| Parametro | Valore | Note |
|
||||||
|
|---|---|---|
|
||||||
|
| `population_size` | 20 | minimo per 7 stili (~3 per stile) |
|
||||||
|
| `generations` | 5 | smoke test, non training |
|
||||||
|
| `elite_fraction` | 0.2 | top-4 sopravvivono |
|
||||||
|
| `mutation_rate` | 0.3 | invariato vs strategy_crypto |
|
||||||
|
| `crossover_rate` | 0.5 | invariato |
|
||||||
|
| `model_tier` distribuzione | 70% C (qwen-2.5-72b), 30% B (sonnet) | rispetta [[model_qwen_dependency]] |
|
||||||
|
| `dataset` | BTC 5m + ETH 5m da `strategy_crypto/series/` | riusa serie esistenti |
|
||||||
|
| `train_window` | 2024-07 → 2024-12 | copre le date Pythagoras (lug-ago 2024) |
|
||||||
|
| `test_window` | 2025-01 (1 mese) | hold-out per validare invariance |
|
||||||
|
| `name` | `pythagoras-smoke-001` | run id |
|
||||||
|
|
||||||
|
Lo smoke test verifica:
|
||||||
|
1. Workspace member installato in venv (`uv sync` + `uv run python -c "import strategy_pythagoras"`)
|
||||||
|
2. I 3 nuovi indicatori registrati nel grammar e compilabili
|
||||||
|
3. `prompts.json` caricato, 7 stili producono genomi distinti (no collisioni di id)
|
||||||
|
4. Bonus invariance impatta fitness (verifica via log)
|
||||||
|
5. JSON winners atterrano in `strategy_pythagoras/strategies/`
|
||||||
|
6. Dashboard NiceGUI si avvia e legge i due DB
|
||||||
|
|
||||||
|
### Deliverable analisi cross-book
|
||||||
|
|
||||||
|
`docs/analysis_first_run.md` con:
|
||||||
|
|
||||||
|
1. **Sintesi numerica dei riassunti** — riferimenti a `src/strategy_pythagoras/Pythagoras/Pythagoras_Trading_Prediction.summary.md` e `Libro_frattali.summary.md`
|
||||||
|
2. **Top-5 winners** — id, cognitive_style, fitness, sharpe_BTC, sharpe_ETH, invariance_score
|
||||||
|
3. **Pattern frattali emersi** — dump dei `candle_pattern` seq usate, conteggio per stile, % sovrapposizione con spazio teorico dei 57 pattern del Libro
|
||||||
|
4. **Ratios di prezzo emersi** — distribuzione literal usati con `pythagorean_ratio`, distanza dai numeri universali (φ/π/√2/Solfeggio)
|
||||||
|
5. **Cross-asset invariance osservata** — istogramma di `corr_signal` per top genomi
|
||||||
|
6. **Conclusione onesta** — confronto vs random baseline, quanti winners superano sharpe>1.0 su test + invariance>0.3, cosa il framework Pythagoras predice e cosa NON regge al backtest
|
||||||
|
|
||||||
|
Niente "consapevolezza" come jolly. Solo numeri.
|
||||||
|
|
||||||
|
### Dashboard NiceGUI
|
||||||
|
|
||||||
|
`/strategy_pythagoras_gui`:
|
||||||
|
- Tab **Genomes** — winners con stile/sharpe/invariance, click per drill su rules
|
||||||
|
- Tab **Patterns** — heatmap delle sequenze `candle_pattern` emerse, frequenza per stile
|
||||||
|
- Tab **Ratios** — istogramma literal vicini a costanti universali, bins centrati su φ, π, √2, ecc.
|
||||||
|
- Tab **Invariance** — scatter sharpe_BTC vs sharpe_ETH per ogni winner
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Out-of-scope (esplicito)
|
||||||
|
|
||||||
|
- **Asset oltre BTC/ETH** (Oro/Argento del paper): non in primo run. Estensione futura.
|
||||||
|
- **Range candele oltre 12**: range 3-5 del Libro (12-56 candele). Estensione futura quando lo smoke test conferma stabilità.
|
||||||
|
- **Live trading reale**: solo paper-trading via stesso pattern di strategy_crypto.
|
||||||
|
- **OCR/Vision sulle figure del Libro dei Frattali**: esplicitamente ESCLUSO da request utente ("senza passare alle immagini").
|
||||||
|
- **Modifica del genoma del core**: nessuna modifica a `HypothesisAgentGenome`. Solo extension del grammar (3 indicatori).
|
||||||
|
- **Riferimenti pseudoscientifici operativizzati come legge**: i numeri sacri/Solfeggio sono prior teorici per literal candidati, non vincoli rigidi.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6. Criteri di accettazione
|
||||||
|
|
||||||
|
- [ ] `uv sync` riesce dalla root con `strategy_pythagoras` come member
|
||||||
|
- [ ] `uv run python -c "from strategy_pythagoras.indicators import candle_pattern, pythagorean_ratio, fractal_mirror"` non solleva
|
||||||
|
- [ ] `pytest src/strategy_pythagoras/tests/` verde (almeno unit-test per i 3 indicatori)
|
||||||
|
- [ ] GA short run `pythagoras-smoke-001` completa 5 generazioni senza errori
|
||||||
|
- [ ] Almeno 1 winner con fitness > 0 e `cognitive_style` ∈ {7 stili Pythagoras}
|
||||||
|
- [ ] Dashboard avvia su `http://localhost:PORT/strategy_pythagoras_gui` e mostra winners
|
||||||
|
- [ ] `docs/analysis_first_run.md` esiste e contiene tutte le sezioni elencate in §4
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7. Riferimenti
|
||||||
|
|
||||||
|
- [Pythagoras Trading Prediction — riassunto](../../../src/strategy_pythagoras/Pythagoras/Pythagoras_Trading_Prediction.summary.md)
|
||||||
|
- [Libro dei Frattali — riassunto](../../../src/strategy_pythagoras/Pythagoras/Libro_frattali.summary.md)
|
||||||
|
- Memory: [[monorepo_uv_workspace]], [[gui_subpath_routing]], [[ownership_per_modulo]], [[production_deployment]], [[model_qwen_dependency]], [[selectivity_red_flag]]
|
||||||
|
- Template: `src/strategy_crypto/` (paper-trading + GUI), `src/strategy_crypto/strategy_crypto/prompts.json` (schema v3.2)
|
||||||
|
- Core: `src/multi_swarm_core/multi_swarm_core/genome/hypothesis.py`, `multi_swarm_core/protocol/grammar.py`
|
||||||
@@ -0,0 +1,110 @@
|
|||||||
|
# Libro dei Frattali — Riassunto
|
||||||
|
|
||||||
|
**Autori:** Luca Serleto, Corrado Malanga
|
||||||
|
**Editore/Stampa:** Adobe InDesign, nov 2024
|
||||||
|
**Pagine:** 58 — **testo embedded ≈ nullo (~1.6 KB)**
|
||||||
|
**Estratto raw:** [_extracted/Libro_frattali.txt](_extracted/Libro_frattali.txt)
|
||||||
|
|
||||||
|
## Natura del documento
|
||||||
|
|
||||||
|
Il "Libro dei Frattali" è un **catalogo grafico** di pattern candlestick, non un testo discorsivo. Le pagine sono composte quasi interamente da figure (candle-chart estratti via trasformata di Fourier secondo la metodologia esposta nel companion paper [Pythagoras Trading Prediction](Pythagoras_Trading_Prediction.summary.md)).
|
||||||
|
|
||||||
|
L'estrazione testuale rivela **solo le etichette**:
|
||||||
|
|
||||||
|
| Pagina | Contenuto testuale |
|
||||||
|
|---|---|
|
||||||
|
| 1 | "Luca Serleto / Corrado Malanga / Libro dei Frattali" (frontespizio) |
|
||||||
|
| 2 | "Pattern da 3 candele a massimo 6 candele (LONG)" |
|
||||||
|
| 3–58 | "Pattern 1", "Pattern 2", …, "Pattern 57" — una riga per pagina |
|
||||||
|
|
||||||
|
**Tutto il resto è immagine.** L'utente ha esplicitamente richiesto che gli agenti **non passino dalle immagini** ma costruiscano schemi dai numeri.
|
||||||
|
|
||||||
|
## Struttura numerica deducibile (senza guardare le figure)
|
||||||
|
|
||||||
|
### Conteggio dei pattern
|
||||||
|
- **Totale pattern catalogati: 57**
|
||||||
|
- Numerati progressivamente da 1 a 57
|
||||||
|
- Tutti dichiarati "**LONG**" (segnali rialzisti)
|
||||||
|
- Tutti nel range **3–6 candele** (range 1 della tassonomia esposta in *Pythagoras Trading Prediction*, pp. 49)
|
||||||
|
|
||||||
|
### Coerenza col paper companion
|
||||||
|
Il paper *Pythagoras Trading Prediction* (p. 49) afferma testualmente:
|
||||||
|
> "Questa tipologia di pattern può estendersi fino a 6 candele, per questo motivo nel libro i pattern sono identificati con range da 3 a 6, da 6 a 12, da 12 a 24, da 24 a 39 e da 39 a 56."
|
||||||
|
|
||||||
|
⇒ Il Libro dei Frattali pubblicato copre **solo il primo range** (3–6 candele). Il numero massimo (56) della tassonomia coincide quasi esattamente con il numero di pattern catalogati (57) — possibile errore tipografico o discrepanza intenzionale di 1 unità.
|
||||||
|
|
||||||
|
### Pattern composti citati nel paper
|
||||||
|
Sempre nel paper companion (p. 53), è dichiarato che pattern di range superiore sono composti dai pattern semplici di range 1:
|
||||||
|
- **Pattern 13 = Pattern 3 + Pattern 11**
|
||||||
|
|
||||||
|
Implicazione: la numerazione del Libro NON è una sequenza temporale ma una **enumerazione di forme distinte** che fungono da "lettere" dell'alfabeto frattale; i pattern complessi sono "parole" composte.
|
||||||
|
|
||||||
|
## Spazio numerico (3–6 candele LONG)
|
||||||
|
|
||||||
|
Per i 57 pattern, l'**unico contenuto numerico estraibile senza vision** è il loro indice 1–57. Tuttavia il **dominio combinatorio** che il catalogo intende coprire può essere ricostruito teoricamente:
|
||||||
|
|
||||||
|
### Encoding compatto di una candela
|
||||||
|
Una candela in approssimazione discreta può essere ridotta a un simbolo dell'alfabeto:
|
||||||
|
- `U` = up (close > open) — bullish body
|
||||||
|
- `D` = down (close < open) — bearish body
|
||||||
|
- `0` = doji (close ≈ open)
|
||||||
|
|
||||||
|
Quindi una sequenza di 3–6 candele appartiene allo spazio `{U,D,0}^k` con k ∈ {3,4,5,6}.
|
||||||
|
|
||||||
|
| k | |Σᵏ| = 3ᵏ |
|
||||||
|
|---|---|
|
||||||
|
| 3 | 27 |
|
||||||
|
| 4 | 81 |
|
||||||
|
| 5 | 243 |
|
||||||
|
| 6 | 729 |
|
||||||
|
| **Tot** | **1080** sequenze teoriche |
|
||||||
|
|
||||||
|
57 pattern catalogati su 1080 sequenze ⇒ il catalogo seleziona ≈ **5.3%** dello spazio totale.
|
||||||
|
|
||||||
|
### Filtro implicito "LONG"
|
||||||
|
"LONG" implica che il pattern preceda un breakout/continuazione al rialzo. Restrizione plausibile:
|
||||||
|
- pattern terminanti con candela bullish forte, o
|
||||||
|
- pattern con dominanza U / 0 nelle ultime k-1 candele, o
|
||||||
|
- pattern strutturali noti dell'analisi tecnica (martello, inverted hammer, morning star, ecc.) — limitati a 3–6 candele.
|
||||||
|
|
||||||
|
## Numeri ricavabili dal Libro (l'unico set "puro")
|
||||||
|
|
||||||
|
Dal solo testo del Libro, gli agenti hanno accesso a:
|
||||||
|
1. **Cardinalità del catalogo**: 57
|
||||||
|
2. **Numerazione**: serie 1, 2, 3, …, 57
|
||||||
|
3. **Range candele**: [3, 6] (chiuso, intero)
|
||||||
|
4. **Direzione**: solo LONG
|
||||||
|
5. **Costante autori**: 2 (Serleto, Malanga)
|
||||||
|
6. **Edizione**: nov 2024
|
||||||
|
7. **Numero di pagine**: 58
|
||||||
|
|
||||||
|
## Indizi numerici per l'analisi di similitudine
|
||||||
|
|
||||||
|
| Numero | Match con Pythagoras Trading Prediction |
|
||||||
|
|---|---|
|
||||||
|
| 57 pattern | tassonomia bordo superiore = 56 (errore di 1) |
|
||||||
|
| 56 (bordo tassonomia) | numerologia: 56 = 8·7 = ottava·sacro |
|
||||||
|
| 3 (min candele) | numero sacro pitagorico (triade); 3 = lati triangolo Evideon |
|
||||||
|
| 6 (max candele) | numero perfetto (1+2+3); φ²-... |
|
||||||
|
| 6/3 = 2 | ratio 2 = ottava musicale |
|
||||||
|
| (max-min)/min = 1 | unità |
|
||||||
|
| log(57)/log(3) ≈ 3.69 | dimensione frattale di Hausdorff di insieme dimensionale 4 ≈ 3.69 |
|
||||||
|
|
||||||
|
## Punti utili per estrazione numerica (per il task di similitudini)
|
||||||
|
|
||||||
|
1. **N = 57** pattern → cardinality, da confrontare con 56 (bordo del paper), 528 Hz (Solfeggio), 588 candele indicatore
|
||||||
|
2. **k ∈ {3, 4, 5, 6}** → estremi del range
|
||||||
|
3. **Σ³⁺⁴⁺⁵⁺⁶ = 1080** sequenze teoriche (3ᵏ encoded) → 1080 = 8·135 = 2³·3³·5
|
||||||
|
4. **Tassonomia bordi**: 3, 6, 12, 24, 39, 56 — sequenza utile per fingerprint
|
||||||
|
5. **Direzione "LONG"** → variabile binaria
|
||||||
|
6. **Composizionalità**: Pattern 13 = Pattern 3 + Pattern 11 → grammar di pattern frattali
|
||||||
|
|
||||||
|
## Conclusione
|
||||||
|
|
||||||
|
Il Libro dei Frattali, **letto senza immagini**, è un oggetto numerico molto povero (57 etichette su 58 pagine). Per produrre similitudini significative tra i due testi, occorre:
|
||||||
|
|
||||||
|
1. Trattare il Libro come **schema combinatorio implicito** (1080 sequenze possibili, 57 selezionate)
|
||||||
|
2. Confrontare i **numeri-chiave** (3, 6, 57, range) con i numeri estratti dal paper teorico (φ, π, e, 528, 588, 137.0359, etc.)
|
||||||
|
3. Lasciare agli agenti il compito di **trovare ricorrenze, ratios, e dimensioni frattali** che colleghino i due insiemi numerici.
|
||||||
|
|
||||||
|
Vedere [Pythagoras_Trading_Prediction.summary.md](Pythagoras_Trading_Prediction.summary.md) per il dominio numerico del paper teorico.
|
||||||
@@ -0,0 +1,182 @@
|
|||||||
|
# Pythagoras Trading Prediction — Riassunto
|
||||||
|
|
||||||
|
**Autori:** Luca Serleto, Corrado Malanga
|
||||||
|
**Editore/Stampa:** Adobe InDesign, dic 2024
|
||||||
|
**Pagine:** 66 — testo embedded ~91 KB (no immagini estraibili: figure presenti ma non analizzate per scelta esplicita dell'utente)
|
||||||
|
**Estratto raw:** [_extracted/Pythagoras_Trading_Prediction_.txt](_extracted/Pythagoras_Trading_Prediction_.txt)
|
||||||
|
|
||||||
|
## Tesi centrale
|
||||||
|
|
||||||
|
Il prezzo dei mercati finanziari è descrivibile come **funzione frattale**, scomponibile via **trasformata di Fourier** in componenti sinusoidali periodiche, e quindi proiettabile nel futuro. Il "parametro nascosto" che la fisica quantistica cerca da decenni è la **Coscienza** (entropia di Shannon ΔS), che modula sia la capacità di osservare/predire che la traiettoria stessa dei prezzi.
|
||||||
|
|
||||||
|
## Struttura del libro (4 parti)
|
||||||
|
|
||||||
|
1. **Parte teorica / coscienziale** (pp. 2–24): framework filosofico-fisico
|
||||||
|
2. **Frattali** (pp. 37–44): indicatore frattale H-C
|
||||||
|
3. **Trasformata di Fourier** (pp. 45–58): pattern catalogati e applicazione
|
||||||
|
4. **Piattaforma Pythagoras** (pp. 59–66): manuale operativo (Auto + Manual mode)
|
||||||
|
|
||||||
|
## Concetti chiave (in ordine di apparizione)
|
||||||
|
|
||||||
|
### 1. Approccio "femminile" vs "maschile" alla predizione
|
||||||
|
- **Femminile/animico**: visione olografica del tempo (Pribram, Bohm), tutto co-presente nel presente; il cervello come "lettore di ologrammi"
|
||||||
|
- **Maschile/spirituale**: approccio galileiano-statistico via algoritmo
|
||||||
|
- Tesi: i due metodi vanno integrati
|
||||||
|
|
||||||
|
### 2. Probabilità → Certezza
|
||||||
|
> "Se il sistema predittivo è corretto al 10%, possiamo trovare il parametro che trasformi quella probabilità nella certezza al 100%."
|
||||||
|
|
||||||
|
Il parametro mancante è la **Coscienza**.
|
||||||
|
|
||||||
|
### 3. Teorema di ricorrenza di Poincaré
|
||||||
|
In meccanica hamiltoniana, in un sistema dinamico a spazio delle fasi limitato, lo stato può tornare arbitrariamente vicino a quello iniziale dopo tempo sufficiente. → Il tempo è **circolare**, gli eventi ricorrono → mercati ripetibili.
|
||||||
|
|
||||||
|
### 4. Entropia di Shannon S
|
||||||
|
- S = -log(W), W = microstati
|
||||||
|
- Coscienza ≡ S; **Consapevolezza ≡ ΔS** (variazione di entropia tra istante e successivo)
|
||||||
|
- Inizio universo: S = -∞; fine: S = 0; entropia totale = ∞
|
||||||
|
|
||||||
|
### 5. Hartman-Curry → "Indicatore frattale H-C"
|
||||||
|
- Introdotto da Corrado Malanga al XCongress di Pescara (2018)
|
||||||
|
- Prima applicazione su grafico EUR/USD
|
||||||
|
- Struttura tridimensionale costruita su "numeri universali" che genera ricorrenze
|
||||||
|
|
||||||
|
### 6. Numeri Universali (Evideon)
|
||||||
|
> "I numeri dell'universo sono: la sezione aurea φ, π, il numero di Eulero e, √2, ecc. Numeri irrazionali e trascendenti."
|
||||||
|
|
||||||
|
Triangolo rettangolo con costanti universali fisiche; lati moltiplicati per opportuni coefficienti basati su π, e, φ e temperatura assoluta di Kelvin/100.
|
||||||
|
|
||||||
|
**Costanti numeriche citate esplicitamente:**
|
||||||
|
- 137.0359 × √π / 2 = **121.449**
|
||||||
|
- 266.87 × 1 / √e = **161.86**
|
||||||
|
- Frequenze Solfeggio: **741, 528, 852, 639, 396, 417** (p. 27)
|
||||||
|
- Numero di Avogadro N = 6.022·10²³ (citato come ipotesi sul numero di sub-componenti dell'Universo)
|
||||||
|
|
||||||
|
### 7. Trasformata di Fourier
|
||||||
|
Scomposizione di qualsiasi funzione continua in seni e coseni:
|
||||||
|
- Frequenze positive (orario) e negative (antiorario) → propagazione **avanti e indietro nel tempo**
|
||||||
|
- Ricostruzione approssimata con N componenti → **N = misura della consapevolezza**
|
||||||
|
- Pochi N: previsione approssimativa; molti N: previsione accurata
|
||||||
|
|
||||||
|
### 8. Equazione di Schrödinger ↔ trading
|
||||||
|
Identificazione formale:
|
||||||
|
|
||||||
|
| Schrödinger | Trading |
|
||||||
|
|---|---|
|
||||||
|
| iℏ ∂Ψ/∂t = -ℏ²/(2m) ∂²Ψ/∂x² + V(x)Ψ | dinamica del prezzo |
|
||||||
|
| derivata seconda di Ψ in x | "piegatura" spazio-temporale del grafico |
|
||||||
|
| m | massa fittizia ≈ volume d'affari |
|
||||||
|
| V(Ψ) | perturbazioni esterne (manipolazione di mercato) |
|
||||||
|
| Ψ ampiezza | altezza candele (asse energia/prezzo) |
|
||||||
|
| Ψ² probabilità | probabilità che l'evento si materializzi |
|
||||||
|
|
||||||
|
Identificazione con energia libera di Gibbs: termine -TΔS della formula di Gibbs ≡ termine entropico in Schrödinger.
|
||||||
|
|
||||||
|
### 9. Centro di inversione (operazione geometrica chiave)
|
||||||
|
Sul modello "Evideon" (3 assi: spazio, tempo, energia), un punto A del passato si trasforma nel punto E del futuro tramite:
|
||||||
|
- **Riflessione speculare sull'asse verticale** (energia/prezzo)
|
||||||
|
- **Riflessione speculare sull'asse orizzontale** (tempo)
|
||||||
|
- = traslazione temporale + inversione di pattern
|
||||||
|
|
||||||
|
Inoltre il pattern subisce:
|
||||||
|
- **Compressione** o **dilatazione** sull'asse x (tempo)
|
||||||
|
- **Compressione** o **dilatazione** sull'asse y (prezzo)
|
||||||
|
A seconda della posizione del punto sull'Evideon (tempo sotto-multiplo → contrazione).
|
||||||
|
|
||||||
|
### 10. Finestra di Overton
|
||||||
|
- Apertura temporale che definisce "il presente"
|
||||||
|
- Analogia con SAR (Synthetic Aperture Radar): più larga la finestra, più precisa la previsione
|
||||||
|
- Pythagoras applica la stessa finestra al passato per proiettare nel futuro
|
||||||
|
|
||||||
|
### 11. ZPE (Zero Point Energy)
|
||||||
|
Universo non vuoto: pieno di particelle e anti-particelle che si annichiliscono. Permette di "conoscere perfettamente coordinate spazio-temporali e valore nullo dell'energia": non c'è incertezza vera (contro Heisenberg).
|
||||||
|
|
||||||
|
### 12. Indicatore frattale su TradingView
|
||||||
|
Disponibile su licenza dedicata. Parametri operativi:
|
||||||
|
- Tracciato da minimo → massimo
|
||||||
|
- **25 linee verticali** all'interno di **588 candele**
|
||||||
|
- 90% segnala accelerazione (aumento volatilità), 10% lateralizzazione
|
||||||
|
- Tolleranza ±3 ore su time frame 1H/4H
|
||||||
|
- **Linee blu inclinate** = supporti/resistenze tempo-condizionati
|
||||||
|
- **Cerchi bianchi** = obiettivi di prezzo circolari
|
||||||
|
|
||||||
|
### 13. Pattern range (taxonomy del Book dei Frattali)
|
||||||
|
| Range | Numero candele |
|
||||||
|
|---|---|
|
||||||
|
| Range 1 | 3 – 6 candele |
|
||||||
|
| Range 2 | 6 – 12 candele |
|
||||||
|
| Range 3 | 12 – 24 candele |
|
||||||
|
| Range 4 | 24 – 39 candele |
|
||||||
|
| Range 5 | 39 – 56 candele |
|
||||||
|
|
||||||
|
I pattern oltre 6 candele diventano "frattali complessi": composizione di pattern semplici (es. Pattern 13 = Pattern 3 + Pattern 11).
|
||||||
|
|
||||||
|
### 14. Variabili che NON alterano il target
|
||||||
|
- Inclinazione del pattern
|
||||||
|
- Ampiezza
|
||||||
|
- Curvatura
|
||||||
|
- Numero di candele entro lo stesso range
|
||||||
|
|
||||||
|
→ il target di proiezione è invariante per queste deformazioni.
|
||||||
|
|
||||||
|
### 15. Variabili che alterano l'applicabilità
|
||||||
|
- **Time frame**: 15m, 1H, 4H, 1D
|
||||||
|
- **Volatilità dell'asset** ("consapevolezza dell'asset")
|
||||||
|
- **Leva finanziaria**
|
||||||
|
|
||||||
|
## Esempi concreti citati
|
||||||
|
|
||||||
|
| Pattern | Asset | Data/Ora | TF |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 1 | BTC | 28 ago 2024 00:00 | 15m |
|
||||||
|
| 1 | ETH | 28 ago 2024 00:00 | 15m |
|
||||||
|
| 1 | Oro | 29 ago 2024 14:30 | 15m |
|
||||||
|
| 1 | Argento | 17 lug 2024 18:15 | 15m |
|
||||||
|
| 13 | BTC | 24 ago 2024 23:15 | 15m |
|
||||||
|
| 13 | ETH | 24 ago 2024 23:45 | 15m |
|
||||||
|
| 13 | Oro | 02 ago 2024 16:45 | 15m |
|
||||||
|
| 13 | Argento | 02 ago 2024 16:45 | 15m |
|
||||||
|
| 15 | DJT (Trump Media) | 12 lug 2024 (chiusura) | 1D |
|
||||||
|
|
||||||
|
Il caso DJT è presentato come "predizione" dell'attentato a Trump del 14 lug 2024 (frattale complesso al rialzo formatosi il 12 lug → escludeva evento negativo).
|
||||||
|
|
||||||
|
## Piattaforma Pythagoras
|
||||||
|
|
||||||
|
### Auto Mode
|
||||||
|
1. Seleziona asset
|
||||||
|
2. Seleziona TF (15m, 1H, 4H)
|
||||||
|
3. Click "Predict" → Fourier identifica frattale e proietta futuro (colore giallo)
|
||||||
|
|
||||||
|
### Manual Mode
|
||||||
|
1. Seleziona asset
|
||||||
|
2. Seleziona frattale dal Book per data
|
||||||
|
3. Click "Predict" → proiezione
|
||||||
|
|
||||||
|
## Disclaimer interno al testo
|
||||||
|
|
||||||
|
> "Anche se si conosce un potenziale futuro, questo non è garanzia di guadagno. Solo la consapevolezza del trader, basata sull'esperienza, potrà trasformare la predizione di un potenziale futuro in un profitto concreto."
|
||||||
|
|
||||||
|
Il testo enfatizza che il **target del trader non è guadagnare ma capire sé stesso** (approccio "coscienziale"). Il denaro è strumento di apprendimento dell'entropia/dualità.
|
||||||
|
|
||||||
|
## Punti utili per estrazione numerica (per il task di similitudini)
|
||||||
|
|
||||||
|
1. **Numeri universali esatti**: φ ≈ 1.6180339887, π ≈ 3.1415926535, e ≈ 2.71828, √2 ≈ 1.41421
|
||||||
|
2. **Costanti derivate dal testo**: 137.0359, 121.449, 266.87, 161.86
|
||||||
|
3. **Frequenze Solfeggio (Hz)**: 396, 417, 528, 639, 741, 852
|
||||||
|
4. **Conteggi operativi**: 25 linee/588 candele = ratio 0.0425
|
||||||
|
5. **Numeri ricorrenti**: 6.022·10²³ (Avogadro)
|
||||||
|
6. **Range candele**: bordi 3, 6, 12, 24, 39, 56 — sequenza con incrementi 3, 6, 12, 15, 17 (NON Fibonacci puro, ma sequenza con ratios ~2x)
|
||||||
|
7. **Ratios tra bordi**: 6/3=2, 12/6=2, 24/12=2, 39/24=1.625, 56/39=1.436 — gli ultimi due si avvicinano a φ ≈ 1.618 e √2 ≈ 1.414
|
||||||
|
8. **Sequenza pattern numerati**: 1, 2, 3, ... 57 (matching col Libro dei Frattali)
|
||||||
|
9. **Operazioni geometriche**: mirror H, mirror V, scaling x/y (4 trasformazioni)
|
||||||
|
10. **TF candidati**: 15m, 1H, 4H, 1D (multipli 4x e 6x)
|
||||||
|
|
||||||
|
## Bibliografia interna / link YouTube citati
|
||||||
|
- youtube.com/shorts/OnM09uMCS50 (teorema di Poincaré)
|
||||||
|
- youtu.be/hHig-PP4Mcs (gravità come Coscienza)
|
||||||
|
- youtu.be/HTIYZBrzZbM (struttura dell'Evideon)
|
||||||
|
|
||||||
|
## Opere citate degli autori
|
||||||
|
- Corrado Malanga, *Io e Dio*, Spazio Interiore, Roma
|
||||||
|
- Corrado Malanga, *Trilogia della Coscienza*, Spazio Interiore, Roma
|
||||||
|
- Corrado Malanga al XCongress, Pescara, 2018 (intro pattern H-C)
|
||||||
@@ -0,0 +1,227 @@
|
|||||||
|
|
||||||
|
|
||||||
|
===PAGE 1===
|
||||||
|
Luca Serleto
|
||||||
|
Corrado Malanga
|
||||||
|
Libro dei Libro dei
|
||||||
|
FrattaliFrattali
|
||||||
|
|
||||||
|
===PAGE 2===
|
||||||
|
Pattern da 3 candele a massimo 6 candele (LONG)
|
||||||
|
Pattern 1
|
||||||
|
|
||||||
|
===PAGE 3===
|
||||||
|
Pattern 2
|
||||||
|
|
||||||
|
===PAGE 4===
|
||||||
|
Pattern 3
|
||||||
|
|
||||||
|
===PAGE 5===
|
||||||
|
Pattern 4
|
||||||
|
|
||||||
|
===PAGE 6===
|
||||||
|
Pattern 5
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 7===
|
||||||
|
Pattern 6
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 8===
|
||||||
|
Pattern 7
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 9===
|
||||||
|
Pattern 8
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 10===
|
||||||
|
Pattern 9
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 11===
|
||||||
|
Pattern 10
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 12===
|
||||||
|
Pattern 11
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 13===
|
||||||
|
Pattern 12
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 14===
|
||||||
|
Pattern 13
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 15===
|
||||||
|
Pattern 14
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 16===
|
||||||
|
Pattern 15
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 17===
|
||||||
|
Pattern 16
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 18===
|
||||||
|
Pattern 17
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 19===
|
||||||
|
Pattern 18
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 20===
|
||||||
|
Pattern 19
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 21===
|
||||||
|
Pattern 20
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 22===
|
||||||
|
Pattern 21
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 23===
|
||||||
|
Pattern 22
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 24===
|
||||||
|
Pattern 23
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 25===
|
||||||
|
Pattern 24
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 26===
|
||||||
|
Pattern 25
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 27===
|
||||||
|
Pattern 26
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 28===
|
||||||
|
Pattern 27
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 29===
|
||||||
|
Pattern 28
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 30===
|
||||||
|
Pattern 29
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 31===
|
||||||
|
Pattern 30
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 32===
|
||||||
|
Pattern 31
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 33===
|
||||||
|
Pattern 32
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 34===
|
||||||
|
Pattern 33
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 35===
|
||||||
|
Pattern 34
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 36===
|
||||||
|
Pattern 35
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 37===
|
||||||
|
Pattern 36
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 38===
|
||||||
|
Pattern 37
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 39===
|
||||||
|
Pattern 38
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 40===
|
||||||
|
Pattern 39
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 41===
|
||||||
|
Pattern 40
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 42===
|
||||||
|
Pattern 41
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 43===
|
||||||
|
Pattern 42
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 44===
|
||||||
|
Pattern 43
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 45===
|
||||||
|
Pattern 44
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 46===
|
||||||
|
Pattern 45
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 47===
|
||||||
|
Pattern 46
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 48===
|
||||||
|
Pattern 47
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 49===
|
||||||
|
Pattern 48
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 50===
|
||||||
|
Pattern 49
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 51===
|
||||||
|
Pattern 50
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 52===
|
||||||
|
Pattern 51
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 53===
|
||||||
|
Pattern 52
|
||||||
|
|
||||||
|
|
||||||
|
===PAGE 54===
|
||||||
|
Pattern 53
|
||||||
|
|
||||||
|
===PAGE 55===
|
||||||
|
Pattern 54
|
||||||
|
|
||||||
|
===PAGE 56===
|
||||||
|
Pattern 55
|
||||||
|
|
||||||
|
===PAGE 57===
|
||||||
|
Pattern 56
|
||||||
|
|
||||||
|
===PAGE 58===
|
||||||
|
Pattern 57
|
||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user