以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  策略回辙有时可以,有时不可以,特别是不能移动回辙。  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=97129)

--  作者:ecowang
--  发布时间:2016/5/6 12:45:28
--  策略回辙有时可以,有时不可以,特别是不能移动回辙。
以下是我的代码,请求看看为何回辙不起作用,不知道出错在哪里?下面就是关于回辙止损语句,特别是黄色字那三项是关键,我现在是用金字塔正式版,模以账户测试环境。请老师指正。

A1:=(MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24))/4; //BBI 选股

MA1:=C>A1;// AND  C>REF(CLOSE,1) ; //选择BBI向上股票
MA2:=C<A1;

A2:=INDEXC>(MA(INDEXC,3)+MA(INDEXC,6)+MA(INDEXC,12)+MA(INDEXC,24))/4;  //相应大盘指数BBI

VAR1:=(H-REF(C,1))/REF(C,1)*100<=8;//最高涨幅不超过8%


VARZ:=VAR1  AND MA1   AND A2 ; //买入条件


VBR1:=DYNAINFO(7)<HHV(H,TENTERBARS+1)*(1-3/100);//个股回撤3%平仓
VBR2:=DYNAINFO(7)<TENTERPRICE*(1-8/1000);//开仓后,下跌超过千分之8平仓
VBR3:=(HHV(REF(H,1),20)-LLV(REF(L,1),14))/LLV(REF(L,1),2)*100<3;//开仓后14个周期振幅小于3%卖出
VBRZ:=VBR1 OR VBR2 OR VBR3 OR MA2;  //卖出条件


IF VBRZ  AND THOLDING>0 THEN BEGIN
TSELL(1,0,MKT);
END

--  作者:wenarm
--  发布时间:2016/5/6 13:06:33
--  

你的问题应该是你条件不成立造成的。

你直接使用debugfile将条件打印输出看下。

http://222.73.7.161/bbs/dispbbs.asp?boardid=4&Id=49428

 

[此贴子已经被作者于2016/5/6 13:10:45编辑过]

--  作者:pyd
--  发布时间:2016/5/6 13:36:03
--  

VBR3:=(HHV(REF(H,1),20)-LLV(REF(L,1),14))/LLV(REF(L,1),2)*100<3;//开仓后14个周期振幅小于3%卖出

这行代码和文字描述不一致,

开仓后14个周期振幅小于3%,振幅怎么定义?

[此贴子已经被作者于2016/5/6 13:36:11编辑过]

--  作者:ecowang
--  发布时间:2016/5/6 13:56:04
--  
我在研究一下,前面用过debugout 语句,没见到如何。
--  作者:ecowang
--  发布时间:2016/5/6 13:57:16
--  
就是14周期内最高价与最低价比较,震幅大于3%
--  作者:pyd
--  发布时间:2016/5/6 14:05:05
--  

开仓后14个周期振幅小于3%卖出

这个至少开仓后走了14根k才可能成立

[此贴子已经被作者于2016/5/6 14:07:21编辑过]

--  作者:ecowang
--  发布时间:2016/5/6 14:07:01
--  
谢谢您!

请教下面的语法语句是否合适?


VBR1:=DYNAINFO(7)<HHV(H,TENTERBARS+1)*(1-3/100);//个股回撤3%平仓   这是移动止损
VBR2:=DYNAINFO(7)<TENTERPRICE*(1-8/1000);//开仓后,下跌超过千分之8平仓   这是指低于成本止损

[此贴子已经被作者于2016/5/6 14:08:18编辑过]

--  作者:pyd
--  发布时间:2016/5/6 14:08:10
--  
这两句没问题,刚才我6楼的代码不对,我再想想。
--  作者:ecowang
--  发布时间:2016/5/6 14:10:51
--  
但我这二句很关键,就是没有起作用,还没有找到原因
--  作者:pyd
--  发布时间:2016/5/6 14:14:48
--  

开仓后14个周期振幅小于3%卖出

HH:HHV(H,TENTERBARS+1);
LL:LLV(L,TENTERBARS+1);
VBR3:=TENTERBARS+1>=14 and (HH-LL)/HH>=3%;

 

debugfile 把止损条件一个个输出,输出结果0是不满足,输出1是满足条件