🌊🔄StreamSwap launch
Tracking users' activity in the first stream of the StreamSwap protocol
Unlike instant token swaps that occur in an AMM pool, StreamSwap facilitates token swaps over a fixed period of time. This presents a new opportunity for the Cosmos ecosystem and DeFi in general, which has yet to be fully realized.
The working mechanism of StremSwap consists of 4 different phases:
1)Stream Creation
The streamer locks tokens, sets duration and treasury account to create the stream, and bootstrapping starts right away Bootstrapping Phase
2)Bootstrapping Phase
Subscribers can deposit and withdraw deposited tokens to receive shares for a fair start. No swaps occur, so users can join anytime during this phase Streaming Phase
3)Streaming Phase
Tokens to stream and Tokens to subscribe get swapped while streaming at each other over the set duration of the Stream Redeem
4)Redeem
Subscribers can redeem their swapped tokens, at the end of the Stream after all streaming is completed.
Compared to LBPv1, StreamSwap offers several advantages:
-
No collateral token required: StreamSwap eliminates the need for a collateral token, simplifying the process for users.
-
Distinct primary and secondary markets: StreamSwap separates the primary market from the secondary market, providing more flexibility and control to users.
-
MEV resistance: StreamSwap is resistant to Miner Extractable Value (MEV) because transactions occur between blocks, as opposed to when the block is produced.(Source)
OmniFlix Network was the first streamer in StreamSwap! The protocol launched its native token, $FLIX with the help of StreamSwap and users were able to participate in the $FLIX launch by depositing $OSMO tokens in the $OSMO/$FLIX stram pool. In this dashboard, I'm going to track the $FLIX launch process and user activity in the 1st stream of StreamSwap.
To track StreamSwap''s 1st stream related transactions I used ATTRIBUTE_KEY = 'stream_id'
and ATTRIBUTE_VALUE = '1'
in osmosis.core.fact_msg_attributes
table.
Also, I used ATTRIBUTE_KEY = 'action'
and ATTRIBUTE_VALUE = 'subscribe_pending'
to find $OSMO depositing actions and ATTRIBUTE_VALUE = 'exit_stream'
for $FLIX claiming actions.
For finding swaps and transfers activty I used $FLIX token's contract (ibc/CEE970BB3D26F4B907097B6B660489F13F3B0DA765B83CC7D9A0BC0CE220FA6F
) on osmosis.core.fact_swaps
and osmosis.core.fact_transfers
tabels.