MFI(资金流量指标)

资金流量指标(MFI,英文全名 Money Flow Index)是相对强弱指标(RSI)和人气指标(OBV)两者的结合。MFI 指标可以用于测度交易量的动量和投资兴趣,而交易量的变化为股价未来的变化提供了线索,所以 MFI 指标可以帮助判断股票价格变化的趋势。

计算方法
1. 先计算 N 日内每天的典型价格(即 TVP),它等于最高价,最低价和收盘价三者的均值。
2. 如果当天的典型价格大于昨天的则定义为流入,反之为流出,流入流出金额为典型价格乘以当天交易量。这样把 N 日内每天结果计算出来,然后再把流出额和流入额分别加总,得到 N 日内的流入总额和流出总额,接着前者除以后者,大于 1 则 N 日内的资金为流入,反之为流出。V 就是代表这个比值。
3.MFI=100-[100/(1+V)]
参数 N 一般设为 14 日。

指标参数:

y

MFI 输出列

n

时间周期,如 14


函数代码:


A

B

1

func MFI(A,$y,n)

=A.derive@o(:mfi_tvp,:mfi_pv,:mfi_nv,:mfi_v)

2


=A.run((最高 + 最低 + 收盘)/3:mfi_tvp, if(mfi_tvp>mfi_tvp[-1],mfi_tvp* 成交量,0):mfi_pv,if(mfi_tvp<mfi_tvp[-1],mfi_tvp* 成交量,0):mfi_nv,sum(mfi_pv[1-n:0])/sum(mfi_nv[1-n:0]):mfi_v)

3


=A.run(100*mfi_v/(1+mfi_v):${y})

4


=A.alter(;mfi_tvp,mfi_pv,mfi_nv,mfi_v)

将函数保存在 indicator.splx 中。

举例:

调用脚本计算浦发银行 2024 年的资金流量指标 MFI,n 取 14。。


A

B


5

=call@f("indicator.splx")

登记脚本中的函数

6

计算出源数据

7

=A6.derive(:MFI)

增加要返回的指标字段

8

=MFI(A7,MFI,14)

调用函数计算指标

运行效果:

..