- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
八、技术指标编写
8-1、技术指标与应用
技术指标是最常用的一类公式,它通过计算一系列的数学公式,在每个 Bar都返回值,这些值在图表模块中输出为线条、柱状图、点
等表现形式,通过分析图形特点、走势和曲线帮助客户分析行情走势,得出合理的交易判断。
当技术指标应用在图表中时,您可以设置技术指标各输出值的表现形式,以及颜色、粗细等,如下图的点,线,柱状图所示:
. Powered By TradeBllazer
示例,技术指标 RSI,脚本如下:
Params
Numeric Length(14);
Numeric Oversold(20);
Numeric OverBought (80);
Vars
Numeric RSIValue(O);
Numeric RSIColor(-l);
Begin
RSIValue = RSI(Close,Length);
If (RSIValue OverBought)
{
RSIColor= RED;
}Else If (RSIValue Oversold)
{
RSIColor= CYAN;
}
PlotNumeric(RSI1, RSIValue, RSIColor);
PlotNumeric( 超卖 , OverSold);
PlotNumeric( 超买 , OverBought);
If CrossOver(RSIValue,OverSold)
{
Alert(Indicator exiting oversold zone);
}
If CrossUnder(RSIValue, OverBought)
{
Alert(Indicator exiting overbought zone);
}
End
公式应用 RSI 调用 RSI 内建用户函数计算出结果,然后判断其返回值和超买,超卖的关系,设置显示颜色,并产生报警信息。 公式应用在输出数据时,我们是通过输出值的名称来进行识别,名称相同则认为是一个数据,如下的代码,后面语句的输出数据将会覆盖 前面语句的输出数据。
PlotNumeric(Test,10);
PlotNumeric(Test,20);
最后 Test 输出的数据为 20,而不是 10。
常用的技术指标类函数有 PlotNumeric 、 PlotString 、 PlotBool 、 UnPlot 、 Alert 。
3
8-2、常用的技术指标应用举例
例1: myRSI用户函数 Params
Numeric Length(14);
Vars
NumericSeries NetChgAvg( 0);
NumericSeries TotChgAvg( 0);
Numeric SF( 0);
Numeric Change( 0);
Numeric ChgRatio( 0 );
Numeric RSIValue;
Begin
lf(CurrentBar = Length -1)
{
NetChgAvg = ( Close - Close[Length]) / Length ;
TotChgAvg = Average( Abs( Close - Close[1]), Length ) }Else
SF = 1/Length;
Change = Close - Close[1];
NetChgAvg = NetChgAvg[1] + SF * ( Change - NetChgAvg[1]);
TotChgAvg = TotChgAvg[1] + SF * (Abs( Change ) - TotChgAvg[1]) lf( TotChgAvg 0 )
{
ChgRatio = NetChgAvg /TotChgAvg;
}else
ChgRatio = 0 ;
}
RSIValue = 50*( ChgRatio + 1 );
Return RSIValue;
例2: RSI指标交易系统
Params
Numeric Length(14);
Numeric Lots(1);
Vars
NumericSeries RSIValue;
Begin
RSIValue = myRSI(Length);
PlotNumeric(RSI,RSIValue);
if (Marketposition 1 and RSIValue[1] 50)
{
Buy(lots,ope n);
}
if (Marketposition -1 and RSIValue[1] 50)
{
SellShort(Lots,open);
}
End
例3: SAR指标交易系统
Params
Numeric AfStep( 0.02);
Numeric AfLimit( 0.2 );
Numeric Lo
文档评论(0)