Repository navigation
Expand file tree
/
Copy pathdefault-config.ts
More file actions
98 lines (83 loc) · 2.33 KB
/
Copy pathdefault-config.ts
File metadata and controls
98 lines (83 loc) · 2.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/**
* Default configuration (ports tradingagents/default_config.py DEFAULT_CONFIG).
* Field names are camelCase; see spec §14 for snake_case mapping.
*/
export interface ResolvedConfig {
// Paths / IO
projectDir: string;
resultsDir: string;
dataCacheDir: string;
memoryLogPath: string;
memoryLogMaxEntries: number | null;
// LLM core
llmProvider: string;
deepThinkLlm: string;
quickThinkLlm: string;
backendUrl: string | null;
// Provider reasoning params
googleThinkingLevel: string | null;
openaiReasoningEffort: string | null;
anthropicEffort: string | null;
temperature: number | null;
// Language / debate / graph behavior
outputLanguage: string;
checkpointEnabled: boolean;
maxDebateRounds: number;
maxRiskDiscussRounds: number;
maxRecurLimit: number;
analystConcurrencyLimit: number;
// News / data tuning
newsArticleLimit: number;
globalNewsArticleLimit: number;
globalNewsLookbackDays: number;
// Data vendor routing (category-level + method-level)
dataVendors: Record<string, string>;
toolVendors: Record<string, string>;
// Benchmarks
benchmarkTicker: string | null;
benchmarkMap: Record<string, string>;
}
const HOME = process.env.HOME || process.env.USERPROFILE || ".";
const BASE = `${HOME}/.tradingagents-web`;
export const DEFAULT_CONFIG: ResolvedConfig = {
projectDir: process.cwd(),
resultsDir: `${BASE}/logs`,
dataCacheDir: `${BASE}/cache`,
memoryLogPath: `${BASE}/memory/trading_memory.md`,
memoryLogMaxEntries: null,
llmProvider: "openai",
deepThinkLlm: "gpt-5.5",
quickThinkLlm: "gpt-5.4-mini",
backendUrl: null,
googleThinkingLevel: null,
openaiReasoningEffort: null,
anthropicEffort: null,
temperature: null,
outputLanguage: "English",
checkpointEnabled: false,
maxDebateRounds: 1,
maxRiskDiscussRounds: 1,
maxRecurLimit: 100,
analystConcurrencyLimit: 1,
newsArticleLimit: 20,
globalNewsArticleLimit: 10,
globalNewsLookbackDays: 7,
dataVendors: {
core_stock_apis: "yfinance",
technical_indicators: "yfinance",
fundamental_data: "yfinance",
news_data: "yfinance",
macro_data: "fred",
prediction_markets: "polymarket",
social_data: "social",
},
toolVendors: {},
benchmarkTicker: null,
benchmarkMap: {
".NS": "^NSEI",
".T": "^N225",
".HK": "^HSI",
".L": "^FTSE",
"": "SPY",
},
};