superkit-mcp-server 1.2.4 → 1.2.6
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/ARCHITECTURE.md +102 -102
- package/README.md +71 -71
- package/SUPERKIT.md +168 -168
- package/agents/code-archaeologist.md +106 -106
- package/agents/coder.md +90 -90
- package/agents/data-engineer.md +28 -28
- package/agents/devops-engineer.md +242 -242
- package/agents/git-manager.md +203 -203
- package/agents/orchestrator.md +420 -420
- package/agents/penetration-tester.md +188 -188
- package/agents/performance-optimizer.md +187 -187
- package/agents/planner.md +270 -270
- package/agents/qa-automation-engineer.md +103 -103
- package/agents/quant-developer.md +32 -32
- package/agents/reviewer.md +100 -100
- package/agents/scout.md +222 -222
- package/agents/tester.md +274 -274
- package/agents/ui-designer.md +208 -208
- package/build/__tests__/test_apply_prompt_args.js +104 -0
- package/build/index.js +106 -45
- package/build/tools/todoTools.js +39 -39
- package/build/tools/validators/__tests__/apiSchema.test.js +23 -23
- package/build/tools/validators/__tests__/convertRules.test.js +5 -5
- package/build/tools/validators/__tests__/frontendDesign.test.js +12 -12
- package/build/tools/validators/__tests__/geoChecker.test.js +19 -19
- package/build/tools/validators/__tests__/mobileAudit.test.js +12 -12
- package/build/tools/validators/__tests__/reactPerformanceChecker.test.js +17 -17
- package/build/tools/validators/__tests__/securityScan.test.js +6 -6
- package/build/tools/validators/__tests__/seoChecker.test.js +16 -16
- package/build/tools/validators/__tests__/typeCoverage.test.js +14 -14
- package/commands/README.md +122 -122
- package/commands/ask.toml +72 -72
- package/commands/brainstorm.toml +119 -119
- package/commands/chat.toml +77 -77
- package/commands/code-preview.toml +37 -37
- package/commands/code.toml +28 -28
- package/commands/content.toml +200 -200
- package/commands/cook.toml +77 -77
- package/commands/copywrite.toml +131 -131
- package/commands/db.toml +192 -192
- package/commands/debug.toml +166 -166
- package/commands/design.toml +158 -158
- package/commands/dev-rules.toml +14 -14
- package/commands/do.toml +117 -117
- package/commands/doc-rules.toml +14 -14
- package/commands/docs.toml +148 -148
- package/commands/fix.toml +440 -440
- package/commands/fullstack.toml +175 -175
- package/commands/git.toml +235 -235
- package/commands/help.toml +84 -84
- package/commands/integrate.toml +127 -127
- package/commands/journal.toml +136 -136
- package/commands/kit-setup.toml +40 -40
- package/commands/mcp.toml +183 -183
- package/commands/orchestration.toml +15 -15
- package/commands/plan.toml +206 -172
- package/commands/pm.toml +148 -148
- package/commands/pr.toml +50 -50
- package/commands/project.toml +32 -32
- package/commands/research.toml +117 -117
- package/commands/review-pr.toml +63 -63
- package/commands/review.toml +190 -190
- package/commands/scout-ext.toml +97 -97
- package/commands/scout.toml +79 -79
- package/commands/screenshot.toml +65 -65
- package/commands/session.toml +102 -102
- package/commands/skill.toml +384 -384
- package/commands/status.toml +22 -22
- package/commands/team.toml +56 -56
- package/commands/test.toml +164 -164
- package/commands/ticket.toml +70 -70
- package/commands/use.toml +106 -106
- package/commands/video.toml +83 -83
- package/commands/watzup.toml +71 -71
- package/commands/workflow.toml +14 -14
- package/package.json +35 -35
- package/skills/meta/README.md +30 -30
- package/skills/meta/api-design/SKILL.md +134 -134
- package/skills/meta/code-review/SKILL.md +44 -44
- package/skills/meta/code-review/checklists/pre-merge.md +25 -25
- package/skills/meta/code-review/workflows/architecture-pass.md +26 -26
- package/skills/meta/code-review/workflows/performance-pass.md +27 -27
- package/skills/meta/code-review/workflows/security-pass.md +29 -29
- package/skills/meta/compound-docs/SKILL.md +133 -133
- package/skills/meta/debug/SKILL.md +40 -40
- package/skills/meta/debug/templates/bug-report.template.md +31 -31
- package/skills/meta/debug/workflows/reproduce-issue.md +20 -20
- package/skills/meta/docker/SKILL.md +126 -126
- package/skills/meta/examples/supabase/SKILL.md +46 -46
- package/skills/meta/examples/supabase/references/best-practices.md +319 -319
- package/skills/meta/examples/supabase/references/common-patterns.md +373 -373
- package/skills/meta/examples/supabase/templates/migration-template.sql +49 -49
- package/skills/meta/examples/supabase/templates/rls-policy-template.sql +77 -77
- package/skills/meta/examples/supabase/workflows/debugging.md +260 -260
- package/skills/meta/examples/supabase/workflows/migration-workflow.md +211 -211
- package/skills/meta/examples/supabase/workflows/rls-policies.md +244 -244
- package/skills/meta/examples/supabase/workflows/schema-design.md +321 -321
- package/skills/meta/file-todos/SKILL.md +88 -88
- package/skills/meta/mobile/SKILL.md +140 -140
- package/skills/meta/nextjs/SKILL.md +101 -101
- package/skills/meta/performance/SKILL.md +130 -130
- package/skills/meta/react-patterns/SKILL.md +83 -83
- package/skills/meta/security/SKILL.md +114 -114
- package/skills/meta/session-resume/SKILL.md +96 -96
- package/skills/meta/tailwind/SKILL.md +139 -139
- package/skills/meta/testing/SKILL.md +43 -43
- package/skills/meta/testing/references/vitest-patterns.md +45 -45
- package/skills/meta/testing/templates/component-test.template.tsx +37 -37
- package/skills/tech/alpha-vantage/SKILL.md +142 -142
- package/skills/tech/alpha-vantage/references/commodities.md +153 -153
- package/skills/tech/alpha-vantage/references/economic-indicators.md +158 -158
- package/skills/tech/alpha-vantage/references/forex-crypto.md +154 -154
- package/skills/tech/alpha-vantage/references/fundamentals.md +223 -223
- package/skills/tech/alpha-vantage/references/intelligence.md +138 -138
- package/skills/tech/alpha-vantage/references/options.md +93 -93
- package/skills/tech/alpha-vantage/references/technical-indicators.md +374 -374
- package/skills/tech/alpha-vantage/references/time-series.md +157 -157
- package/skills/tech/financial-modeling/SKILL.md +18 -18
- package/skills/tech/financial-modeling/skills/3-statements/SKILL.md +368 -368
- package/skills/tech/financial-modeling/skills/3-statements/references/formatting.md +118 -118
- package/skills/tech/financial-modeling/skills/3-statements/references/formulas.md +292 -292
- package/skills/tech/financial-modeling/skills/3-statements/references/sec-filings.md +125 -125
- package/skills/tech/financial-modeling/skills/dcf-model/SKILL.md +1210 -1210
- package/skills/tech/financial-modeling/skills/dcf-model/TROUBLESHOOTING.md +40 -40
- package/skills/tech/financial-modeling/skills/dcf-model/requirements.txt +8 -8
- package/skills/tech/financial-modeling/skills/dcf-model/scripts/validate_dcf.py +292 -292
- package/skills/tech/financial-modeling/skills/lbo-model/SKILL.md +236 -236
- package/skills/tech/financial-modeling/skills/merger-model/SKILL.md +108 -108
- package/skills/workflows/README.md +203 -203
- package/skills/workflows/adr.md +174 -174
- package/skills/workflows/changelog.md +74 -74
- package/skills/workflows/compound.md +323 -323
- package/skills/workflows/compound_health.md +74 -74
- package/skills/workflows/create-agent-skill.md +138 -138
- package/skills/workflows/cycle.md +144 -144
- package/skills/workflows/deploy-docs.md +84 -84
- package/skills/workflows/development-rules.md +42 -42
- package/skills/workflows/doc.md +95 -95
- package/skills/workflows/documentation-management.md +34 -34
- package/skills/workflows/explore.md +146 -146
- package/skills/workflows/generate_command.md +106 -106
- package/skills/workflows/heal-skill.md +97 -97
- package/skills/workflows/housekeeping.md +229 -229
- package/skills/workflows/kit-setup.md +102 -102
- package/skills/workflows/map-codebase.md +78 -78
- package/skills/workflows/orchestration-protocol.md +43 -43
- package/skills/workflows/plan-compound.md +439 -439
- package/skills/workflows/plan_review.md +269 -269
- package/skills/workflows/primary-workflow.md +37 -37
- package/skills/workflows/promote_pattern.md +86 -86
- package/skills/workflows/release-docs.md +82 -82
- package/skills/workflows/report-bug.md +135 -135
- package/skills/workflows/reproduce-bug.md +118 -118
- package/skills/workflows/resolve_pr.md +133 -133
- package/skills/workflows/resolve_todo.md +128 -128
- package/skills/workflows/review-compound.md +376 -376
- package/skills/workflows/skill-review.md +127 -127
- package/skills/workflows/specs.md +257 -257
- package/skills/workflows/triage-sprint.md +102 -102
- package/skills/workflows/triage.md +152 -152
- package/skills/workflows/work.md +399 -399
- package/skills/workflows/xcode-test.md +93 -93
|
@@ -1,374 +1,374 @@
|
|
|
1
|
-
# Technical Indicators APIs
|
|
2
|
-
|
|
3
|
-
All technical indicators work with equities, forex pairs, and crypto. Calculated from adjusted time series data.
|
|
4
|
-
|
|
5
|
-
## Common Parameters
|
|
6
|
-
|
|
7
|
-
| Parameter | Required | Values |
|
|
8
|
-
|-----------|----------|--------|
|
|
9
|
-
| `symbol` | Yes | Ticker (e.g., `IBM`), forex pair (`USDEUR`), or crypto pair (`BTCUSD`) |
|
|
10
|
-
| `interval` | Yes | `1min`, `5min`, `15min`, `30min`, `60min`, `daily`, `weekly`, `monthly` |
|
|
11
|
-
| `time_period` | Most | Number of periods (e.g., `14`, `20`, `50`, `200`) |
|
|
12
|
-
| `series_type` | Most | `close`, `open`, `high`, `low` |
|
|
13
|
-
| `month` | No | `YYYY-MM` for specific historical month |
|
|
14
|
-
| `datatype` | No | `json` or `csv` |
|
|
15
|
-
|
|
16
|
-
## Response Format
|
|
17
|
-
|
|
18
|
-
All indicators return a metadata object and a time series dictionary:
|
|
19
|
-
|
|
20
|
-
```python
|
|
21
|
-
data = av_get("SMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
22
|
-
ts = data["Technical Analysis: SMA"]
|
|
23
|
-
# Key: "2024-01-15" → {"SMA": "185.4200"}
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Moving Averages
|
|
27
|
-
|
|
28
|
-
### SMA — Simple Moving Average
|
|
29
|
-
|
|
30
|
-
```python
|
|
31
|
-
data = av_get("SMA", symbol="AAPL", interval="daily", time_period=20, series_type="close")
|
|
32
|
-
ts = data["Technical Analysis: SMA"]
|
|
33
|
-
print(sorted(ts.keys())[-1], ts[sorted(ts.keys())[-1]]["SMA"])
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
### EMA — Exponential Moving Average
|
|
37
|
-
|
|
38
|
-
```python
|
|
39
|
-
data = av_get("EMA", symbol="AAPL", interval="daily", time_period=20, series_type="close")
|
|
40
|
-
ts = data["Technical Analysis: EMA"] # → {"EMA": "..."}
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### WMA — Weighted Moving Average
|
|
44
|
-
|
|
45
|
-
```python
|
|
46
|
-
data = av_get("WMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
47
|
-
ts = data["Technical Analysis: WMA"] # → {"WMA": "..."}
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
### DEMA — Double Exponential Moving Average
|
|
51
|
-
|
|
52
|
-
```python
|
|
53
|
-
data = av_get("DEMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
54
|
-
ts = data["Technical Analysis: DEMA"]
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### TEMA — Triple Exponential Moving Average
|
|
58
|
-
|
|
59
|
-
```python
|
|
60
|
-
data = av_get("TEMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
61
|
-
ts = data["Technical Analysis: TEMA"]
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### KAMA — Kaufman Adaptive Moving Average
|
|
65
|
-
|
|
66
|
-
```python
|
|
67
|
-
data = av_get("KAMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
68
|
-
ts = data["Technical Analysis: KAMA"]
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### T3 — Triple Smooth Exponential Moving Average
|
|
72
|
-
|
|
73
|
-
```python
|
|
74
|
-
data = av_get("T3", symbol="IBM", interval="daily", time_period=5, series_type="close")
|
|
75
|
-
ts = data["Technical Analysis: T3"]
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### VWAP — Volume Weighted Average Price (Premium, intraday only)
|
|
79
|
-
|
|
80
|
-
**Required:** `symbol`, `interval` (intraday only: `1min`–`60min`)
|
|
81
|
-
|
|
82
|
-
```python
|
|
83
|
-
data = av_get("VWAP", symbol="AAPL", interval="5min")
|
|
84
|
-
ts = data["Technical Analysis: VWAP"] # → {"VWAP": "..."}
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
---
|
|
88
|
-
|
|
89
|
-
## Momentum Indicators
|
|
90
|
-
|
|
91
|
-
### MACD — Moving Average Convergence/Divergence (Premium)
|
|
92
|
-
|
|
93
|
-
**Optional:** `fastperiod` (default 12), `slowperiod` (default 26), `signalperiod` (default 9), `series_type`
|
|
94
|
-
|
|
95
|
-
```python
|
|
96
|
-
data = av_get("MACD", symbol="AAPL", interval="daily", series_type="close",
|
|
97
|
-
fastperiod=12, slowperiod=26, signalperiod=9)
|
|
98
|
-
ts = data["Technical Analysis: MACD"]
|
|
99
|
-
latest_date = sorted(ts.keys())[-1]
|
|
100
|
-
print(ts[latest_date]) # {"MACD": "...", "MACD_Signal": "...", "MACD_Hist": "..."}
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
### RSI — Relative Strength Index
|
|
104
|
-
|
|
105
|
-
```python
|
|
106
|
-
data = av_get("RSI", symbol="AAPL", interval="daily", time_period=14, series_type="close")
|
|
107
|
-
ts = data["Technical Analysis: RSI"] # → {"RSI": "..."}
|
|
108
|
-
# Overbought >70, Oversold <30
|
|
109
|
-
latest_date = sorted(ts.keys())[-1]
|
|
110
|
-
print(f"RSI: {ts[latest_date]['RSI']}")
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
### STOCH — Stochastic Oscillator
|
|
114
|
-
|
|
115
|
-
**Optional:** `fastkperiod` (default 5), `slowkperiod` (default 3), `slowdperiod` (default 3), `slowkmatype`, `slowdmatype`
|
|
116
|
-
|
|
117
|
-
```python
|
|
118
|
-
data = av_get("STOCH", symbol="IBM", interval="daily")
|
|
119
|
-
ts = data["Technical Analysis: STOCH"] # → {"SlowK": "...", "SlowD": "..."}
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### STOCHF — Stochastic Fast
|
|
123
|
-
|
|
124
|
-
```python
|
|
125
|
-
data = av_get("STOCHF", symbol="IBM", interval="daily")
|
|
126
|
-
ts = data["Technical Analysis: STOCHF"] # → {"FastK": "...", "FastD": "..."}
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
### STOCHRSI — Stochastic Relative Strength Index
|
|
130
|
-
|
|
131
|
-
```python
|
|
132
|
-
data = av_get("STOCHRSI", symbol="IBM", interval="daily", time_period=14, series_type="close")
|
|
133
|
-
ts = data["Technical Analysis: STOCHRSI"] # → {"FastK": "...", "FastD": "..."}
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### WILLR — Williams %R
|
|
137
|
-
|
|
138
|
-
```python
|
|
139
|
-
data = av_get("WILLR", symbol="IBM", interval="daily", time_period=14)
|
|
140
|
-
ts = data["Technical Analysis: WILLR"] # → {"WILLR": "..."}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
### MOM — Momentum
|
|
144
|
-
|
|
145
|
-
```python
|
|
146
|
-
data = av_get("MOM", symbol="IBM", interval="daily", time_period=10, series_type="close")
|
|
147
|
-
ts = data["Technical Analysis: MOM"]
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
### ROC — Rate of Change
|
|
151
|
-
|
|
152
|
-
```python
|
|
153
|
-
data = av_get("ROC", symbol="IBM", interval="daily", time_period=10, series_type="close")
|
|
154
|
-
ts = data["Technical Analysis: ROC"]
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
### CCI — Commodity Channel Index
|
|
158
|
-
|
|
159
|
-
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
160
|
-
|
|
161
|
-
```python
|
|
162
|
-
data = av_get("CCI", symbol="IBM", interval="daily", time_period=20)
|
|
163
|
-
ts = data["Technical Analysis: CCI"]
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
### CMO — Chande Momentum Oscillator
|
|
167
|
-
|
|
168
|
-
```python
|
|
169
|
-
data = av_get("CMO", symbol="IBM", interval="daily", time_period=14, series_type="close")
|
|
170
|
-
ts = data["Technical Analysis: CMO"]
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
### PPO — Percentage Price Oscillator
|
|
174
|
-
|
|
175
|
-
**Optional:** `fastperiod`, `slowperiod`, `matype`
|
|
176
|
-
|
|
177
|
-
```python
|
|
178
|
-
data = av_get("PPO", symbol="IBM", interval="daily", series_type="close")
|
|
179
|
-
ts = data["Technical Analysis: PPO"]
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
### BOP — Balance of Power
|
|
183
|
-
|
|
184
|
-
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
185
|
-
|
|
186
|
-
```python
|
|
187
|
-
data = av_get("BOP", symbol="IBM", interval="daily")
|
|
188
|
-
ts = data["Technical Analysis: BOP"]
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## Trend Indicators
|
|
194
|
-
|
|
195
|
-
### ADX — Average Directional Movement Index
|
|
196
|
-
|
|
197
|
-
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
198
|
-
|
|
199
|
-
```python
|
|
200
|
-
data = av_get("ADX", symbol="IBM", interval="daily", time_period=14)
|
|
201
|
-
ts = data["Technical Analysis: ADX"] # → {"ADX": "..."}
|
|
202
|
-
# ADX > 25 = strong trend
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
### AROON — Aroon
|
|
206
|
-
|
|
207
|
-
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
208
|
-
|
|
209
|
-
```python
|
|
210
|
-
data = av_get("AROON", symbol="IBM", interval="daily", time_period=25)
|
|
211
|
-
ts = data["Technical Analysis: AROON"] # → {"Aroon Down": "...", "Aroon Up": "..."}
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
### BBANDS — Bollinger Bands
|
|
215
|
-
|
|
216
|
-
**Optional:** `nbdevup` (default 2), `nbdevdn` (default 2), `matype` (default 0=SMA)
|
|
217
|
-
|
|
218
|
-
```python
|
|
219
|
-
data = av_get("BBANDS", symbol="AAPL", interval="daily", time_period=20,
|
|
220
|
-
series_type="close", nbdevup=2, nbdevdn=2)
|
|
221
|
-
ts = data["Technical Analysis: BBANDS"]
|
|
222
|
-
latest = ts[sorted(ts.keys())[-1]]
|
|
223
|
-
print(latest["Real Upper Band"], latest["Real Middle Band"], latest["Real Lower Band"])
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
### SAR — Parabolic SAR
|
|
227
|
-
|
|
228
|
-
**Optional:** `acceleration` (default 0.01), `maximum` (default 0.20)
|
|
229
|
-
|
|
230
|
-
```python
|
|
231
|
-
data = av_get("SAR", symbol="IBM", interval="daily")
|
|
232
|
-
ts = data["Technical Analysis: SAR"]
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
---
|
|
236
|
-
|
|
237
|
-
## Volume Indicators
|
|
238
|
-
|
|
239
|
-
### OBV — On Balance Volume
|
|
240
|
-
|
|
241
|
-
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
242
|
-
|
|
243
|
-
```python
|
|
244
|
-
data = av_get("OBV", symbol="IBM", interval="daily")
|
|
245
|
-
ts = data["Technical Analysis: OBV"]
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
### VWAP — See Moving Averages section above
|
|
249
|
-
|
|
250
|
-
### MFI — Money Flow Index
|
|
251
|
-
|
|
252
|
-
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
253
|
-
|
|
254
|
-
```python
|
|
255
|
-
data = av_get("MFI", symbol="IBM", interval="daily", time_period=14)
|
|
256
|
-
ts = data["Technical Analysis: MFI"]
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
---
|
|
260
|
-
|
|
261
|
-
## Volatility Indicators
|
|
262
|
-
|
|
263
|
-
### ATR — Average True Range
|
|
264
|
-
|
|
265
|
-
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
266
|
-
|
|
267
|
-
```python
|
|
268
|
-
data = av_get("ATR", symbol="IBM", interval="daily", time_period=14)
|
|
269
|
-
ts = data["Technical Analysis: ATR"]
|
|
270
|
-
```
|
|
271
|
-
|
|
272
|
-
### NATR — Normalized Average True Range
|
|
273
|
-
|
|
274
|
-
```python
|
|
275
|
-
data = av_get("NATR", symbol="IBM", interval="daily", time_period=14)
|
|
276
|
-
ts = data["Technical Analysis: NATR"]
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
### TRANGE — True Range
|
|
280
|
-
|
|
281
|
-
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
282
|
-
|
|
283
|
-
```python
|
|
284
|
-
data = av_get("TRANGE", symbol="IBM", interval="daily")
|
|
285
|
-
ts = data["Technical Analysis: TRANGE"]
|
|
286
|
-
```
|
|
287
|
-
|
|
288
|
-
---
|
|
289
|
-
|
|
290
|
-
## Full Indicator Reference
|
|
291
|
-
|
|
292
|
-
| Function | Description | Required Params |
|
|
293
|
-
|----------|-------------|-----------------|
|
|
294
|
-
| SMA | Simple Moving Average | symbol, interval, time_period, series_type |
|
|
295
|
-
| EMA | Exponential Moving Average | symbol, interval, time_period, series_type |
|
|
296
|
-
| WMA | Weighted Moving Average | symbol, interval, time_period, series_type |
|
|
297
|
-
| DEMA | Double EMA | symbol, interval, time_period, series_type |
|
|
298
|
-
| TEMA | Triple EMA | symbol, interval, time_period, series_type |
|
|
299
|
-
| TRIMA | Triangular MA | symbol, interval, time_period, series_type |
|
|
300
|
-
| KAMA | Kaufman Adaptive MA | symbol, interval, time_period, series_type |
|
|
301
|
-
| MAMA | MESA Adaptive MA | symbol, interval, series_type |
|
|
302
|
-
| VWAP | Vol Weighted Avg Price | symbol, interval (intraday only) |
|
|
303
|
-
| T3 | Triple Smooth EMA | symbol, interval, time_period, series_type |
|
|
304
|
-
| MACD | MACD | symbol, interval, series_type |
|
|
305
|
-
| MACDEXT | MACD with Controllable MA | symbol, interval, series_type |
|
|
306
|
-
| STOCH | Stochastic | symbol, interval |
|
|
307
|
-
| STOCHF | Stochastic Fast | symbol, interval |
|
|
308
|
-
| RSI | Relative Strength Index | symbol, interval, time_period, series_type |
|
|
309
|
-
| STOCHRSI | Stochastic RSI | symbol, interval, time_period, series_type |
|
|
310
|
-
| WILLR | Williams %R | symbol, interval, time_period |
|
|
311
|
-
| ADX | Avg Directional Index | symbol, interval, time_period |
|
|
312
|
-
| ADXR | ADX Rating | symbol, interval, time_period |
|
|
313
|
-
| APO | Absolute Price Oscillator | symbol, interval, series_type |
|
|
314
|
-
| PPO | Percentage Price Oscillator | symbol, interval, series_type |
|
|
315
|
-
| MOM | Momentum | symbol, interval, time_period, series_type |
|
|
316
|
-
| BOP | Balance of Power | symbol, interval |
|
|
317
|
-
| CCI | Commodity Channel Index | symbol, interval, time_period |
|
|
318
|
-
| CMO | Chande Momentum Oscillator | symbol, interval, time_period, series_type |
|
|
319
|
-
| ROC | Rate of Change | symbol, interval, time_period, series_type |
|
|
320
|
-
| ROCR | Rate of Change Ratio | symbol, interval, time_period, series_type |
|
|
321
|
-
| AROON | Aroon | symbol, interval, time_period |
|
|
322
|
-
| AROONOSC | Aroon Oscillator | symbol, interval, time_period |
|
|
323
|
-
| MFI | Money Flow Index | symbol, interval, time_period |
|
|
324
|
-
| TRIX | 1-day Rate of Change of Triple EMA | symbol, interval, time_period, series_type |
|
|
325
|
-
| ULTOSC | Ultimate Oscillator | symbol, interval |
|
|
326
|
-
| DX | Directional Movement Index | symbol, interval, time_period |
|
|
327
|
-
| MINUS_DI | Minus Directional Indicator | symbol, interval, time_period |
|
|
328
|
-
| PLUS_DI | Plus Directional Indicator | symbol, interval, time_period |
|
|
329
|
-
| MINUS_DM | Minus Directional Movement | symbol, interval, time_period |
|
|
330
|
-
| PLUS_DM | Plus Directional Movement | symbol, interval, time_period |
|
|
331
|
-
| BBANDS | Bollinger Bands | symbol, interval, time_period, series_type |
|
|
332
|
-
| MIDPOINT | MidPoint | symbol, interval, time_period, series_type |
|
|
333
|
-
| MIDPRICE | MidPoint Price | symbol, interval, time_period |
|
|
334
|
-
| SAR | Parabolic SAR | symbol, interval |
|
|
335
|
-
| TRANGE | True Range | symbol, interval |
|
|
336
|
-
| ATR | Average True Range | symbol, interval, time_period |
|
|
337
|
-
| NATR | Normalized ATR | symbol, interval, time_period |
|
|
338
|
-
| AD | Chaikin A/D Line | symbol, interval |
|
|
339
|
-
| ADOSC | Chaikin A/D Oscillator | symbol, interval |
|
|
340
|
-
| OBV | On Balance Volume | symbol, interval |
|
|
341
|
-
| HT_TRENDLINE | Hilbert Transform - Trendline | symbol, interval, series_type |
|
|
342
|
-
| HT_SINE | Hilbert Transform - SineWave | symbol, interval, series_type |
|
|
343
|
-
| HT_TRENDMODE | Hilbert Transform - Trend vs Cycle | symbol, interval, series_type |
|
|
344
|
-
| HT_DCPERIOD | Hilbert Transform - DC Period | symbol, interval, series_type |
|
|
345
|
-
| HT_DCPHASE | Hilbert Transform - DC Phase | symbol, interval, series_type |
|
|
346
|
-
| HT_PHASOR | Hilbert Transform - Phasor Components | symbol, interval, series_type |
|
|
347
|
-
|
|
348
|
-
## Multi-Indicator Analysis Example
|
|
349
|
-
|
|
350
|
-
```python
|
|
351
|
-
import pandas as pd
|
|
352
|
-
|
|
353
|
-
def get_indicator_series(function, symbol, interval="daily", **kwargs):
|
|
354
|
-
data = av_get(function, symbol=symbol, interval=interval, **kwargs)
|
|
355
|
-
key = f"Technical Analysis: {function}"
|
|
356
|
-
ts = data[key]
|
|
357
|
-
rows = []
|
|
358
|
-
for date, values in ts.items():
|
|
359
|
-
row = {"date": date}
|
|
360
|
-
row.update(values)
|
|
361
|
-
rows.append(row)
|
|
362
|
-
df = pd.DataFrame(rows)
|
|
363
|
-
df["date"] = pd.to_datetime(df["date"])
|
|
364
|
-
df = df.set_index("date").sort_index()
|
|
365
|
-
return df.astype(float)
|
|
366
|
-
|
|
367
|
-
# Get RSI and BBANDS for signal generation
|
|
368
|
-
rsi = get_indicator_series("RSI", "AAPL", time_period=14, series_type="close")
|
|
369
|
-
bbands = get_indicator_series("BBANDS", "AAPL", time_period=20, series_type="close")
|
|
370
|
-
|
|
371
|
-
# Oversold condition: RSI < 30 AND price near lower band
|
|
372
|
-
print("Recent RSI values:")
|
|
373
|
-
print(rsi["RSI"].tail(5))
|
|
374
|
-
```
|
|
1
|
+
# Technical Indicators APIs
|
|
2
|
+
|
|
3
|
+
All technical indicators work with equities, forex pairs, and crypto. Calculated from adjusted time series data.
|
|
4
|
+
|
|
5
|
+
## Common Parameters
|
|
6
|
+
|
|
7
|
+
| Parameter | Required | Values |
|
|
8
|
+
|-----------|----------|--------|
|
|
9
|
+
| `symbol` | Yes | Ticker (e.g., `IBM`), forex pair (`USDEUR`), or crypto pair (`BTCUSD`) |
|
|
10
|
+
| `interval` | Yes | `1min`, `5min`, `15min`, `30min`, `60min`, `daily`, `weekly`, `monthly` |
|
|
11
|
+
| `time_period` | Most | Number of periods (e.g., `14`, `20`, `50`, `200`) |
|
|
12
|
+
| `series_type` | Most | `close`, `open`, `high`, `low` |
|
|
13
|
+
| `month` | No | `YYYY-MM` for specific historical month |
|
|
14
|
+
| `datatype` | No | `json` or `csv` |
|
|
15
|
+
|
|
16
|
+
## Response Format
|
|
17
|
+
|
|
18
|
+
All indicators return a metadata object and a time series dictionary:
|
|
19
|
+
|
|
20
|
+
```python
|
|
21
|
+
data = av_get("SMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
22
|
+
ts = data["Technical Analysis: SMA"]
|
|
23
|
+
# Key: "2024-01-15" → {"SMA": "185.4200"}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Moving Averages
|
|
27
|
+
|
|
28
|
+
### SMA — Simple Moving Average
|
|
29
|
+
|
|
30
|
+
```python
|
|
31
|
+
data = av_get("SMA", symbol="AAPL", interval="daily", time_period=20, series_type="close")
|
|
32
|
+
ts = data["Technical Analysis: SMA"]
|
|
33
|
+
print(sorted(ts.keys())[-1], ts[sorted(ts.keys())[-1]]["SMA"])
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### EMA — Exponential Moving Average
|
|
37
|
+
|
|
38
|
+
```python
|
|
39
|
+
data = av_get("EMA", symbol="AAPL", interval="daily", time_period=20, series_type="close")
|
|
40
|
+
ts = data["Technical Analysis: EMA"] # → {"EMA": "..."}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### WMA — Weighted Moving Average
|
|
44
|
+
|
|
45
|
+
```python
|
|
46
|
+
data = av_get("WMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
47
|
+
ts = data["Technical Analysis: WMA"] # → {"WMA": "..."}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### DEMA — Double Exponential Moving Average
|
|
51
|
+
|
|
52
|
+
```python
|
|
53
|
+
data = av_get("DEMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
54
|
+
ts = data["Technical Analysis: DEMA"]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### TEMA — Triple Exponential Moving Average
|
|
58
|
+
|
|
59
|
+
```python
|
|
60
|
+
data = av_get("TEMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
61
|
+
ts = data["Technical Analysis: TEMA"]
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### KAMA — Kaufman Adaptive Moving Average
|
|
65
|
+
|
|
66
|
+
```python
|
|
67
|
+
data = av_get("KAMA", symbol="IBM", interval="daily", time_period=20, series_type="close")
|
|
68
|
+
ts = data["Technical Analysis: KAMA"]
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### T3 — Triple Smooth Exponential Moving Average
|
|
72
|
+
|
|
73
|
+
```python
|
|
74
|
+
data = av_get("T3", symbol="IBM", interval="daily", time_period=5, series_type="close")
|
|
75
|
+
ts = data["Technical Analysis: T3"]
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### VWAP — Volume Weighted Average Price (Premium, intraday only)
|
|
79
|
+
|
|
80
|
+
**Required:** `symbol`, `interval` (intraday only: `1min`–`60min`)
|
|
81
|
+
|
|
82
|
+
```python
|
|
83
|
+
data = av_get("VWAP", symbol="AAPL", interval="5min")
|
|
84
|
+
ts = data["Technical Analysis: VWAP"] # → {"VWAP": "..."}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Momentum Indicators
|
|
90
|
+
|
|
91
|
+
### MACD — Moving Average Convergence/Divergence (Premium)
|
|
92
|
+
|
|
93
|
+
**Optional:** `fastperiod` (default 12), `slowperiod` (default 26), `signalperiod` (default 9), `series_type`
|
|
94
|
+
|
|
95
|
+
```python
|
|
96
|
+
data = av_get("MACD", symbol="AAPL", interval="daily", series_type="close",
|
|
97
|
+
fastperiod=12, slowperiod=26, signalperiod=9)
|
|
98
|
+
ts = data["Technical Analysis: MACD"]
|
|
99
|
+
latest_date = sorted(ts.keys())[-1]
|
|
100
|
+
print(ts[latest_date]) # {"MACD": "...", "MACD_Signal": "...", "MACD_Hist": "..."}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### RSI — Relative Strength Index
|
|
104
|
+
|
|
105
|
+
```python
|
|
106
|
+
data = av_get("RSI", symbol="AAPL", interval="daily", time_period=14, series_type="close")
|
|
107
|
+
ts = data["Technical Analysis: RSI"] # → {"RSI": "..."}
|
|
108
|
+
# Overbought >70, Oversold <30
|
|
109
|
+
latest_date = sorted(ts.keys())[-1]
|
|
110
|
+
print(f"RSI: {ts[latest_date]['RSI']}")
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### STOCH — Stochastic Oscillator
|
|
114
|
+
|
|
115
|
+
**Optional:** `fastkperiod` (default 5), `slowkperiod` (default 3), `slowdperiod` (default 3), `slowkmatype`, `slowdmatype`
|
|
116
|
+
|
|
117
|
+
```python
|
|
118
|
+
data = av_get("STOCH", symbol="IBM", interval="daily")
|
|
119
|
+
ts = data["Technical Analysis: STOCH"] # → {"SlowK": "...", "SlowD": "..."}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### STOCHF — Stochastic Fast
|
|
123
|
+
|
|
124
|
+
```python
|
|
125
|
+
data = av_get("STOCHF", symbol="IBM", interval="daily")
|
|
126
|
+
ts = data["Technical Analysis: STOCHF"] # → {"FastK": "...", "FastD": "..."}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### STOCHRSI — Stochastic Relative Strength Index
|
|
130
|
+
|
|
131
|
+
```python
|
|
132
|
+
data = av_get("STOCHRSI", symbol="IBM", interval="daily", time_period=14, series_type="close")
|
|
133
|
+
ts = data["Technical Analysis: STOCHRSI"] # → {"FastK": "...", "FastD": "..."}
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### WILLR — Williams %R
|
|
137
|
+
|
|
138
|
+
```python
|
|
139
|
+
data = av_get("WILLR", symbol="IBM", interval="daily", time_period=14)
|
|
140
|
+
ts = data["Technical Analysis: WILLR"] # → {"WILLR": "..."}
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### MOM — Momentum
|
|
144
|
+
|
|
145
|
+
```python
|
|
146
|
+
data = av_get("MOM", symbol="IBM", interval="daily", time_period=10, series_type="close")
|
|
147
|
+
ts = data["Technical Analysis: MOM"]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### ROC — Rate of Change
|
|
151
|
+
|
|
152
|
+
```python
|
|
153
|
+
data = av_get("ROC", symbol="IBM", interval="daily", time_period=10, series_type="close")
|
|
154
|
+
ts = data["Technical Analysis: ROC"]
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### CCI — Commodity Channel Index
|
|
158
|
+
|
|
159
|
+
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
160
|
+
|
|
161
|
+
```python
|
|
162
|
+
data = av_get("CCI", symbol="IBM", interval="daily", time_period=20)
|
|
163
|
+
ts = data["Technical Analysis: CCI"]
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### CMO — Chande Momentum Oscillator
|
|
167
|
+
|
|
168
|
+
```python
|
|
169
|
+
data = av_get("CMO", symbol="IBM", interval="daily", time_period=14, series_type="close")
|
|
170
|
+
ts = data["Technical Analysis: CMO"]
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### PPO — Percentage Price Oscillator
|
|
174
|
+
|
|
175
|
+
**Optional:** `fastperiod`, `slowperiod`, `matype`
|
|
176
|
+
|
|
177
|
+
```python
|
|
178
|
+
data = av_get("PPO", symbol="IBM", interval="daily", series_type="close")
|
|
179
|
+
ts = data["Technical Analysis: PPO"]
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### BOP — Balance of Power
|
|
183
|
+
|
|
184
|
+
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
185
|
+
|
|
186
|
+
```python
|
|
187
|
+
data = av_get("BOP", symbol="IBM", interval="daily")
|
|
188
|
+
ts = data["Technical Analysis: BOP"]
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Trend Indicators
|
|
194
|
+
|
|
195
|
+
### ADX — Average Directional Movement Index
|
|
196
|
+
|
|
197
|
+
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
198
|
+
|
|
199
|
+
```python
|
|
200
|
+
data = av_get("ADX", symbol="IBM", interval="daily", time_period=14)
|
|
201
|
+
ts = data["Technical Analysis: ADX"] # → {"ADX": "..."}
|
|
202
|
+
# ADX > 25 = strong trend
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### AROON — Aroon
|
|
206
|
+
|
|
207
|
+
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
208
|
+
|
|
209
|
+
```python
|
|
210
|
+
data = av_get("AROON", symbol="IBM", interval="daily", time_period=25)
|
|
211
|
+
ts = data["Technical Analysis: AROON"] # → {"Aroon Down": "...", "Aroon Up": "..."}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### BBANDS — Bollinger Bands
|
|
215
|
+
|
|
216
|
+
**Optional:** `nbdevup` (default 2), `nbdevdn` (default 2), `matype` (default 0=SMA)
|
|
217
|
+
|
|
218
|
+
```python
|
|
219
|
+
data = av_get("BBANDS", symbol="AAPL", interval="daily", time_period=20,
|
|
220
|
+
series_type="close", nbdevup=2, nbdevdn=2)
|
|
221
|
+
ts = data["Technical Analysis: BBANDS"]
|
|
222
|
+
latest = ts[sorted(ts.keys())[-1]]
|
|
223
|
+
print(latest["Real Upper Band"], latest["Real Middle Band"], latest["Real Lower Band"])
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### SAR — Parabolic SAR
|
|
227
|
+
|
|
228
|
+
**Optional:** `acceleration` (default 0.01), `maximum` (default 0.20)
|
|
229
|
+
|
|
230
|
+
```python
|
|
231
|
+
data = av_get("SAR", symbol="IBM", interval="daily")
|
|
232
|
+
ts = data["Technical Analysis: SAR"]
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Volume Indicators
|
|
238
|
+
|
|
239
|
+
### OBV — On Balance Volume
|
|
240
|
+
|
|
241
|
+
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
242
|
+
|
|
243
|
+
```python
|
|
244
|
+
data = av_get("OBV", symbol="IBM", interval="daily")
|
|
245
|
+
ts = data["Technical Analysis: OBV"]
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
### VWAP — See Moving Averages section above
|
|
249
|
+
|
|
250
|
+
### MFI — Money Flow Index
|
|
251
|
+
|
|
252
|
+
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
253
|
+
|
|
254
|
+
```python
|
|
255
|
+
data = av_get("MFI", symbol="IBM", interval="daily", time_period=14)
|
|
256
|
+
ts = data["Technical Analysis: MFI"]
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Volatility Indicators
|
|
262
|
+
|
|
263
|
+
### ATR — Average True Range
|
|
264
|
+
|
|
265
|
+
**Required:** `symbol`, `interval`, `time_period` (no `series_type`)
|
|
266
|
+
|
|
267
|
+
```python
|
|
268
|
+
data = av_get("ATR", symbol="IBM", interval="daily", time_period=14)
|
|
269
|
+
ts = data["Technical Analysis: ATR"]
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
### NATR — Normalized Average True Range
|
|
273
|
+
|
|
274
|
+
```python
|
|
275
|
+
data = av_get("NATR", symbol="IBM", interval="daily", time_period=14)
|
|
276
|
+
ts = data["Technical Analysis: NATR"]
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
### TRANGE — True Range
|
|
280
|
+
|
|
281
|
+
**Required:** `symbol`, `interval` (no `time_period` or `series_type`)
|
|
282
|
+
|
|
283
|
+
```python
|
|
284
|
+
data = av_get("TRANGE", symbol="IBM", interval="daily")
|
|
285
|
+
ts = data["Technical Analysis: TRANGE"]
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## Full Indicator Reference
|
|
291
|
+
|
|
292
|
+
| Function | Description | Required Params |
|
|
293
|
+
|----------|-------------|-----------------|
|
|
294
|
+
| SMA | Simple Moving Average | symbol, interval, time_period, series_type |
|
|
295
|
+
| EMA | Exponential Moving Average | symbol, interval, time_period, series_type |
|
|
296
|
+
| WMA | Weighted Moving Average | symbol, interval, time_period, series_type |
|
|
297
|
+
| DEMA | Double EMA | symbol, interval, time_period, series_type |
|
|
298
|
+
| TEMA | Triple EMA | symbol, interval, time_period, series_type |
|
|
299
|
+
| TRIMA | Triangular MA | symbol, interval, time_period, series_type |
|
|
300
|
+
| KAMA | Kaufman Adaptive MA | symbol, interval, time_period, series_type |
|
|
301
|
+
| MAMA | MESA Adaptive MA | symbol, interval, series_type |
|
|
302
|
+
| VWAP | Vol Weighted Avg Price | symbol, interval (intraday only) |
|
|
303
|
+
| T3 | Triple Smooth EMA | symbol, interval, time_period, series_type |
|
|
304
|
+
| MACD | MACD | symbol, interval, series_type |
|
|
305
|
+
| MACDEXT | MACD with Controllable MA | symbol, interval, series_type |
|
|
306
|
+
| STOCH | Stochastic | symbol, interval |
|
|
307
|
+
| STOCHF | Stochastic Fast | symbol, interval |
|
|
308
|
+
| RSI | Relative Strength Index | symbol, interval, time_period, series_type |
|
|
309
|
+
| STOCHRSI | Stochastic RSI | symbol, interval, time_period, series_type |
|
|
310
|
+
| WILLR | Williams %R | symbol, interval, time_period |
|
|
311
|
+
| ADX | Avg Directional Index | symbol, interval, time_period |
|
|
312
|
+
| ADXR | ADX Rating | symbol, interval, time_period |
|
|
313
|
+
| APO | Absolute Price Oscillator | symbol, interval, series_type |
|
|
314
|
+
| PPO | Percentage Price Oscillator | symbol, interval, series_type |
|
|
315
|
+
| MOM | Momentum | symbol, interval, time_period, series_type |
|
|
316
|
+
| BOP | Balance of Power | symbol, interval |
|
|
317
|
+
| CCI | Commodity Channel Index | symbol, interval, time_period |
|
|
318
|
+
| CMO | Chande Momentum Oscillator | symbol, interval, time_period, series_type |
|
|
319
|
+
| ROC | Rate of Change | symbol, interval, time_period, series_type |
|
|
320
|
+
| ROCR | Rate of Change Ratio | symbol, interval, time_period, series_type |
|
|
321
|
+
| AROON | Aroon | symbol, interval, time_period |
|
|
322
|
+
| AROONOSC | Aroon Oscillator | symbol, interval, time_period |
|
|
323
|
+
| MFI | Money Flow Index | symbol, interval, time_period |
|
|
324
|
+
| TRIX | 1-day Rate of Change of Triple EMA | symbol, interval, time_period, series_type |
|
|
325
|
+
| ULTOSC | Ultimate Oscillator | symbol, interval |
|
|
326
|
+
| DX | Directional Movement Index | symbol, interval, time_period |
|
|
327
|
+
| MINUS_DI | Minus Directional Indicator | symbol, interval, time_period |
|
|
328
|
+
| PLUS_DI | Plus Directional Indicator | symbol, interval, time_period |
|
|
329
|
+
| MINUS_DM | Minus Directional Movement | symbol, interval, time_period |
|
|
330
|
+
| PLUS_DM | Plus Directional Movement | symbol, interval, time_period |
|
|
331
|
+
| BBANDS | Bollinger Bands | symbol, interval, time_period, series_type |
|
|
332
|
+
| MIDPOINT | MidPoint | symbol, interval, time_period, series_type |
|
|
333
|
+
| MIDPRICE | MidPoint Price | symbol, interval, time_period |
|
|
334
|
+
| SAR | Parabolic SAR | symbol, interval |
|
|
335
|
+
| TRANGE | True Range | symbol, interval |
|
|
336
|
+
| ATR | Average True Range | symbol, interval, time_period |
|
|
337
|
+
| NATR | Normalized ATR | symbol, interval, time_period |
|
|
338
|
+
| AD | Chaikin A/D Line | symbol, interval |
|
|
339
|
+
| ADOSC | Chaikin A/D Oscillator | symbol, interval |
|
|
340
|
+
| OBV | On Balance Volume | symbol, interval |
|
|
341
|
+
| HT_TRENDLINE | Hilbert Transform - Trendline | symbol, interval, series_type |
|
|
342
|
+
| HT_SINE | Hilbert Transform - SineWave | symbol, interval, series_type |
|
|
343
|
+
| HT_TRENDMODE | Hilbert Transform - Trend vs Cycle | symbol, interval, series_type |
|
|
344
|
+
| HT_DCPERIOD | Hilbert Transform - DC Period | symbol, interval, series_type |
|
|
345
|
+
| HT_DCPHASE | Hilbert Transform - DC Phase | symbol, interval, series_type |
|
|
346
|
+
| HT_PHASOR | Hilbert Transform - Phasor Components | symbol, interval, series_type |
|
|
347
|
+
|
|
348
|
+
## Multi-Indicator Analysis Example
|
|
349
|
+
|
|
350
|
+
```python
|
|
351
|
+
import pandas as pd
|
|
352
|
+
|
|
353
|
+
def get_indicator_series(function, symbol, interval="daily", **kwargs):
|
|
354
|
+
data = av_get(function, symbol=symbol, interval=interval, **kwargs)
|
|
355
|
+
key = f"Technical Analysis: {function}"
|
|
356
|
+
ts = data[key]
|
|
357
|
+
rows = []
|
|
358
|
+
for date, values in ts.items():
|
|
359
|
+
row = {"date": date}
|
|
360
|
+
row.update(values)
|
|
361
|
+
rows.append(row)
|
|
362
|
+
df = pd.DataFrame(rows)
|
|
363
|
+
df["date"] = pd.to_datetime(df["date"])
|
|
364
|
+
df = df.set_index("date").sort_index()
|
|
365
|
+
return df.astype(float)
|
|
366
|
+
|
|
367
|
+
# Get RSI and BBANDS for signal generation
|
|
368
|
+
rsi = get_indicator_series("RSI", "AAPL", time_period=14, series_type="close")
|
|
369
|
+
bbands = get_indicator_series("BBANDS", "AAPL", time_period=20, series_type="close")
|
|
370
|
+
|
|
371
|
+
# Oversold condition: RSI < 30 AND price near lower band
|
|
372
|
+
print("Recent RSI values:")
|
|
373
|
+
print(rsi["RSI"].tail(5))
|
|
374
|
+
```
|