Skip to main content
Radion reads the logs from every Polymarket contract on Polygon. It turns those raw logs into a clean, typed event stream. That stream is what we use to rebuild trades, track positions, watch markets resolve, and compute trader PnL.

Source

Every event on this page comes from one of 18 Polymarket contracts on Polygon. These are the contracts Radion watches for logs.

Exchanges

Order fills, matches, fees, and the order lifecycle.
ContractAddress
CTFExchange (v1)0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E
CTFExchange (v2)0xE111180000d2663C0091e4f400237545B87B996B
NegRiskCTFExchange (v1)0xC5d563A36AE78145C45a50134d48A1215220f80a
NegRiskCTFExchange (v2)0xe2222d279d744050d28e00520010520000310F59
Combos Exchange0xe3333700cA9d93003F00f0F71f8515005F6c00Aa

Conditional tokens and collateral

Position splits, merges, redemptions, and ERC-1155 transfers at the base layer.
ContractAddress
ConditionalTokens (CTF)0x4D97DCd97eC945f40cF65F87097ACe5EA0476045
CtfCollateralAdapter0xAdA100Db00Ca00073811820692005400218FcE1f
NegRiskCtfCollateralAdapter0xadA2005600Dec949baf300f4C6120000bDB6eAab

Market setup and resolution

NegRisk market setup, outcome reporting, and UMA oracle resolution.
ContractAddress
NegRiskAdapter0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296
UMAAdapter0x6A9D222616C90FcA5754cd1333cFD9b7fb6a4F74
UMAOptimisticOracle0xCB1822859cEF82Cd2Eb4E6276C7916e692995130

Modules and redemption

Binary, neg-risk, and combinatorial modules, plus automatic redemption and combos position transfers.
ContractAddress
AutoRedeemer0xa1200000d0002264C9a1698e001292D00E1b00af
BinaryModule0x1000008dD9001B968442c1000017eaE6E0dA00Ba
NegRiskModule0x200000900045e3B6259600682756002200028933
CombinatorialModule0x30000034706C7d8e12009DAB006Be20000c031A8
PositionManager0x006F54F7f9A22e0000CC2AB60031000000ae9fEF

Wallet factories

Deposit wallet and Gnosis Safe proxy creation.
ContractAddress
DepositWalletFactory0x00000000000Fb5C9ADea0298D729A0CB3823Cc07
Gnosis Safe ProxyFactory0xaacfeea03eb1561c4e67d661e40682bd20e3541b

Adapter contracts

Some of these contracts are adapters. An adapter wraps Polymarket’s base ConditionalTokens (CTF) protocol and adds market-specific logic on top. The base CTF contract is generic. It only knows conditions, positions, and payouts. It does not know about neg-risk markets, fees, or how a market resolves. Adapters fill that gap:
  • CtfCollateralAdapter and NegRiskCtfCollateralAdapter handle collateral. They split and merge positions and redeem them into collateral, so trades settle in USDC instead of raw CTF positions.
  • NegRiskAdapter runs neg-risk markets. It prepares markets and questions, reports outcomes, and converts exposure across neg-risk outcomes.
  • UMAAdapter connects markets to the UMA optimistic oracle. It initializes questions, applies results, and handles pauses and emergency resolution.
Each adapter emits its own events. That is why Radion decodes both the base CTF events and the adapter events. Together they show the full path of a position: how it is created, moved, and resolved.

What we decode

