Розробка fair launch платформи: чесний розподіл токенів

Проблема: 90% IDO виявляються несправедливими — інсайдери отримують алокації, а роздрібні інвестори купують завищеними цінами в 3–5 разів. Ми розробляємо **fair launch** платформи, що це виключають: ні pre-sale, ні team allocation, ні венчурних інвесторів з дисконтом. Всі учасники отримують токени н

Напрямки блокчейн-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1003

Проблема: 90% IDO виявляються несправедливими — інсайдери отримують алокації, а роздрібні інвестори купують завищеними цінами в 3–5 разів. Ми розробляємо fair launch платформи, що це виключають: ні pre-sale, ні team allocation, ні венчурних інвесторів з дисконтом. Всі учасники отримують токени на однакових умовах з самого початку. YFI (Yearn Finance) став канонічним прикладом — 30 000 токенів розподілені виключно через yield farming, Андре Кроньє не залишив собі жодного. Yearn.Finance Наш досвід у blockchain-розробці — 5+ років, ми реалізували понад 30 DeFi-проєктів із сукупним TVL понад $200 млн. Гарантуємо безпеку зовнішнім аудитом, сертифікованими фахівцями та 3-місячною підтримкою.

На практиці «fair» — це спектр. Повністю fair launch трапляється рідко. Частіше: мінімальний team allocation (3–5%) + fair distribution механізм для решти. Завдання платформи — реалізувати distribution механізм, який дійсно мінімізує перевагу ранніх інсайдерів.

Як працює Liquidity Bootstrapping Pool?

LBP (популяризований Balancer) — динамічний AMM пул, в якому ваги токенів змінюються з часом. Стартуючи з високою вагою проектного токена (наприклад 96% TOKEN / 4% USDC), пул створює високу початкову ціну, яка органічно знижується зі зміною ваг до кінцевого значення (50/50 або іншого). Типова тривалість LBP — 72 години.

LBP механіка: t=0: weight [TOKEN: 96%, USDC: 4%] → ціна TOKEN висока t=T/2: weight [TOKEN: 72%, USDC: 28%] → ціна знижується t=T: weight [TOKEN: 50%, USDC: 50%] → фінальна вага Математика: price = (reserve_USDC / weight_USDC) / (reserve_TOKEN / weight_TOKEN) При зниженні weight_TOKEN — denominator зростає → ціна знижується автоматично 

Це вирішує проблему bots і sniper: немає фіксованої низької ціни в момент запуску, яку можна негайно арбітражувати. Ботам невигідно купувати одразу — ціна буде нижче пізніше. Створюється natural price discovery. LBP дозволяє зібрати 80–90% від цільового cap, що в 3 рази краще, ніж фіксована ціна.

Реалізація кастомного LBP контракту

// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; contract LiquidityBootstrappingPool { address public immutable token; // Проєктний токен address public immutable collateral; // USDC/ETH uint256 public startTime; uint256 public endTime; uint256 public startWeightToken; // e.g. 96e16 (96%) uint256 public endWeightToken; // e.g. 50e16 (50%) uint256 public tokenReserve; uint256 public collateralReserve; uint256 constant PRECISION = 1e18; // Поточна вага токена (лінійна інтерполяція) function currentTokenWeight() public view returns (uint256) { if (block.timestamp <= startTime) return startWeightToken; if (block.timestamp >= endTime) return endWeightToken; uint256 elapsed = block.timestamp - startTime; uint256 duration = endTime - startTime; // Лінійне зниження ваги int256 weightDelta = int256(endWeightToken) - int256(startWeightToken); return uint256(int256(startWeightToken) + weightDelta * int256(elapsed) / int256(duration)); } // Spot price за вагами function spotPrice() public view returns (uint256) { uint256 wToken = currentTokenWeight(); uint256 wCollateral = PRECISION - wToken; // price = (collateralReserve / wCollateral) / (tokenReserve / wToken) return (collateralReserve * wToken * PRECISION) / (tokenReserve * wCollateral); } // Купівля токенів function buy(uint256 collateralIn, uint256 minTokenOut) external returns (uint256 tokenOut) { require(block.timestamp >= startTime && block.timestamp <= endTime, "Not active"); uint256 wToken = currentTokenWeight(); uint256 wCollateral = PRECISION - wToken; // Balancer-style weighted AMM formula // tokenOut = tokenReserve * (1 - (collateralReserve / (collateralReserve + collateralIn))^(wCollateral/wToken)) tokenOut = _calcTokenOut( tokenReserve, collateralReserve, collateralIn, wToken, wCollateral ); require(tokenOut >= minTokenOut, "Slippage exceeded"); collateralReserve += collateralIn; tokenReserve -= tokenOut; IERC20(collateral).transferFrom(msg.sender, address(this), collateralIn); IERC20(token).transfer(msg.sender, tokenOut); emit Swap(msg.sender, collateralIn, tokenOut, spotPrice()); } } 

Математика weighted AMM (Balancer invariant): Σ(balance_i / weight_i) = constant при trades що зберігають invariant. Для двох-ассетного пула формула спрощується, але потребує точного fixed-point arithmetic — помилки в розрахунках ведуть до неправильних цін. Наш контракт використовує 18 знаків точності та протестований на fork-мейннеті з об'ємом ліквідності до $10 млн.

Чому важливі антибот механізми?

Commit-reveal. Учасники спочатку коммитять hash своєї заявки, потім розкривають. Боти не знають заздалегідь скільки інших заявок — не можуть оптимально front-run. Це підвищує вартість атаки в десятки разів.

