欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 编写问题求教

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有1890人关注过本帖树形打印复制链接

主题:编写问题求教

帅哥哟,离线,有人找我吗?
zengxing
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:505 积分:0 威望:0 精华:0 注册:2014/10/15 13:12:08
编写问题求教  发帖心情 Post By:2017/12/7 17:56:42    Post IP:121.69.48.154[只看该作者]

我想编写
一个完整交易日内(包括夜盘),多头止损后价格再次突破30周期高点继续买开,如再次止损后 当天不再交易。
一个完整交易日内(包括夜盘),空头止损后价格再次跌破20周期低点继续卖开,如再次止损后 当天不再交易。
但编写如下,为什么不能过滤呢?每天还开2次以上。

改完了还是不对呀,一天之中,如果止损两次了,还是会开仓呀?求教,可以加载帮我看看嘛?谢谢老师



VARIABLE:mark=0;
VARIABLE:mark2=0;

atrx:=2;
手数:=1;

hh:hhv(ref(h,1),30);
ll:llv(ref(l,1),20);


aa:BARSLAST(c>hh and holding=0)+1;
bb:BARSLAST(c<ll and holding=0)+1;







TR1:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR1,14);



zhis1:=ref(low,aa)>low  and holding>0;
zhis2:=ref(h,aa)<h  and holding<0;
if ref(low,aa)>low  and holding>0 then sell(1,holding,LIMIT,c);
if ref(h,aa)<h  and holding<0 then SELLSHORT(1,holding,LIMIT,c);

tq:=3;  
abb:=(time0-TIMETOT0(DYNAINFO(207))<=tq) or not(ISLASTBAR);


zhiy1:(AVGENTERPRICE-c)>ATR*atrx and HOLDING<0;
zhiy2:(C-AVGENTERPRICE)>ATR*atrx and HOLDING>0;
平空:SELLSHORT((AVGENTERPRICE-c)>ATR*atrx and HOLDING<0,手数,MARKET);
平多:SELL((C-AVGENTERPRICE)>ATR*atrx and HOLDING>0,手数,MARKET);



if ref(low,aa)>low  and holding>0 then 
begin
mark:=mark+1;
end
if c>=hh and holding=0 and mark<2 then 
begin
开多:BUY(c>=hh and holding=0,手数,MARKET);
end
if time>=closetime(0) then mark:=0;

if  ref(h,aa)<h  and holding<0 then 
begin
mark2:=mark2+1;
end
if c<=ll and holding=0 and mark2<2 then 
begin
开空:BUYSHORT(c<=ll and holding=0,手数,MARKET);
end
if time>=closetime(0) then mark2:=0;



 回到顶部