以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (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,是否也可以?
|