tradingview-mcp-server 0.0.1 → 0.1.3
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 +179 -105
- package/dist/api/types.d.ts +4 -3
- package/dist/api/types.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/resources/presets.d.ts +2 -1
- package/dist/resources/presets.d.ts.map +1 -1
- package/dist/resources/presets.js +36 -1
- package/dist/resources/presets.js.map +1 -1
- package/dist/tests/fields.test.js +273 -0
- package/dist/tests/fields.test.js.map +1 -1
- package/dist/tests/presets.test.js +59 -0
- package/dist/tests/presets.test.js.map +1 -1
- package/dist/tests/screen.test.d.ts +2 -0
- package/dist/tests/screen.test.d.ts.map +1 -0
- package/dist/tests/screen.test.js +338 -0
- package/dist/tests/screen.test.js.map +1 -0
- package/dist/tools/fields.d.ts.map +1 -1
- package/dist/tools/fields.js +330 -0
- package/dist/tools/fields.js.map +1 -1
- package/dist/tools/screen.d.ts +6 -0
- package/dist/tools/screen.d.ts.map +1 -1
- package/dist/tools/screen.js +73 -25
- package/dist/tools/screen.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,16 +1,79 @@
|
|
|
1
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
<img src="docs/images/banner.png" alt="TradingView MCP Server Banner" width="100%">
|
|
3
|
+
</div>
|
|
4
|
+
|
|
5
|
+
<div align="center">
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/tradingview-mcp-server)
|
|
8
|
+
[](https://www.npmjs.com/package/tradingview-mcp-server)
|
|
9
|
+
[](https://github.com/fiale-plus/tradingview-mcp-server/actions/workflows/test.yml)
|
|
10
|
+
[](LICENSE)
|
|
11
|
+
[](https://modelcontextprotocol.io)
|
|
2
12
|
|
|
3
13
|
**Unofficial** Model Context Protocol (MCP) server for TradingView's stock screener API.
|
|
4
14
|
|
|
5
|
-
|
|
15
|
+
### AI-powered investment research for patient, systematic investors.
|
|
16
|
+
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 🎯 Why Use This Tool?
|
|
22
|
+
|
|
23
|
+
This tool is designed for **curious investors** who want to explore beyond passive index investing without the complexity and competition of day trading.
|
|
24
|
+
|
|
25
|
+
### The Investment Sweet Spot
|
|
26
|
+
|
|
27
|
+
**Not for day trading** 📉
|
|
28
|
+
Individual traders can't compete with hedge funds, HFT algorithms, and institutional systems operating at millisecond speeds. Day trading is a zero-sum game dominated by professionals with superior technology and information.
|
|
29
|
+
|
|
30
|
+
**Not for passive index investing** 📊
|
|
31
|
+
If you're content with market returns through index funds (S&P 500, total market ETFs), that's excellent - but you don't need screening tools. Just buy and hold.
|
|
32
|
+
|
|
33
|
+
**Perfect for systematic, research-driven investing** 🔍
|
|
34
|
+
This tool is for investors who:
|
|
35
|
+
- Want to **explore higher alpha strategies** than passive investing
|
|
36
|
+
- Are **curious to learn** different investment approaches (value, growth, quality, momentum)
|
|
37
|
+
- Seek **better risk-adjusted returns** through systematic stock selection
|
|
38
|
+
- Prefer **multi-month to multi-year investment horizons** without intraday stress
|
|
39
|
+
- Want to **test investment hypotheses** using fundamental and technical data
|
|
40
|
+
- Value **systematic screening** over gut feelings and tips
|
|
41
|
+
|
|
42
|
+
### Your Edge: Time, Research, and Patience
|
|
43
|
+
|
|
44
|
+
Unlike hedge funds competing on speed and information access, you can compete on:
|
|
45
|
+
- **Patience** - Hold positions through volatility without quarterly reporting pressure
|
|
46
|
+
- **Research depth** - Screen comprehensively with 75+ fundamental and technical fields
|
|
47
|
+
- **Strategy experimentation** - Test different approaches (quality, value, growth, momentum)
|
|
48
|
+
- **Risk management** - Build diversified portfolios with systematic criteria
|
|
49
|
+
|
|
50
|
+
**This tool helps you find opportunities, understand metrics, and make informed decisions - not chase minute-by-minute price movements.**
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Table of Contents
|
|
55
|
+
|
|
56
|
+
- [Features](#features)
|
|
57
|
+
- [Installation](#installation)
|
|
58
|
+
- [Configuration](#configuration)
|
|
59
|
+
- [Quick Start](#quick-start)
|
|
60
|
+
- [Documentation](#documentation)
|
|
61
|
+
- [Available Tools](#available-tools)
|
|
62
|
+
- [Important Notes](#important-notes)
|
|
63
|
+
- [Contributing](#contributing)
|
|
64
|
+
- [License](#license)
|
|
6
65
|
|
|
7
66
|
## Features
|
|
8
67
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
68
|
+
**Built for research-driven investment discovery:**
|
|
69
|
+
|
|
70
|
+
- 🔍 **Systematic screening** - Find opportunities across stocks, forex, and crypto with advanced filters
|
|
71
|
+
- 📊 **75+ investment metrics** - Fundamental (valuation, margins, returns), technical (RSI, moving averages), and performance fields with TTM/FQ/FY variants
|
|
72
|
+
- 🎯 **6 proven investment strategies** - Pre-configured screens for quality, value, dividend, momentum, and growth investing
|
|
73
|
+
- 💡 **AI-powered exploration** - Natural language queries through Claude ("Find undervalued companies with strong balance sheets")
|
|
74
|
+
- 💰 **Deep financial analysis** - EV, EV/EBIT, EV/EBITDA, PEG, gross/operating margins, ROIC, ROA, ROE
|
|
75
|
+
- ⚡ **Research-optimized** - Minimal (7 fields) for quick scans vs extended (35 fields) for comprehensive analysis
|
|
76
|
+
- 🏦 **Exchange filtering** - Focus on NASDAQ, NYSE, CBOE, or primary listings only
|
|
14
77
|
|
|
15
78
|
## Installation
|
|
16
79
|
|
|
@@ -33,28 +96,20 @@ npm run build
|
|
|
33
96
|
|
|
34
97
|
### Claude Desktop
|
|
35
98
|
|
|
36
|
-
Add to your Claude
|
|
37
|
-
|
|
38
|
-
**Mac**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
39
|
-
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
40
|
-
**Linux**: `~/.config/Claude/claude_desktop_config.json`
|
|
99
|
+
Add to your Claude config file (`~/Library/Application Support/Claude/claude_desktop_config.json` on Mac):
|
|
41
100
|
|
|
42
101
|
```json
|
|
43
102
|
{
|
|
44
103
|
"mcpServers": {
|
|
45
104
|
"tradingview": {
|
|
46
105
|
"command": "npx",
|
|
47
|
-
"args": ["-y", "tradingview-mcp-server"]
|
|
48
|
-
"env": {
|
|
49
|
-
"CACHE_TTL_SECONDS": "300",
|
|
50
|
-
"RATE_LIMIT_RPM": "10"
|
|
51
|
-
}
|
|
106
|
+
"args": ["-y", "tradingview-mcp-server"]
|
|
52
107
|
}
|
|
53
108
|
}
|
|
54
109
|
}
|
|
55
110
|
```
|
|
56
111
|
|
|
57
|
-
### Claude Code
|
|
112
|
+
### Claude Code
|
|
58
113
|
|
|
59
114
|
Create `.mcp.json` in your project root:
|
|
60
115
|
|
|
@@ -63,11 +118,7 @@ Create `.mcp.json` in your project root:
|
|
|
63
118
|
"mcpServers": {
|
|
64
119
|
"tradingview": {
|
|
65
120
|
"command": "npx",
|
|
66
|
-
"args": ["-y", "tradingview-mcp-server"]
|
|
67
|
-
"env": {
|
|
68
|
-
"CACHE_TTL_SECONDS": "300",
|
|
69
|
-
"RATE_LIMIT_RPM": "10"
|
|
70
|
-
}
|
|
121
|
+
"args": ["-y", "tradingview-mcp-server"]
|
|
71
122
|
}
|
|
72
123
|
}
|
|
73
124
|
}
|
|
@@ -81,58 +132,73 @@ Enable in `.claude/settings.local.json`:
|
|
|
81
132
|
}
|
|
82
133
|
```
|
|
83
134
|
|
|
84
|
-
|
|
135
|
+
**Optional environment variables:**
|
|
136
|
+
- `CACHE_TTL_SECONDS` - Cache duration (default: 300)
|
|
137
|
+
- `RATE_LIMIT_RPM` - Requests per minute (default: 10)
|
|
85
138
|
|
|
86
|
-
|
|
87
|
-
|----------|-------------|---------|
|
|
88
|
-
| `CACHE_TTL_SECONDS` | Cache time-to-live in seconds (0 to disable) | `300` (5 min) |
|
|
89
|
-
| `RATE_LIMIT_RPM` | API requests per minute | `10` |
|
|
139
|
+
## Quick Start
|
|
90
140
|
|
|
91
|
-
|
|
141
|
+
### Learning Investment Strategies
|
|
92
142
|
|
|
93
|
-
|
|
143
|
+
Explore proven investment approaches with pre-configured strategies:
|
|
94
144
|
|
|
95
145
|
```
|
|
96
|
-
|
|
146
|
+
I want to learn about quality investing - show me quality stocks
|
|
97
147
|
```
|
|
98
148
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
- Good margins (Net Margin > 10%)
|
|
103
|
-
- Low volatility
|
|
104
|
-
- Golden cross (SMA50 > SMA200)
|
|
105
|
-
|
|
106
|
-
### 2. Custom Screening
|
|
149
|
+
```
|
|
150
|
+
Find dividend stocks that could provide steady income
|
|
151
|
+
```
|
|
107
152
|
|
|
108
153
|
```
|
|
109
|
-
Screen for
|
|
110
|
-
- ROE greater than 15%
|
|
111
|
-
- P/E ratio less than 25
|
|
112
|
-
- Market cap above $1 billion
|
|
113
|
-
- Limit to 10 results
|
|
154
|
+
What makes a good value investment? Screen for undervalued companies
|
|
114
155
|
```
|
|
115
156
|
|
|
116
|
-
###
|
|
157
|
+
### Research-Driven Stock Selection
|
|
158
|
+
|
|
159
|
+
Build your investment thesis systematically:
|
|
117
160
|
|
|
118
161
|
```
|
|
119
|
-
|
|
162
|
+
Find companies with:
|
|
163
|
+
- Strong return on equity (>15%)
|
|
164
|
+
- Reasonable valuation (P/E < 25)
|
|
165
|
+
- Significant scale (market cap > $1B)
|
|
166
|
+
- Low debt levels
|
|
120
167
|
```
|
|
121
168
|
|
|
122
|
-
|
|
169
|
+
```
|
|
170
|
+
I'm interested in profitable companies trading below their intrinsic value.
|
|
171
|
+
Screen for stocks with EV/EBITDA < 10 and positive free cash flow.
|
|
172
|
+
```
|
|
123
173
|
|
|
124
|
-
###
|
|
174
|
+
### Understanding Investment Metrics
|
|
125
175
|
|
|
126
176
|
```
|
|
127
|
-
|
|
177
|
+
What financial metrics can I use for fundamental analysis?
|
|
128
178
|
```
|
|
129
179
|
|
|
130
|
-
|
|
180
|
+
```
|
|
181
|
+
Explain the difference between P/E ratio and PEG ratio
|
|
182
|
+
```
|
|
131
183
|
|
|
132
184
|
```
|
|
133
|
-
|
|
185
|
+
What's the difference between gross margin and operating margin?
|
|
134
186
|
```
|
|
135
187
|
|
|
188
|
+
## Documentation
|
|
189
|
+
|
|
190
|
+
### 📚 Comprehensive Guides
|
|
191
|
+
|
|
192
|
+
- **[Preset Strategies](docs/presets.md)** - All 6 preset strategies with detailed criteria, use cases, and examples
|
|
193
|
+
- **[Field Reference](docs/fields.md)** - Complete guide to all 75+ fields with descriptions and usage examples
|
|
194
|
+
- **[Development Guide](docs/development.md)** - Local setup, testing, and extending the server
|
|
195
|
+
|
|
196
|
+
### 🔧 Advanced Topics
|
|
197
|
+
|
|
198
|
+
- **[Field Variants (TTM/FQ/FY)](docs/fields.md#understanding-field-variants)** - Understanding time periods
|
|
199
|
+
- **[Column Optimization](docs/presets.md#performance-characteristics)** - Minimal vs extended column sets
|
|
200
|
+
- **[Custom Presets](docs/development.md#creating-new-presets)** - Creating your own screening strategies
|
|
201
|
+
|
|
136
202
|
## Available Tools
|
|
137
203
|
|
|
138
204
|
### `screen_stocks`
|
|
@@ -145,6 +211,7 @@ Screen stocks based on filters.
|
|
|
145
211
|
- `sort_by` - Field to sort by (default: `"market_cap_basic"`)
|
|
146
212
|
- `sort_order` - `"asc"` or `"desc"` (default: `"desc"`)
|
|
147
213
|
- `limit` - Number of results (1-200, default: 20)
|
|
214
|
+
- `columns` - Optional array of columns to return (default: minimal 7 fields for performance)
|
|
148
215
|
|
|
149
216
|
**Operators:**
|
|
150
217
|
- `greater`, `less`, `greater_or_equal`, `less_or_equal`
|
|
@@ -165,67 +232,45 @@ List available fields for filtering.
|
|
|
165
232
|
Get a pre-configured screening strategy.
|
|
166
233
|
|
|
167
234
|
**Available Presets:**
|
|
168
|
-
- `quality_stocks` - Conservative quality
|
|
169
|
-
- `value_stocks` - Undervalued
|
|
170
|
-
- `dividend_stocks` - High
|
|
171
|
-
- `momentum_stocks` -
|
|
172
|
-
- `growth_stocks` - High
|
|
235
|
+
- `quality_stocks` - Conservative quality (ROE >12%, low debt, low volatility)
|
|
236
|
+
- `value_stocks` - Undervalued (P/E <15, P/B <1.5)
|
|
237
|
+
- `dividend_stocks` - High yield (>3%, low debt)
|
|
238
|
+
- `momentum_stocks` - Technical strength (RSI 50-70, golden cross)
|
|
239
|
+
- `growth_stocks` - High growth (ROE >20%, margins >15%)
|
|
240
|
+
- `quality_growth_screener` - Comprehensive 16-filter screen with 35 extended columns
|
|
241
|
+
|
|
242
|
+
See **[Preset Strategies Guide](docs/presets.md)** for detailed criteria and usage.
|
|
173
243
|
|
|
174
244
|
### `list_presets`
|
|
175
245
|
|
|
176
246
|
List all available preset strategies.
|
|
177
247
|
|
|
178
|
-
##
|
|
179
|
-
|
|
180
|
-
### Fundamental
|
|
181
|
-
- `return_on_equity` - ROE (%)
|
|
182
|
-
- `price_earnings_ttm` - P/E Ratio
|
|
183
|
-
- `price_book_fq` - P/B Ratio
|
|
184
|
-
- `debt_to_equity` - Debt/Equity Ratio
|
|
185
|
-
- `net_margin_ttm` - Net Margin (%)
|
|
186
|
-
- `market_cap_basic` - Market Capitalization
|
|
187
|
-
- `dividend_yield_recent` - Dividend Yield (%)
|
|
188
|
-
|
|
189
|
-
### Technical
|
|
190
|
-
- `RSI` - Relative Strength Index (14)
|
|
191
|
-
- `SMA50` - 50-day Simple Moving Average
|
|
192
|
-
- `SMA200` - 200-day Simple Moving Average
|
|
193
|
-
- `Volatility.M` - Monthly Volatility (%)
|
|
248
|
+
## Key Features at a Glance
|
|
194
249
|
|
|
195
|
-
###
|
|
196
|
-
- `close` - Current Price
|
|
197
|
-
- `change` - Daily Change (%)
|
|
198
|
-
- `volume` - Trading Volume
|
|
199
|
-
- `Perf.W`, `Perf.1M`, `Perf.Y` - Performance metrics
|
|
250
|
+
### 75+ Available Fields
|
|
200
251
|
|
|
201
|
-
|
|
252
|
+
The server provides comprehensive coverage across categories:
|
|
202
253
|
|
|
203
|
-
|
|
254
|
+
- **Fundamental** - Core metrics (ROE, P/E, P/B), valuation (EV, EV/EBIT, PEG), margins (gross, operating, pre-tax), returns (ROA, ROIC), balance sheet (debt, assets, current ratio)
|
|
255
|
+
- **Technical** - RSI, moving averages (SMA50, SMA200), volatility, beta
|
|
256
|
+
- **Performance** - Price, volume, growth metrics, sector/industry
|
|
204
257
|
|
|
205
|
-
|
|
206
|
-
- `preset://value_stocks`
|
|
207
|
-
- `preset://dividend_stocks`
|
|
208
|
-
- `preset://momentum_stocks`
|
|
209
|
-
- `preset://growth_stocks`
|
|
210
|
-
|
|
211
|
-
## Development
|
|
212
|
-
|
|
213
|
-
```bash
|
|
214
|
-
# Install dependencies
|
|
215
|
-
npm install
|
|
258
|
+
See **[Complete Field Reference](docs/fields.md)** for all 75+ fields with descriptions and examples.
|
|
216
259
|
|
|
217
|
-
|
|
218
|
-
npm run dev
|
|
260
|
+
### 6 Preset Strategies
|
|
219
261
|
|
|
220
|
-
|
|
221
|
-
npm run build
|
|
262
|
+
Pre-configured screens for common investment strategies:
|
|
222
263
|
|
|
223
|
-
|
|
224
|
-
|
|
264
|
+
| Preset | Style | Key Criteria | Columns |
|
|
265
|
+
|--------|-------|--------------|---------|
|
|
266
|
+
| `quality_stocks` | Conservative | ROE >12%, low debt, low volatility | 7 default |
|
|
267
|
+
| `value_stocks` | Value | P/E <15, P/B <1.5 | 7 default |
|
|
268
|
+
| `dividend_stocks` | Income | Yield >3%, low debt | 7 default |
|
|
269
|
+
| `momentum_stocks` | Momentum | RSI 50-70, golden cross | 7 default |
|
|
270
|
+
| `growth_stocks` | Growth | ROE >20%, margins >15% | 7 default |
|
|
271
|
+
| `quality_growth_screener` | Comprehensive | 16 filters, deep analysis | 35 extended |
|
|
225
272
|
|
|
226
|
-
|
|
227
|
-
npm test:watch
|
|
228
|
-
```
|
|
273
|
+
See **[Preset Strategies Guide](docs/presets.md)** for detailed criteria, use cases, and examples.
|
|
229
274
|
|
|
230
275
|
## Important Notes
|
|
231
276
|
|
|
@@ -236,24 +281,51 @@ npm test:watch
|
|
|
236
281
|
- No official documentation or support from TradingView
|
|
237
282
|
- Use responsibly with rate limiting
|
|
238
283
|
|
|
239
|
-
## Limitations
|
|
284
|
+
## Investment Focus & Limitations
|
|
285
|
+
|
|
286
|
+
This tool is designed for **research and position selection**, not intraday trading:
|
|
240
287
|
|
|
241
|
-
- **Current snapshot
|
|
242
|
-
- **
|
|
243
|
-
- **
|
|
244
|
-
- **
|
|
288
|
+
- **Current fundamentals snapshot** - Latest quarterly/annual data for investment decisions (no tick-by-tick historical data needed)
|
|
289
|
+
- **Research-paced rate limits** - Conservative default (10 req/min) supports thorough analysis, not high-frequency trading
|
|
290
|
+
- **Strategic timeframes** - Daily/weekly data updates align with multi-month investment horizons
|
|
291
|
+
- **Fundamental-first approach** - Emphasizes financial metrics over intraday price action
|
|
292
|
+
|
|
293
|
+
**By design**, this tool doesn't support:
|
|
294
|
+
- Real-time tick data or intraday charts (not needed for position investing)
|
|
295
|
+
- High-frequency screening (research takes time and thought)
|
|
296
|
+
- Options chains or derivatives (focused on equity fundamentals)
|
|
297
|
+
- News feeds or sentiment analysis (focus on numbers and metrics)
|
|
245
298
|
|
|
246
299
|
## Contributing
|
|
247
300
|
|
|
248
301
|
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
249
302
|
|
|
303
|
+
For development setup and guidelines, see the **[Development Guide](docs/development.md)**.
|
|
304
|
+
|
|
250
305
|
## License
|
|
251
306
|
|
|
252
307
|
MIT License - see [LICENSE](LICENSE) file for details.
|
|
253
308
|
|
|
254
309
|
## Disclaimer
|
|
255
310
|
|
|
256
|
-
|
|
311
|
+
**Not Investment Advice**
|
|
312
|
+
|
|
313
|
+
This tool provides stock screening capabilities for informational and educational purposes only. It is **not investment advice, financial advice, or a recommendation** to buy or sell any security.
|
|
314
|
+
|
|
315
|
+
- All investment decisions are your sole responsibility
|
|
316
|
+
- Past performance does not indicate future results
|
|
317
|
+
- Screening results do not constitute investment recommendations
|
|
318
|
+
- Always conduct your own research and due diligence
|
|
319
|
+
- Consult qualified financial advisors before making investment decisions
|
|
320
|
+
- You may lose money investing in securities
|
|
321
|
+
|
|
322
|
+
**Software License**
|
|
323
|
+
|
|
324
|
+
This software is provided "AS IS" under the [MIT License](LICENSE), without warranty of any kind, express or implied. The authors and contributors are not liable for any damages or losses arising from use of this software.
|
|
325
|
+
|
|
326
|
+
**Third-Party Services**
|
|
327
|
+
|
|
328
|
+
This is an unofficial tool and is not affiliated with, endorsed by, or connected to TradingView. Use at your own risk. TradingView's unofficial API may change without notice.
|
|
257
329
|
|
|
258
330
|
## Links
|
|
259
331
|
|
|
@@ -264,4 +336,6 @@ This is an unofficial tool and is not affiliated with, endorsed by, or connected
|
|
|
264
336
|
|
|
265
337
|
---
|
|
266
338
|
|
|
339
|
+
**Smarter screens, not faster trades.**
|
|
340
|
+
|
|
267
341
|
Built with ❤️ using the [Model Context Protocol](https://modelcontextprotocol.io)
|
package/dist/api/types.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
export interface Filter {
|
|
5
5
|
left: string;
|
|
6
6
|
operation: FilterOperation;
|
|
7
|
-
right: number | string | [number, number];
|
|
7
|
+
right: number | string | boolean | [number, number] | string[];
|
|
8
8
|
}
|
|
9
9
|
export type FilterOperation = "greater" | "less" | "egreater" | "eless" | "equal" | "nequal" | "in_range" | "not_in_range" | "crosses" | "crosses_above" | "crosses_below" | "match";
|
|
10
10
|
export interface ScreenerRequest {
|
|
@@ -40,12 +40,13 @@ export interface ScreenStocksInput {
|
|
|
40
40
|
filters: Array<{
|
|
41
41
|
field: string;
|
|
42
42
|
operator: string;
|
|
43
|
-
value: number | string | [number, number];
|
|
43
|
+
value: number | string | boolean | [number, number] | string[];
|
|
44
44
|
}>;
|
|
45
45
|
markets?: string[];
|
|
46
46
|
sort_by?: string;
|
|
47
47
|
sort_order?: "asc" | "desc";
|
|
48
48
|
limit?: number;
|
|
49
|
+
columns?: string[];
|
|
49
50
|
}
|
|
50
51
|
export interface ListFieldsInput {
|
|
51
52
|
asset_type?: "stock" | "forex" | "crypto";
|
|
@@ -62,7 +63,7 @@ export interface FieldMetadata {
|
|
|
62
63
|
name: string;
|
|
63
64
|
label: string;
|
|
64
65
|
category: "fundamental" | "technical" | "performance";
|
|
65
|
-
type: "number" | "percent" | "currency" | "string";
|
|
66
|
+
type: "number" | "percent" | "currency" | "string" | "boolean";
|
|
66
67
|
description?: string;
|
|
67
68
|
}
|
|
68
69
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/api/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;CAChE;AAED,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,MAAM,GACN,UAAU,GACV,OAAO,GACP,OAAO,GACP,QAAQ,GACR,UAAU,GACV,cAAc,GACd,SAAS,GACT,eAAe,GACf,eAAe,GACf,OAAO,CAAC;AAEZ,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;KAC3B,CAAC;IACF,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,OAAO,CAAC,EAAE;QACR,KAAK,EAAE;YACL,KAAK,EAAE,MAAM,EAAE,CAAC;SACjB,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;KAC/B,CAAC,CAAC;CACJ;AAED;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;KAChE,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC1C,QAAQ,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,aAAa,CAAC;CACxD;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,aAAa,CAAC;IACtD,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
package/dist/index.js
CHANGED
|
@@ -85,6 +85,11 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
|
85
85
|
minimum: 1,
|
|
86
86
|
maximum: 200,
|
|
87
87
|
},
|
|
88
|
+
columns: {
|
|
89
|
+
type: "array",
|
|
90
|
+
items: { type: "string" },
|
|
91
|
+
description: "Optional: specific columns to include in results. If not provided, uses minimal default columns. Presets may define extended column sets.",
|
|
92
|
+
},
|
|
88
93
|
},
|
|
89
94
|
required: ["filters"],
|
|
90
95
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,iCAAiC;AACjC,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,KAAK,CAAC,CAAC;AACnE,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;AAEpE,wBAAwB;AACxB,MAAM,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACvC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,cAAc,CAAC,CAAC;AACpD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;AAC9D,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;AACpC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC,sBAAsB;AACtB,KAAK,CAAC,YAAY,EAAE,CAAC;AAErB,oBAAoB;AACpB,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;IACE,IAAI,EAAE,wBAAwB;IAC9B,OAAO,EAAE,OAAO;CACjB,EACD;IACE,YAAY,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;KACd;CACF,CACF,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IAC1D,OAAO;QACL,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,eAAe;gBACrB,WAAW,EACT,2GAA2G;gBAC7G,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE,OAAO;4BACb,WAAW,EAAE,qCAAqC;4BAClD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,WAAW,EACT,uEAAuE;qCAC1E;oCACD,QAAQ,EAAE;wCACR,IAAI,EAAE,QAAQ;wCACd,WAAW,EACT,4FAA4F;qCAC/F;oCACD,KAAK,EAAE;wCACL,WAAW,EACT,kGAAkG;qCACrG;iCACF;gCACD,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;6BACzC;yBACF;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,WAAW,EAAE,oEAAoE;yBAClF;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,uDAAuD;yBACrE;wBACD,UAAU,EAAE;4BACV,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;4BACrB,WAAW,EAAE,6BAA6B;yBAC3C;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,kDAAkD;4BAC/D,OAAO,EAAE,CAAC;4BACV,OAAO,EAAE,GAAG;yBACb;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,WAAW,EAAE,2IAA2I;yBACzJ;qBACF;oBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;iBACtB;aACF;YACD;gBACE,IAAI,EAAE,aAAa;gBACnB,WAAW,EACT,+GAA+G;gBACjH,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,UAAU,EAAE;4BACV,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;4BAClC,WAAW,EAAE,iCAAiC;yBAC/C;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC;4BACjD,WAAW,EAAE,+DAA+D;yBAC7E;qBACF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EACT,+IAA+I;gBACjJ,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,+FAA+F;yBAClG;qBACF;oBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;iBAC1B;aACF;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,gDAAgD;gBAC7D,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,EAAE;iBACf;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,oBAAoB;AACpB,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAEjD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,IAAW,CAAC,CAAC;gBAC1D,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;yBACtC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,IAAW,CAAC,CAAC;gBAClD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;yBACtC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAE,IAAY,CAAC,WAAW,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;6BAC7D;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;yBACtC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;gBAC1C,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;yBACvC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED;gBACE,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;yBACzD;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;QACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,iBAAiB;AACjB,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC9D,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5C,GAAG,EAAE,YAAY,GAAG,EAAE;YACtB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI;YACvB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW;YACrC,QAAQ,EAAE,kBAAkB;SAC7B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACpE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;IAE/B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,QAAQ,EAAE;YACR;gBACE,GAAG;gBACH,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACtC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe;AACf,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,cAAc,SAAS,mBAAmB,cAAc,UAAU,CAAC,CAAC;AACpF,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -7,11 +7,12 @@ export interface Preset {
|
|
|
7
7
|
filters: Array<{
|
|
8
8
|
field: string;
|
|
9
9
|
operator: string;
|
|
10
|
-
value: number | string | [number, number];
|
|
10
|
+
value: number | string | boolean | [number, number] | string[];
|
|
11
11
|
}>;
|
|
12
12
|
markets?: string[];
|
|
13
13
|
sort_by?: string;
|
|
14
14
|
sort_order?: "asc" | "desc";
|
|
15
|
+
columns?: string[];
|
|
15
16
|
}
|
|
16
17
|
export declare const PRESETS: Record<string, Preset>;
|
|
17
18
|
export declare class PresetsTool {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/resources/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/resources/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;KAChE,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoH1C,CAAC;AAEF,qBAAa,WAAW;IACtB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAI5C,WAAW,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAM5D"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Preset screening configurations
|
|
3
3
|
*/
|
|
4
|
+
import { EXTENDED_COLUMNS } from "../tools/screen.js";
|
|
4
5
|
export const PRESETS = {
|
|
5
6
|
quality_stocks: {
|
|
6
7
|
name: "Quality Stocks (Conservative)",
|
|
7
|
-
description: "High-quality, low-volatility stocks with strong fundamentals and uptrends.
|
|
8
|
+
description: "High-quality, low-volatility stocks with strong fundamentals and uptrends. Conservative screening strategy ideal for risk-averse investors.",
|
|
8
9
|
filters: [
|
|
9
10
|
{ field: "return_on_equity", operator: "greater", value: 12 },
|
|
10
11
|
{ field: "market_cap_basic", operator: "greater", value: 200000000 },
|
|
@@ -70,6 +71,40 @@ export const PRESETS = {
|
|
|
70
71
|
sort_by: "return_on_equity",
|
|
71
72
|
sort_order: "desc",
|
|
72
73
|
},
|
|
74
|
+
quality_growth_screener: {
|
|
75
|
+
name: "Quality Growth Screener",
|
|
76
|
+
description: "Comprehensive quality and growth screen: profitable, growing, low-debt companies with strong technicals and exchange filtering. Combines fundamental strength (ROE >15%, margins >12%), growth momentum (revenue +8% YoY), financial stability (low debt, positive FCF), and technical uptrend (golden cross, RSI 45-65, low volatility). Primary listings only on major US exchanges.",
|
|
77
|
+
filters: [
|
|
78
|
+
// Price and Market Cap
|
|
79
|
+
{ field: "close", operator: "greater_or_equal", value: 10 },
|
|
80
|
+
{ field: "market_cap_basic", operator: "greater_or_equal", value: 2000000000 },
|
|
81
|
+
// Valuation
|
|
82
|
+
{ field: "price_earnings_ttm", operator: "less_or_equal", value: 35 },
|
|
83
|
+
{ field: "price_sales_current", operator: "less_or_equal", value: 6 },
|
|
84
|
+
// Profitability (Fiscal Quarter/Year data)
|
|
85
|
+
{ field: "return_on_equity_fq", operator: "greater", value: 15 },
|
|
86
|
+
{ field: "net_margin_fy", operator: "greater", value: 12 },
|
|
87
|
+
// Financial Strength
|
|
88
|
+
{ field: "debt_to_equity_fy", operator: "less", value: 0.6 },
|
|
89
|
+
// Growth
|
|
90
|
+
{ field: "revenue_per_share_ttm", operator: "greater", value: 3 },
|
|
91
|
+
{ field: "total_revenue_yoy_growth_ttm", operator: "greater", value: 8 },
|
|
92
|
+
// Technical Indicators
|
|
93
|
+
{ field: "RSI", operator: "in_range", value: [45, 62] },
|
|
94
|
+
{ field: "SMA50", operator: "greater_or_equal", value: "SMA200" },
|
|
95
|
+
{ field: "close", operator: "greater", value: "SMA50" },
|
|
96
|
+
{ field: "Volatility.M", operator: "less", value: 3 },
|
|
97
|
+
// Liquidity
|
|
98
|
+
{ field: "average_volume_90d_calc", operator: "greater", value: 200000 },
|
|
99
|
+
// Exchange and Listing Type
|
|
100
|
+
{ field: "exchange", operator: "in_range", value: ["NASDAQ", "NYSE", "CBOE"] },
|
|
101
|
+
{ field: "is_primary", operator: "equal", value: true },
|
|
102
|
+
],
|
|
103
|
+
markets: ["america"],
|
|
104
|
+
sort_by: "market_cap_basic",
|
|
105
|
+
sort_order: "desc",
|
|
106
|
+
columns: EXTENDED_COLUMNS,
|
|
107
|
+
},
|
|
73
108
|
};
|
|
74
109
|
export class PresetsTool {
|
|
75
110
|
getPreset(presetName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/resources/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/resources/presets.ts"],"names":[],"mappings":"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"}
|