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


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

   

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


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

主题:重复开仓的问题

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


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/5 17:34:34    Post IP:59.57.170.79[只看该作者]

 

INPUT:Buy_START(8900,1,25000,1),Buy_STEP(20,1,500,1),Buy_END(9000,1,25000,1),Buy_SS(1,1,6,1);

INPUT:Sell_START(8080,1,25000,1),Sell_STEP(30,1,500,1),Sell_END(8170,1,25000,1),Sell_SS(1,1,6,1);

 

INPUT:CS_con(25,1,500,1),CS_sell(10,1,500,1);//,CS_num(1,1,500,1);//条件单价位及卖单价位计算值
INPUT:MAX_hold(10,1,30,1);

INPUT:Myopentime(085400,083000,240000,1);//;,X(20,1,100,1),SS(1,1,10000,1);
INPUT:NMIN(2,1,100,1);//;,X(20,1,100,1),SS(1,1,10000,1);
INPUT:Mydebug(1,0,1,1);

//X周期高点:=REF(HHV(H,X),1);//X是参数,自行调整
//X周期低点:=REF(LLV(L,X),1);
//手数:=SS;

VARIABLE:Num_p0=(Buy_END-Buy_START)/Buy_STEP+1;

VARIABLE:SNum_p0=(Sell_END-Sell_START)/Sell_STEP+1;

VARIABLE:I_tmp=0,S_tmp=0,S_tmp1=0;
VARIABLE:Buy_point[Num_p0]=0,Buy_point1[Num_p1]=0,Buy_point2[Num_p2]=0;//买点
VARIABLE:B_price[Num_p0]=0,B_price1[Num_p1]=0,B_price2[Num_p2]=0;//成交价

VARIABLE:B_flag[Num_p0]=0,B_flag1[Num_p1]=0,B_flag2[Num_p2]=0;//买点标记
VARIABLE:S_point[SNum_p0]=0,S_point1[SNum_p1]=0,S_point2[SNum_p2]=0;//卖点
VARIABLE:CB_flag[Num_p0]=0,CB_flag1[Num_p1]=0,CB_flag2[Num_p2]=0;//基于买点的条件单标记
VARIABLE:S_flag[SNum_p0]=0,S_flag1[SNum_p1]=0,S_flag2[SNum_p2]=0;//卖点标记
VARIABLE:B_NUM=0;//买的总量的标记
VARIABLE:Add_flag=0,CAdd_flag=0;//补仓及补仓条件单标记
VARIABLE:Is_debug=1,Is_log=1;

my_closetime:=190000;
开仓时间:=TIME>Myopentime AND TIME<my_closetime-NMIN*100;// AND TIME>083000;//防止参数异常,写两遍开仓时间,开仓时间:=TIME>OPENTIME(1)-200 AND TIME<150000-NMIN*100;
平仓时间:=TIME>=my_closetime-NMIN*100;
Ttmp:=TIME;
Ttmp1:=150000-NMIN*100;
{NMIN为参数,CLOSETIME(0)-NMIN*100表示 收盘时间-提前N分钟 N由NMIN控制}

开多平空条件:=开仓时间 AND ISLASTBAR;
开空平多条件:=开仓时间 AND ISLASTBAR;
IF Mydebug=1 THEN BEGIN
开多平空条件:=开仓时间;
开空平多条件:=开仓时间;

END


