设为首页收藏本站

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

为什么代码没问题却没有信号 [复制链接]

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
跳转到指定楼层
1#
发表于 2016-9-20 19:37:52 |只看该作者 |倒序浏览
代码如下,系统显示统辑成功,但却没有任何信号,请问是什么问题?
If(MarketPosition==0 And AdpMA[1]>AdpMA[2])
    {   
        Buy(0,O);
        myEntryPrice=O;
    }

Rank: 8Rank: 8

精华
0
UID
209713
积分
9955
帖子
5317
主题
4637
阅读权限
100
注册时间
2015-5-25
最后登录
2019-3-30
2#
发表于 2016-9-21 14:01:33 |只看该作者
条件是否满足,用调试语句commentary输出来看下

使用道具 举报

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
3#
发表于 2016-9-21 21:05:49 |只看该作者
yuyuehan 发表于 2016-9-21 14:01
条件是否满足,用调试语句commentary输出来看下

用Commentary("mark"+text(MarketPosition));代码,没出现任何结果啊?用MA5代替AdpMA就有很多信号了。
麻烦再帮我看看问题出 在哪?

使用道具 举报

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
4#
发表于 2016-9-22 12:24:46 |只看该作者
huxueyi 发表于 2016-9-21 21:05
用Commentary("mark"+text(MarketPosition));代码,没出现任何结果啊?用MA5代替AdpMA就有很多信号了。
...

这个代码中,AdpMA换成MA5,同样的条件,没有任何问题;但用AdpMA就没有任何信号 ,也用commentary试了,没有结果,请支援!谢谢!

使用道具 举报

Rank: 8Rank: 8

精华
0
UID
209713
积分
9955
帖子
5317
主题
4637
阅读权限
100
注册时间
2015-5-25
最后登录
2019-3-30
5#
发表于 2016-9-22 13:22:06 |只看该作者
AdpMA[1]>AdpMA[2]也有同时满足吗?将详细代码发一下

使用道具 举报

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
6#
发表于 2016-9-22 18:56:35 |只看该作者
Params
        Numeric EffRatioLength(10);
        Numeric FastAvgLength(2);
        Numeric SlowAvgLength(30);
Begin
        PlotNumeric("AdpMa",AdaptiveMovAvg(Close,EffRatioLength,FastAvgLength,SlowAvgLength));
If(MarketPosition==0 And AdpMA[1]>AdpMA[2])
    {   
        Buy(0,O);
        myEntryPrice=O;
    }
If(MarketPosition==1 And BarsSinceEntry>0 And MA5<MA20 And MACD<MACDAvg)
     {
      Sell(Abs(CurrentContracts),Min(O,MA5));
     }

使用道具 举报

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
7#
发表于 2016-9-25 18:10:08 |只看该作者
Params
         Numeric EffRatioLength(10);
         Numeric FastAvgLength(2);
         Numeric SlowAvgLength(30);
Begin
         PlotNumeric("AdpMa",AdaptiveMovAvg(Close,EffRatioLength,FastAvgLength,SlowAvgLength));
If(MarketPosition==0 And AdpMA[1]>AdpMA[2])
     {   
         Buy(0,O);
         myEntryPrice=O;
     }
If(MarketPosition==1 And BarsSinceEntry>0 And MA5<MA20 And MACD<MACDAvg)
      {
       Sell(Abs(CurrentContracts),Min(O,MA5));
      }

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
0
UID
209716
积分
2226
帖子
2131
主题
0
阅读权限
200
注册时间
2015-5-25
最后登录
2020-5-29
8#
发表于 2016-9-26 16:01:50 |只看该作者
huxueyi 发表于 2016-9-25 18:10
Params
         Numeric EffRatioLength(10);
         Numeric FastAvgLength(2);


条件不满足自然不会有信号,你用ma可以出来信号的话就用ma吧,

使用道具 举报

Rank: 1

精华
0
UID
229717
积分
49
帖子
31
主题
17
阅读权限
10
注册时间
2016-3-10
最后登录
2018-4-23
9#
发表于 2016-9-26 16:40:54 |只看该作者
huxueyi 发表于 2016-9-25 18:10
Params
         Numeric EffRatioLength(10);
         Numeric FastAvgLength(2);

PlotNumeric("AdpMa",AdaptiveMovAvg(Close,EffRatioLength,FastAvgLength,SlowAvgLength));
你的adpMa的定义在哪里?上面这句可不是定义,只是输出而已吧!你这个问题肯定出在你的adpma的定义上面,跑不了的,因为你直接用ma是有信号的

使用道具 举报

Rank: 2

精华
0
UID
205387
积分
57
帖子
36
主题
21
阅读权限
30
注册时间
2015-3-17
最后登录
2016-11-12
10#
发表于 2016-9-26 23:26:17 |只看该作者
所以,我用考夫曼变速均线代码求均线,你们的原代码如下:
Params
        NumericSeries Price(1);
        Numeric EffRatioLength(10);
        Numeric FastAvgLength(2);
        Numeric SlowAvgLength(30);
Vars
        Numeric NetChg(0);
        Numeric TotChg(0);
        Numeric EffRatio(0);
        Numeric ScaledSFSqr(0);
        NumericSeries AMAValue;       
        Numeric SFDiff;
Begin
        if(CurrentBar == 0)
        {
                AMAValue = Price;
        }Else
        {
                NetChg = Abs( Price - Price[EffRatioLength] );
                TotChg = Summation( Abs( Price - Price[1] ), EffRatioLength );               
                EffRatio = IIF(TotChg > 0, NetChg / TotChg, 0);
                SFDiff = 2 / ( FastAvgLength + 1 ) - 2 / ( SlowAvgLength + 1 );               
                ScaledSFSqr = Sqr( 2 / ( SlowAvgLength + 1 ) + EffRatio * SFDiff );               
                AMAValue = AMAValue[1] + ScaledSFSqr * ( Price - AMAValue[1] );
        }
但无法保存,显示“参数声明的数据类型错识破,错误号是C0108”;如果这个问题能解决,我可以加变速均线代码,问题就解决了。
麻烦你再帮我看看考夫曼变速均线的原代码问题出在哪?

使用道具 举报

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

bottom

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

GMT+8, 2024-4-30 16:04

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部