设为首页收藏本站

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

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

Rank: 1

精华
0
UID
176185
积分
26
帖子
13
主题
12
阅读权限
10
注册时间
2013-11-23
最后登录
2014-3-2
跳转到指定楼层
1#
发表于 2014-1-1 14:10:39 |显示全部楼层 |倒序浏览
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
        NumericSeries oParCl( 0 );// SAR的变量1
        Numeric oParOp( 0 );                // SAR的变量2
        Numeric oPosition( 0 );        // SAR的变量3      
        Numeric oTransition( 0 );        // SAR的变量4
        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 );
        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<=Close) and (oParCl[1] > oParCl) And (MTMValue<100) And (KValue<35);
        isSelling = (MACDValue > AvgMACD) And (oParCl>=Close)and (oParCl[1] < oParCl) And (MTMValue>100) And (KValue>60);
        If(isBuying)
        {
                Buy(1,Close);
        }
      
        If(isSelling)
        {
                Sell;
        }
End
买入信号:  
    必要条件1:  SAR现值<=买入价  , 且:  SAR前值>SAR现值,   这句的意思是SAR刚由空翻成多
    必要条件2:  MTM现值<100
    必要条件3: macd.dif < macd.dea      ,  即还没有金叉
    必要条件4: kd.k < 35

卖出信号:工程同时满足以下条件
    条件1:   SAR刚由多翻空
    条件2:   MTM>100
    条件3:  macd尚未死叉
    条件4:  kd.k > 60
另外, 平仓条件还有一个跟踪止损是充分条件.
您需要登录后才可以回帖 登录 | 注册

bottom

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

GMT+8, 2024-5-4 04:49

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部