以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  限定开仓时间跟 平仓时间的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=165892)

--  作者:baidus12
--  发布时间:2018/10/15 18:49:08
--  限定开仓时间跟 平仓时间的问题
平仓时间:=time>( 144000 or 224000);

IF HOLDING>0 THEN BEGIN
 IF 平多条件 and 平仓时间 THEN BEGIN  {平多单}
  多平:SELL(1,0,MARKET),ORDERQUEUE;
  ct:=ct+NUMPROFIT(1);//只在有平仓时候进行平仓盈亏的累计
 END
为什么他在15:00 之前不平仓呢   是我代码有问题???
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20181015184612.png
图片点击可在新窗口打开查看

--  作者:wenarm
--  发布时间:2018/10/15 21:23:35
--  
平多条件 and 平仓时间
两个条件都成立才会平仓,你平多条件不成立自然不会平仓。
如果你日内盘尾平仓,条件不能合并,需要单独处理。
if 平仓时间 then begin
    平仓语句;
end

另外:你这个条件逻辑不对,平仓时间:=time>( 144000 or 224000);
过了144000后,条件恒成立,夜盘会开仓后就平仓。

--  作者:baidus12
--  发布时间:2018/10/16 10:47:20
--  
以下是引用wenarm在2018/10/15 21:23:35的发言:


另外:你这个条件逻辑不对,平仓时间:=time>( 144000 or 224000);
过了144000后,条件恒成立,夜盘会开仓后就平仓。

那请问一下想在 下午收盘平仓 跟晚上11点前平仓代码该如何写呢
需要分两条语句吗?


--  作者:baidus12
--  发布时间:2018/10/16 10:53:18
--  
if time>=144000 or time>=224000 then
 begin
 sellshort(holding<0,0,thisclose);
 sell(holding>0,0,thisclose);
 end

这样写对不对呢

--  作者:FireScript
--  发布时间:2018/10/16 11:04:29
--  
 time>=144000 or time>=224000 

1.上面这2个时间都是北京时间,金字塔上判断的是金字塔时间,如果对这个时区不清楚可以看下:
  • http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=87464&page=1&star=1
  • 2.写成时间段形式才能保证逻辑完整。。

    (time>=184000 and time<=170000) or (time>24000 and time<=30000)