<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>matt333</title><generator>teletype.in</generator><description><![CDATA[Дневник разработчика алгоритмических торговых систем на Python &amp; Stellar. Реальный опыт без маркетинга.]]></description><image><url>https://img4.teletype.in/files/fd/4e/fd4ecb31-5206-4257-97ac-1438b277c2d3.png</url><title>matt333</title><link>https://teletype.in/@matt333</link></image><link>https://teletype.in/@matt333?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/matt333?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/matt333?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Wed, 11 Nov 2026 18:26:54 GMT</pubDate><lastBuildDate>Wed, 11 Nov 2026 18:26:54 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@matt333/PFXLIN8bdRg</guid><link>https://teletype.in/@matt333/PFXLIN8bdRg?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/PFXLIN8bdRg?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>SDEX MM Bot — HODL 314 → 407 AQUA за 13 минут. Всё работает идеально</title><pubDate>Wed, 11 Nov 2026 16:42:02 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/05/75/0575de52-b962-4129-a52b-1892cf27b876.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img4.teletype.in/files/37/ee/37ee075a-3f8f-4c60-9d42-1eaf1c56535b.jpeg"></img>Очередной сильный рывок.]]></description><content:encoded><![CDATA[
  <figure id="h3AL" class="m_original">
    <img src="https://img4.teletype.in/files/37/ee/37ee075a-3f8f-4c60-9d42-1eaf1c56535b.jpeg" width="1168" />
  </figure>
  <p id="tixe">Очередной сильный рывок.</p>
  <p id="ANUz"><strong>Ключевые цифры (18:59 → 19:12)</strong></p>
  <figure id="Y7KD" class="m_original">
    <img src="https://img3.teletype.in/files/26/3f/263f384c-e525-45be-b199-2bc53944e3d4.png" width="660" />
  </figure>
  <h3 id="zh2V">Что произошло за 13 минут</h3>
  <p id="XP1x"><strong>1. Восстановление позиции</strong><br /> owned_share снизился с 53.78% до идеальных 50.03%. Бот продал часть XLM через ASK, когда рынок пошёл вверх. Механизм балансировки отработал точно.</p>
  <p id="d80I"><strong>2. HODL защищает уже 407 AQUA</strong><br /> Каждый подтверждённый profit сразу уходит в резерв. +93 AQUA за 13 минут активного рынка — это не mark-to-market, а реально защищённая прибыль. Даже при сильном проливе завтра эти 407 AQUA останутся.</p>
  <p id="Krlx"><strong>3. REPRICE работает чисто</strong><br /> Обе стороны выставлены на полную мощность (ASK 12.16 XLM / BID 7250 AQUA), scale = 1.0. Весь доступный капитал в деле.</p>
  <p id="k6Fg"><strong>4. Atomic removal сработал</strong><br /> При STRONG_UP (+11.77 bps) бот корректно снял ASK-заявки. В 18:59 был FAILED, сейчас — OK. Это правильное поведение: не продавать XLM в момент сильного роста.</p>
  <p id="ICf1"><strong>5. DISABLE_ASK — нормальная реакция</strong><br /> Рынок продолжает расти → ASK временно отключён, BID работает. Бот покупает на возможных откатах и не мешает росту. Через cooldown gate ASK вернётся, когда velocity нормализуется.</p>
  <h3 id="5YbH">Итог по всей сессии (с 10.11 22:54)</h3>
  <figure id="75ps" class="m_original">
    <img src="https://img3.teletype.in/files/e5/6f/e56f1d2a-b3da-43a5-90f0-6263654b1c6a.png" width="657" />
  </figure>
  <p id="vdmz">Stage 13.4 подтвердил свою эффективность: обе стороны работают, BID активен при слабости, ASK защищён при сильном росте. Adverse gate — не баг, а нужная защита.</p>
  <figure id="Uavk" class="m_original">
    <img src="https://img2.teletype.in/files/58/2a/582a5f86-7bbe-4962-8009-1e9281a4503f.png" width="838" />
  </figure>
  <h3 id="t6KU">Что дальше</h3>
  <p id="t4yT"><strong>Сейчас → вечер</strong><br /> Ничего не трогаем. Наблюдаем. Все ключевые индикаторы в зелёной зоне.</p>
  <p id="WN1s"><strong>Завтра утром (09:00–10:00 MSK)</strong></p>
  <ul id="TFJj">
    <li id="6TQ7">Stage 16 (mid с исключением своих ордеров)</li>
    <li id="ZEIG">Stage 17 (fee accounting)</li>
  </ul>
  <p id="WUTX"><strong>Послезавтра</strong><br /> Stage 18 (path_payment), затем чистка и оставшиеся доработки.</p>
  <p id="qeTJ">Бот в отличной форме. HODL растёт, баланс держится, защиты срабатывают. Даём работать.</p>
  <tt-tags id="IT7c">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/GVDFrdNOUkv</guid><link>https://teletype.in/@matt333/GVDFrdNOUkv?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/GVDFrdNOUkv?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>SDEX MM Bot — Пик формы: +105 AQUA realized, OUTPERFORM</title><pubDate>Wed, 11 Nov 2026 15:14:38 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/2d/82/2d82f855-5535-4d36-b96e-638603c32d9a.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img3.teletype.in/files/ea/69/ea6956c5-4aa8-4b9c-908c-b8c7e3017ee7.jpeg"></img>Бот сейчас работает на максимуме своих возможностей.]]></description><content:encoded><![CDATA[
  <figure id="o5nf" class="m_original">
    <img src="https://img3.teletype.in/files/ea/69/ea6956c5-4aa8-4b9c-908c-b8c7e3017ee7.jpeg" width="1168" />
  </figure>
  <p id="li2r">Бот сейчас работает на максимуме своих возможностей.</p>
  <figure id="amuJ" class="m_original">
    <img src="https://img4.teletype.in/files/bb/c1/bbc146f7-e222-4872-b122-396347830115.png" width="660" />
  </figure>
  <h3 id="SzyQ">Прямой APR</h3>
  <p id="02R2">За последние 2 часа активного рынка:</p>
  <ul id="L3VH">
    <li id="9RrK"><strong>+36.12 AQUA / 2ч = +18.06 AQUA/час</strong></li>
    <li id="UuS5">На портфеле ~191 290 AQUA → <strong>0.00944%/час</strong></li>
    <li id="80u8">Annualized: <strong>≈ 82.7% APR</strong></li>
  </ul>
  <p id="2teM">Ночью было тихо (~10.5% APR), днём рынок активный (82%).<br /> Средний по всей сессии ≈ <strong>17% APR</strong> — отличный результат для market maker.</p>
  <p id="uhqv">Для сравнения: банковские депозиты 3–5%, долгосрочный S&amp;P 500 ~10%, топовые DeFi-пулы обычно 5–15%.</p>
  <h3 id="jDjF">Что важно в цифрах</h3>
  <p id="sA4w"><strong>realized_gross = +105 AQUA</strong><br /> Это уже реализованная прибыль от fills, а не mark-to-market. За 2 часа бот закрыл позиции на +67 AQUA.</p>
  <p id="UHxU"><strong>HODL = 104.50</strong><br /> 55% прибыли защищено в резерве. Эти 104 AQUA не участвуют в BID. Даже если рынок завтра сильно просядет — они останутся.</p>
  <p id="NJj6"><strong>owned_share = 51.04%</strong><br /> В безопасной полосе 46–54%. IF_ALL_BID_FILL = 53.80% — чуть ниже hard cap. Бот автоматически снизил BID_scale (0.072 → 0.063). Защита работает.</p>
  <p id="RKgF"><strong>bot vs HODL = +86.39 (OUTPERFORM)</strong><br /> recon_ok=True. Сравнение валидно и подтверждено.</p>
  <p id="kXPg">Асимметрия fills корректна: бот активно продаёт при share &gt; 51%, восстанавливая баланс.</p>
  <h3 id="dCKh">Текущий статус</h3>
  <figure id="QHJO" class="m_original">
    <img src="https://img4.teletype.in/files/b8/02/b802e157-03e9-4a08-8b89-6046bcce7202.png" width="658" />
  </figure>
  <h3 id="i7o8">План</h3>
  <p id="5xvv"><strong>Сейчас → 18:30 MSK</strong> — ничего не трогаем. Чистый сбор статистики.</p>
  <figure id="Pt3y" class="m_original">
    <img src="https://img1.teletype.in/files/4c/9a/4c9ac03c-d2d3-40a0-9581-ef45f06ac512.png" width="659" />
  </figure>
  <h3 id="RhPZ">Итог</h3>
  <p id="LbOt">Бот работает на пике.<br /> +86 AQUA vs HODL за ~23 часа.<br /> Средний APR ~17%, на активном рынке — 82%.<br /> HODL-резерв защищён. OUTPERFORM подтверждён.<br /> Все системы в зелёной зоне.</p>
  <figure id="BBW7" class="m_original">
    <img src="https://img4.teletype.in/files/b3/c1/b3c192e8-4922-4680-8a77-87926620a1db.png" width="840" />
  </figure>
  <p id="pW64">Не трогать до вечера. Дать рынку наполнить кассу.</p>
  <tt-tags id="8oMA">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/W3u2sv63mWs</guid><link>https://teletype.in/@matt333/W3u2sv63mWs?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/W3u2sv63mWs?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>SDEX MM Bot — День 3–4: Почему 25 bps не работали и что изменилось на 40</title><pubDate>Mon, 09 Nov 2026 11:10:39 GMT</pubDate><media:content medium="image" url="https://img2.teletype.in/files/d1/50/d150fbef-8eb0-4153-bcdc-3f43f5235b94.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img4.teletype.in/files/33/d5/33d5886a-e228-41af-b8fb-de134469ea57.jpeg"></img>Два дня почти без обновлений. Не потому что бот стоял - наоборот. Шёл активный сбор данных и один важный эксперимент.]]></description><content:encoded><![CDATA[
  <figure id="rdid" class="m_original">
    <img src="https://img4.teletype.in/files/33/d5/33d5886a-e228-41af-b8fb-de134469ea57.jpeg" width="1168" />
  </figure>
  <p id="yCIX">Два дня почти без обновлений. Не потому что бот стоял - наоборот. Шёл активный сбор данных и один важный эксперимент.</p>
  <h3 id="NAmc">Коротко о том, где мы были</h3>
  <p id="1cmn">На 25 bps бот стабильно обгонял простой HODL (bot vs HODL уходил в плюс на 25–36 AQUA), но абсолютный realized PnL был глубоко отрицательным.</p>
  <p id="qUj5">Классическая картина: стратегия «лучше холда», но всё равно теряет деньги в абсолюте.</p>
  <p id="wYyX">Разбор сделок за 17 часов на 25 bps показал причину довольно ясно:</p>
  <ul id="flsL">
    <li id="oJxk">Захваченный спред получился отрицательным (<strong>–6.1 bps</strong>).</li>
    <li id="Kutd">Крупные fill’ы (&gt;1 XLM) имели особенно плохой edge.</li>
    <li id="OdSX">Adverse selection в среднем съедал ~2.2 bps на сделку.</li>
    <li id="2aSv">Бот net набирал XLM, часто покупая дороже, чем потом продавал.</li>
  </ul>
  <p id="Jidr"><strong>25 bps оказались слишком узкими</strong> для текущей токсичности потока на паре XLM/AQUA.</p>
  <h3 id="7jF2">Что сделали</h3>
  <p id="y3Oz">9 ноября перешли на фиксированные <strong>40 bps</strong> и сделали чистый baseline (новый T0).</p>
  <p id="KsPq">Результаты за первые ~5.5 часов:</p>
  <figure id="8Nw1" class="m_original">
    <img src="https://img3.teletype.in/files/61/41/6141cc07-e40a-4225-8da0-e00d130ca569.png" width="660" />
  </figure>
  <p id="wX5U">Знак realized перевернулся. Причём inventory при этом вернулся ближе к 50% - то есть это не просто «повезло с направлением рынка», а нормальный MM-цикл.</p>
  <h3 id="quH3">Что ещё видно</h3>
  <ul id="uDpR">
    <li id="tRw1">Спред 40 bps сейчас почти совпадает с рыночным (часто 37–39 bps). Бот стоит чуть снаружи, а не внутри.</li>
    <li id="ktEe">Inventory Guard отрабатывает корректно: при уходе к 48.9% ask’и отключаются, остаются только bids.</li>
    <li id="fnBx">Появился небольшой recon drift (<code>delta_xlm ≈ –0.00009</code>). На PnL это ~0.05 AQUA - косметика. Чинить в середине 24-часового теста не стали, чтобы не ломать continuity.</li>
  </ul>
  <figure id="Nqhu" class="m_original">
    <img src="https://img3.teletype.in/files/e8/83/e883b29a-6c92-401e-a8fc-e2d00d245bd1.png" width="1199" />
  </figure>
  <h3 id="S9iJ">Текущий статус эксперимента</h3>
  <p id="jYLo">Мы сознательно ничего не трогаем до завтрашнего контрольного замера (примерно 24 часа с момента перехода на 40 bps).</p>
  <p id="LaZc">Цель - получить чистые цифры по <code>exec_edge</code> и понять:</p>
  <ul id="JtcP">
    <li id="UZiU">Хватает ли 40 bps, чтобы стабильно перекрывать adverse selection.</li>
    <li id="9mDK">Или нужно идти ещё шире / добавлять асимметричный спред и size-multiplier от волатильности.</li>
  </ul>
  <p id="hWkr"><strong>Пока предварительный вывод простой:</strong><br /> 25 bps на этой паре - слишком агрессивно.<br /> 40 bps уже дают положительный realized edge при сохранении контроля над inventory.</p>
  <p id="HeMi">Завтра будут более точные цифры.</p>
  <tt-tags id="BHGQ">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/NaYHRR--6Da</guid><link>https://teletype.in/@matt333/NaYHRR--6Da?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/NaYHRR--6Da?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker - SHADOW №1: логика подтверждена</title><pubDate>Fri, 06 Nov 2026 15:00:04 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/7e/4b/7e4b2351-5a42-4a92-9e7d-40e2b1b51af4.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><tt:hashtag>shadowtest</tt:hashtag><description><![CDATA[<img src="https://img2.teletype.in/files/96/6d/966dca04-4ef6-4abf-8e91-d6a03434807d.jpeg"></img>Получили полноценный результат первого теневого эксперимента.
 SHADOW №1 прошёл проверку логики NORMAL / REBALANCE.
 Перед переносом в LIVE нужно дополнить систему учётом доступного инвентаря.
 И главное: за этот период SPREAD25 показал результат лучше простого удержания портфеля.]]></description><content:encoded><![CDATA[
  <figure id="pIWq" class="m_original">
    <img src="https://img2.teletype.in/files/96/6d/966dca04-4ef6-4abf-8e91-d6a03434807d.jpeg" width="1168" />
  </figure>
  <p id="pjI2">Получили полноценный результат первого теневого эксперимента.<br /> <strong>SHADOW №1 прошёл проверку логики NORMAL / REBALANCE.</strong><br /> Перед переносом в LIVE нужно дополнить систему учётом доступного инвентаря.<br /> И главное: за этот период SPREAD25 показал результат лучше простого удержания портфеля.</p>
  <h3 id="7z0x">1. InventoryMode — результат положительный</h3>
  <p id="Yest">За 3 часа 5 минут наблюдения:</p>
  <figure id="NxXT" class="m_original">
    <img src="https://img2.teletype.in/files/9f/71/9f715ec9-f36f-40c1-bf96-aa0d9cef5d23.png" width="348" />
  </figure>
  <p id="zwwf">Три полных цикла REBALANCE:</p>
  <figure id="NlsF" class="m_original">
    <img src="https://img1.teletype.in/files/49/61/49612aad-91d3-4a7d-bfe2-5dd3be741b04.png" width="312" />
  </figure>
  <p id="SRK4">Что особенно хорошо:</p>
  <ul id="M13f">
    <li id="bcVj">При избытке XLM уменьшался именно <strong>BID</strong></li>
    <li id="hSf4">ASK оставался на 100%</li>
    <li id="DTWV">При усилении перекоса ограничение становилось сильнее</li>
    <li id="vxBf">Возврат в NORMAL происходил без хаотичных переключений</li>
  </ul>
  <p id="2dn9">Самый показательный эпизод: при 70.07% XLM размер BID упал до 49.6%, после восстановления доли до 56.97% модель спокойно вернулась в NORMAL.</p>
  <p id="9Uni">PROTECT пока не проверен (максимум был 70.1%, порог — 75%).</p>
  <h3 id="vktr">2. Что реально сделал SPREAD25</h3>
  <p id="wkuh">Реальные исполнения на Stellar (не виртуальные решения):</p>
  <figure id="RtrR" class="m_original">
    <img src="https://img4.teletype.in/files/b2/06/b206b4db-b2f4-4ec3-ad8a-5c12409fe6ba.png" width="253" />
  </figure>
  <p id="GyrQ">Средние цены (VWAP):</p>
  <figure id="2H3K" class="m_original">
    <img src="https://img2.teletype.in/files/1d/a5/1da53221-2723-4730-8ba0-18f5bbe848fb.png" width="172" />
  </figure>
  <p id="ByAr">Хороший результат исполнения: средняя цена продажи заметно выше средней цены покупки.</p>
  <h3 id="Qqug">3. Изменение стоимости портфеля</h3>
  <figure id="L0vN" class="m_original">
    <img src="https://img2.teletype.in/files/db/c3/dbc3aa6d-7188-4726-84a5-bbdc2795fb7b.png" width="284" />
  </figure>
  <p id="wOtg"><strong>+40.06 AQUA</strong> (+0.1433% mark-to-market)</p>
  <p id="vnvY">Сравнение с пассивным удержанием:</p>
  <ul id="WXqL">
    <li id="Wqdp">Преимущество над удержанием начальных количеств: <strong>+27.21 AQUA</strong></li>
    <li id="ifIh">Дополнительные зачисления AQUA ≈ 5.20</li>
    <li id="bH82">Преимущество после их исключения: <strong>≈ +22.01 AQUA</strong></li>
  </ul>
  <p id="mtZv">Это предварительное преимущество торговой активности над Buy &amp; Hold. Не окончательная доказанная реализованная прибыль, но уже сильный позитивный сигнал.</p>
  <p id="wzg9">Балансовая сверка почти закрыта (остаток XLM −0.003 — скорее всего комиссии).</p>
  <h3 id="8NH2">4. Важный архитектурный вывод</h3>
  <p id="8tgR">Существующий Fill Guard уже контролирует не только общую долю XLM, но и <strong>доступный</strong> инвентарь с учётом открытых ордеров.</p>
  <p id="48Dt">Поэтому нельзя просто заменить старый Inventory Guard новым InventoryMode. Нужно чётко разделить слои:</p>
  <ul id="wNwL">
    <li id="q1kb"><strong>InventoryMode</strong> — экономическое направление (когда и насколько ограничивать покупки/продажи)</li>
    <li id="XQez"><strong>Fill Guard</strong> — техническая безопасность (доступные остатки + прогноз полного исполнения)</li>
    <li id="nQM5"><strong>Execution Layer</strong> — формирует реальные размеры ордеров только после прохождения обеих проверок</li>
  </ul>
  <p id="C0BG">Эти слои не должны отменять защиту друг друга.</p>
  <h3 id="sZWr">Вердикт и следующий этап</h3>
  <figure id="4OUx" class="m_original">
    <img src="https://img2.teletype.in/files/d9/88/d9882a13-2249-48ec-8968-f5c7df4747c7.png" width="539" />
  </figure>
  <p id="HcYt"><strong>Переходим к SHADOW №2</strong></p>
  <p id="a5Ld">Сохраняем фиксированный спред 25 bps и добавляем три механизма:</p>
  <ol id="MEfc">
    <li id="vBb2"><strong>Inventory Cost</strong> — учёт себестоимости XLM (новые покупки отдельно от старого остатка)</li>
    <li id="I1HS"><strong>Inventory Age</strong> — сколько времени каждая партия XLM находится в портфеле</li>
    <li id="nTtV"><strong>Markout</strong> — оценка качества исполнения через 1 / 5 / 15 минут после реальных сделок</li>
  </ol>
  <p id="QZUm">Это позволит понять не только то, что бот покупает дешевле, чем продаёт, но и действительно ли он выбирает удачные моменты и сколько капитала «замораживается» из-за долгого удержания инвентаря.</p>
  <p id="5e0v">SPREAD25 не трогаем. Динамический спред откладываем.</p>
  <tt-tags id="L6af">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
    <tt-tag name="shadowtest">#shadowtest</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/BAAqPhMslni</guid><link>https://teletype.in/@matt333/BAAqPhMslni?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/BAAqPhMslni?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker — результаты за 12.2 часа</title><pubDate>Thu, 05 Nov 2026 07:25:12 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/32/04/3204dd7e-5487-4e17-bcf3-b46595e40526.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img1.teletype.in/files/09/b7/09b73d61-9df9-4e27-8214-6da42736a972.jpeg"></img>Разбор очередного контрольного периода после пополнения капитала.]]></description><content:encoded><![CDATA[
  <figure id="Mm2o" class="m_original">
    <img src="https://img1.teletype.in/files/09/b7/09b73d61-9df9-4e27-8214-6da42736a972.jpeg" width="1168" />
  </figure>
  <p id="Oc1j">Разбор очередного контрольного периода после пополнения капитала.</p>
  <figure id="xFMC" class="m_original">
    <img src="https://img3.teletype.in/files/e0/05/e0051a4e-9f0a-4b87-8296-1d4f2f69eada.png" width="219" />
  </figure>
  <p id="dUg5">Почти три четверти времени бот котировал обе стороны. Это заметно лучше, чем сразу после пополнения.</p>
  <figure id="crmx" class="m_original">
    <img src="https://img2.teletype.in/files/1e/fa/1efa2904-5894-4c02-b671-7916514c0900.png" width="474" />
  </figure>
  <p id="tq6E">3. Поток и результат</p>
  <figure id="4wFD" class="m_original">
    <img src="https://img3.teletype.in/files/e7/8c/e78c37a5-d867-4a6f-873a-5ad661daa99d.png" width="456" />
  </figure>
  <p id="u5bt">При цене ≈ 598–600 AQUA/XLM:</p>
  <ul id="51Lp">
    <li id="ICcx">8698 AQUA ≈ 14.52 XLM</li>
    <li id="VGRu">Итого после комиссий — <strong>почти ноль</strong> (очень слабый плюс).</li>
  </ul>
  <h3 id="KpxE">4. Поведение инвентаря</h3>
  <p id="XbFs">Бот по-прежнему ходит от одного края band (30%) к другому (70%), но уже не зависает на одной стороне надолго. Маятник остаётся, но амплитуда стала управляемее.</p>
  <h3 id="DXTp">Итоговая оценка периода</h3>
  <figure id="SLIK" class="m_original">
    <img src="https://img4.teletype.in/files/bc/70/bc70a4a7-ff03-483a-941f-c53a5db986af.png" width="556" />
  </figure>
  <h3 id="B7cA">Вывод</h3>
  <p id="HPIW">После пополнения бот стал заметно стабильнее — почти ¾ времени обе стороны в рынке.<br /> Чистый результат пока около нуля.<br /> Капитала уже хватает, чтобы не сидеть постоянно на одной стороне, но запас всё ещё тонкий для совсем спокойной работы без крайних перекосов.</p>
  <p id="QCKE"><strong>Рекомендация на сейчас:</strong><br /> Не добавлять капитал.<br /> Понаблюдать ещё один такой же период (10–12 часов) и сравнить те же метрики.<br /> Если доля времени с обеими сторонами удержится выше 70%, а P&amp;L будет стабильно около нуля или лучше — тогда можно будет решать, стоит ли наращивать позицию.</p>
  <p id="DbAG">Параметры не трогаем.</p>
  <tt-tags id="Eb7H">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/SKTzQ8sxgTO</guid><link>https://teletype.in/@matt333/SKTzQ8sxgTO?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/SKTzQ8sxgTO?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker — сверка закрыта, первая полезная оценка эффективности</title><pubDate>Wed, 04 Nov 2026 17:26:46 GMT</pubDate><media:content medium="image" url="https://img2.teletype.in/files/d0/c6/d0c67587-3d9e-4bb1-bf12-0b52a5bb0061.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img1.teletype.in/files/85/19/85197515-b401-4e35-a6b3-8843dbf92f3d.jpeg"></img>Хорошие новости по двум направлениям.]]></description><content:encoded><![CDATA[
  <figure id="1SUj" class="m_original">
    <img src="https://img1.teletype.in/files/85/19/85197515-b401-4e35-a6b3-8843dbf92f3d.jpeg" width="1168" />
  </figure>
  <p id="d0wK">Хорошие новости по двум направлениям.</p>
  <h3 id="QX2D">1. Контрольный интервал полностью сверен</h3>
  <p id="tySU">Период 4 ноября 08:57:48 – 09:18:39 UTC закрыт без остаточного расхождения.</p>
  <p id="ryB8"><strong>Комиссии нашего кошелька:</strong></p>
  <figure id="xHhd" class="m_original">
    <img src="https://img1.teletype.in/files/80/57/80575b55-2715-42b9-8b88-9a8f8ba11430.png" width="384" />
  </figure>
  <p id="vwNC">Сверка XLM:</p>
  <figure id="epoj" class="m_original">
    <img src="https://img2.teletype.in/files/9d/27/9d27dedd-5624-42ae-9d54-3cf89a5e3376.png" width="282" />
  </figure>
  <p id="Eo7E">Сверка AQUA:</p>
  <figure id="QMBs" class="m_original">
    <img src="https://img1.teletype.in/files/80/9d/809d731f-671a-4b83-b379-6b9254c654c4.png" width="292" />
  </figure>
  <p id="0og0">21 сделка + 1 входящий перевод + 4 комиссии нашего аккаунта полностью объясняют движение балансов. Необъяснённой потери средств в этом интервале нет.</p>
  <p id="gFxY">Это важный методологический результат: при правильном учёте стороны сделки, переводов и комиссий сверка сходится до нуля.</p>
  <h3 id="CovZ">2. Первая полезная оценка эффективности стратегии</h3>
  <p id="g5t4">Теперь по более длинному периоду появилась действительно рабочая картина.</p>
  <p id="6Ggl"><strong>Средние цены:</strong></p>
  <ul id="eYFt">
    <li id="8tbo">Средневзвешенная цена BUY XLM: <strong>595.546870 AQUA</strong></li>
    <li id="av0u">Средневзвешенная цена SELL XLM: <strong>596.001985 AQUA</strong></li>
    <li id="2zRQ">Разница: <strong>+7.642 bps</strong></li>
  </ul>
  <p id="pCpB">Валовой ценовой дифференциал положительный. Средняя цена продажи выше средней цены покупки — хороший сигнал для маркет-мейкера. Пока это ещё не чистая прибыль (сделки происходили в разное время), но направление правильное.</p>
  <p id="gocS">Бот закончил период с чуть меньшим XLM и большим AQUA. Поэтому оценивать результат только по количеству монет нельзя — нужна рыночная оценка остаточной позиции.</p>
  <p id="FA25"><strong>Комиссии:</strong> 0.0350077 XLM (по 528 транзакциям).</p>
  <p id="4CBf"></p>
  <h3 id="ZV8z">Промежуточный вердикт</h3>
  <figure id="FHoy" class="m_original">
    <img src="https://img1.teletype.in/files/0d/d7/0dd71fcd-bf3c-4a1a-b3e0-c3e91646e50c.png" width="423" />
  </figure>
  <p id="pS45">Оснований объявлять стратегию убыточной нет. Но и объявлять прибыльной до полной оценки инвентаря рано.</p>
  <h3 id="XRU3">Что осталось в Этапе 2</h3>
  <p id="0RRF">Три ключевых расчёта:</p>
  <ol id="zZ4w">
    <li id="rH1d"><strong>Realized P&amp;L</strong> — результат завершённых циклов с учётом комиссий</li>
    <li id="oEcN"><strong>Unrealized P&amp;L</strong> — рыночная стоимость остаточного инвентаря</li>
    <li id="3Rww"><strong>Buy &amp; Hold</strong> — сколько стоил бы тот же стартовый портфель без торговли</li>
  </ol>
  <p id="Jv6P">Rewards учитываем отдельной строкой.</p>
  <p id="oo5t">Торговые параметры не меняем (Spread 20 bps, Target 50%, Band 30–70%, Cooldown 60 сек).</p>
  <p id="rRCB">Следующий шаг — собрать единый P&amp;L-отчёт с оценкой портфеля на начало и конец. После этого можно будет наконец ответить на главный вопрос: приносит ли SDEX Market Maker экономическую прибыль после всех расходов.</p>
  <tt-tags id="bLBR">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/TV4ip88eoUP</guid><link>https://teletype.in/@matt333/TV4ip88eoUP?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/TV4ip88eoUP?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker - сверка дорожной карты (4 ноября)</title><pubDate>Wed, 04 Nov 2026 06:53:07 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/c8/55/c855f835-93da-4e69-a894-b2f7c921ff54.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img2.teletype.in/files/9b/46/9b468bf0-92a3-4514-9b0b-299e01c85941.jpeg"></img>Сверил фактическое состояние бота с дорожной картой. Главный вывод: мы уже хорошо продвинулись по Этапу 1, но пока не закрыли его полностью. Переходить к настройке стратегии или тем более к ML/RL пока рано.]]></description><content:encoded><![CDATA[
  <figure id="ttsk" class="m_original">
    <img src="https://img2.teletype.in/files/9b/46/9b468bf0-92a3-4514-9b0b-299e01c85941.jpeg" width="1168" />
  </figure>
  <p id="H74V">Сверил фактическое состояние бота с дорожной картой. Главный вывод: мы уже хорошо продвинулись по Этапу 1, но пока не закрыли его полностью. Переходить к настройке стратегии или тем более к ML/RL пока рано.</p>
  <h3 id="r4dh">Подготовительный этап — техническая надёжность</h3>
  <figure id="BK2o" class="m_original">
    <img src="https://img1.teletype.in/files/8e/ec/8eece1c7-ac78-4de3-823c-da6c0b12cafd.png" width="461" />
  </figure>
  <p id="aWQb">По технической части сейчас нет причин что-то менять.</p>
  <h3 id="Jdxr">Этап 1. Execution Ledger — выполнен частично</h3>
  <p id="Yc7L">Уже есть восстановленный файл sdex_fills_merged.csv:</p>
  <ul id="FwLD">
    <li id="uCO1">3095 уникальных исполнений</li>
    <li id="EkvS">Период: 2 ноября 19:11 — 4 ноября 04:36 UTC</li>
    <li id="GDHG">Есть offer_id, сторона, объёмы, цена, timestamp, transaction hash, operation ID</li>
    <li id="qH5z">Дубликатов нет</li>
  </ul>
  <figure id="Uwiu" class="m_original">
    <img src="https://img2.teletype.in/files/19/d2/19d24a2e-90de-482b-ab06-cb434f7a65a3.png" width="362" />
  </figure>
  <p id="93hG">Важно: комиссия списывается за транзакцию, а не за каждое исполнение внутри неё. Поэтому нельзя вычитать одну и ту же комиссию из каждой строки Fill Ledger.</p>
  <p id="nLW9"><strong>Что осталось по Этапу 1:</strong></p>
  <ol id="wxr3">
    <li id="INt1">Обновить историю исполнений после 04:36 UTC</li>
    <li id="XSpC">Проверить полноту данных через Horizon</li>
    <li id="DbS0">Связать transaction_hash с реально списанными комиссиями</li>
    <li id="umsl">Проверить частичные исполнения</li>
    <li id="aFoy">Сделать постоянный автоматический Execution Ledger (чтобы не восстанавливать вручную)</li>
  </ol>
  <h3 id="ljHa">Этап 2. Измерение эффективности — данные есть, расчёты не завершены</h3>
  <p id="dpHb">Уже известно:</p>
  <figure id="oYDo" class="m_original">
    <img src="https://img3.teletype.in/files/a7/2d/a72d6e91-bf6a-46da-a771-072e90120ab5.png" width="237" />
  </figure>
  <p id="2SjI">Окончательный P&amp;L пока не посчитан. Старый pnl_report.py использует неправильный файл и упрощённую формулу.</p>
  <p id="aJNO">Нужно корректно посчитать:</p>
  <ul id="5bce">
    <li id="0NJa">фактически заработанный спред</li>
    <li id="qW4R">средние цены покупки/продажи</li>
    <li id="iZta">комиссии в едином эквиваленте</li>
    <li id="R0sA">проскальзывание</li>
    <li id="ebW3">прибыль по завершённым циклам</li>
    <li id="8qDx">нереализованный результат открытой позиции</li>
    <li id="oLsk">rewards отдельно от торговой прибыли</li>
    <li id="a6OK">сравнение с Buy &amp; Hold</li>
  </ul>
  <h3 id="ZZHJ">Этап 3 и 4 — пока не трогаем</h3>
  <p id="RlZG">Параметры оставляем без изменений:</p>
  <ul id="3DNk">
    <li id="4lhY">Target 50%</li>
    <li id="0BD1">Inventory Band 30–70%</li>
    <li id="DIf7">Insurance 18 XLM / 1200 AQUA</li>
    <li id="B1mi">Spread 20 bps</li>
    <li id="BU8O">Cooldown 60 сек</li>
  </ul>
  <p id="urr6">К экспериментам со спредом, размерами уровней и тем более к ML/RL переходим только после качественной статистики Этапа 2.</p>
  <h3 id="JK2l">Что делаем дальше (приоритеты)</h3>
  <ol id="MoiK">
    <li id="jIVc">Завершить восстановление истории исполнений</li>
    <li id="2QKD">Довести Execution Ledger до конца (комиссии + частичные исполнения)</li>
    <li id="p2ul">Сделать корректный P&amp;L-отчёт</li>
    <li id="0x2r">Наблюдать на текущих параметрах</li>
    <li id="vA1s">Только потом — экономическая оценка и возможные изменения стратегии</li>
    <li id="Cp1k">ML/RL и Walk-Forward - в самом конце, когда накопится чистая история</li>
  </ol>
  <p id="TTim"><strong>Итог:</strong><br /> Техническая надёжность уже на хорошем уровне. Сейчас самое важное - превратить поток сделок в полноценный финансовый журнал. Иначе мы видим сотни исполнений и rewards, но до сих пор не знаем точную цифру: сколько бот реально заработал после всех издержек.</p>
  <p id="fLeS">Следующий конкретный шаг - продолжить работу с recover_and_merge.py, обновить историю и закрыть Этап 1.</p>
  <p id="r9mg">Торговые настройки не трогаем.</p>
  <tt-tags id="FaH4">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/jxND834Og6N</guid><link>https://teletype.in/@matt333/jxND834Og6N?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/jxND834Og6N?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker - разбор 6 часов и критический баг</title><pubDate>Tue, 03 Nov 2026 07:29:04 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/3f/ee/3fee8068-d675-4845-983b-029b6e3121c9.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img2.teletype.in/files/db/1f/db1fe748-55cc-4dd0-88a2-78b4b23adbf8.jpeg"></img>Проанализировал шестичасовой период работы маркет-мейкера. Картина получилась показательной: есть признаки рабочего ценового преимущества, но существенной чистой прибыли пока нет. И главное - обнаружен конкретный сбой защиты XLM, который важнее любой оптимизации доходности.]]></description><content:encoded><![CDATA[
  <figure id="t9yz" class="m_original">
    <img src="https://img2.teletype.in/files/db/1f/db1fe748-55cc-4dd0-88a2-78b4b23adbf8.jpeg" width="1168" />
  </figure>
  <p id="f2pi">Проанализировал шестичасовой период работы маркет-мейкера. Картина получилась показательной: есть признаки рабочего ценового преимущества, но существенной чистой прибыли пока нет. И главное - обнаружен конкретный сбой защиты XLM, который важнее любой оптимизации доходности.</p>
  <h3 id="ghPs">1. Качество данных</h3>
  <p id="FQVb">Сначала очистил статистику от дублей:</p>
  <p id="Yyer"></p>
  <figure id="49Bw" class="m_original">
    <img src="https://img1.teletype.in/files/c0/e3/c0e38bb8-0772-48df-8902-e7de5d4a9d0e.png" width="436" />
  </figure>
  <p id="TqwC">39 точных повторов в исполнениях и 8 в транзакциях. Без очистки статистика сильно искажалась бы (лишние 5,17 XLM продаж и 0,97 XLM покупок).</p>
  <p id="f69N">Есть и неполнота: CSV с исполнениями обрывается в 05:27 UTC, а журнал бота идёт до 09:24. Последние ~57 минут периода в файл не попали. Именно в конце этого окна произошёл заметный сдвиг балансов (XLM вырос, AQUA упал), которого нет в fills.</p>
  <h3 id="Srtr">2. Качество исполнения</h3>
  <figure id="2bK2" class="m_original">
    <img src="https://img4.teletype.in/files/73/cd/73cdadae-8b78-41e1-a3c0-a3bba25e6d0c.png" width="446" />
  </figure>
  <p id="U2bQ">Средняя цена продажи выше средней цены покупки на <strong>0,40 AQUA/XLM</strong> (~6,66 bps).</p>
  <p id="yoY5">Ещё интереснее сравнение с предыдущим mid:</p>
  <ul id="50ur">
    <li id="Sppu">Покупки XLM исполнялись в среднем на <strong>+11,55 bps</strong> лучше предыдущего mid</li>
    <li id="RDOt">Продажи XLM - на <strong>+8,28 bps</strong> лучше</li>
  </ul>
  <p id="wMvk">Это хороший сигнал: котировки в целом дают ожидаемое ценовое преимущество. Пока нет оснований сужать или расширять спред 20 bps.</p>
  <h3 id="TuAo">3. Финансовый результат</h3>
  <p id="loK6">Оценка торгового капитала бота:</p>
  <ul id="k26f">
    <li id="iB7B">Начало периода: ≈ 7250,22 AQUA</li>
    <li id="xfrs">Конец периода: ≈ 7252,91 AQUA</li>
    <li id="mqG3">Изменение: <strong>+2,69 AQUA</strong></li>
  </ul>
  <p id="NBqa">Полная оценка портфеля по рынку даёт примерно от +1,84 до +4,96 AQUA на капитале ~19 142 AQUA. Это <strong>+0,01–0,03%</strong>.</p>
  <p id="7R7O">Стратегия за эти шесть часов была близка к безубыточной. Есть качество исполнения, но пока нет убедительной чистой доходности.</p>
  <h3 id="sY2r">4. Критический баг: пробит страховой пол XLM</h3>
  <p id="CUjq">Это главный вывод анализа.</p>
  <p id="4O9l">В 09:08:47 бот выставил ASK на 3,9914 XLM.<br /> Уже через 10 секунд расчёт показал:</p>
  <figure id="84hm" class="m_original">
    <img src="https://img1.teletype.in/files/c1/55/c155bae5-ad33-4fd8-8fcf-491313493ece.png" width="574" />
  </figure>
  <p id="5Vk0">Предупреждение было, но ASK оставался в рынке. Только через минуту бот решил отключить ASK, а к 09:10:11 фактический баланс уже составлял <strong>17,70 XLM</strong> - ниже установленного минимума 18.</p>
  <p id="2Zkt">Ниже пола бот пробыл в семи подряд снимках.</p>
  <p id="eEoM"><strong>Что нужно исправить</strong><br /> Проверка должна быть жёсткой и учитывать не только текущий баланс, но и весь открытый ASK:</p>
  <figure id="iUez" class="m_original">
    <img src="https://img4.teletype.in/files/f5/37/f5374cde-7633-4e95-9f4c-1088a0b28f58.png" width="352" />
  </figure>
  <p id="aUCH">Если условие нарушается — ASK нужно блокировать или немедленно сокращать. Одного предупреждения в логе недостаточно.</p>
  <h3 id="Gify">5. Перекос инвентаря</h3>
  <p id="4b9I">Доля XLM в торговом капитале снизилась с 65% до 58% - движение в сторону целевых 50%.<br /> Но при полном исполнении всех открытых ордеров проекция уходит до 43% и ниже (в одном снимке даже до 37%).</p>
  <p id="yan4">Текущая защита 30–70% слишком широкая. Нужно лучше контролировать сценарий «если исполнятся все заявки».</p>
  <h3 id="Bz19">6. Инфраструктура</h3>
  <p id="4lk4">За период:</p>
  <ul id="s86f">
    <li id="pxuz">57 успешных перестановок</li>
    <li id="ulXy">5 неуспешных транзакций</li>
    <li id="ZNom">Несколько переключений Horizon и две паузы из-за рассинхронизации снимков</li>
    <li id="h32n">Failover и реконсиляция отработали, бот не остановился</li>
  </ul>
  <p id="VbUs">Работает, но идеальной стабильности ещё нет.</p>
  <h3 id="O6VL">Приоритеты</h3>
  <ol id="8ukL">
    <li id="3htU"><strong>Обязательно</strong> - исправить защиту страхового остатка XLM (учитывать ASK liability).</li>
    <li id="mwTC">Усилить контроль сценария полного исполнения сетки относительно целевой доли 50%.</li>
    <li id="qGhi">Только после этого заново оценивать прибыльность на полных данных.</li>
  </ol>
  <p id="VRuP">Параметры (спред 20 bps, cooldown 60 сек, три уровня) пока не трогаем.</p>
  <p id="Tqm6">Итог: ценовое преимущество есть, чистой прибыли пока почти нет, а вот дыра в защите XLM - реальная и требует немедленного закрытия.</p>
  <tt-tags id="yDml">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/ZPcmVmhOARs</guid><link>https://teletype.in/@matt333/ZPcmVmhOARs?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/ZPcmVmhOARs?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. SDEX Market Maker — обновление состояния</title><pubDate>Mon, 02 Nov 2026 10:30:14 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/6a/c5/6ac59c49-2c12-409d-a936-457298ae98b6.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><description><![CDATA[<img src="https://img1.teletype.in/files/06/4d/064d791d-a306-4f21-b269-e8579fa202c6.jpeg"></img>Прошло несколько часов после запуска. Разбираем, что происходит на самом деле.]]></description><content:encoded><![CDATA[
  <figure id="AAP2" class="m_original">
    <img src="https://img1.teletype.in/files/06/4d/064d791d-a306-4f21-b269-e8579fa202c6.jpeg" width="1168" />
  </figure>
  <p id="R37f">Прошло несколько часов после запуска. Разбираем, что происходит на самом деле.</p>
  <h3 id="x6Pn"></h3>
  <figure id="0NtN" class="m_original">
    <img src="https://img2.teletype.in/files/d1/b1/d1b15cfe-8dc7-49c0-bb2d-00d7419a5582.png" width="1358" />
  </figure>
  <p id="OLDB">Реальные балансы</p>
  <p id="HEee">XLM <strong>26.25</strong> / AQUA <strong>3460</strong> — стабильно.</p>
  <p id="1Ryl">Ранее мелькавшая цифра 27.08 оказалась устаревшим кэшем Lobstr. К 12:54 данные синхронизировались, и баланс вернулся к реальному значению. Никакого «слива» или аномалии не было.</p>
  <h3 id="xwGH">Текущее состояние ордеров</h3>
  <figure id="mjvS" class="m_original">
    <img src="https://img1.teletype.in/files/83/09/8309bc0f-00fc-4e3d-882d-a677ebc10007.png" width="417" />
  </figure>
  <p id="LalZ">Floors в порядке:</p>
  <ul id="gjBq">
    <li id="bLlT">XLM free ≈ 12.62 ✅</li>
    <li id="Fn7V">AQUA free ≈ 1336 ✅</li>
  </ul>
  <h3 id="AOqA">Активность за 24 часа</h3>
  <ul id="b9Hh">
    <li id="XPs1"><strong>Rewards</strong>: 9.21 AQUA — стабильно капают</li>
    <li id="lW5A"><strong>Fills</strong>: в основном BID (около 200 мелких сделок)</li>
    <li id="com9">Последний fill: 08:17 (более 4,5 часов назад)</li>
    <li id="Ly39">ASK fills в видимом окне практически отсутствуют</li>
  </ul>
  <p id="d2El">Рынок заметно затих. Bid-ы продолжают изредка исполняться мелкими объёмами, Ask стоит выше рынка и ждёт покупателя, готового заплатить премию +0.3%.</p>
  <h3 id="wGRp">Почему XLM почти не вырос</h3>
  <p id="9Jfr">Несмотря на 200 bid-филлов, прирост XLM минимальный. Причины:</p>
  <ol id="Ax2y">
    <li id="wtOo">Филлы очень мелкие (в среднем доли XLM).</li>
    <li id="x9rd">Часть более ранних ask-филлов могла произойти за пределами 24-часового окна.</li>
    <li id="WNKr">Возможны path_payment-сделки, которые не всегда корректно отражаются в стандартной выдаче /trades.</li>
  </ol>
  <p id="oRMB">В любом случае текущий баланс 26.25 XLM выглядит устойчивым и согласованным.</p>
  <h3 id="p6ki">Вывод</h3>
  <p id="caE9">Бот работает штатно:</p>
  <ul id="nL61">
    <li id="kZFu">Обе стороны рынка представлены</li>
    <li id="IOqL">Защитные floors держатся</li>
    <li id="zznW">Rewards продолжают начисляться</li>
    <li id="94ms">Инфраструктура (Ledger Guard + Horizon failover) отрабатывает без сбоев</li>
  </ul>
  <figure id="xocd" class="m_original">
    <img src="https://img4.teletype.in/files/b6/5d/b65da9ad-d20a-46c0-998e-bded0a9e6e74.png" width="1331" />
  </figure>
  <p id="TWqw">Ask не заполняется — это нормальная ситуация для маркет-мейкера. Ордера стоят чуть выше рынка и ждут своего покупателя. Когда цена подойдёт к 599–600, цикл закроется, AQUA вернётся, и бот продолжит работу.</p>
  <p id="90Os">Пока ничего не трогаем. Ждём статистики по более длинному окну и первым полноценным двусторонним циклам.</p>
  <tt-tags id="rM1V">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
  </tt-tags>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@matt333/ESwCj63rnlx</guid><link>https://teletype.in/@matt333/ESwCj63rnlx?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333</link><comments>https://teletype.in/@matt333/ESwCj63rnlx?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=matt333#comments</comments><dc:creator>matt333</dc:creator><title>Дневник. Новый проект: SDEX Market Maker v1.0</title><pubDate>Mon, 02 Nov 2026 07:05:07 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/41/e2/41e21375-c235-4d86-924e-3db7884cac09.png"></media:content><tt:hashtag>stellar</tt:hashtag><tt:hashtag>xlm</tt:hashtag><tt:hashtag>aqua</tt:hashtag><tt:hashtag>sdex</tt:hashtag><tt:hashtag>marketmaker</tt:hashtag><tt:hashtag>algotrading</tt:hashtag><tt:hashtag>liquidity</tt:hashtag><description><![CDATA[<img src="https://img1.teletype.in/files/88/e8/88e880f0-68f6-41cd-9eba-1dda4e6de553.jpeg"></img>Пока грид-бот по XLM/USDC продолжает свою работу, стартовал второй проект — маркет-мейкер на SDEX для пары XLM/AQUA.]]></description><content:encoded><![CDATA[
  <figure id="TNSK" class="m_original">
    <img src="https://img1.teletype.in/files/88/e8/88e880f0-68f6-41cd-9eba-1dda4e6de553.jpeg" width="1168" />
  </figure>
  <p id="0mvh">Пока грид-бот по XLM/USDC продолжает свою работу, стартовал второй проект — маркет-мейкер на SDEX для пары <strong>XLM/AQUA</strong>.</p>
  <p id="TIlF">Цель простая и прагматичная: предоставлять двустороннюю ликвидность и зарабатывать AQUA-rewards, которые раздаёт экосистема за предоставление объёма в стакане.</p>
  <h3 id="DAq4">Что делает бот</h3>
  <ul id="zvGa">
    <li id="yUUw"><strong>Ask</strong> — продаёт XLM за AQUA выше mid</li>
    <li id="tBK9"><strong>Bid</strong> — покупает XLM за AQUA ниже mid</li>
  </ul>
  <p id="3QqJ">Три уровня с каждой стороны, спред ±0.30% от mid, расстояние между уровнями 0.15%. Перестановка ордеров происходит атомарно (cancel + place в одной транзакции), когда mid уходит больше чем на 15 bps.</p>
  <h3 id="MWFV">Ключевые параметры на старте</h3>
  <figure id="Qo10" class="m_original">
    <img src="https://img3.teletype.in/files/6a/c3/6ac3d0d4-8ef4-4a1e-9651-21baaabce1cb.png" width="279" />
  </figure>
  <h3 id="xv7m">Главное — инфраструктурная надёжность</h3>
  <p id="2q6s">В боте заложена серьёзная защита, потому что Horizon иногда ведёт себя нестабильно:</p>
  <ul id="Qexq">
    <li id="3vgs"><strong>Multi-Horizon failover</strong>: LOBSTR → STELLAR → ANKR</li>
    <li id="94F7">Чтение предпочитает LOBSTR, все записи идут <strong>только</strong> через официальный STELLAR</li>
    <li id="Rkof"><strong>Ledger Guard</strong> — бот не отправляет транзакцию, если снимки балансов, офферов и стакана несогласованы или устарели</li>
    <li id="3Jxi">Полная реконсиляция транзакций по хешу (никаких слепых ретраев)</li>
    <li id="tjBi">Pending-транзакция блокирует новые записи до выяснения исхода</li>
  </ul>
  <p id="V2f9">Это не «ещё один простой бот». Это попытка сделать устойчивого маркет-мейкера, который переживает проблемы с API и не создаёт дублей ордеров.</p>
  <h3 id="wiGw">Первый запуск (02.11.2026)</h3>
  <p id="jEQE">Бот успешно стартовал, выставил 6 ордеров и за примерно 37 минут стабильной работы после последних переключений Horizon показал:</p>
  <ul id="3Hc6">
    <li id="6MDn">2 успешные атомарные перестановки</li>
    <li id="l5Ls">Ни одного падения</li>
    <li id="z2Ri">Ledger Guard корректно останавливал торговлю при плохих снимках и возобновлял после восстановления</li>
    <li id="WiEA">Балансы не менялись — реальных исполнений пока не было</li>
  </ul>
  <p id="O4kZ">Последний статус на момент анализа:</p>
  <ul id="Iz6e">
    <li id="4KEJ">XLM ≈ 27.08</li>
    <li id="oYeV">AQUA ≈ 2962</li>
    <li id="FERh">Mid ≈ 598.25</li>
  </ul>
  <h3 id="hLQn">Что дальше</h3>
  <p id="uD8i">Пока ничего не трогаю. Менять спред (на 40 или 80 bps) или делать его асимметричным имеет смысл только после появления статистики реальных исполнений:</p>
  <ul id="Qt1a">
    <li id="F5KN">Сколько bid/ask реально срабатывает</li>
    <li id="cR3r">Как меняется баланс AQUA</li>
    <li id="cywV">Какая чистая прибыль после комиссий</li>
    <li id="WygF">Сколько rewards начисляется</li>
  </ul>
  <p id="lqww">Сейчас важнее всего подтвердить, что инфраструктура держит нагрузку и корректно переживает проблемы Horizon. Это уже видно.</p>
  <p id="KZJf">Следующий важный этап — дождаться первых сделок и посмотреть, как бот ведёт себя после исполнения ордеров.</p>
  <p id="Ypoa">Новый проект официально в лайве.<br /> Наблюдаем.</p>
  <tt-tags id="iDVs">
    <tt-tag name="stellar">#stellar</tt-tag>
    <tt-tag name="xlm">#xlm</tt-tag>
    <tt-tag name="aqua">#aqua</tt-tag>
    <tt-tag name="sdex">#sdex</tt-tag>
    <tt-tag name="marketmaker">#marketmaker</tt-tag>
    <tt-tag name="algotrading">#algotrading</tt-tag>
    <tt-tag name="liquidity">#liquidity</tt-tag>
  </tt-tags>

]]></content:encoded></item></channel></rss>