Geopolitics & Conflict Trader
This is a template.
The default signal is keyword-based market discovery combined with conviction-based sizing and geopolitics_bias() — remix it with the data sources listed below.
The skill handles all the plumbing (market discovery, trade execution, safeguards). Your agent provides the alpha.
Strategy Overview
Geopolitical markets are systematically mispriced by retail traders in two ways: they overweight dramatic, scary outcomes relative to documented conflict research base rates, and they reprice slowly when breaking news hits during Asian or European business hours while US retail is asleep. This skill corrects both without any external API.
Signal Logic
Default Signal: Conviction-Based Sizing with Geopolitical Bias
- 1. Discover active geopolitical markets on Polymarket using conflict/diplomacy keywords
- Compute base conviction from distance to threshold (0% at boundary → 100% at p=0/p=1)
- Apply
geopolitics_bias() — combines fear-premium correction with regional news timing - Size =
max(MIN_TRADE, conviction × bias × MAX_POSITION) — capped at MAXPOSITION - Skip markets with spread > MAXSPREAD or fewer than MIN_DAYS to resolution
Geopolitics Bias (built-in, no API required)
Two compounding structural edges:
Factor 1 — Fear/Narrative Premium Correction
Retail systematically overprices dramatic, scary outcomes and underprices boring-but-likely ones. Conflict research databases (ACLED, ICG) document base rates that deviate sharply from media-driven market pricing:
| Event type | Why retail misprices it | Multiplier |
|---|
| Nuclear / WMD use | Post-WWII base rate is near-zero; media panic inflates | 0.65x |
| Coup / regime change |
Retail overprices drama; ~50% actual success rate |
0.75x |
| Full invasion / occupation | Retail anchors to worst-case escalation |
0.80x |
| Ceasefire / peace deal / truce | Only ~40% of ceasefires hold within 6 months |
0.80x |
| Sanctions / embargo | ~30–40% achieve stated objectives; overestimated |
0.85x |
| UN vote / Security Council | P5 veto patterns are well-documented; procedural |
1.10x |
| Diplomatic breakthrough | Boring — retail consistently underprices it |
1.15x |
Factor 2 — Regional News Timing Window
Polymarket is US-dominated. Markets take 15–45 min to reprice events that break during Asian or European business hours when US retail is asleep:
| Region | Active window (UTC) | Multiplier | Rationale |
|---|
| Asia/Pacific (China, Taiwan, NK, Japan) | 00:00–08:00 | 1.20x | US asleep, repricing lag open |
| Asia/Pacific |
13:00–22:00 |
0.95x | US prime time — priced quickly |
| Europe/Middle East (Ukraine, Russia, Iran, Israel, NATO) | 06:00–14:00 |
1.15x | US just waking, partial lag |
| Europe/Middle East | 18:00–04:00 |
0.95x | Off-hours, less news flow |
Combined and capped at 1.35x. A diplomatic breakthrough (1.15x) during Asia active hours (1.20x) → 1.35x cap. A nuclear market at any time → 0.65x floor.
Keywords Monitored
CODEBLOCK0
Remix Signal Ideas
- - GDELT Project: Real-time global event database — feed event velocity into
p to trade divergence between conflict data and market pricing - ACLED conflict data: Armed conflict location and event intensity scores — use as leading indicator for escalation/de-escalation markets
- UN Security Council voting records: P5 veto pattern analysis for UN vote markets
- ICG (International Crisis Group) alerts: Early-warning signals for crisis escalation before markets react
Safety & Execution Mode
The skill defaults to paper trading (venue="sim"). Real trades only with --live flag.
| Scenario | Mode | Financial risk |
|---|
| INLINECODE6 | Paper (sim) | None |
| Cron / automaton |
Paper (sim) | None |
|
python trader.py --live | Live (polymarket) | Real USDC |
INLINECODE8 and cron: null — nothing runs automatically until you configure it in Simmer UI.
Required Credentials
| Variable | Required | Notes |
|---|
| INLINECODE10 | Yes | Trading authority. Treat as high-value credential. |
Tunables (Risk Parameters)
All declared as tunables in clawhub.json and adjustable from the Simmer UI.
| Variable | Default | Purpose |
|---|
| INLINECODE13 | INLINECODE14 | Max USDC per trade (reached at 100% conviction) |
| INLINECODE15 |
20000 | Min market volume filter (USD) — geopolitical markets need liquidity |
|
SIMMER_MAX_SPREAD |
0.08 | Max bid-ask spread (8%) |
|
SIMMER_MIN_DAYS |
5 | Min days until resolution |
|
SIMMER_MAX_POSITIONS |
6 | Max concurrent open positions |
|
SIMMER_YES_THRESHOLD |
0.38 | Buy YES if market price ≤ this value |
|
SIMMER_NO_THRESHOLD |
0.62 | Sell NO if market price ≥ this value |
|
SIMMER_MIN_TRADE |
5 | Floor for any trade (min USDC regardless of conviction) |
Dependency
INLINECODE29 by Simmer Markets (SpartanLabsXyz)
- - PyPI: https://pypi.org/project/simmer-sdk/
- GitHub: https://github.com/SpartanLabsXyz/simmer-sdk
技能名称:polymarket-geopolitics-trader
详细描述:
地缘政治与冲突交易员
这是一个模板。
默认信号基于关键词的市场发现,结合基于信念的头寸规模调整和 geopolitics_bias()——可结合下方列出的数据源进行重新组合。
该技能处理所有底层逻辑(市场发现、交易执行、安全防护)。你的智能体提供阿尔法收益。
策略概述
地缘政治市场被散户交易员系统性地错误定价,体现在两个方面:他们高估戏剧性、可怕的结果,而低估有据可查的冲突研究基准概率;当突发新闻在亚洲或欧洲交易时段(美国散户处于睡眠状态)发生时,他们重新定价的速度缓慢。本技能无需任何外部API即可纠正这两个问题。
信号逻辑
默认信号:基于信念的头寸规模调整与地缘政治偏差
- 1. 使用冲突/外交关键词发现Polymarket上的活跃地缘政治市场
- 根据与阈值的距离计算基础信念(边界处为0% → p=0/p=1时为100%)
- 应用 geopoliticsbias() —— 结合恐惧溢价修正与区域新闻时机
- 头寸规模 = max(MINTRADE, 信念 × 偏差 × MAXPOSITION) —— 上限为MAXPOSITION
- 跳过价差 > MAXSPREAD 或距离结算少于 MINDAYS 的市场
地缘政治偏差(内置,无需API)
两个叠加的结构性优势:
因素1 —— 恐惧/叙事溢价修正
散户系统性地高估戏剧性、可怕的结果,低估无聊但可能性高的结果。冲突研究数据库(ACLED、ICG)记录的基准概率与媒体驱动的市场定价存在显著偏差:
| 事件类型 | 散户为何错误定价 | 乘数 |
|---|
| 核武器/大规模杀伤性武器使用 | 二战后基准概率接近零;媒体恐慌推高价格 | 0.65x |
| 政变/政权更迭 |
散户高估戏剧性;实际成功率约50% |
0.75x |
| 全面入侵/占领 | 散户锚定最坏情况升级 |
0.80x |
| 停火/和平协议/休战 | 仅约40%的停火在6个月内维持 |
0.80x |
| 制裁/禁运 | 约30-40%实现既定目标;被高估 |
0.85x |
| 联合国投票/安理会 | 五常否决权模式有据可查;程序性事件 |
1.10x |
| 外交突破 | 无聊——散户持续低估 |
1.15x |
因素2 —— 区域新闻时机窗口
Polymarket以美国用户为主。在亚洲或欧洲交易时段(美国散户处于睡眠状态)发生的新闻事件,市场需要15-45分钟重新定价:
| 区域 | 活跃窗口(UTC) | 乘数 | 理由 |
|---|
| 亚太(中国、台湾、朝鲜、日本) | 00:00–08:00 | 1.20x | 美国处于睡眠状态,重新定价滞后窗口开启 |
| 亚太 |
13:00–22:00 |
0.95x | 美国黄金时段——快速定价 |
| 欧洲/中东(乌克兰、俄罗斯、伊朗、以色列、北约) | 06:00–14:00 |
1.15x | 美国刚醒来,部分滞后 |
| 欧洲/中东 | 18:00–04:00 |
0.95x | 非交易时段,新闻流量较少 |
合并后上限为 1.35x。外交突破(1.15x)发生在亚洲活跃时段(1.20x)→ 1.35x上限。核武器市场在任何时段 → 0.65x下限。
监控关键词
战争, 停火, 制裁, 北约, 乌克兰, 俄罗斯, 中国, 台湾, 伊朗,
核武器, 联合国, 外交, 入侵, 条约, 军事, 导弹, 政变,
选举干预, 间谍活动, 政权更迭, 安理会,
否决权, 和平协议, 峰会, 加沙, 以色列, 朝鲜, 朝鲜民主主义人民共和国,
南海
重新组合信号思路
- - GDELT项目:实时全球事件数据库——将事件速度输入 p,以交易冲突数据与市场定价之间的差异
- ACLED冲突数据:武装冲突地点和事件强度评分——用作升级/降级市场的领先指标
- 联合国安理会投票记录:针对联合国投票市场的五常否决权模式分析
- ICG(国际危机组织)警报:在市场反应之前提供危机升级的早期预警信号
安全与执行模式
该技能默认为模拟交易(venue=sim)。仅在使用 --live 标志时进行真实交易。
| 场景 | 模式 | 财务风险 |
|---|
| python trader.py | 模拟(sim) | 无 |
| Cron / 自动化 |
模拟(sim) | 无 |
| python trader.py --live | 实盘(polymarket) | 真实USDC |
autostart: false 和 cron: null —— 在Simmer UI中配置之前,不会自动运行任何内容。
所需凭证
| 变量 | 是否必需 | 备注 |
|---|
| SIMMERAPIKEY | 是 | 交易授权。视为高价值凭证。 |
可调参数(风险参数)
所有参数均在 clawhub.json 中声明为 tunables,并可在Simmer UI中调整。
| 变量 | 默认值 | 用途 |
|---|
| SIMMERMAXPOSITION | 30 | 每笔交易最大USDC(在100%信念时达到) |
| SIMMERMINVOLUME |
20000 | 最小市场成交量过滤(美元)——地缘政治市场需要流动性 |
| SIMMER
MAXSPREAD | 0.08 | 最大买卖价差(8%) |
| SIMMER
MINDAYS | 5 | 距离结算的最小天数 |
| SIMMER
MAXPOSITIONS | 6 | 最大同时持仓数量 |
| SIMMER
YESTHRESHOLD | 0.38 | 如果市场价格 ≤ 此值,买入YES |
| SIMMER
NOTHRESHOLD | 0.62 | 如果市场价格 ≥ 此值,卖出NO |
| SIMMER
MINTRADE | 5 | 任何交易的最低金额(无论信念如何,最小USDC) |
依赖项
simmer-sdk by Simmer Markets (SpartanLabsXyz)
- - PyPI:https://pypi.org/project/simmer-sdk/
- GitHub:https://github.com/SpartanLabsXyz/simmer-sdk