以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  一根K线出现开平的问题,求解  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=71552)

--  作者:chyhao
--  发布时间:2014/10/30 17:24:14
--  一根K线出现开平的问题,求解

DIFF : EMA(CLOSE,12) - EMA(CLOSE,26),LINETHICK0;
DEA  : EMA(DIFF,9),LINETHICK0;

KD:=CROSS(DIFF,DEA);
KK:=CROSS(DEA,DIFF);

PK:=C<ENTERPRICE-10||C>ENTERPRICE+10;
PD:=C>ENTERPRICE+10||C<ENTERPRICE-10;

 

BUY(KD&&HOLDING=0,1,THISCLOSE);
SELL(PD&&HOLDING>0,1,THISCLOSE);
BUYSHORT(KK&&HOLDING=0,1,THISCLOSE);
SELLSHORT(PK&&HOLDING<0,1,THISCLOSE);

 

代码如上,无论开多还是开空,均是10个点止盈止损,加载在股指指数1分钟主图上,大部分信号正常,但是会出现一根K线同时开空平空,或者开多平多的异常信号,这是哪里出问题了,谢谢?


图片点击可在新窗口打开查看此主题相关图片如下:未命名1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:未命名2.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2014/10/30 17:30:17
--  
开平条件同时满足了,不是异常现象,是程序根据你的公式得出的信号
--  作者:chyhao
--  发布时间:2014/10/30 17:39:11
--  

例如这个信号,因为我是用THISCLOSE进场的,那么开多的价格应该是2440.7,平仓条件是10个点止盈止损,应该没有达到啊,老师能否详细解释下原因,谢谢


图片点击可在新窗口打开查看此主题相关图片如下:未命名1.png
图片点击可在新窗口打开查看

--  作者:chengyang
--  发布时间:2014/10/30 22:34:48
--  
平仓条件里加个 enterbars>0
--  作者:jinzhe
--  发布时间:2014/10/31 9:07:04
--  

书写问题,你把enterprice写在开仓之前,获取的开仓价是上一次开仓的开仓价,

把enterprice写在后面就行

修改如下:

DIFF : EMA(CLOSE,12) - EMA(CLOSE,26),LINETHICK0;
DEA  : EMA(DIFF,9),LINETHICK0;

KD:=CROSS(DIFF,DEA);
KK:=CROSS(DEA,DIFF);

 


BUY(KD&&HOLDING=0,1,THISCLOSE);

SELL(C>ENTERPRICE+10 or C<ENTERPRICE-10 and HOLDING>0,1,THISCLOSE);
BUYSHORT(KK&&HOLDING=0,1,THISCLOSE);

 
SELLSHORT(C<ENTERPRICE-10||C>ENTERPRICE+10 and HOLDING<0,1,THISCLOSE);


--  作者:kuge
--  发布时间:2014/10/31 11:10:05
--  
我昨天也遇到这种情况了,今天运行没问题了,我感觉是金字塔软件系统的问题
--  作者:jinzhe
--  发布时间:2014/10/31 11:15:56
--  
不是系统问题,参考我的解释,多学习下代码的书写顺序会造成什么样的结果
--  作者:chyhao
--  发布时间:2014/10/31 13:05:30
--  
如果我的PK,PD条件都很长,我不想写在SELL,SELLSHORT里,还有怎样的简单写法?
--  作者:jinzhe
--  发布时间:2014/10/31 13:18:26
--  

buy.......;

pd:=........;

sell......;

buyshort.....;

pk:=.......;

sellshort........;

 

这个不一定是适用所有情况,仅根据你给出的代码思路来确定的


--  作者:chyhao
--  发布时间:2014/10/31 13:39:54
--  

DIFF : EMA(CLOSE,12) - EMA(CLOSE,26),LINETHICK0;
DEA  : EMA(DIFF,9),LINETHICK0;

KD:=CROSS(DIFF,DEA);
KK:=CROSS(DEA,DIFF);

PK:=C<ENTERPRICE-10||C>ENTERPRICE+10;
PD:=C>ENTERPRICE+10||C<ENTERPRICE-10;

 

BUY(KD&&HOLDING=0,1,THISCLOSE);
SELL(PD&&HOLDING>0&&enterbars>0,1,THISCLOSE);
BUYSHORT(KK&&HOLDING=0,1,THISCLOSE);
SELLSHORT(PK&&HOLDING<0&&enterbars>0,1,THISCLOSE);

 

我在平仓条件里边加上ENTERBARS>0,是否也可以?