设为首页收藏本站

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

只好请教管理员了,为啥我这个指令没有执行?平仓sell [复制链接]

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
跳转到指定楼层
1#
发表于 2009-5-21 11:39:00 |只看该作者 |正序浏览
按照交易指令Buy正确地开了2多仓,以下到了止损价位,但是没有执行

If (MarketPosition == 1)    //如果持多头,在这里测试模拟账户无法获得确切的持仓数量,只能用MarketPosition做简单判断
       {
               If(Q_Last <= A1 )     //如果当前bar最新价 小于等于A1
            {
                        Boutprice1 = A1 - offprice;   //加滑点形成平仓价格
               Sell(0,Boutprice1);   //全部多头止损平仓
            }else If 其他条件........
   
             }

反之,空头持仓一样也没有平,以致困扰,请教请教,是不是 sell 指令使用不对啊?
还有,以上止损没有执行,价格下跌反向,到了开空仓的位置,自然受到  MarketPosition == 0 的限制,没有开空仓。但是接下来
触发了空头盈利条件,竟然发出了平空仓指令,当然系统没有认,有提示“没有空仓”,我不明白,空头盈利平仓是受以下条件限制的
IF (MarketPosition == -1)  
   {
        If (Q_Last <=A2)
        {
             Soutprice2=A2+offprice;
             BuyToCover(1,Soutprice2);
        }else If
           其他条件....
    }
这个 MarketPosition  是不是比较怪?怎么被穿透的?还是说我用得不对,初学,不好意思,希望能够彻底领悟

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
28#
发表于 2009-6-1 11:37:18 |只看该作者
今天专门把图放大,一个品种单独在一个工作区。还是两个品种消失信号(关闭讯号后再显示讯号,信号就来了),其他品种到达没有开仓条件。

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
27#
发表于 2009-5-30 13:19:45 |只看该作者
节日快乐!出去了二天。
关于穿越时,如你说的那样,下穿也符合,其实我原来主要是防止它在高位重复开仓的,也防止休息后跳空太多,没有利润空间的现象,当然还不科学,需要改进
我想-全局变量应该不会造成消失,证据就是有的图不会消失,执行正确。现在主要是搞清楚,什么情况下图表信号会消失。

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
26#
发表于 2009-5-27 17:48:10 |只看该作者

回复 #24 天柏 的帖子

2、当前bar价格high 大于 Bcon0,而low小于Bcon0; //表示从下往上穿越价格,如果跳空超过了Bcon0,就不符合了。

你这里有一点问题,“当前bar价格high 大于 Bcon0,而low小于Bcon0”并不能确定从下往上穿越,如果跳空向下走穿越bcon0,也符合你的条件。

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
25#
发表于 2009-5-27 17:46:20 |只看该作者

回复 #24 天柏 的帖子

是不是由于开仓后,全局变量变成1了,所以信号才消失了呢?

因为我没有试过用全局变量和buy这些交易指令搭配,所以不能肯定。

但是按照这个写法如果改用A_Sendorder肯定没问题。

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
24#
发表于 2009-5-27 16:58:55 |只看该作者
我们来分析一下我的开仓条件,请看我的触发价格是Bcon0
满足条件:
1、全局变量(1)为0,时间不超过0.1458;
2、当前bar价格high 大于 Bcon0,而low小于Bcon0; //表示从下往上穿越价格,如果跳空超过了Bcon0,就不符合了。
问题是不是在这里呢?
以今天的铜0908为例:
开仓触发价格Bcon0是 37160
14:55分时的bar符合条件,O=37120 L=37120 H=37180 C=37150
系统开仓成功,但是信号消失了。
==================================
If (GetGlobalVar(1) == 0 && Time < 0.1458)  
          {
            If (High >= Bcon0 && Low <= Bcon0 )
                 {
                  Buyenterprice = Bcon0 + offprice; //得出开多仓价格
                  Buy(lots1,Buyenterprice);  //开多仓
                  SetGlobalVar(1,1); //只要开多仓了,全局1归为1 ,模拟出MarketPosition的效果,忽略了无法开仓成功的情况,因为滑点很大,所以认为一定能成交
                  }

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
23#
发表于 2009-5-27 16:34:49 |只看该作者
谢谢!你的提议很好,我进一步检查思考一下,看是否有类似的情况出现。

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
22#
发表于 2009-5-27 15:47:40 |只看该作者

回复 #21 天柏 的帖子

即使用H L,如果你开平仓的条件不合适的话,一样会有信号消失的问题。
因为H L在即时行情中也是改变的,只不过方向不可逆转而已。比如下面的例子。
假如:A>B,你的条件如下:
IF(H>B && H<A)
BUY;

那么假如盘中开仓了,但是最后H>A,那么开仓信号就消失了。

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
21#
发表于 2009-5-27 15:32:51 |只看该作者

继续自言自语

现在可以说离成功还有一半,要解决的就是,如何能让图表一定能够有信号,在上个贴之后,铜0908和RO0909分别开仓,但是图上没有信号保留下来,而其他的黄金0912和TA0909的图就有,而且顺利执行了止损平仓和收盘平仓,可见,没有图表信号对于你的自动交易系统来说,就像吃肉夹馍没有肉、上厕所没有纸张一样的缺陷了。
那么为什么同样的图表条件,有的有信号,有的没有呢?愿闻其详..........我用的是1分钟的当日数据,不跨天,超级图表分成九个窗口放各个品种活跃月份,分别设置调用该交易指令公式,打开自动交易策略,允许不提示。因为不再调用 Q函数,所以没有用 Barstatus == 2作为先决条件(因为我加上后是根本不出信号了)

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
4140
积分
1557
帖子
242
主题
49
阅读权限
70
注册时间
2009-4-17
最后登录
2020-11-26
20#
发表于 2009-5-27 10:07:08 |只看该作者

还是有问题

谢谢啸傲!
我现在是做模拟账户的,所以还没有用A_Sendorder,依旧用 Buy Sell 和Sellshort Buytocover作为开平指令,经过TB帮助和思考,改为在一分钟图上交易,使用 High low 判断发出指令,但是。。。。嘿嘿,经过今天的测试,有的图有信号,有的没有,抓狂。。。。。。。有信号的图,止盈被成功执行了。用同等条件的代码,在历史数据上测试是没有问题的,就是即时交易数据出了问题。苍天啊!
详细说一下:
1、大豆1001 开仓  止损信号都出现了;
2、黄金0912 的开仓信号有,  第一次止盈 第二次止盈 没有,但是发出了指令成交了(这里是在一分钟内快速到达的价位的,不知道是不是这个原因);
3、橡胶0909 TA0909,没有出现,有开仓指令;

需要指出的是,重新编译一次代码后,图表信号出现了。

[ 本帖最后由 天柏 于 2009-5-27 10:28 编辑 ]

使用道具 举报

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

bottom

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

GMT+8, 2024-5-11 16:49

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部