AreaEventsWhy it matters
TradesOrderFilledV1, OrderFilledV2, OrdersMatchedV1, OrdersMatchedV2, FeeChargedV1, FeeChargedV2, OrderCancelled, OrderPreapproved, OrderPreapprovalInvalidated, TradingPaused, TradingUnpaused, TokenRegisteredFull order lifecycle across exchange v1 and v2.
RedemptionsRedemption, BinaryRedemption, NegRiskRedemption, PositionsRedeemedAll paths by which positions are redeemed into collateral.
Collateral operationsCollateralPositionSplit, CollateralPositionsMerged, CollateralPositionsConvertedCollateral-layer splits, merges, and neg-risk conversions.
Conditional tokensConditionPreparation, ConditionResolution, CtfPositionSplit, CtfPositionsMerge, CtfPayoutRedemption, TransferSingle, TransferBatchBase CTF layer: position creation, merging, redemption, and transfer.
NegRisk adapterMarketPrepared, NegRiskQuestionPrepared, OutcomeReported, NegRiskPositionsConvertedNegRisk market setup and outcome reporting.
UMA resolution16 events across UMAAdapter and UMAOptimisticOracleFull oracle lifecycle: initialization, proposals, disputes, settlements, pauses, emergency resolution.
Module lifecycleEventPrepared, ResultReported, PositionRedeemed, ModulePositionsMerged, ModulePositionsSplit, HorizontalMerge, HorizontalSplit, PositionConverted, ConditionResolved, ResolutionPaused, ResolutionUnpaused, ResolverPaused, ResolverUnpausedBinary and NegRisk module operation and resolution control.
Bridge and migrationBridgePositionMinted, BridgePositionsBurned, LegacyCollateralSettled, MigrationConditionRegistered, MigrationResolved, PositionMigratedCross-module bridge and v1→v2 migration flows.
CombinatorialCombinatorialConditionPrepared, Compressed, ConvertedToYesBasket, Extracted, Injected, MergedFromYesBasket, MergedOnCondition, SplitOnCondition, CombinatorialWrapped, CombinatorialUnwrappedCombinatorial market operations.
Wallet factoriesWalletDeployed, ProxyCreationDeposit wallet and Gnosis Safe proxy creation.

Event reference

Trades and order lifecycle

Shared across CTFExchange v1/v2 and NegRiskCTFExchange v1/v2.
EventRoleContract
OrderFilledV1Records an executed fill on exchange v1. Carries maker, taker, asset ids, amounts, and fee. Primary trade event for v1 markets.CTFExchange / NegRiskCTFExchange (v1)
OrderFilledV2Records an executed fill on exchange v2. Adds side, builder, and metadata fields compared to v1. Primary trade event for v2 markets.CTFExchange / NegRiskCTFExchange (v2)
OrdersMatchedV1Records the matched order pair around a v1 execution. Explains how taker intent matched maker liquidity.CTFExchange / NegRiskCTFExchange (v1)
OrdersMatchedV2Records the matched order pair around a v2 execution. Includes side and tokenId.CTFExchange / NegRiskCTFExchange (v2)
FeeChargedV1Records exchange fees on v1. Separates gross trading volume from fee impact.CTFExchange / NegRiskCTFExchange (v1)
FeeChargedV2Records exchange fees on v2. Simplified to receiver and amount.CTFExchange / NegRiskCTFExchange (v2)
OrderCancelledRecords a canceled order by its hash. Useful for understanding liquidity that disappeared before execution.CTFExchange / NegRiskCTFExchange (v1)
OrderPreapprovedRecords a v2 order preapproval. Supports authorization context for orders that can later execute.CTFExchange / NegRiskCTFExchange (v2)
OrderPreapprovalInvalidatedRecords invalidated v2 order preapprovals. Shows when preapproved order intent becomes unusable.CTFExchange / NegRiskCTFExchange (v2)
TokenRegisteredMaps exchange-tradable token ids (token0, token1) back to a condition id. Required to connect fills to markets.CTFExchange / NegRiskCTFExchange (v1)
TradingPausedRecords when an exchange operator pauses trading. Signals periods of suspended execution.CTFExchange / NegRiskCTFExchange (v2)
TradingUnpausedRecords when trading resumes after a pause.CTFExchange / NegRiskCTFExchange (v2)

Redemptions

