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.
Files changed (162) hide show
  1. package/ARCHITECTURE.md +102 -102
  2. package/README.md +71 -71
  3. package/SUPERKIT.md +168 -168
  4. package/agents/code-archaeologist.md +106 -106
  5. package/agents/coder.md +90 -90
  6. package/agents/data-engineer.md +28 -28
  7. package/agents/devops-engineer.md +242 -242
  8. package/agents/git-manager.md +203 -203
  9. package/agents/orchestrator.md +420 -420
  10. package/agents/penetration-tester.md +188 -188
  11. package/agents/performance-optimizer.md +187 -187
  12. package/agents/planner.md +270 -270
  13. package/agents/qa-automation-engineer.md +103 -103
  14. package/agents/quant-developer.md +32 -32
  15. package/agents/reviewer.md +100 -100
  16. package/agents/scout.md +222 -222
  17. package/agents/tester.md +274 -274
  18. package/agents/ui-designer.md +208 -208
  19. package/build/__tests__/test_apply_prompt_args.js +104 -0
  20. package/build/index.js +106 -45
  21. package/build/tools/todoTools.js +39 -39
  22. package/build/tools/validators/__tests__/apiSchema.test.js +23 -23
  23. package/build/tools/validators/__tests__/convertRules.test.js +5 -5
  24. package/build/tools/validators/__tests__/frontendDesign.test.js +12 -12
  25. package/build/tools/validators/__tests__/geoChecker.test.js +19 -19
  26. package/build/tools/validators/__tests__/mobileAudit.test.js +12 -12
  27. package/build/tools/validators/__tests__/reactPerformanceChecker.test.js +17 -17
  28. package/build/tools/validators/__tests__/securityScan.test.js +6 -6
  29. package/build/tools/validators/__tests__/seoChecker.test.js +16 -16
  30. package/build/tools/validators/__tests__/typeCoverage.test.js +14 -14
  31. package/commands/README.md +122 -122
  32. package/commands/ask.toml +72 -72
  33. package/commands/brainstorm.toml +119 -119
  34. package/commands/chat.toml +77 -77
  35. package/commands/code-preview.toml +37 -37
  36. package/commands/code.toml +28 -28
  37. package/commands/content.toml +200 -200
  38. package/commands/cook.toml +77 -77
  39. package/commands/copywrite.toml +131 -131
  40. package/commands/db.toml +192 -192
  41. package/commands/debug.toml +166 -166
  42. package/commands/design.toml +158 -158
  43. package/commands/dev-rules.toml +14 -14
  44. package/commands/do.toml +117 -117
  45. package/commands/doc-rules.toml +14 -14
  46. package/commands/docs.toml +148 -148
  47. package/commands/fix.toml +440 -440
  48. package/commands/fullstack.toml +175 -175
  49. package/commands/git.toml +235 -235
  50. package/commands/help.toml +84 -84
  51. package/commands/integrate.toml +127 -127
  52. package/commands/journal.toml +136 -136
  53. package/commands/kit-setup.toml +40 -40
  54. package/commands/mcp.toml +183 -183
  55. package/commands/orchestration.toml +15 -15
  56. package/commands/plan.toml +206 -172
  57. package/commands/pm.toml +148 -148
  58. package/commands/pr.toml +50 -50
  59. package/commands/project.toml +32 -32
  60. package/commands/research.toml +117 -117
  61. package/commands/review-pr.toml +63 -63
  62. package/commands/review.toml +190 -190
  63. package/commands/scout-ext.toml +97 -97
  64. package/commands/scout.toml +79 -79
  65. package/commands/screenshot.toml +65 -65
  66. package/commands/session.toml +102 -102
  67. package/commands/skill.toml +384 -384
  68. package/commands/status.toml +22 -22
  69. package/commands/team.toml +56 -56
  70. package/commands/test.toml +164 -164
  71. package/commands/ticket.toml +70 -70
  72. package/commands/use.toml +106 -106
  73. package/commands/video.toml +83 -83
  74. package/commands/watzup.toml +71 -71
  75. package/commands/workflow.toml +14 -14
  76. package/package.json +35 -35
  77. package/skills/meta/README.md +30 -30
  78. package/skills/meta/api-design/SKILL.md +134 -134
  79. package/skills/meta/code-review/SKILL.md +44 -44
  80. package/skills/meta/code-review/checklists/pre-merge.md +25 -25
  81. package/skills/meta/code-review/workflows/architecture-pass.md +26 -26
  82. package/skills/meta/code-review/workflows/performance-pass.md +27 -27
  83. package/skills/meta/code-review/workflows/security-pass.md +29 -29
  84. package/skills/meta/compound-docs/SKILL.md +133 -133
  85. package/skills/meta/debug/SKILL.md +40 -40
  86. package/skills/meta/debug/templates/bug-report.template.md +31 -31
  87. package/skills/meta/debug/workflows/reproduce-issue.md +20 -20
  88. package/skills/meta/docker/SKILL.md +126 -126
  89. package/skills/meta/examples/supabase/SKILL.md +46 -46
  90. package/skills/meta/examples/supabase/references/best-practices.md +319 -319
  91. package/skills/meta/examples/supabase/references/common-patterns.md +373 -373
  92. package/skills/meta/examples/supabase/templates/migration-template.sql +49 -49
  93. package/skills/meta/examples/supabase/templates/rls-policy-template.sql +77 -77
  94. package/skills/meta/examples/supabase/workflows/debugging.md +260 -260
  95. package/skills/meta/examples/supabase/workflows/migration-workflow.md +211 -211
  96. package/skills/meta/examples/supabase/workflows/rls-policies.md +244 -244
  97. package/skills/meta/examples/supabase/workflows/schema-design.md +321 -321
  98. package/skills/meta/file-todos/SKILL.md +88 -88
  99. package/skills/meta/mobile/SKILL.md +140 -140
  100. package/skills/meta/nextjs/SKILL.md +101 -101
  101. package/skills/meta/performance/SKILL.md +130 -130
  102. package/skills/meta/react-patterns/SKILL.md +83 -83
  103. package/skills/meta/security/SKILL.md +114 -114
  104. package/skills/meta/session-resume/SKILL.md +96 -96
  105. package/skills/meta/tailwind/SKILL.md +139 -139
  106. package/skills/meta/testing/SKILL.md +43 -43
  107. package/skills/meta/testing/references/vitest-patterns.md +45 -45
  108. package/skills/meta/testing/templates/component-test.template.tsx +37 -37
  109. package/skills/tech/alpha-vantage/SKILL.md +142 -142
  110. package/skills/tech/alpha-vantage/references/commodities.md +153 -153
  111. package/skills/tech/alpha-vantage/references/economic-indicators.md +158 -158
  112. package/skills/tech/alpha-vantage/references/forex-crypto.md +154 -154
  113. package/skills/tech/alpha-vantage/references/fundamentals.md +223 -223
  114. package/skills/tech/alpha-vantage/references/intelligence.md +138 -138
  115. package/skills/tech/alpha-vantage/references/options.md +93 -93
  116. package/skills/tech/alpha-vantage/references/technical-indicators.md +374 -374
  117. package/skills/tech/alpha-vantage/references/time-series.md +157 -157
  118. package/skills/tech/financial-modeling/SKILL.md +18 -18
  119. package/skills/tech/financial-modeling/skills/3-statements/SKILL.md +368 -368
  120. package/skills/tech/financial-modeling/skills/3-statements/references/formatting.md +118 -118
  121. package/skills/tech/financial-modeling/skills/3-statements/references/formulas.md +292 -292
  122. package/skills/tech/financial-modeling/skills/3-statements/references/sec-filings.md +125 -125
  123. package/skills/tech/financial-modeling/skills/dcf-model/SKILL.md +1210 -1210
  124. package/skills/tech/financial-modeling/skills/dcf-model/TROUBLESHOOTING.md +40 -40
  125. package/skills/tech/financial-modeling/skills/dcf-model/requirements.txt +8 -8
  126. package/skills/tech/financial-modeling/skills/dcf-model/scripts/validate_dcf.py +292 -292
  127. package/skills/tech/financial-modeling/skills/lbo-model/SKILL.md +236 -236
  128. package/skills/tech/financial-modeling/skills/merger-model/SKILL.md +108 -108
  129. package/skills/workflows/README.md +203 -203
  130. package/skills/workflows/adr.md +174 -174
  131. package/skills/workflows/changelog.md +74 -74
  132. package/skills/workflows/compound.md +323 -323
  133. package/skills/workflows/compound_health.md +74 -74
  134. package/skills/workflows/create-agent-skill.md +138 -138
  135. package/skills/workflows/cycle.md +144 -144
  136. package/skills/workflows/deploy-docs.md +84 -84
  137. package/skills/workflows/development-rules.md +42 -42
  138. package/skills/workflows/doc.md +95 -95
  139. package/skills/workflows/documentation-management.md +34 -34
  140. package/skills/workflows/explore.md +146 -146
  141. package/skills/workflows/generate_command.md +106 -106
  142. package/skills/workflows/heal-skill.md +97 -97
  143. package/skills/workflows/housekeeping.md +229 -229
  144. package/skills/workflows/kit-setup.md +102 -102
  145. package/skills/workflows/map-codebase.md +78 -78
  146. package/skills/workflows/orchestration-protocol.md +43 -43
  147. package/skills/workflows/plan-compound.md +439 -439
  148. package/skills/workflows/plan_review.md +269 -269
  149. package/skills/workflows/primary-workflow.md +37 -37
  150. package/skills/workflows/promote_pattern.md +86 -86
  151. package/skills/workflows/release-docs.md +82 -82
  152. package/skills/workflows/report-bug.md +135 -135
  153. package/skills/workflows/reproduce-bug.md +118 -118
  154. package/skills/workflows/resolve_pr.md +133 -133
  155. package/skills/workflows/resolve_todo.md +128 -128
  156. package/skills/workflows/review-compound.md +376 -376
  157. package/skills/workflows/skill-review.md +127 -127
  158. package/skills/workflows/specs.md +257 -257
  159. package/skills/workflows/triage-sprint.md +102 -102
  160. package/skills/workflows/triage.md +152 -152
  161. package/skills/workflows/work.md +399 -399
  162. 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
+ ```