Free
$0/month
100 credits per month
Full API access. Enough to run real strategies and see results.
Integrates with

Iosis is an API for weather market traders who need reproducible, auditable strategy research. Instead of relying on opaque agent outputs, you define data pipelines, backtests, and execution logic as a single graph that runs deterministically every time.
Declare data
Point a source at a dataset or live Polymarket prices.
Run the graph
Submit over the API. Runs deterministically.
Get results
result.parquet plus an SVG chart per output.
agent terminal
$ iosis run cloud execution.yaml
queued 51bd77c0… (202 Accepted)
$ iosis status 51bd77c0…
Status: running
$ iosis status 51bd77c0…
Status: succeeded · 31s · 6 credits
$ ls output
result.parquet output.pnl_contra.parquet output.pnl_threshold.parquet output.book_width.parquet
chart.pnl_contra.svg chart.pnl_threshold.svg chart.book_width.svg
strategy.yaml
format: iosis.strategy
version: 0.1.0
name: execution-compare
description: Contrarian versus threshold execution on daily temperature markets.
nodes:
markets:
op: source.dataset
version: 0.1.0
params:
name: polymarket_weather_lob
odds:
op: transform.logit
version: 0.1.0
inputs:
value: markets.mid
params:
output_column: log_odds
drift:
op: transform.delta
version: 0.2.0
inputs:
value: odds.log_odds
params:
output_column: drift
stale:
op: transform.lag
version: 0.2.0
inputs:
value: odds.log_odds
params:
periods: 3
output_column: stale
faded:
op: transform.negate
version: 0.1.0
inputs:
value: stale.stale
params:
output_column: faded
book_width:
op: transform.spread
version: 0.1.0
inputs:
left: markets.ask
right: markets.bid
params:
output_column: book_width
bt_contra:
op: backtest.backtest
version: 3.0.0
inputs:
bid: markets.bid
ask: markets.ask
signal:
from: faded.faded
nulls: drop
params:
feed:
kind: l1
venue:
name: polymarket
universe: [nyc-high-2026-09-24, london-low-2026-09-24]
policy:
kind: signal
signal_column: signal
initial_cash: 10000.0
bt_threshold:
op: backtest.backtest
version: 3.0.0
inputs:
bid: markets.bid
ask: markets.ask
signal:
from: drift.drift
nulls: drop
params:
feed:
kind: l1
venue:
name: polymarket
universe: [nyc-high-2026-09-24, london-low-2026-09-24]
policy:
kind: threshold
signal_column: signal
threshold: 0.05
initial_cash: 10000.0
outputs:
pnl_contra: bt_contra.equity
pnl_threshold: bt_threshold.equity
book_width: book_width.book_width
metadata:
charts:
- name: pnl_contra
kind: equity
output: pnl_contra
columns: [equity]
title: contrarian bankroll
- name: pnl_threshold
kind: equity
output: pnl_threshold
columns: [equity]
title: threshold bankroll
- name: book_width
kind: line
output: book_width
columns: [book_width]
title: book widthrendered graph
output charts
Contrarian and threshold policies over two temperature markets. Graphs and charts are rendered by the API.
$0/month
100 credits per month
Full API access. Enough to run real strategies and see results.
$10/month
3,500 credits per month
For sustained research with larger monthly allowances.
$50/month
25,000 credits per month
For heavy workloads that burn through Pro in days.
How do credits work?
1 credit buys 6 seconds of worker compute. Runs served from the result cache cost nothing. Allowances reset monthly.
Do I need a credit card?
No. The free tier runs real strategies. Add a paid tier in your account when free stops being enough.
What data can strategies use?
Published datasets plus live Polymarket CLOB prices, referenced by name straight from strategy YAML.
How does my agent use Iosis?
Give it an API key and the site URL. It declares a versioned graph, submits it, polls the run, downloads result.parquet and charts.
Are runs deterministic?
Yes. Schemas, dependencies, null policies, and time axes validate before compute starts. Identical YAML returns identical results.
What happens when a run fails?
Status flips to failed and run.error explains why. Fix the YAML and resubmit with a fresh idempotency key.