//信号闪烁处理
 //信号闪烁处理
 kkkttt:=REF(B_NUM,1);
 IF REF(B_NUM,1)>0 AND REF(B_NUM,1)<B_NUM THEN BEGIN
     IF Is_debug=1 THEN  MSGOUT(TRUE,'序列位置:'&numtostr(BARPOS,0)&'信号闪烁退出,持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0));
 EXIT;
 END
 IF REF(B_NUM,1)<=0 AND ABS(HOLDING)>0 THEN BEGIN
     IF Is_debug=1 THEN  MSGOUT(TRUE,'序列位置:'&numtostr(BARPOS,0)&'信号闪烁退出,持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0));
 EXIT;
 END

 


//三区间买初始化
FOR I_tmp=1 TO Num_p0 DO BEGIN
// S:=S+VAR1[J];
 IF Buy_point[I_tmp]<=0 THEN
Buy_point[I_tmp]:=Buy_START+(I_tmp-1)*Buy_STEP;

END;


//卖点初始化
FOR I_tmp=1 TO SNum_p0 DO BEGIN
// S:=S+VAR1[J];
 IF S_point[I_tmp]<=0 THEN
S_point[I_tmp]:=Sell_START+(I_tmp-1)*Sell_STEP;
END;


 

nettmp:=OPENPROFIT;
IF nettmp>=0 AND 平仓时间 AND holding<0 THEN BEGIN

收盘平空:sellshort(平仓时间 and holding<0,0,MARKET);
EXIT;
END
//区间0 开空
//如果持仓超过10手,退出


FOR I_tmp=1 TO Num_p0 DO BEGIN


 IF 开空平多条件 AND LOW>=Buy_point[I_tmp] AND B_flag[I_tmp]<=0 AND B_NUM<MAX_hold and ABS(holding)<MAX_hold  THEN BEGIN
  //IF 开空平多条件 AND LOW>=Buy_point[I_tmp] AND B_flag[I_tmp]<=0 AND B_NUM<MAX_hold and ABS(holding)<MAX_hold AND ABS(holding)<=B_NUM THEN BEGIN
  b_tmpp:=Buy_SS;
 //开单量不能超过最大MAX_hold
 IF b_tmpp+ABS(holding)>MAX_hold THEN b_tmpp:=ABS(MAX_hold-ABS(holding));
 
   IF b_tmpp+B_NUM>MAX_hold THEN b_tmpp:=ABS(MAX_hold-B_NUM);//买单量不能超过最大值
 
   S_tmp:=HOLDING;
 
 //开空
    IF b_tmpp>0 AND b_tmpp<ABS(MAX_hold) THEN BEGIN 
      //开空:buyshort(1,b_tmpp,LIMITR,OPEN);//MARKET);//limitr,X周期低点);
      开空:buyshort(1,b_tmpp,MARKET);//LIMITR,OPEN);//MARKET);//limitr,X周期低点);
      B_NUM:=B_NUM+1;     
  // END
     //IF HOLDING<>S_tmp THEN BEGIN
      B_price[I_tmp]:=ENTERPRICE;
      B_flag[I_tmp]:=1;
      //输出调试信息
    IF Is_debug=1 THEN  MSGOUT(TRUE,'序列位置:'&numtostr(BARPOS,0)&',开空数:'&numtostr(b_tmpp,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(Buy_point[I_tmp],0)&',标志位:'&numtostr(B_flag[I_tmp],0));
    IF Is_log=1 THEN DEBUGFILE('C:\myTEST.TXT','序列位置:'&numtostr(BARPOS,0)&',开空数:'&numtostr(b_tmpp,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(Buy_point[I_tmp],0)&',标志位:'&numtostr(B_flag[I_tmp],0),0);
     END
 
         IF ABS(HOLDING)>=MAX_hold THEN BEGIN
        MSGOUT(TRUE,'警告:持仓达到上限,停止开空!');//NOAXIS,COLORGRAY;警告:"持仓达到上限,停止开空!";
        SENDPHONEMSG('警告:持仓达到上限,停止开空!',1);
      END

 END
END


 //开条件单处理:开空:A点开空,当现价小于等A-55,在>=A-35平空.CS_con(55,1,500,1),CS_sell
  //区间0平空条件单处理:开空:A点开空,当现价小于等A-55,在>=A-35平空.CS_con(55,1,500,1),CS_sell
 FOR I_tmp=1 TO Num_p0 DO BEGIN

 IF B_flag[I_tmp]>0 AND CB_flag[I_tmp]<>1 AND 开多平空条件 THEN BEGIN
 // S_tmp:=HOLDING;
 //IF OPEN<=(Buy_point[I_tmp]-CS_con) THEN BEGIN
 IF HIGH<=(B_price[I_tmp]-CS_con) THEN BEGIN

 //平空:buyshort(开空平多条件 and DYNAINFO(7)<=Buy_point[I_tmp] and holding<=10,手数,MARKET);//limitr,X周期低点);
  C平空:sellshort(holding<0, Buy_SS,STOPR,(B_price[I_tmp]-CS_sell)),IGNORECHECKPRICE;
 //C平空:sellshort(开多平空条件 and holding<0, Buy_SS,LIMITR,(Buy_point[I_tmp]-CS_sell));
  CB_flag[I_tmp]:=1;
   //输出调试信息
      IF Is_debug=1 and ISLASTBAR THEN  MSGOUT(TRUE,'序列位置:'&numtostr(BARPOS,0)&',条件平空单数:'&numtostr(Buy_SS,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(B_price[I_tmp],0));
    IF Is_log=1 THEN DEBUGFILE('C:\myTEST.TXT','序列位置:'&numtostr(BARPOS,0)&',条件平空挂单数:'&numtostr(Buy_SS,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(B_price[I_tmp],0),0);

   END
 END
END
 
/////////////////////////平空
 //区间0平空

FOR I_tmp=1 TO SNum_p0 DO BEGIN

 IF S_flag[I_tmp]=0 and holding<0 AND 开多平空条件 THEN BEGIN
  S_tmp:=HOLDING;
 
 //平空:buyshort(开空平多条件 and DYNAINFO(7)<=Buy_point[I_tmp] and holding<=10,手数,MARKET);//limitr,X周期低点);
 平空:sellshort(HIGH<=S_point[I_tmp], Sell_SS,MARKET),IGNORECHECKPRICE;//LIMITR,OPEN);//S_point[I_tmp]);
 //IF 平空>0 THEN
  IF HOLDING<>S_tmp THEN BEGIN
 //B_flag[I_tmp]:=0;
  S_flag[I_tmp]:=1;
   //输出调试信息
      IF Is_debug=1 THEN  MSGOUT(TRUE,'序列位置:'&numtostr(BARPOS,0)&',平空数:'&numtostr(Sell_SS,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(S_point[I_tmp],0));
      IF Is_log=1 THEN DEBUGFILE('C:\myTEST.TXT','序列位置:'&numtostr(BARPOS,0)&',平空数:'&numtostr(Buy_SS2,0)&',成交价:'&numtostr(ENTERPRICE,0)&',持仓:'&numtostr(HOLDING,0)&',浮动盈亏:'&numtostr(OPENPROFIT,0)&',总买单数:'&numtostr(B_NUM,0)&',资产:'&numtostr(ASSET,0)&',实时:'&numtostr(ISLASTBAR,0)&',触发价格:'&numtostr(S_point[I_tmp],0),0);

  END
 END
END

 

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值
盈亏:OPENPROFIT,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值


 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  32楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/5 17:40:02    Post IP:59.57.170.79[只看该作者]

 

INPUT:Buy_START(8900,1,25000,1),Buy_STEP(20,1,500,1),Buy_END(9000,1,25000,1),Buy_SS(1,1,6,1);

INPUT:Sell_START(8080,1,25000,1),Sell_STEP(30,1,500,1),Sell_END(8170,1,25000,1),Sell_SS(1,1,6,1);

 

INPUT:CS_con(25,1,500,1),CS_sell(10,1,500,1);//,CS_num(1,1,500,1);//条件单价位及卖单价位计算值
INPUT:MAX_hold(10,1,30,1);

INPUT:Myopentime(085400,083000,240000,1);//;,X(20,1,100,1),SS(1,1,10000,1);
INPUT:NMIN(2,1,100,1);//;,X(20,1,100,1),SS(1,1,10000,1);
INPUT:Mydebug(1,0,1,1);

//X周期高点:=REF(HHV(H,X),1);//X是参数,自行调整
//X周期低点:=REF(LLV(L,X),1);
//手数:=SS;

VARIABLE:Num_p0=(Buy_END-Buy_START)/Buy_STEP+1;

VARIABLE:SNum_p0=(Sell_END-Sell_START)/Sell_STEP+1;

VARIABLE:I_tmp=0,S_tmp=0,S_tmp1=0;
VARIABLE:Buy_point[Num_p0]=0;//买点
VARIABLE:B_price[Num_p0]=0;//成交价

VARIABLE:B_flag[Num_p0]=0;//买点标记
VARIABLE:S_point[SNum_p0]=0;//卖点
VARIABLE:CB_flag[Num_p0]=0;//基于买点的条件单标记
VARIABLE:S_flag[SNum_p0]=0;//卖点标记
VARIABLE:B_NUM=0;//买的总量的标记


my_closetime:=190000;
开仓时间:=TIME>Myopentime AND TIME<my_closetime-NMIN*100;// AND TIME>083000;//防止参数异常,写两遍开仓时间,开仓时间:=TIME>OPENTIME(1)-200 AND TIME<150000-NMIN*100;
平仓时间:=TIME>=my_closetime-NMIN*100;
Ttmp:=TIME;
Ttmp1:=150000-NMIN*100;
{NMIN为参数,CLOSETIME(0)-NMIN*100表示 收盘时间-提前N分钟 N由NMIN控制}

开多平空条件:=开仓时间 AND ISLASTBAR;
开空平多条件:=开仓时间 AND ISLASTBAR;
IF Mydebug=1 THEN BEGIN
开多平空条件:=开仓时间;
开空平多条件:=开仓时间;

END

 


 //信号闪烁处理
 kkkttt:=REF(B_NUM,1);
 IF REF(B_NUM,1)>0 AND REF(B_NUM,1)<B_NUM THEN BEGIN
 EXIT;
 END
 IF REF(B_NUM,1)<=0 AND ABS(HOLDING)>0 THEN BEGIN
 EXIT;
 END

 


//区间买初始化
FOR I_tmp=1 TO Num_p0 DO BEGIN
// S:=S+VAR1[J];
 IF Buy_point[I_tmp]<=0 THEN
Buy_point[I_tmp]:=Buy_START+(I_tmp-1)*Buy_STEP;

END;


//卖点初始化
FOR I_tmp=1 TO SNum_p0 DO BEGIN
// S:=S+VAR1[J];
 IF S_point[I_tmp]<=0 THEN
S_point[I_tmp]:=Sell_START+(I_tmp-1)*Sell_STEP;
END;


 

nettmp:=OPENPROFIT;
IF nettmp>=0 AND 平仓时间 AND holding<0 THEN BEGIN

收盘平空:sellshort(平仓时间 and holding<0,0,MARKET);
EXIT;
END
//区间0 开空
//如果持仓超过10手,退出


FOR I_tmp=1 TO Num_p0 DO BEGIN


 IF 开空平多条件 AND LOW>=Buy_point[I_tmp] AND B_flag[I_tmp]<=0 AND B_NUM<MAX_hold and ABS(holding)<MAX_hold  THEN BEGIN
  //IF 开空平多条件 AND LOW>=Buy_point[I_tmp] AND B_flag[I_tmp]<=0 AND B_NUM<MAX_hold and ABS(holding)<MAX_hold AND ABS(holding)<=B_NUM THEN BEGIN
  b_tmpp:=Buy_SS;
 //开单量不能超过最大MAX_hold
 IF b_tmpp+ABS(holding)>MAX_hold THEN b_tmpp:=ABS(MAX_hold-ABS(holding));
 
   IF b_tmpp+B_NUM>MAX_hold THEN b_tmpp:=ABS(MAX_hold-B_NUM);//买单量不能超过最大值
 
   S_tmp:=HOLDING;
 
 //开空
    IF b_tmpp>0 AND b_tmpp<ABS(MAX_hold) THEN BEGIN 
      //开空:buyshort(1,b_tmpp,LIMITR,OPEN);//MARKET);//limitr,X周期低点);
      开空:buyshort(1,b_tmpp,MARKET);//LIMITR,OPEN);//MARKET);//limitr,X周期低点);
      B_NUM:=B_NUM+1;     
  // END
     //IF HOLDING<>S_tmp THEN BEGIN
      B_price[I_tmp]:=ENTERPRICE;
      B_flag[I_tmp]:=1;
      //输出调试信息
     END
 
         IF ABS(HOLDING)>=MAX_hold THEN BEGIN
        MSGOUT(TRUE,'警告:持仓达到上限,停止开空!');//NOAXIS,COLORGRAY;警告:"持仓达到上限,停止开空!";
        SENDPHONEMSG('警告:持仓达到上限,停止开空!',1);
      END

 END
END


 //开条件单处理
  //区间0平空条件单处理
 FOR I_tmp=1 TO Num_p0 DO BEGIN

 IF B_flag[I_tmp]>0 AND CB_flag[I_tmp]<>1 AND 开多平空条件 THEN BEGIN
 // S_tmp:=HOLDING;
 //IF OPEN<=(Buy_point[I_tmp]-CS_con) THEN BEGIN
 IF HIGH<=(B_price[I_tmp]-CS_con) THEN BEGIN

 //平空:buyshort(开空平多条件 and DYNAINFO(7)<=Buy_point[I_tmp] and holding<=10,手数,MARKET);//limitr,X周期低点);
  C平空:sellshort(holding<0, Buy_SS,STOPR,(B_price[I_tmp]-CS_sell)),IGNORECHECKPRICE;
 //C平空:sellshort(开多平空条件 and holding<0, Buy_SS,LIMITR,(Buy_point[I_tmp]-CS_sell));
  CB_flag[I_tmp]:=1;
   //输出调试信息

   END
 END
END
 
/////////////////////////平空
 //区间0平空

FOR I_tmp=1 TO SNum_p0 DO BEGIN

 IF S_flag[I_tmp]=0 and holding<0 AND 开多平空条件 THEN BEGIN
  S_tmp:=HOLDING;
 
 //平空:buyshort(开空平多条件 and DYNAINFO(7)<=Buy_point[I_tmp] and holding<=10,手数,MARKET);//limitr,X周期低点);
 平空:sellshort(HIGH<=S_point[I_tmp], Sell_SS,MARKET),IGNORECHECKPRICE;//LIMITR,OPEN);//S_point[I_tmp]);
 //IF 平空>0 THEN
  IF HOLDING<>S_tmp THEN BEGIN
 //B_flag[I_tmp]:=0;
  S_flag[I_tmp]:=1;
   //输出调试信息

  END
 END
END

 

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值
盈亏:OPENPROFIT,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值

[此贴子已经被作者于2015/3/5 17:41:23编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  33楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/3/6 9:14:19    Post IP:58.246.57.26[只看该作者]

你搞循环是为了实现什么目的?

弄数组又是为了目标?

比如这一段

IF Buy_point[I_tmp]<=0 THEN
Buy_point[I_tmp]:=Buy_START+(I_tmp-1)*Buy_STEP;

END;

 

 

和这一段

FOR I_tmp=1 TO SNum_p0 DO BEGIN
// S:=S+VAR1[J];
 IF S_point[I_tmp]<=0 THEN
S_point[I_tmp]:=Sell_START+(I_tmp-1)*Sell_STEP;
END;

[此贴子已经被作者于2015/3/6 9:15:30编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  34楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/6 9:25:19    Post IP:110.84.52.125[只看该作者]

我是有多个买点,到了买点就买,所以要用数组进行循环扫描每个买点。有多个卖点,到了卖点就卖。所以用循环扫描卖点

 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  35楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/6 9:26:14    Post IP:110.84.52.125[只看该作者]

现在看在同一个价格买了一单后,当价格再回到这个价格,还会在同一个买点上买入

 


 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  36楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/3/6 9:27:13    Post IP:58.246.57.26[只看该作者]

不是,你是要你解释一下上面你写这个的思路,比如第一句的那个数组是什么含义

[此贴子已经被作者于2015/3/6 9:27:42编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  37楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/6 9:29:14    Post IP:110.84.52.125[只看该作者]

感觉似乎不是信号闪烁的问题,更像全局变量没有作用

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  38楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/3/6 9:29:47    Post IP:58.246.57.26[只看该作者]

IF Buy_point[I_tmp]<=0 THEN
Buy_point[I_tmp]:=Buy_START+(I_tmp-1)*Buy_STEP;

 

就是这一句,请逐字解释一下



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  39楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/6 9:37:03    Post IP:110.84.52.125[只看该作者]

我设了一个买区间,(Buy_START(区间起点),Buy_END(区间终点)),每隔Buy_STEP=10点买一手,所以从起点开始把每个买点放到买点数组Buy_point[I_tmp]中,如果I_tmp=1,就是Buy_point[1]:=Buy_START;如果I_tmp=2,Buy_point[2]:=Buy_START+Buy_STEP;

 回到顶部
帅哥哟,离线,有人找我吗?
infocell
  40楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:152 积分:0 威望:0 精华:0 注册:2015/3/2 13:11:05
  发帖心情 Post By:2015/3/6 9:40:40    Post IP:110.84.52.125[只看该作者]

现在即使不是买区间,哪怕把起点和终点设成一样,在同一个买点上,如果实盘在买点上下波动,也会多次触发开仓。我用B_flag[I_tmp]<=0全局变量控制一个买点上只买一次,买完就置B_flag[I_tmp]:=1;,在实盘中似乎不起作用,模拟测试没有问题。使用固定间隔扫描,间隔1秒。

 回到顶部
总数 90 上一页 1 2 3 4 5 6 7 8 9 下一页