chore: initial import

This commit is contained in:
u1
2026-01-06 12:33:47 +01:00
commit 69849cb9e9
12 changed files with 1972 additions and 0 deletions

234
dapp-choice.html Normal file
View File

@@ -0,0 +1,234 @@
<!doctype html>
<html lang="pl">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Jaki dApp najlepszy pod bota (Solana)?</title>
<style>
:root {
color-scheme: light dark;
--bg: #0b1020;
--panel: rgba(255, 255, 255, 0.06);
--text: rgba(255, 255, 255, 0.92);
--muted: rgba(255, 255, 255, 0.68);
--accent: #7c3aed;
--border: rgba(255, 255, 255, 0.12);
--shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}
@media (prefers-color-scheme: light) {
:root {
--bg: #f6f7fb;
--panel: rgba(0, 0, 0, 0.04);
--text: rgba(0, 0, 0, 0.88);
--muted: rgba(0, 0, 0, 0.62);
--accent: #6d28d9;
--border: rgba(0, 0, 0, 0.10);
--shadow: 0 12px 40px rgba(15, 23, 42, 0.14);
}
}
* {
box-sizing: border-box;
}
body {
margin: 0;
font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial,
"Apple Color Emoji", "Segoe UI Emoji";
line-height: 1.55;
background: radial-gradient(1200px 600px at 20% -10%, rgba(124, 58, 237, 0.28), transparent),
radial-gradient(900px 500px at 95% 10%, rgba(59, 130, 246, 0.18), transparent),
var(--bg);
color: var(--text);
}
.container {
max-width: 980px;
margin: 48px auto;
padding: 0 18px;
}
header {
padding: 22px 22px 18px;
border: 1px solid var(--border);
background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
border-radius: 16px;
box-shadow: var(--shadow);
}
h1 {
font-size: 26px;
margin: 0 0 6px;
letter-spacing: -0.01em;
}
.subtitle {
margin: 0;
color: var(--muted);
}
main {
margin-top: 18px;
display: grid;
gap: 14px;
}
section {
border: 1px solid var(--border);
background: var(--panel);
border-radius: 16px;
padding: 18px 18px 16px;
}
h2 {
margin: 0 0 10px;
font-size: 18px;
letter-spacing: -0.01em;
}
ul,
ol {
margin: 8px 0 0 18px;
padding: 0;
}
li {
margin: 6px 0;
}
code {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
font-size: 0.95em;
padding: 0.05em 0.35em;
border-radius: 8px;
border: 1px solid var(--border);
background: rgba(0, 0, 0, 0.18);
}
.pill {
display: inline-block;
padding: 0.12em 0.55em;
border-radius: 999px;
border: 1px solid var(--border);
background: rgba(124, 58, 237, 0.12);
color: var(--text);
font-weight: 650;
font-size: 12px;
vertical-align: middle;
}
.answer {
font-size: 16px;
margin: 0;
}
.answer strong {
color: var(--text);
}
</style>
</head>
<body>
<div class="container">
<header>
<h1>Jaki dApp jest najlepszy pod bota (Solana)?</h1>
<p class="subtitle">
Jeśli bot ma analizować dziesiątki rynków i generować sygnały wejścia na top 10, to
wybór “dAppa” zależy od tego, czy chcesz <strong>PERPS</strong> czy <strong>SPOT</strong>.
</p>
</header>
<main>
<section>
<h2>Najkrótsza odpowiedź <span class="pill">top choice</span></h2>
<p class="answer">
<strong>PERPS:</strong> Drift &nbsp;&nbsp; <strong>SPOT (egzekucja swapów):</strong>
Jupiter (a sygnały liczysz w swoim bocie)
</p>
</section>
<section>
<h2>Dlaczego “dApp do swapów” to za mało?</h2>
<ul>
<li>
“Sygnał” to nie przycisk w UI, tylko proces: dane → cechy → ranking → filtr kosztów →
decyzja.
</li>
<li>
Potrzebujesz stabilnego <strong>SDK/API</strong> do automatyzacji, a nie tylko
interfejsu dla człowieka.
</li>
<li>
Przy “top 10 z 50 rynków” kluczowe są koszty (spread/slippage/fees) i kontrola ryzyka
(limity ekspozycji), których UI zwykle nie gwarantuje.
</li>
</ul>
</section>
<section>
<h2>PERPS → Drift (najbardziej praktyczne pod bota)</h2>
<ul>
<li>Jeden spójny system perps: margin/health, funding, OI, mark vs oracle.</li>
<li>
Naturalny model bezpieczeństwa: authority (cold/Ledger) + delegate/hot key do tradingu.
</li>
<li>
Łatwiej zbudować ranking “okazji” między wieloma rynkami, bo metryki są porównywalne
(np. funding, basis, zmiana OI, momentum).
</li>
</ul>
</section>
<section>
<h2>SPOT → Jupiter (egzekucja), sygnał po Twojej stronie</h2>
<ul>
<li>
Jupiter jest świetny do wykonania swapów na wielu parach (routing + wycena slippage).
</li>
<li>
Ale Jupiter nie jest “silnikiem sygnałów” — sygnał i ranking robisz w swoim
<strong>collector/scorer</strong>.
</li>
<li>
Jeśli potrzebujesz limit orders na SPOT, zwykle dochodzi orderbook (Phoenix/OpenBook)
i robi się to bardziej złożone (cancel/replace, kolejka, częściowe fill).
</li>
</ul>
</section>
<section>
<h2>Jak wygląda sensowny podział systemu</h2>
<ol>
<li>
<strong>Dane</strong>: oracle (np. Pyth) + metryki DEX/perps + płynność/spread/depth.
</li>
<li>
<strong>Ranking</strong>: score = siła sygnału koszt (slippage/spread) ryzyko
(płynność, limity, zmienność).
</li>
<li><strong>Selekcja</strong>: wybór top 10 (z filtrami minimalnej jakości).</li>
<li>
<strong>Egzekucja</strong>: Drift (PERPS) albo Jupiter (SPOT) + risk manager przed
transakcją.
</li>
</ol>
</section>
<section>
<h2>Co musisz doprecyzować (żeby “najlepszy dApp” był jednoznaczny)</h2>
<ul>
<li>Chcesz sygnały pod <strong>PERPS</strong> czy <strong>SPOT</strong> (czy oba)?</li>
<li>Bot ma tylko sygnalizować, czy automatycznie wchodzić?</li>
<li>Interwał skanowania (np. 10s/30s/60s) i horyzont (intraday vs swing).</li>
<li>Docelowy rozmiar pozycji (bo koszt i slippage zależą od size).</li>
</ul>
<p class="subtitle" style="margin-top: 10px">
Tip: jeśli celem jest perps + top 10 sygnałów, zwykle wygrywa Drift; jeśli celem jest
czysty spot-execution, wygrywa Jupiter (ale sygnał nadal jest “Twój”).
</p>
</section>
</main>
</div>
</body>
</html>