from horizon.fund import FundManager, FundConfig, StrategyConfig
# Create the fund
fund = FundManager(FundConfig(
total_capital=100_000,
max_fund_drawdown_pct=15.0,
max_strategy_drawdown_pct=25.0,
))
# Add strategies
fund.add_strategy(StrategyConfig(
name="political_mm",
pipeline=[signal, quote],
markets=["will-x-win", "will-y-happen"],
mode="paper",
))
fund.add_strategy(StrategyConfig(
name="crypto_arb",
pipeline=[detect_arb, execute],
markets=["btc-100k"],
mode="paper",
))
# Start everything (deploys strategies + oversight loop)
fund.start()
# Check status
status = fund.status()
# {
# "running": True,
# "total_capital": 100000.0,
# "nav": 100250.0,
# "drawdown_pct": 0.0,
# "running_strategies": 2,
# "total_fees": 12.5,
# ...
# }
# Generate a full report
report = fund.report()
print(report.nav.total_nav)
print(report.strategies)
# Stop everything
fund.stop()