EventRoleContract
RedemptionRecords an AutoRedeemer redemption. Tracks automatic position settlement.AutoRedeemer
BinaryRedemptionRecords a BinaryModule redemption. Tracks binary market position settlement.AutoRedeemer
NegRiskRedemptionRecords a NegRiskModule redemption. Tracks neg-risk position settlement.AutoRedeemer
PositionsRedeemedRecords collateral-adapter level redemption: initiator, condition, outcome amounts, and payout. Connects resolved conditions to realized collateral flows.CtfCollateralAdapter / NegRiskCtfCollateralAdapter

Collateral operations

Shared between CtfCollateralAdapter and NegRiskCtfCollateralAdapter.
EventRoleContract
CollateralPositionSplitRecords collateral split into outcome positions. Identifies position creation at the collateral-adapter layer.CtfCollateralAdapter / NegRiskCtfCollateralAdapter
CollateralPositionsMergedRecords outcome positions merged back at the collateral layer. Identifies position closing before redemption.CtfCollateralAdapter / NegRiskCtfCollateralAdapter
CollateralPositionsConvertedRecords NegRisk collateral conversion between outcome positions. Tracks equivalent exposure moving across neg-risk token structures.NegRiskCtfCollateralAdapter

Conditional token base layer

Events emitted by the ConditionalTokens (CTF) contract and the CtfCollateralAdapter.
EventRoleContract
ConditionPreparationRecords a new condition being prepared. Connects condition id to oracle, question id, and outcome slot count.ConditionalTokens
ConditionResolutionRecords final payout numerators for a condition. Defines how a resolved condition distributes collateral.ConditionalTokens
CtfPositionSplitRecords collateral split into conditional token positions at the CTF base layer.ConditionalTokens
CtfPositionsMergeRecords conditional token positions merged at the CTF base layer.ConditionalTokens
CtfPayoutRedemptionRecords redemption of conditional tokens into payout collateral at the CTF base layer.ConditionalTokens
TransferSingleRecords one ERC-1155 conditional-token transfer. Tracks individual position-token movement between wallets.ConditionalTokens / PositionManager
TransferBatchRecords multiple ERC-1155 transfers in one transaction. Needed when positions move as a batch.ConditionalTokens / PositionManager

NegRisk adapter

EventRoleContract
MarketPreparedRecords neg-risk market setup. Connects a market id to its oracle, fee, and preparation metadata.NegRiskAdapter
NegRiskQuestionPreparedRecords neg-risk question setup. Connects a question to its market id and index.NegRiskAdapter
OutcomeReportedRecords a reported neg-risk outcome. Provides resolution context for neg-risk markets.NegRiskAdapter
NegRiskPositionsConvertedRecords neg-risk position conversion at the adapter layer. Tracks exposure moving across neg-risk token structures.NegRiskAdapter

UMA resolution — UMAAdapter

EventRoleContract
UmaAdapterQuestionInitializedRecords initialization of a UMA-resolved question.UMAAdapter
UmaAdapterQuestionResolvedRecords final resolution of a UMA question.UMAAdapter
UmaAdapterQuestionEmergencyResolvedRecords an emergency override resolution. Signals admin intervention outside normal dispute flow.UMAAdapter
UmaAdapterQuestionFlaggedRecords a question flagged for review.UMAAdapter
UmaAdapterQuestionPausedRecords a UMA question paused mid-lifecycle.UMAAdapter
UmaAdapterQuestionUnpausedRecords a paused UMA question resuming.UMAAdapter
UmaAdapterQuestionResetRecords a question reset back to initialized state.UMAAdapter
UmaAdapterAncillaryDataUpdatedRecords updated ancillary data for a question.UMAAdapter

UMA resolution — UMAOptimisticOracle

