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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 金字塔 qq 发送消息里面的DLL 是不是对 策略使用的数目有限制?

   

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


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

主题:金字塔 qq 发送消息里面的DLL 是不是对 策略使用的数目有限制?

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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
金字塔 qq 发送消息里面的DLL 是不是对 策略使用的数目有限制?  发帖心情 Post By:2016/3/31 6:19:46    Post IP:60.22.173.245[显示全部帖子]

求问下,金字塔 qq 发送消息里面的 WWSCommon.dll  是不是对 策略使用  的数目有限制?

 

之前我在3个策略 代码里面 添加了 qq 发送消息 的代码都正常,当我使用同样方法在 添加在 后面几个策略 里面,QQ发消息 只是显示

        

 交易系统信号发布   2016/3/31 0:30:15
 信号 PR 14180.00000 OB 14180.00000 OS 14180.00000
 该消息由金字塔交易决策系统提供。

 

交易系统信号发布   2016/3/31 0:07:12
 信号 PR 778.00000 OB 778.00000 OS 775.50000
 该消息由金字塔交易决策系统提供。

 

而且每走完一根K线发送一次,不是 按正常发送的。

 

 

 

买卖 代码 都是相同的(包括里面插入的QQ发消息代码,我直接从可以正常发的里面贴过来的),不同的只是开仓和平仓条件,就是问下金字塔 qq 发送消息里面的DLL 是不是对 策略使用的数目有限制?

 

以下是 代码

runmode:0;
INPUT:N1(0.09,0.01,1,0.01),M(10,1,60,5);
INPUT:atrlength(20,5,30,5);
INPUT:riskratio(10,1,30,1);//资金账户风险度

VARIABLE:times=0;//进场次数
GLOBALVARIABLE:bb=0;

ATR2:=ref(EMA(tr,20),1);
上轨:=ref(C,1)+(1.5*ATR2);
下轨:=ref(C,1)-(1.5*ATR2);


ATR:=ref(ma(tr,atrlength),1);//波动率
marginratio:=10/100;//保证金率
name:=STKNAME;//返回品种名称


多单止损价:=ENTERPRICE-(1.5*ATR);
空单止损价:=ENTERPRICE+(1.5*ATR);
多头止损条件:=close<多单止损价;
空头止损条件:=close>空单止损价;


 

H30:=REF(HHV(H,M),1);
L30:=REF(LLV(L,M),1);
MID:=(H30+L30)/2;


开多条件1:=(high>H30) AND (H30-MID)/MID<N1;
开空条件1:=(low<L30) AND (MID-L30)/MID<N1;

 

开多条件2:=C>上轨;
开空条件2:=C<下轨;


开多条件:=开多条件1 and 开多条件2;
开空条件:=开空条件1 and 开空条件2;

 

平多条件:=C<下轨;
平空条件:=C>上轨;


if islastbar and bb<>barpos and not(开多条件) and not(开空条件)  and not(平多条件) and not(平空条件) then
  begin
     bb:= barpos;
     extgbstringSet('QQSTR','PR '+numtostr(close,5) + ' OB '+numtostr(h,5)+' OS '+numtostr(l,5) );
     VQQM:=QQMSGX(1,close);
   end
 
      
if HOLDING=0 then  BEGIN//开多单
   price:=0;
   lots:=0;
   if 开多条件 then
       price:=max(open,上轨);
    if price>0 then begin
       当前资金:=CASH(0);
        lots1:=INTPART(当前资金/(price*MULTIPLIER*marginratio));//资金允许可开最大手数
        lots2:=INTPART((当前资金*riskratio/100)/(ATR*MULTIPLIER));//每一手下单量
        lots:=max(1,min(lots1,lots2));
      end
       if lots>=1 then BEGIN
         buy(1,lots,LIMITR,price);
          PLAYSOUND(1,'D:\Program Files (x86)\Sound\KM.wav');
          times:=1;
        if islastbar and bb<>barpos then begin
          bb:= barpos;
          extgbstringSet('QQSTR','波动突破,开多▲▲▲:'+STKNAME);
         VQQM:=QQMSGX(1,close);
         end
      end
  end      
      

      
if holding>0 then BEGIN//多加仓
     while high>=enterprice+(ATR/2) and times<4  do begin
        PRICE:=min(open,enterprice+(ATR/2));
          lots:=0;
   if price>0 then begin
       当前资金:=CASH(0);
        lots1:=INTPART(当前资金/(price*MULTIPLIER*marginratio));//资金允许可开最大手数
        lots2:=INTPART((当前资金*riskratio/100)/(ATR*MULTIPLIER));//每一手下单量
        lots:=max(1,min(lots1,lots2));
     end
       if lots>=1 then BEGIN
      buy(1,lots,LIMITR,PRICE);
      times:=TIMES+1;
       end
   end
 end
 

 

if HOLDING=0 then BEGIN//开空单
   price:=0;
   lots:=0;
   if 开空条件 then
       price:=min(open,下轨);
    if price>0 then begin
       当前资金:=CASH(0);
        lots1:=INTPART(当前资金/(price*MULTIPLIER*marginratio));//资金允许可开最大手数
        lots2:=INTPART((当前资金*riskratio/100)/(ATR*MULTIPLIER));//每一手下单量
        lots:=max(1,min(lots1,lots2));
      end
      if lots>=1 then BEGIN
      buyshort(1,lots,LIMITR,PRICE);
       PLAYSOUND(1,'D:\Program Files (x86)\Sound\KM.wav');
        times:=1;
         if islastbar and bb<>barpos then begin
           bb:= barpos;
              extgbstringSet('QQSTR','波动突破,开空▼▼▼:'+STKNAME);
             VQQM:=QQMSGX(1,close);
           end
      end    
  end


 

