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

金字塔等價K線源碼 [金字塔]

  • 金字塔等價K線源碼內容:


    dim shanchushanchu = 0     '是否刪除歷史數據,1為需要
    dim dangtianshuju '當日是否有數據,0為沒有dangtianshuju = 1
    dim bili bili = 0.001    '等價線區間
    dim xinheyuexinheyue = "IF88"  '新等價K合約代碼dim xinmingchengxinmingcheng = "IF等價K線" '新等價K合約名稱dim xinshichangxinshichang = "ZJ" '新等價K合約市場
    dim laoheyuelaoheyue = "IF00" '標的合約代碼dim laoshichanglaoshichang = "ZJ" '標的合約市場dim laozhishulaozhishu = "IF13"
    Sub lishishuju()
        '查詢品種是否存在,不存在則新建    cunzai = marketdata.IsExistStock(xinheyue,xinshichang)    if cunzai = 0 then       call marketdata.AddStock(xinheyue,xinshichang, xinmingcheng)        application.MsgOut "等價K線【創建成功】!"    else       application.MsgOut "等價K線【已經存在】!"    end if
            '等價區間處理     set Report1 = marketdata.GetReportData(laoheyue,laoshichang)        qj = Report1.Open*bili         '刪除歷史數據,創建第一根K線    if shanchu = 1 then            Set History1 = marketdata.GetHistoryData(xinheyue,xinshichang,0)            for j = 0 to History1.Count-1       History1.RemoveAt(j)       next           call History1.InsertAt(0)       History1.open(0) = Report1.Open       History1.close(0) = Report1.Open       History1.high(0) = Report1.Open       History1.low(0) = Report1.Open       History1.Date(0) = Report1.Date       History1.Volume(0) = Report1.Volume       History1.OpenInt(0) = Report1.OpenInt       call History1.SaveData(xinheyue,xinshichang,1)               application.MsgOut "等價K線【歷史數據初始化】成功!"    end if                  set minutedata = marketdata.GetMinuteData(laoheyue,laoshichang)    Count =  minutedata.Count            for i = 1 to count-1             Set History2 = marketdata.GetHistoryData(xinheyue,xinshichang,0)              mxopen = History2.open(History2.Count-1)        mxclose = History2.close(History2.Count-1)        mxhigh = History2.high(History2.Count-1)        mxlow = History2.low(History2.Count-1)        mxDate = History2.Date(History2.Count-1)        mxVolume = History2.Volume(History2.Count-1)        mxOpenInt = History2.OpenInt(History2.Count-1)        
            close = minutedata.newprice(i)        fbDate = minutedata.Date(i)              Volume = minutedata.Volume(i)        mxVolume = minutedata.Volume(i-1)        OpenInt = minutedata.OpenInt(i)        if close > mxhigh then mxhigh = close end if        if close < mxlow  then mxlow = close end if        mxdate = fbDate        mxxVolume = (Volume-mxVolume)+mxxVolume        mxOpenInt = OpenInt                History2.close(History2.Count-1) = close        History2.high(History2.Count-1) = mxhigh        History2.low(History2.Count-1) = mxlow        History2.Date(History2.Count-1) = mxdate          History2.Volume(History2.Count-1) = mxxVolume          History2.OpenInt(History2.Count-1) = mxOpenInt         call History2.SaveData(xinheyue,xinshichang,1)               if abs(close-mxopen) > qj then        '新建一個K線               call History2.InsertAt(History2.Count)        History2.open(History2.Count-1) = close        History2.close(History2.Count-1) = close        History2.high(History2.Count-1) = close        History2.low(History2.Count-1) = close        History2.Date(History2.Count-1) = mxdate          History2.Volume(History2.Count-1) = 0           History2.OpenInt(History2.Count-1) = OpenInt          call History2.SaveData(xinheyue,xinshichang,1)           mxxVolume = 0         end if             next
    End Sub
    sub dengjiaK()‘第一次用的時候請先運行改宏創建等價K線數據     call lishishuju()end sub
    Sub APPLICATION_VBAStart()    call Application.SetTimer(0,1000) '創建一個0號定時器,間隔時間1秒End Sub

    Sub APPLICATION_Timer(ID)       if ID = 0 then    
             if (cdate(time)<=cdate("11:30:00") and cdate(time)>cdate("9:15:00")) or (cdate(time)<=cdate("15:15:00") and cdate(time)>cdate("13:00:00")) then           '等價區間處理          set Report1 = marketdata.GetReportData(laoheyue,laoshichang)         qj = Report1.Open*bili               set Report2 = marketdata.GetReportData(laozhishu,laoshichang)                         Set History2 = marketdata.GetHistoryData(xinheyue,xinshichang,0)              mxopen = History2.open(History2.Count-1)        mxclose = History2.close(History2.Count-1)        mxhigh = History2.high(History2.Count-1)        mxlow = History2.low(History2.Count-1)        mxDate = History2.Date(History2.Count-1)        mxxVolume = History2.Volume(History2.Count-1)        mxOpenInt = History2.OpenInt(History2.Count-1)                set minutedata = marketdata.GetMinuteData(laoheyue,laoshichang)        Count =  minutedata.Count                         close = minutedata.newprice(Count-1)        fbDate = minutedata.Date(Count-1)         mxVolume = minutedata.Volume(Count-2)        Volume = minutedata.Volume(Count-1)        OpenInt = minutedata.OpenInt(Count-1)        if close > mxhigh then mxhigh = close end if        if close < mxlow  then mxlow = close end if        mxdate = fbDate        mxxVolume = mxxVolume+(Volume-mxVolume)        mxOpenInt =OpenInt'        application.MsgOut mxxVolume&" "&Volume&" "&Volume-mxVolume        
            History2.close(History2.Count-1) = close        History2.high(History2.Count-1) = mxhigh        History2.low(History2.Count-1) = mxlow        History2.Date(History2.Count-1) = mxdate          History2.Volume(History2.Count-1) = mxxVolume          History2.OpenInt(History2.Count-1) = mxOpenInt          call History2.SaveData(xinheyue,xinshichang,1)               if abs(close-mxopen) > qj then        '新建一個K線               call History2.InsertAt(History2.Count)        History2.open(History2.Count-1) = close        History2.close(History2.Count-1) = close        History2.high(History2.Count-1) = close        History2.low(History2.Count-1) = close        History2.Date(History2.Count-1) = mxdate          History2.Volume(History2.Count-1) = 0          History2.OpenInt(History2.Count-1) = OpenInt        call History2.SaveData(xinheyue,xinshichang,1)        mxxVolume = 0        end if             call Application.ActivateFrameWithCode("Technic",xinheyue,xinshichang,0)     call Technic.Refresh          end if                end if   end sub
    Sub to_0()
    '得到上期所指定品種的日線數據Set History = marketdata.GetHistoryData("IF88","ZJ",0)'刪掉第一條數據for i=0 to History.Count-1History.Volume(i) = 0next
    call History.SaveData("IF88","ZJ",1)



    End Sub
     

 

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