EventRoleContract
UmaOptimisticQuestionInitializedRecords initialization of an optimistic oracle question.UMAOptimisticOracle
UmaOptimisticQuestionResolvedRecords final resolution via the optimistic oracle.UMAOptimisticOracle
UmaOptimisticQuestionPausedRecords an optimistic oracle question paused.UMAOptimisticOracle
UmaOptimisticQuestionUnpausedRecords an optimistic oracle question unpaused.UMAOptimisticOracle
UmaOptimisticQuestionSettledRecords a question settled after dispute window.UMAOptimisticOracle
UmaOptimisticResolutionDataRequestedRecords a resolution data request being submitted.UMAOptimisticOracle
UmaOptimisticQuestionUpdatedRecords an update to an optimistic oracle question.UMAOptimisticOracle
UmaOptimisticQuestionFlaggedForAdminResolutionRecords a question escalated to admin resolution.UMAOptimisticOracle

Module lifecycle

Events from BinaryModule and NegRiskModule.
EventRoleContract
EventPreparedRecords a new event prepared in a module.BinaryModule / NegRiskModule
ResultReportedRecords a result reported to a module.BinaryModule / NegRiskModule
PositionRedeemedRecords a position redeemed through a module.BinaryModule / NegRiskModule
ModulePositionsMergedRecords positions merged within a module.BinaryModule / NegRiskModule
ModulePositionsSplitRecords positions split within a module.BinaryModule / NegRiskModule
HorizontalMergeRecords a NegRisk horizontal merge across outcomes. Tracks multi-outcome position collapsing.NegRiskModule
HorizontalSplitRecords a NegRisk horizontal split across outcomes.NegRiskModule
PositionConvertedRecords a position converted within the NegRisk module.NegRiskModule
ConditionResolvedRecords a condition resolved within the module system.BinaryModule / NegRiskModule
ResolutionPausedRecords resolution paused for a module. Signals that market resolution is temporarily blocked.BinaryModule / NegRiskModule
ResolutionUnpausedRecords resolution unpaused.BinaryModule / NegRiskModule
ResolverPausedRecords the resolver paused at the module level.BinaryModule / NegRiskModule
ResolverUnpausedRecords the resolver unpaused.BinaryModule / NegRiskModule

Bridge and migration

EventRoleContract
BridgePositionMintedRecords a bridge position minted. Tracks cross-module bridging flows.BinaryModule / NegRiskModule
BridgePositionsBurnedRecords bridge positions burned on the source side.BinaryModule / NegRiskModule
LegacyCollateralSettledRecords settlement of legacy collateral during migration.BinaryModule / NegRiskModule
MigrationConditionRegisteredRecords a condition registered for migration.BinaryModule / NegRiskModule
MigrationResolvedRecords a migration resolved.BinaryModule / NegRiskModule
PositionMigratedRecords a position migrated across module versions.BinaryModule / NegRiskModule

Combinatorial markets

EventRoleContract
CombinatorialConditionPreparedRecords a new combinatorial condition prepared.CombinatorialModule
CompressedRecords positions compressed in the combinatorial module.CombinatorialModule
ConvertedToYesBasketRecords positions converted into a yes basket.CombinatorialModule
ExtractedRecords positions extracted from a combinatorial structure.CombinatorialModule
InjectedRecords positions injected into a combinatorial structure.CombinatorialModule
MergedFromYesBasketRecords positions merged out of a yes basket.CombinatorialModule
MergedOnConditionRecords a merge scoped to a single condition within a combinatorial market.CombinatorialModule
SplitOnConditionRecords a split scoped to a single condition within a combinatorial market.CombinatorialModule
CombinatorialWrappedRecords positions wrapped in the combinatorial module.CombinatorialModule
CombinatorialUnwrappedRecords positions unwrapped in the combinatorial module.CombinatorialModule

Wallet factories

EventRoleContract
WalletDeployedRecords a new deposit wallet deployed via DepositWalletFactory. Connects wallet address to owner and implementation.DepositWalletFactory
ProxyCreationRecords a new Gnosis Safe proxy deployed. Tracks smart-wallet creation for institutional participants.Gnosis Safe ProxyFactory
Last modified on July 5, 2026