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

建議:HistoryData類返回的是數組 [金字塔]

  • 咨詢內容:

    大家都知道,當運算量大時,VB比C代碼的運行速度要慢得多。而金字塔是對VBA開放的對象。這樣,如果大量數據操作時,會造成軟件當機的現象。

    我不清楚具體的Histordata,ReportData,Table等等等等對象工作原理,但我想它大約是一個函數,以HistoryData為例

    Set History = marketdata.GetHistoryData("rb00","sq",5)

    For i=1 to 10
        x=History.Close(i)'這里我感覺是每讀一個數,都需要運行一下金字塔的HistoryData函數。

    '這個函數里大約對某個文件要打開,計算,再關閉文件,本身效率已經很低了,這個函數。

    '如果是再用VB來反復打開這個函數。速度更慢。如果運行10000次,可能這個金字塔就要當機了。

    Next

    以EXCEL為例吧,如果是一個單元格一個單元的格的給數組賦值,讀幾萬個數字,就要幾秒種了。但EXCEL提供了直接將單元格賦值給數組的功能。比如x=range("A1:A65536")

    這樣讀6萬個數字,幾乎就不需要時間了。

    不知道金字塔的底層函數到底如何。但我想,如果HistoryData等對象,返回的直接是數組的話。整體的金字塔VBA代碼,運行速度會飛一樣的快。

    建議:History = marketdata.GetHistoryData("rb00","sq",5)

    是直接將("rb00","sq",5)它的所有數據,以數組的形式返回。

    其它對象,涉及到數據的,同理。

    這樣就能真正發揮金字塔的VBA功能了。

     

  • 金字塔客服:

    還有,不清楚為什么金字塔的Array函數,速度為什么這么慢,讀入幾千個數據,可能就需要幾秒鐘。比VBA的數組函數賦值要慢許多。

    它的搜索的函數FIND,效率也極低。也不如直接用VBA循環查找得快。

    這類的函數,建議做次升級。提高金字塔整體的VBA代碼運行效率

     

  • 用戶回復:

    EXCEL下測試的代碼,及結果

    Sub 逐個讀單元格的效率()
        Dim x(65536)
        t = Time
        For j = 1 To 5
            For i = 1 To 65536
                x(i) = Cells(i, 1)
            Next
        Next
        Debug.Print Time & "|" & t
    End Sub
    Sub 整體賦值給數組的效率()
        t = Time
        For j = 1 To 200
            x = [a1:a65536]
        Next
        Debug.Print Time & "|" & t
    End Sub
    '大約可以提速50倍
    Sub Array對象的效率()
        t = Time
        Set d = CreateObject("Stock.Array")
        For i = 1 To 1000
            d.AddBack (Cells(i, 1))
        Next
        Debug.Print Time & "|" & t
    End Sub
    Sub 直接讀入數組的效率()
        Dim x(1000)
        t = Time
        For j = 1 To 200
            For i = 1 To 1000
                x(i) = (Cells(i, 1))
            Next
        Next
        Debug.Print Time & "|" & t
    End Sub
    '大約可以提速200倍以上

    結論:如果金字塔的各對象返回的直接是數組的話,會提高金字塔整體效率的50倍以上,甚至更多。

     

  • 網友回復:

    是滴,是滴。

    金字塔的ARRRAY函數是擺設

    [此貼子已經被作者于2013-5-21 23:13:42編輯過]

 

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

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


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 亚洲一区二区三区免费视频| 国产免费午夜a无码v视频| 中文字幕激情视频| 欧美又粗又大又硬又长又爽视频 | 丰满饥渴老女人hd| 欧美国产激情18| 免费人成在线观看视频高潮| 都市春色校园另类| 国产精品日本一区二区在线看| 一级毛片免费在线观看网站| 日韩一区二区三区无码影院| 亚洲欧美中文字幕专区| 精品国产一区二区三区2021| 国产噜噜在线视频观看| 1000部无遮挡拍拍拍免费视频观看| 女性自慰aⅴ片高清免费| 久久久久久久久蜜桃| 欧美FREESEX潮喷| 亚洲精品亚洲人成在线播放| 精品国产男人的天堂久久| 国产后入清纯学生妹| 香蕉国产人午夜视频在线| 在线观看精品视频看看播放| 两个人的视频www免费| 日韩一区二区三区精品| 亚洲乱妇老熟女爽到高潮的片| 热久久这里是精品6免费观看 | 曰韩无码二三区中文字幕| 亚洲欧美另类专区| 男人j进女人p视频免费观看| 四虎影视精品永久免费| 黄色aaa毛片| 国产精品9999久久久久仙踪林| 99久久精品国产免费| 巨r精灵催眠动漫无删减| 久久久一区二区三区| 日韩精品久久无码中文字幕 | 黄a大片av永久免费| 国产精品久久自在自线观看| 91青青草视频| 天天影院良辰美景好时光电视剧|