- 精华
- 20
- 在线时间
- 2981 小时
- UID
- 4
- 积分
- 22709
- 帖子
- 4802
- 阅读权限
- 255
- 注册时间
- 2007-7-20
- 最后登录
- 2024-1-15
- 精华
- 20
- UID
- 4
- 积分
- 22709
- 帖子
- 4802
- 主题
- 64
- 阅读权限
- 255
- 注册时间
- 2007-7-20
- 最后登录
- 2024-1-15
|
原帖由 guidaon 于 2007-9-6 13:39 发表
LC:=MA(CLOSE,N1);
RSI:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;
n1=14
前几天正好写过一个SMA的函数,代码如下:
- Params
- NumericSeries Price(1);
- Numeric Length(10);
- Numeric Weight(1);
- Vars
- NumericSeries SMAValue;
- Begin
- If ( CurrentBar < Length || SMAValue[1] == InvalidNumeric)
- {
- SMAValue = Summation(Price, Length)/Length;
- }Else
- {
- SMAValue = (SMAValue[1]*(Length-Weight)+Price*Weight)/Length;
- }
- Return SMAValue;
- End
复制代码
假设新建一个指标,名字为RSIEx:
- Params
- Numeric Length(14);
- Numeric OverSold(30) ;
- Numeric OverBought(70) ;
- Vars
- Numeric AvgClose;
- NumericSeries Value1;
- NumericSeries Value2;
- Numeric RSIValue;
- Begin
- AvgClose = AverageFC(Close,Length);
- Value1 = max(Close - AvgClose,0);
- Value2 = Abs(Close - AvgClose);
- RSIValue = SMA(Value1,Length,1)/SMA(Value2,Length,1) * 100;
- PlotNumeric("RSI",RSIValue);
- PlotNumeric("超买",OverBought);
- PlotNumeric("超卖",OverSold);
- End
复制代码
效果如下,感觉指示还不错!
|
附件: 你需要登录才可以下载或查看附件。没有帐号?注册
|