![]() |
在這個頁面顯示本主題全部的 10 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [求救] 分類板塊 如何設定 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=12634)
[求救] 分類板塊 如何設定
版主您好:
我本身設計了將近十個指標
需要於盤中的即時報價中作即時運算與排序
由於上市+上櫃 高達 1200檔個股
即時運算非常耗時
很希望可以有一個板塊將上市與上櫃合併
並且只秀出當下即時盤 成交金額前 100 名
來簡化運算與警視所需的時間與標的
由於每天的 成交金額前 100 名 都不一樣
是否可以寫一個指標 達到以下兩個效果
1. 可以讓板塊永遠只秀出當下即時( 或盤後) 成交金額前 100 名
2. 上市與上櫃 一起做排行 而不是各取五十名
感謝版大
回覆: [求救] 分類板塊 如何設定
引用:
最初由 tycoon868 發表
版主您好:
我本身設計了將近十個指標
需要於盤中的即時報價中作即時運算與排序
由於上市+上櫃 高達 1200檔個股
即時運算非常耗時
很希望可以有一個板塊將上市與上櫃合併
並且只秀出當下即時盤 成交金額前 100 名
來簡化運算與警視所需的時間與標的
由於每天的 成交金額前 100 名 都不一樣
是否可以寫一個指標 達到以下兩個效果
1. 可以讓板塊永遠只秀出當下即時( 或盤後) 成交金額前 100 名
2. 上市與上櫃 一起做排行 而不是各取五十名
感謝版大
依照Lian大的建議:
可以將上市股票、上櫃股票全部加到自選股或另外新增的自選資料夾,再點擊表頭欄目的"總額"來做排序取前一百名。
可能比較適合盤後作
因為我想要 十點 時的 前 100大
可否賜教以下目的的做法:
流程一 將上市股票、上櫃股票全部加到自選股
流程二 寫一個條件選股公式 (動態取 任何時候之 Top 100 總額)
流程三 就這 100 檔作十個指標欄目 之運算
重點應該是 : 流程二 之 (動態取 任何時候之 Top 100 總額)
要怎麼寫 ? 要如何與 1200 檔作整合
自選股可以多設幾個群組?
引用:
最初由 tycoon868 發表
依照Lian大的建議:
可以將上市股票、上櫃股票全部加到自選股或另外新增的自選資料夾,再點擊表頭欄目的"總額"來做排序取前一百名。
可能比較適合盤後作
因為我想要 十點 時的 前 100大
可否賜教以下目的的做法:
流程一 將上市股票、上櫃股票全部加到自選股
流程二 寫一個條件選股公式 (動態取 任何時候之 Top 100 總額)
流程三 就這 100 檔作十個指標欄目 之運算
重點應該是 : 流程二 之 (動態取 任何時候之 Top 100 總額)
要怎麼寫 ? 要如何與 1200 檔作整合
自選股可以多設幾個群組?
是的
數據列表的指標排序
雖然
要以公式去排序找出總額前 100 大的股票是可行的
但是要用公式去選股跑出這前100大的結果於板塊
是非常沒效率的, 事倍功半
因為公式是對應當前跑的股票做計算的
它必須先算出自己是第幾名, 才能決定要不要被列入
1000個商品, 選股公式要跑1000次(每個商品跑一次)
而每次都得要跑下列的程序, 才能判斷該股票有無被選中
1.先取得這1000個商品的總額做排序
2.排序後判斷當前商品有無在前100大裡面
3.若有的話將當前商品設為被選中的商品
想想這樣的計算量有多大
在數據列表您點一下總額排序
它只要算一次就能知道前100名是那些
換用公式選股來做此工作, 則必需多算999次
如此用太浪費 CPU 效能了
效果可能沒有您手動操作來的好
故不建議您盤中如此處理
這選股公式, 會選出上市加上櫃總額前100大的商品
您可試試跑一輪要多久
若是盤中跑可能會超過100個商品被選中
(因為計算的時間差,前100大可能已改變)
原碼:
選:0;
TWNAME:='上市股票'; TONAME:='上櫃股票';
CK:=STKINBLOCK(STKLABEL,TWNAME) or STKINBLOCK(STKLABEL,TONAME);
if CK=0 then exit;
TWSUM:=STKCOUNT(TWNAME); TOSUM:=STKCOUNT(TONAME);
AllSUM:=TWSUM+TOSUM;
if AllSUM=0 then exit;
VARIABLE: StkAry[AllSUM]='', StkAMT[AllSUM]=0;
StkNo:=0; NowStk:=MARKETLABEL+STKLABEL;
FOR i= 1 to TWSUM do begin
StkNo:=StkNo+1;
StkAry[StkNo]:=STKFROMBLK(TWNAME,i);
StkAMT[StkNo]:=DYNAINFO2(10,StkAry[StkNo]);
end;
FOR i= 1 to TOSUM do begin
StkNo:=StkNo+1;
StkAry[StkNo]:=STKFROMBLK(TONAME,i);
StkAMT[StkNo]:=DYNAINFO2(10,StkAry[StkNo]);
end;
tmp:=SORTPOS(StkAMT,1,1,AllSUM);
EndNo:=100; NowStk:=MARKETLABEL+STKLABEL;
if AllSUM<100 then EndNo:=AllSUM;
for i=1 to EndNo do begin
if NowStk = StkAry[StkAMT[i]] then break;
end;
選:=i<=EndNo;
或許
可改變一下思考方向, 變為如下:
總額超過設定值的商品, 指標才計算要算的內容
若總額沒超過設定值, 就用 exit 跳離公式傳回零值
這樣整體執行效能會提昇很多
例如:
五日均:0;
if DYNAINFO(10)<10000000 then exit;
五日均:=MA(C,5);
或許也可考慮
只跑權值股或中型100的商品
感謝版大詳細解答:
真沒想到這麼複雜
其實我的要求真的很單純
一般券商提供的下單軟體就有了 (寶來點金靈)
成交重心股 ( 從開盤到收盤之動態排序)
您所提供的 Top 100 公式我會找時間測試
另外兩種方法非我所要: 因為一檔非權值冷門股
可能在今天 十點時成為 Top 20
因為主力作手今日作量作價
Anyway 其實最終還是因為 奇狐少了
一些重要的即時報價型分類板塊: 如成交量前五十大 漲停股
細產業作的不錯 但最基本的反而忽略了
謝謝版大 測試完當向您報告結果
感謝版大提供的公式:
我用條件選股公式跑一輪
時間是可以接受
但是每隔一段時間就又要按 F7 從算
是否可以作到表頭攔目中作五分鐘自動更新?
其實我真的只是想要得到以下結果:
上市+上櫃 當下成交值前 100 名
來縮小公式運算的標的
為何奇狐就只能列出所有上市或上櫃?
是否可以請版主給我一個
優化的 [總額持倉] ~ 上市+上櫃 當下成交值前 100 名
全部時間均為台灣時間, 現在時間為17:51 | 在這個頁面顯示本主題全部的 10 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.