CoolFace
Datasetpublic

MiroShark/social-prediction-market-sim

MiroShark Social + Prediction Market Simulation Agent decisions from MiroShark simulations (GitHub). In each simulation, LLM agents with distinct personas (companies, founders, communities, regulators, commentators) share a Twitter/Reddit-style feed and a Polymarket-style prediction market. Every round, each agent reads the feed (or its portfolio and the open markets) and decides what to do: post, comment, quote, like, follow, buy or sell shares, or do nothing. Each row is one… See the full description on the dataset page: https://huggingface.co/datasets/MiroShark/social-prediction-market-sim.

sourceHugging Facemitupdated 20h agoView on Hugging Face
1likes29downloads
Dataset Card

MiroShark Social + Prediction Market Simulation

Agent decisions from MiroShark simulations (GitHub). In each simulation, LLM agents with distinct personas (companies, founders, communities, regulators, commentators) share a Twitter/Reddit-style feed and a Polymarket-style prediction market. Every round, each agent reads the feed (or its portfolio and the open markets) and decides what to do: post, comment, quote, like, follow, buy or sell shares, or do nothing.

Each row is one agent's decision in one round: the full input it saw, its written reasoning, and the actions it took.

  • —16 simulations, up to 10 rounds each, about 26 agents per simulation
  • —8,201 decisions in total (6,563 in the cleaned sft config)
  • —Social actions and trading actions in one dataset
  • —Generated by deepseek/deepseek-v4-flash, deepseek/deepseek-v4.1-flash and z-ai/glm-4.7-flash via OpenRouter

As far as we know, this is the first public dataset where the same LLM agents both act on a social feed and trade in a prediction market inside one simulation, released in a format ready for fine-tuning.

Rows per model

Model`raw``sft``sft` social`sft` trade
deepseek/deepseek-v4-flash:nitro5,5674,4453,3311,114
z-ai/glm-4.7-flash:nitro1,253996634362
deepseek/deepseek-v4.1-flash:nitro510401203198
deepseek/deepseek-v4.1-flash446380213167
z-ai/glm-4.7-flash425341206135
Total8,2016,5634,5871,976

Configs

sft (default)

Ready for supervised fine-tuning. One row = one prompt and one target completion.

ColumnDescription
row_idIndex into the raw config
sim_id, round, agent_id, modelWhere the decision came from
kindsocial (feed actions) or trade (market actions)
contextSystem prompt: agent persona, rules and allowed actions
promptWhat the agent sees this round: the social feed, or its portfolio, the active markets and a sentiment summary
completionThe agent's reasoning, ending with a line ACTION: [...]
action_onlyThe JSON action list alone

Splits are by simulation, not by row, so no simulation appears in both train (6,133 rows, 13 sims) and test (430 rows, 3 sims).

Rows are removed from sft when:

  • —the prompt is empty (397 rows), or
  • —the agent acted on a post, comment or user ID that does not appear in its prompt (1,241 rows).

raw

All 8,201 decisions with the structured fields from the simulation logs. Use it to build your own prompt format or to study agent behavior across rounds.

ColumnDescription
row_id, sim_id, run_id, round, agent_id, modelIdentifiers
personaAgent persona and instructions
allowed_actionsActions the agent may call
portfolio, market_stateCash, positions and open markets (trading rounds only)
social_feedThe feed the agent saw
reasoningThe agent's written reasoning
actionsJSON string of the actions taken
resultTool result, when logged (rarely present)
kindsocial or trade
empty_prompt, invented_idQuality flags; rows with either flag set are excluded from sft

Action format

json
[{"action_type": "quote_post", "action_args": {"post_id": 54, "quote_content": "..."}},
 {"action_type": "like_post", "action_args": {"post_id": 54}}]

Social actions: create_post, create_comment, quote_post, repost, like_post, dislike_post, like_comment, dislike_comment, follow, trend, refresh, do_nothing. Market actions: buy_shares, sell_shares (with market_id, outcome, amount_usd or num_shares).

Loading

python
from datasets import load_dataset

sft = load_dataset("MiroShark/social-prediction-market-sim")          # sft config
raw = load_dataset("MiroShark/social-prediction-market-sim", "raw")

How this compares

DatasetSocial feed actionsMarket tradesPersona agentsPrompt + reasoning + tool callsSFT-ready
This datasetYes (post, comment, quote, repost, like, follow)Yes (prediction market)YesYesYes
divdataPosts and comments onlyNoYesPartial, no prompts keptNo
socsim26-sharedtaskPartialNo (game payoffs)YesYes, in raw tarballsNo
agent-town-economyChat onlyWages and pricesYesPartialNo
llm-forecast-benchNoYes (prediction market)YesNoNo
ForecastBenchNoForecasts, single agentNoRationalesNo

Research systems that mix a social feed with trading, such as TwinMarket and StockAgent, release code but not their agent decision logs. The social layer follows the OASIS action set.

This dataset is smaller than some of the social-simulation logs above. Its focus is on complete, trainable rows rather than scale.

Reproducing

scripts/build.py rebuilds both configs from the MiroShark simulation exports: it flags empty prompts and invented IDs, drops them from sft, and splits sft by simulation.

Notes and limitations

  • —All content is synthetic. Posts, trades and market prices come from simulated agents, not real users or real markets.
  • —Personas and feeds name real organizations and public X handles as simulation characters. Their statements are model-generated and do not come from those organizations or people.
  • —Completions are unedited model outputs. They can contain factual errors and overconfident trading claims. Nothing here is financial advice.

License

MIT. Generated with MiroShark. The software license does not apply to generated outputs; this dataset is released under MIT.