可聯系技術人員 QQ: 1145508240  有需要幫忙請點擊這里留言!!!進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 无限资源日产好片| 精品人妻伦一二三区久久| 在线综合亚洲欧美自拍| 久久亚洲欧美国产精品| 波多野结衣中文字幕一区二区三区| 国产亚洲成AV人片在线观看| 2018天天干天天射| 好紧好爽太大了h视频| 久久免费动漫品精老司机| 欧美性xxxx极品高清| 免费国产剧情视频在线观看| 西西人体午夜视频| 国产精品538一区二区在线| 亚洲欧美日韩高清在线电影| 野花社区视频在线观看| 国产精品国产三级国产AV主播 | 五月天丁香在线| 龙珠全彩里番acg同人本子 | 樱花视频入口在线观看| 亚洲黄色免费电影| 综合图区亚洲欧美另类图片 | 国产日产卡一卡二乱码| 97在线视频精品| 好男人资源在线观看高清社区| 久久91亚洲人成电影网站| 最新国产三级在线观看不卡| 四虎成人国产精品视频| 国产欧美日韩另类一区乌克兰| 国产精品高清视亚洲一区二区| ssss国产在线观看| 成年男女男精品免费视频网站| 久久精品国产免费一区| 欧美人与动牲交a欧美精品| 亚洲精品色午夜无码专区日韩| 亚洲国产91在线| 在线观看jizz| 一级大黄美女免费播放| 无翼日本全彩漫画大全全彩| 久久综合丝袜长腿丝袜| 欧美中文在线观看| 亚洲欧美成人中文在线网站|