设为首页收藏本站

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

自写趋势跟随系统,出错提示,请教管理员 [复制链接]

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
跳转到指定楼层
1#
发表于 2011-10-28 10:30:11 |只看该作者 |倒序浏览
自己设计了很简单的趋势跟随系统。主要是均线突破与跟随。

1、买入或卖出入场
如果K线突破20日均线,买入(向上突破)或卖出(向下突破)

2、止盈或止损
  若同时满足以下两条件,则平仓。

  A、5日线拐头穿10日线   B、破10日均线

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
2#
发表于 2011-10-28 10:35:36 |只看该作者
写的程序如下。系统提示我:第31行,错误号是c0010,具体为“无法识别的字符串:&&.”

&&这个字符前面也有啊,为何不行?





Params
        Numeric FastLength(5);
        Numeric midlength(10);
        Numeric SlowLength(20);
Vars
        NumericSeries AvgValue1;
        NumericSeries AvgValue2;
        NumericSeries AvgValue3;
       
Begin

        AvgValue1 = AverageFC(Close,FastLength);       
        AvgValue2 = AverageFC(Close,midLength);
        AvgValue3 = AverageFC(Close,SlowLength);
       
               
        If(MarketPosition <>1 && Close[1]> AvgValue3[1]&& Close[2]<AvgValue3[2])
        {
                Buy(1,Open);
        }
        If(MarketPosition <>0 && Close[1]<AvgValue2 && CrossUnder(AvgValue1,AvgValue2))
        {Sell(1,open);}
       
        If(MarketPosition <>-1 && Close[1]< AvgValue3[1]) && Close[2]>AvgValue3[2])
        {
                SellShort(1,Open);
        }
        If(MarketPosition <>0 && Close[1]>AvgValue2 && CrossOver(AvgValue1,AvgValue2))
        BuyToCover(1,open);
       
       
End
有是有,无是无

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
3#
发表于 2011-10-28 10:44:43 |只看该作者
回复 2# 北门吹风


AvgValue3[1])后面多了个右括号!

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
4#
发表于 2011-10-28 10:51:20 |只看该作者
我想了下,改成以下的程式。也有问题。先发上来。

Params
        Numeric FastLength(5);
        Numeric midlength(10);
        Numeric SlowLength(20);
Vars
        NumericSeries AvgValue1;
        NumericSeries AvgValue2;
        NumericSeries AvgValue3;
       
Begin

        AvgValue1 = AverageFC(Close,FastLength);       
        AvgValue2 = AverageFC(Close,midLength);
        AvgValue3 = AverageFC(Close,SlowLength);
       
               
        If(MarketPosition <>1 && CrossOver(Close[1], AvgValue3[1]))
        {
                Buy(1,Open);
        }
        If(MarketPosition <>0 && Close[1]<AvgValue2 && CrossUnder(AvgValue1,AvgValue2))
        {Sell(1,open);}
       
        If(MarketPosition <>-1 && CrossUnder(Close[1], AvgValue3[1]))
        {
                SellShort(1,Open);
        }
        If(MarketPosition <>0 && Close[1]>AvgValue2 && CrossOver(AvgValue1,AvgValue2))
        BuyToCover(1,open);
       
       
End
有是有,无是无

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
5#
发表于 2011-10-28 10:57:21 |只看该作者
我的问题是

1、这个表达是否比第一个更好?

2、第二个程式成功保存当前公式信息。但下面出现如下句子:“FOR、WHILE、IF、ELSE中包含序列函数,可能存在的逻辑错误,请确认代码无误。错误号W0201,行号为24、28、31、35.”

   是什么问题?
有是有,无是无

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
6#
发表于 2011-10-28 11:01:53 |只看该作者
回复  北门吹风


AvgValue3[1])后面多了个右括号!
lh948 发表于 2011-10-28 10:44



    这个右括号是对应前面IF的左括号的,只有一个右括号,也多了,我没看出来?

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
7#
发表于 2011-10-28 11:05:34 |只看该作者
不好意思。程式中只有一个右括号的,也是同样有问题。
系统提示我:第31行,错误号是c0010,具体为“无法识别的字符串:&&.”


Params
        Numeric FastLength(5);
        Numeric midlength(10);
        Numeric SlowLength(20);
Vars
        NumericSeries AvgValue1;
        NumericSeries AvgValue2;
        NumericSeries AvgValue3;
       
Begin

        AvgValue1 = AverageFC(Close,FastLength);       
        AvgValue2 = AverageFC(Close,midLength);
        AvgValue3 = AverageFC(Close,SlowLength);
       
               
        If(MarketPosition <>1 && Close[1]> AvgValue3[1]&& Close[2]<AvgValue3[2])
        {
                Buy(1,Open);
        }
        If(MarketPosition <>0 && Close[1]<AvgValue2 && CrossUnder(AvgValue1,AvgValue2))
        {Sell(1,open);}
       
        If(MarketPosition <>-1 && Close[1]< AvgValue3[1]) && Close[2]>AvgValue3[2])
        {
                SellShort(1,Open);
        }
        If(MarketPosition <>0 && Close[1]>AvgValue2 && CrossOver(AvgValue1,AvgValue2))
        BuyToCover(1,open);
       
       
End
有是有,无是无

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
8#
发表于 2011-10-28 11:10:45 |只看该作者
现在我的问题,归结起来是

1、这个表达是否比第一个更好?

2、第二个程式成功保存当前公式信息。但下面出现如下句子:“FOR、WHILE、IF、ELSE中包含序列函数,可能存在的逻辑错误,请确认代码无误。错误号W0201,行号为24、28、31、35.”

   是什么问题?

3、第一个表达式通过了。但也出现下面句子:““FOR、WHILE、IF、ELSE中包含序列函数,可能存在的逻辑错误,请确认代码无误。错误号W0201,行号为28、35.”
有是有,无是无

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
9#
发表于 2011-10-28 11:11:42 |只看该作者
谢谢。第一个程式的问题找出来了。谢谢lh948。
问题归结见上。
有是有,无是无

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
61147
积分
171
帖子
35
主题
6
阅读权限
40
注册时间
2011-8-23
最后登录
2012-8-23
10#
发表于 2011-10-28 11:15:50 |只看该作者
归结第四个问题:

3、若已作止盈或止损,但K线破10日均线后,却不破20均线。

若满足以下条件,按原方向再重开单。

A、5日线回头再穿10日线   B、重回10日均线上或下。

这样如何表达?
有是有,无是无

使用道具 举报

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

bottom

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

GMT+8, 2024-5-21 20:14

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部