@quantbrasil/cli 0.1.0-beta.1 → 0.1.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +64 -11
- package/dist/cli/client.js +4 -0
- package/dist/cli/index.d.ts +14 -4
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +72 -14
- package/dist/cli/prompt.d.ts +1 -0
- package/dist/cli/prompt.d.ts.map +1 -1
- package/dist/cli/prompt.js +17 -0
- package/dist/cli/skills.d.ts +9 -0
- package/dist/cli/skills.d.ts.map +1 -1
- package/dist/cli/skills.js +68 -4
- package/dist/commands/auth.d.ts +18 -0
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +49 -0
- package/dist/commands/cointegration.d.ts +52 -0
- package/dist/commands/cointegration.d.ts.map +1 -0
- package/dist/commands/cointegration.js +118 -0
- package/dist/commands/market.d.ts +1 -0
- package/dist/commands/market.d.ts.map +1 -1
- package/dist/commands/market.js +17 -1
- package/dist/commands/portfolios.d.ts +148 -8
- package/dist/commands/portfolios.d.ts.map +1 -1
- package/dist/commands/portfolios.js +557 -55
- package/dist/commands/rankings.d.ts +82 -0
- package/dist/commands/rankings.d.ts.map +1 -0
- package/dist/commands/rankings.js +235 -0
- package/dist/commands/screening.d.ts +120 -0
- package/dist/commands/screening.d.ts.map +1 -0
- package/dist/commands/screening.js +361 -0
- package/dist/commands/skills.js +7 -7
- package/dist/commands/update.d.ts +23 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +209 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/vendor/core/capabilities/cointegration.d.ts +52 -0
- package/dist/vendor/core/capabilities/cointegration.d.ts.map +1 -0
- package/dist/vendor/core/capabilities/cointegration.js +63 -0
- package/dist/vendor/core/capabilities/index.d.ts +3 -1
- package/dist/vendor/core/capabilities/index.d.ts.map +1 -1
- package/dist/vendor/core/capabilities/index.js +3 -1
- package/dist/vendor/core/capabilities/market.d.ts +9 -1
- package/dist/vendor/core/capabilities/market.d.ts.map +1 -1
- package/dist/vendor/core/capabilities/market.js +10 -0
- package/dist/vendor/core/capabilities/portfolios.d.ts +452 -56
- package/dist/vendor/core/capabilities/portfolios.d.ts.map +1 -1
- package/dist/vendor/core/capabilities/portfolios.js +434 -116
- package/dist/vendor/core/capabilities/rankings.d.ts +83 -0
- package/dist/vendor/core/capabilities/rankings.d.ts.map +1 -0
- package/dist/vendor/core/capabilities/rankings.js +96 -0
- package/dist/vendor/core/capabilities/registry.d.ts +1380 -414
- package/dist/vendor/core/capabilities/registry.d.ts.map +1 -1
- package/dist/vendor/core/capabilities/registry.js +6 -2
- package/dist/vendor/core/capabilities/screening.d.ts +136 -0
- package/dist/vendor/core/capabilities/screening.d.ts.map +1 -0
- package/dist/vendor/core/capabilities/screening.js +155 -0
- package/dist/vendor/core/capabilities/types.d.ts +1 -1
- package/dist/vendor/core/capabilities/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/skills/quantbrasil/SKILL.md +31 -11
- package/skills/quantbrasil/references/cli.md +112 -19
- package/skills/quantbrasil/references/cointegration.md +40 -0
- package/skills/quantbrasil/references/costs.md +10 -4
- package/skills/quantbrasil/references/errors.md +16 -5
- package/skills/quantbrasil/references/portfolios.md +114 -0
- package/skills/quantbrasil/references/quality-eval-queries.json +147 -0
- package/skills/quantbrasil/references/rankings.md +64 -0
- package/skills/quantbrasil/references/screening.md +212 -0
- package/skills/quantbrasil/references/unsupported.md +9 -2
- package/skills/quantbrasil/references/workflows.md +117 -23
- package/dist/commands/analytics.d.ts +0 -131
- package/dist/commands/analytics.d.ts.map +0 -1
- package/dist/commands/analytics.js +0 -291
- package/dist/vendor/core/capabilities/analytics.d.ts +0 -187
- package/dist/vendor/core/capabilities/analytics.d.ts.map +0 -1
- package/dist/vendor/core/capabilities/analytics.js +0 -214
|
@@ -26,8 +26,16 @@ export declare const capabilityRegistry: readonly [{
|
|
|
26
26
|
readonly placeholder: "TIPO";
|
|
27
27
|
readonly enumValues: readonly ["B3", "ETF", "ETF-US", "BDR", "Futuro", "Crypto", "S&P500"];
|
|
28
28
|
readonly description: "Filter by the exact monitored asset type.";
|
|
29
|
+
}, {
|
|
30
|
+
readonly kind: "option";
|
|
31
|
+
readonly flag: "--search";
|
|
32
|
+
readonly name: "search";
|
|
33
|
+
readonly type: "string";
|
|
34
|
+
readonly required: false;
|
|
35
|
+
readonly placeholder: "TEXTO";
|
|
36
|
+
readonly description: "Filter monitored tickers by case-insensitive text.";
|
|
29
37
|
}];
|
|
30
|
-
readonly examples: readonly ["quantbrasil market assets", "quantbrasil market assets --type B3"];
|
|
38
|
+
readonly examples: readonly ["quantbrasil market assets", "quantbrasil market assets --type B3", "quantbrasil market assets --search BTC"];
|
|
31
39
|
};
|
|
32
40
|
readonly tool: {
|
|
33
41
|
readonly name: "qb_market_assets";
|
|
@@ -131,13 +139,227 @@ export declare const capabilityRegistry: readonly [{
|
|
|
131
139
|
};
|
|
132
140
|
readonly outputModes: readonly ["json", "human"];
|
|
133
141
|
}, {
|
|
134
|
-
readonly id: "
|
|
142
|
+
readonly id: "rankings.list";
|
|
143
|
+
readonly kind: "read";
|
|
144
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
145
|
+
readonly description: "Lista rankings do sistema e rankings do usuário disponíveis para consulta atual.";
|
|
146
|
+
readonly http: {
|
|
147
|
+
readonly method: "GET";
|
|
148
|
+
readonly path: "/api/desk/tools/rankings/list";
|
|
149
|
+
readonly inputMode: "none";
|
|
150
|
+
readonly schemas: {
|
|
151
|
+
readonly request: null;
|
|
152
|
+
readonly response: "RankingsListResponse";
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
readonly cli: {
|
|
156
|
+
readonly group: "rankings";
|
|
157
|
+
readonly command: "list";
|
|
158
|
+
readonly summary: "Lista rankings do sistema e rankings do usuário.";
|
|
159
|
+
readonly positional: readonly [];
|
|
160
|
+
readonly options: readonly [];
|
|
161
|
+
readonly examples: readonly ["quantbrasil rankings list"];
|
|
162
|
+
};
|
|
163
|
+
readonly tool: {
|
|
164
|
+
readonly name: "qb_rankings_list";
|
|
165
|
+
readonly title: "Listar rankings";
|
|
166
|
+
};
|
|
167
|
+
readonly outputModes: readonly ["json", "human"];
|
|
168
|
+
}, {
|
|
169
|
+
readonly id: "rankings.current";
|
|
170
|
+
readonly kind: "read";
|
|
171
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
172
|
+
readonly description: "Retorna os ativos atuais no topo de um ranking do sistema ou ranking do usuário.";
|
|
173
|
+
readonly http: {
|
|
174
|
+
readonly method: "POST";
|
|
175
|
+
readonly path: "/api/desk/tools/rankings/current";
|
|
176
|
+
readonly inputMode: "json_body";
|
|
177
|
+
readonly schemas: {
|
|
178
|
+
readonly request: "RankingCurrentRequest";
|
|
179
|
+
readonly response: "RankingCurrentResponse";
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
readonly cli: {
|
|
183
|
+
readonly group: "rankings";
|
|
184
|
+
readonly command: "current";
|
|
185
|
+
readonly summary: "Consulta o topo atual de um ranking.";
|
|
186
|
+
readonly positional: readonly [];
|
|
187
|
+
readonly options: readonly [{
|
|
188
|
+
readonly kind: "option";
|
|
189
|
+
readonly flag: "--system";
|
|
190
|
+
readonly name: "system_id";
|
|
191
|
+
readonly type: "string";
|
|
192
|
+
readonly required: false;
|
|
193
|
+
readonly placeholder: "SLUG";
|
|
194
|
+
readonly exclusiveGroup: "ranking_selector";
|
|
195
|
+
readonly description: "Slug de ranking do sistema retornado por `rankings list`, por exemplo momentum-90d ou low-risk.";
|
|
196
|
+
}, {
|
|
197
|
+
readonly kind: "option";
|
|
198
|
+
readonly flag: "--id";
|
|
199
|
+
readonly name: "user_ranking_id";
|
|
200
|
+
readonly type: "integer";
|
|
201
|
+
readonly required: false;
|
|
202
|
+
readonly placeholder: "ID";
|
|
203
|
+
readonly exclusiveGroup: "ranking_selector";
|
|
204
|
+
readonly description: "ID numérico de ranking do usuário retornado por `rankings list`.";
|
|
205
|
+
}, {
|
|
206
|
+
readonly kind: "option";
|
|
207
|
+
readonly flag: "--top";
|
|
208
|
+
readonly name: "top_n";
|
|
209
|
+
readonly type: "integer";
|
|
210
|
+
readonly required: false;
|
|
211
|
+
readonly placeholder: "N";
|
|
212
|
+
readonly defaultValue: 20;
|
|
213
|
+
readonly description: "Número de ativos do topo do ranking a retornar.";
|
|
214
|
+
}];
|
|
215
|
+
readonly examples: readonly ["quantbrasil rankings current --system momentum-90d --top 20", "quantbrasil rankings current --system magic-formula --top 10", "quantbrasil rankings current --system low-risk --top 30", "quantbrasil rankings current --id 123 --top 20"];
|
|
216
|
+
};
|
|
217
|
+
readonly tool: {
|
|
218
|
+
readonly name: "qb_rankings_current";
|
|
219
|
+
readonly title: "Consultar ranking atual";
|
|
220
|
+
};
|
|
221
|
+
readonly outputModes: readonly ["json", "human"];
|
|
222
|
+
}, {
|
|
223
|
+
readonly id: "screening.universes";
|
|
224
|
+
readonly kind: "read";
|
|
225
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
226
|
+
readonly description: "Lista universos salvos e baseados em portfólios disponíveis para screening de indicadores.";
|
|
227
|
+
readonly http: {
|
|
228
|
+
readonly method: "GET";
|
|
229
|
+
readonly path: "/api/desk/tools/screening/universes";
|
|
230
|
+
readonly inputMode: "none";
|
|
231
|
+
readonly schemas: {
|
|
232
|
+
readonly request: null;
|
|
233
|
+
readonly response: "ScreeningUniversesResponse";
|
|
234
|
+
};
|
|
235
|
+
};
|
|
236
|
+
readonly cli: {
|
|
237
|
+
readonly group: "screening";
|
|
238
|
+
readonly command: "universes";
|
|
239
|
+
readonly summary: "Lista carteiras do sistema, watchlists e carteiras disponíveis para screening.";
|
|
240
|
+
readonly positional: readonly [];
|
|
241
|
+
readonly options: readonly [];
|
|
242
|
+
readonly examples: readonly ["quantbrasil screening universes"];
|
|
243
|
+
};
|
|
244
|
+
readonly tool: {
|
|
245
|
+
readonly name: "qb_screening_universes";
|
|
246
|
+
readonly title: "Listar universos de screening";
|
|
247
|
+
};
|
|
248
|
+
readonly outputModes: readonly ["json", "human"];
|
|
249
|
+
}, {
|
|
250
|
+
readonly id: "screening.indicators";
|
|
251
|
+
readonly kind: "read";
|
|
252
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
253
|
+
readonly description: "Lista indicadores, parâmetros e operadores disponíveis para screening.";
|
|
254
|
+
readonly http: {
|
|
255
|
+
readonly method: "GET";
|
|
256
|
+
readonly path: "/api/desk/tools/screening/indicators";
|
|
257
|
+
readonly inputMode: "none";
|
|
258
|
+
readonly schemas: {
|
|
259
|
+
readonly request: null;
|
|
260
|
+
readonly response: "ScreeningIndicatorsResponse";
|
|
261
|
+
};
|
|
262
|
+
};
|
|
263
|
+
readonly cli: {
|
|
264
|
+
readonly group: "screening";
|
|
265
|
+
readonly command: "indicators";
|
|
266
|
+
readonly summary: "Lista indicadores, parâmetros e exemplos disponíveis para screening.";
|
|
267
|
+
readonly positional: readonly [];
|
|
268
|
+
readonly options: readonly [];
|
|
269
|
+
readonly examples: readonly ["quantbrasil screening indicators", "quantbrasil screening indicators --json"];
|
|
270
|
+
};
|
|
271
|
+
readonly tool: {
|
|
272
|
+
readonly name: "qb_screening_indicators";
|
|
273
|
+
readonly title: "Listar indicadores de screening";
|
|
274
|
+
};
|
|
275
|
+
readonly outputModes: readonly ["json", "human"];
|
|
276
|
+
}, {
|
|
277
|
+
readonly id: "screening.run";
|
|
278
|
+
readonly kind: "read";
|
|
279
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
280
|
+
readonly description: "Executa o screener de indicadores existente sobre um universo salvo baseado em portfólio.";
|
|
281
|
+
readonly http: {
|
|
282
|
+
readonly method: "POST";
|
|
283
|
+
readonly path: "/api/desk/tools/screening/run";
|
|
284
|
+
readonly inputMode: "json_body";
|
|
285
|
+
readonly schemas: {
|
|
286
|
+
readonly request: "ScreeningRunRequest";
|
|
287
|
+
readonly response: "ScreeningRunResponse";
|
|
288
|
+
};
|
|
289
|
+
};
|
|
290
|
+
readonly cli: {
|
|
291
|
+
readonly group: "screening";
|
|
292
|
+
readonly command: "run";
|
|
293
|
+
readonly summary: "Executa screening de indicadores a partir de um payload ScreenerRequest JSON.";
|
|
294
|
+
readonly positional: readonly [];
|
|
295
|
+
readonly options: readonly [{
|
|
296
|
+
readonly kind: "option";
|
|
297
|
+
readonly flag: "--system";
|
|
298
|
+
readonly name: "system_slug";
|
|
299
|
+
readonly type: "string";
|
|
300
|
+
readonly required: false;
|
|
301
|
+
readonly placeholder: "SLUG";
|
|
302
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
303
|
+
readonly description: "Slug da carteira do sistema retornado por `screening universes`, por exemplo acoes-mais-liquidas.";
|
|
304
|
+
}, {
|
|
305
|
+
readonly kind: "option";
|
|
306
|
+
readonly flag: "--watchlist";
|
|
307
|
+
readonly name: "watchlist_id";
|
|
308
|
+
readonly type: "integer";
|
|
309
|
+
readonly required: false;
|
|
310
|
+
readonly placeholder: "ID";
|
|
311
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
312
|
+
readonly description: "ID da watchlist retornado por `watchlists list`.";
|
|
313
|
+
}, {
|
|
314
|
+
readonly kind: "option";
|
|
315
|
+
readonly flag: "--holding";
|
|
316
|
+
readonly name: "holding_id";
|
|
317
|
+
readonly type: "integer";
|
|
318
|
+
readonly required: false;
|
|
319
|
+
readonly placeholder: "ID";
|
|
320
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
321
|
+
readonly description: "ID da carteira retornado por `holdings list`.";
|
|
322
|
+
}, {
|
|
323
|
+
readonly kind: "option";
|
|
324
|
+
readonly flag: "--query-file";
|
|
325
|
+
readonly name: "query_file";
|
|
326
|
+
readonly type: "string";
|
|
327
|
+
readonly required: true;
|
|
328
|
+
readonly placeholder: "ARQUIVO|-";
|
|
329
|
+
readonly description: "Caminho para um arquivo ScreenerRequest JSON completo, ou `-` para ler JSON de stdin.";
|
|
330
|
+
}, {
|
|
331
|
+
readonly kind: "option";
|
|
332
|
+
readonly flag: "--limit";
|
|
333
|
+
readonly name: "limit";
|
|
334
|
+
readonly type: "integer";
|
|
335
|
+
readonly required: false;
|
|
336
|
+
readonly placeholder: "N";
|
|
337
|
+
readonly description: "Sobrescreve o limit de topo do ScreenerRequest sem alterar o arquivo da consulta.";
|
|
338
|
+
}, {
|
|
339
|
+
readonly kind: "option";
|
|
340
|
+
readonly flag: "--sort";
|
|
341
|
+
readonly name: "sort";
|
|
342
|
+
readonly type: "enum";
|
|
343
|
+
readonly required: false;
|
|
344
|
+
readonly placeholder: "price|ticker";
|
|
345
|
+
readonly enumValues: readonly ["price", "ticker"];
|
|
346
|
+
readonly description: "Sobrescreve o sort de topo do ScreenerRequest sem alterar o arquivo da consulta.";
|
|
347
|
+
}];
|
|
348
|
+
readonly examples: readonly ["quantbrasil screening run --system acoes-mais-liquidas --query-file ./screening.json", "quantbrasil screening run --watchlist 93 --query-file ./screening.json --limit 25", "cat screening.json | quantbrasil screening run --holding 182 --query-file - --sort ticker"];
|
|
349
|
+
};
|
|
350
|
+
readonly tool: {
|
|
351
|
+
readonly name: "qb_screening_run";
|
|
352
|
+
readonly title: "Executar screening de indicadores";
|
|
353
|
+
};
|
|
354
|
+
readonly outputModes: readonly ["json", "human"];
|
|
355
|
+
}, {
|
|
356
|
+
readonly id: "watchlists.list";
|
|
135
357
|
readonly kind: "read";
|
|
136
358
|
readonly visibility: readonly ["cli", "opencode"];
|
|
137
|
-
readonly description: "List
|
|
359
|
+
readonly description: "List watchlists owned by the authenticated user.";
|
|
138
360
|
readonly http: {
|
|
139
361
|
readonly method: "GET";
|
|
140
|
-
readonly path: "/api/desk/tools/
|
|
362
|
+
readonly path: "/api/desk/tools/watchlist/list";
|
|
141
363
|
readonly inputMode: "none";
|
|
142
364
|
readonly schemas: {
|
|
143
365
|
readonly request: null;
|
|
@@ -145,26 +367,26 @@ export declare const capabilityRegistry: readonly [{
|
|
|
145
367
|
};
|
|
146
368
|
};
|
|
147
369
|
readonly cli: {
|
|
148
|
-
readonly group: "
|
|
370
|
+
readonly group: "watchlists";
|
|
149
371
|
readonly command: "list";
|
|
150
|
-
readonly summary: "List
|
|
372
|
+
readonly summary: "List watchlists for tracking ideas and filters.";
|
|
151
373
|
readonly positional: readonly [];
|
|
152
374
|
readonly options: readonly [];
|
|
153
|
-
readonly examples: readonly ["quantbrasil
|
|
375
|
+
readonly examples: readonly ["quantbrasil watchlists list"];
|
|
154
376
|
};
|
|
155
377
|
readonly tool: {
|
|
156
|
-
readonly name: "
|
|
157
|
-
readonly title: "List
|
|
378
|
+
readonly name: "qb_watchlist_list";
|
|
379
|
+
readonly title: "List watchlists";
|
|
158
380
|
};
|
|
159
381
|
readonly outputModes: readonly ["json", "human"];
|
|
160
382
|
}, {
|
|
161
|
-
readonly id: "
|
|
383
|
+
readonly id: "watchlists.get";
|
|
162
384
|
readonly kind: "read";
|
|
163
385
|
readonly visibility: readonly ["cli", "opencode"];
|
|
164
|
-
readonly description: "Return one
|
|
386
|
+
readonly description: "Return one watchlist by id, scoped to the acting user.";
|
|
165
387
|
readonly http: {
|
|
166
388
|
readonly method: "POST";
|
|
167
|
-
readonly path: "/api/desk/tools/
|
|
389
|
+
readonly path: "/api/desk/tools/watchlist/get";
|
|
168
390
|
readonly inputMode: "json_body";
|
|
169
391
|
readonly schemas: {
|
|
170
392
|
readonly request: "PortfolioGetRequest";
|
|
@@ -172,33 +394,33 @@ export declare const capabilityRegistry: readonly [{
|
|
|
172
394
|
};
|
|
173
395
|
};
|
|
174
396
|
readonly cli: {
|
|
175
|
-
readonly group: "
|
|
397
|
+
readonly group: "watchlists";
|
|
176
398
|
readonly command: "get";
|
|
177
|
-
readonly summary: "Get a
|
|
399
|
+
readonly summary: "Get a watchlist by id.";
|
|
178
400
|
readonly positional: readonly [{
|
|
179
401
|
readonly kind: "positional";
|
|
180
402
|
readonly name: "portfolio_id";
|
|
181
403
|
readonly type: "integer";
|
|
182
404
|
readonly required: true;
|
|
183
405
|
readonly placeholder: "ID";
|
|
184
|
-
readonly description: "
|
|
406
|
+
readonly description: "Stable saved object identifier.";
|
|
185
407
|
}];
|
|
186
408
|
readonly options: readonly [];
|
|
187
|
-
readonly examples: readonly ["quantbrasil
|
|
409
|
+
readonly examples: readonly ["quantbrasil watchlists get 123"];
|
|
188
410
|
};
|
|
189
411
|
readonly tool: {
|
|
190
|
-
readonly name: "
|
|
191
|
-
readonly title: "Get
|
|
412
|
+
readonly name: "qb_watchlist_get";
|
|
413
|
+
readonly title: "Get watchlist";
|
|
192
414
|
};
|
|
193
415
|
readonly outputModes: readonly ["json", "human"];
|
|
194
416
|
}, {
|
|
195
|
-
readonly id: "
|
|
417
|
+
readonly id: "watchlists.create";
|
|
196
418
|
readonly kind: "mutation";
|
|
197
419
|
readonly visibility: readonly ["cli", "opencode"];
|
|
198
|
-
readonly description: "Create a new
|
|
420
|
+
readonly description: "Create a new watchlist for the authenticated user.";
|
|
199
421
|
readonly http: {
|
|
200
422
|
readonly method: "POST";
|
|
201
|
-
readonly path: "/api/desk/tools/
|
|
423
|
+
readonly path: "/api/desk/tools/watchlist/create";
|
|
202
424
|
readonly inputMode: "json_body";
|
|
203
425
|
readonly schemas: {
|
|
204
426
|
readonly request: "PortfolioCreateRequest";
|
|
@@ -206,33 +428,33 @@ export declare const capabilityRegistry: readonly [{
|
|
|
206
428
|
};
|
|
207
429
|
};
|
|
208
430
|
readonly cli: {
|
|
209
|
-
readonly group: "
|
|
431
|
+
readonly group: "watchlists";
|
|
210
432
|
readonly command: "create";
|
|
211
|
-
readonly summary: "Create a new
|
|
433
|
+
readonly summary: "Create a new watchlist.";
|
|
212
434
|
readonly positional: readonly [{
|
|
213
435
|
readonly kind: "positional";
|
|
214
436
|
readonly name: "name";
|
|
215
437
|
readonly type: "string";
|
|
216
438
|
readonly required: true;
|
|
217
439
|
readonly placeholder: "NOME";
|
|
218
|
-
readonly description: "
|
|
440
|
+
readonly description: "Name to save.";
|
|
219
441
|
}];
|
|
220
442
|
readonly options: readonly [];
|
|
221
|
-
readonly examples: readonly ["quantbrasil
|
|
443
|
+
readonly examples: readonly ["quantbrasil watchlists create \"Dividendos\""];
|
|
222
444
|
};
|
|
223
445
|
readonly tool: {
|
|
224
|
-
readonly name: "
|
|
225
|
-
readonly title: "Create
|
|
446
|
+
readonly name: "qb_watchlist_create";
|
|
447
|
+
readonly title: "Create watchlist";
|
|
226
448
|
};
|
|
227
449
|
readonly outputModes: readonly ["json", "human"];
|
|
228
450
|
}, {
|
|
229
|
-
readonly id: "
|
|
451
|
+
readonly id: "watchlists.rename";
|
|
230
452
|
readonly kind: "mutation";
|
|
231
453
|
readonly visibility: readonly ["cli", "opencode"];
|
|
232
|
-
readonly description: "Rename a
|
|
454
|
+
readonly description: "Rename a watchlist owned by the authenticated user.";
|
|
233
455
|
readonly http: {
|
|
234
456
|
readonly method: "POST";
|
|
235
|
-
readonly path: "/api/desk/tools/
|
|
457
|
+
readonly path: "/api/desk/tools/watchlist/rename";
|
|
236
458
|
readonly inputMode: "json_body";
|
|
237
459
|
readonly schemas: {
|
|
238
460
|
readonly request: "PortfolioRenameRequest";
|
|
@@ -240,40 +462,40 @@ export declare const capabilityRegistry: readonly [{
|
|
|
240
462
|
};
|
|
241
463
|
};
|
|
242
464
|
readonly cli: {
|
|
243
|
-
readonly group: "
|
|
465
|
+
readonly group: "watchlists";
|
|
244
466
|
readonly command: "rename";
|
|
245
|
-
readonly summary: "Rename an existing
|
|
467
|
+
readonly summary: "Rename an existing watchlist.";
|
|
246
468
|
readonly positional: readonly [{
|
|
247
469
|
readonly kind: "positional";
|
|
248
470
|
readonly name: "portfolio_id";
|
|
249
471
|
readonly type: "integer";
|
|
250
472
|
readonly required: true;
|
|
251
473
|
readonly placeholder: "ID";
|
|
252
|
-
readonly description: "
|
|
474
|
+
readonly description: "Stable saved object identifier.";
|
|
253
475
|
}, {
|
|
254
476
|
readonly kind: "positional";
|
|
255
477
|
readonly name: "name";
|
|
256
478
|
readonly type: "string";
|
|
257
479
|
readonly required: true;
|
|
258
480
|
readonly placeholder: "NOME";
|
|
259
|
-
readonly description: "
|
|
481
|
+
readonly description: "Name to save.";
|
|
260
482
|
}];
|
|
261
483
|
readonly options: readonly [];
|
|
262
|
-
readonly examples: readonly ["quantbrasil
|
|
484
|
+
readonly examples: readonly ["quantbrasil watchlists rename 123 \"Longo Prazo\""];
|
|
263
485
|
};
|
|
264
486
|
readonly tool: {
|
|
265
|
-
readonly name: "
|
|
266
|
-
readonly title: "Rename
|
|
487
|
+
readonly name: "qb_watchlist_rename";
|
|
488
|
+
readonly title: "Rename watchlist";
|
|
267
489
|
};
|
|
268
490
|
readonly outputModes: readonly ["json", "human"];
|
|
269
491
|
}, {
|
|
270
|
-
readonly id: "
|
|
492
|
+
readonly id: "watchlists.add-assets";
|
|
271
493
|
readonly kind: "mutation";
|
|
272
494
|
readonly visibility: readonly ["cli", "opencode"];
|
|
273
|
-
readonly description: "Add one or more monitored tickers to a
|
|
495
|
+
readonly description: "Add one or more monitored tickers to a watchlist.";
|
|
274
496
|
readonly http: {
|
|
275
497
|
readonly method: "POST";
|
|
276
|
-
readonly path: "/api/desk/tools/
|
|
498
|
+
readonly path: "/api/desk/tools/watchlist/add_assets";
|
|
277
499
|
readonly inputMode: "json_body";
|
|
278
500
|
readonly schemas: {
|
|
279
501
|
readonly request: "PortfolioAddAssetsRequest";
|
|
@@ -281,16 +503,16 @@ export declare const capabilityRegistry: readonly [{
|
|
|
281
503
|
};
|
|
282
504
|
};
|
|
283
505
|
readonly cli: {
|
|
284
|
-
readonly group: "
|
|
506
|
+
readonly group: "watchlists";
|
|
285
507
|
readonly command: "add-assets";
|
|
286
|
-
readonly summary: "Add monitored tickers to an existing
|
|
508
|
+
readonly summary: "Add monitored tickers to an existing watchlist.";
|
|
287
509
|
readonly positional: readonly [{
|
|
288
510
|
readonly kind: "positional";
|
|
289
511
|
readonly name: "portfolio_id";
|
|
290
512
|
readonly type: "integer";
|
|
291
513
|
readonly required: true;
|
|
292
514
|
readonly placeholder: "ID";
|
|
293
|
-
readonly description: "
|
|
515
|
+
readonly description: "Stable saved object identifier.";
|
|
294
516
|
}, {
|
|
295
517
|
readonly kind: "positional";
|
|
296
518
|
readonly name: "symbols";
|
|
@@ -299,24 +521,24 @@ export declare const capabilityRegistry: readonly [{
|
|
|
299
521
|
readonly placeholder: "TICKER";
|
|
300
522
|
readonly multiple: true;
|
|
301
523
|
readonly collectionFormat: "space_separated";
|
|
302
|
-
readonly description: "One or more monitored ticker symbols
|
|
524
|
+
readonly description: "One or more monitored ticker symbols.";
|
|
303
525
|
}];
|
|
304
526
|
readonly options: readonly [];
|
|
305
|
-
readonly examples: readonly ["quantbrasil
|
|
527
|
+
readonly examples: readonly ["quantbrasil watchlists add-assets 123 PETR4 VALE3"];
|
|
306
528
|
};
|
|
307
529
|
readonly tool: {
|
|
308
|
-
readonly name: "
|
|
309
|
-
readonly title: "Add
|
|
530
|
+
readonly name: "qb_watchlist_add_assets";
|
|
531
|
+
readonly title: "Add watchlist assets";
|
|
310
532
|
};
|
|
311
533
|
readonly outputModes: readonly ["json", "human"];
|
|
312
534
|
}, {
|
|
313
|
-
readonly id: "
|
|
535
|
+
readonly id: "watchlists.remove-assets";
|
|
314
536
|
readonly kind: "mutation";
|
|
315
537
|
readonly visibility: readonly ["cli", "opencode"];
|
|
316
|
-
readonly description: "Remove one or more monitored tickers from a
|
|
538
|
+
readonly description: "Remove one or more monitored tickers from a watchlist.";
|
|
317
539
|
readonly http: {
|
|
318
540
|
readonly method: "POST";
|
|
319
|
-
readonly path: "/api/desk/tools/
|
|
541
|
+
readonly path: "/api/desk/tools/watchlist/remove_assets";
|
|
320
542
|
readonly inputMode: "json_body";
|
|
321
543
|
readonly schemas: {
|
|
322
544
|
readonly request: "PortfolioRemoveAssetsRequest";
|
|
@@ -324,16 +546,16 @@ export declare const capabilityRegistry: readonly [{
|
|
|
324
546
|
};
|
|
325
547
|
};
|
|
326
548
|
readonly cli: {
|
|
327
|
-
readonly group: "
|
|
549
|
+
readonly group: "watchlists";
|
|
328
550
|
readonly command: "remove-assets";
|
|
329
|
-
readonly summary: "Remove monitored tickers from an existing
|
|
551
|
+
readonly summary: "Remove monitored tickers from an existing watchlist.";
|
|
330
552
|
readonly positional: readonly [{
|
|
331
553
|
readonly kind: "positional";
|
|
332
554
|
readonly name: "portfolio_id";
|
|
333
555
|
readonly type: "integer";
|
|
334
556
|
readonly required: true;
|
|
335
557
|
readonly placeholder: "ID";
|
|
336
|
-
readonly description: "
|
|
558
|
+
readonly description: "Stable saved object identifier.";
|
|
337
559
|
}, {
|
|
338
560
|
readonly kind: "positional";
|
|
339
561
|
readonly name: "symbols";
|
|
@@ -342,225 +564,486 @@ export declare const capabilityRegistry: readonly [{
|
|
|
342
564
|
readonly placeholder: "TICKER";
|
|
343
565
|
readonly multiple: true;
|
|
344
566
|
readonly collectionFormat: "space_separated";
|
|
345
|
-
readonly description: "One or more monitored ticker symbols
|
|
567
|
+
readonly description: "One or more monitored ticker symbols.";
|
|
346
568
|
}];
|
|
347
569
|
readonly options: readonly [];
|
|
348
|
-
readonly examples: readonly ["quantbrasil
|
|
570
|
+
readonly examples: readonly ["quantbrasil watchlists remove-assets 123 PETR4"];
|
|
349
571
|
};
|
|
350
572
|
readonly tool: {
|
|
351
|
-
readonly name: "
|
|
352
|
-
readonly title: "Remove
|
|
573
|
+
readonly name: "qb_watchlist_remove_assets";
|
|
574
|
+
readonly title: "Remove watchlist assets";
|
|
353
575
|
};
|
|
354
576
|
readonly outputModes: readonly ["json", "human"];
|
|
355
577
|
}, {
|
|
356
|
-
readonly id: "
|
|
578
|
+
readonly id: "holdings.list";
|
|
357
579
|
readonly kind: "read";
|
|
358
580
|
readonly visibility: readonly ["cli", "opencode"];
|
|
359
|
-
readonly description: "
|
|
581
|
+
readonly description: "List holdings owned by the authenticated user.";
|
|
360
582
|
readonly http: {
|
|
361
|
-
readonly method: "
|
|
362
|
-
readonly path: "/api/desk/tools/
|
|
363
|
-
readonly inputMode: "
|
|
583
|
+
readonly method: "GET";
|
|
584
|
+
readonly path: "/api/desk/tools/holding/list";
|
|
585
|
+
readonly inputMode: "none";
|
|
364
586
|
readonly schemas: {
|
|
365
|
-
readonly request:
|
|
366
|
-
readonly response: "
|
|
587
|
+
readonly request: null;
|
|
588
|
+
readonly response: "PortfolioListResponse";
|
|
367
589
|
};
|
|
368
590
|
};
|
|
369
591
|
readonly cli: {
|
|
370
|
-
readonly group: "
|
|
371
|
-
readonly command: "
|
|
372
|
-
readonly summary: "
|
|
592
|
+
readonly group: "holdings";
|
|
593
|
+
readonly command: "list";
|
|
594
|
+
readonly summary: "List holdings for investable metrics.";
|
|
373
595
|
readonly positional: readonly [];
|
|
374
|
-
readonly options: readonly [
|
|
375
|
-
|
|
376
|
-
readonly flag: "--portfolio";
|
|
377
|
-
readonly name: "portfolio_id";
|
|
378
|
-
readonly type: "integer";
|
|
379
|
-
readonly required: false;
|
|
380
|
-
readonly placeholder: "ID";
|
|
381
|
-
readonly exclusiveGroup: "source";
|
|
382
|
-
readonly description: "Saved portfolio id. Use exactly one source: --portfolio or repeated --asset.";
|
|
383
|
-
}, {
|
|
384
|
-
readonly kind: "option";
|
|
385
|
-
readonly flag: "--asset";
|
|
386
|
-
readonly name: "assets";
|
|
387
|
-
readonly type: "string_array";
|
|
388
|
-
readonly required: false;
|
|
389
|
-
readonly placeholder: "TICKER[:PESO]";
|
|
390
|
-
readonly multiple: true;
|
|
391
|
-
readonly collectionFormat: "repeatable";
|
|
392
|
-
readonly exclusiveGroup: "source";
|
|
393
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PRIO3:50.";
|
|
394
|
-
}, {
|
|
395
|
-
readonly kind: "option";
|
|
396
|
-
readonly flag: "--from";
|
|
397
|
-
readonly name: "start_date";
|
|
398
|
-
readonly type: "string";
|
|
399
|
-
readonly required: true;
|
|
400
|
-
readonly placeholder: "AAAA-MM-DD";
|
|
401
|
-
readonly description: "Inclusive start date in ISO format.";
|
|
402
|
-
}, {
|
|
403
|
-
readonly kind: "option";
|
|
404
|
-
readonly flag: "--to";
|
|
405
|
-
readonly name: "end_date";
|
|
406
|
-
readonly type: "string";
|
|
407
|
-
readonly required: true;
|
|
408
|
-
readonly placeholder: "AAAA-MM-DD";
|
|
409
|
-
readonly description: "Inclusive end date in ISO format.";
|
|
410
|
-
}];
|
|
411
|
-
readonly examples: readonly ["quantbrasil analytics historical-return --portfolio 123 --from 2024-01-01 --to 2025-01-01", "quantbrasil analytics historical-return --asset PRIO3:50 --asset VALE3:50 --from 2021-01-01 --to 2025-01-01"];
|
|
596
|
+
readonly options: readonly [];
|
|
597
|
+
readonly examples: readonly ["quantbrasil holdings list"];
|
|
412
598
|
};
|
|
413
599
|
readonly tool: {
|
|
414
|
-
readonly name: "
|
|
415
|
-
readonly title: "
|
|
600
|
+
readonly name: "qb_holding_list";
|
|
601
|
+
readonly title: "List holdings";
|
|
416
602
|
};
|
|
417
603
|
readonly outputModes: readonly ["json", "human"];
|
|
418
604
|
}, {
|
|
419
|
-
readonly id: "
|
|
605
|
+
readonly id: "holdings.get";
|
|
420
606
|
readonly kind: "read";
|
|
421
607
|
readonly visibility: readonly ["cli", "opencode"];
|
|
422
|
-
readonly description: "
|
|
608
|
+
readonly description: "Return one holding by id, scoped to the acting user.";
|
|
423
609
|
readonly http: {
|
|
424
610
|
readonly method: "POST";
|
|
425
|
-
readonly path: "/api/desk/tools/
|
|
611
|
+
readonly path: "/api/desk/tools/holding/get";
|
|
426
612
|
readonly inputMode: "json_body";
|
|
427
613
|
readonly schemas: {
|
|
428
|
-
readonly request: "
|
|
429
|
-
readonly response: "
|
|
614
|
+
readonly request: "PortfolioGetRequest";
|
|
615
|
+
readonly response: "PortfolioGetResponse";
|
|
430
616
|
};
|
|
431
617
|
};
|
|
432
618
|
readonly cli: {
|
|
433
|
-
readonly group: "
|
|
434
|
-
readonly command: "
|
|
435
|
-
readonly summary: "
|
|
436
|
-
readonly positional: readonly [
|
|
437
|
-
|
|
438
|
-
readonly kind: "option";
|
|
439
|
-
readonly flag: "--portfolio";
|
|
619
|
+
readonly group: "holdings";
|
|
620
|
+
readonly command: "get";
|
|
621
|
+
readonly summary: "Get a holding by id.";
|
|
622
|
+
readonly positional: readonly [{
|
|
623
|
+
readonly kind: "positional";
|
|
440
624
|
readonly name: "portfolio_id";
|
|
441
625
|
readonly type: "integer";
|
|
442
|
-
readonly required:
|
|
626
|
+
readonly required: true;
|
|
443
627
|
readonly placeholder: "ID";
|
|
444
|
-
readonly
|
|
445
|
-
readonly description: "Saved portfolio id. Use exactly one source: --portfolio or repeated --asset.";
|
|
446
|
-
}, {
|
|
447
|
-
readonly kind: "option";
|
|
448
|
-
readonly flag: "--asset";
|
|
449
|
-
readonly name: "assets";
|
|
450
|
-
readonly type: "string_array";
|
|
451
|
-
readonly required: false;
|
|
452
|
-
readonly placeholder: "TICKER[:PESO]";
|
|
453
|
-
readonly multiple: true;
|
|
454
|
-
readonly collectionFormat: "repeatable";
|
|
455
|
-
readonly exclusiveGroup: "source";
|
|
456
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PETR4:120 or WINFUT:-20.";
|
|
457
|
-
}, {
|
|
458
|
-
readonly kind: "option";
|
|
459
|
-
readonly flag: "--years";
|
|
460
|
-
readonly name: "years";
|
|
461
|
-
readonly type: "enum";
|
|
462
|
-
readonly required: false;
|
|
463
|
-
readonly placeholder: "ANOS";
|
|
464
|
-
readonly defaultValue: 1;
|
|
465
|
-
readonly enumValues: readonly ["1", "3", "5"];
|
|
466
|
-
readonly description: "Historical lookback window in years. Accepted values: 1, 3, or 5.";
|
|
628
|
+
readonly description: "Stable saved object identifier.";
|
|
467
629
|
}];
|
|
468
|
-
readonly
|
|
630
|
+
readonly options: readonly [];
|
|
631
|
+
readonly examples: readonly ["quantbrasil holdings get 123"];
|
|
469
632
|
};
|
|
470
633
|
readonly tool: {
|
|
471
|
-
readonly name: "
|
|
472
|
-
readonly title: "
|
|
634
|
+
readonly name: "qb_holding_get";
|
|
635
|
+
readonly title: "Get holding";
|
|
473
636
|
};
|
|
474
637
|
readonly outputModes: readonly ["json", "human"];
|
|
475
638
|
}, {
|
|
476
|
-
readonly id: "
|
|
477
|
-
readonly kind: "
|
|
639
|
+
readonly id: "holdings.create";
|
|
640
|
+
readonly kind: "mutation";
|
|
478
641
|
readonly visibility: readonly ["cli", "opencode"];
|
|
479
|
-
readonly description: "
|
|
642
|
+
readonly description: "Create a new holding for the authenticated user.";
|
|
480
643
|
readonly http: {
|
|
481
644
|
readonly method: "POST";
|
|
482
|
-
readonly path: "/api/desk/tools/
|
|
645
|
+
readonly path: "/api/desk/tools/holding/create";
|
|
483
646
|
readonly inputMode: "json_body";
|
|
484
647
|
readonly schemas: {
|
|
485
|
-
readonly request: "
|
|
486
|
-
readonly response: "
|
|
648
|
+
readonly request: "DeskHoldingCreateRequest";
|
|
649
|
+
readonly response: "PortfolioCreateResponse";
|
|
487
650
|
};
|
|
488
651
|
};
|
|
489
652
|
readonly cli: {
|
|
490
|
-
readonly group: "
|
|
491
|
-
readonly command: "
|
|
492
|
-
readonly summary: "
|
|
493
|
-
readonly positional: readonly [
|
|
653
|
+
readonly group: "holdings";
|
|
654
|
+
readonly command: "create";
|
|
655
|
+
readonly summary: "Create a new holding.";
|
|
656
|
+
readonly positional: readonly [{
|
|
657
|
+
readonly kind: "positional";
|
|
658
|
+
readonly name: "name";
|
|
659
|
+
readonly type: "string";
|
|
660
|
+
readonly required: true;
|
|
661
|
+
readonly placeholder: "NOME";
|
|
662
|
+
readonly description: "Name to save.";
|
|
663
|
+
}];
|
|
494
664
|
readonly options: readonly [{
|
|
495
665
|
readonly kind: "option";
|
|
496
|
-
readonly flag: "--
|
|
497
|
-
readonly name: "
|
|
498
|
-
readonly type: "
|
|
666
|
+
readonly flag: "--mode";
|
|
667
|
+
readonly name: "default_allocation_input";
|
|
668
|
+
readonly type: "enum";
|
|
499
669
|
readonly required: false;
|
|
500
|
-
readonly placeholder: "
|
|
501
|
-
readonly
|
|
502
|
-
readonly
|
|
670
|
+
readonly placeholder: "target|position";
|
|
671
|
+
readonly defaultValue: "target";
|
|
672
|
+
readonly enumValues: readonly ["target", "position"];
|
|
673
|
+
readonly description: "How the holding is controlled initially: target weights or positions.";
|
|
503
674
|
}, {
|
|
504
675
|
readonly kind: "option";
|
|
505
|
-
readonly flag: "--
|
|
506
|
-
readonly name: "
|
|
676
|
+
readonly flag: "--target";
|
|
677
|
+
readonly name: "targets";
|
|
507
678
|
readonly type: "string_array";
|
|
508
679
|
readonly required: false;
|
|
509
|
-
readonly placeholder: "TICKER
|
|
680
|
+
readonly placeholder: "TICKER:PESO";
|
|
510
681
|
readonly multiple: true;
|
|
511
682
|
readonly collectionFormat: "repeatable";
|
|
512
|
-
readonly
|
|
513
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PRIO3:120 or WINFUT:-20.";
|
|
514
|
-
}, {
|
|
515
|
-
readonly kind: "option";
|
|
516
|
-
readonly flag: "--years";
|
|
517
|
-
readonly name: "years";
|
|
518
|
-
readonly type: "integer";
|
|
519
|
-
readonly required: false;
|
|
520
|
-
readonly placeholder: "ANOS";
|
|
521
|
-
readonly defaultValue: 1;
|
|
522
|
-
readonly description: "Historical lookback window in years. The VaR horizon remains one day.";
|
|
523
|
-
}, {
|
|
524
|
-
readonly kind: "option";
|
|
525
|
-
readonly flag: "--confidence";
|
|
526
|
-
readonly name: "confidence_pct";
|
|
527
|
-
readonly type: "number";
|
|
528
|
-
readonly required: false;
|
|
529
|
-
readonly placeholder: "PERCENTUAL";
|
|
530
|
-
readonly defaultValue: 95;
|
|
531
|
-
readonly description: "Confidence level in percent, for example 95 or 99.";
|
|
683
|
+
readonly description: "Initial target weight in TICKER:WEIGHT_PCT form.";
|
|
532
684
|
}];
|
|
533
|
-
readonly examples: readonly ["quantbrasil
|
|
685
|
+
readonly examples: readonly ["quantbrasil holdings create \"Longo Prazo\"", "quantbrasil holdings create \"Teórica\" --target PRIO3:50 --target VALE3:50", "quantbrasil holdings create \"Real\" --mode position"];
|
|
534
686
|
};
|
|
535
687
|
readonly tool: {
|
|
536
|
-
readonly name: "
|
|
537
|
-
readonly title: "
|
|
688
|
+
readonly name: "qb_holding_create";
|
|
689
|
+
readonly title: "Create holding";
|
|
538
690
|
};
|
|
539
691
|
readonly outputModes: readonly ["json", "human"];
|
|
540
|
-
}
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
export declare function getCapabilityById(id: CapabilityId): {
|
|
544
|
-
readonly id: "market.assets";
|
|
545
|
-
readonly kind: "read";
|
|
692
|
+
}, {
|
|
693
|
+
readonly id: "holdings.rename";
|
|
694
|
+
readonly kind: "mutation";
|
|
546
695
|
readonly visibility: readonly ["cli", "opencode"];
|
|
547
|
-
readonly description: "
|
|
696
|
+
readonly description: "Rename a holding owned by the authenticated user.";
|
|
548
697
|
readonly http: {
|
|
549
|
-
readonly method: "
|
|
550
|
-
readonly path: "/api/desk/tools/
|
|
551
|
-
readonly inputMode: "
|
|
698
|
+
readonly method: "POST";
|
|
699
|
+
readonly path: "/api/desk/tools/holding/rename";
|
|
700
|
+
readonly inputMode: "json_body";
|
|
552
701
|
readonly schemas: {
|
|
553
|
-
readonly request:
|
|
554
|
-
readonly response: "
|
|
702
|
+
readonly request: "PortfolioRenameRequest";
|
|
703
|
+
readonly response: "PortfolioMutationResponse";
|
|
555
704
|
};
|
|
556
705
|
};
|
|
557
706
|
readonly cli: {
|
|
558
|
-
readonly group: "
|
|
559
|
-
readonly command: "
|
|
560
|
-
readonly summary: "
|
|
561
|
-
readonly positional: readonly [
|
|
562
|
-
|
|
563
|
-
readonly
|
|
707
|
+
readonly group: "holdings";
|
|
708
|
+
readonly command: "rename";
|
|
709
|
+
readonly summary: "Rename an existing holding.";
|
|
710
|
+
readonly positional: readonly [{
|
|
711
|
+
readonly kind: "positional";
|
|
712
|
+
readonly name: "portfolio_id";
|
|
713
|
+
readonly type: "integer";
|
|
714
|
+
readonly required: true;
|
|
715
|
+
readonly placeholder: "ID";
|
|
716
|
+
readonly description: "Stable saved object identifier.";
|
|
717
|
+
}, {
|
|
718
|
+
readonly kind: "positional";
|
|
719
|
+
readonly name: "name";
|
|
720
|
+
readonly type: "string";
|
|
721
|
+
readonly required: true;
|
|
722
|
+
readonly placeholder: "NOME";
|
|
723
|
+
readonly description: "Name to save.";
|
|
724
|
+
}];
|
|
725
|
+
readonly options: readonly [];
|
|
726
|
+
readonly examples: readonly ["quantbrasil holdings rename 123 \"Longo Prazo\""];
|
|
727
|
+
};
|
|
728
|
+
readonly tool: {
|
|
729
|
+
readonly name: "qb_holding_rename";
|
|
730
|
+
readonly title: "Rename holding";
|
|
731
|
+
};
|
|
732
|
+
readonly outputModes: readonly ["json", "human"];
|
|
733
|
+
}, {
|
|
734
|
+
readonly id: "holdings.set-targets";
|
|
735
|
+
readonly kind: "mutation";
|
|
736
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
737
|
+
readonly description: "Set target weights for a holding owned by the authenticated user.";
|
|
738
|
+
readonly http: {
|
|
739
|
+
readonly method: "POST";
|
|
740
|
+
readonly path: "/api/desk/tools/holding/set_targets";
|
|
741
|
+
readonly inputMode: "json_body";
|
|
742
|
+
readonly schemas: {
|
|
743
|
+
readonly request: "HoldingSetTargetsRequest";
|
|
744
|
+
readonly response: "PortfolioMutationResponse";
|
|
745
|
+
};
|
|
746
|
+
};
|
|
747
|
+
readonly cli: {
|
|
748
|
+
readonly group: "holdings";
|
|
749
|
+
readonly command: "set-targets";
|
|
750
|
+
readonly summary: "Set target weights for a holding.";
|
|
751
|
+
readonly positional: readonly [{
|
|
752
|
+
readonly kind: "positional";
|
|
753
|
+
readonly name: "portfolio_id";
|
|
754
|
+
readonly type: "integer";
|
|
755
|
+
readonly required: true;
|
|
756
|
+
readonly placeholder: "ID";
|
|
757
|
+
readonly description: "Stable saved object identifier.";
|
|
758
|
+
}, {
|
|
759
|
+
readonly kind: "positional";
|
|
760
|
+
readonly name: "targets";
|
|
761
|
+
readonly type: "string_array";
|
|
762
|
+
readonly required: true;
|
|
763
|
+
readonly placeholder: "TICKER:PESO";
|
|
764
|
+
readonly multiple: true;
|
|
765
|
+
readonly collectionFormat: "space_separated";
|
|
766
|
+
readonly description: "One or more target weights in TICKER:WEIGHT_PCT form.";
|
|
767
|
+
}];
|
|
768
|
+
readonly options: readonly [];
|
|
769
|
+
readonly examples: readonly ["quantbrasil holdings set-targets 123 PRIO3:50 VALE3:50"];
|
|
770
|
+
};
|
|
771
|
+
readonly tool: {
|
|
772
|
+
readonly name: "qb_holding_set_targets";
|
|
773
|
+
readonly title: "Set holding target weights";
|
|
774
|
+
};
|
|
775
|
+
readonly outputModes: readonly ["json", "human"];
|
|
776
|
+
}, {
|
|
777
|
+
readonly id: "holdings.set-positions";
|
|
778
|
+
readonly kind: "mutation";
|
|
779
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
780
|
+
readonly description: "Set position quantities for a holding owned by the authenticated user.";
|
|
781
|
+
readonly http: {
|
|
782
|
+
readonly method: "POST";
|
|
783
|
+
readonly path: "/api/desk/tools/holding/set_positions";
|
|
784
|
+
readonly inputMode: "json_body";
|
|
785
|
+
readonly schemas: {
|
|
786
|
+
readonly request: "HoldingSetPositionsRequest";
|
|
787
|
+
readonly response: "PortfolioMutationResponse";
|
|
788
|
+
};
|
|
789
|
+
};
|
|
790
|
+
readonly cli: {
|
|
791
|
+
readonly group: "holdings";
|
|
792
|
+
readonly command: "set-positions";
|
|
793
|
+
readonly summary: "Set position quantities for a holding.";
|
|
794
|
+
readonly positional: readonly [{
|
|
795
|
+
readonly kind: "positional";
|
|
796
|
+
readonly name: "portfolio_id";
|
|
797
|
+
readonly type: "integer";
|
|
798
|
+
readonly required: true;
|
|
799
|
+
readonly placeholder: "ID";
|
|
800
|
+
readonly description: "Stable saved object identifier.";
|
|
801
|
+
}, {
|
|
802
|
+
readonly kind: "positional";
|
|
803
|
+
readonly name: "positions";
|
|
804
|
+
readonly type: "string_array";
|
|
805
|
+
readonly required: true;
|
|
806
|
+
readonly placeholder: "TICKER:QUANTIDADE";
|
|
807
|
+
readonly multiple: true;
|
|
808
|
+
readonly collectionFormat: "space_separated";
|
|
809
|
+
readonly description: "One or more position quantities in TICKER:QUANTITY form.";
|
|
810
|
+
}];
|
|
811
|
+
readonly options: readonly [];
|
|
812
|
+
readonly examples: readonly ["quantbrasil holdings set-positions 123 PRIO3:1600 BTC-USD:0.25"];
|
|
813
|
+
};
|
|
814
|
+
readonly tool: {
|
|
815
|
+
readonly name: "qb_holding_set_positions";
|
|
816
|
+
readonly title: "Set holding position quantities";
|
|
817
|
+
};
|
|
818
|
+
readonly outputModes: readonly ["json", "human"];
|
|
819
|
+
}, {
|
|
820
|
+
readonly id: "holdings.historical-return";
|
|
821
|
+
readonly kind: "read";
|
|
822
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
823
|
+
readonly description: "Calculate historical return for a holding.";
|
|
824
|
+
readonly http: {
|
|
825
|
+
readonly method: "POST";
|
|
826
|
+
readonly path: "/api/desk/tools/holding/historical_return";
|
|
827
|
+
readonly inputMode: "json_body";
|
|
828
|
+
readonly schemas: {
|
|
829
|
+
readonly request: "PortfolioHistoricalReturnRequest";
|
|
830
|
+
readonly response: "HistoricalReturnResponse";
|
|
831
|
+
};
|
|
832
|
+
};
|
|
833
|
+
readonly cli: {
|
|
834
|
+
readonly group: "holdings";
|
|
835
|
+
readonly command: "historical-return";
|
|
836
|
+
readonly summary: "Calculate historical return for a saved holding.";
|
|
837
|
+
readonly positional: readonly [{
|
|
838
|
+
readonly kind: "positional";
|
|
839
|
+
readonly name: "portfolio_id";
|
|
840
|
+
readonly type: "integer";
|
|
841
|
+
readonly required: true;
|
|
842
|
+
readonly placeholder: "ID";
|
|
843
|
+
readonly description: "Stable saved object identifier.";
|
|
844
|
+
}];
|
|
845
|
+
readonly options: readonly [{
|
|
846
|
+
readonly kind: "option";
|
|
847
|
+
readonly flag: "--from";
|
|
848
|
+
readonly name: "start_date";
|
|
849
|
+
readonly type: "string";
|
|
850
|
+
readonly required: false;
|
|
851
|
+
readonly placeholder: "AAAA-MM-DD";
|
|
852
|
+
readonly description: "Inclusive start date in ISO format. Use with --to, or use --period.";
|
|
853
|
+
}, {
|
|
854
|
+
readonly kind: "option";
|
|
855
|
+
readonly flag: "--to";
|
|
856
|
+
readonly name: "end_date";
|
|
857
|
+
readonly type: "string";
|
|
858
|
+
readonly required: false;
|
|
859
|
+
readonly placeholder: "AAAA-MM-DD";
|
|
860
|
+
readonly description: "Inclusive end date in ISO format. Use with --from, or use --period.";
|
|
861
|
+
}, {
|
|
862
|
+
readonly kind: "option";
|
|
863
|
+
readonly flag: "--period";
|
|
864
|
+
readonly name: "period";
|
|
865
|
+
readonly type: "string";
|
|
866
|
+
readonly required: false;
|
|
867
|
+
readonly placeholder: "PERIODO";
|
|
868
|
+
readonly description: "Lookback period such as 1y, 3y, 5y, or 6m. Mutually exclusive with --from/--to.";
|
|
869
|
+
}];
|
|
870
|
+
readonly examples: readonly ["quantbrasil holdings historical-return 123 --from 2024-01-01 --to 2025-01-01", "quantbrasil holdings historical-return 123 --period 1y"];
|
|
871
|
+
};
|
|
872
|
+
readonly tool: {
|
|
873
|
+
readonly name: "qb_holding_historical_return";
|
|
874
|
+
readonly title: "Calculate holding historical return";
|
|
875
|
+
};
|
|
876
|
+
readonly outputModes: readonly ["json", "human"];
|
|
877
|
+
}, {
|
|
878
|
+
readonly id: "holdings.beta";
|
|
879
|
+
readonly kind: "read";
|
|
880
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
881
|
+
readonly description: "Calculate holding beta against IBOV.";
|
|
882
|
+
readonly http: {
|
|
883
|
+
readonly method: "POST";
|
|
884
|
+
readonly path: "/api/desk/tools/holding/beta";
|
|
885
|
+
readonly inputMode: "json_body";
|
|
886
|
+
readonly schemas: {
|
|
887
|
+
readonly request: "PortfolioBetaRequest";
|
|
888
|
+
readonly response: "PortfolioBetaResponse";
|
|
889
|
+
};
|
|
890
|
+
};
|
|
891
|
+
readonly cli: {
|
|
892
|
+
readonly group: "holdings";
|
|
893
|
+
readonly command: "beta";
|
|
894
|
+
readonly summary: "Calculate holding beta against IBOV.";
|
|
895
|
+
readonly positional: readonly [{
|
|
896
|
+
readonly kind: "positional";
|
|
897
|
+
readonly name: "portfolio_id";
|
|
898
|
+
readonly type: "integer";
|
|
899
|
+
readonly required: true;
|
|
900
|
+
readonly placeholder: "ID";
|
|
901
|
+
readonly description: "Stable saved object identifier.";
|
|
902
|
+
}];
|
|
903
|
+
readonly options: readonly [{
|
|
904
|
+
readonly kind: "option";
|
|
905
|
+
readonly flag: "--years";
|
|
906
|
+
readonly name: "years";
|
|
907
|
+
readonly type: "enum";
|
|
908
|
+
readonly required: false;
|
|
909
|
+
readonly placeholder: "ANOS";
|
|
910
|
+
readonly defaultValue: 1;
|
|
911
|
+
readonly enumValues: readonly ["1", "3", "5"];
|
|
912
|
+
readonly description: "Historical lookback window in years. Accepted values: 1, 3, or 5.";
|
|
913
|
+
}];
|
|
914
|
+
readonly examples: readonly ["quantbrasil holdings beta 123 --years 3"];
|
|
915
|
+
};
|
|
916
|
+
readonly tool: {
|
|
917
|
+
readonly name: "qb_holding_beta";
|
|
918
|
+
readonly title: "Calculate holding beta";
|
|
919
|
+
};
|
|
920
|
+
readonly outputModes: readonly ["json", "human"];
|
|
921
|
+
}, {
|
|
922
|
+
readonly id: "holdings.var";
|
|
923
|
+
readonly kind: "read";
|
|
924
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
925
|
+
readonly description: "Calculate one-day Value-at-Risk for a holding.";
|
|
926
|
+
readonly http: {
|
|
927
|
+
readonly method: "POST";
|
|
928
|
+
readonly path: "/api/desk/tools/holding/var";
|
|
929
|
+
readonly inputMode: "json_body";
|
|
930
|
+
readonly schemas: {
|
|
931
|
+
readonly request: "PortfolioVaRRequest";
|
|
932
|
+
readonly response: "PortfolioVaRResponse";
|
|
933
|
+
};
|
|
934
|
+
};
|
|
935
|
+
readonly cli: {
|
|
936
|
+
readonly group: "holdings";
|
|
937
|
+
readonly command: "var";
|
|
938
|
+
readonly summary: "Calculate one-day Value-at-Risk for a holding.";
|
|
939
|
+
readonly positional: readonly [{
|
|
940
|
+
readonly kind: "positional";
|
|
941
|
+
readonly name: "portfolio_id";
|
|
942
|
+
readonly type: "integer";
|
|
943
|
+
readonly required: true;
|
|
944
|
+
readonly placeholder: "ID";
|
|
945
|
+
readonly description: "Stable saved object identifier.";
|
|
946
|
+
}];
|
|
947
|
+
readonly options: readonly [{
|
|
948
|
+
readonly kind: "option";
|
|
949
|
+
readonly flag: "--years";
|
|
950
|
+
readonly name: "years";
|
|
951
|
+
readonly type: "integer";
|
|
952
|
+
readonly required: false;
|
|
953
|
+
readonly placeholder: "ANOS";
|
|
954
|
+
readonly defaultValue: 1;
|
|
955
|
+
readonly description: "Historical lookback window in years. The VaR horizon remains one day.";
|
|
956
|
+
}, {
|
|
957
|
+
readonly kind: "option";
|
|
958
|
+
readonly flag: "--confidence";
|
|
959
|
+
readonly name: "confidence_pct";
|
|
960
|
+
readonly type: "number";
|
|
961
|
+
readonly required: false;
|
|
962
|
+
readonly placeholder: "PERCENTUAL";
|
|
963
|
+
readonly defaultValue: 95;
|
|
964
|
+
readonly description: "Confidence level in percent, for example 95 or 99.";
|
|
965
|
+
}];
|
|
966
|
+
readonly examples: readonly ["quantbrasil holdings var 123 --years 1 --confidence 95"];
|
|
967
|
+
};
|
|
968
|
+
readonly tool: {
|
|
969
|
+
readonly name: "qb_holding_var";
|
|
970
|
+
readonly title: "Calculate holding VaR";
|
|
971
|
+
};
|
|
972
|
+
readonly outputModes: readonly ["json", "human"];
|
|
973
|
+
}, {
|
|
974
|
+
readonly id: "cointegration.pair";
|
|
975
|
+
readonly kind: "read";
|
|
976
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
977
|
+
readonly description: "Calcula cointegração para análise de Long & Short entre dois ativos: z-score, beta, p-valor, meia-vida e intervalos de confiança.";
|
|
978
|
+
readonly http: {
|
|
979
|
+
readonly method: "POST";
|
|
980
|
+
readonly path: "/api/desk/tools/cointegration/pair";
|
|
981
|
+
readonly inputMode: "json_body";
|
|
982
|
+
readonly schemas: {
|
|
983
|
+
readonly request: "CointegrationPairRequest";
|
|
984
|
+
readonly response: "CointegrationPairResponse";
|
|
985
|
+
};
|
|
986
|
+
};
|
|
987
|
+
readonly cli: {
|
|
988
|
+
readonly group: "cointegration";
|
|
989
|
+
readonly command: "pair";
|
|
990
|
+
readonly summary: "Calcula cointegração para análise de Long & Short.";
|
|
991
|
+
readonly positional: readonly [{
|
|
992
|
+
readonly kind: "positional";
|
|
993
|
+
readonly name: "base_asset";
|
|
994
|
+
readonly type: "string";
|
|
995
|
+
readonly required: true;
|
|
996
|
+
readonly placeholder: "TICKER";
|
|
997
|
+
readonly description: "Ticker do ativo base, por exemplo PETR4.";
|
|
998
|
+
}, {
|
|
999
|
+
readonly kind: "positional";
|
|
1000
|
+
readonly name: "comparison_asset";
|
|
1001
|
+
readonly type: "string";
|
|
1002
|
+
readonly required: true;
|
|
1003
|
+
readonly placeholder: "TICKER";
|
|
1004
|
+
readonly description: "Ticker do ativo de comparação, por exemplo VALE3.";
|
|
1005
|
+
}];
|
|
1006
|
+
readonly options: readonly [{
|
|
1007
|
+
readonly kind: "option";
|
|
1008
|
+
readonly flag: "--window";
|
|
1009
|
+
readonly name: "window";
|
|
1010
|
+
readonly type: "integer";
|
|
1011
|
+
readonly required: false;
|
|
1012
|
+
readonly placeholder: "N";
|
|
1013
|
+
readonly defaultValue: 250;
|
|
1014
|
+
readonly description: "Janela de candles para a regressão. Padrão 250 dias úteis.";
|
|
1015
|
+
}];
|
|
1016
|
+
readonly examples: readonly ["quantbrasil cointegration pair PETR4 VALE3", "quantbrasil cointegration pair PETR4 VALE3 --window 120", "quantbrasil cointegration pair PETR4 VALE3 --json"];
|
|
1017
|
+
};
|
|
1018
|
+
readonly tool: {
|
|
1019
|
+
readonly name: "qb_cointegration_pair";
|
|
1020
|
+
readonly title: "Calcular cointegração para Long & Short";
|
|
1021
|
+
};
|
|
1022
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1023
|
+
}];
|
|
1024
|
+
export type CapabilityId = (typeof capabilityRegistry)[number]["id"];
|
|
1025
|
+
export declare const capabilityRegistryById: Record<CapabilityId, (typeof capabilityRegistry)[number]>;
|
|
1026
|
+
export declare function getCapabilityById(id: CapabilityId): {
|
|
1027
|
+
readonly id: "market.assets";
|
|
1028
|
+
readonly kind: "read";
|
|
1029
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1030
|
+
readonly description: "List the monitored QuantBrasil asset universe, optionally filtered by tracked asset type.";
|
|
1031
|
+
readonly http: {
|
|
1032
|
+
readonly method: "GET";
|
|
1033
|
+
readonly path: "/api/desk/tools/market/assets";
|
|
1034
|
+
readonly inputMode: "query";
|
|
1035
|
+
readonly schemas: {
|
|
1036
|
+
readonly request: null;
|
|
1037
|
+
readonly response: "MonitoredAssetsResponse";
|
|
1038
|
+
};
|
|
1039
|
+
};
|
|
1040
|
+
readonly cli: {
|
|
1041
|
+
readonly group: "market";
|
|
1042
|
+
readonly command: "assets";
|
|
1043
|
+
readonly summary: "List monitored asset tickers.";
|
|
1044
|
+
readonly positional: readonly [];
|
|
1045
|
+
readonly options: readonly [{
|
|
1046
|
+
readonly kind: "option";
|
|
564
1047
|
readonly flag: "--type";
|
|
565
1048
|
readonly name: "type";
|
|
566
1049
|
readonly type: "enum";
|
|
@@ -568,118 +1051,562 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
568
1051
|
readonly placeholder: "TIPO";
|
|
569
1052
|
readonly enumValues: readonly ["B3", "ETF", "ETF-US", "BDR", "Futuro", "Crypto", "S&P500"];
|
|
570
1053
|
readonly description: "Filter by the exact monitored asset type.";
|
|
1054
|
+
}, {
|
|
1055
|
+
readonly kind: "option";
|
|
1056
|
+
readonly flag: "--search";
|
|
1057
|
+
readonly name: "search";
|
|
1058
|
+
readonly type: "string";
|
|
1059
|
+
readonly required: false;
|
|
1060
|
+
readonly placeholder: "TEXTO";
|
|
1061
|
+
readonly description: "Filter monitored tickers by case-insensitive text.";
|
|
1062
|
+
}];
|
|
1063
|
+
readonly examples: readonly ["quantbrasil market assets", "quantbrasil market assets --type B3", "quantbrasil market assets --search BTC"];
|
|
1064
|
+
};
|
|
1065
|
+
readonly tool: {
|
|
1066
|
+
readonly name: "qb_market_assets";
|
|
1067
|
+
readonly title: "List monitored assets";
|
|
1068
|
+
};
|
|
1069
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1070
|
+
} | {
|
|
1071
|
+
readonly id: "market.price";
|
|
1072
|
+
readonly kind: "read";
|
|
1073
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1074
|
+
readonly description: "Return the latest or date-specific price snapshot for a single ticker.";
|
|
1075
|
+
readonly http: {
|
|
1076
|
+
readonly method: "POST";
|
|
1077
|
+
readonly path: "/api/desk/tools/market/price";
|
|
1078
|
+
readonly inputMode: "json_body";
|
|
1079
|
+
readonly schemas: {
|
|
1080
|
+
readonly request: "MarketPriceRequest";
|
|
1081
|
+
readonly response: "MarketPriceResponse";
|
|
1082
|
+
};
|
|
1083
|
+
};
|
|
1084
|
+
readonly cli: {
|
|
1085
|
+
readonly group: "market";
|
|
1086
|
+
readonly command: "price";
|
|
1087
|
+
readonly summary: "Get the current or historical price snapshot for one ticker.";
|
|
1088
|
+
readonly positional: readonly [{
|
|
1089
|
+
readonly kind: "positional";
|
|
1090
|
+
readonly name: "ticker";
|
|
1091
|
+
readonly type: "string";
|
|
1092
|
+
readonly required: true;
|
|
1093
|
+
readonly placeholder: "TICKER";
|
|
1094
|
+
readonly description: "Ticker symbol, for example PETR4 or VALE3.";
|
|
1095
|
+
}];
|
|
1096
|
+
readonly options: readonly [{
|
|
1097
|
+
readonly kind: "option";
|
|
1098
|
+
readonly flag: "--date";
|
|
1099
|
+
readonly name: "date";
|
|
1100
|
+
readonly type: "string";
|
|
1101
|
+
readonly required: false;
|
|
1102
|
+
readonly placeholder: "AAAA-MM-DD";
|
|
1103
|
+
readonly description: "Reference date in ISO format. When omitted, returns the latest available price.";
|
|
1104
|
+
}, {
|
|
1105
|
+
readonly kind: "option";
|
|
1106
|
+
readonly flag: "--timeframe";
|
|
1107
|
+
readonly name: "timeframe";
|
|
1108
|
+
readonly type: "string";
|
|
1109
|
+
readonly required: false;
|
|
1110
|
+
readonly placeholder: "TIMEFRAME";
|
|
1111
|
+
readonly defaultValue: "D1";
|
|
1112
|
+
readonly description: "Timeframe identifier. Defaults to D1.";
|
|
1113
|
+
}];
|
|
1114
|
+
readonly examples: readonly ["quantbrasil market price PETR4", "quantbrasil market price PETR4 --date 2026-04-10 --timeframe D1"];
|
|
1115
|
+
};
|
|
1116
|
+
readonly tool: {
|
|
1117
|
+
readonly name: "qb_market_price";
|
|
1118
|
+
readonly title: "Get market price";
|
|
1119
|
+
};
|
|
1120
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1121
|
+
} | {
|
|
1122
|
+
readonly id: "assets.overview";
|
|
1123
|
+
readonly kind: "read";
|
|
1124
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1125
|
+
readonly description: "Return a selective asset overview using only the requested sections.";
|
|
1126
|
+
readonly http: {
|
|
1127
|
+
readonly method: "POST";
|
|
1128
|
+
readonly path: "/api/desk/tools/asset/overview";
|
|
1129
|
+
readonly inputMode: "json_body";
|
|
1130
|
+
readonly schemas: {
|
|
1131
|
+
readonly request: "AssetOverviewRequest";
|
|
1132
|
+
readonly response: "AssetOverviewResponse";
|
|
1133
|
+
};
|
|
1134
|
+
};
|
|
1135
|
+
readonly cli: {
|
|
1136
|
+
readonly group: "assets";
|
|
1137
|
+
readonly command: "overview";
|
|
1138
|
+
readonly summary: "Get a section-based overview for one asset.";
|
|
1139
|
+
readonly positional: readonly [{
|
|
1140
|
+
readonly kind: "positional";
|
|
1141
|
+
readonly name: "ticker";
|
|
1142
|
+
readonly type: "string";
|
|
1143
|
+
readonly required: true;
|
|
1144
|
+
readonly placeholder: "TICKER";
|
|
1145
|
+
readonly description: "Ticker symbol, for example PETR4 or VALE3.";
|
|
1146
|
+
}];
|
|
1147
|
+
readonly options: readonly [{
|
|
1148
|
+
readonly kind: "option";
|
|
1149
|
+
readonly flag: "--sections";
|
|
1150
|
+
readonly name: "sections";
|
|
1151
|
+
readonly type: "enum_array";
|
|
1152
|
+
readonly required: true;
|
|
1153
|
+
readonly placeholder: "SEÇÕES";
|
|
1154
|
+
readonly enumValues: readonly ["price", "performance", "momentum", "technicals", "risk", "fundamentals", "rankings"];
|
|
1155
|
+
readonly multiple: true;
|
|
1156
|
+
readonly collectionFormat: "comma_separated";
|
|
1157
|
+
readonly description: "Comma-separated section list. Only request the sections needed for the question.";
|
|
1158
|
+
}];
|
|
1159
|
+
readonly examples: readonly ["quantbrasil assets overview PETR4 --sections price,performance", "quantbrasil assets overview PETR4 --sections price,fundamentals", "quantbrasil assets overview PETR4 --sections price,technicals"];
|
|
1160
|
+
};
|
|
1161
|
+
readonly tool: {
|
|
1162
|
+
readonly name: "qb_asset_overview";
|
|
1163
|
+
readonly title: "Get asset overview";
|
|
1164
|
+
};
|
|
1165
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1166
|
+
} | {
|
|
1167
|
+
readonly id: "rankings.list";
|
|
1168
|
+
readonly kind: "read";
|
|
1169
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1170
|
+
readonly description: "Lista rankings do sistema e rankings do usuário disponíveis para consulta atual.";
|
|
1171
|
+
readonly http: {
|
|
1172
|
+
readonly method: "GET";
|
|
1173
|
+
readonly path: "/api/desk/tools/rankings/list";
|
|
1174
|
+
readonly inputMode: "none";
|
|
1175
|
+
readonly schemas: {
|
|
1176
|
+
readonly request: null;
|
|
1177
|
+
readonly response: "RankingsListResponse";
|
|
1178
|
+
};
|
|
1179
|
+
};
|
|
1180
|
+
readonly cli: {
|
|
1181
|
+
readonly group: "rankings";
|
|
1182
|
+
readonly command: "list";
|
|
1183
|
+
readonly summary: "Lista rankings do sistema e rankings do usuário.";
|
|
1184
|
+
readonly positional: readonly [];
|
|
1185
|
+
readonly options: readonly [];
|
|
1186
|
+
readonly examples: readonly ["quantbrasil rankings list"];
|
|
1187
|
+
};
|
|
1188
|
+
readonly tool: {
|
|
1189
|
+
readonly name: "qb_rankings_list";
|
|
1190
|
+
readonly title: "Listar rankings";
|
|
1191
|
+
};
|
|
1192
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1193
|
+
} | {
|
|
1194
|
+
readonly id: "rankings.current";
|
|
1195
|
+
readonly kind: "read";
|
|
1196
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1197
|
+
readonly description: "Retorna os ativos atuais no topo de um ranking do sistema ou ranking do usuário.";
|
|
1198
|
+
readonly http: {
|
|
1199
|
+
readonly method: "POST";
|
|
1200
|
+
readonly path: "/api/desk/tools/rankings/current";
|
|
1201
|
+
readonly inputMode: "json_body";
|
|
1202
|
+
readonly schemas: {
|
|
1203
|
+
readonly request: "RankingCurrentRequest";
|
|
1204
|
+
readonly response: "RankingCurrentResponse";
|
|
1205
|
+
};
|
|
1206
|
+
};
|
|
1207
|
+
readonly cli: {
|
|
1208
|
+
readonly group: "rankings";
|
|
1209
|
+
readonly command: "current";
|
|
1210
|
+
readonly summary: "Consulta o topo atual de um ranking.";
|
|
1211
|
+
readonly positional: readonly [];
|
|
1212
|
+
readonly options: readonly [{
|
|
1213
|
+
readonly kind: "option";
|
|
1214
|
+
readonly flag: "--system";
|
|
1215
|
+
readonly name: "system_id";
|
|
1216
|
+
readonly type: "string";
|
|
1217
|
+
readonly required: false;
|
|
1218
|
+
readonly placeholder: "SLUG";
|
|
1219
|
+
readonly exclusiveGroup: "ranking_selector";
|
|
1220
|
+
readonly description: "Slug de ranking do sistema retornado por `rankings list`, por exemplo momentum-90d ou low-risk.";
|
|
1221
|
+
}, {
|
|
1222
|
+
readonly kind: "option";
|
|
1223
|
+
readonly flag: "--id";
|
|
1224
|
+
readonly name: "user_ranking_id";
|
|
1225
|
+
readonly type: "integer";
|
|
1226
|
+
readonly required: false;
|
|
1227
|
+
readonly placeholder: "ID";
|
|
1228
|
+
readonly exclusiveGroup: "ranking_selector";
|
|
1229
|
+
readonly description: "ID numérico de ranking do usuário retornado por `rankings list`.";
|
|
1230
|
+
}, {
|
|
1231
|
+
readonly kind: "option";
|
|
1232
|
+
readonly flag: "--top";
|
|
1233
|
+
readonly name: "top_n";
|
|
1234
|
+
readonly type: "integer";
|
|
1235
|
+
readonly required: false;
|
|
1236
|
+
readonly placeholder: "N";
|
|
1237
|
+
readonly defaultValue: 20;
|
|
1238
|
+
readonly description: "Número de ativos do topo do ranking a retornar.";
|
|
1239
|
+
}];
|
|
1240
|
+
readonly examples: readonly ["quantbrasil rankings current --system momentum-90d --top 20", "quantbrasil rankings current --system magic-formula --top 10", "quantbrasil rankings current --system low-risk --top 30", "quantbrasil rankings current --id 123 --top 20"];
|
|
1241
|
+
};
|
|
1242
|
+
readonly tool: {
|
|
1243
|
+
readonly name: "qb_rankings_current";
|
|
1244
|
+
readonly title: "Consultar ranking atual";
|
|
1245
|
+
};
|
|
1246
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1247
|
+
} | {
|
|
1248
|
+
readonly id: "screening.universes";
|
|
1249
|
+
readonly kind: "read";
|
|
1250
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1251
|
+
readonly description: "Lista universos salvos e baseados em portfólios disponíveis para screening de indicadores.";
|
|
1252
|
+
readonly http: {
|
|
1253
|
+
readonly method: "GET";
|
|
1254
|
+
readonly path: "/api/desk/tools/screening/universes";
|
|
1255
|
+
readonly inputMode: "none";
|
|
1256
|
+
readonly schemas: {
|
|
1257
|
+
readonly request: null;
|
|
1258
|
+
readonly response: "ScreeningUniversesResponse";
|
|
1259
|
+
};
|
|
1260
|
+
};
|
|
1261
|
+
readonly cli: {
|
|
1262
|
+
readonly group: "screening";
|
|
1263
|
+
readonly command: "universes";
|
|
1264
|
+
readonly summary: "Lista carteiras do sistema, watchlists e carteiras disponíveis para screening.";
|
|
1265
|
+
readonly positional: readonly [];
|
|
1266
|
+
readonly options: readonly [];
|
|
1267
|
+
readonly examples: readonly ["quantbrasil screening universes"];
|
|
1268
|
+
};
|
|
1269
|
+
readonly tool: {
|
|
1270
|
+
readonly name: "qb_screening_universes";
|
|
1271
|
+
readonly title: "Listar universos de screening";
|
|
1272
|
+
};
|
|
1273
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1274
|
+
} | {
|
|
1275
|
+
readonly id: "screening.indicators";
|
|
1276
|
+
readonly kind: "read";
|
|
1277
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1278
|
+
readonly description: "Lista indicadores, parâmetros e operadores disponíveis para screening.";
|
|
1279
|
+
readonly http: {
|
|
1280
|
+
readonly method: "GET";
|
|
1281
|
+
readonly path: "/api/desk/tools/screening/indicators";
|
|
1282
|
+
readonly inputMode: "none";
|
|
1283
|
+
readonly schemas: {
|
|
1284
|
+
readonly request: null;
|
|
1285
|
+
readonly response: "ScreeningIndicatorsResponse";
|
|
1286
|
+
};
|
|
1287
|
+
};
|
|
1288
|
+
readonly cli: {
|
|
1289
|
+
readonly group: "screening";
|
|
1290
|
+
readonly command: "indicators";
|
|
1291
|
+
readonly summary: "Lista indicadores, parâmetros e exemplos disponíveis para screening.";
|
|
1292
|
+
readonly positional: readonly [];
|
|
1293
|
+
readonly options: readonly [];
|
|
1294
|
+
readonly examples: readonly ["quantbrasil screening indicators", "quantbrasil screening indicators --json"];
|
|
1295
|
+
};
|
|
1296
|
+
readonly tool: {
|
|
1297
|
+
readonly name: "qb_screening_indicators";
|
|
1298
|
+
readonly title: "Listar indicadores de screening";
|
|
1299
|
+
};
|
|
1300
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1301
|
+
} | {
|
|
1302
|
+
readonly id: "screening.run";
|
|
1303
|
+
readonly kind: "read";
|
|
1304
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1305
|
+
readonly description: "Executa o screener de indicadores existente sobre um universo salvo baseado em portfólio.";
|
|
1306
|
+
readonly http: {
|
|
1307
|
+
readonly method: "POST";
|
|
1308
|
+
readonly path: "/api/desk/tools/screening/run";
|
|
1309
|
+
readonly inputMode: "json_body";
|
|
1310
|
+
readonly schemas: {
|
|
1311
|
+
readonly request: "ScreeningRunRequest";
|
|
1312
|
+
readonly response: "ScreeningRunResponse";
|
|
1313
|
+
};
|
|
1314
|
+
};
|
|
1315
|
+
readonly cli: {
|
|
1316
|
+
readonly group: "screening";
|
|
1317
|
+
readonly command: "run";
|
|
1318
|
+
readonly summary: "Executa screening de indicadores a partir de um payload ScreenerRequest JSON.";
|
|
1319
|
+
readonly positional: readonly [];
|
|
1320
|
+
readonly options: readonly [{
|
|
1321
|
+
readonly kind: "option";
|
|
1322
|
+
readonly flag: "--system";
|
|
1323
|
+
readonly name: "system_slug";
|
|
1324
|
+
readonly type: "string";
|
|
1325
|
+
readonly required: false;
|
|
1326
|
+
readonly placeholder: "SLUG";
|
|
1327
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
1328
|
+
readonly description: "Slug da carteira do sistema retornado por `screening universes`, por exemplo acoes-mais-liquidas.";
|
|
1329
|
+
}, {
|
|
1330
|
+
readonly kind: "option";
|
|
1331
|
+
readonly flag: "--watchlist";
|
|
1332
|
+
readonly name: "watchlist_id";
|
|
1333
|
+
readonly type: "integer";
|
|
1334
|
+
readonly required: false;
|
|
1335
|
+
readonly placeholder: "ID";
|
|
1336
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
1337
|
+
readonly description: "ID da watchlist retornado por `watchlists list`.";
|
|
1338
|
+
}, {
|
|
1339
|
+
readonly kind: "option";
|
|
1340
|
+
readonly flag: "--holding";
|
|
1341
|
+
readonly name: "holding_id";
|
|
1342
|
+
readonly type: "integer";
|
|
1343
|
+
readonly required: false;
|
|
1344
|
+
readonly placeholder: "ID";
|
|
1345
|
+
readonly exclusiveGroup: "screening_universe_selector";
|
|
1346
|
+
readonly description: "ID da carteira retornado por `holdings list`.";
|
|
1347
|
+
}, {
|
|
1348
|
+
readonly kind: "option";
|
|
1349
|
+
readonly flag: "--query-file";
|
|
1350
|
+
readonly name: "query_file";
|
|
1351
|
+
readonly type: "string";
|
|
1352
|
+
readonly required: true;
|
|
1353
|
+
readonly placeholder: "ARQUIVO|-";
|
|
1354
|
+
readonly description: "Caminho para um arquivo ScreenerRequest JSON completo, ou `-` para ler JSON de stdin.";
|
|
1355
|
+
}, {
|
|
1356
|
+
readonly kind: "option";
|
|
1357
|
+
readonly flag: "--limit";
|
|
1358
|
+
readonly name: "limit";
|
|
1359
|
+
readonly type: "integer";
|
|
1360
|
+
readonly required: false;
|
|
1361
|
+
readonly placeholder: "N";
|
|
1362
|
+
readonly description: "Sobrescreve o limit de topo do ScreenerRequest sem alterar o arquivo da consulta.";
|
|
1363
|
+
}, {
|
|
1364
|
+
readonly kind: "option";
|
|
1365
|
+
readonly flag: "--sort";
|
|
1366
|
+
readonly name: "sort";
|
|
1367
|
+
readonly type: "enum";
|
|
1368
|
+
readonly required: false;
|
|
1369
|
+
readonly placeholder: "price|ticker";
|
|
1370
|
+
readonly enumValues: readonly ["price", "ticker"];
|
|
1371
|
+
readonly description: "Sobrescreve o sort de topo do ScreenerRequest sem alterar o arquivo da consulta.";
|
|
1372
|
+
}];
|
|
1373
|
+
readonly examples: readonly ["quantbrasil screening run --system acoes-mais-liquidas --query-file ./screening.json", "quantbrasil screening run --watchlist 93 --query-file ./screening.json --limit 25", "cat screening.json | quantbrasil screening run --holding 182 --query-file - --sort ticker"];
|
|
1374
|
+
};
|
|
1375
|
+
readonly tool: {
|
|
1376
|
+
readonly name: "qb_screening_run";
|
|
1377
|
+
readonly title: "Executar screening de indicadores";
|
|
1378
|
+
};
|
|
1379
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1380
|
+
} | {
|
|
1381
|
+
readonly id: "watchlists.list";
|
|
1382
|
+
readonly kind: "read";
|
|
1383
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1384
|
+
readonly description: "List watchlists owned by the authenticated user.";
|
|
1385
|
+
readonly http: {
|
|
1386
|
+
readonly method: "GET";
|
|
1387
|
+
readonly path: "/api/desk/tools/watchlist/list";
|
|
1388
|
+
readonly inputMode: "none";
|
|
1389
|
+
readonly schemas: {
|
|
1390
|
+
readonly request: null;
|
|
1391
|
+
readonly response: "PortfolioListResponse";
|
|
1392
|
+
};
|
|
1393
|
+
};
|
|
1394
|
+
readonly cli: {
|
|
1395
|
+
readonly group: "watchlists";
|
|
1396
|
+
readonly command: "list";
|
|
1397
|
+
readonly summary: "List watchlists for tracking ideas and filters.";
|
|
1398
|
+
readonly positional: readonly [];
|
|
1399
|
+
readonly options: readonly [];
|
|
1400
|
+
readonly examples: readonly ["quantbrasil watchlists list"];
|
|
1401
|
+
};
|
|
1402
|
+
readonly tool: {
|
|
1403
|
+
readonly name: "qb_watchlist_list";
|
|
1404
|
+
readonly title: "List watchlists";
|
|
1405
|
+
};
|
|
1406
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1407
|
+
} | {
|
|
1408
|
+
readonly id: "watchlists.get";
|
|
1409
|
+
readonly kind: "read";
|
|
1410
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1411
|
+
readonly description: "Return one watchlist by id, scoped to the acting user.";
|
|
1412
|
+
readonly http: {
|
|
1413
|
+
readonly method: "POST";
|
|
1414
|
+
readonly path: "/api/desk/tools/watchlist/get";
|
|
1415
|
+
readonly inputMode: "json_body";
|
|
1416
|
+
readonly schemas: {
|
|
1417
|
+
readonly request: "PortfolioGetRequest";
|
|
1418
|
+
readonly response: "PortfolioGetResponse";
|
|
1419
|
+
};
|
|
1420
|
+
};
|
|
1421
|
+
readonly cli: {
|
|
1422
|
+
readonly group: "watchlists";
|
|
1423
|
+
readonly command: "get";
|
|
1424
|
+
readonly summary: "Get a watchlist by id.";
|
|
1425
|
+
readonly positional: readonly [{
|
|
1426
|
+
readonly kind: "positional";
|
|
1427
|
+
readonly name: "portfolio_id";
|
|
1428
|
+
readonly type: "integer";
|
|
1429
|
+
readonly required: true;
|
|
1430
|
+
readonly placeholder: "ID";
|
|
1431
|
+
readonly description: "Stable saved object identifier.";
|
|
571
1432
|
}];
|
|
572
|
-
readonly
|
|
1433
|
+
readonly options: readonly [];
|
|
1434
|
+
readonly examples: readonly ["quantbrasil watchlists get 123"];
|
|
573
1435
|
};
|
|
574
1436
|
readonly tool: {
|
|
575
|
-
readonly name: "
|
|
576
|
-
readonly title: "
|
|
1437
|
+
readonly name: "qb_watchlist_get";
|
|
1438
|
+
readonly title: "Get watchlist";
|
|
577
1439
|
};
|
|
578
1440
|
readonly outputModes: readonly ["json", "human"];
|
|
579
1441
|
} | {
|
|
580
|
-
readonly id: "
|
|
581
|
-
readonly kind: "
|
|
1442
|
+
readonly id: "watchlists.create";
|
|
1443
|
+
readonly kind: "mutation";
|
|
582
1444
|
readonly visibility: readonly ["cli", "opencode"];
|
|
583
|
-
readonly description: "
|
|
1445
|
+
readonly description: "Create a new watchlist for the authenticated user.";
|
|
584
1446
|
readonly http: {
|
|
585
1447
|
readonly method: "POST";
|
|
586
|
-
readonly path: "/api/desk/tools/
|
|
1448
|
+
readonly path: "/api/desk/tools/watchlist/create";
|
|
587
1449
|
readonly inputMode: "json_body";
|
|
588
1450
|
readonly schemas: {
|
|
589
|
-
readonly request: "
|
|
590
|
-
readonly response: "
|
|
1451
|
+
readonly request: "PortfolioCreateRequest";
|
|
1452
|
+
readonly response: "PortfolioCreateResponse";
|
|
591
1453
|
};
|
|
592
1454
|
};
|
|
593
1455
|
readonly cli: {
|
|
594
|
-
readonly group: "
|
|
595
|
-
readonly command: "
|
|
596
|
-
readonly summary: "
|
|
1456
|
+
readonly group: "watchlists";
|
|
1457
|
+
readonly command: "create";
|
|
1458
|
+
readonly summary: "Create a new watchlist.";
|
|
597
1459
|
readonly positional: readonly [{
|
|
598
1460
|
readonly kind: "positional";
|
|
599
|
-
readonly name: "
|
|
1461
|
+
readonly name: "name";
|
|
600
1462
|
readonly type: "string";
|
|
601
1463
|
readonly required: true;
|
|
602
|
-
readonly placeholder: "
|
|
603
|
-
readonly description: "
|
|
1464
|
+
readonly placeholder: "NOME";
|
|
1465
|
+
readonly description: "Name to save.";
|
|
604
1466
|
}];
|
|
605
|
-
readonly options: readonly [
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
1467
|
+
readonly options: readonly [];
|
|
1468
|
+
readonly examples: readonly ["quantbrasil watchlists create \"Dividendos\""];
|
|
1469
|
+
};
|
|
1470
|
+
readonly tool: {
|
|
1471
|
+
readonly name: "qb_watchlist_create";
|
|
1472
|
+
readonly title: "Create watchlist";
|
|
1473
|
+
};
|
|
1474
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1475
|
+
} | {
|
|
1476
|
+
readonly id: "watchlists.rename";
|
|
1477
|
+
readonly kind: "mutation";
|
|
1478
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1479
|
+
readonly description: "Rename a watchlist owned by the authenticated user.";
|
|
1480
|
+
readonly http: {
|
|
1481
|
+
readonly method: "POST";
|
|
1482
|
+
readonly path: "/api/desk/tools/watchlist/rename";
|
|
1483
|
+
readonly inputMode: "json_body";
|
|
1484
|
+
readonly schemas: {
|
|
1485
|
+
readonly request: "PortfolioRenameRequest";
|
|
1486
|
+
readonly response: "PortfolioMutationResponse";
|
|
1487
|
+
};
|
|
1488
|
+
};
|
|
1489
|
+
readonly cli: {
|
|
1490
|
+
readonly group: "watchlists";
|
|
1491
|
+
readonly command: "rename";
|
|
1492
|
+
readonly summary: "Rename an existing watchlist.";
|
|
1493
|
+
readonly positional: readonly [{
|
|
1494
|
+
readonly kind: "positional";
|
|
1495
|
+
readonly name: "portfolio_id";
|
|
1496
|
+
readonly type: "integer";
|
|
1497
|
+
readonly required: true;
|
|
1498
|
+
readonly placeholder: "ID";
|
|
1499
|
+
readonly description: "Stable saved object identifier.";
|
|
613
1500
|
}, {
|
|
614
|
-
readonly kind: "
|
|
615
|
-
readonly
|
|
616
|
-
readonly name: "timeframe";
|
|
1501
|
+
readonly kind: "positional";
|
|
1502
|
+
readonly name: "name";
|
|
617
1503
|
readonly type: "string";
|
|
618
|
-
readonly required:
|
|
619
|
-
readonly placeholder: "
|
|
620
|
-
readonly
|
|
621
|
-
readonly description: "Timeframe identifier. Defaults to D1.";
|
|
1504
|
+
readonly required: true;
|
|
1505
|
+
readonly placeholder: "NOME";
|
|
1506
|
+
readonly description: "Name to save.";
|
|
622
1507
|
}];
|
|
623
|
-
readonly
|
|
1508
|
+
readonly options: readonly [];
|
|
1509
|
+
readonly examples: readonly ["quantbrasil watchlists rename 123 \"Longo Prazo\""];
|
|
624
1510
|
};
|
|
625
1511
|
readonly tool: {
|
|
626
|
-
readonly name: "
|
|
627
|
-
readonly title: "
|
|
1512
|
+
readonly name: "qb_watchlist_rename";
|
|
1513
|
+
readonly title: "Rename watchlist";
|
|
628
1514
|
};
|
|
629
1515
|
readonly outputModes: readonly ["json", "human"];
|
|
630
1516
|
} | {
|
|
631
|
-
readonly id: "assets
|
|
632
|
-
readonly kind: "
|
|
1517
|
+
readonly id: "watchlists.add-assets";
|
|
1518
|
+
readonly kind: "mutation";
|
|
633
1519
|
readonly visibility: readonly ["cli", "opencode"];
|
|
634
|
-
readonly description: "
|
|
1520
|
+
readonly description: "Add one or more monitored tickers to a watchlist.";
|
|
635
1521
|
readonly http: {
|
|
636
1522
|
readonly method: "POST";
|
|
637
|
-
readonly path: "/api/desk/tools/
|
|
1523
|
+
readonly path: "/api/desk/tools/watchlist/add_assets";
|
|
638
1524
|
readonly inputMode: "json_body";
|
|
639
1525
|
readonly schemas: {
|
|
640
|
-
readonly request: "
|
|
641
|
-
readonly response: "
|
|
1526
|
+
readonly request: "PortfolioAddAssetsRequest";
|
|
1527
|
+
readonly response: "PortfolioMutationResponse";
|
|
642
1528
|
};
|
|
643
1529
|
};
|
|
644
1530
|
readonly cli: {
|
|
645
|
-
readonly group: "
|
|
646
|
-
readonly command: "
|
|
647
|
-
readonly summary: "
|
|
1531
|
+
readonly group: "watchlists";
|
|
1532
|
+
readonly command: "add-assets";
|
|
1533
|
+
readonly summary: "Add monitored tickers to an existing watchlist.";
|
|
648
1534
|
readonly positional: readonly [{
|
|
649
1535
|
readonly kind: "positional";
|
|
650
|
-
readonly name: "
|
|
651
|
-
readonly type: "
|
|
1536
|
+
readonly name: "portfolio_id";
|
|
1537
|
+
readonly type: "integer";
|
|
1538
|
+
readonly required: true;
|
|
1539
|
+
readonly placeholder: "ID";
|
|
1540
|
+
readonly description: "Stable saved object identifier.";
|
|
1541
|
+
}, {
|
|
1542
|
+
readonly kind: "positional";
|
|
1543
|
+
readonly name: "symbols";
|
|
1544
|
+
readonly type: "string_array";
|
|
652
1545
|
readonly required: true;
|
|
653
1546
|
readonly placeholder: "TICKER";
|
|
654
|
-
readonly
|
|
1547
|
+
readonly multiple: true;
|
|
1548
|
+
readonly collectionFormat: "space_separated";
|
|
1549
|
+
readonly description: "One or more monitored ticker symbols.";
|
|
655
1550
|
}];
|
|
656
|
-
readonly options: readonly [
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
1551
|
+
readonly options: readonly [];
|
|
1552
|
+
readonly examples: readonly ["quantbrasil watchlists add-assets 123 PETR4 VALE3"];
|
|
1553
|
+
};
|
|
1554
|
+
readonly tool: {
|
|
1555
|
+
readonly name: "qb_watchlist_add_assets";
|
|
1556
|
+
readonly title: "Add watchlist assets";
|
|
1557
|
+
};
|
|
1558
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1559
|
+
} | {
|
|
1560
|
+
readonly id: "watchlists.remove-assets";
|
|
1561
|
+
readonly kind: "mutation";
|
|
1562
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
1563
|
+
readonly description: "Remove one or more monitored tickers from a watchlist.";
|
|
1564
|
+
readonly http: {
|
|
1565
|
+
readonly method: "POST";
|
|
1566
|
+
readonly path: "/api/desk/tools/watchlist/remove_assets";
|
|
1567
|
+
readonly inputMode: "json_body";
|
|
1568
|
+
readonly schemas: {
|
|
1569
|
+
readonly request: "PortfolioRemoveAssetsRequest";
|
|
1570
|
+
readonly response: "PortfolioMutationResponse";
|
|
1571
|
+
};
|
|
1572
|
+
};
|
|
1573
|
+
readonly cli: {
|
|
1574
|
+
readonly group: "watchlists";
|
|
1575
|
+
readonly command: "remove-assets";
|
|
1576
|
+
readonly summary: "Remove monitored tickers from an existing watchlist.";
|
|
1577
|
+
readonly positional: readonly [{
|
|
1578
|
+
readonly kind: "positional";
|
|
1579
|
+
readonly name: "portfolio_id";
|
|
1580
|
+
readonly type: "integer";
|
|
661
1581
|
readonly required: true;
|
|
662
|
-
readonly placeholder: "
|
|
663
|
-
readonly
|
|
1582
|
+
readonly placeholder: "ID";
|
|
1583
|
+
readonly description: "Stable saved object identifier.";
|
|
1584
|
+
}, {
|
|
1585
|
+
readonly kind: "positional";
|
|
1586
|
+
readonly name: "symbols";
|
|
1587
|
+
readonly type: "string_array";
|
|
1588
|
+
readonly required: true;
|
|
1589
|
+
readonly placeholder: "TICKER";
|
|
664
1590
|
readonly multiple: true;
|
|
665
|
-
readonly collectionFormat: "
|
|
666
|
-
readonly description: "
|
|
1591
|
+
readonly collectionFormat: "space_separated";
|
|
1592
|
+
readonly description: "One or more monitored ticker symbols.";
|
|
667
1593
|
}];
|
|
668
|
-
readonly
|
|
1594
|
+
readonly options: readonly [];
|
|
1595
|
+
readonly examples: readonly ["quantbrasil watchlists remove-assets 123 PETR4"];
|
|
669
1596
|
};
|
|
670
1597
|
readonly tool: {
|
|
671
|
-
readonly name: "
|
|
672
|
-
readonly title: "
|
|
1598
|
+
readonly name: "qb_watchlist_remove_assets";
|
|
1599
|
+
readonly title: "Remove watchlist assets";
|
|
673
1600
|
};
|
|
674
1601
|
readonly outputModes: readonly ["json", "human"];
|
|
675
1602
|
} | {
|
|
676
|
-
readonly id: "
|
|
1603
|
+
readonly id: "holdings.list";
|
|
677
1604
|
readonly kind: "read";
|
|
678
1605
|
readonly visibility: readonly ["cli", "opencode"];
|
|
679
|
-
readonly description: "List
|
|
1606
|
+
readonly description: "List holdings owned by the authenticated user.";
|
|
680
1607
|
readonly http: {
|
|
681
1608
|
readonly method: "GET";
|
|
682
|
-
readonly path: "/api/desk/tools/
|
|
1609
|
+
readonly path: "/api/desk/tools/holding/list";
|
|
683
1610
|
readonly inputMode: "none";
|
|
684
1611
|
readonly schemas: {
|
|
685
1612
|
readonly request: null;
|
|
@@ -687,26 +1614,26 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
687
1614
|
};
|
|
688
1615
|
};
|
|
689
1616
|
readonly cli: {
|
|
690
|
-
readonly group: "
|
|
1617
|
+
readonly group: "holdings";
|
|
691
1618
|
readonly command: "list";
|
|
692
|
-
readonly summary: "List
|
|
1619
|
+
readonly summary: "List holdings for investable metrics.";
|
|
693
1620
|
readonly positional: readonly [];
|
|
694
1621
|
readonly options: readonly [];
|
|
695
|
-
readonly examples: readonly ["quantbrasil
|
|
1622
|
+
readonly examples: readonly ["quantbrasil holdings list"];
|
|
696
1623
|
};
|
|
697
1624
|
readonly tool: {
|
|
698
|
-
readonly name: "
|
|
699
|
-
readonly title: "List
|
|
1625
|
+
readonly name: "qb_holding_list";
|
|
1626
|
+
readonly title: "List holdings";
|
|
700
1627
|
};
|
|
701
1628
|
readonly outputModes: readonly ["json", "human"];
|
|
702
1629
|
} | {
|
|
703
|
-
readonly id: "
|
|
1630
|
+
readonly id: "holdings.get";
|
|
704
1631
|
readonly kind: "read";
|
|
705
1632
|
readonly visibility: readonly ["cli", "opencode"];
|
|
706
|
-
readonly description: "Return one
|
|
1633
|
+
readonly description: "Return one holding by id, scoped to the acting user.";
|
|
707
1634
|
readonly http: {
|
|
708
1635
|
readonly method: "POST";
|
|
709
|
-
readonly path: "/api/desk/tools/
|
|
1636
|
+
readonly path: "/api/desk/tools/holding/get";
|
|
710
1637
|
readonly inputMode: "json_body";
|
|
711
1638
|
readonly schemas: {
|
|
712
1639
|
readonly request: "PortfolioGetRequest";
|
|
@@ -714,67 +1641,87 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
714
1641
|
};
|
|
715
1642
|
};
|
|
716
1643
|
readonly cli: {
|
|
717
|
-
readonly group: "
|
|
1644
|
+
readonly group: "holdings";
|
|
718
1645
|
readonly command: "get";
|
|
719
|
-
readonly summary: "Get a
|
|
1646
|
+
readonly summary: "Get a holding by id.";
|
|
720
1647
|
readonly positional: readonly [{
|
|
721
1648
|
readonly kind: "positional";
|
|
722
1649
|
readonly name: "portfolio_id";
|
|
723
1650
|
readonly type: "integer";
|
|
724
1651
|
readonly required: true;
|
|
725
1652
|
readonly placeholder: "ID";
|
|
726
|
-
readonly description: "
|
|
1653
|
+
readonly description: "Stable saved object identifier.";
|
|
727
1654
|
}];
|
|
728
1655
|
readonly options: readonly [];
|
|
729
|
-
readonly examples: readonly ["quantbrasil
|
|
1656
|
+
readonly examples: readonly ["quantbrasil holdings get 123"];
|
|
730
1657
|
};
|
|
731
1658
|
readonly tool: {
|
|
732
|
-
readonly name: "
|
|
733
|
-
readonly title: "Get
|
|
1659
|
+
readonly name: "qb_holding_get";
|
|
1660
|
+
readonly title: "Get holding";
|
|
734
1661
|
};
|
|
735
1662
|
readonly outputModes: readonly ["json", "human"];
|
|
736
1663
|
} | {
|
|
737
|
-
readonly id: "
|
|
1664
|
+
readonly id: "holdings.create";
|
|
738
1665
|
readonly kind: "mutation";
|
|
739
1666
|
readonly visibility: readonly ["cli", "opencode"];
|
|
740
|
-
readonly description: "Create a new
|
|
1667
|
+
readonly description: "Create a new holding for the authenticated user.";
|
|
741
1668
|
readonly http: {
|
|
742
1669
|
readonly method: "POST";
|
|
743
|
-
readonly path: "/api/desk/tools/
|
|
1670
|
+
readonly path: "/api/desk/tools/holding/create";
|
|
744
1671
|
readonly inputMode: "json_body";
|
|
745
1672
|
readonly schemas: {
|
|
746
|
-
readonly request: "
|
|
1673
|
+
readonly request: "DeskHoldingCreateRequest";
|
|
747
1674
|
readonly response: "PortfolioCreateResponse";
|
|
748
1675
|
};
|
|
749
1676
|
};
|
|
750
1677
|
readonly cli: {
|
|
751
|
-
readonly group: "
|
|
1678
|
+
readonly group: "holdings";
|
|
752
1679
|
readonly command: "create";
|
|
753
|
-
readonly summary: "Create a new
|
|
1680
|
+
readonly summary: "Create a new holding.";
|
|
754
1681
|
readonly positional: readonly [{
|
|
755
1682
|
readonly kind: "positional";
|
|
756
1683
|
readonly name: "name";
|
|
757
1684
|
readonly type: "string";
|
|
758
1685
|
readonly required: true;
|
|
759
1686
|
readonly placeholder: "NOME";
|
|
760
|
-
readonly description: "
|
|
1687
|
+
readonly description: "Name to save.";
|
|
761
1688
|
}];
|
|
762
|
-
readonly options: readonly [
|
|
763
|
-
|
|
1689
|
+
readonly options: readonly [{
|
|
1690
|
+
readonly kind: "option";
|
|
1691
|
+
readonly flag: "--mode";
|
|
1692
|
+
readonly name: "default_allocation_input";
|
|
1693
|
+
readonly type: "enum";
|
|
1694
|
+
readonly required: false;
|
|
1695
|
+
readonly placeholder: "target|position";
|
|
1696
|
+
readonly defaultValue: "target";
|
|
1697
|
+
readonly enumValues: readonly ["target", "position"];
|
|
1698
|
+
readonly description: "How the holding is controlled initially: target weights or positions.";
|
|
1699
|
+
}, {
|
|
1700
|
+
readonly kind: "option";
|
|
1701
|
+
readonly flag: "--target";
|
|
1702
|
+
readonly name: "targets";
|
|
1703
|
+
readonly type: "string_array";
|
|
1704
|
+
readonly required: false;
|
|
1705
|
+
readonly placeholder: "TICKER:PESO";
|
|
1706
|
+
readonly multiple: true;
|
|
1707
|
+
readonly collectionFormat: "repeatable";
|
|
1708
|
+
readonly description: "Initial target weight in TICKER:WEIGHT_PCT form.";
|
|
1709
|
+
}];
|
|
1710
|
+
readonly examples: readonly ["quantbrasil holdings create \"Longo Prazo\"", "quantbrasil holdings create \"Teórica\" --target PRIO3:50 --target VALE3:50", "quantbrasil holdings create \"Real\" --mode position"];
|
|
764
1711
|
};
|
|
765
1712
|
readonly tool: {
|
|
766
|
-
readonly name: "
|
|
767
|
-
readonly title: "Create
|
|
1713
|
+
readonly name: "qb_holding_create";
|
|
1714
|
+
readonly title: "Create holding";
|
|
768
1715
|
};
|
|
769
1716
|
readonly outputModes: readonly ["json", "human"];
|
|
770
1717
|
} | {
|
|
771
|
-
readonly id: "
|
|
1718
|
+
readonly id: "holdings.rename";
|
|
772
1719
|
readonly kind: "mutation";
|
|
773
1720
|
readonly visibility: readonly ["cli", "opencode"];
|
|
774
|
-
readonly description: "Rename a
|
|
1721
|
+
readonly description: "Rename a holding owned by the authenticated user.";
|
|
775
1722
|
readonly http: {
|
|
776
1723
|
readonly method: "POST";
|
|
777
|
-
readonly path: "/api/desk/tools/
|
|
1724
|
+
readonly path: "/api/desk/tools/holding/rename";
|
|
778
1725
|
readonly inputMode: "json_body";
|
|
779
1726
|
readonly schemas: {
|
|
780
1727
|
readonly request: "PortfolioRenameRequest";
|
|
@@ -782,126 +1729,126 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
782
1729
|
};
|
|
783
1730
|
};
|
|
784
1731
|
readonly cli: {
|
|
785
|
-
readonly group: "
|
|
1732
|
+
readonly group: "holdings";
|
|
786
1733
|
readonly command: "rename";
|
|
787
|
-
readonly summary: "Rename an existing
|
|
1734
|
+
readonly summary: "Rename an existing holding.";
|
|
788
1735
|
readonly positional: readonly [{
|
|
789
1736
|
readonly kind: "positional";
|
|
790
1737
|
readonly name: "portfolio_id";
|
|
791
1738
|
readonly type: "integer";
|
|
792
1739
|
readonly required: true;
|
|
793
1740
|
readonly placeholder: "ID";
|
|
794
|
-
readonly description: "
|
|
1741
|
+
readonly description: "Stable saved object identifier.";
|
|
795
1742
|
}, {
|
|
796
1743
|
readonly kind: "positional";
|
|
797
1744
|
readonly name: "name";
|
|
798
1745
|
readonly type: "string";
|
|
799
1746
|
readonly required: true;
|
|
800
1747
|
readonly placeholder: "NOME";
|
|
801
|
-
readonly description: "
|
|
1748
|
+
readonly description: "Name to save.";
|
|
802
1749
|
}];
|
|
803
1750
|
readonly options: readonly [];
|
|
804
|
-
readonly examples: readonly ["quantbrasil
|
|
1751
|
+
readonly examples: readonly ["quantbrasil holdings rename 123 \"Longo Prazo\""];
|
|
805
1752
|
};
|
|
806
1753
|
readonly tool: {
|
|
807
|
-
readonly name: "
|
|
808
|
-
readonly title: "Rename
|
|
1754
|
+
readonly name: "qb_holding_rename";
|
|
1755
|
+
readonly title: "Rename holding";
|
|
809
1756
|
};
|
|
810
1757
|
readonly outputModes: readonly ["json", "human"];
|
|
811
1758
|
} | {
|
|
812
|
-
readonly id: "
|
|
1759
|
+
readonly id: "holdings.set-targets";
|
|
813
1760
|
readonly kind: "mutation";
|
|
814
1761
|
readonly visibility: readonly ["cli", "opencode"];
|
|
815
|
-
readonly description: "
|
|
1762
|
+
readonly description: "Set target weights for a holding owned by the authenticated user.";
|
|
816
1763
|
readonly http: {
|
|
817
1764
|
readonly method: "POST";
|
|
818
|
-
readonly path: "/api/desk/tools/
|
|
1765
|
+
readonly path: "/api/desk/tools/holding/set_targets";
|
|
819
1766
|
readonly inputMode: "json_body";
|
|
820
1767
|
readonly schemas: {
|
|
821
|
-
readonly request: "
|
|
1768
|
+
readonly request: "HoldingSetTargetsRequest";
|
|
822
1769
|
readonly response: "PortfolioMutationResponse";
|
|
823
1770
|
};
|
|
824
1771
|
};
|
|
825
1772
|
readonly cli: {
|
|
826
|
-
readonly group: "
|
|
827
|
-
readonly command: "
|
|
828
|
-
readonly summary: "
|
|
1773
|
+
readonly group: "holdings";
|
|
1774
|
+
readonly command: "set-targets";
|
|
1775
|
+
readonly summary: "Set target weights for a holding.";
|
|
829
1776
|
readonly positional: readonly [{
|
|
830
1777
|
readonly kind: "positional";
|
|
831
1778
|
readonly name: "portfolio_id";
|
|
832
1779
|
readonly type: "integer";
|
|
833
1780
|
readonly required: true;
|
|
834
1781
|
readonly placeholder: "ID";
|
|
835
|
-
readonly description: "
|
|
1782
|
+
readonly description: "Stable saved object identifier.";
|
|
836
1783
|
}, {
|
|
837
1784
|
readonly kind: "positional";
|
|
838
|
-
readonly name: "
|
|
1785
|
+
readonly name: "targets";
|
|
839
1786
|
readonly type: "string_array";
|
|
840
1787
|
readonly required: true;
|
|
841
|
-
readonly placeholder: "TICKER";
|
|
1788
|
+
readonly placeholder: "TICKER:PESO";
|
|
842
1789
|
readonly multiple: true;
|
|
843
1790
|
readonly collectionFormat: "space_separated";
|
|
844
|
-
readonly description: "One or more
|
|
1791
|
+
readonly description: "One or more target weights in TICKER:WEIGHT_PCT form.";
|
|
845
1792
|
}];
|
|
846
1793
|
readonly options: readonly [];
|
|
847
|
-
readonly examples: readonly ["quantbrasil
|
|
1794
|
+
readonly examples: readonly ["quantbrasil holdings set-targets 123 PRIO3:50 VALE3:50"];
|
|
848
1795
|
};
|
|
849
1796
|
readonly tool: {
|
|
850
|
-
readonly name: "
|
|
851
|
-
readonly title: "
|
|
1797
|
+
readonly name: "qb_holding_set_targets";
|
|
1798
|
+
readonly title: "Set holding target weights";
|
|
852
1799
|
};
|
|
853
1800
|
readonly outputModes: readonly ["json", "human"];
|
|
854
1801
|
} | {
|
|
855
|
-
readonly id: "
|
|
1802
|
+
readonly id: "holdings.set-positions";
|
|
856
1803
|
readonly kind: "mutation";
|
|
857
1804
|
readonly visibility: readonly ["cli", "opencode"];
|
|
858
|
-
readonly description: "
|
|
1805
|
+
readonly description: "Set position quantities for a holding owned by the authenticated user.";
|
|
859
1806
|
readonly http: {
|
|
860
1807
|
readonly method: "POST";
|
|
861
|
-
readonly path: "/api/desk/tools/
|
|
1808
|
+
readonly path: "/api/desk/tools/holding/set_positions";
|
|
862
1809
|
readonly inputMode: "json_body";
|
|
863
1810
|
readonly schemas: {
|
|
864
|
-
readonly request: "
|
|
1811
|
+
readonly request: "HoldingSetPositionsRequest";
|
|
865
1812
|
readonly response: "PortfolioMutationResponse";
|
|
866
1813
|
};
|
|
867
1814
|
};
|
|
868
1815
|
readonly cli: {
|
|
869
|
-
readonly group: "
|
|
870
|
-
readonly command: "
|
|
871
|
-
readonly summary: "
|
|
1816
|
+
readonly group: "holdings";
|
|
1817
|
+
readonly command: "set-positions";
|
|
1818
|
+
readonly summary: "Set position quantities for a holding.";
|
|
872
1819
|
readonly positional: readonly [{
|
|
873
1820
|
readonly kind: "positional";
|
|
874
1821
|
readonly name: "portfolio_id";
|
|
875
1822
|
readonly type: "integer";
|
|
876
1823
|
readonly required: true;
|
|
877
1824
|
readonly placeholder: "ID";
|
|
878
|
-
readonly description: "
|
|
1825
|
+
readonly description: "Stable saved object identifier.";
|
|
879
1826
|
}, {
|
|
880
1827
|
readonly kind: "positional";
|
|
881
|
-
readonly name: "
|
|
1828
|
+
readonly name: "positions";
|
|
882
1829
|
readonly type: "string_array";
|
|
883
1830
|
readonly required: true;
|
|
884
|
-
readonly placeholder: "TICKER";
|
|
1831
|
+
readonly placeholder: "TICKER:QUANTIDADE";
|
|
885
1832
|
readonly multiple: true;
|
|
886
1833
|
readonly collectionFormat: "space_separated";
|
|
887
|
-
readonly description: "One or more
|
|
1834
|
+
readonly description: "One or more position quantities in TICKER:QUANTITY form.";
|
|
888
1835
|
}];
|
|
889
1836
|
readonly options: readonly [];
|
|
890
|
-
readonly examples: readonly ["quantbrasil
|
|
1837
|
+
readonly examples: readonly ["quantbrasil holdings set-positions 123 PRIO3:1600 BTC-USD:0.25"];
|
|
891
1838
|
};
|
|
892
1839
|
readonly tool: {
|
|
893
|
-
readonly name: "
|
|
894
|
-
readonly title: "
|
|
1840
|
+
readonly name: "qb_holding_set_positions";
|
|
1841
|
+
readonly title: "Set holding position quantities";
|
|
895
1842
|
};
|
|
896
1843
|
readonly outputModes: readonly ["json", "human"];
|
|
897
1844
|
} | {
|
|
898
|
-
readonly id: "
|
|
1845
|
+
readonly id: "holdings.historical-return";
|
|
899
1846
|
readonly kind: "read";
|
|
900
1847
|
readonly visibility: readonly ["cli", "opencode"];
|
|
901
|
-
readonly description: "Calculate historical return for a
|
|
1848
|
+
readonly description: "Calculate historical return for a holding.";
|
|
902
1849
|
readonly http: {
|
|
903
1850
|
readonly method: "POST";
|
|
904
|
-
readonly path: "/api/desk/tools/
|
|
1851
|
+
readonly path: "/api/desk/tools/holding/historical_return";
|
|
905
1852
|
readonly inputMode: "json_body";
|
|
906
1853
|
readonly schemas: {
|
|
907
1854
|
readonly request: "PortfolioHistoricalReturnRequest";
|
|
@@ -909,62 +1856,57 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
909
1856
|
};
|
|
910
1857
|
};
|
|
911
1858
|
readonly cli: {
|
|
912
|
-
readonly group: "
|
|
1859
|
+
readonly group: "holdings";
|
|
913
1860
|
readonly command: "historical-return";
|
|
914
|
-
readonly summary: "Calculate historical return for a saved
|
|
915
|
-
readonly positional: readonly [
|
|
916
|
-
|
|
917
|
-
readonly kind: "option";
|
|
918
|
-
readonly flag: "--portfolio";
|
|
1861
|
+
readonly summary: "Calculate historical return for a saved holding.";
|
|
1862
|
+
readonly positional: readonly [{
|
|
1863
|
+
readonly kind: "positional";
|
|
919
1864
|
readonly name: "portfolio_id";
|
|
920
1865
|
readonly type: "integer";
|
|
921
|
-
readonly required:
|
|
1866
|
+
readonly required: true;
|
|
922
1867
|
readonly placeholder: "ID";
|
|
923
|
-
readonly
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
readonly kind: "option";
|
|
927
|
-
readonly flag: "--asset";
|
|
928
|
-
readonly name: "assets";
|
|
929
|
-
readonly type: "string_array";
|
|
930
|
-
readonly required: false;
|
|
931
|
-
readonly placeholder: "TICKER[:PESO]";
|
|
932
|
-
readonly multiple: true;
|
|
933
|
-
readonly collectionFormat: "repeatable";
|
|
934
|
-
readonly exclusiveGroup: "source";
|
|
935
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PRIO3:50.";
|
|
936
|
-
}, {
|
|
1868
|
+
readonly description: "Stable saved object identifier.";
|
|
1869
|
+
}];
|
|
1870
|
+
readonly options: readonly [{
|
|
937
1871
|
readonly kind: "option";
|
|
938
1872
|
readonly flag: "--from";
|
|
939
1873
|
readonly name: "start_date";
|
|
940
1874
|
readonly type: "string";
|
|
941
|
-
readonly required:
|
|
1875
|
+
readonly required: false;
|
|
942
1876
|
readonly placeholder: "AAAA-MM-DD";
|
|
943
|
-
readonly description: "Inclusive start date in ISO format.";
|
|
1877
|
+
readonly description: "Inclusive start date in ISO format. Use with --to, or use --period.";
|
|
944
1878
|
}, {
|
|
945
1879
|
readonly kind: "option";
|
|
946
1880
|
readonly flag: "--to";
|
|
947
1881
|
readonly name: "end_date";
|
|
948
1882
|
readonly type: "string";
|
|
949
|
-
readonly required:
|
|
1883
|
+
readonly required: false;
|
|
950
1884
|
readonly placeholder: "AAAA-MM-DD";
|
|
951
|
-
readonly description: "Inclusive end date in ISO format.";
|
|
1885
|
+
readonly description: "Inclusive end date in ISO format. Use with --from, or use --period.";
|
|
1886
|
+
}, {
|
|
1887
|
+
readonly kind: "option";
|
|
1888
|
+
readonly flag: "--period";
|
|
1889
|
+
readonly name: "period";
|
|
1890
|
+
readonly type: "string";
|
|
1891
|
+
readonly required: false;
|
|
1892
|
+
readonly placeholder: "PERIODO";
|
|
1893
|
+
readonly description: "Lookback period such as 1y, 3y, 5y, or 6m. Mutually exclusive with --from/--to.";
|
|
952
1894
|
}];
|
|
953
|
-
readonly examples: readonly ["quantbrasil
|
|
1895
|
+
readonly examples: readonly ["quantbrasil holdings historical-return 123 --from 2024-01-01 --to 2025-01-01", "quantbrasil holdings historical-return 123 --period 1y"];
|
|
954
1896
|
};
|
|
955
1897
|
readonly tool: {
|
|
956
|
-
readonly name: "
|
|
957
|
-
readonly title: "Calculate historical return";
|
|
1898
|
+
readonly name: "qb_holding_historical_return";
|
|
1899
|
+
readonly title: "Calculate holding historical return";
|
|
958
1900
|
};
|
|
959
1901
|
readonly outputModes: readonly ["json", "human"];
|
|
960
1902
|
} | {
|
|
961
|
-
readonly id: "
|
|
1903
|
+
readonly id: "holdings.beta";
|
|
962
1904
|
readonly kind: "read";
|
|
963
1905
|
readonly visibility: readonly ["cli", "opencode"];
|
|
964
|
-
readonly description: "Calculate
|
|
1906
|
+
readonly description: "Calculate holding beta against IBOV.";
|
|
965
1907
|
readonly http: {
|
|
966
1908
|
readonly method: "POST";
|
|
967
|
-
readonly path: "/api/desk/tools/
|
|
1909
|
+
readonly path: "/api/desk/tools/holding/beta";
|
|
968
1910
|
readonly inputMode: "json_body";
|
|
969
1911
|
readonly schemas: {
|
|
970
1912
|
readonly request: "PortfolioBetaRequest";
|
|
@@ -972,31 +1914,18 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
972
1914
|
};
|
|
973
1915
|
};
|
|
974
1916
|
readonly cli: {
|
|
975
|
-
readonly group: "
|
|
1917
|
+
readonly group: "holdings";
|
|
976
1918
|
readonly command: "beta";
|
|
977
|
-
readonly summary: "Calculate
|
|
978
|
-
readonly positional: readonly [
|
|
979
|
-
|
|
980
|
-
readonly kind: "option";
|
|
981
|
-
readonly flag: "--portfolio";
|
|
1919
|
+
readonly summary: "Calculate holding beta against IBOV.";
|
|
1920
|
+
readonly positional: readonly [{
|
|
1921
|
+
readonly kind: "positional";
|
|
982
1922
|
readonly name: "portfolio_id";
|
|
983
1923
|
readonly type: "integer";
|
|
984
|
-
readonly required:
|
|
1924
|
+
readonly required: true;
|
|
985
1925
|
readonly placeholder: "ID";
|
|
986
|
-
readonly
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
readonly kind: "option";
|
|
990
|
-
readonly flag: "--asset";
|
|
991
|
-
readonly name: "assets";
|
|
992
|
-
readonly type: "string_array";
|
|
993
|
-
readonly required: false;
|
|
994
|
-
readonly placeholder: "TICKER[:PESO]";
|
|
995
|
-
readonly multiple: true;
|
|
996
|
-
readonly collectionFormat: "repeatable";
|
|
997
|
-
readonly exclusiveGroup: "source";
|
|
998
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PETR4:120 or WINFUT:-20.";
|
|
999
|
-
}, {
|
|
1926
|
+
readonly description: "Stable saved object identifier.";
|
|
1927
|
+
}];
|
|
1928
|
+
readonly options: readonly [{
|
|
1000
1929
|
readonly kind: "option";
|
|
1001
1930
|
readonly flag: "--years";
|
|
1002
1931
|
readonly name: "years";
|
|
@@ -1007,21 +1936,21 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
1007
1936
|
readonly enumValues: readonly ["1", "3", "5"];
|
|
1008
1937
|
readonly description: "Historical lookback window in years. Accepted values: 1, 3, or 5.";
|
|
1009
1938
|
}];
|
|
1010
|
-
readonly examples: readonly ["quantbrasil
|
|
1939
|
+
readonly examples: readonly ["quantbrasil holdings beta 123 --years 3"];
|
|
1011
1940
|
};
|
|
1012
1941
|
readonly tool: {
|
|
1013
|
-
readonly name: "
|
|
1014
|
-
readonly title: "Calculate
|
|
1942
|
+
readonly name: "qb_holding_beta";
|
|
1943
|
+
readonly title: "Calculate holding beta";
|
|
1015
1944
|
};
|
|
1016
1945
|
readonly outputModes: readonly ["json", "human"];
|
|
1017
1946
|
} | {
|
|
1018
|
-
readonly id: "
|
|
1947
|
+
readonly id: "holdings.var";
|
|
1019
1948
|
readonly kind: "read";
|
|
1020
1949
|
readonly visibility: readonly ["cli", "opencode"];
|
|
1021
|
-
readonly description: "Calculate one-day Value-at-Risk for a
|
|
1950
|
+
readonly description: "Calculate one-day Value-at-Risk for a holding.";
|
|
1022
1951
|
readonly http: {
|
|
1023
1952
|
readonly method: "POST";
|
|
1024
|
-
readonly path: "/api/desk/tools/
|
|
1953
|
+
readonly path: "/api/desk/tools/holding/var";
|
|
1025
1954
|
readonly inputMode: "json_body";
|
|
1026
1955
|
readonly schemas: {
|
|
1027
1956
|
readonly request: "PortfolioVaRRequest";
|
|
@@ -1029,31 +1958,18 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
1029
1958
|
};
|
|
1030
1959
|
};
|
|
1031
1960
|
readonly cli: {
|
|
1032
|
-
readonly group: "
|
|
1961
|
+
readonly group: "holdings";
|
|
1033
1962
|
readonly command: "var";
|
|
1034
|
-
readonly summary: "Calculate one-day Value-at-Risk for a
|
|
1035
|
-
readonly positional: readonly [
|
|
1036
|
-
|
|
1037
|
-
readonly kind: "option";
|
|
1038
|
-
readonly flag: "--portfolio";
|
|
1963
|
+
readonly summary: "Calculate one-day Value-at-Risk for a holding.";
|
|
1964
|
+
readonly positional: readonly [{
|
|
1965
|
+
readonly kind: "positional";
|
|
1039
1966
|
readonly name: "portfolio_id";
|
|
1040
1967
|
readonly type: "integer";
|
|
1041
|
-
readonly required:
|
|
1968
|
+
readonly required: true;
|
|
1042
1969
|
readonly placeholder: "ID";
|
|
1043
|
-
readonly
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
readonly kind: "option";
|
|
1047
|
-
readonly flag: "--asset";
|
|
1048
|
-
readonly name: "assets";
|
|
1049
|
-
readonly type: "string_array";
|
|
1050
|
-
readonly required: false;
|
|
1051
|
-
readonly placeholder: "TICKER[:PESO]";
|
|
1052
|
-
readonly multiple: true;
|
|
1053
|
-
readonly collectionFormat: "repeatable";
|
|
1054
|
-
readonly exclusiveGroup: "source";
|
|
1055
|
-
readonly description: "Repeatable ad-hoc asset input using TICKER[:WEIGHT_PCT], for example PRIO3:120 or WINFUT:-20.";
|
|
1056
|
-
}, {
|
|
1970
|
+
readonly description: "Stable saved object identifier.";
|
|
1971
|
+
}];
|
|
1972
|
+
readonly options: readonly [{
|
|
1057
1973
|
readonly kind: "option";
|
|
1058
1974
|
readonly flag: "--years";
|
|
1059
1975
|
readonly name: "years";
|
|
@@ -1072,11 +1988,61 @@ export declare function getCapabilityById(id: CapabilityId): {
|
|
|
1072
1988
|
readonly defaultValue: 95;
|
|
1073
1989
|
readonly description: "Confidence level in percent, for example 95 or 99.";
|
|
1074
1990
|
}];
|
|
1075
|
-
readonly examples: readonly ["quantbrasil
|
|
1991
|
+
readonly examples: readonly ["quantbrasil holdings var 123 --years 1 --confidence 95"];
|
|
1992
|
+
};
|
|
1993
|
+
readonly tool: {
|
|
1994
|
+
readonly name: "qb_holding_var";
|
|
1995
|
+
readonly title: "Calculate holding VaR";
|
|
1996
|
+
};
|
|
1997
|
+
readonly outputModes: readonly ["json", "human"];
|
|
1998
|
+
} | {
|
|
1999
|
+
readonly id: "cointegration.pair";
|
|
2000
|
+
readonly kind: "read";
|
|
2001
|
+
readonly visibility: readonly ["cli", "opencode"];
|
|
2002
|
+
readonly description: "Calcula cointegração para análise de Long & Short entre dois ativos: z-score, beta, p-valor, meia-vida e intervalos de confiança.";
|
|
2003
|
+
readonly http: {
|
|
2004
|
+
readonly method: "POST";
|
|
2005
|
+
readonly path: "/api/desk/tools/cointegration/pair";
|
|
2006
|
+
readonly inputMode: "json_body";
|
|
2007
|
+
readonly schemas: {
|
|
2008
|
+
readonly request: "CointegrationPairRequest";
|
|
2009
|
+
readonly response: "CointegrationPairResponse";
|
|
2010
|
+
};
|
|
2011
|
+
};
|
|
2012
|
+
readonly cli: {
|
|
2013
|
+
readonly group: "cointegration";
|
|
2014
|
+
readonly command: "pair";
|
|
2015
|
+
readonly summary: "Calcula cointegração para análise de Long & Short.";
|
|
2016
|
+
readonly positional: readonly [{
|
|
2017
|
+
readonly kind: "positional";
|
|
2018
|
+
readonly name: "base_asset";
|
|
2019
|
+
readonly type: "string";
|
|
2020
|
+
readonly required: true;
|
|
2021
|
+
readonly placeholder: "TICKER";
|
|
2022
|
+
readonly description: "Ticker do ativo base, por exemplo PETR4.";
|
|
2023
|
+
}, {
|
|
2024
|
+
readonly kind: "positional";
|
|
2025
|
+
readonly name: "comparison_asset";
|
|
2026
|
+
readonly type: "string";
|
|
2027
|
+
readonly required: true;
|
|
2028
|
+
readonly placeholder: "TICKER";
|
|
2029
|
+
readonly description: "Ticker do ativo de comparação, por exemplo VALE3.";
|
|
2030
|
+
}];
|
|
2031
|
+
readonly options: readonly [{
|
|
2032
|
+
readonly kind: "option";
|
|
2033
|
+
readonly flag: "--window";
|
|
2034
|
+
readonly name: "window";
|
|
2035
|
+
readonly type: "integer";
|
|
2036
|
+
readonly required: false;
|
|
2037
|
+
readonly placeholder: "N";
|
|
2038
|
+
readonly defaultValue: 250;
|
|
2039
|
+
readonly description: "Janela de candles para a regressão. Padrão 250 dias úteis.";
|
|
2040
|
+
}];
|
|
2041
|
+
readonly examples: readonly ["quantbrasil cointegration pair PETR4 VALE3", "quantbrasil cointegration pair PETR4 VALE3 --window 120", "quantbrasil cointegration pair PETR4 VALE3 --json"];
|
|
1076
2042
|
};
|
|
1077
2043
|
readonly tool: {
|
|
1078
|
-
readonly name: "
|
|
1079
|
-
readonly title: "
|
|
2044
|
+
readonly name: "qb_cointegration_pair";
|
|
2045
|
+
readonly title: "Calcular cointegração para Long & Short";
|
|
1080
2046
|
};
|
|
1081
2047
|
readonly outputModes: readonly ["json", "human"];
|
|
1082
2048
|
};
|