if holding<0 then BEGIN//空加仓
     while low<=enterprice-(ATR/2) and times<4  do begin
        PRICE:=max(open,enterprice-(ATR/2));
          lots:=0;
   if price>0 then begin
       当前资金:=CASH(0);
        lots1:=INTPART(当前资金/(price*MULTIPLIER*marginratio));//资金允许可开最大手数
        lots2:=INTPART((当前资金*riskratio/100)/(ATR*MULTIPLIER));//每一手下单量
        lots:=max(1,min(lots1,lots2));
     end
       if lots>=1 then BEGIN
      buyshort(1,lots,LIMITR,PRICE);
      times:=TIMES+1;
       end
   end
 end

 

 
if holding >0 then begin //平多单+平止损
     PRICE:=0;
   if  平多条件 then 
    price:=min(open,下轨);
    if 多头止损条件 and enterbars>=1 then
    pirce:=max(open,多单止损价);
    if price>0 then begin
      sell(1,HOLDING,LIMITR,PRICE);
       PLAYSOUND(1,'D:\Program Files (x86)\Sound\JB2.wav');
      if islastbar and bb<>barpos then begin
       bb:= barpos;
      extgbstringSet('QQSTR','波动突破,平多●●●:'+STKNAME);
       VQQM:=QQMSGX(1,close);
        end
     end
 end


 
 
if holding <0 then begin //平空单+平止损
     PRICE:=0;
   if 平空条件 then 
    price:=max(open,上轨);
   if 空头止损条件 and enterbars>=1 then
    pirce:=min(open,空单止损价);
    if price>0 then begin
     sellshort(1,HOLDING,LIMITR,PRICE);
     PLAYSOUND(1,'D:\Program Files (x86)\Sound\JB2.wav');
     if islastbar and bb<>barpos then begin
      bb:= barpos;
      extgbstringSet('QQSTR','波动突破,平空◎◎◎:'+STKNAME);
       VQQM:=QQMSGX(1,close);
        end  
     end    
end

 
   
 资产:asset,noaxis,COLORGRAY;
 //次数:totaltrade,linethick0;
 收益:(asset-1000000)/1000000,linethick0;
 胜率:percentwin,linethick0;
 出击:totaltrade/(count(date<>ref(date,1),0)+1),linethick0;
 连亏:maxseqloss,linethick0;
 连赢:maxseqwin,linethick0;
 持仓:holding,linethick0;
可用现金:cash(0),linethick0;
 

 

 

 

 


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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/3/31 17:21:11    Post IP:60.22.173.245[显示全部帖子]

“正常发送” 的意思是 有出现 买 和 卖的信号的时候 发出QQ消息内容啊

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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/3/31 17:22:07    Post IP:60.22.173.245[显示全部帖子]

这个 好像 每走完 一根K线  都会 发送一次

,而且是类似

交易系统信号发布   2016/3/31 0:07:12
 信号 PR 778.00000 OB 778.00000 OS 775.50000
 该消息由金字塔交易决策系统提供。

 

看不明白


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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/3/31 19:19:08    Post IP:60.22.173.245[显示全部帖子]

好像不行,还是 每走完一根K线 就发消息,并不是 有信号 就发出消息。还是发出以下内容
 
 
 交易系统信号发布   2016/3/31 19:15:04
 信号 PR 38.30000 OB 38.30000 OS 38.28000
 该消息由金字塔交易决策系统提供。

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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/4/1 16:26:28    Post IP:60.22.173.245[显示全部帖子]

代码参考:http://www.weistock.com/bbs/dispbbs.asp?boardid=5&ID=11344

 

金字塔公式中:

GLOBALVARIABLE: bb=0;

 

VBuy:l<=o;
VSell:h>=o;
   
if islastbar and bb<>barpos and not(VBuy) and not(VSell) then
  begin
     bb:= barpos;
     extgbstringSet('QQSTR','PR '+numtostr(close,5) + ' OB '+numtostr(h,5)+' OS '+numtostr(l,5) );
     VQQM:=QQMSGX(1,close);
   end
      
if VBuy then
begin
  buy(1,1,limitr,c);       {开多}
  if islastbar and bb<>barpos then
   begin
      bb:= barpos;
      extgbstringSet('QQSTR','1分钟超卖,尝试开多:'+numtostr(close,5));
      VQQM:=QQMSGX(1,close);
   end
end;


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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/4/1 16:42:47    Post IP:60.22.173.245[显示全部帖子]

恩~好~试一下

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


加好友 发短信
等级:新手上路 帖子:28 积分:0 威望:0 精华:0 注册:2016/2/21 14:16:08
  发帖心情 Post By:2016/4/5 21:14:44    Post IP:60.22.174.123[显示全部帖子]

恩~版主 说的对

删去

“if islastbar and bb<>barpos and not(开多条件) and not(开空条件)  and not(平多条件) and not(平空条件) then
  begin
     bb:= barpos;
     extgbstringSet('QQSTR','PR '+numtostr(close,5) + ' OB '+numtostr(h,5)+' OS '+numtostr(l,5) );
     VQQM:=QQMSGX(1,close);
   end"

 此段代码,就好了~

谢谢 版主!


 回到顶部