请问SwingHigh 这个函数怎么用? 为什么有时候会得出-1的结果,很奇怪

SwingHigh(1,Close,6,20); 我在程序中用了这个函数, 发现有时候计算出的结果是-1, 这是怎么回事?

Vars

Series<Numeric> BF;     //波峰

Events
 OnBar(ArrayRef<Integer> indexs)
 {

BF=SwingHigh(1,Close,6,20); 

Commentary("波峰BF="+Text(BF));

}

如图:

 

 

请问TRADE_REF()这个函数具体怎么用?
为什么TICK周期下委托价格会变成奇怪的价格?
swinghigh求高点
关于SwingHigh的问题
请问这个函数{DRAWCOLORKLINE}TB用什么替代
又发现新问题. SwingHigh(1,Close,ZB,ZQ); 用参数代入后,计算结果全部为0.昨天程序还正常,今天就不行了.
TBQ在1分钟周期有时候能自动交易,有时候不能自动交易,为什么?
请问用什么命令或函数怎么写?
为什么开盘时会闪烁的呢,我用的是A函数
OnPosition这个功能怎么用?

这是在帮助里查到的函数使用说明:

SwingHigh

说明求波峰点
语法Numeric SwingHigh(Numeric Instance,Series<Numeric> Price,Numeric Strength,Numeric Length)
参数Instance 设置返回哪一个波峰点,1 - 最近的波峰点,2 - 倒数第二个,以此类推。
Price 用于求波峰点的值,必须是数值型序列值;
Strength 设置转折点两边的需要的周期数,必须小于Length;
Length 是需要计算的周期数,为整型。
备注该函数计算指定周期内的数值型序列值的波峰点,返回值为浮点数;
当序列值的CurrentBar小于Length时,该函数的引用参数返回无效值。
示例

SwingHigh(1,Close,2,10);计算Close在最近10个周期的波峰点的值,最高点两侧每侧至少需要2个Bar。