以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp)
-- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2)
---- [求助]保本不动作 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=76203)
|
-- 作者:渴望知识
-- 发布时间:2015/3/5 23:22:11
-- [求助]保本不动作
老师好
我昨天晚上测试发现,我的保本程序不动作,我试了好多下了,麻烦请帮忙看一下。
白糖1505合约,5分钟周期,测试日期2月27日
HH:=HHV(H,enterbars+1); //买开仓位置到现在最高价 A1:=ENTERPRICE+11*A; //止盈点差起始位置 A2:=A1+2*A; //追踪点差起始位置 A3:=A1-2*A; //最小止盈位置(止盈的数值要大于这行的系数最小2.5倍) A4:=HH-2*A; //以上为根据止赢点差计算多单追踪止赢位置|| if ((HH>=A1 && HH<=A2 && C<=A3 && c<=o)||(HH>A2 && C<=A4 ) and abb) || ((A1>=HH>(enterprice+4)) && CROSS(ENTERPRICE+3*A ,C)) && c>(enterprice+a) && holding>0 then sell(1,0,limitr,c);//多单止盈、保本和追踪止盈 cond1:enterprice+4;
附图中,最高价是5140,保本线是5137,开仓价是5133,最高价那根的K线收盘价是5135,。
我算了好多遍,((A1>=HH>(enterprice+4)) && CROSS(ENTERPRICE+3*A ,C)) 这个语句应该是成立的,但是为什么却不执行呢?
此主题相关图片如下:qq截图20150305231246.png

|
-- 作者:FexTel
-- 发布时间:2015/3/6 0:16:45
--
1,你这整个平仓语句里还有其他条件,我们这边没完整指标和环境不好调试
2,你把SELL里面的IF 条件分开用变量在图上做输出看下,在具体位置是否取值都为1
如果不为1,看下到底是那个条件影响的就可以了哦
|
-- 作者:渴望知识
-- 发布时间:2015/3/6 9:13:47
--
谢谢,那请问,单独看这个语句是否有问题呢?
|
-- 作者:yukizzc
-- 发布时间:2015/3/6 9:34:58
--
语句是没问题,主要你要看条件是否满足了。
|
-- 作者:渴望知识
-- 发布时间:2015/3/6 9:36:31
--
我现在把前面的条件都删掉了,单独执行sell(((A1>=HH>(enterprice+4*a)) && CROSS(ENTERPRICE+3*A ,C)) ,0,limitr,c);
这个都不动作,真是怪了啊,条件上应该都满足啊,这是为什么呢?
|
-- 作者:yukizzc
-- 发布时间:2015/3/6 9:55:25
--
cond:(A1>=HH>(enterprice+4*a)) && CROSS(ENTERPRICE+3*A ,C))
sell(cond,0,limitr,c)
看下cond是否满足,或者你自己修改一个容易点额条件比如c>o去看看。
|
-- 作者:渴望知识
-- 发布时间:2015/3/6 10:08:54
--
这个试了,没成立的时候,真是怪了啊。
|
-- 作者:FexTel
-- 发布时间:2015/3/6 10:10:28
--
没成立 拆开再看哦,里面值还是可以细分的。调试就是一步步的动作
|
-- 作者:渴望知识
-- 发布时间:2015/3/6 11:20:44
--
拆开了,应该是A1>=HH>(enterprice+4*a)中的>(enterprice+4*4)这句有问题,加上后就没有执行条件了。
其后再把+4*a给去掉了,也是不执行了。
这个有点解释不通吧,假设我开多单,哪怕是阴线,只要最高价超过了开仓价加4个点并且不高于我止盈起始点,那这个条件应该是成立的了啊,因为我后面还跟了一个&& CROSS(ENTERPRICE+3*A ,C))这条件,低于开仓价加3个点,那就直接平掉了。
为什么呢?有点想不通了。
[此贴子已经被作者于2015/3/6 11:21:48编辑过]
|
-- 作者:FexTel
-- 发布时间:2015/3/6 11:24:07
--
A1>=HH AND HH>(enterprice+4*a) //条件必须独立分析写,不能连贯在一起用哦
[此贴子已经被作者于2015/3/6 11:26:09编辑过]
|