看板 Programming 關於我們 聯絡資訊
最近寫了一包股票價格模型的Excel + VBA但發現跑一次需要一個鐘頭 本來是打算看有無機會做成Real Time介面,但跑一次一小時也無從real time起了 目前想了幾個方向: 1. 改用資料庫+VBA而不是Excel+VBA 2. 是電腦速度問題所以把電腦從intel i5 換成i7 3. 是語言問題所以是否該學python之類的 請大家協助看一下以下的code看哪方向比較實際? =======以下是我的code大致結構(不是完整code,寫個感覺讓高手看一下)======== A. 先去鉅亨網爬蟲出50支股票最新價格 for i = 0 to 49 CreateObject("InternetExplorer.Application") ObjIE(i).Document.getElementsBytagname("td") next i B. 雙層迴圈計算最佳移動平均 for i = 0 to 49 for j = 0 to 145 先算50種股票股票10,12,14...300日平均線 array MVA(i,j)儲存50種股票的146種移動平均 類似用最小平方法算出哪個移動平均線最準 儲存50種各別的移動平均線 next j next i C. 把50支股票的歷史價格拉出來(2008-現在),再跑線性回歸算模型 for i = 0 to 49 預測股價 = WorksheetFunction.LinEst( Y=實際收盤價 X=MVA(i) , 大盤價格 , 其他二個變數 ) next i -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.68.48.186 ※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1510480594.A.A63.html
chuegou: 1 這看起來現有的資料表已經不能滿足你 111.243.50.102 11/12 18:06
chuegou: 了 111.243.50.102 11/12 18:06
MOONRAKER: vb.net用一用就好了 218.161.46.90 11/12 22:42
wsoar: 所以.NET跟python速度有明顯差異嗎?223.136.124.104 11/13 14:16
niwat: 一開始把所有的資料丟到array, 全部的運算137.132.176.189 11/13 14:37
niwat: 都用array去做, 結果寫回cell就行了137.132.176.189 11/13 14:38
niwat: excel 存取cell很慢137.132.176.189 11/13 14:38
cancelpc: VB.NET 會比較快(編譯語言) 36.227.17.155 11/13 15:10
cancelpc: python 除非用外部已寫好的(c,c++)的 36.227.17.155 11/13 15:11
cancelpc: 算數函示庫。 36.227.17.155 11/13 15:11
MOONRAKER: 開玩笑 python慢有名的 220.135.118.23 11/13 16:07
MOONRAKER: 但是你這樣要換語言不是考慮快 是考慮 220.135.118.23 11/13 16:07
wsoar: 我先試試看全存array好了~感覺python不優 114.136.29.205 11/13 16:09
wsoar: 晚點回報一下效果如何~ 114.136.29.205 11/13 16:09
MOONRAKER: 熟悉 還有想不想寫 220.135.118.23 11/13 16:11
MOONRAKER: VB.NET是熟悉性 但是python當然較時髦 220.135.118.23 11/13 16:12
MOONRAKER: 以速度來講 哪一個都會比VBA好 220.135.118.23 11/13 16:13