Technical Analysis Indicators
After calling getYFDataWithTA(), the DataFrame includes ~150+ technical analysis indicators.
Indicator Categories
Volume Indicators
volume_adi- Accumulation/Distribution Indexvolume_obv- On-Balance Volumevolume_cmf- Chaikin Money Flowvolume_fi- Force Indexvolume_em- Ease of Movementvolume_vpt- Volume Price Trendvolume_vwap- Volume Weighted Average Pricevolume_mfi- Money Flow Indexvolume_nvi- Negative Volume Index
Volatility Indicators
volatility_bbh- Bollinger Bands Highvolatility_bbl- Bollinger Bands Lowvolatility_bbw- Bollinger Bands Widthvolatility_atr- Average True Rangevolatility_kch- Keltner Channel Highvolatility_kcl- Keltner Channel Lowvolatility_dch- Donchian Channel Highvolatility_dcl- Donchian Channel Low
Trend Indicators
trend_macd- MACDtrend_macd_signal- MACD Signaltrend_sma_fast- Fast Simple Moving Averagetrend_sma_slow- Slow Simple Moving Averagetrend_ema_fast- Fast Exponential Moving Averagetrend_ema_slow- Slow Exponential Moving Averagetrend_adx- Average Directional Indextrend_ichimoku_a- Ichimoku Cloud Atrend_ichimoku_b- Ichimoku Cloud B
Momentum Indicators
momentum_rsi- Relative Strength Indexmomentum_stoch- Stochastic Oscillatormomentum_stoch_signal- Stochastic Signalmomentum_roc- Rate of Changemomentum_wr- Williams %Rmomentum_ao- Awesome Oscillator
Usage
Access indicators in your decisionFunction():
def decisionFunction(self, row):
# RSI
if row["momentum_rsi"] < 30:
return 1 # Oversold, buy
# MACD
if row["trend_macd"] > row["trend_macd_signal"]:
# Bullish crossover
return 1
# Bollinger Bands
if row["close"] < row["volatility_bbl"]:
# Price below lower band, oversold
return 1
return 0
Indicator Naming
All indicators use lowercase with underscores:
- trend_sma_slow
- momentum_rsi
- volatility_bbh
Data Handling
Indicators are automatically:
- Prefilled/backfilled to handle NaN values
- Calculated using the ta library
- Available in every row of the DataFrame
Next Steps
- Bot API Reference - Data fetching methods
- Example Bots - Real implementations