← Back to home

EchoKitty

EchoKitty is a multi-chain copy trading protocol, which introduces a permission-less way to mimic the trading strategies of any on-chain wallet. It ensures real-time execution with an ultra efficient botnet as well as trust-less depositing and swapping of funds.

Screenshots

EchoKitty screenshot 1
EchoKitty screenshot 2
EchoKitty screenshot 3
EchoKitty screenshot 4
EchoKitty screenshot 5
EchoKitty screenshot 6

Problem Statement

This EchoKitty project is a trustless and permissionless protocol that allows users to copy trade any other wallet address. Copy trading, being popular in traditional finance, is not a new phenomenon but it has yet to garner significant traction in crypto. Currently existing projects limit users to only copy trading a small, curated group of wallets. EchoKitty addresses these limitations and allows ANY wallet address, on integrated networks or chains, to be copy traded. In order to achieve this EchoKitty utilizes extensive filters which users can set on their copy trade positions. These filters ensure that only the right transactions trigger a copy trade and also help protect the copied user from taking advantage of the copier. After selecting a wallet to copy and adding filters, a user can then set an allowance for how much of their current balance should be traded in the event a copy trade is triggered. Once these steps are completed the user will now be automatically copy trading their selected wallet address when triggered. Copy traders on EchoKitty can view their open positions, along with their transaction history and PnL.EchoKitty avoids over productization and enables users to take advantage of their on-chain knowledge. EchoKitty doesn't provide users with the best addresses to copy trade. Rather, we leave this up to the user while giving them the proper tools and filtering to create their own, personalized, copy trading positions.

Solution

EchoKitty achieves permission-less copy trading by combining three key elements:Four smart contracts supporting mainnet, gnosis and polygon network for holding funds and executing the copy trades on 1inch (which can be easily extended to any DEX)An off-chain botnet monitoring the target addresses and initiating the copy tradesA react based front-end to request target wallet’s token balances and provide an intuitive user interfaceAt the basis of the protocol are four smart contracts (1 detailed):A wallet factory contract creating a smart wallet for every user: https://polygonscan.com/address/0x88865532AB232aab74C69FEb0409A00133d053d8The resulting smart wallet contract that holds deposited funds and spins off a sub wallet for each new address that will be copied: https://polygonscan.com/address/0x458dabe0140dacda264718edc317ff4d07f6b288The sub wallet contract that receives the funds allocated to a specific target address, listens to the trade data provided by the botnet and executes swaps on 1inch: https://polygonscan.com/address/0x134f52bc06ea1e40552ab5d6a56a77f57e578b2cAn authorization registry which allows people to tightly control the permissions of who can execute the swaps: https://polygonscan.com/address/0xF4277421bDA6a2E1C36b827fbf9F817A8d573888The contracts were created and deployed with foundry.The off-chain botnet for real-time copy trading (2 detailed):Monitors wallets by scanning and analysing the latest blocksIdentifies trades and gathers the relevant trade detailsSends the details to the subwallet in order to executes swapsHosted on FirebaseFront-end built with React / Redux (3 detailed):useDapp was used for web3 integrationsProvides an user friendly interaction with the smart contractsFetches target wallet’s initial token balance (using Covalent API)Visualises balances, P&L and other addresses performance[Important - the GitHub repo link points to our smart contract repo. Use: https://github.com/echokitty to see all three; smart contracts, webapp and botnet repos]

Hackathon

ETHGlobal Tokyo

2024

Prizes

  • 🏆

    🏊‍♂️ Polygon — Pool Prize

Contributors