您現在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔知識>>正文內容

請問金字塔客服如何將這段策略放到VBA里面用 [金字塔]

  • 咨詢內容:

    sub marketdata_reportnotify(reportdata) 
      dim multiplier
      dim mintick
      dim shortpercent
      dim longpercent
     
      dim buyhoding
      dim buytodayhoding
      dim sellhoding
      dim selltodayhoding
      dim buycost
      dim sellcost
      dim pnl
      dim usemargin
        
      dim orderid1
      dim consign1
      dim filled1
      dim remaining1
      dim ordertype1
      dim lmtprice1 
      
      dim orderid2
      dim consign2
      dim filled2
      dim remaining2
      dim ordertype2
      dim lmtprice2
      
       dim orderid3
      dim consign3
      dim filled3
      dim remaining3
      dim ordertype3
      dim lmtprice3
      
      dim orderid4
      dim consign4
      dim filled4
      dim remaining4
      dim ordertype4
      dim lmtprice4  
     
      lots=1
      account="888888" 
      
      code=reportdata.label
      market=reportdata.marketname
      
      t0=code&"_trend0"
      t1=code&"_trend1"
      
      mybarpos=code&"_barpos"  
      
      set md=marketdata.getminutedata(code,market)
      
      barpos=md.count-1
      
      if barpos<=document.getextdata(mybarpos) then 
      exit sub
      end if
      
      call document.setextdata(mybarpos,barpos)
      
      call document.setextdata(t1,document.getextdata(t0))
      
      if md.newprice(barpos)>md.newprice(barpos-1) then 
       call document.setextdata(t0,1)
      end if
      
      if md.newprice(barpos)<md.newprice(barpos-1) then 
       call document.setextdata(t0,-1)
      end if
     
      entrylongcond=document.getextdata(t0)=1 and document.getextdata(t1)=1 and md.newprice(barpos)>md.newprice(barpos-1)
      entryshortcond=document.getextdata(t0)=-1 and document.getextdata(t1)=-1 and md.newprice(barpos)<md.newprice(barpos-1)

    '  sleeptime=2
    '  
    '  actiontime=code&"_actiontime"
    '  
    '  if document.getextstring(actiontime)="" then 
    '    actiondiff=sleeptime
    '  else
    '    actiondiff=datediff("s",document.getextstring(actiontime),now)   
    '  end if 
    '  
    '  if actiondiff<sleeptime then 
    '    exit sub
    '  end if  
      
      call order.contract(code,market,multiplier,mintick,shortpercent,longpercent)
      call order.holdinginfobycode2(code,market,buyholding,buycost,buytodayholding,sellholding,sellcost,selltodayholding,pnl,usemargin,account)    

      call getpendingorder(orderid1,consign1,filled1,remaining1,0,ordertype1,lmtprice1,account,0,code,market)
      call getpendingorder(orderid2,consign2,filled2,remaining2,1,ordertype2,lmtprice2,account,2,code,market)
      call getpendingorder(orderid3,consign3,filled3,remaining3,1,ordertype3,lmtprice3,account,0,code,market)
      call getpendingorder(orderid4,consign4,filled4,remaining4,0,ordertype4,lmtprice4,account,2,code,market)
      
      'application.MsgOut("lmtprice1="&lmtprice1)
      application.MsgOut("lmtprice2="&lmtprice2)
      'application.MsgOut("lmtprice3="&lmtprice3)
      application.MsgOut("lmtprice4="&lmtprice4)
      
      a=orderid2>0 and md.askprice(barpos)<lmtprice2
      b=orderid4>0 and md.bidprice(barpos)>lmtprice4
      
      application.MsgOut("多頭追價:"&a )
      application.MsgOut("空頭追價:"&b )
      
      order.orderqueue=0
      
      offset=3*mintick   

      '多頭條件成立時,將賣平和賣開未成交單撤單
      if entrylongcond then
       call order.cancelorder(orderid2)
       call order.cancelorder(orderid3)
       'call document.setextstring(actiontime,now)
      end if
      
      '空頭條件成立時,將買開和買平未成交單撤單
      if entryshortcond then
       call order.cancelorder(orderid1)
       call order.cancelorder(orderid4)
       'call document.setextstring(actiontime,now)
      end if
      
      '多頭開倉
      if buyholding=0 then
       if entrylongcond then
        if orderid1=0 then
         call order.buy(0,lots,md.bidprice(barpos),0,code,market,account,0)
         'call document.setextstring(actiontime,now)
        end if
       end if 
      end if   
      
      '多頭平倉
      if buyholding>0 then   
       if entryshortcond then    
        if orderid2=0 then
         '多頭止盈
         call order.sell(0,buyholding,md.askprice(barpos),0,code,market,account,0)
         'call document.setextstring(actiontime,now)
        end if    
       end if 
       
       '多頭追價
       if orderid2>0 and md.askprice(barpos)<lmtprice2 then
        order.orderqueue=1
       call order.cancelorder(orderid2)
       call order.sell(0,buyholding,md.askprice(barpos),0,code,market,account,0)
       'call document.setextstring(actiontime,now)   
       end if
       
       '多頭止損
       if buycost-md.bidprice(barpos)>=offset then
        order.orderqueue=1
        call order.cancelorder(orderid2)
        call order.sell(0,buyholding,md.bidprice(barpos),0,code,market,account,0)
        'call document.setextstring(actiontime,now)
       end if    
      end if 
      
      '空頭開倉
      if sellholding=0 then   
       if entryshortcond then    
        if orderid3=0 then
         call order.buyshort(0,lots,md.askprice(barpos),0,code,market,account,0)
         'call document.setextstring(actiontime,now)
        end if  
       end if
      end if  
      
      '空頭平倉
      if sellholding>0 then
       if entrylongcond then    
        if orderid4=0 then
         '空頭止盈
         call order.sellshort(0,sellholding,md.bidprice(barpos),0,code,market,account,0)
         'call document.setextstring(actiontime,now)
        end if     
       end if 
       
       '空頭追價
       if orderid4>0 and md.bidprice(barpos)>lmtprice4 then
        order.orderqueue=1
       call order.cancelorder(orderid4)
       call order.sellshort(0,sellholding,md.bidprice(barpos),0,code,market,account,0)
       'call document.setextstring(actiontime,now)   
       end if
       
       '空頭止損
       if md.askprice(barpos)-sellcost>=offset then
        order.orderqueue=1
        call order.cancelorder(orderid4)
        call order.sellshort(0,sellholding,md.askprice(barpos),0,code,market,account,0)
        'call document.setextstring(actiontime,now)
       end if    
      end if
    end sub

    sub getpendingorder(myorderid,myconsign,myfilled,myremaining,myaction,myordertype,mylmtprice,myaccount,mykaiping,mycode,mymarket)
      dim orderid
      dim consign
      dim filled
      dim remaining
      dim action
      dim ordertype
      dim lmtprice
      dim account
      dim kaiping
      dim code
      dim market
      
      for i=0 to order.ordernum2-1
        call order.orderinfo2(i,orderid,consign,filled,remaining,action,ordertype,lmtprice,account,kaiping,code,market) 
            
        if code=mycode and market=mymarket and action=myaction and kaiping=mykaiping and account=myaccount then        
          myorderid=orderid
          myconsign=consign
          myfilled=filled
          myremaining=remaining
          myordertype=ordertype
          mylmtprice=lmtprice 
          exit for  
        else
          myorderid=0
          myconsign=0
          myfilled=0
          myremaining=0
          myordertype=0
          mylmtprice=0   
        end if
      next
    end sub

    sub test2()

    end sub


     

  • 金字塔客服:

    http://www.weistock.com/WeisoftHelp/vbarumenjiaocheng.htm

    看下這金字塔的vba如何進入編輯界面

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 511411198  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 成年人在线网站| 三年片在线观看免费观看大全中国| 99热精品久久只有精品30| 日韩人妻无码精品专区| 交换美妇94系列部分| www.免费在线观看| 好紧好爽好大好深在快点视频 | 国产亚洲精久久久久久无码| 一级毛片免费的| 最好看的免费观看视频| 四虎影院免费视频| 99精品国产成人一区二区| 日本xxxx18一20岁老师| 亚洲国产欧美日韩| 色窝窝亚洲av网| 在线观看免费宅男视频| 久久精品国产免费观看三人同眠 | 波多野结衣中文字幕电影| 啦啦啦中文在线视频6| 麻麻张开腿让我爽了一夜黄文| 国产老妇一性一交一乱| а天堂中文最新一区二区三区 | 国产精品亚洲精品日韩已满| www.亚洲日本| 撒尿bbwbbw| 久久精品欧美一区二区| 精品久久久久久无码人妻| 国产成人一区二区三区在线观看| 97国产在线视频公开免费| 成人18xxxx网站| 久久成人国产精品| 欧美妈妈的朋友| 国产乱子伦一级毛片| 男人天堂资源站| 在线观看国产精品日韩AV| 中文国产成人精品久久一区 | 欧美一区二区三区精品影视 | 人妻老妇乱子伦精品无码专区| www.亚洲日本| 夏夏和三个老头第二部| 久操视频在线免费观看|