以文本方式查看主题

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

--  作者:sjty
--  发布时间:2017/6/13 16:10:47
--  2次平仓问题
请教老师,我的想法是一次开仓分2次平仓,如果浮盈到100点平一半仓位,剩余部分出现趋势反转信号后全平,代码如下:

VARIABLE:flag=1;
input:手数(2,1,200,1);

持仓:=ABS(HOLDING);
if 手数>持仓 then flag:=1;
if 手数=持仓 then flag:=0;

平多条件:=....;
.
.
.  
 IF holding>0 and flag=0 and h-AVGENTERPRICE>=100*MINDIFF THEN 
       BEGIN
         sell(1,手数/2,market);
         flag:=1;
       END 

 if holding>0 and 平多条件 THEN
    BEGIN
      sell(1,0,market);
      flag:=0;
    END  

静态回测开仓没问题,但是平仓会在满足浮盈100点后相邻的两根k线连续平仓2次。请老师帮忙看下是什么问题,谢谢!!!

--  作者:pyd
--  发布时间:2017/6/13 16:23:44
--  

VARIABLE:flag=0;
input:手数(2,1,200,1);

 

 IF holding>0 and flag=0 and h-AVGENTERPRICE>=100*MINDIFF THEN
       BEGIN
         sell(1,手数/2,market);
         flag:=1;
       END


 if holding>0 and flag=1 and 平多条件 THEN
    BEGIN
      sell(1,0,market);
      flag:=0;
    END 

[此贴子已经被作者于2017/6/13 16:24:27编辑过]

--  作者:sjty
--  发布时间:2017/6/13 16:30:38
--  
我的想法是如果浮盈没到100点就出现趋势信号反转,就先执行全平的命令,这样会满足不了flag=1的条件
--  作者:sjty
--  发布时间:2017/6/13 16:39:16
--  
谢谢,刚试了下,不用全局变量每次判断持仓和开仓是否相等,这样好像能解决问题