q.indicator.pandas_ta wraps every pandas-ta-classic indicator. The provider path preserves pandas-ta’s formulas, parameters, and output names explicitly.
Sample data
We use qrt’s bundled AAPL sample dataset — loaded offline via q.data.datasets.load, no network dependency (see the Data tutorial for more on q.data):
import pandas as pd
import qrt as q
aapl = q.data.datasets.load("aapl")
aapl.tail()
| datetime |
|
|
|
|
|
| 2026-07-20 |
333.510010 |
333.709991 |
323.679993 |
326.589996 |
53468000 |
| 2026-07-21 |
323.130005 |
329.600006 |
322.220001 |
327.739990 |
41338900 |
| 2026-07-22 |
327.869995 |
329.000000 |
323.339996 |
325.890015 |
38755900 |
| 2026-07-23 |
321.730011 |
323.299988 |
319.350006 |
321.660004 |
40840800 |
| 2026-07-24 |
NaN |
NaN |
NaN |
NaN |
47460975 |
Outputs keep pandas-ta’s parameterised names (e.g. BBL_20_2.0, RSI_14):
bbands = q.indicator.pandas_ta.bbands(aapl, length=20)
bbands.tail()
| datetime |
|
|
|
|
|
| 2026-07-20 |
273.074430 |
306.946999 |
340.819567 |
22.070630 |
0.789954 |
| 2026-07-21 |
273.775738 |
308.483498 |
343.191257 |
22.502182 |
0.777409 |
| 2026-07-22 |
275.205973 |
310.062999 |
344.920025 |
22.483834 |
0.727028 |
| 2026-07-23 |
277.198303 |
311.492000 |
345.785696 |
22.018990 |
0.648249 |
| 2026-07-24 |
NaN |
NaN |
NaN |
NaN |
NaN |
Back to top