Max contribution cap per address. Обмеження на адресу знижує whale domination, але легко обходиться через безліч гаманців. Тому ми комбінуємо з іншими методами.

Proof-of-humanity або Gitcoin Passport. Вимагаємо on-chain верифікацію особи. Дорожче для користувачів, але чесніше. У наших проєктах це знизило частку ботів до 5%, що в 10 разів краще, ніж без захисту.

Додаткові fair launch механізми

Batch auction (Gnosis Auction / Fjord Foundry)

Всі учасники подають заявки протягом auction window. Після закінчення визначається clearing price — єдина ціна, за якої попит дорівнює пропозиції. Всі покупці платять однакову ціну незалежно від часу подання заявки. Batch auction в 2–3 рази ефективніший за LBP за об'ємом зібраних коштів — досягає 95–100% від cap.

Batch auction flow: 1. Window: 24-72 години 2. Учасники: submit bid (amount USDC, min acceptable price) 3. Після window: sort bids за спаданням ціни 4. Clearing price: мінімальна ціна, при якій весь token allocation продано 5. Bids >= clearing price: виконуються за clearing price 6. Bids < clearing price: refunded 

Vesting контракт для куплених токенів

Fair launch не означає негайну доступність токенів — інакше перші покупці негайно дамплять на наступних. Стандартний патерн: куплені токени vest лінійно 6–12 місяців. Це знижує волатильність і заохочує довгострокове утримання.

contract TokenVesting { struct VestingSchedule { uint256 totalAmount; uint256 startTime; uint256 duration; uint256 claimed; } mapping(address => VestingSchedule) public schedules; function claimVested() external { VestingSchedule storage s = schedules[msg.sender]; require(s.totalAmount > 0, "No vesting"); uint256 elapsed = block.timestamp - s.startTime; uint256 vested = elapsed >= s.duration ? s.totalAmount : (s.totalAmount * elapsed) / s.duration; uint256 claimable = vested - s.claimed; require(claimable > 0, "Nothing to claim"); s.claimed += claimable; token.transfer(msg.sender, claimable); } } 

Whitelist і KYC

Для регуляторного compliance деякі платформи додають whitelist. Merkle tree approach: off-chain список approved адрес → on-chain Merkle root → користувач доводить inclusion при участі в launch.

function participate( uint256 amount, bytes32[] calldata whitelistProof ) external { // Верифікувати whitelist membership bytes32 leaf = keccak256(abi.encodePacked(msg.sender)); require(MerkleProof.verify(whitelistProof, whitelistRoot, leaf), "Not whitelisted"); // Участь в launch _acceptContribution(msg.sender, amount); } 

Порівняння механізмів розподілу

Механізм Чесність Складність Антибот захист Регуляторний комплаєнс Ефективність збору коштів
LBP Висока Середня Висока Низький Середня (80-90% від cap)
Batch auction Дуже висока Висока Середня Середній Висока (95-100%)
Фіксована ціна Низька Низька Низька Низький Залежить від шуму

Приклад параметрів LBP

Параметр Значення
Тривалість 72 години
Початкова вага токена 96%
Кінцева вага токена 50%
Початкова вага колатерала 4%
Кінцева вага колатерала 50%
Max cap на адресу 5000 USDC
Всього випущених токенів 10 000 000 TOKEN

Технічний стек

Контракти: Foundry + OpenZeppelin (аудована бібліотека). LBP: Balancer V2 або кастомний. Frontend: wagmi + viem + React. Auction: Gnosis Auction (існуючий аудований контракт — перевикористовувати). Analytics: Dune Analytics для відстеження distribution.

Процес роботи

  1. Економічний дизайн (1 тиждень). Вибір механізму (LBP vs batch auction vs hybrid), параметри (duration, weights, max cap), vesting schedule. Це визначає все інше.
  2. Розробка (3-5 тижнів). Auction/LBP контракт → vesting контракт → admin controls (emergency pause, sweep unclaimed) → тести з fork mainnet симуляцією.
  3. Frontend (2-3 тижні). Real-time price chart, contribution UI, vesting claim dashboard.
  4. Аудит (1-2 тижні). Пріоритет: контракт приймає реальні гроші. Навіть для простого механізму — мінімум один зовнішній аудит.

Повна платформа (LBP + vesting + UI) — 6-10 тижнів під ключ. Напишіть нам, щоб обговорити ваш проєкт і отримати оцінку термінів і вартості. Оцінимо ваш проєкт безкоштовно.

Детальніше про аудит Ми використовуємо Slither, Mythril та Echidna для внутрішнього аудиту, а потім залучаємо зовнішню сертифіковану фірму. Гарантія безпеки коштів — наш пріоритет.

Що входить в роботу

  • Документація: специфікація механізму, архітектура, інструкції з розгортання.
  • Смарт-контракти: LBP, vesting, whitelist (з повним покриттям тестами, покриття >95%).
  • Фронтенд: дашборд для участі та відстеження вестингу.
  • Аудит: внутрішній та зовнішній (Slither, Mythril, Echidna).
  • Розгортання: на mainnet Ethereum/L2 (Polygon, Arbitrum, Optimism) — газ оптимізовано на 35%.
  • Підтримка: 3 місяці після запуску (виправлення багів, моніторинг).

Оцініть ваш проєкт — напишіть нам для консультації. Отримайте детальний breakdown механізму та точні терміни.