- 精华
- 0
- 在线时间
- 128 小时
- UID
- 1109
- 积分
- 444
- 帖子
- 67
- 阅读权限
- 50
- 注册时间
- 2008-1-23
- 最后登录
- 2008-7-12
- 精华
- 0
- UID
- 1109
- 积分
- 444
- 帖子
- 67
- 主题
- 25
- 阅读权限
- 50
- 注册时间
- 2008-1-23
- 最后登录
- 2008-7-12
|
RSI,主要是要算N日内上涨点数于下跌点数的比值,但是就是看不懂下面的语句怎么算出来的,请老师指教
Params
Numeric Length(14) ;
Numeric OverSold(30) ;
Numeric OverBought(70) ;
Vars
NumericSeries NetChgAvg( 0 );
NumericSeries TotChgAvg( 0 );
Numeric Change( 0 );
Numeric SF( 0 );
Numeric ChgRatio( 0 ) ;
Numeric RSIValue;
Begin
SF = 1/Length;
If(CurrentBar < Length)
{
RSIValue = InvalidNumeric;
}Else
{
If(CurrentBar == Length)
{
NetChgAvg = ( Close - Close[Length] ) / Length ; //问题1 什么意思
TotChgAvg = AverageFC( Abs( Close - Close[1] ), Length ) ; //问题2 什么意思
}
If(CurrentBar>length)
{
Change = Close - Close[1] ;
NetChgAvg = NetChgAvg[1] + SF * ( Change - NetChgAvg[1] ) ; //问题3
TotChgAvg = TotChgAvg[1] + SF * ( Abs( Change ) - TotChgAvg[1] ) ;//问题4
}
If( TotChgAvg <> 0 )
{
ChgRatio = NetChgAvg / TotChgAvg ;
}else
{
ChgRatio = 0 ;
}
RSIValue = 50 * ( ChgRatio + 1 ) ;
}
PlotNumeric("RSI",RSIValue);
PlotNumeric("超买",OverBought);
PlotNumeric("超卖",OverSold);
End
[ 本帖最后由 风险玩家 于 2008-3-21 11:16 编辑 ] |
|