![]() |
在這個頁面顯示本主題全部的 12 個文章 |
奇狐社區論壇 (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=530)
[求救]如何得到排序名次?
我們可以使用某一指標,做出個股的排名(在板塊上),但怎樣可以得到排序名次呢?
如今天大盤成交量前50名,取出來使用。是要在程式中使用的。
am1200 兄 您好
盤中若同時間要用指標算1000檔股票
再將算後的結果排序, 取前50檔股票
再引入指標運算,這是不可能的?
即使奇狐的命令支援,電腦也會算不動!
想想用指標橫向統計一次把1000支股票算完
就要約需數十秒到幾分鐘不等的時間
指標是動態的即時每跳一筆(tick)就要算一次
不太可行, 恐怕要超級電腦才有此能耐.
或許你會問條件式預警系統為何可以即時跑
答案是預警系統只針對有新行情的股票計算
若要用於盤後我們可花時間研究看看!
想跟你確認一下這是要用於即時還是盤後?
另外 取出來使用。是要在程式中使用的。 可否解釋清楚一點!
是要這50檔股票的某數值的加總還是??
可以把你的指标引入到扩展数据,取0-n自然排序,再引出该数据;如果设为m,则m位排序名次,但仅盘后使用!
引用:
最初由 cgjj 發表
am1200 兄 您好
盤中若同時間要用指標算1000檔股票
再將算後的結果排序, 取前50檔股票
再引入指標運算,這是不可能的?
即使奇狐的命令支援,電腦也會算不動!
想想用指標橫向統計一次把1000支股票算完
就要約需數十秒到幾分鐘不等的時間
指標是動態的即時每跳一筆(tick)就要算一次
不太可行, 恐怕要超級電腦才有此能耐.
或許你會問條件式預警系統為何可以即時跑
答案是預警系統只針對有新行情的股票計算
若要用於盤後我們可花時間研究看看!
想跟你確認一下這是要用於即時還是盤後?
另外 取出來使用。是要在程式中使用的。 可否解釋清楚一點!
是要這50檔股票的某數值的加總還是??
目前研究開發中, 近日應可完成!
1.需用動用 vbs 來開發,並以外部檔案來做緩衝記錄
2.需借助擴展數據來輔佐運行
3.希望能做成較彈性的模組
敬請期待!
解決方法, 共需下列幾個步驟:
假設以 KD 指標的 K 值來排名, 版塊為自選股
取得排名後前五名的成交量總和為例
1.把你要用 KD 指標排名的股票集中於自選股
2.用擴展數據將功能將自選股以 KD 指標的 K 值大小來排名
將名次(第幾名)儲存於擴展數據中(假設存於擴展數據編號1)
註:鉤選生成橫向排名數據(由大到小),排序方法為 0-n 自然排序
3.用擴展數據功能運算 "SORTO_以排名另存數據 " 指標(只算自選股)
將排名前五名的成交量數據寫入緩衝區檔案裡
參數設定: DATANO = 1, MAXNO = 5, SELDATA = 5
參數說明:
DATANO 為儲存指標排序名次的擴展數據編號
MAXNO 為要儲存數據的排名的總數(自選股的總數要大於MAXNO)
SELDATA 選擇您要儲存的數據
= 1. OPEN
= 2. HIGH
= 3. LOW
= 4. CLOSE
= 5. VOL
= 6. AMOUNT
= 7. QT
= 8. OPENINT
注意事項:
1.本指標為擴展數據專用不可套用於圖形分析 。若您有套用於圖形分析
過,請重新以擴展數據計算,不重算緩衝區內的數據結果會被毀損或
不正確。
2.MAXNO 不要設太大運算會很費時,若只需前6名的就設為 6。
MAXNO 數值越大緩衝區使用的檔案數越多。
3.緩衝區指定設於 c:\foxgetsort 的目錄中。
每次要用擴展數據跑本指標前請先將其內的檔案刪光光。若跑到一半
才發現未刪,請中止動作並先將其內的檔案刪光光,全部重新運算。
不刪或未全部重算,緩衝區內數據結果會處於毀損狀態或不正確。
若該子目錄不存在,運算時會自動建立。
4.將 "SORTG_以排名加總數據 " 指標 套用於圖形分析視窗
套用後會自緩衝區(外部檔案)讀出排名1∼5的成交量數據
並將加總結果輸出(GETVAL)。
參數設定: DATANO = 1, GETNO1 = 1, GETNO2 = 5
參數說明:
DATANO 為儲存指標排序名次的擴展數據編號
GETNO1 為加總數據時取用的起始排名
GETNO2 為加總數據時取用的終止排名
注意事項:
1.使用本指標前必需先執行過 [SORTO_以排名另存數據] 指標。
2.由於運算後的結果是固定的(換到不同股票也是同結果),建議
以擴展數據運算將結果儲存,再用 EXTDATA(n) 調用。以便於
迅速切換股票,避免重複耗時運算。(每天盤後重算一次)
3.本指標可套用圖形分析,但 [SORTO_以排名另存數據] 指標不
可以,若您有將該指標套用於圖形分析,請重新以擴展數據計
算 [SORTO_以排名另存數據] 指標(若未重新計算本指標將不
正確或會運行錯誤)。
4.GETNO1 與 GETNO2 最大數取決於當初儲存數據的排名總數(MAXNO)
範例1:取出第2∼4名的成交量總和
GETNO1 = 2, GETNO2 = 4
範例2:取出第2名的成交量
GETNO1 = 2, GETNO2 = 2
範例3:取出第3名的成交量
GETNO1 = 3, GETNO2 = 3
註:若當初存的是收盤價則取出的值為收盤價或其加總
SORTO_以排名另存數據 指標
請看完說明後再用!
SORTG_以排名加總數據 指標
請看完說明後再用!
結語
目前 3.5 版僅能用此法做(用vbs以外部檔輔助)
或許將來新版的奇狐提供的函數更多可更便利!
設計中發現有時會有一種狀況
那就是有好幾個股票同為第n名
這時指標取得的為運算過程中
第一個遇到第n名的股票數據.
這種情況發生率可能很高!
有可能會影響你再引用的結果
例如:
遇到的第一個第三名成交量為 10
遇到的第二個第三名成交量為 100000
取得的為第一個遇到的第三名成交量來運算加總
若情況變成 成交量為 100000 的是第一個遇到的第三名
算出的結果兩種狀況會差很多
因此用指標排序的值最好要與你想統計的值有類似關連性
不然可能難以避免這種結果.
最後
特別叮嚀, 這兩指標都不適用於即時!
擴展數據最好維持系統預設 500 天以內(太大要算很久)
您若對奇狐不熟悉, 請勿下載使用.
這是屬於進階性的應用.
若您有裝 Norton 的防毒軟體可能會出現 chiefox.exe 中可能有
惡意程式碼,此時請選擇永遠允許 chiefox.exe 存取。
(是 Norton 的防毒軟體檢查過嚴的誤判)
謝謝,研究中。。。
全部時間均為台灣時間, 現在時間為18:37 | 在這個頁面顯示本主題全部的 12 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.