以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  求组:一天只想只做一次多空反转,不知道问题出哪里,谢谢  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=184383)

--  作者:幸运60
--  发布时间:2021/2/25 14:50:54
--  求组:一天只想只做一次多空反转,不知道问题出哪里,谢谢
VARIABLE:CS=0; 
 
 IF (DATE<>REF(DATE,1)) OR BARPOS=1  THEN BEGIN
   CS:=0; 
KDPK:= BUYCOND  AND CS=0; 


IF  KDPK  THEN BEGIN
  SELLSHORT(KDPK AND HOLDING<=0,手数,MARKETR),ORDERQUEUE;
  BUY(KDPK  AND HOLDING<=0,手数,MARKETR),ORDERQUEUE;
  CS:=1;
END 
=====================
一天只想只做一次多空反转,这样写不知道问题出哪里,谢谢老师

--  作者:FireScript
--  发布时间:2021/2/25 14:57:24
--  
 你现在的问题是怎样的?不止一次平仓反手?
--  作者:幸运60
--  发布时间:2021/2/25 15:02:00
--  
我当天,平多翻空,不开仓
--  作者:幸运60
--  发布时间:2021/2/25 15:03:21
--  
IF  KDPK  THEN BEGIN
  SELLSHORT(KDPK AND HOLDING<=0,手数,MARKETR),ORDERQUEUE;
  BUY(KDPK  AND HOLDING<=0,手数,MARKETR),ORDERQUEUE;
  CS:=1;
END 

IF  PDKK THEN BEGIN
 SELL(PDKK AND HOLDING>=0,手数,MARKETR),ORDERQUEUE;
 BUYSHORT(PDKK AND HOLDING>=0,手数,MARKETR),ORDERQUEUE;
  CS:=1;
END 

--  作者:幸运60
--  发布时间:2021/2/25 15:04:53
--  
这是整个开平仓部分
--  作者:FireScript
--  发布时间:2021/2/25 15:08:00
--  
 就是现在只平仓不反手?
--  作者:幸运60
--  发布时间:2021/2/25 15:10:57
--  
多翻空,没信号
--  作者:FireScript
--  发布时间:2021/2/25 15:14:28
--  
 是不是在日内前面触发过一次平空开多了?如果是的话,后面PDKK 是无法满足的。因为cs这时候已经变成1了。
你最好用2个全局变量,一个控制平多开空,一个控制平空开多。

--  作者:幸运60
--  发布时间:2021/2/25 15:17:31
--  
好,前面没信号,我用两个全局变量试试,谢谢老师