以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]图表上有显示但不会执行平仓操作的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=30067)

--  作者:lcgs005
--  发布时间:2012/10/24 12:48:03
--  [求助]图表上有显示但不会执行平仓操作的问题

下面的公式,图表上会出平仓信号,但有时能平仓,有时不能平,不知道什么原因,向各位高手求救了

 

a:="macd.diff";
b:="macd.dea";
//为避免手动开空后与虚拟图表上有差异,特加入这段阿火代码

aa:tholding2,linethick0;
bb:extgbdata(\'quanju\'),linethick0;

if bb<0 then buyshort(barpos=datacount-2,bb,thisclose);

//

pk:=aa<0 and a>b;

if pk then begin
sellshort(1,0,market);
end

//

if islastbar then extgbdataset(\'quanju\',aa);
-

-在此公式中,图表上会出平仓信号但有时会执行平空操作,有时不会执行平空


--  作者:lcgs005
--  发布时间:2012/10/24 12:51:18
--  

这段代码的主要作用是:当macd发生金叉后还留有空单,则平空


--  作者:every
--  发布时间:2012/10/24 13:06:09
--  

是K线走完?


--  作者:lcgs005
--  发布时间:2012/10/24 13:11:57
--  
以下是引用every在2012-10-24 13:06:09的发言:

是K线走完?

1秒轮循


--  作者:lcgs005
--  发布时间:2012/10/24 13:51:48
--  

//为方便各位复制后手动反向开仓测试,把代码补齐

a:="macd.diff";
b:="macd.dea";
//为避免手动开空后与虚拟图表上有差异,特加入这段阿火代码
aa:tholding2,linethick0;
bb:extgbdata(\'quanju\'),linethick0;
if bb<0 then buyshort(barpos=datacount-1,bb,thisclose);
//若金叉还有空单马上平空
jcpk:aa<0 and a>b,linethick0;
if jcpk then begin
sellshort(1,0,c),allowrepeat;
end
//若死叉还有从多单马上平多
if bb>0 then buy(barpos=datacount-1,bb,thisclose);
scpd:aa>0 and a<b,linethick0;
if scpd then begin
sell(1,0,c),allowrepeat;
end
//
if islastbar then extgbdataset(\'quanju\',aa);


--  作者:lichenghu
--  发布时间:2012/10/24 13:56:22
--  

您稍等 ,我们这边测试下。看可会出现这种问题


--  作者:lcgs005
--  发布时间:2012/10/24 14:23:45
--  
以下是引用lichenghu在2012-10-24 13:56:22的发言:

您稍等 ,我们这边测试下。看可会出现这种问题

非常感谢你们能重视这个问题,这种情况没解决的时候经常被秒杀,目前只得先停了自动化;

 

另外,使用其它方法如:

DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
LJ:=(351*REF(DEA,1)+325*REF(EMA(C,26),1)-297*REF(EMA(C,12),1))/28;//C>LJ,则macd金叉,C<LJ,则MACD死叉
用这方法来定义金叉,仍然存在同样的问题,原因未知


--  作者:王锋
--  发布时间:2012/10/24 15:01:45
--  

使用了extgbdataset这种全局数据库,你要注意不要在其他策略中或者多个图表上同时加载此类公式,因为全局变量作用于整个金字塔软件,会造成相互干扰。

全局变量数据库属于高级客户使用的技巧,不建议初级客户使用

[此贴子已经被作者于2012-10-24 15:02:28编辑过]

--  作者:lcgs005
--  发布时间:2012/10/24 16:52:43
--  
以下是引用王锋在2012-10-24 15:01:45的发言:

使用了extgbdataset这种全局数据库,你要注意不要在其他策略中或者多个图表上同时加载此类公式,因为全局变量作用于整个金字塔软件,会造成相互干扰。

全局变量数据库属于高级客户使用的技巧,不建议初级客户使用

[此贴子已经被作者于2012-10-24 15:02:28编辑过]

恩,以后注意,但,现在无法平仓的问题要如何才能解决?急啊,


--  作者:lcgs005
--  发布时间:2012/10/24 17:52:02
--  

大家如果要测试 ,只需要在金叉状态或死叉状态下手动开一手反向单,然后就可以看看图表交易程式化执不执行了。

我用的是1秒轮循,打开了图表交易自动化