Package Logo
polymarket-neg-risk-ctf
polymarket-neg-risk-ctf@v0.7.0
Total Downloads
5
Published
1 hours ago
Network
polygon polygon
Publisher
User Avatar colindickson

Readme

Polymarket Negative Risk CTF Substreams Package

Substreams package for extracting events from the Polymarket Negative Risk Conditional Tokens Framework contract on Polygon.

Contract Information

  • Address: 0xe2222d279d744050d28e00520010520000310F59
  • Network: Polygon
  • Explorer: View on Polygonscan

Available Modules

Module Description Output Type
map_trading_events Extracts trading events proto:polymarket.neg_risk_ctf.v1.TradingEvents
map_fee_events Extracts fee-related events proto:polymarket.neg_risk_ctf.v1.FeeEvents
map_admin_events Extracts admin role events proto:polymarket.neg_risk_ctf.v1.AdminEvents
map_pause_events Extracts user pause events proto:polymarket.neg_risk_ctf.v1.PauseEvents
map_approval_events Extracts order approval events proto:polymarket.neg_risk_ctf.v1.OrderApprovalEvents
map_all_events Extracts all negative risk CTF events proto:polymarket.neg_risk_ctf.v1.AllEvents

Quick Start

Build the WASM binary:

make build-neg-risk
# or
cd polymarket-neg-risk-ctf && substreams build

Create the Substreams package:

make package-neg-risk
# or
cd polymarket-neg-risk-ctf && substreams pack

Run the Substreams:

make run-neg-risk
# or
substreams run substreams.yaml map_all_events \
  --network polygon \
  --start-block -1000

Event Types

The package extracts the following V2 event categories:

Trading Events

  • OrderFilled - Order filled (with side uint8, token_id, builder, metadata)
  • OrdersMatched - Orders matched (with side uint8, token_id)

Fee Events

  • FeeCharged - Protocol fee collected (recipient, amount)
  • FeeReceiverUpdated - Fee receiver address changed
  • MaxFeeRateUpdated - Maximum fee rate changed

Admin Events

  • NewAdmin - New admin added
  • NewOperator - New operator added
  • RemovedAdmin - Admin removed
  • RemovedOperator - Operator removed

Pause Events

  • UserPaused - User paused from trading
  • UserUnpaused - User unpaused
  • UserPauseBlockIntervalUpdated - Pause interval changed

Order Approval Events

  • OrderPreapproved - Order preapproved
  • OrderPreapprovalInvalidated - Order preapproval invalidated

Dependencies

  • substreams: ^0.7
  • substreams-ethereum: ^0.11
  • ethabi: ^18

Binary Output

Build artifacts: target/wasm32-unknown-unknown/release/polymarket_neg_risk_ctf.wasm

Documentation

Modules

Maps icon
Maps

map
map_trading_events

03ae53019c07bd2edb4c171777d7c21f83f44c10
map map_trading_events (
blocksf.ethereum.type.v2.Block
)  -> polymarket.neg_risk_ctf.v1.TradingEvents
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_trading_events

map
map_fee_events

32d1a07315c6fe102eacfdacd7e22092c70c7046
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_fee_events

map
map_admin_events

c56c96fdcca4c0a369035a6b36b3ff2e7fbd8f5c
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_admin_events

map
map_pause_events

a5b89310b2bfcb6fb2e6a70f1fd18cf7856cfe7c
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_pause_events

map
map_approval_events

6b872d8fe56edfc0e52c0af8f9068cad9bda856d
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_approval_events

map
map_all_events

0545bca3ddc3caf4c2d92739c5f8a08af0f24a8e
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_all_events

map
map_user_trades

0f541fb8d35fe631b3100bfedba2f7ead443a9b3
map map_user_trades (
paramsstring
)  -> polymarket.neg_risk_ctf.v1.TradingEvents
Default param : trader:0x0000000000000000000000000000000000000000
substreams gui polymarket-neg-risk-ctf@v0.7.0 map_user_trades
Block Indexes icon
Block Indexes

blockIndex
index_events

baf1fbd4b988319a0911f0b9b76ab1adb6ffe6bf
blockIndex index_events (
)  -> sf.substreams.index.v1.Keys

Emits evt_addr:<address> for every block containing a Neg Risk CTF Exchange log, letting downstream modules skip blocks that never touch the contract.

substreams gui polymarket-neg-risk-ctf@v0.7.0 index_events
Protobuf

Protobuf Docs Explorer

sf.ethereum.substreams.v1
polymarket.neg_risk_ctf.v1
sf.ethereum.transform.v1
sf.ethereum.type.v2