Money Flow Index
Calculate the Money Flow Index (MFI) for a given price series.
The Money Flow Index is a momentum indicator that measures the strength and direction of money flowing in and out of a security by considering both price and volume.
The formula is as follows:
\[\text{MFI} = 100 - (100 / (1 + (\text{positive\_money\_flow} / \text{negative\_money\_flow})))\]Also known as: MFI, volume-weighted RSI.
Money Flow Index in Python
get_money_flow_index is part of the Technicals module of the open-source Finance Toolkit. Install it with:
pip install financetoolkit -U
Then call get_money_flow_index as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(tickers=["AAPL", "MSFT"])
toolkit.technicals.get_money_flow_index()
Which returns:
| Date | AAPL | MSFT | Benchmark |
|---|---|---|---|
| 2026-06-18 | 34.2012 | 17.0425 | 45.4099 |
| 2026-06-22 | 40.4098 | 6.0393 | 40.4024 |
| 2026-06-23 | 33.9909 | 13.2653 | 35.5328 |
| 2026-06-24 | 34.0195 | 13.2877 | 35.3632 |
| 2026-06-25 | 31.7751 | 12.5721 | 29.9219 |
| 2026-06-26 | 50.9525 | 34.8784 | 30.7073 |
| 2026-06-29 | 58.3251 | 40.8726 | 36.5958 |
| 2026-06-30 | 65.173 | 46.3834 | 44.023 |
| 2026-07-01 | 70.4341 | 51.8574 | 49.9149 |
| 2026-07-02 | 71.4645 | 57.9088 | 41.6417 |
Parameters
get_money_flow_index accepts the following parameters:
- period (str, optional): The time period to consider for historical data. Can be “daily”, “weekly”, “quarterly”, or “yearly”. Defaults to “daily”.
- close_column (str, optional): The name of the column containing the close prices. Defaults to “Adj Close”.
- window (int, optional): The number of periods for calculating the MFI. Defaults to 14.
- rounding (int | None, optional): The number of decimals to round the results to. Defaults to 4.
- growth (bool, optional): Whether to calculate the growth of the indicator values. Defaults to False.
- lag (int | list[int], optional): The lag to use for the growth calculation.
- standardize (bool, optional): Whether to standardize (Z-Score) the result. When combined with growth=True, standardizes the growth values instead of the raw values. Defaults to False. Defaults to 1.