设为首页收藏本站

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

请教一下大家,看我这个TB公式对不对! [复制链接]

Rank: 4

精华
0
UID
5910
积分
323
帖子
36
主题
10
阅读权限
50
注册时间
2009-11-16
最后登录
2010-2-2
跳转到指定楼层
1#
发表于 2009-11-18 08:51:23 |只看该作者 |倒序浏览
我想实现的功能,当日线的DIFF和DEA交叉,再判断30分钟的DIFF和DEA是否交叉,30分钟线交叉后再判断5分钟的DIFF和DEA是否交叉,如果都交叉的话就发出开仓指令!我这个公式是根据NOPAIN老师的MACD多周期共振系统编写的,请大家看一下是否正确!请各位高手们多多指点!谢谢啦!
// 简称: MinsXAverage
// 名称: 1分钟转换N分钟的指数平均
// 类别: 用户函数
// 类型: 用户函数
// 输出: 数值型
//------------------------------------------------------------------------

Params
        Numeric nMinSet(3);
        NumericSeries Price(10);
        Numeric Length(10);
Vars
        NumericSeries MinsBarIndex;
        BoolSeries FirstMin(True);
   
        Numeric sFcactor;
        NumericSeries XAvgValue;
Begin
        If(CurrentBar == 0)
        {
                FirstMin = True;
        }Else
        {
                FirstMin = FirstMin[1];
                If(FirstMin && IntPart(Minute/nMinSet) != IntPart(Minute[CurrentBar]/nMinSet))
        {
                        FirstMin = False;
                }
        }
               
        If(IntPart(Minute%nMinSet)==0)
        {
                MinsBarIndex = 1;
        }Else
        {
                MinsBarIndex = MinsBarIndex[1] + 1;
        }

        sFcactor = 2 / ( Length + 1 );
        if (FirstMin)
        {
                XAvgValue = Price;
        }else
        {
                XAvgValue = XAvgValue[MinsBarIndex] + sFcactor * ( Price - XAvgValue[MinsBarIndex] ) ;
        }        
        Return XAvgValue;
End


// 简称: MACDRS
// 名称: MACD Resonance System
// 类别: 交易指令
// 类型: 多头建仓
// 输出:
//------------------------------------------------------------------------

Params
        Numeric FastLength(12);
        Numeric SlowLength(26);
        Numeric MACDLength(9);
Vars
      
        NumericSeries MACDValue5;
        NumericSeries MACDValue30;
        NumericSeries MACDValue240;
      
        Numeric AvgMACD5;
        Numeric AvgMACD30;
        Numeric AvgMACD240;
      
        Numeric MACDDiff5;
        Numeric MACDDiff30;
        Numeric MACDDiff240;
        Bool LongEntryCon;
        Bool ShortEntryCon;
        Bool LongExitCon;
        Bool ShortExitCon;
Begin
      
        
        MACDValue5 = MinsXAverage(5, Close, FastLength ) - MinsXAverage(5, Close, SlowLength );        
        AvgMACD5 = MinsXAverage(5,MACDValue5,MACDLength);
        MACDDiff5 = MACDValue5 - AvgMACD5;
        
               
        MACDValue30 = MinsXAverage(30, Close, FastLength ) - MinsXAverage(30, Close, SlowLength );        
        AvgMACD30 = MinsXAverage(30,MACDValue30,MACDLength);
        MACDDiff30 = MACDValue30 - AvgMACD30;

        MACDValue240 = MinsXAverage(240, Close, FastLength ) - MinsXAverage(240, Close, SlowLength );        
        AvgMACD240= MinsXAverage(240,MACDValue240,MACDLength);
        MACDDiff240= MACDValue240 - AvgMACD240;

        LongEntryCon = MACDDiff240 > 0 && MACDDiff30 > 0 && MACDDiff5 > 0;
        ShortEntryCon = MACDDiff240 < 0 && MACDDiff30 < 0 && MACDDiff5 < 0;
        
        LongExitCon = MACDDiff5 < 0;
        ShortExitCon = MACDDiff5 > 0;
        
        
        Commentary("MACDDiff5="+Text(MACDDiff5));
        Commentary("MACDDiff30="+Text(MACDDiff30));
        Commentary("MACDDiff240="+Text(MACDDiff240));
        
        If(MarketPosition == 0)
        {
                If(LongEntryCon)
                {
                        Buy(1,NextOpen,True);
                }Else if(ShortEntryCon)
                {
                        SellShort(1,NextOpen,True);
                }               
        }Else If(MarketPosition == 1 && LongExitCon)
        {
                Sell(1,NextOpen,True);
        }Else if(MarketPosition == -1 && ShortExitCon)
        {
                BuyToCover(1,NextOpen,True);
        }
        
        If(Time >= 0.1459)
        {
                Sell(1,Open);
                BuyToCover(1,Open);
        }
End

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20901
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
2#
发表于 2009-11-18 09:57:46 |只看该作者
MACDValue240不是日线的macd,
日线跨周期参考http://www.tradeblazer.net/forum/thread-4469-1-1.html
条件交叉用crossover和crossunder

使用道具 举报

Rank: 4

精华
0
UID
5910
积分
323
帖子
36
主题
10
阅读权限
50
注册时间
2009-11-16
最后登录
2010-2-2
3#
发表于 2009-11-18 10:56:45 |只看该作者

请教一下5分钟,30分钟,日线三者怎么结合

请教一下5分钟,30分钟,日线三者怎么结合!他们不能通用同一个程序,那么他们三者该怎么结合呢?

使用道具 举报

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

bottom

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

GMT+8, 2024-5-2 20:57

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部