2018年9月8日 星期六

「內外盤」計算及其應用


在看盤軟體中,我們經常會看到稱為「內外盤」的數字,這組數字與「成交價」、「五檔報價」,並列為盤中 3 大最重要的指標,在預測股票「日內走勢」上,內外盤具有非常高的成功率。


其實在證交所或期交所的即時資料中並沒有所謂的內外盤,那是劵商利用「五檔報價」和「成交價」分類出來的結果。簡單地說,就是由「五檔報價」挑出最佳買賣價,如果成交價比較靠近買進價則稱為「內盤價」,反之則稱為「外盤價」,而其成交量則分別稱「內盤量」、「外盤量」。

接著示範利用元大行情API為訊號源,然後程式會將成交價分類為內外盤,所採用的程式語言是VC++ ,並引用了MFC( Microsoft Foundation Class Library ) 類別庫。程式自動交易原本用C語言來寫就比較方便因牽涉到作業系統底層API ) 再加上元大報價API是採用元件物件模型(Component Object Model),我原本熟悉的NetBeans編輯器雖可開發C++的程式,但卻無法處理COM元件,因而改用VC++ 。 但MFC是一種圖形介面和事件驅動的程式,編輯器會自動加入許多程式碼,因此我只能挑重點來介紹。
                         

                             

上圖第一行中的三個參數,原本在元大行情API的變數代號為BestBuyPri BestSellPri MatchPri,分別代表最佳買進五檔價、最佳賣出五檔價、成交價。第六行是找出買進價,第七行的 atof 是將字串轉換成浮點數值,第十五、十七行則是利用距離的觀念來判斷內外盤價。


有了內外盤價和內外盤量之後,就可以有各種變化應用了。例如可以利用內外盤量差達五千口就作空;內外盤量的比值與即時漲跌幅差異過大,就可以去作多(作空 );只要有這些歷史資料,就可以作各種實驗和變化,當然最後一定要回測績效才能下場。

底下展示一張今年八月二日分鐘級的散佈圖,縱軸是外內盤量的差,橫軸是當時的漲跌幅。特別值得注意的是,如果用一條線性迴歸線來代表這些資料點,其判定係數(Coefficient of Determination )高達99%以上,代表外內盤量的差與漲跌幅間,呈現強烈的線性正相關。不僅是這天,只要是當天「日內走勢」有出現趨勢性走勢,其判定係數都高達96%以上,這些數字對迴歸分析有研究的人來說,就會是莫大的啟發。




程式(.cpp ) : https://drive.google.com/file/d/1A5AIlG3tibuBf5aC8TNhclpH0fLlPScd/view?usp=sharing

0 個意見:

張貼留言

訂閱 張貼留言 [Atom]

<< 首頁