1name: ad_hoc_question 2description: | 3 Lightweight Q&A arena for free-form finance/markets questions that 4 don't fit a single arena's mold. Faster + lighter than mastermind 5 (one analyst + one synthesis pass, no graph_query / memory_retrieve 6 / debate phases). 7 8 Target shapes accepted: 9 target = {"question": "What's the impact of higher rates on small-cap tech?"} 10 target = {"text": "Explain the AI capex cycle in three sentences"} 11 12 Outputs a Prognosis envelope: no BUY/SELL/HOLD (this isn't a trade), 13 but the `answer` + `counter_view` are surfaced in Prognosis.statement 14 and Prognosis.alternatives_considered. 15 16schedule: null 17output_stream: "maf:arena:ad_hoc_question:output" 18max_iterations: 1 19target_key: question 20applicable_target_types: ["question", "free_text"] 21 22llm: 23 default_provider: ollama 24 quick_provider: ollama 25 quick_model: "auto" 26 deep_provider: ollama 27 deep_model: "auto" 28 providers: 29 ollama: 30 api_key: "${OLLAMA_API_KEY}" 31 model: "auto" 32 base_url: "https://ollama.com/v1" 33 max_output_tokens: 6144 34 temperature: 0.4 35 36memory: {} 37 38sources: 39 - name: web 40 adapter: web_search 41 config: {} 42 - name: knowledge_base 43 adapter: fomo2_knowledge 44 config: {} 45 - name: latest_news 46 adapter: trtools2_news 47 config: { count: 30 } 48 - name: eodhd_news 49 adapter: eodhd 50 config: { tool: get_news } 51 - name: macro_context 52 adapter: fred_api 53 config: {} 54 - name: filings 55 adapter: sec_filings 56 config: {} 57 58phases: 59 - name: research 60 pattern: sequential 61 transition: synthesis 62 agents: 63 - name: general_analyst 64 role: specialist 65 system_prompt_file: src/maf/prompts/anthropic_fs/agents/general_analyst.md 66 sources: 67 - web 68 - knowledge_base 69 - latest_news 70 - eodhd_news 71 - macro_context 72 - filings 73 llm_tier: deep 74 max_react_steps: 6 75 76 - name: synthesis 77 pattern: sequential 78 transition: END 79 agents: 80 - name: synthesis_agent 81 role: synthesis 82 # Dedicated MAF-native ad-hoc synthesis — emits NEUTRAL signal 83 # (Q&A is non-directional), copies the analyst's answer into 84 # synthesis_reasoning, leaves synthesis_verdict None. 85 system_prompt_file: src/maf/prompts/anthropic_fs/agents/ad_hoc_synthesis.md 86 llm_tier: quick 87 max_react_steps: 1