设为首页收藏本站

 找回密码
 注册
查看: 6008|回复: 0
打印 上一主题 下一主题

SAR交易系统(转) [复制链接]

Rank: 2

精华
0
UID
251604
积分
64
帖子
53
主题
3
阅读权限
30
注册时间
2017-5-23
最后登录
2021-3-31
1#
发表于 2017-7-4 15:05:19 |显示全部楼层
//------------------------------------------------------------------------
// 简称: SAR_2
// 名称:
// 类别: 公式应用
// 类型: 用户应用
// 输出:
//------------------------------------------------------------------------


Params
        Numeric FastLength(12);        // MACD的参数1
        Numeric SlowLength(26);        // MACD的参数2
        Numeric MACDLength(9);                // MACD的参数3
        Numeric AfStep( 0.02);        // SAR的参数1
        Numeric AfLimit( 0.2 ) ;        // SAR的参数2
        Numeric Length(5);                        // KD的参数1      
        Numeric SlowLengthKD(3);        // KD的参数2
        Numeric LengthMTM(14);        // MTM的参数1      
Vars  
        NumericSeries MACDValue;         // MACD的变量1
        Numeric AvgMACD;                        // MACD的变量2
        Numeric MACDDiff;                        // MACD的变量3
        Numeric oParCl( 0 );// SAR的变量1
        Numeric oParOp( 0 );                // SAR的变量2
        Numeric oPosition( 0 );        // SAR的变量3      
        Numeric oTransition( 0 );        // SAR的变量4
                NumericSeries oParCl_1;
        Numeric MTMValue(0);                // MTM的变量1
        NumericSeries HighestValue;        // KD的变量1                       
        NumericSeries LowestValue;        // KD的变量2                              
        NumericSeries KValue;                        // KD的变量3
        Bool   isBuying;                        // 开仓条件
        Bool   isSelling;                        // 平仓条件
Begin
        MACDValue = XAverage( Open, FastLength ) - XAverage( Open, SlowLength );      
        AvgMACD = XAverage(MACDValue,MACDLength);
        ParabolicSAR( AfStep, AfLimit, oParCl, oParOp, oPosition, oTransition );
                oParCl_1=oParCl;
        MTMValue = Open/Open[LengthMTM]*100;
        HighestValue = Highest(High, Length);
        LowestValue = Lowest(Low, Length);
        KValue = SummationFC(Close - LowestValue,SlowLengthKD)/SummationFC(HighestValue-LowestValue,SlowLengthKD)*100;
        isBuying = (MACDValue < AvgMACD) And (oParCl_1<=Close) and (oParCl_1[1] > oParCl_1) And (MTMValue<100) And (KValue<35);
        isSelling = (MACDValue > AvgMACD) And (oParCl_1>=Close)and (oParCl_1[1] < oParCl_1) And (MTMValue>100) And (KValue>60);
               
        If(isBuying && MarketPosition!=1 )
        {
                Buy(1,Close[1]);
        }
      
        If(isSelling && MarketPosition!=-1)
        {
                SellShort(1,CLOSE[1]);
        }
End

//------------------------------------------------------------------------
// 编译版本        GS2015.12.25
// 用户版本        2017/07/04 14:37:25
// 版权所有        jinxin168
// 更改声明        TradeBlazer Software保留对TradeBlazer平台
//                        每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-3 22:55

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部