Skip to content
This repository was archived by the owner on Oct 9, 2025. It is now read-only.

Dynamic population adjustment by profitability #42

@zyzek

Description

@zyzek

Agents shouldn't keep on performing the same strategy if it's losing them money. On the other hand, they should also keep a lookout to see if there's anything more-profitable they could switch to.

Agents should be somewhat loyal to their existing strategy to prevent jitter. Maybe different agents can have different timeframes they expect to be profitable over, or different appetites for risk and volatility. Agents should switch strategies stochastically and with a probability in proportion with the
profitability different between their current strategy and any potential rival strategy.

Profitability will be directly measured over different timeframes for each population of agents.
Someone should always be engaging in each strategy as a bellwether for it, so that there are always profitability metrics available -- but perhaps they only need to trade in infinitesimal quantities if the profitability is measured in percentages.

This might also extend to increasing demand for the system by new players who previously had no strategy at all, allowing an influx of new capital.

I'm not sure that mesa can handle floating population levels so perhaps at some point if agents want to change strategies then either the strategies needs to be abstracted out from MarketPlayers, or each agent should have a wrapper so that different agent classes can swap in and out.

This should be optional/switchable so that #26 can still work.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions