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

金字塔等價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  有需要幫忙請點擊這里留言!!!進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 一本色道久久88加勒比—综合 | 青青草中文字幕| 91麻豆精品国产自产在线| www.色午夜.com| 91免费视频网| 激情内射日本一区二区三区| 国产乱子伦手机在线| 69久久夜色精品国产69小说| 性欧美videofree另类超大| 九九电影院理论片| 正点嫩模大尺度写真在线视频| 噼里啪啦免费观看高清动漫| 欧美18性精品| 国语自产精品视频在线看| 东北老妇露脸xxxxx| 日韩大片高清播放器| 亚洲欧美在线视频| 三级小说第一页| 樱花草在线社区www| 人人爽天天爽夜夜爽曰| 西西人体www44rt大胆高清| 国产精品白丝在线观看有码| 一本一本久久aa综合精品| 日韩一卡2卡3卡4卡| 亚洲国产精品一区二区成人片国内 | 妞干网免费视频观看| 久久人妻无码中文字幕| 欧美人与动性行为另类| 伊人久久大香线蕉avapp下载| 色精品一区二区三区| 国产欧美另类久久精品蜜芽| 中文字幕日韩精品有码视频| 欧美jizz40性欧美| 亚洲精品美女在线观看| 精品日韩一区二区| 国产亚洲一区二区手机在线观看 | 亚洲导航深夜福利| 男人j桶进女人免费视频| 啊老师太深了好大| 高清国产精品久久| 国产精品一区二区久久|